@dxos/util 0.7.5-main.9d2a38b → 0.7.5-main.e94eead

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 (40) hide show
  1. package/dist/lib/browser/index.mjs +70 -51
  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 +68 -50
  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 +70 -51
  8. package/dist/lib/node-esm/index.mjs.map +4 -4
  9. package/dist/lib/node-esm/meta.json +1 -1
  10. package/dist/types/src/array.d.ts +7 -0
  11. package/dist/types/src/array.d.ts.map +1 -1
  12. package/dist/types/src/index.d.ts +5 -5
  13. package/dist/types/src/index.d.ts.map +1 -1
  14. package/dist/types/src/position.d.ts +15 -0
  15. package/dist/types/src/position.d.ts.map +1 -0
  16. package/dist/types/src/position.test.d.ts +2 -0
  17. package/dist/types/src/position.test.d.ts.map +1 -0
  18. package/dist/types/src/range.d.ts +4 -0
  19. package/dist/types/src/range.d.ts.map +1 -1
  20. package/dist/types/src/string.d.ts +5 -0
  21. package/dist/types/src/string.d.ts.map +1 -0
  22. package/dist/types/src/types.d.ts +15 -4
  23. package/dist/types/src/types.d.ts.map +1 -1
  24. package/package.json +7 -6
  25. package/src/array.ts +17 -0
  26. package/src/index.ts +6 -6
  27. package/src/instance-id.ts +1 -1
  28. package/src/position.test.ts +98 -0
  29. package/src/position.ts +31 -0
  30. package/src/range.ts +7 -0
  31. package/src/safe-parse.ts +1 -1
  32. package/src/string.ts +14 -0
  33. package/src/types.test.ts +2 -2
  34. package/src/types.ts +17 -7
  35. package/dist/types/src/disposition.d.ts +0 -15
  36. package/dist/types/src/disposition.d.ts.map +0 -1
  37. package/dist/types/src/disposition.test.d.ts +0 -2
  38. package/dist/types/src/disposition.test.d.ts.map +0 -1
  39. package/src/disposition.test.ts +0 -98
  40. package/src/disposition.ts +0 -30
@@ -33,6 +33,15 @@ var distinctBy = (array, selector) => {
33
33
  return true;
34
34
  });
35
35
  };
