@arcblock/did-connect-js 1.29.22 → 4.0.0-beta.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.
Files changed (118) hide show
  1. package/{lib/adapters/detect.d.cts → dist/adapters/detect.d.ts} +3 -5
  2. package/dist/adapters/detect.d.ts.map +1 -0
  3. package/dist/adapters/detect.js +13 -0
  4. package/dist/adapters/detect.js.map +1 -0
  5. package/dist/adapters/express.d.ts +40 -0
  6. package/dist/adapters/express.d.ts.map +1 -0
  7. package/dist/adapters/express.js +30 -0
  8. package/dist/adapters/express.js.map +1 -0
  9. package/dist/adapters/hono.d.ts +49 -0
  10. package/dist/adapters/hono.d.ts.map +1 -0
  11. package/dist/adapters/hono.js +176 -0
  12. package/dist/adapters/hono.js.map +1 -0
  13. package/dist/authenticator/base.d.ts +21 -0
  14. package/dist/authenticator/base.d.ts.map +1 -0
  15. package/dist/authenticator/base.js +109 -0
  16. package/dist/authenticator/base.js.map +1 -0
  17. package/dist/authenticator/wallet.d.ts +221 -0
  18. package/dist/authenticator/wallet.d.ts.map +1 -0
  19. package/dist/authenticator/wallet.js +588 -0
  20. package/dist/authenticator/wallet.js.map +1 -0
  21. package/dist/handlers/base.d.ts +25 -0
  22. package/dist/handlers/base.d.ts.map +1 -0
  23. package/dist/handlers/base.js +48 -0
  24. package/dist/handlers/base.js.map +1 -0
  25. package/dist/handlers/util.d.ts +48 -0
  26. package/dist/handlers/util.d.ts.map +1 -0
  27. package/dist/handlers/util.js +812 -0
  28. package/dist/handlers/util.js.map +1 -0
  29. package/dist/handlers/wallet.d.ts +96 -0
  30. package/dist/handlers/wallet.d.ts.map +1 -0
  31. package/dist/handlers/wallet.js +129 -0
  32. package/dist/handlers/wallet.js.map +1 -0
  33. package/dist/index.d.ts +10 -0
  34. package/dist/index.d.ts.map +1 -0
  35. package/dist/index.js +9 -0
  36. package/dist/index.js.map +1 -0
  37. package/dist/protocol.d.ts +14 -0
  38. package/dist/protocol.d.ts.map +1 -0
  39. package/dist/protocol.js +37 -0
  40. package/dist/protocol.js.map +1 -0
  41. package/dist/schema/claims.d.ts +17 -0
  42. package/dist/schema/claims.d.ts.map +1 -0
  43. package/dist/schema/claims.js +205 -0
  44. package/dist/schema/claims.js.map +1 -0
  45. package/dist/schema/index.d.ts +7 -0
  46. package/dist/schema/index.d.ts.map +1 -0
  47. package/dist/schema/index.js +49 -0
  48. package/dist/schema/index.js.map +1 -0
  49. package/dist/storage/kv.d.ts +31 -0
  50. package/dist/storage/kv.d.ts.map +1 -0
  51. package/dist/storage/kv.js +54 -0
  52. package/dist/storage/kv.js.map +1 -0
  53. package/dist/types.d.ts +53 -0
  54. package/dist/types.d.ts.map +1 -0
  55. package/dist/types.js +2 -0
  56. package/dist/types.js.map +1 -0
  57. package/package.json +48 -106
  58. package/LICENSE +0 -13
  59. package/README.md +0 -210
  60. package/esm/_virtual/rolldown_runtime.mjs +0 -8
  61. package/esm/adapters/detect.d.mts +0 -11
  62. package/esm/adapters/detect.mjs +0 -16
  63. package/esm/adapters/express.d.mts +0 -48
  64. package/esm/adapters/express.mjs +0 -39
  65. package/esm/adapters/hono.d.mts +0 -57
  66. package/esm/adapters/hono.mjs +0 -164
  67. package/esm/authenticator/base.d.mts +0 -23
  68. package/esm/authenticator/base.mjs +0 -88
  69. package/esm/authenticator/wallet.d.mts +0 -270
  70. package/esm/authenticator/wallet.mjs +0 -556
  71. package/esm/handlers/base.d.mts +0 -32
  72. package/esm/handlers/base.mjs +0 -37
  73. package/esm/handlers/util.d.mts +0 -70
  74. package/esm/handlers/util.mjs +0 -739
  75. package/esm/handlers/wallet.d.mts +0 -120
  76. package/esm/handlers/wallet.mjs +0 -139
  77. package/esm/index.d.mts +0 -8
  78. package/esm/index.mjs +0 -8
  79. package/esm/package.mjs +0 -120
  80. package/esm/protocol.d.mts +0 -15
  81. package/esm/protocol.mjs +0 -40
  82. package/esm/schema/claims.d.mts +0 -18
  83. package/esm/schema/claims.mjs +0 -154
  84. package/esm/schema/index.d.mts +0 -9
  85. package/esm/schema/index.mjs +0 -49
  86. package/esm/storage/kv.d.mts +0 -33
  87. package/esm/storage/kv.mjs +0 -55
  88. package/esm/types.d.mts +0 -55
  89. package/esm/types.mjs +0 -1
  90. package/lib/_virtual/rolldown_runtime.cjs +0 -31
  91. package/lib/adapters/detect.cjs +0 -18
  92. package/lib/adapters/express.cjs +0 -41
  93. package/lib/adapters/express.d.cts +0 -48
  94. package/lib/adapters/hono.cjs +0 -167
  95. package/lib/adapters/hono.d.cts +0 -57
  96. package/lib/authenticator/base.cjs +0 -91
  97. package/lib/authenticator/base.d.cts +0 -23
  98. package/lib/authenticator/wallet.cjs +0 -564
  99. package/lib/authenticator/wallet.d.cts +0 -270
  100. package/lib/handlers/base.cjs +0 -40
  101. package/lib/handlers/base.d.cts +0 -32
  102. package/lib/handlers/util.cjs +0 -760
  103. package/lib/handlers/util.d.cts +0 -70
  104. package/lib/handlers/wallet.cjs +0 -139
  105. package/lib/handlers/wallet.d.cts +0 -119
  106. package/lib/index.cjs +0 -16
  107. package/lib/index.d.cts +0 -8
  108. package/lib/package.cjs +0 -123
  109. package/lib/protocol.cjs +0 -46
  110. package/lib/protocol.d.cts +0 -15
  111. package/lib/schema/claims.cjs +0 -156
  112. package/lib/schema/claims.d.cts +0 -18
  113. package/lib/schema/index.cjs +0 -52
  114. package/lib/schema/index.d.cts +0 -9
  115. package/lib/storage/kv.cjs +0 -57
  116. package/lib/storage/kv.d.cts +0 -33
  117. package/lib/types.cjs +0 -0
  118. package/lib/types.d.cts +0 -55
