@daaler/jutils 0.4.0 → 0.4.1

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.
@@ -3,7 +3,7 @@ class IdBasedCache {
3
3
  _finalizationRegistry; // not sure what "item" actually should be
4
4
  constructor() {
5
5
  this._cache = new Map();
6
- this._finalizationRegistry = new FinalizationRegistry(this._reclaim);
6
+ this._finalizationRegistry = new FinalizationRegistry((_id) => this._reclaim(_id));
7
7
  }
8
8
  retrieve(_id) {
9
9
  const value = this._cache.get(_id)?.deref();
@@ -1 +1 @@
1
- {"version":3,"file":"id-based-cache.js","sourceRoot":"","sources":["../../src/cache/id-based-cache.ts"],"names":[],"mappings":"AAMA,MAAM,YAAY;IACjB,MAAM,CAAwB,CAAC,kBAAkB;IACjD,qBAAqB,CAA8B,CAAC,0CAA0C;IAE9F;QACC,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,qBAAqB,GAAG,IAAI,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtE,CAAC;IAED,QAAQ,CAAC,GAAU;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACd,CAAC;IAED,KAAK,CAAC,IAAM;QACX,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5C,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,GAAU;QAChB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,GAAU;QAClB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;CACD;AAID,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"id-based-cache.js","sourceRoot":"","sources":["../../src/cache/id-based-cache.ts"],"names":[],"mappings":"AAMA,MAAM,YAAY;IACjB,MAAM,CAAwB,CAAC,kBAAkB;IACjD,qBAAqB,CAA8B,CAAC,0CAA0C;IAE9F;QACC,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,qBAAqB,GAAG,IAAI,oBAAoB,CAAC,CAAC,GAAU,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3F,CAAC;IAED,QAAQ,CAAC,GAAU;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACd,CAAC;IAED,KAAK,CAAC,IAAM;QACX,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5C,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,GAAU;QAChB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,GAAU;QAClB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;CACD;AAID,eAAe,YAAY,CAAC"}
@@ -8,7 +8,7 @@ class IdBasedLRUCache {
8
8
  constructor(maxSize = 1000, cleanCount = 20) {
9
9
  this._items = new Map();
10
10
  this._cache = new Map();
11
- this._finalizationRegistry = new FinalizationRegistry(this._reclaim);
11
+ this._finalizationRegistry = new FinalizationRegistry((_id) => this._reclaim(_id));
12
12
  this._max = maxSize;
13
13
  this._cleanCount = cleanCount;
14
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"id-based-lru-cache.js","sourceRoot":"","sources":["../../src/cache/id-based-lru-cache.ts"],"names":[],"mappings":"AAMA,MAAM,eAAe;IACpB,MAAM,CAAe,CAAC,+BAA+B;IACrD,MAAM,CAAwB,CAAC,kBAAkB;IACjD,qBAAqB,CAA8B,CAAC,0CAA0C;IAC9F,IAAI,CAAQ;IACZ,WAAW,CAAQ;IACnB,kBAAkB,CAAS;IAE3B,YAAY,UAAe,IAAI,EAAC,aAAkB,EAAE;QACnD,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,qBAAqB,GAAG,IAAI,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrE,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;QACpB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,QAAQ,CAAC,GAAU;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;QAC5C,IAAG,KAAK,KAAK,SAAS;YAAE,OAAO;QAC/B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAC,KAAK,CAAC,CAAC;QAC3B,OAAO,KAAK,CAAC;IACd,CAAC;IAAA,CAAC;IAEF,KAAK,CAAC,IAAM;QACX,IAAG,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YAC7D,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ;SACvB;QACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5C,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,GAAU;QAChB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAAA,CAAC;IAEF,KAAK,CAAC,MAAM;QACX,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;QACnC,KAAI,IAAI,CAAC,GAAC,IAAI,CAAC,WAAW,EAAG,CAAC,GAAC,CAAC,EAAG,CAAC,EAAE,EAAE;YACvC,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SACxB;QACD,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;IACjC,CAAC;IAED,QAAQ,CAAC,GAAU;QAClB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAAA,CAAC;CACF;AAID,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"id-based-lru-cache.js","sourceRoot":"","sources":["../../src/cache/id-based-lru-cache.ts"],"names":[],"mappings":"AAMA,MAAM,eAAe;IACpB,MAAM,CAAe,CAAC,+BAA+B;IACrD,MAAM,CAAwB,CAAC,kBAAkB;IACjD,qBAAqB,CAA8B,CAAC,0CAA0C;IAC9F,IAAI,CAAQ;IACZ,WAAW,CAAQ;IACnB,kBAAkB,CAAS;IAE3B,YAAY,UAAe,IAAI,EAAC,aAAkB,EAAE;QACnD,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,qBAAqB,GAAG,IAAI,oBAAoB,CAAC,CAAC,GAAU,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1F,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;QACpB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,QAAQ,CAAC,GAAU;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;QAC5C,IAAG,KAAK,KAAK,SAAS;YAAE,OAAO;QAC/B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAC,KAAK,CAAC,CAAC;QAC3B,OAAO,KAAK,CAAC;IACd,CAAC;IAAA,CAAC;IAEF,KAAK,CAAC,IAAM;QACX,IAAG,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YAC7D,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ;SACvB;QACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5C,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,GAAU;QAChB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAAA,CAAC;IAEF,KAAK,CAAC,MAAM;QACX,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;QACnC,KAAI,IAAI,CAAC,GAAC,IAAI,CAAC,WAAW,EAAG,CAAC,GAAC,CAAC,EAAG,CAAC,EAAE,EAAE;YACvC,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SACxB;QACD,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;IACjC,CAAC;IAED,QAAQ,CAAC,GAAU;QAClB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAAA,CAAC;CACF;AAID,eAAe,eAAe,CAAC"}
@@ -3,7 +3,7 @@ class WeakValueCache {
3
3
  _finalizationRegistry; // not sure what "item" actually should be
4
4
  constructor() {
5
5
  this._cache = new Map();
6
- this._finalizationRegistry = new FinalizationRegistry(this._reclaim);
6
+ this._finalizationRegistry = new FinalizationRegistry((key) => this._reclaim(key));
7
7
  }
8
8
  retrieve(key) {
9
9
  const value = this._cache.get(key)?.deref();
@@ -1 +1 @@
1
- {"version":3,"file":"weak-value-cache.js","sourceRoot":"","sources":["../../src/cache/weak-value-cache.ts"],"names":[],"mappings":"AACA,MAAM,cAAc;IACnB,MAAM,CAAyB,CAAC,kBAAkB;IAClD,qBAAqB,CAA2B,CAAC,0CAA0C;IAE3F;QACC,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,qBAAqB,GAAG,IAAI,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtE,CAAC;IAED,QAAQ,CAAC,GAAO;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACd,CAAC;IAED,KAAK,CAAC,GAAO,EAAC,IAAU;QACvB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,EAAC,GAAG,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,CAAC,GAAO;QACb,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,GAAO;QACf,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;CACD;AAID,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"weak-value-cache.js","sourceRoot":"","sources":["../../src/cache/weak-value-cache.ts"],"names":[],"mappings":"AACA,MAAM,cAAc;IACnB,MAAM,CAAyB,CAAC,kBAAkB;IAClD,qBAAqB,CAA2B,CAAC,0CAA0C;IAE3F;QACC,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,qBAAqB,GAAG,IAAI,oBAAoB,CAAC,CAAC,GAAO,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IACxF,CAAC;IAED,QAAQ,CAAC,GAAO;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACd,CAAC;IAED,KAAK,CAAC,GAAO,EAAC,IAAU;QACvB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,EAAC,GAAG,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,CAAC,GAAO;QACb,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,GAAO;QACf,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;CACD;AAID,eAAe,cAAc,CAAC"}
@@ -1,2 +1,2 @@
1
- declare const recursiveMerge: (targetObject: Object, ...sourceObjects: Object[]) => Object;
1
+ declare function recursiveMerge(targetObject: Object, ...sourceObjects: Object[]): Object;
2
2
  export default recursiveMerge;
@@ -1,4 +1,4 @@
1
- const recursiveMerge = (targetObject, ...sourceObjects) => {
1
+ function recursiveMerge(targetObject, ...sourceObjects) {
2
2
  for (const sourceObject of sourceObjects) {
3
3
  for (const [key, item] of Object.entries(sourceObject)) {
4
4
  if (typeof item === "object") {
@@ -13,6 +13,7 @@ const recursiveMerge = (targetObject, ...sourceObjects) => {
13
13
  }
14
14
  }
15
15
  return targetObject;
16
- };
16
+ }
17
+ ;
17
18
  export default recursiveMerge;
18
19
  //# sourceMappingURL=recursive-merge.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"recursive-merge.js","sourceRoot":"","sources":["../../src/data/recursive-merge.ts"],"names":[],"mappings":"AACA,MAAM,cAAc,GAAG,CAAC,YAAmB,EAAC,GAAG,aAAsB,EAAE,EAAE;IACxE,KAAI,MAAM,YAAY,IAAI,aAAa,EAAE;QACxC,KAAI,MAAM,CAAE,GAAG,EAAC,IAAI,CAAE,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YACvD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gBAC7B,IAAI,YAAY,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE;oBACpC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;iBACvB;gBACD,cAAc,CAAC,YAAY,CAAC,GAAG,CAAC,EAAC,IAAI,CAAC,CAAC;aACvC;iBAAM;gBACN,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;aACzB;SACD;KACD;IACD,OAAO,YAAY,CAAC;AACrB,CAAC,CAAC;AAIF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"recursive-merge.js","sourceRoot":"","sources":["../../src/data/recursive-merge.ts"],"names":[],"mappings":"AACA,SAAS,cAAc,CAAC,YAAmB,EAAC,GAAG,aAAsB;IACpE,KAAI,MAAM,YAAY,IAAI,aAAa,EAAE;QACxC,KAAI,MAAM,CAAE,GAAG,EAAC,IAAI,CAAE,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YACvD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gBAC7B,IAAI,YAAY,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE;oBACpC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;iBACvB;gBACD,cAAc,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;aACxC;iBAAM;gBACN,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;aACzB;SACD;KACD;IACD,OAAO,YAAY,CAAC;AACrB,CAAC;AAAA,CAAC;AAIF,eAAe,cAAc,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@daaler/jutils",
3
- "version": "0.4.0",
3
+ "version": "0.4.1",
4
4
  "description": "Utility functions for js",
5
5
  "author": "Jarno Parviainen - jarno.parviainen@gmail.com",
6
6
  "license": "UNLICENSED",
@@ -19,7 +19,7 @@
19
19
  "scripts": {
20
20
  "build": "tsc",
21
21
  "clean": "rm -r dist",
22
- "test:run": "node --test",
22
+ "test:run": "node --expose-gc --test",
23
23
  "test": "npm run build && npm run test:run",
24
24
  "publish-to-npm": "npm run clean && npm run build && npm publish --access public"
25
25
  },