@dxos/util 0.6.13 → 0.6.14-main.1366248

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.
Files changed (68) hide show
  1. package/dist/lib/browser/index.mjs +163 -150
  2. package/dist/lib/browser/index.mjs.map +4 -4
  3. package/dist/lib/browser/meta.json +1 -1
  4. package/dist/lib/node/index.cjs +156 -138
  5. package/dist/lib/node/index.cjs.map +4 -4
  6. package/dist/lib/node/meta.json +1 -1
  7. package/dist/lib/node-esm/index.mjs +1998 -0
  8. package/dist/lib/node-esm/index.mjs.map +7 -0
  9. package/dist/lib/node-esm/meta.json +1 -0
  10. package/dist/types/src/array-to-hex.d.ts +2 -0
  11. package/dist/types/src/array-to-hex.d.ts.map +1 -0
  12. package/dist/types/src/case.d.ts +3 -0
  13. package/dist/types/src/case.d.ts.map +1 -0
  14. package/dist/types/src/case.test.d.ts +2 -0
  15. package/dist/types/src/case.test.d.ts.map +1 -0
  16. package/dist/types/src/complex.d.ts +8 -8
  17. package/dist/types/src/complex.d.ts.map +1 -1
  18. package/dist/types/src/index.d.ts +7 -3
  19. package/dist/types/src/index.d.ts.map +1 -1
  20. package/dist/types/src/map-values.d.ts +2 -2
  21. package/dist/types/src/map-values.d.ts.map +1 -1
  22. package/dist/types/src/platform.browser.test.d.ts +2 -0
  23. package/dist/types/src/platform.browser.test.d.ts.map +1 -0
  24. package/dist/types/src/platform.node.test.d.ts +2 -0
  25. package/dist/types/src/platform.node.test.d.ts.map +1 -0
  26. package/dist/types/src/random.d.ts +1 -1
  27. package/dist/types/src/random.d.ts.map +1 -1
  28. package/dist/types/src/remove-undefined-keys.d.ts +2 -0
  29. package/dist/types/src/remove-undefined-keys.d.ts.map +1 -0
  30. package/dist/types/src/weak.d.ts +4 -4
  31. package/dist/types/src/weak.d.ts.map +1 -1
  32. package/package.json +9 -9
  33. package/src/array-to-hex.ts +23 -0
  34. package/src/array.test.ts +1 -2
  35. package/src/bitfield.test.ts +1 -2
  36. package/src/callback.test.ts +1 -2
  37. package/src/case.test.ts +14 -0
  38. package/src/case.ts +45 -0
  39. package/src/complex.test.ts +1 -2
  40. package/src/complex.ts +8 -8
  41. package/src/defer.test.ts +1 -2
  42. package/src/human-hash.test.ts +1 -2
  43. package/src/index.ts +7 -3
  44. package/src/join-tables.test.ts +1 -2
  45. package/src/map-values.ts +29 -10
  46. package/src/order.test.ts +1 -2
  47. package/src/platform.browser.test.ts +11 -0
  48. package/src/platform.node.test.ts +11 -0
  49. package/src/random.ts +1 -1
  50. package/src/reducers.test.ts +1 -2
  51. package/src/remove-undefined-keys.ts +13 -0
  52. package/src/safe-instanceof.test.ts +1 -2
  53. package/src/sort.test.ts +1 -2
  54. package/src/tracer.test.ts +3 -3
  55. package/src/types.test.ts +1 -2
  56. package/src/uint8array.test.ts +1 -2
  57. package/src/weak.test.ts +4 -8
  58. package/src/weak.ts +4 -4
  59. package/dist/types/src/params.d.ts +0 -22
  60. package/dist/types/src/params.d.ts.map +0 -1
  61. package/dist/types/src/params.test.d.ts +0 -2
  62. package/dist/types/src/params.test.d.ts.map +0 -1
  63. package/dist/types/src/platform.test.d.ts +0 -2
  64. package/dist/types/src/platform.test.d.ts.map +0 -1
  65. package/src/params.test.ts +0 -38
  66. package/src/params.ts +0 -68
  67. package/src/platform.test.ts +0 -17
  68. package/src/typings.d.ts +0 -5
