nodecommons-esm-security 2.4.0 → 2.4.2

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.
@@ -10,6 +10,7 @@ export declare abstract class CommonsSessionService<T extends TPropertyObject> {
10
10
  protected abstract isEqual(a: T, b: T): boolean;
11
11
  protected abstract isStillValid(data: T): Promise<boolean>;
12
12
  create(data: T): ICommonsSession<T>;
13
+ private internalDestroy;
13
14
  destroy(session: ICommonsSession<T>): boolean;
14
15
  abort(data: T): boolean;
15
16
  private cleanup;
@@ -34,8 +34,7 @@ export class CommonsSessionService {
34
34
  this.sessions.push(session);
35
35
  return session;
36
36
  }
37
- destroy(session) {
38
- this.cleanup();
37
+ internalDestroy(session) {
39
38
  const match = this.sessions
40
39
  .find((s) => s.sid === session.sid);
41
40
  if (!match)
@@ -44,13 +43,17 @@ export class CommonsSessionService {
44
43
  .filter((s) => s.sid !== session.sid);
45
44
  return true;
46
45
  }
46
+ destroy(session) {
47
+ this.cleanup();
48
+ return this.internalDestroy(session); // prevents infinite loops of cleanup calling destroy calling cleanup etc.
49
+ }
47
50
  abort(data) {
48
51
  this.cleanup();
49
52
  const existing = this.sessions
50
53
  .find((s) => this.isEqual(data, s.data));
51
54
  if (!existing)
52
55
  return false;
53
- this.destroy(existing);
56
+ this.internalDestroy(existing);
54
57
  return true;
55
58
  }
56
59
  cleanup() {
@@ -60,7 +63,7 @@ export class CommonsSessionService {
60
63
  expirationThreshold.subtract(this.maximumLast);
61
64
  for (const session of [...this.sessions]) {
62
65
  if (session.last.isLessThan(expirationThreshold))
63
- this.destroy(session);
66
+ this.internalDestroy(session);
64
67
  }
65
68
  }
66
69
  touch(sid) {
@@ -78,7 +81,7 @@ export class CommonsSessionService {
78
81
  if (!session)
79
82
  return undefined;
80
83
  if (!(await this.isStillValid(session.data))) {
81
- this.destroy(session);
84
+ this.internalDestroy(session);
82
85
  return undefined;
83
86
  }
84
87
  session.last = new CommonsFixedDate();
@@ -1 +1 @@
1
- {"version":3,"file":"commons-session.service.mjs","sourceRoot":"","sources":["../../src/services/commons-session.service.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commons-session.service.mjs","sourceRoot":"","sources":["../../src/services/commons-session.service.mts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nodecommons-esm-security",
3
- "version": "2.4.0",
3
+ "version": "2.4.2",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "tsc": "./node_modules/typescript/bin/tsc",
@@ -26,7 +26,7 @@
26
26
  "dist/**/*"
27
27
  ],
28
28
  "dependencies": {
29
- "tscommons-esm-core": "^1.0.2",
30
- "tscommons-esm-session": "^2.0.1"
29
+ "tscommons-esm-core": "^1.1.0",
30
+ "tscommons-esm-session": "^2.0.2"
31
31
  }
32
32
  }