@privateaim/server-realtime-kit 0.8.3 → 0.8.4

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/CHANGELOG.md CHANGED
@@ -1,5 +1,26 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.8.4](https://github.com/PrivateAIM/hub/compare/v0.8.3...v0.8.4) (2024-10-24)
4
+
5
+
6
+ ### Features
7
+
8
+ * bump authup & implement async policy & permission evaluation ([#807](https://github.com/PrivateAIM/hub/issues/807)) ([d065562](https://github.com/PrivateAIM/hub/commit/d065562585076e26553ad5a39f4a5789f7e18f24))
9
+ * bump authup & vuecs packages + refactored navigation ([c4db8d5](https://github.com/PrivateAIM/hub/commit/c4db8d51588b3d701815e2ba2f9b80e594f3663f))
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * **deps:** bump socket.io from 4.7.5 to 4.8.0 ([#800](https://github.com/PrivateAIM/hub/issues/800)) ([2f05947](https://github.com/PrivateAIM/hub/commit/2f05947e33a9e6a97cd7a49853e49e171004dfd3))
15
+
16
+
17
+ ### Dependencies
18
+
19
+ * The following workspace dependencies were updated
20
+ * dependencies
21
+ * @privateaim/kit bumped from ^0.8.3 to ^0.8.4
22
+ * @privateaim/server-kit bumped from ^0.8.3 to ^0.8.4
23
+
3
24
  ## [0.8.3](https://github.com/PrivateAIM/hub/compare/v0.8.2...v0.8.3) (2024-09-19)
4
25
 
5
26
 
@@ -8,7 +8,7 @@
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.createAuthupMiddleware = createAuthupMiddleware;
10
10
  exports.mountAuthupMiddleware = mountAuthupMiddleware;
11
- const server_core_plugin_socket_io_1 = require("@authup/server-core-plugin-socket-io");
11
+ const server_adapter_socket_io_1 = require("@authup/server-adapter-socket-io");
12
12
  const utils_1 = require("./utils");
13
13
  function createAuthupMiddleware(options) {
14
14
  let baseURL;
@@ -49,7 +49,7 @@ function createAuthupMiddleware(options) {
49
49
  client: options.redis,
50
50
  };
51
51
  }
52
- return (0, server_core_plugin_socket_io_1.createMiddleware)({
52
+ return (0, server_adapter_socket_io_1.createMiddleware)({
53
53
  tokenVerifier: {
54
54
  baseURL,
55
55
  creator: tokenCreator,
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/services/authup/middleware.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAWH,wDAuDC;AAED,sDAMC;AAtED,uFAAwE;AAKxE,mCAAsF;AAEtF,SAAgB,sBAAsB,CAClC,OAA4C;IAE5C,IAAI,OAA4B,CAAC;IACjC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAC9B,CAAC;SAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACxB,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IAC1C,CAAC;IAED,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,MAAM,IAAI,GAAG,IAAA,uCAA+B,GAAE,CAAC;QAE/C,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;YACpB,IAAA,kCAA0B,EAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;YAChE,IAAI,EAAE,CAAC;QACX,CAAC,CAAC;IACN,CAAC;IAED,IAAI,YAAkC,CAAC;IACvC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,YAAY,GAAG;YACX,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO;SACV,CAAC;IACN,CAAC;SAAM,CAAC;QACJ,YAAY,GAAG;YACX,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,UAAU;YACpB,OAAO;SACV,CAAC;IACN,CAAC;IAED,IAAI,UAAuD,CAAC;IAC5D,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,UAAU,GAAG;YACT,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,OAAO,CAAC,KAAK;SACxB,CAAC;IACN,CAAC;IAED,OAAO,IAAA,+CAAgB,EAAC;QACpB,aAAa,EAAE;YACX,OAAO;YACP,OAAO,EAAE,YAAY;YACrB,KAAK,EAAE,UAAU;SACpB;QACD,oBAAoB,EAAE,CAClB,MAAc,EACd,IAAI,EACN,EAAE,CAAC,IAAA,kCAA0B,EAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC;KACvE,CAAC,CAAC;AACP,CAAC;AAED,SAAgB,qBAAqB,CACjC,GAAuB,EACvB,OAA4C;IAE5C,MAAM,UAAU,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACnD,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/services/authup/middleware.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAWH,wDAuDC;AAED,sDAMC;AAtED,+EAAoE;AAKpE,mCAAsF;AAEtF,SAAgB,sBAAsB,CAClC,OAA4C;IAE5C,IAAI,OAA4B,CAAC;IACjC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAC9B,CAAC;SAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACxB,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IAC1C,CAAC;IAED,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,MAAM,IAAI,GAAG,IAAA,uCAA+B,GAAE,CAAC;QAE/C,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;YACpB,IAAA,kCAA0B,EAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;YAChE,IAAI,EAAE,CAAC;QACX,CAAC,CAAC;IACN,CAAC;IAED,IAAI,YAAkC,CAAC;IACvC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,YAAY,GAAG;YACX,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO;SACV,CAAC;IACN,CAAC;SAAM,CAAC;QACJ,YAAY,GAAG;YACX,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,UAAU;YACpB,OAAO;SACV,CAAC;IACN,CAAC;IAED,IAAI,UAAuD,CAAC;IAC5D,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,UAAU,GAAG;YACT,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,OAAO,CAAC,KAAK;SACxB,CAAC;IACN,CAAC;IAED,OAAO,IAAA,2CAAgB,EAAC;QACpB,aAAa,EAAE;YACX,OAAO;YACP,OAAO,EAAE,YAAY;YACrB,KAAK,EAAE,UAAU;SACpB;QACD,oBAAoB,EAAE,CAClB,MAAc,EACd,IAAI,EACN,EAAE,CAAC,IAAA,kCAA0B,EAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC;KACvE,CAAC,CAAC;AACP,CAAC;AAED,SAAgB,qBAAqB,CACjC,GAAuB,EACvB,OAA4C;IAE5C,MAAM,UAAU,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACnD,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AACxB,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { TokenVerificationData } from '@authup/server-core-plugin-kit';
1
+ import type { TokenVerificationData } from '@authup/server-adapter-kit';
2
2
  import type { Socket } from '../../types';
3
3
  type TokenVerificationDataMinimal = Pick<TokenVerificationData, 'permissions' | 'realm_id' | 'realm_name' | 'sub' | 'sub_kind' | 'sub_name'>;
4
4
  export declare function createFakeTokenVerificationData(): TokenVerificationDataMinimal;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/services/authup/utils.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAE5E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,KAAK,4BAA4B,GAAG,IAAI,CACxC,qBAAqB,EACrB,aAAa,GACb,UAAU,GACV,YAAY,GACZ,KAAK,GACL,UAAU,GACV,UAAU,CACT,CAAC;AAWF,wBAAgB,+BAA+B,IAAI,4BAA4B,CAW9E;AAED,wBAAgB,0BAA0B,CACtC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,4BAA4B,EAClC,aAAa,CAAC,EAAE,OAAO,QAyB1B"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/services/authup/utils.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAExE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,KAAK,4BAA4B,GAAG,IAAI,CACxC,qBAAqB,EACrB,aAAa,GACb,UAAU,GACV,YAAY,GACZ,KAAK,GACL,UAAU,GACV,UAAU,CACT,CAAC;AAWF,wBAAgB,+BAA+B,IAAI,4BAA4B,CAW9E;AAED,wBAAgB,0BAA0B,CACtC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,4BAA4B,EAClC,aAAa,CAAC,EAAE,OAAO,QA4B1B"}
@@ -39,7 +39,9 @@ function applyTokenVerificationData(socket, data, fakeAbilities) {
39
39
  }
40
40
  socket.data.realmId = data.realm_id;
41
41
  socket.data.realmName = data.realm_name;
42
- socket.data.abilities = new kit_1.Abilities(abilities);
42
+ socket.data.permissionChecker = new kit_1.PermissionChecker({
43
+ provider: new kit_1.PermissionMemoryProvider(abilities),
44
+ });
43
45
  switch (data.sub_kind) {
44
46
  case kit_1.OAuth2SubKind.USER: {
45
47
  socket.data.userId = data.sub;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/services/authup/utils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AA4BH,0EAWC;AAED,gEA4BC;AAnED,+CAA6F;AAE7F,qCAAuD;AAEvD,yCAAiD;AAajD,SAAS,iBAAiB;IACtB,OAAO,MAAM,CAAC,MAAM,CAAC;QACjB,GAAG,oBAAc;QACjB,GAAG,yBAAoB;KAC1B,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACd,IAAI;KACY,CAAA,CAAC,CAAC;AAC1B,CAAC;AAED,SAAgB,+BAA+B;IAC3C,OAAO;QACH,QAAQ,EAAE,sCAAsC;QAChD,UAAU,EAAE,4BAAiB;QAE7B,QAAQ,EAAE,MAAM;QAChB,GAAG,EAAE,sCAAsC;QAC3C,QAAQ,EAAE,OAAO;QAEjB,WAAW,EAAE,iBAAiB,EAAE;KACnC,CAAC;AACN,CAAC;AAED,SAAgB,0BAA0B,CACtC,MAAc,EACd,IAAkC,EAClC,aAAuB;IAEvB,IAAI,SAAoB,CAAC;IACzB,IAAI,aAAa,EAAE,CAAC;QAChB,SAAS,GAAG,iBAAiB,EAAE,CAAC;IACpC,CAAC;SAAM,CAAC;QACJ,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;IACpC,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;IACxC,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,eAAS,CAAC,SAAS,CAAC,CAAC;IAEjD,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpB,KAAK,mBAAa,CAAC,IAAI,CAAC,CAAC,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YACrC,MAAM;QACV,CAAC;QACD,KAAK,mBAAa,CAAC,KAAK,CAAC,CAAC,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC;YACtC,MAAM;QACV,CAAC;IACL,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/services/authup/utils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AA4BH,0EAWC;AAED,gEA+BC;AAtED,+CAA6F;AAE7F,qCAAyF;AAEzF,yCAAiD;AAajD,SAAS,iBAAiB;IACtB,OAAO,MAAM,CAAC,MAAM,CAAC;QACjB,GAAG,oBAAc;QACjB,GAAG,yBAAoB;KAC1B,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACd,IAAI;KACmB,CAAA,CAAC,CAAC;AACjC,CAAC;AAED,SAAgB,+BAA+B;IAC3C,OAAO;QACH,QAAQ,EAAE,sCAAsC;QAChD,UAAU,EAAE,4BAAiB;QAE7B,QAAQ,EAAE,MAAM;QAChB,GAAG,EAAE,sCAAsC;QAC3C,QAAQ,EAAE,OAAO;QAEjB,WAAW,EAAE,iBAAiB,EAAE;KACnC,CAAC;AACN,CAAC;AAED,SAAgB,0BAA0B,CACtC,MAAc,EACd,IAAkC,EAClC,aAAuB;IAEvB,IAAI,SAA2B,CAAC;IAChC,IAAI,aAAa,EAAE,CAAC;QAChB,SAAS,GAAG,iBAAiB,EAAE,CAAC;IACpC,CAAC;SAAM,CAAC;QACJ,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;IACpC,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;IAExC,MAAM,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,uBAAiB,CAAC;QAClD,QAAQ,EAAE,IAAI,8BAAwB,CAAC,SAAS,CAAC;KACpD,CAAC,CAAC;IAEH,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpB,KAAK,mBAAa,CAAC,IAAI,CAAC,CAAC,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YACrC,MAAM;QACV,CAAC;QACD,KAAK,mBAAa,CAAC,KAAK,CAAC,CAAC,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC;YACtC,MAAM;QACV,CAAC;IACL,CAAC;AACL,CAAC"}
package/dist/types.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import type { Realm, Robot, User } from '@authup/core-kit';
2
- import type { Abilities } from '@authup/kit';
2
+ import type { PermissionChecker } from '@authup/kit';
3
3
  import type { Namespace as _Namespace, Server as _Server, Socket as _Socket } from 'socket.io';
4
4
  export type SocketData = {
5
- abilities?: Abilities;
5
+ permissionChecker?: PermissionChecker;
6
6
  realmId?: Realm['id'];
7
7
  realmName?: Realm['name'];
8
8
  userId?: User['id'];
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EACR,SAAS,IAAI,UAAU,EACvB,MAAM,IAAI,OAAO,EACjB,MAAM,IAAI,OAAO,EACpB,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,UAAU,GAAG;IACrB,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACtB,SAAS,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE1B,MAAM,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACpB,QAAQ,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAExB,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACtB,SAAS,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,WAAW,SAAS;IACtB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC7B,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;CACxC;AAED,MAAM,MAAM,MAAM,CACd,YAAY,SAAS,SAAS,GAAG,gBAAgB,EACjD,UAAU,SAAS,SAAS,GAAG,YAAY,EAC3C,gBAAgB,SAAS,SAAS,GAAG,gBAAgB,EACrD,IAAI,SAAS,UAAU,GAAG,UAAU,IACpC,OAAO,CAAC,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;AAE9D,MAAM,MAAM,MAAM,CACd,YAAY,SAAS,SAAS,GAAG,gBAAgB,EACjD,UAAU,SAAS,SAAS,GAAG,YAAY,EAC3C,gBAAgB,SAAS,SAAS,GAAG,gBAAgB,EACrD,IAAI,SAAS,UAAU,GAAG,UAAU,IACpC,OAAO,CAAC,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;AAE9D,MAAM,MAAM,SAAS,CACjB,YAAY,SAAS,SAAS,GAAG,gBAAgB,EACjD,UAAU,SAAS,SAAS,GAAG,YAAY,EAC3C,gBAAgB,SAAS,SAAS,GAAG,gBAAgB,EACrD,IAAI,SAAS,UAAU,GAAG,UAAU,IACpC,UAAU,CAAC,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;AAEjE,MAAM,MAAM,UAAU,CAClB,YAAY,SAAS,SAAS,GAAG,gBAAgB,EACjD,UAAU,SAAS,SAAS,GAAG,YAAY,EAC3C,gBAAgB,SAAS,SAAS,GAAG,gBAAgB,EACrD,IAAI,SAAS,UAAU,GAAG,UAAU,IACpC,CACA,MAAM,EAAE,MAAM,CAAC,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAChE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,KAC1B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EACR,SAAS,IAAI,UAAU,EACvB,MAAM,IAAI,OAAO,EACjB,MAAM,IAAI,OAAO,EACpB,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,UAAU,GAAG;IACrB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAEtC,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACtB,SAAS,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE1B,MAAM,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACpB,QAAQ,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAExB,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACtB,SAAS,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,WAAW,SAAS;IACtB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC7B,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;CACxC;AAED,MAAM,MAAM,MAAM,CACd,YAAY,SAAS,SAAS,GAAG,gBAAgB,EACjD,UAAU,SAAS,SAAS,GAAG,YAAY,EAC3C,gBAAgB,SAAS,SAAS,GAAG,gBAAgB,EACrD,IAAI,SAAS,UAAU,GAAG,UAAU,IACpC,OAAO,CAAC,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;AAE9D,MAAM,MAAM,MAAM,CACd,YAAY,SAAS,SAAS,GAAG,gBAAgB,EACjD,UAAU,SAAS,SAAS,GAAG,YAAY,EAC3C,gBAAgB,SAAS,SAAS,GAAG,gBAAgB,EACrD,IAAI,SAAS,UAAU,GAAG,UAAU,IACpC,OAAO,CAAC,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;AAE9D,MAAM,MAAM,SAAS,CACjB,YAAY,SAAS,SAAS,GAAG,gBAAgB,EACjD,UAAU,SAAS,SAAS,GAAG,YAAY,EAC3C,gBAAgB,SAAS,SAAS,GAAG,gBAAgB,EACrD,IAAI,SAAS,UAAU,GAAG,UAAU,IACpC,UAAU,CAAC,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;AAEjE,MAAM,MAAM,UAAU,CAClB,YAAY,SAAS,SAAS,GAAG,gBAAgB,EACjD,UAAU,SAAS,SAAS,GAAG,YAAY,EAC3C,gBAAgB,SAAS,SAAS,GAAG,gBAAgB,EACrD,IAAI,SAAS,UAAU,GAAG,UAAU,IACpC,CACA,MAAM,EAAE,MAAM,CAAC,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAChE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,KAC1B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@privateaim/server-realtime-kit",
3
- "version": "0.8.3",
3
+ "version": "0.8.4",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "author": {
@@ -11,22 +11,22 @@
11
11
  "license": "Apache-2.0",
12
12
  "description": "This package contains the realtime application which connects the API with socket based clients.",
13
13
  "dependencies": {
14
- "@authup/kit": "^1.0.0-beta.19",
15
- "@authup/core-kit": "^1.0.0-beta.19",
16
- "@authup/core-realtime-kit": "^1.0.0-beta.19",
17
- "@authup/server-core-plugin-kit": "^1.0.0-beta.19",
18
- "@authup/server-core-plugin-socket-io": "^1.0.0-beta.19",
19
- "@privateaim/kit": "^0.8.3",
20
- "@privateaim/server-kit": "^0.8.3",
14
+ "@authup/kit": "^1.0.0-beta.22",
15
+ "@authup/core-kit": "^1.0.0-beta.22",
16
+ "@authup/core-realtime-kit": "^1.0.0-beta.22",
17
+ "@authup/server-adapter-kit": "^1.0.0-beta.20",
18
+ "@authup/server-adapter-socket-io": "^1.0.0-beta.20",
19
+ "@privateaim/kit": "^0.8.4",
20
+ "@privateaim/server-kit": "^0.8.4",
21
21
  "@ebec/http": "^2.3.0"
22
22
  },
23
23
  "devDependencies": {
24
- "redis-extension": "^1.5.0",
25
- "socket.io": "^4.7.5"
24
+ "redis-extension": "^2.0.0",
25
+ "socket.io": "^4.8.0"
26
26
  },
27
27
  "peerDependencies": {
28
- "redis-extension": "^1.5.0",
29
- "socket.io": "^4.7.5"
28
+ "redis-extension": "^2.0.0",
29
+ "socket.io": "^4.8.0"
30
30
  },
31
31
  "scripts": {
32
32
  "dev": "ts-node src/index.ts",
@@ -6,8 +6,8 @@
6
6
  */
7
7
 
8
8
  import type { TokenCreatorOptions } from '@authup/core-http-kit';
9
- import type { TokenVerifierRedisCacheOptions } from '@authup/server-core-plugin-kit';
10
- import { createMiddleware } from '@authup/server-core-plugin-socket-io';
9
+ import type { TokenVerifierRedisCacheOptions } from '@authup/server-adapter-kit';
10
+ import { createMiddleware } from '@authup/server-adapter-socket-io';
11
11
  import type {
12
12
  Middleware, Namespace, Server, Socket,
13
13
  } from '../../types';
@@ -6,9 +6,9 @@
6
6
  */
7
7
 
8
8
  import { PermissionName as AuthupPermissionName, REALM_MASTER_NAME } from '@authup/core-kit';
9
- import type { Ability } from '@authup/kit';
10
- import { Abilities, OAuth2SubKind } from '@authup/kit';
11
- import type { TokenVerificationData } from '@authup/server-core-plugin-kit';
9
+ import type { PermissionItem } from '@authup/kit';
10
+ import { OAuth2SubKind, PermissionChecker, PermissionMemoryProvider } from '@authup/kit';
11
+ import type { TokenVerificationData } from '@authup/server-adapter-kit';
12
12
  import { PermissionName } from '@privateaim/kit';
13
13
  import type { Socket } from '../../types';
14
14
 
@@ -22,13 +22,13 @@ TokenVerificationData,
22
22
  'sub_name'
23
23
  >;
24
24
 
25
- function generateAbilities(): Ability[] {
25
+ function generateAbilities(): PermissionItem[] {
26
26
  return Object.values({
27
27
  ...PermissionName,
28
28
  ...AuthupPermissionName,
29
29
  }).map((name) => ({
30
30
  name,
31
- } satisfies Ability));
31
+ } satisfies PermissionItem));
32
32
  }
33
33
 
34
34
  export function createFakeTokenVerificationData(): TokenVerificationDataMinimal {
@@ -49,7 +49,7 @@ export function applyTokenVerificationData(
49
49
  data: TokenVerificationDataMinimal,
50
50
  fakeAbilities?: boolean,
51
51
  ) {
52
- let abilities: Ability[];
52
+ let abilities: PermissionItem[];
53
53
  if (fakeAbilities) {
54
54
  abilities = generateAbilities();
55
55
  } else {
@@ -58,7 +58,10 @@ export function applyTokenVerificationData(
58
58
 
59
59
  socket.data.realmId = data.realm_id;
60
60
  socket.data.realmName = data.realm_name;
61
- socket.data.abilities = new Abilities(abilities);
61
+
62
+ socket.data.permissionChecker = new PermissionChecker({
63
+ provider: new PermissionMemoryProvider(abilities),
64
+ });
62
65
 
63
66
  switch (data.sub_kind) {
64
67
  case OAuth2SubKind.USER: {
package/src/types.ts CHANGED
@@ -6,7 +6,7 @@
6
6
  */
7
7
 
8
8
  import type { Realm, Robot, User } from '@authup/core-kit';
9
- import type { Abilities } from '@authup/kit';
9
+ import type { PermissionChecker } from '@authup/kit';
10
10
  import type {
11
11
  Namespace as _Namespace,
12
12
  Server as _Server,
@@ -14,7 +14,7 @@ import type {
14
14
  } from 'socket.io';
15
15
 
16
16
  export type SocketData = {
17
- abilities?: Abilities,
17
+ permissionChecker?: PermissionChecker,
18
18
 
19
19
  realmId?: Realm['id'],
20
20
  realmName?: Realm['name'],