simple-in-memory-cache 0.3.3 → 0.4.0

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.
package/dist/cache.d.ts CHANGED
@@ -1,10 +1,9 @@
1
- import type { PickOne } from 'type-fns';
1
+ import { UniDuration } from '@ehmpathy/uni-time';
2
2
  export interface SimpleInMemoryCache<T> {
3
3
  get: (key: string) => T | undefined;
4
- set: (key: string, value: T, options?: Partial<PickOne<{
5
- secondsUntilExpiration?: number;
6
- seconds?: number;
7
- }>>) => void;
4
+ set: (key: string, value: T, options?: {
5
+ expiration?: UniDuration | null;
6
+ }) => void;
8
7
  keys: () => string[];
9
8
  }
10
9
  export interface SimpleInMemoryCacheState<T> {
@@ -13,16 +12,6 @@ export interface SimpleInMemoryCacheState<T> {
13
12
  expiresAtMse: number;
14
13
  };
15
14
  }
16
- export declare const createCache: <T>({ seconds, defaultSecondsUntilExpiration: defaultSecondsUntilExpirationInput, }?: Partial<PickOne<{
17
- /**
18
- * the number of seconds items in the cache expire after
19
- */
20
- defaultSecondsUntilExpiration?: number;
21
- /**
22
- * a shorthand alias for `defaultSecondsUntilExpiration`
23
- *
24
- * note
25
- * - if both options are set, `defaultSecondsUntilExpirationInput` takes precedence
26
- */
27
- seconds?: number;
28
- }>>) => SimpleInMemoryCache<T>;
15
+ export declare const createCache: <T>({ expiration: defaultExpiration, }?: {
16
+ expiration?: UniDuration | null;
17
+ }) => SimpleInMemoryCache<T>;
package/dist/cache.js CHANGED
@@ -1,22 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createCache = void 0;
4
+ const uni_time_1 = require("@ehmpathy/uni-time");
4
5
  const getMseNow = () => new Date().getTime();