@@ -0,0 +1,48 @@
1
+ import { EventEmitter } from 'node:events';
2
+ import omit from 'lodash/omit';
3
+ import { PROTECTED_KEYS } from '../protocol.js';
4
+ class BaseHandler extends EventEmitter {
5
+ authenticator;
6
+ tokenStorage;
7
+ pathTransformer;
8
+ onConnect;
9
+ /**
10
+ * Creates an instance of DID Auth Handlers.
11
+ *
12
+ * @class
13
+ * @param {object} config
14
+ * @param {function} config.pathTransformer - function to transform path when generate action;
15
+ * @param {object} config.tokenStorage - function to generate action token
16
+ * @param {object} config.authenticator - Authenticator instance that can to jwt sign/verify
17
+ * @param {function} [config.onConnect=noop] - function called when wallet selected did
18
+ */
19
+ constructor({ pathTransformer, tokenStorage, authenticator, onConnect, }) {
20
+ super();
21
+ this.authenticator = authenticator;
22
+ this.tokenStorage = tokenStorage;
23
+ // Handle events from Auth Token Storage
24
+ this.tokenStorage.on('create', (data) => this.emit('created', data));
25
+ this.tokenStorage.on('destroy', (token) => this.emit('deleted', { token }));
26
+ this.tokenStorage.on('update', async (data) => {
27
+ if (!data) {
28
+ return;
29
+ }
30
+ const payload = await this.tokenStorage.read(data.token);
31
+ this.emit('updated', omit(payload, PROTECTED_KEYS));
32
+ });
33
+ if (typeof pathTransformer === 'function') {
34
+ this.pathTransformer = pathTransformer;
35
+ }
36
+ else {
37
+ this.pathTransformer = (v) => v;
38
+ }
39
+ if (typeof onConnect === 'function') {
40
+ this.onConnect = onConnect;
41
+ }
42
+ else {
43
+ this.onConnect = () => { };
44
+ }
45
+ }
46
+ }
47
+ export default BaseHandler;
48
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/handlers/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,IAAI,MAAM,aAAa,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,WAAY,SAAQ,YAAY;IACpC,aAAa,CAAM;IACnB,YAAY,CAAM;IAClB,eAAe,CAAwB;IACvC,SAAS,CAA0B;IAEnC;;;;;;;;;OASG;IACH,YAAY,EACV,eAAe,EACf,YAAY,EACZ,aAAa,EACb,SAAS,GAMV;QACC,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QAEjC,wCAAwC;QACxC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAS,EAAE,EAAE;YACjD,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,IAAI,OAAO,eAAe,KAAK,UAAU,EAAE,CAAC;YAC1C,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAClC,CAAC;QAED,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE,CAAC;YACpC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,SAAS,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;CACF;AAED,eAAe,WAAW,CAAC"}
@@ -0,0 +1,48 @@
1
+ import type { ConnectRequest, ConnectResponse, NextFunction } from '../types.js';
2
+ export declare const errors: Record<string, Record<string, string>>;
3
+ export declare const preparePathname: (path: string, req: ConnectRequest) => string;
4
+ export declare const prepareBaseUrl: (req: ConnectRequest, params?: Record<string, any>) => string;
5
+ export declare const getStepChallenge: () => any;
6
+ export declare const parseWalletUA: (userAgent: string) => {
7
+ os: string;
8
+ version: string;
9
+ jwt: string;
10
+ };
11
+ export declare const isDeepLink: (str: string) => boolean;
12
+ export declare const isConnectedOnly: (params: any, sessionUserDid?: string) => boolean | string;
13
+ export interface CreateHandlersOptions {
14
+ action: string;
15
+ pathname: string;
16
+ claims: any;
17
+ onStart: (...args: any[]) => any;
18
+ onConnect: (...args: any[]) => any;
19
+ onAuth: (...args: any[]) => any;
20
+ onDecline: (...args: any[]) => any;
21
+ onComplete: (...args: any[]) => any;
22
+ onExpire: (...args: any[]) => any;
23
+ onError: (...args: any[]) => any;
24
+ pathTransformer: (v: string) => string;
25
+ tokenStorage: any;
26
+ authenticator: any;
27
+ authPrincipal: any;
28
+ persistentDynamicClaims?: boolean;
29
+ getSignParams?: (req: ConnectRequest) => any;
30
+ getPathName?: (pathname: string, req: ConnectRequest) => string;
31
+ options: {
32
+ tokenKey: string;
33
+ encKey: string;
34
+ versionKey: string;
35
+ cleanupDelay: number;
36
+ };
37
+ }
38
+ export default function createHandlers({ action, pathname, claims, onStart, onConnect, onAuth, onDecline, onComplete, onExpire, onError, pathTransformer, tokenStorage, authenticator, authPrincipal, persistentDynamicClaims, getSignParams, getPathName, options, }: CreateHandlersOptions): {
39
+ generateSession: (req: ConnectRequest, res: ConnectResponse) => Promise<void>;
40
+ expireSession: (req: ConnectRequest, res: ConnectResponse) => Promise<void>;
41
+ checkSession: (req: ConnectRequest, res: ConnectResponse) => Promise<void>;
42
+ onAuthRequest: (req: ConnectRequest, res: ConnectResponse) => Promise<void>;
43
+ onAuthResponse: (req: ConnectRequest, res: ConnectResponse) => Promise<void>;
44
+ ensureContext: (req: ConnectRequest, _res: ConnectResponse, next: NextFunction) => Promise<void>;
45
+ ensureSignedJson: (req: ConnectRequest, res: ConnectResponse, next: NextFunction) => void;
46
+ createExtraParams: (locale: string, params: any, extra?: any) => any;
47
+ };
48
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/handlers/util.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AA4BjF,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAyCzD,CAAC;AAOF,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,EAAE,KAAK,cAAc,WAOhE,CAAC;AAWF,eAAO,MAAM,cAAc,GAAI,KAAK,cAAc,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,WAiB/E,CAAC;AAMF,eAAO,MAAM,gBAAgB,WAAiE,CAAC;AAE/F,eAAO,MAAM,aAAa,GAAI,WAAW,MAAM;;;;CA4B9C,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,YACkD,CAAC;AAGzF,eAAO,MAAM,eAAe,GAAI,QAAQ,GAAG,EAAE,uBAAmB,KAAG,OAAO,GAAG,MAgC5E,CAAC;AAEF,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,GAAG,CAAC;IACZ,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACjC,SAAS,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACnC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IAChC,SAAS,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACnC,UAAU,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACpC,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IAClC,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACjC,eAAe,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACvC,YAAY,EAAE,GAAG,CAAC;IAClB,aAAa,EAAE,GAAG,CAAC;IACnB,aAAa,EAAE,GAAG,CAAC;IACnB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,GAAG,CAAC;IAC7C,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,KAAK,MAAM,CAAC;IAChE,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAGD,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACrC,MAAM,EACN,QAAQ,EACR,MAAM,EACN,OAAO,EACP,SAAS,EACT,MAAM,EACN,SAAS,EACT,UAAU,EACV,QAAQ,EACR,OAAO,EACP,eAAe,EACf,YAAY,EACZ,aAAa,EACb,aAAa,EACb,uBAA+B,EAC/B,aAAoB,EACpB,WAAqB,EACrB,OAAO,GACR,EAAE,qBAAqB;2BAgIc,cAAc,OAAO,eAAe;yBAoItC,cAAc,OAAO,eAAe;wBA9CrC,cAAc,OAAO,eAAe;yBA8FnC,cAAc,OAAO,eAAe;0BAwFnC,cAAc,OAAO,eAAe;yBA2OrC,cAAc,QAAQ,eAAe,QAAQ,YAAY;4BA6B5D,cAAc,OAAO,eAAe,QAAQ,YAAY;gCAvlBpD,MAAM,UAAU,GAAG,UAAS,GAAG;EA6oBnE"}