@notkannan/cache-with-persistence 1.0.0 → 1.0.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.
@@ -1 +1 @@
1
- {"version":3,"file":"HashMap.d.ts","sourceRoot":"","sources":["../src/HashMap.ts"],"names":[],"mappings":"AAOA,qBAAa,OAAO,CAAC,CAAC;IAClB,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,QAAQ,CAAS;gBAEb,QAAQ,SAAK;IAOzB,OAAO,CAAC,IAAI;IAKZ,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAyBhC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAa/B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAuB5B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB,OAAO,IAAI,MAAM;IAKjB,KAAK,IAAI,IAAI;CAUhB"}
1
+ {"version":3,"file":"HashMap.d.ts","sourceRoot":"","sources":["../src/HashMap.ts"],"names":[],"mappings":"AAOA,qBAAa,OAAO,CAAC,CAAC;IAClB,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,QAAQ,CAAS;gBAEb,QAAQ,SAAO;IAO3B,OAAO,CAAC,IAAI;IASZ,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAyBhC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAa/B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAuB5B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB,OAAO,IAAI,MAAM;IAKjB,KAAK,IAAI,IAAI;CAUhB"}
package/dist/HashMap.js CHANGED
@@ -2,14 +2,18 @@ export class HashMap {
2
2
  buckets;
3
3
  size; // how many key/value pairs are stored
4
4
  capacity; // number of buckets in the HashMap
5
- constructor(capacity = 16) {
5
+ constructor(capacity = 8192) {
6
6
  this.capacity = capacity;
7
7
  this.size = 0;
8
8
  this.buckets = new Array(capacity).fill(null);
9
9
  }
10
10
  // Hash function
11
11
  hash(key) {
12
- return 1;
12
+ let hash = 5381;
13
+ for (let i = 0; i < key.length; i++) {
14
+ hash = ((hash << 5) + hash + key.charCodeAt(i)) | 0;
15
+ }
16
+ return (hash >>> 0) % this.capacity;
13
17
  }
14
18
  // Set function
15
19
  set(key, value) {
@@ -1 +1 @@
1
- {"version":3,"file":"HashMap.js","sourceRoot":"","sources":["../src/HashMap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HashMap.js","sourceRoot":"","sources":["../src/HashMap.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@notkannan/cache-with-persistence",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -19,12 +19,23 @@
19
19
  "url": "https://github.com/notkannan/cache-with-persistence.git"
20
20
  },
21
21
  "author": "Kannan Karthikeyan",
22
- "files": ["dist", "README.md", "LICENSE"],
22
+ "files": [
23
+ "dist",
24
+ "README.md",
25
+ "LICENSE"
26
+ ],
23
27
  "scripts": {
24
28
  "build": "tsc",
25
29
  "prepublishOnly": "npm run build"
26
30
  },
27
- "keywords": ["redis", "in-memory", "key-value", "store", "wal", "persistence"],
31
+ "keywords": [
32
+ "redis",
33
+ "in-memory",
34
+ "key-value",
35
+ "store",
36
+ "wal",
37
+ "persistence"
38
+ ],
28
39
  "license": "ISC",
29
40
  "engines": {
30
41
  "node": ">=18"
@@ -33,4 +44,4 @@
33
44
  "@types/node": "^25.9.3",
34
45
  "typescript": "^6.0.3"
35
46
  }
36
- }
47
+ }