5
- const createCache = ({ seconds, defaultSecondsUntilExpiration: defaultSecondsUntilExpirationInput, } = {}) => {
6
- var _a;
7
- // resolve input alias
8
- const defaultSecondsUntilExpiration = (_a = defaultSecondsUntilExpirationInput !== null && defaultSecondsUntilExpirationInput !== void 0 ? defaultSecondsUntilExpirationInput : seconds) !== null && _a !== void 0 ? _a : 5 * 60;
6
+ const createCache = ({ expiration: defaultExpiration, } = { expiration: { minutes: 5 } }) => {
9
7
  // initialize a fresh in-memory cache object
10
8
  const cache = {};
11
9
  // define how to set an item into the cache
12
- const set = (key, value, { secondsUntilExpiration = defaultSecondsUntilExpiration, } = {}) => {
10
+ const set = (key, value, { expiration = defaultExpiration, } = {}) => {
13
11
  // handle cache invalidation
14
12
  if (value === undefined) {
15
13
  delete cache[key];
16
14
  return;
17
15
  }
18
16
  // handle setting
19
- const expiresAtMse = getMseNow() + secondsUntilExpiration * 1000;
17
+ const expiresAtMse = getMseNow() + (expiration ? (0, uni_time_1.toMilliseconds)(expiration) : Infinity); // infinity if null
20
18
  cache[key] = { value, expiresAtMse };
21
19
  };
22
20
  // define how to get an item from the cache
package/dist/cache.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":";;;AAkBA,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;AAEtC,MAAM,WAAW,GAAG,CAAI,EAC7B,OAAO,EACP,6BAA6B,EAAE,kCAAkC,MAgB/D,EAAE,EAA0B,EAAE;;IAChC,sBAAsB;IACtB,MAAM,6BAA6B,GACjC,MAAA,kCAAkC,aAAlC,kCAAkC,cAAlC,kCAAkC,GAAI,OAAO,mCAAI,CAAC,GAAG,EAAE,CAAC;IAE1D,4CAA4C;IAC5C,MAAM,KAAK,GAAgC,EAAE,CAAC;IAE9C,2CAA2C;IAC3C,MAAM,GAAG,GAAG,CACV,GAAW,EACX,KAAoB,EACpB,EACE,sBAAsB,GAAG,6BAA6B,MACf,EAAE,EAC3C,EAAE;QACF,4BAA4B;QAC5B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QAED,iBAAiB;QACjB,MAAM,YAAY,GAAG,SAAS,EAAE,GAAG,sBAAsB,GAAG,IAAI,CAAC;QACjE,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;IACvC,CAAC,CAAC;IAEF,2CAA2C;IAC3C,MAAM,GAAG,GAAG,CAAC,GAAW,EAAE,EAAE;QAC1B,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,YAAY;YAAE,OAAO,SAAS,CAAC,CAAC,kCAAkC;QACvE,IAAI,YAAY,CAAC,YAAY,IAAI,SAAS,EAAE;YAAE,OAAO,SAAS,CAAC,CAAC,qCAAqC;QACrG,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,mEAAmE;IAChG,CAAC,CAAC;IAEF,oCAAoC;IACpC,MAAM,IAAI,GAAG,GAAG,EAAE,CAChB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;SAClB,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,GAAG,SAAS,EAAE,CAAC;SACxD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IAEzB,iBAAiB;IACjB,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;AAC5B,CAAC,CAAC;AA7DW,QAAA,WAAW,eA6DtB"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":";;;AAAA,iDAAiE;AAgBjE,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;AAEtC,MAAM,WAAW,GAAG,CACzB,EACE,UAAU,EAAE,iBAAiB,MAG3B,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EACV,EAAE;IAC1B,4CAA4C;IAC5C,MAAM,KAAK,GAAgC,EAAE,CAAC;IAE9C,2CAA2C;IAC3C,MAAM,GAAG,GAAG,CACV,GAAW,EACX,KAAoB,EACpB,EACE,UAAU,GAAG,iBAAiB,MACS,EAAE,EAC3C,EAAE;QACF,4BAA4B;QAC5B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QAED,iBAAiB;QACjB,MAAM,YAAY,GAChB,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAA,yBAAc,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,mBAAmB;QACzF,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;IACvC,CAAC,CAAC;IAEF,2CAA2C;IAC3C,MAAM,GAAG,GAAG,CAAC,GAAW,EAAE,EAAE;QAC1B,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,YAAY;YAAE,OAAO,SAAS,CAAC,CAAC,kCAAkC;QACvE,IAAI,YAAY,CAAC,YAAY,IAAI,SAAS,EAAE;YAAE,OAAO,SAAS,CAAC,CAAC,qCAAqC;QACrG,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,mEAAmE;IAChG,CAAC,CAAC;IAEF,oCAAoC;IACpC,MAAM,IAAI,GAAG,GAAG,EAAE,CAChB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;SAClB,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,GAAG,SAAS,EAAE,CAAC;SACxD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IAEzB,iBAAiB;IACjB,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;AAC5B,CAAC,CAAC;AA9CW,QAAA,WAAW,eA8CtB"}
@@ -24,22 +24,7 @@ describe('cache', () => {
24
24
  expect(licks).toEqual(3);
25
25
  });
26
26
  it('should respect the default expiration for the cache', () => __awaiter(void 0, void 0, void 0, function* () {
27
- const { set, get } = (0, cache_1.createCache)({ defaultSecondsUntilExpiration: 10 }); // we're gonna use this cache to keep track of the popcorn in the microwave - we should check more regularly since it changes quickly!
28
- set('how popped is the popcorn?', 'not popped');
29
- // prove that we recorded the value and its accessible immediately after setting
30
- const popcornStatus = get('how popped is the popcorn?');
31
- expect(popcornStatus).toEqual('not popped');
32
- // prove that the value is still accessible after 9 seconds, since default ttl is 10 seconds
33
- yield sleep(9 * 1000);
34
- const popcornStatusAfter9Sec = get('how popped is the popcorn?');
35
- expect(popcornStatusAfter9Sec).toEqual('not popped'); // still should say not popped
36
- // and prove that after a total of 9 seconds, the status is no longer in the cache
37
- yield sleep(1 * 1000); // sleep 1 more second
38
- const popcornStatusAfter10Sec = get('how popped is the popcorn?');
39
- expect(popcornStatusAfter10Sec).toEqual(undefined); // no longer defined, since the default seconds until expiration was 15
40
- }));
41
- it('should respect the default expiration for the cache set by shorthand alias', () => __awaiter(void 0, void 0, void 0, function* () {
42
- const { set, get } = (0, cache_1.createCache)({ seconds: 10 }); // we're gonna use this cache to keep track of the popcorn in the microwave - we should check more regularly since it changes quickly!
27
+ const { set, get } = (0, cache_1.createCache)({ expiration: { seconds: 10 } }); // we're gonna use this cache to keep track of the popcorn in the microwave - we should check more regularly since it changes quickly!
43
28
  set('how popped is the popcorn?', 'not popped');
44
29
  // prove that we recorded the value and its accessible immediately after setting
45
30
  const popcornStatus = get('how popped is the popcorn?');
@@ -55,7 +40,7 @@ describe('cache', () => {
55
40
  }));
56
41
  it('should respect the item level expiration for the cache', () => __awaiter(void 0, void 0, void 0, function* () {
57
42
  const { set, get } = (0, cache_1.createCache)(); // remember, default expiration is greater than 1 min
58
- set('ice cream state', 'solid', { secondsUntilExpiration: 5 }); // ice cream changes quickly in the heat! lets keep a quick eye on this
43
+ set('ice cream state', 'solid', { expiration: { seconds: 5 } }); // ice cream changes quickly in the heat! lets keep a quick eye on this
59
44
  // prove that we recorded the value and its accessible immediately after setting
60
45
  const iceCreamState = get('ice cream state');
61
46
  expect(iceCreamState).toEqual('solid');
@@ -68,9 +53,9 @@ describe('cache', () => {
68
53
  const iceCreamStateAfter5Sec = get('ice cream state');
69
54
  expect(iceCreamStateAfter5Sec).toEqual(undefined); // no longer defined, since the item level seconds until expiration was 5
70
55
  }));
71
- it('should consider secondsUntilExpiration of null or infinity as never expiring', () => __awaiter(void 0, void 0, void 0, function* () {
56
+ it('should consider secondsUntilExpiration of null as never expiring', () => __awaiter(void 0, void 0, void 0, function* () {
72
57
  const { set, get } = (0, cache_1.createCache)({
73
- defaultSecondsUntilExpiration: 0, // expire immediately
58
+ expiration: { seconds: 0 }, // expire immediately
74
59
  });
75
60
  // prove that setting something to the cache with default state will have it expired immediately
76
61
  yield set('dory-memory', 'something'); // lets see if dory can remember something
@@ -78,7 +63,7 @@ describe('cache', () => {
78
63
  expect(doryMemory).toEqual(undefined); // its already gone! dang default expiration
79
64
  // prove that if we record the memory with expires-at Infinity, it persists
80
65
  yield set('elephant-memory', 'something', {
81
- secondsUntilExpiration: Infinity,
66
+ expiration: null,
82
67
  });
83
68
  const elephantMemory = yield get('elephant-memory');
84
69
  expect(elephantMemory).toEqual('something');
@@ -1 +1 @@
1
- {"version":3,"file":"cache.test.js","sourceRoot":"","sources":["../src/cache.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache.test.js","sourceRoot":"","sources":["../src/cache.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "simple-in-memory-cache",
3
3
  "author": "ehmpathy",
4
4
  "description": "A simple in-memory cache, for nodejs and the browser, with time based expiration policies.",
5
- "version": "0.3.3",
5
+ "version": "0.4.0",
6
6
  "repository": "ehmpathy/simple-in-memory-cache",
7
7
  "homepage": "https://github.com/ehmpathy/simple-in-memory-cache",
8
8
  "keywords": [
@@ -80,12 +80,14 @@
80
80
  "prettier": "2.8.1",
81
81
  "ts-jest": "29.2.5",
82
82
  "ts-node": "10.9.2",
83
- "type-fns": "^1.19.0",
84
83
  "typescript": "5.4.5"
85
84
  },
86
85
  "config": {
87
86
  "commitizen": {
88
87
  "path": "./node_modules/cz-conventional-changelog"
89
88
  }
89
+ },
90
+ "dependencies": {
91
+ "@ehmpathy/uni-time": "^1.7.4"
90
92
  }
91
93
  }