36
+ var removeBy = (array, test) => {
37
+ const removed = [];
38
+ for (let i = array.length - 1; i >= 0; i--) {
39
+ if (test(array[i], i)) {
40
+ removed.push(...array.splice(i, 1));
41
+ }
42
+ }
43
+ return removed;
44
+ };
36
45
  var partition = (array, guard) => {
37
46
  return array.reduce(([accepted, rejected], item, index, array2) => guard(item, index, array2) ? [
38
47
  [
@@ -52,6 +61,21 @@ var partition = (array, guard) => {
52
61
  ]);
53
62
  };
54
63
 
64
+ // packages/common/util/src/array-to-hex.ts
65
+ var byteToHex = [];
66
+ for (let n = 0; n <= 255; ++n) {
67
+ const hexOctet = n.toString(16).padStart(2, "0");
68
+ byteToHex.push(hexOctet);
69
+ }
70
+ var arrayToHex = (buf) => {
71
+ const buff = new Uint8Array(buf);
72
+ const hexOctets = [];
73
+ for (let i = 0; i < buff.length; ++i) {
74
+ hexOctets.push(byteToHex[buff[i]]);
75
+ }
76
+ return hexOctets.join("");
77
+ };
78
+
55
79
  // packages/common/util/src/binder.ts
56
80
  import util from "@dxos/node-std/util";
57
81
  var createBinder = (obj) => ({
@@ -560,20 +584,6 @@ var getDeep = (obj, path) => {
560
584
  return parent;
561
585
  };
562
586
 
563
- // packages/common/util/src/disposition.ts
564
- var byDisposition = (a, b) => {
565
- const aDisposition = a.disposition ?? "static";
566
- const bDisposition = b.disposition ?? "static";
567
- if (aDisposition === bDisposition) {
568
- return 0;
569
- } else if (aDisposition === "hoist" || bDisposition === "fallback") {
570
- return -1;
571
- } else if (bDisposition === "hoist" || aDisposition === "fallback") {
572
- return 1;
573
- }
574
- return 0;
575
- };
576
-
577
587
  // packages/common/util/src/entry.ts
578
588
  var entry = (map, key) => new MapEntry(map, key);
579
589
  var MapEntry = class {
@@ -979,7 +989,7 @@ var getDebugName = (instance) => {
979
989
  return "null";
980
990
  }
981
991
  const prototype = Object.getPrototypeOf(instance);
982
- return `${prototype.constructor.name}#${getPrototypeSpecificInstanceId(instance)}`;
992
+ return `${prototype.constructor?.name ?? "Object"}#${getPrototypeSpecificInstanceId(instance)}`;
983
993
  };
984
994
 
985
995
  // packages/common/util/src/join-tables.ts
@@ -1235,6 +1245,22 @@ var inferRecordOrder = (objectMap, order = []) => {
1235
1245
  }, {}), objectMap);
1236
1246
  };
1237
1247
 
1248
+ // packages/common/util/src/order-keys.ts
1249
+ var orderKeys = (obj, order) => {
1250
+ const ordered = {};
1251
+ for (const key of order) {
1252
+ if (key in obj) {
1253
+ ordered[key] = obj[key];
1254
+ }
1255
+ }
1256
+ for (const key in obj) {
1257
+ if (!(key in ordered)) {
1258
+ ordered[key] = obj[key];
1259
+ }
1260
+ }
1261
+ return ordered;
1262
+ };
1263
+
1238
1264
  // packages/common/util/src/pick.ts
1239
1265
  var pick = (obj, keys) => {
1240
1266
  return keys.reduce((result, key) => {
@@ -1304,6 +1330,20 @@ var getHostPlatform = () => {
1304
1330
  }
1305
1331
  };
1306
1332
 
1333
+ // packages/common/util/src/position.ts
1334
+ var byPosition = (a, b) => {
1335
+ const aPosition = a.position ?? "static";
1336
+ const bPosition = b.position ?? "static";
1337
+ if (aPosition === bPosition) {
1338
+ return 0;
1339
+ } else if (aPosition === "hoist" || bPosition === "fallback") {
1340
+ return -1;
1341
+ } else if (bPosition === "hoist" || aPosition === "fallback") {
1342
+ return 1;
1343
+ }
1344
+ return 0;
1345
+ };
1346
+
1307
1347
  // packages/common/util/src/random.ts
1308
1348
  var randomInt = (max, min = 0) => {
1309
1349
  min = Math.ceil(min);
@@ -1319,6 +1359,9 @@ var range = (n, mapper) => {
1319
1359
  var rangeFromTo = (from, to, mapper) => {
1320
1360
  return mapper == null ? range(to - from, (i) => i + from) : range(to - from, (i) => mapper(i + from));
1321
1361
  };
1362
+ var clamp = (value, min, max) => {
1363
+ return Math.min(Math.max(value, min), max);
1364
+ };
1322
1365
 
1323
1366
  // packages/common/util/src/reducers.ts
1324
1367
  var accessBy = (value, accessor) => typeof accessor === "function" ? accessor(value) : value[accessor];
@@ -1453,7 +1496,7 @@ var safeParseFloat = (str, defaultValue) => {
1453
1496
  }
1454
1497
  };
1455
1498
  var safeParseJson = (data, defaultValue) => {
1456
- if (data) {
1499
+ if (data && data.length > 0) {
1457
1500
  try {
1458
1501
  return JSON.parse(data);
1459
1502
  } catch (err) {
@@ -1836,9 +1879,7 @@ var stringifyTree = (node, ancestors = [], rows = []) => {
1836
1879
 
1837
1880
  // packages/common/util/src/types.ts
1838
1881
  var isNotFalsy = (value) => !!value;
1839
- var nonNullable = (value) => value !== null && value !== void 0;
1840
- var isNotNullOrUndefined = (value) => value != null;
1841
- var boolGuard = (value) => Boolean(value);
1882
+ var isNonNullable = (value) => value != null;
1842
1883
  var doAsync = async (fn) => fn();
1843
1884
  var getProviderValue = (provider, arg) => {
1844
1885
  return typeof provider === "function" ? provider(arg) : provider;
@@ -1963,19 +2004,12 @@ var WeakDictionary = class {
1963
2004
  }
1964
2005
  };
1965
2006
 
1966
- // packages/common/util/src/array-to-hex.ts
1967
- var byteToHex = [];
1968
- for (let n = 0; n <= 255; ++n) {
1969
- const hexOctet = n.toString(16).padStart(2, "0");
1970
- byteToHex.push(hexOctet);
1971
- }
1972
- var arrayToHex = (buf) => {
1973
- const buff = new Uint8Array(buf);
1974
- const hexOctets = [];
1975
- for (let i = 0; i < buff.length; ++i) {
1976
- hexOctets.push(byteToHex[buff[i]]);
2007
+ // packages/common/util/src/string.ts
2008
+ var capitalize = (str) => {
2009
+ if (str.length === 0) {
2010
+ return "";
1977
2011
  }
1978
- return hexOctets.join("");
2012
+ return str.charAt(0).toUpperCase() + str.slice(1);
1979
2013
  };
1980
2014
 
1981
2015
  // packages/common/util/src/remove-undefined-keys.ts
@@ -1990,22 +2024,6 @@ var removeUndefinedProperties = (object) => {
1990
2024
  }
1991
2025
  return object;
1992
2026
  };
1993
-
1994
- // packages/common/util/src/order-keys.ts
1995
- var orderKeys = (obj, order) => {
1996
- const ordered = {};
1997
- for (const key of order) {
1998
- if (key in obj) {
1999
- ordered[key] = obj[key];
2000
- }
2001
- }
2002
- for (const key in obj) {
2003
- if (!(key in ordered)) {
2004
- ordered[key] = obj[key];
2005
- }
2006
- }
2007
- return ordered;
2008
- };
2009
2027
  export {
2010
2028
  BitField,
2011
2029
  Callback,
@@ -2024,10 +2042,11 @@ export {
2024
2042
  arrayToHex,
2025
2043
  arrayToString,
2026
2044
  arraysEqual,
2027
- boolGuard,
2028
2045
  bufferToArray,
2029
- byDisposition,
2046
+ byPosition,
2047
+ capitalize,
2030
2048
  chunkArray,
2049
+ clamp,
2031
2050
  compareMulti,
2032
2051
  compareObject,
2033
2052
  compareScalar,
@@ -2068,8 +2087,8 @@ export {
2068
2087
  intersection,
2069
2088
  iosCheck,
2070
2089
  isNode,
2090
+ isNonNullable,
2071
2091
  isNotFalsy,
2072
- isNotNullOrUndefined,
2073
2092
  joinTables,
2074
2093
  jsonKeyReplacer,
2075
2094
  jsonReplacer,
@@ -2083,7 +2102,6 @@ export {
2083
2102
  mapValues,
2084
2103
  median,
2085
2104
  mobileAndTabletCheck,
2086
- nonNullable,
2087
2105
  numericalValues,
2088
2106
  omit,
2089
2107
  orderKeys,
@@ -2096,6 +2114,7 @@ export {
2096
2114
  reduceGroupBy,
2097
2115
  reduceSeries,
2098
2116
  reduceSet,
2117
+ removeBy,
2099
2118
  removeUndefinedProperties,
2100
2119
  safariCheck,
2101
2120
  safeAwaitAll,