@@ -1 +1 @@
1
- {"inputs":{"inject-globals:@inject-globals":{"bytes":384,"imports":[{"path":"@dxos/node-std/inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/array.ts":{"bytes":5726,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/assign.ts":{"bytes":3457,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/binder.ts":{"bytes":1363,"imports":[{"path":"@dxos/node-std/util","kind":"import-statement","external":true},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/bitfield.ts":{"bytes":8574,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/callback.ts":{"bytes":5305,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/circular-buffer.ts":{"bytes":6398,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/complex.ts":{"bytes":22085,"imports":[{"path":"@dxos/node-std/util","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/explicit-resource-management-polyfill.ts":{"bytes":1482,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}]},"packages/common/util/src/defer.ts":{"bytes":3771,"imports":[{"path":"packages/common/util/src/explicit-resource-management-polyfill.ts","kind":"import-statement","original":"./explicit-resource-management-polyfill"},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/defer-function.ts":{"bytes":1619,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/entry.ts":{"bytes":3103,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/for-each-async.ts":{"bytes":826,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/human-hash.ts":{"bytes":20242,"imports":[{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/interval.ts":{"bytes":1876,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/map.ts":{"bytes":1546,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/instance-id.ts":{"bytes":4306,"imports":[{"path":"packages/common/util/src/map.ts","kind":"import-statement","original":"./map"},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/join-tables.ts":{"bytes":3140,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/uint8array.ts":{"bytes":3822,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/json.ts":{"bytes":13862,"imports":[{"path":"@dxos/node-std/util","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"packages/common/util/src/human-hash.ts","kind":"import-statement","original":"./human-hash"},{"path":"packages/common/util/src/uint8array.ts","kind":"import-statement","original":"./uint8array"},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/map-values.ts":{"bytes":10764,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/order.ts":{"bytes":5060,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/params.ts":{"bytes":6677,"imports":[{"path":"@effect/schema","kind":"import-statement","external":true},{"path":"xcase","kind":"import-statement","external":true},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/pick.ts":{"bytes":2839,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/platform.ts":{"bytes":11348,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/random.ts":{"bytes":1344,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/range.ts":{"bytes":2016,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/reducers.ts":{"bytes":12989,"imports":[{"path":"packages/common/util/src/map.ts","kind":"import-statement","original":"./map"},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/safe-await.ts":{"bytes":2916,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/safe-instanceof.ts":{"bytes":2749,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/safe-parse-json.ts":{"bytes":1381,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/sort.ts":{"bytes":4004,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/throw-unhandled-error.ts":{"bytes":1216,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/to-fallback.ts":{"bytes":12288,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/tracer.ts":{"bytes":7302,"imports":[{"path":"packages/common/util/src/map.ts","kind":"import-statement","original":"./map"},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/types.ts":{"bytes":8669,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/sum.ts":{"bytes":720,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/weak.ts":{"bytes":9792,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/sliding-window-summary.ts":{"bytes":7614,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"packages/common/util/src/circular-buffer.ts","kind":"import-statement","original":"./circular-buffer"},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/callback-collection.ts":{"bytes":3247,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/chunk-array.ts":{"bytes":1248,"imports":[{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/index.ts":{"bytes":4004,"imports":[{"path":"packages/common/util/src/array.ts","kind":"import-statement","original":"./array"},{"path":"packages/common/util/src/assign.ts","kind":"import-statement","original":"./assign"},{"path":"packages/common/util/src/binder.ts","kind":"import-statement","original":"./binder"},{"path":"packages/common/util/src/bitfield.ts","kind":"import-statement","original":"./bitfield"},{"path":"packages/common/util/src/callback.ts","kind":"import-statement","original":"./callback"},{"path":"packages/common/util/src/circular-buffer.ts","kind":"import-statement","original":"./circular-buffer"},{"path":"packages/common/util/src/complex.ts","kind":"import-statement","original":"./complex"},{"path":"packages/common/util/src/defer.ts","kind":"import-statement","original":"./defer"},{"path":"packages/common/util/src/defer-function.ts","kind":"import-statement","original":"./defer-function"},{"path":"packages/common/util/src/entry.ts","kind":"import-statement","original":"./entry"},{"path":"packages/common/util/src/for-each-async.ts","kind":"import-statement","original":"./for-each-async"},{"path":"packages/common/util/src/human-hash.ts","kind":"import-statement","original":"./human-hash"},{"path":"packages/common/util/src/interval.ts","kind":"import-statement","original":"./interval"},{"path":"packages/common/util/src/instance-id.ts","kind":"import-statement","original":"./instance-id"},{"path":"packages/common/util/src/join-tables.ts","kind":"import-statement","original":"./join-tables"},{"path":"packages/common/util/src/json.ts","kind":"import-statement","original":"./json"},{"path":"packages/common/util/src/map.ts","kind":"import-statement","original":"./map"},{"path":"packages/common/util/src/map-values.ts","kind":"import-statement","original":"./map-values"},{"path":"packages/common/util/src/order.ts","kind":"import-statement","original":"./order"},{"path":"packages/common/util/src/params.ts","kind":"import-statement","original":"./params"},{"path":"packages/common/util/src/pick.ts","kind":"import-statement","original":"./pick"},{"path":"packages/common/util/src/platform.ts","kind":"import-statement","original":"./platform"},{"path":"packages/common/util/src/random.ts","kind":"import-statement","original":"./random"},{"path":"packages/common/util/src/range.ts","kind":"import-statement","original":"./range"},{"path":"packages/common/util/src/reducers.ts","kind":"import-statement","original":"./reducers"},{"path":"packages/common/util/src/safe-await.ts","kind":"import-statement","original":"./safe-await"},{"path":"packages/common/util/src/safe-instanceof.ts","kind":"import-statement","original":"./safe-instanceof"},{"path":"packages/common/util/src/safe-parse-json.ts","kind":"import-statement","original":"./safe-parse-json"},{"path":"packages/common/util/src/sort.ts","kind":"import-statement","original":"./sort"},{"path":"packages/common/util/src/throw-unhandled-error.ts","kind":"import-statement","original":"./throw-unhandled-error"},{"path":"packages/common/util/src/to-fallback.ts","kind":"import-statement","original":"./to-fallback"},{"path":"packages/common/util/src/tracer.ts","kind":"import-statement","original":"./tracer"},{"path":"packages/common/util/src/types.ts","kind":"import-statement","original":"./types"},{"path":"packages/common/util/src/uint8array.ts","kind":"import-statement","original":"./uint8array"},{"path":"packages/common/util/src/sum.ts","kind":"import-statement","original":"./sum"},{"path":"packages/common/util/src/weak.ts","kind":"import-statement","original":"./weak"},{"path":"packages/common/util/src/sliding-window-summary.ts","kind":"import-statement","original":"./sliding-window-summary"},{"path":"packages/common/util/src/callback-collection.ts","kind":"import-statement","original":"./callback-collection"},{"path":"packages/common/util/src/chunk-array.ts","kind":"import-statement","original":"./chunk-array"},{"path":"@inject-globals","kind":"import-statement","external":true}],"format":"esm"}},"outputs":{"packages/common/util/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":110471},"packages/common/util/dist/lib/browser/index.mjs":{"imports":[{"path":"@dxos/node-std/inject-globals","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/node-std/util","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/node-std/util","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/node-std/util","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@effect/schema","kind":"import-statement","external":true},{"path":"xcase","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true}],"exports":["BitField","Callback","CallbackCollection","CircularBuffer","ComplexMap","ComplexSet","HumanHasher","MapEntry","ParamKeyAnnotation","Params","SlidingWindowSummary","Tracer","WeakDictionary","accessBy","arrayMove","arrayToBuffer","arrayToString","arraysEqual","boolGuard","bufferToArray","chunkArray","compareMulti","compareObject","compareScalar","compareString","createBinder","createBucketReducer","createGroupReducer","createSetDispatch","deepMapValues","deepMapValuesAsync","defaultMap","defer","deferAsync","deferFunction","diff","distinctBy","doAsync","entry","exponentialBackoffInterval","forEachAsync","getAsyncProviderValue","getDate","getDebugName","getDeep","getHostPlatform","getPrototypeSpecificInstanceId","getProviderValue","hexToEmoji","hexToFallback","hexToHue","humanize","idEmoji","idHue","inferObjectOrder","inferRecordOrder","intersection","iosCheck","isNode","isNotFalsy","isNotNullOrUndefined","joinTables","jsonKeyReplacer","jsonReplacer","jsonify","jsonlogify","keyToEmoji","keyToFallback","keyToHue","makeMap","makeSet","mapValues","median","mobileAndTabletCheck","nonNullable","numericalValues","pick","pickBy","randomInt","range","rangeFromTo","reduceGroupBy","reduceSeries","reduceSet","safariCheck","safeAwaitAll","safeInstanceof","safeParseInt","safeParseJson","setDeep","stringToArray","stripUndefinedValues","sum","throwUnhandledError","toEmoji","toFallback","toHue","tracer"],"entryPoint":"packages/common/util/src/index.ts","inputs":{"inject-globals:@inject-globals":{"bytesInOutput":79},"packages/common/util/src/array.ts":{"bytesInOutput":804},"packages/common/util/src/index.ts":{"bytesInOutput":0},"packages/common/util/src/assign.ts":{"bytesInOutput":619},"packages/common/util/src/binder.ts":{"bytesInOutput":149},"packages/common/util/src/bitfield.ts":{"bytesInOutput":1911},"packages/common/util/src/callback.ts":{"bytesInOutput":1113},"packages/common/util/src/circular-buffer.ts":{"bytesInOutput":1539},"packages/common/util/src/complex.ts":{"bytesInOutput":4423},"packages/common/util/src/explicit-resource-management-polyfill.ts":{"bytesInOutput":100},"packages/common/util/src/defer.ts":{"bytesInOutput":546},"packages/common/util/src/defer-function.ts":{"bytesInOutput":72},"packages/common/util/src/entry.ts":{"bytesInOutput":471},"packages/common/util/src/for-each-async.ts":{"bytesInOutput":62},"packages/common/util/src/human-hash.ts":{"bytesInOutput":5662},"packages/common/util/src/interval.ts":{"bytesInOutput":290},"packages/common/util/src/map.ts":{"bytesInOutput":193},"packages/common/util/src/instance-id.ts":{"bytesInOutput":771},"packages/common/util/src/join-tables.ts":{"bytesInOutput":493},"packages/common/util/src/json.ts":{"bytesInOutput":2956},"packages/common/util/src/uint8array.ts":{"bytesInOutput":562},"packages/common/util/src/map-values.ts":{"bytesInOutput":2144},"packages/common/util/src/order.ts":{"bytesInOutput":676},"packages/common/util/src/params.ts":{"bytesInOutput":1307},"packages/common/util/src/pick.ts":{"bytesInOutput":321},"packages/common/util/src/platform.ts":{"bytesInOutput":3211},"packages/common/util/src/random.ts":{"bytesInOutput":144},"packages/common/util/src/range.ts":{"bytesInOutput":283},"packages/common/util/src/reducers.ts":{"bytesInOutput":2326},"packages/common/util/src/safe-await.ts":{"bytesInOutput":345},"packages/common/util/src/safe-instanceof.ts":{"bytesInOutput":371},"packages/common/util/src/safe-parse-json.ts":{"bytesInOutput":157},"packages/common/util/src/sort.ts":{"bytesInOutput":643},"packages/common/util/src/throw-unhandled-error.ts":{"bytesInOutput":90},"packages/common/util/src/to-fallback.ts":{"bytesInOutput":4082},"packages/common/util/src/tracer.ts":{"bytesInOutput":1426},"packages/common/util/src/types.ts":{"bytesInOutput":1092},"packages/common/util/src/sum.ts":{"bytesInOutput":57},"packages/common/util/src/weak.ts":{"bytesInOutput":2069},"packages/common/util/src/sliding-window-summary.ts":{"bytesInOutput":1802},"packages/common/util/src/callback-collection.ts":{"bytesInOutput":558},"packages/common/util/src/chunk-array.ts":{"bytesInOutput":173}},"bytes":49455}}}
1
+ {"inputs":{"packages/common/util/src/array.ts":{"bytes":5726,"imports":[],"format":"esm"},"packages/common/util/src/assign.ts":{"bytes":3457,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/binder.ts":{"bytes":1363,"imports":[{"path":"@dxos/node-std/util","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/bitfield.ts":{"bytes":8574,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/callback.ts":{"bytes":5305,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/callback-collection.ts":{"bytes":3247,"imports":[],"format":"esm"},"packages/common/util/src/case.ts":{"bytes":4663,"imports":[],"format":"esm"},"packages/common/util/src/chunk-array.ts":{"bytes":1248,"imports":[],"format":"esm"},"packages/common/util/src/circular-buffer.ts":{"bytes":6398,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/complex.ts":{"bytes":22029,"imports":[{"path":"@dxos/node-std/util","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/explicit-resource-management-polyfill.ts":{"bytes":1482,"imports":[]},"packages/common/util/src/defer.ts":{"bytes":3771,"imports":[{"path":"packages/common/util/src/explicit-resource-management-polyfill.ts","kind":"import-statement","original":"./explicit-resource-management-polyfill"}],"format":"esm"},"packages/common/util/src/defer-function.ts":{"bytes":1619,"imports":[],"format":"esm"},"packages/common/util/src/entry.ts":{"bytes":3103,"imports":[],"format":"esm"},"packages/common/util/src/for-each-async.ts":{"bytes":826,"imports":[],"format":"esm"},"packages/common/util/src/human-hash.ts":{"bytes":20242,"imports":[{"path":"@dxos/keys","kind":"import-statement","external":true}],"format":"esm"},"packages/common/util/src/interval.ts":{"bytes":1876,"imports":[],"format":"esm"},"packages/common/util/src/map.ts":{"bytes":1546,"imports":[],"format":"esm"},"packages/common/util/src/instance-id.ts":{"bytes":4306,"imports":[{"path":"packages/common/util/src/map.ts","kind":"import-statement","original":"./map"}],"format":"esm"},"packages/common/util/src/join-tables.ts":{"bytes":3140,"imports":[],"format":"esm"},"packages/common/util/src/uint8array.ts":{"bytes":3822,"imports":[],"format":"esm"},"packages/common/util/src/json.ts":{"bytes":13862,"imports":[{"path":"@dxos/node-std/util","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"packages/common/util/src/human-hash.ts","kind":"import-statement","original":"./human-hash"},{"path":"packages/common/util/src/uint8array.ts","kind":"import-statement","original":"./uint8array"}],"format":"esm"},"packages/common/util/src/map-values.ts":{"bytes":11880,"imports":[],"format":"esm"},"packages/common/util/src/order.ts":{"bytes":5060,"imports":[],"format":"esm"},"packages/common/util/src/pick.ts":{"bytes":2839,"imports":[],"format":"esm"},"packages/common/util/src/platform.ts":{"bytes":11348,"imports":[],"format":"esm"},"packages/common/util/src/random.ts":{"bytes":1356,"imports":[],"format":"esm"},"packages/common/util/src/range.ts":{"bytes":2016,"imports":[],"format":"esm"},"packages/common/util/src/reducers.ts":{"bytes":12989,"imports":[{"path":"packages/common/util/src/map.ts","kind":"import-statement","original":"./map"}],"format":"esm"},"packages/common/util/src/safe-await.ts":{"bytes":2916,"imports":[],"format":"esm"},"packages/common/util/src/safe-instanceof.ts":{"bytes":2749,"imports":[],"format":"esm"},"packages/common/util/src/safe-parse-json.ts":{"bytes":1381,"imports":[],"format":"esm"},"packages/common/util/src/sliding-window-summary.ts":{"bytes":7614,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"packages/common/util/src/circular-buffer.ts","kind":"import-statement","original":"./circular-buffer"}],"format":"esm"},"packages/common/util/src/sort.ts":{"bytes":4004,"imports":[],"format":"esm"},"packages/common/util/src/sum.ts":{"bytes":720,"imports":[],"format":"esm"},"packages/common/util/src/throw-unhandled-error.ts":{"bytes":1216,"imports":[],"format":"esm"},"packages/common/util/src/to-fallback.ts":{"bytes":12288,"imports":[],"format":"esm"},"packages/common/util/src/tracer.ts":{"bytes":7302,"imports":[{"path":"packages/common/util/src/map.ts","kind":"import-statement","original":"./map"}],"format":"esm"},"packages/common/util/src/types.ts":{"bytes":8669,"imports":[],"format":"esm"},"packages/common/util/src/weak.ts":{"bytes":9764,"imports":[],"format":"esm"},"packages/common/util/src/array-to-hex.ts":{"bytes":2518,"imports":[],"format":"esm"},"packages/common/util/src/remove-undefined-keys.ts":{"bytes":1594,"imports":[],"format":"esm"},"packages/common/util/src/index.ts":{"bytes":4444,"imports":[{"path":"packages/common/util/src/array.ts","kind":"import-statement","original":"./array"},{"path":"packages/common/util/src/assign.ts","kind":"import-statement","original":"./assign"},{"path":"packages/common/util/src/binder.ts","kind":"import-statement","original":"./binder"},{"path":"packages/common/util/src/bitfield.ts","kind":"import-statement","original":"./bitfield"},{"path":"packages/common/util/src/callback.ts","kind":"import-statement","original":"./callback"},{"path":"packages/common/util/src/callback-collection.ts","kind":"import-statement","original":"./callback-collection"},{"path":"packages/common/util/src/case.ts","kind":"import-statement","original":"./case"},{"path":"packages/common/util/src/chunk-array.ts","kind":"import-statement","original":"./chunk-array"},{"path":"packages/common/util/src/circular-buffer.ts","kind":"import-statement","original":"./circular-buffer"},{"path":"packages/common/util/src/complex.ts","kind":"import-statement","original":"./complex"},{"path":"packages/common/util/src/defer.ts","kind":"import-statement","original":"./defer"},{"path":"packages/common/util/src/defer-function.ts","kind":"import-statement","original":"./defer-function"},{"path":"packages/common/util/src/entry.ts","kind":"import-statement","original":"./entry"},{"path":"packages/common/util/src/for-each-async.ts","kind":"import-statement","original":"./for-each-async"},{"path":"packages/common/util/src/human-hash.ts","kind":"import-statement","original":"./human-hash"},{"path":"packages/common/util/src/interval.ts","kind":"import-statement","original":"./interval"},{"path":"packages/common/util/src/instance-id.ts","kind":"import-statement","original":"./instance-id"},{"path":"packages/common/util/src/join-tables.ts","kind":"import-statement","original":"./join-tables"},{"path":"packages/common/util/src/json.ts","kind":"import-statement","original":"./json"},{"path":"packages/common/util/src/map.ts","kind":"import-statement","original":"./map"},{"path":"packages/common/util/src/map-values.ts","kind":"import-statement","original":"./map-values"},{"path":"packages/common/util/src/order.ts","kind":"import-statement","original":"./order"},{"path":"packages/common/util/src/pick.ts","kind":"import-statement","original":"./pick"},{"path":"packages/common/util/src/platform.ts","kind":"import-statement","original":"./platform"},{"path":"packages/common/util/src/random.ts","kind":"import-statement","original":"./random"},{"path":"packages/common/util/src/range.ts","kind":"import-statement","original":"./range"},{"path":"packages/common/util/src/reducers.ts","kind":"import-statement","original":"./reducers"},{"path":"packages/common/util/src/safe-await.ts","kind":"import-statement","original":"./safe-await"},{"path":"packages/common/util/src/safe-instanceof.ts","kind":"import-statement","original":"./safe-instanceof"},{"path":"packages/common/util/src/safe-parse-json.ts","kind":"import-statement","original":"./safe-parse-json"},{"path":"packages/common/util/src/sliding-window-summary.ts","kind":"import-statement","original":"./sliding-window-summary"},{"path":"packages/common/util/src/sort.ts","kind":"import-statement","original":"./sort"},{"path":"packages/common/util/src/sum.ts","kind":"import-statement","original":"./sum"},{"path":"packages/common/util/src/throw-unhandled-error.ts","kind":"import-statement","original":"./throw-unhandled-error"},{"path":"packages/common/util/src/to-fallback.ts","kind":"import-statement","original":"./to-fallback"},{"path":"packages/common/util/src/tracer.ts","kind":"import-statement","original":"./tracer"},{"path":"packages/common/util/src/types.ts","kind":"import-statement","original":"./types"},{"path":"packages/common/util/src/uint8array.ts","kind":"import-statement","original":"./uint8array"},{"path":"packages/common/util/src/weak.ts","kind":"import-statement","original":"./weak"},{"path":"packages/common/util/src/sliding-window-summary.ts","kind":"import-statement","original":"./sliding-window-summary"},{"path":"packages/common/util/src/chunk-array.ts","kind":"import-statement","original":"./chunk-array"},{"path":"packages/common/util/src/array-to-hex.ts","kind":"import-statement","original":"./array-to-hex"},{"path":"packages/common/util/src/remove-undefined-keys.ts","kind":"import-statement","original":"./remove-undefined-keys"}],"format":"esm"}},"outputs":{"packages/common/util/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":111899},"packages/common/util/dist/lib/browser/index.mjs":{"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/node-std/util","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/node-std/util","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/node-std/util","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true}],"exports":["BitField","Callback","CallbackCollection","CircularBuffer","ComplexMap","ComplexSet","HumanHasher","MapEntry","SlidingWindowSummary","Tracer","WeakDictionary","accessBy","arrayMove","arrayToBuffer","arrayToHex","arrayToString","arraysEqual","boolGuard","bufferToArray","chunkArray","compareMulti","compareObject","compareScalar","compareString","createBinder","createBucketReducer","createGroupReducer","createSetDispatch","decamelize","deepMapValues","deepMapValuesAsync","defaultMap","defer","deferAsync","deferFunction","diff","distinctBy","doAsync","entry","exponentialBackoffInterval","forEachAsync","getAsyncProviderValue","getDate","getDebugName","getDeep","getHostPlatform","getPrototypeSpecificInstanceId","getProviderValue","hexToEmoji","hexToFallback","hexToHue","humanize","hyphenize","idEmoji","idHue","inferObjectOrder","inferRecordOrder","intersection","iosCheck","isNode","isNotFalsy","isNotNullOrUndefined","joinTables","jsonKeyReplacer","jsonReplacer","jsonify","jsonlogify","keyToEmoji","keyToFallback","keyToHue","makeMap","makeSet","mapValues","median","mobileAndTabletCheck","nonNullable","numericalValues","pick","pickBy","randomInt","range","rangeFromTo","reduceGroupBy","reduceSeries","reduceSet","removeUndefinedProperties","safariCheck","safeAwaitAll","safeInstanceof","safeParseInt","safeParseJson","setDeep","stringToArray","stripUndefinedValues","sum","throwUnhandledError","toEmoji","toFallback","toHue","tracer"],"entryPoint":"packages/common/util/src/index.ts","inputs":{"packages/common/util/src/array.ts":{"bytesInOutput":804},"packages/common/util/src/index.ts":{"bytesInOutput":0},"packages/common/util/src/assign.ts":{"bytesInOutput":619},"packages/common/util/src/binder.ts":{"bytesInOutput":149},"packages/common/util/src/bitfield.ts":{"bytesInOutput":1911},"packages/common/util/src/callback.ts":{"bytesInOutput":1113},"packages/common/util/src/callback-collection.ts":{"bytesInOutput":558},"packages/common/util/src/case.ts":{"bytesInOutput":940},"packages/common/util/src/chunk-array.ts":{"bytesInOutput":173},"packages/common/util/src/circular-buffer.ts":{"bytesInOutput":1539},"packages/common/util/src/complex.ts":{"bytesInOutput":4423},"packages/common/util/src/explicit-resource-management-polyfill.ts":{"bytesInOutput":100},"packages/common/util/src/defer.ts":{"bytesInOutput":546},"packages/common/util/src/defer-function.ts":{"bytesInOutput":72},"packages/common/util/src/entry.ts":{"bytesInOutput":471},"packages/common/util/src/for-each-async.ts":{"bytesInOutput":62},"packages/common/util/src/human-hash.ts":{"bytesInOutput":5662},"packages/common/util/src/interval.ts":{"bytesInOutput":290},"packages/common/util/src/map.ts":{"bytesInOutput":193},"packages/common/util/src/instance-id.ts":{"bytesInOutput":771},"packages/common/util/src/join-tables.ts":{"bytesInOutput":493},"packages/common/util/src/json.ts":{"bytesInOutput":2956},"packages/common/util/src/uint8array.ts":{"bytesInOutput":562},"packages/common/util/src/map-values.ts":{"bytesInOutput":2298},"packages/common/util/src/order.ts":{"bytesInOutput":676},"packages/common/util/src/pick.ts":{"bytesInOutput":321},"packages/common/util/src/platform.ts":{"bytesInOutput":3211},"packages/common/util/src/random.ts":{"bytesInOutput":148},"packages/common/util/src/range.ts":{"bytesInOutput":283},"packages/common/util/src/reducers.ts":{"bytesInOutput":2326},"packages/common/util/src/safe-await.ts":{"bytesInOutput":345},"packages/common/util/src/safe-instanceof.ts":{"bytesInOutput":371},"packages/common/util/src/safe-parse-json.ts":{"bytesInOutput":157},"packages/common/util/src/sliding-window-summary.ts":{"bytesInOutput":1802},"packages/common/util/src/sort.ts":{"bytesInOutput":643},"packages/common/util/src/sum.ts":{"bytesInOutput":57},"packages/common/util/src/throw-unhandled-error.ts":{"bytesInOutput":90},"packages/common/util/src/to-fallback.ts":{"bytesInOutput":4082},"packages/common/util/src/tracer.ts":{"bytesInOutput":1426},"packages/common/util/src/types.ts":{"bytesInOutput":1092},"packages/common/util/src/weak.ts":{"bytesInOutput":2069},"packages/common/util/src/array-to-hex.ts":{"bytesInOutput":341},"packages/common/util/src/remove-undefined-keys.ts":{"bytesInOutput":255}},"bytes":49863}}}
@@ -36,14 +36,13 @@ __export(node_exports, {
36
36
  ComplexSet: () => ComplexSet,
37
37
  HumanHasher: () => HumanHasher,
38
38
  MapEntry: () => MapEntry,
39
- ParamKeyAnnotation: () => ParamKeyAnnotation,
40
- Params: () => Params,
41
39
  SlidingWindowSummary: () => SlidingWindowSummary,
42
40
  Tracer: () => Tracer,
43
41
  WeakDictionary: () => WeakDictionary,
44
42
  accessBy: () => accessBy,
45
43
  arrayMove: () => arrayMove,
46
44
  arrayToBuffer: () => arrayToBuffer,
45
+ arrayToHex: () => arrayToHex,
47
46
  arrayToString: () => arrayToString,
48
47
  arraysEqual: () => arraysEqual,
49
48
  boolGuard: () => boolGuard,
@@ -57,6 +56,7 @@ __export(node_exports, {
57
56
  createBucketReducer: () => createBucketReducer,
58
57
  createGroupReducer: () => createGroupReducer,
59
58
  createSetDispatch: () => createSetDispatch,
59
+ decamelize: () => decamelize,
60
60
  deepMapValues: () => deepMapValues,
61
61
  deepMapValuesAsync: () => deepMapValuesAsync,
62
62
  defaultMap: () => defaultMap,
@@ -80,6 +80,7 @@ __export(node_exports, {
80
80
  hexToFallback: () => hexToFallback,
81
81
  hexToHue: () => hexToHue,
82
82
  humanize: () => humanize,
83
+ hyphenize: () => hyphenize,
83
84
  idEmoji: () => idEmoji,
84
85
  idHue: () => idHue,
85
86
  inferObjectOrder: () => inferObjectOrder,
@@ -112,6 +113,7 @@ __export(node_exports, {
112
113
  reduceGroupBy: () => reduceGroupBy,
113
114
  reduceSeries: () => reduceSeries,
114
115
  reduceSet: () => reduceSet,
116
+ removeUndefinedProperties: () => removeUndefinedProperties,
115
117
  safariCheck: () => safariCheck,
116
118
  safeAwaitAll: () => safeAwaitAll,
117
119
  safeInstanceof: () => safeInstanceof,
@@ -138,8 +140,6 @@ var import_debug = require("@dxos/debug");
138
140
  var import_keys = require("@dxos/keys");
139
141
  var import_node_util3 = require("node:util");
140
142
  var import_keys2 = require("@dxos/keys");
141
- var import_schema = require("@effect/schema");
142
- var import_xcase = require("xcase");
143
143
  var import_invariant5 = require("@dxos/invariant");
144
144
  var diff = (previous, next, comparator) => {
145
145
  const remaining = [
@@ -319,6 +319,66 @@ var createSetDispatch = ({ handlers }) => {
319
319
  }
320
320
  });
321
321
  };
322
+ var CallbackCollection = class {
323
+ #callbacks = [];
324
+ append(callback) {
325
+ this.#callbacks.push(callback);
326
+ }
327
+ prepend(callback) {
328
+ this.#callbacks.unshift(callback);
329
+ }
330
+ remove(callback) {
331
+ this.#callbacks = this.#callbacks.filter((c) => c !== callback);
332
+ }
333
+ callParallel(...args) {
334
+ return Promise.all(this.#callbacks.map((callback) => callback(...args)));
335
+ }
336
+ async callSerial(...args) {
337
+ const results = [];
338
+ for (const callback of this.#callbacks) {
339
+ results.push(await callback(...args));
340
+ }
341
+ return results;
342
+ }
343
+ };
344
+ var LOW_DASH = "_".codePointAt(0);
345
+ var HI_DASH = "-".codePointAt(0);
346
+ var SMALL_A = "a".codePointAt(0);
347
+ var CAPITAL_A = "A".codePointAt(0);
348
+ var SMALL_Z = "z".codePointAt(0);
349
+ var CAPITAL_Z = "Z".codePointAt(0);
350
+ var isLower = (char) => char >= SMALL_A && char <= SMALL_Z;
351
+ var isUpper = (char) => char >= CAPITAL_A && char <= CAPITAL_Z;
352
+ var toLower = (char) => char + 32;
353
+ var changeCase = (str, delim) => {
354
+ const firstChar = str.charCodeAt(0);
355
+ if (!isLower(firstChar)) {
356
+ return str;
357
+ }
358
+ const length = str.length;
359
+ let changed = false;
360
+ const out = [];
361
+ for (let i = 0; i < length; ++i) {
362
+ const c = str.charCodeAt(i);
363
+ if (isUpper(c)) {
364
+ out.push(delim);
365
+ out.push(toLower(c));
366
+ changed = true;
367
+ } else {
368
+ out.push(c);
369
+ }
370
+ }
371
+ return changed ? String.fromCharCode.apply(void 0, out) : str;
372
+ };
373
+ var decamelize = (str) => changeCase(str, LOW_DASH);
374
+ var hyphenize = (str) => changeCase(str, HI_DASH);
375
+ var chunkArray = (array, size) => {
376
+ const result = [];
377
+ for (let i = 0; i < array.length; i += size) {
378
+ result.push(array.slice(i, i + size));
379
+ }
380
+ return result;
381
+ };
322
382
  var __dxlog_file4 = "/home/runner/work/dxos/dxos/packages/common/util/src/circular-buffer.ts";
323
383
  var CircularBuffer = class {
324
384
  constructor(size) {
@@ -1131,14 +1191,14 @@ var DeepMapper = class {
1131
1191
  const res = new Array(value.length);
1132
1192
  this._cyclic.set(value, res);
1133
1193
  for (let i = 0; i < value.length; i++) {
1134
- res[i] = this.map(value[i]);
1194
+ res[i] = this._map(value[i], i);
1135
1195
  }
1136
1196
  return res;
1137
1197
  } else if (value !== null && typeof value === "object") {
1138
1198
  const res = {};
1139
1199
  this._cyclic.set(value, res);
1140
1200
  for (const key in value) {
1141
- res[key] = this.map(value[key]);
1201
+ res[key] = this._map(value[key], key);
1142
1202
  }
1143
1203
  return res;
1144
1204
  } else {
@@ -1147,10 +1207,13 @@ var DeepMapper = class {
1147
1207
  };
1148
1208
  }
1149
1209
  map(value) {
1210
+ return this._map(value, void 0);
1211
+ }
1212
+ _map(value, key) {
1150
1213
  if (this._cyclic.has(value)) {
1151
1214
  return this._cyclic.get(value);
1152
1215
  }
1153
- return this._fn(value, this._recurse);
1216
+ return this._fn(value, this._recurse, key);
1154
1217
  }
1155
1218
  };
1156
1219
  var deepMapValuesAsync = (value, fn) => {
@@ -1168,14 +1231,14 @@ var DeepMapperAsync = class {
1168
1231
  const res = new Array(value.length);
1169
1232
  this._cyclic.set(value, res);
1170
1233
  for (let i = 0; i < value.length; i++) {
1171
- res[i] = await this.map(value[i]);
1234
+ res[i] = await this._map(value[i], i);
1172
1235
  }
1173
1236
  return res;
1174
1237
  } else if (value !== null && typeof value === "object") {
1175
1238
  const res = {};
1176
1239
  this._cyclic.set(value, res);
1177
1240
  for (const key in value) {
1178
- res[key] = await this.map(value[key]);
1241
+ res[key] = await this._map(value[key], key);
1179
1242
  }
1180
1243
  return res;
1181
1244
  } else {
@@ -1184,10 +1247,13 @@ var DeepMapperAsync = class {
1184
1247
  };
1185
1248
  }
1186
1249
  map(value) {
1250
+ return this._map(value, void 0);
1251
+ }
1252
+ _map(value, key) {
1187
1253
  if (this._cyclic.has(value)) {
1188
1254
  return this._cyclic.get(value);
1189
1255
  }
1190
- return this._fn(value, this._recurse);
1256
+ return this._fn(value, this._recurse, key);
1191
1257
  }
1192
1258
  };
1193
1259
  var inferObjectOrder = (objectMap, order = []) => {
@@ -1215,51 +1281,6 @@ var inferRecordOrder = (objectMap, order = []) => {
1215
1281
  return acc;
1216
1282
  }, {}), objectMap);
1217
1283
  };
1218
- var ParamKeyAnnotationId = Symbol.for("@dxos/schema/annotation/ParamKeyAnnotation");
1219
- var ParamKeyAnnotation = (value) => (self) => self.annotations({
1220
- [ParamKeyAnnotationId]: value
1221
- });
1222
- var Params = class {
1223
- constructor(_schema) {
1224
- this._schema = _schema;
1225
- }
1226
- /**
1227
- * Parse URL params.
1228
- * @param url
1229
- */
1230
- parse(url) {
1231
- return Object.entries(this._schema.fields).reduce((acc, [key, type]) => {
1232
- let v = url.searchParams.get((0, import_xcase.decamelize)(key));
1233
- if (v == null) {
1234
- v = url.searchParams.get(key);
1235
- }
1236
- if (v != null) {
1237
- if (import_schema.AST.isNumberKeyword(type.ast)) {
1238
- acc[key] = parseInt(v);
1239
- } else if (import_schema.AST.isBooleanKeyword(type.ast)) {
1240
- acc[key] = v === "true" || v === "1";
1241
- } else {
1242
- acc[key] = v;
1243
- }
1244
- }
1245
- return acc;
1246
- }, {});
1247
- }
1248
- /**
1249
- * Update URL with params.
1250
- */
1251
- params(url, values) {
1252
- Object.entries(values).forEach(([key, value]) => {
1253
- const type = this._schema.fields[key];
1254
- if (type && value != null) {
1255
- const { value: alt } = import_schema.AST.getAnnotation(ParamKeyAnnotationId)(type.ast);
1256
- const k = alt ?? (0, import_xcase.decamelize)(key);
1257
- url.searchParams.set(k, String(value));
1258
- }
1259
- });
1260
- return url;
1261
- }
1262
- };
1263
1284
  var pick = (object, keys) => keys.reduce((obj, key) => {
1264
1285
  if (object && key in object) {
1265
1286
  obj[key] = object[key];
@@ -1314,7 +1335,7 @@ var getHostPlatform = () => {
1314
1335
  return "unknown";
1315
1336
  }
1316
1337
  };
1317
- var randomInt = (max, min) => {
1338
+ var randomInt = (max, min = 0) => {
1318
1339
  min = Math.ceil(min);
1319
1340
  max = Math.floor(max);
1320
1341
  return Math.floor(Math.random() * (max - min + 1)) + min;
@@ -1445,6 +1466,59 @@ var safeParseJson = (data, defaultValue) => {
1445
1466
  }
1446
1467
  return defaultValue;
1447
1468
  };
1469
+ var __dxlog_file5 = "/home/runner/work/dxos/dxos/packages/common/util/src/sliding-window-summary.ts";
1470
+ var SlidingWindowSummary = class {
1471
+ constructor(options) {
1472
+ this._sum = 0;
1473
+ this._buffer = new CircularBuffer(options.dataPoints);
1474
+ if (options.precision != null) {
1475
+ (0, import_invariant5.invariant)(options.precision >= 0, void 0, {
1476
+ F: __dxlog_file5,
1477
+ L: 26,
1478
+ S: this,
1479
+ A: [
1480
+ "options.precision >= 0",
1481
+ ""
1482
+ ]
1483
+ });
1484
+ this._precision = Math.pow(10, options.precision);
1485
+ }
1486
+ }
1487
+ record(value) {
1488
+ const evicted = this._buffer.push(value);
1489
+ this._sum += value - (evicted ?? 0);
1490
+ }
1491
+ average() {
1492
+ return this._buffer.elementCount === 0 ? 0 : this._withPrecision(this._sum / this._buffer.elementCount);
1493
+ }
1494
+ computeWindowSummary() {
1495
+ const mean = this.average();
1496
+ const sortedElements = [
1497
+ ...this._buffer
1498
+ ].sort();
1499
+ const median2 = this._withPrecision(sortedElements.length % 2 === 0 ? (sortedElements[sortedElements.length / 2] + sortedElements[sortedElements.length / 2 - 1]) / 2 : sortedElements[sortedElements.length / 2]);
1500
+ const p90 = this._withPrecision(sortedElements[Math.round(sortedElements.length * 0.9)]);
1501
+ const variance = sortedElements.reduce((acc, v) => acc + Math.pow(v - mean, 2)) / sortedElements.length;
1502
+ const stdDev = this._withPrecision(Math.sqrt(variance));
1503
+ const histogram = sortedElements.reduce((acc, v) => {
1504
+ acc[v] += 1;
1505
+ return acc;
1506
+ }, {});
1507
+ return {
1508
+ mean,
1509
+ median: median2,
1510
+ p90,
1511
+ stdDev,
1512
+ histogram
1513
+ };
1514
+ }
1515
+ _withPrecision(value) {
1516
+ if (this._precision == null) {
1517
+ return value;
1518
+ }
1519
+ return Math.round(value * this._precision) / this._precision;
1520
+ }
1521
+ };
1448
1522
  var compareScalar = (inc = true) => (a, b) => (inc ? 1 : -1) * (a < b ? -1 : a > b ? 1 : 0);
1449
1523
  var compareString = (inc = true, caseInsensitive = true) => (a, b) => {
1450
1524
  if (caseInsensitive) {
@@ -1465,6 +1539,7 @@ var compareMulti = (sorters) => (a, b) => {
1465
1539
  };
1466
1540
  return sort();
1467
1541
  };
1542
+ var sum = (values) => values.reduce((a, b) => a + b, 0);
1468
1543
  var throwUnhandledError = (error) => {
1469
1544
  queueMicrotask(() => {
1470
1545
  throw error;
@@ -1746,7 +1821,6 @@ var safeParseInt = (value, defaultValue) => {
1746
1821
  return defaultValue;
1747
1822
  }
1748
1823
  };
1749
- var sum = (values) => values.reduce((a, b) => a + b, 0);
1750
1824
  var WeakDictionary = class {
1751
1825
  constructor(entries) {
1752
1826
  this._internal = /* @__PURE__ */ new Map();
@@ -1840,87 +1914,29 @@ var WeakDictionary = class {
1840
1914
  this._finalization.unregister(value);
1841
1915
  }
1842
1916
  };
1843
- var __dxlog_file5 = "/home/runner/work/dxos/dxos/packages/common/util/src/sliding-window-summary.ts";
1844
- var SlidingWindowSummary = class {
1845
- constructor(options) {
1846
- this._sum = 0;
1847
- this._buffer = new CircularBuffer(options.dataPoints);
1848
- if (options.precision != null) {
1849
- (0, import_invariant5.invariant)(options.precision >= 0, void 0, {
1850
- F: __dxlog_file5,
1851
- L: 26,
1852
- S: this,
1853
- A: [
1854
- "options.precision >= 0",
1855
- ""
1856
- ]
1857
- });
1858
- this._precision = Math.pow(10, options.precision);
1859
- }
1860
- }
1861
- record(value) {
1862
- const evicted = this._buffer.push(value);
1863
- this._sum += value - (evicted ?? 0);
1864
- }
1865
- average() {
1866
- return this._buffer.elementCount === 0 ? 0 : this._withPrecision(this._sum / this._buffer.elementCount);
1867
- }
1868
- computeWindowSummary() {
1869
- const mean = this.average();
1870
- const sortedElements = [
1871
- ...this._buffer
1872
- ].sort();
1873
- const median2 = this._withPrecision(sortedElements.length % 2 === 0 ? (sortedElements[sortedElements.length / 2] + sortedElements[sortedElements.length / 2 - 1]) / 2 : sortedElements[sortedElements.length / 2]);
1874
- const p90 = this._withPrecision(sortedElements[Math.round(sortedElements.length * 0.9)]);
1875
- const variance = sortedElements.reduce((acc, v) => acc + Math.pow(v - mean, 2)) / sortedElements.length;
1876
- const stdDev = this._withPrecision(Math.sqrt(variance));
1877
- const histogram = sortedElements.reduce((acc, v) => {
1878
- acc[v] += 1;
1879
- return acc;
1880
- }, {});
1881
- return {
1882
- mean,
1883
- median: median2,
1884
- p90,
1885
- stdDev,
1886
- histogram
1887
- };
1888
- }
1889
- _withPrecision(value) {
1890
- if (this._precision == null) {
1891
- return value;
1892
- }
1893
- return Math.round(value * this._precision) / this._precision;
1894
- }
1895
- };
1896
- var CallbackCollection = class {
1897
- #callbacks = [];
1898
- append(callback) {
1899
- this.#callbacks.push(callback);
1900
- }
1901
- prepend(callback) {
1902
- this.#callbacks.unshift(callback);
1903
- }
1904
- remove(callback) {
1905
- this.#callbacks = this.#callbacks.filter((c) => c !== callback);
1906
- }
1907
- callParallel(...args) {
1908
- return Promise.all(this.#callbacks.map((callback) => callback(...args)));
1909
- }
1910
- async callSerial(...args) {
1911
- const results = [];
1912
- for (const callback of this.#callbacks) {
1913
- results.push(await callback(...args));
1917
+ var byteToHex = [];
1918
+ for (let n = 0; n <= 255; ++n) {
1919
+ const hexOctet = n.toString(16).padStart(2, "0");
1920
+ byteToHex.push(hexOctet);
1921
+ }
1922
+ var arrayToHex = (buf) => {
1923
+ const buff = new Uint8Array(buf);
1924
+ const hexOctets = [];
1925
+ for (let i = 0; i < buff.length; ++i) {
1926
+ hexOctets.push(byteToHex[buff[i]]);
1927
+ }
1928
+ return hexOctets.join("");
1929
+ };
1930
+ var removeUndefinedProperties = (object) => {
1931
+ for (const prop of [
1932
+ ...Object.getOwnPropertyNames(object),
1933
+ ...Object.getOwnPropertySymbols(object)
1934
+ ]) {
1935
+ if (object[prop] === void 0) {
1936
+ delete object[prop];
1914
1937
  }
1915
- return results;
1916
1938
  }
1917
- };
1918
- var chunkArray = (array, size) => {
1919
- const result = [];
1920
- for (let i = 0; i < array.length; i += size) {
1921
- result.push(array.slice(i, i + size));
1922
- }
1923
- return result;
1939
+ return object;
1924
1940
  };
1925
1941
  // Annotate the CommonJS export names for ESM import in node:
1926
1942
  0 && (module.exports = {
@@ -1932,14 +1948,13 @@ var chunkArray = (array, size) => {
1932
1948
  ComplexSet,
1933
1949
  HumanHasher,
1934
1950
  MapEntry,
1935
- ParamKeyAnnotation,
1936
- Params,
1937
1951
  SlidingWindowSummary,
1938
1952
  Tracer,
1939
1953
  WeakDictionary,
1940
1954
  accessBy,
1941
1955
  arrayMove,
1942
1956
  arrayToBuffer,
1957
+ arrayToHex,
1943
1958
  arrayToString,
1944
1959
  arraysEqual,
1945
1960
  boolGuard,
@@ -1953,6 +1968,7 @@ var chunkArray = (array, size) => {
1953
1968
  createBucketReducer,
1954
1969
  createGroupReducer,
1955
1970
  createSetDispatch,
1971
+ decamelize,
1956
1972
  deepMapValues,
1957
1973
  deepMapValuesAsync,
1958
1974
  defaultMap,
@@ -1976,6 +1992,7 @@ var chunkArray = (array, size) => {
1976
1992
  hexToFallback,
1977
1993
  hexToHue,
1978
1994
  humanize,
1995
+ hyphenize,
1979
1996
  idEmoji,
1980
1997
  idHue,
1981
1998
  inferObjectOrder,
@@ -2008,6 +2025,7 @@ var chunkArray = (array, size) => {
2008
2025
  reduceGroupBy,
2009
2026
  reduceSeries,
2010
2027
  reduceSet,
2028
+ removeUndefinedProperties,
2011
2029
  safariCheck,
2012
2030
  safeAwaitAll,
2013
2031
  safeInstanceof,