@passlock/client 0.9.21 → 0.9.23

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 (192) hide show
  1. package/README.md +125 -0
  2. package/dist/authentication/authenticate.d.ts +15 -15
  3. package/dist/authentication/authenticate.fixture.d.ts +20 -6
  4. package/dist/authentication/authenticate.fixture.js +7 -5
  5. package/dist/authentication/authenticate.fixture.js.map +1 -1
  6. package/dist/authentication/authenticate.js +19 -8
  7. package/dist/authentication/authenticate.js.map +1 -1
  8. package/dist/capabilities/capabilities.d.ts +8 -4
  9. package/dist/capabilities/capabilities.js +10 -1
  10. package/dist/capabilities/capabilities.js.map +1 -1
  11. package/dist/connection/connection.d.ts +11 -7
  12. package/dist/connection/connection.fixture.d.ts +2 -2
  13. package/dist/connection/connection.fixture.js +2 -1
  14. package/dist/connection/connection.fixture.js.map +1 -1
  15. package/dist/connection/connection.js +12 -3
  16. package/dist/connection/connection.js.map +1 -1
  17. package/dist/effect.d.ts +22 -45
  18. package/dist/effect.js +55 -51
  19. package/dist/effect.js.map +1 -1
  20. package/dist/email/email.d.ts +38 -11
  21. package/dist/email/email.fixture.d.ts +19 -5
  22. package/dist/email/email.fixture.js +4 -3
  23. package/dist/email/email.fixture.js.map +1 -1
  24. package/dist/email/email.js +43 -7
  25. package/dist/email/email.js.map +1 -1
  26. package/dist/event/event.d.ts +3 -1
  27. package/dist/event/event.js +3 -0
  28. package/dist/event/event.js.map +1 -1
  29. package/dist/index.d.ts +105 -27
  30. package/dist/index.js +101 -50
  31. package/dist/index.js.map +1 -1
  32. package/dist/logging/eventLogger.d.ts +13 -1
  33. package/dist/logging/eventLogger.js +13 -0
  34. package/dist/logging/eventLogger.js.map +1 -1
  35. package/dist/registration/register.d.ts +18 -21
  36. package/dist/registration/register.fixture.d.ts +19 -5
  37. package/dist/registration/register.fixture.js +14 -7
  38. package/dist/registration/register.fixture.js.map +1 -1
  39. package/dist/registration/register.js +18 -9
  40. package/dist/registration/register.js.map +1 -1
  41. package/dist/rpc/authentication.d.ts +0 -1
  42. package/dist/rpc/authentication.js +1 -0
  43. package/dist/rpc/authentication.js.map +1 -1
  44. package/dist/rpc/client.d.ts +4 -1
  45. package/dist/rpc/client.js +12 -2
  46. package/dist/rpc/client.js.map +1 -1
  47. package/dist/rpc/config.d.ts +0 -1
  48. package/dist/rpc/connection.d.ts +0 -1
  49. package/dist/rpc/connection.js +1 -0
  50. package/dist/rpc/connection.js.map +1 -1
  51. package/dist/rpc/registration.d.ts +0 -1
  52. package/dist/rpc/registration.js +1 -0
  53. package/dist/rpc/registration.js.map +1 -1
  54. package/dist/rpc/social.d.ts +0 -1
  55. package/dist/rpc/social.js +1 -0
  56. package/dist/rpc/social.js.map +1 -1
  57. package/dist/rpc/user.d.ts +0 -1
  58. package/dist/rpc/user.js +1 -0
  59. package/dist/rpc/user.js.map +1 -1
  60. package/dist/social/social.d.ts +16 -23
  61. package/dist/social/social.fixture.d.ts +21 -9
  62. package/dist/social/social.fixture.js +8 -14
  63. package/dist/social/social.fixture.js.map +1 -1
  64. package/dist/social/social.js +14 -10
  65. package/dist/social/social.js.map +1 -1
  66. package/dist/storage/storage.d.ts +40 -12
  67. package/dist/storage/storage.fixture.d.ts +2 -2
  68. package/dist/storage/storage.fixture.js +2 -2
  69. package/dist/storage/storage.fixture.js.map +1 -1
  70. package/dist/storage/storage.js +48 -15
  71. package/dist/storage/storage.js.map +1 -1
  72. package/dist/test/fixtures.d.ts +1 -2
  73. package/dist/test/fixtures.js +20 -5
  74. package/dist/test/fixtures.js.map +1 -1
  75. package/dist/user/user.d.ts +8 -5
  76. package/dist/user/user.fixture.d.ts +2 -2
  77. package/dist/user/user.fixture.js +9 -5
  78. package/dist/user/user.fixture.js.map +1 -1
  79. package/dist/user/user.js +9 -3
  80. package/dist/user/user.js.map +1 -1
  81. package/dist/version.d.ts +1 -2
  82. package/dist/version.js +1 -1
  83. package/dist/version.js.map +1 -1
  84. package/package.json +39 -33
  85. package/src/authentication/authenticate.fixture.ts +8 -7
  86. package/src/authentication/authenticate.test.ts +59 -17
  87. package/src/authentication/authenticate.ts +34 -32
  88. package/src/capabilities/capabilities.ts +9 -8
  89. package/src/connection/connection.fixture.ts +2 -1
  90. package/src/connection/connection.test.ts +3 -3
  91. package/src/connection/connection.ts +9 -8
  92. package/src/effect.ts +129 -128
  93. package/src/email/email.fixture.ts +4 -3
  94. package/src/email/email.test.ts +4 -4
  95. package/src/email/email.ts +24 -16
  96. package/src/index.ts +225 -169
  97. package/src/logging/eventLogger.test.ts +1 -1
  98. package/src/logging/eventLogger.ts +2 -2
  99. package/src/registration/register.fixture.ts +14 -8
  100. package/src/registration/register.test.ts +13 -9
  101. package/src/registration/register.ts +37 -34
  102. package/src/rpc/authentication.ts +31 -0
  103. package/src/rpc/client.ts +173 -0
  104. package/src/rpc/config.ts +18 -0
  105. package/src/rpc/connection.ts +24 -0
  106. package/src/rpc/registration.ts +31 -0
  107. package/src/rpc/social.ts +36 -0
  108. package/src/rpc/user.ts +42 -0
  109. package/src/social/social.fixture.ts +10 -18
  110. package/src/social/social.test.ts +13 -29
  111. package/src/social/social.ts +20 -47
  112. package/src/storage/storage.fixture.ts +3 -4
  113. package/src/storage/storage.test.ts +28 -19
  114. package/src/storage/storage.ts +36 -36
  115. package/src/test/fixtures.ts +21 -6
  116. package/src/user/user.fixture.ts +17 -7
  117. package/src/user/user.test.ts +2 -5
  118. package/src/user/user.ts +13 -9
  119. package/src/version.ts +1 -0
  120. package/dist/authentication/authenticate.d.ts.map +0 -1
  121. package/dist/authentication/authenticate.fixture.d.ts.map +0 -1
  122. package/dist/authentication/authenticate.test.d.ts +0 -2
  123. package/dist/authentication/authenticate.test.d.ts.map +0 -1
  124. package/dist/authentication/authenticate.test.js +0 -111
  125. package/dist/authentication/authenticate.test.js.map +0 -1
  126. package/dist/capabilities/capabilities.d.ts.map +0 -1
  127. package/dist/config.d.ts +0 -18
  128. package/dist/config.d.ts.map +0 -1
  129. package/dist/config.js +0 -20
  130. package/dist/config.js.map +0 -1
  131. package/dist/connection/connection.d.ts.map +0 -1
  132. package/dist/connection/connection.fixture.d.ts.map +0 -1
  133. package/dist/connection/connection.test.d.ts +0 -2
  134. package/dist/connection/connection.test.d.ts.map +0 -1
  135. package/dist/connection/connection.test.js +0 -36
  136. package/dist/connection/connection.test.js.map +0 -1
  137. package/dist/effect.d.ts.map +0 -1
  138. package/dist/email/email.d.ts.map +0 -1
  139. package/dist/email/email.fixture.d.ts.map +0 -1
  140. package/dist/email/email.test.d.ts +0 -2
  141. package/dist/email/email.test.d.ts.map +0 -1
  142. package/dist/email/email.test.js +0 -99
  143. package/dist/email/email.test.js.map +0 -1
  144. package/dist/event/event.d.ts.map +0 -1
  145. package/dist/event/event.node.test.d.ts +0 -2
  146. package/dist/event/event.node.test.d.ts.map +0 -1
  147. package/dist/event/event.node.test.js +0 -13
  148. package/dist/event/event.node.test.js.map +0 -1
  149. package/dist/event/event.test.d.ts +0 -2
  150. package/dist/event/event.test.d.ts.map +0 -1
  151. package/dist/event/event.test.js +0 -30
  152. package/dist/event/event.test.js.map +0 -1
  153. package/dist/index.d.ts.map +0 -1
  154. package/dist/logging/eventLogger.d.ts.map +0 -1
  155. package/dist/logging/eventLogger.test.d.ts +0 -2
  156. package/dist/logging/eventLogger.test.d.ts.map +0 -1
  157. package/dist/logging/eventLogger.test.js +0 -67
  158. package/dist/logging/eventLogger.test.js.map +0 -1
  159. package/dist/registration/register.d.ts.map +0 -1
  160. package/dist/registration/register.fixture.d.ts.map +0 -1
  161. package/dist/registration/register.test.d.ts +0 -2
  162. package/dist/registration/register.test.d.ts.map +0 -1
  163. package/dist/registration/register.test.js +0 -104
  164. package/dist/registration/register.test.js.map +0 -1
  165. package/dist/rpc/authentication.d.ts.map +0 -1
  166. package/dist/rpc/client.d.ts.map +0 -1
  167. package/dist/rpc/config.d.ts.map +0 -1
  168. package/dist/rpc/connection.d.ts.map +0 -1
  169. package/dist/rpc/registration.d.ts.map +0 -1
  170. package/dist/rpc/social.d.ts.map +0 -1
  171. package/dist/rpc/user.d.ts.map +0 -1
  172. package/dist/social/social.d.ts.map +0 -1
  173. package/dist/social/social.fixture.d.ts.map +0 -1
  174. package/dist/social/social.test.d.ts +0 -2
  175. package/dist/social/social.test.d.ts.map +0 -1
  176. package/dist/social/social.test.js +0 -110
  177. package/dist/social/social.test.js.map +0 -1
  178. package/dist/storage/storage.d.ts.map +0 -1
  179. package/dist/storage/storage.fixture.d.ts.map +0 -1
  180. package/dist/storage/storage.test.d.ts +0 -2
  181. package/dist/storage/storage.test.d.ts.map +0 -1
  182. package/dist/storage/storage.test.js +0 -120
  183. package/dist/storage/storage.test.js.map +0 -1
  184. package/dist/test/fixtures.d.ts.map +0 -1
  185. package/dist/user/user.d.ts.map +0 -1
  186. package/dist/user/user.fixture.d.ts.map +0 -1
  187. package/dist/user/user.test.d.ts +0 -2
  188. package/dist/user/user.test.d.ts.map +0 -1
  189. package/dist/user/user.test.js +0 -56
  190. package/dist/user/user.test.js.map +0 -1
  191. package/dist/version.d.ts.map +0 -1
  192. package/src/config.ts +0 -42
package/dist/index.d.ts CHANGED
@@ -1,20 +1,18 @@
1
1
  import { ErrorCode } from '@passlock/shared/dist/error/error.js';
2
- import type { Principal } from '@passlock/shared/dist/schema/principal.js';
3
- import { type AuthenticationRequest } from './authentication/authenticate.js';
4
- import { type VerifyRequest } from './email/email.js';
5
- import { type RegistrationRequest } from './registration/register.js';
6
- import { type AuthenticateOidcReq, type RegisterOidcReq } from './social/social.js';
2
+ import type { VerifyEmail } from '@passlock/shared/dist/schema/email.js';
3
+ import type { UserVerification } from '@passlock/shared/dist/schema/passkey.js';
4
+ import type { Principal, UserPrincipal } from '@passlock/shared/dist/schema/principal.js';
5
+ import type { VerifyRequest } from './email/email.js';
6
+ import type { Provider } from './social/social.js';
7
7
  import { type AuthType, type StoredToken } from './storage/storage.js';
8
- import { type Email, type ResendEmail } from './user/user.js';
8
+ import type { Email, ResendEmail } from './user/user.js';
9
9
  export type Options = {
10
10
  signal?: AbortSignal;
11
11
  };
12
12
  export type { VerifyEmail } from '@passlock/shared/dist/schema/email.js';
13
13
  export type { UserVerification } from '@passlock/shared/dist/schema/passkey.js';
14
- export type { Principal } from '@passlock/shared/dist/schema/principal.js';
15
- export type { AuthenticationRequest } from './authentication/authenticate.js';
14
+ export type { Principal, UserPrincipal } from '@passlock/shared/dist/schema/principal.js';
16
15
  export type { VerifyRequest } from './email/email.js';
17
- export type { RegistrationRequest } from './registration/register.js';
18
16
  export type { AuthType, StoredToken } from './storage/storage.js';
19
17
  export type { Email } from './user/user.js';
20
18
  export type PasslockProps = {
@@ -22,6 +20,29 @@ export type PasslockProps = {
22
20
  clientId: string;
23
21
  endpoint?: string;
24
22
  };
23
+ export type RegistrationRequest = {
24
+ email: string;
25
+ givenName?: string;
26
+ familyName?: string;
27
+ userVerification?: UserVerification;
28
+ verifyEmail?: VerifyEmail;
29
+ };
30
+ export type AuthenticationRequest = {
31
+ email?: string;
32
+ userVerification?: UserVerification;
33
+ };
34
+ export type RegisterOidcReq = {
35
+ provider: Provider;
36
+ idToken: string;
37
+ givenName?: string;
38
+ familyName?: string;
39
+ nonce: string;
40
+ };
41
+ export type AuthenticateOidcReq = {
42
+ provider: Provider;
43
+ idToken: string;
44
+ nonce: string;
45
+ };
25
46
  export { ErrorCode } from '@passlock/shared/dist/error/error.js';
26
47
  export declare class PasslockError extends Error {
27
48
  readonly code: ErrorCode;
@@ -31,7 +52,8 @@ export declare class PasslockError extends Error {
31
52
  }
32
53
  export declare class PasslockUnsafe {
33
54
  private readonly runtime;
34
- constructor(config: PasslockProps);
55
+ constructor(props: PasslockProps);
56
+ static isUserPrincipal: (principal: Principal) => principal is UserPrincipal;
35
57
  private readonly runPromise;
36
58
  preConnect: (options?: Options) => Promise<void>;
37
59
  isPasskeySupport: () => Promise<boolean>;
@@ -39,33 +61,61 @@ export declare class PasslockUnsafe {
39
61
  registerPasskey: (request: RegistrationRequest, options?: Options) => Promise<Principal>;
40
62
  authenticatePasskey: (request: AuthenticationRequest, options?: Options) => Promise<Principal>;
41
63
  registerOidc: (request: RegisterOidcReq, options?: Options) => Promise<{
64
+ readonly email?: string;
65
+ readonly givenName?: string;
66
+ readonly familyName?: string;
67
+ readonly emailVerified?: boolean;
68
+ readonly iss: string;
69
+ readonly aud: string;
70
+ readonly sub: string;
71
+ readonly iat: Date;
72
+ readonly nbf: Date;
73
+ readonly exp: Date;
74
+ readonly jti: string;
42
75
  readonly token: string;
43
- readonly user: {
44
- readonly email: string;
76
+ readonly userVerified: boolean;
77
+ readonly authType: "email" | "apple" | "google" | "passkey";
78
+ readonly authId: string;
79
+ readonly user?: {
45
80
  readonly id: string;
81
+ readonly email: string;
46
82
  readonly givenName: string;
47
83
  readonly familyName: string;
48
84
  readonly emailVerified: boolean;
49
85
  };
50
86
  readonly authStatement: {
51
- readonly authType: "email" | "passkey" | "apple" | "google";
52
87
  readonly userVerified: boolean;
88
+ readonly authType: "email" | "apple" | "google" | "passkey";
53
89
  readonly authTimestamp: Date;
54
90
  };
55
91
  readonly expireAt: Date;
56
92
  }>;
57
93
  authenticateOidc: (request: AuthenticateOidcReq, options?: Options) => Promise<{
94
+ readonly email?: string;
95
+ readonly givenName?: string;
96
+ readonly familyName?: string;
97
+ readonly emailVerified?: boolean;
98
+ readonly iss: string;
99
+ readonly aud: string;
100
+ readonly sub: string;
101
+ readonly iat: Date;
102
+ readonly nbf: Date;
103
+ readonly exp: Date;
104
+ readonly jti: string;
58
105
  readonly token: string;
59
- readonly user: {
60
- readonly email: string;
106
+ readonly userVerified: boolean;
107
+ readonly authType: "email" | "apple" | "google" | "passkey";
108
+ readonly authId: string;
109
+ readonly user?: {
61
110
  readonly id: string;
111
+ readonly email: string;
62
112
  readonly givenName: string;
63
113
  readonly familyName: string;
64
114
  readonly emailVerified: boolean;
65
115
  };
66
116
  readonly authStatement: {
67
- readonly authType: "email" | "passkey" | "apple" | "google";
68
117
  readonly userVerified: boolean;
118
+ readonly authType: "email" | "apple" | "google" | "passkey";
69
119
  readonly authTimestamp: Date;
70
120
  };
71
121
  readonly expireAt: Date;
@@ -78,49 +128,77 @@ export declare class PasslockUnsafe {
78
128
  }
79
129
  export declare class Passlock {
80
130
  private readonly runtime;
81
- constructor(config: PasslockProps);
131
+ constructor(props: PasslockProps);
132
+ static isUserPrincipal: (principal: Principal) => principal is UserPrincipal;
82
133
  private readonly runPromise;
83
- preConnect: (options?: Options) => Promise<void | PasslockError>;
134
+ preConnect: (options?: Options) => Promise<boolean | PasslockError>;
84
135
  isPasskeySupport: () => Promise<boolean>;
85
136
  isExistingUser: (email: Email, options?: Options) => Promise<boolean | PasslockError>;
86
137
  registerPasskey: (request: RegistrationRequest, options?: Options) => Promise<Principal | PasslockError>;
87
138
  authenticatePasskey: (request?: AuthenticationRequest, options?: Options) => Promise<Principal | PasslockError>;
88
139
  registerOidc: (request: RegisterOidcReq, options?: Options) => Promise<{
140
+ readonly email?: string;
141
+ readonly givenName?: string;
142
+ readonly familyName?: string;
143
+ readonly emailVerified?: boolean;
144
+ readonly iss: string;
145
+ readonly aud: string;
146
+ readonly sub: string;
147
+ readonly iat: Date;
148
+ readonly nbf: Date;
149
+ readonly exp: Date;
150
+ readonly jti: string;
89
151
  readonly token: string;
90
- readonly user: {
91
- readonly email: string;
152
+ readonly userVerified: boolean;
153
+ readonly authType: "email" | "apple" | "google" | "passkey";
154
+ readonly authId: string;
155
+ readonly user?: {
92
156
  readonly id: string;
157
+ readonly email: string;
93
158
  readonly givenName: string;
94
159
  readonly familyName: string;
95
160
  readonly emailVerified: boolean;
96
161
  };
97
162
  readonly authStatement: {
98
- readonly authType: "email" | "passkey" | "apple" | "google";
99
163
  readonly userVerified: boolean;
164
+ readonly authType: "email" | "apple" | "google" | "passkey";
100
165
  readonly authTimestamp: Date;
101
166
  };
102
167
  readonly expireAt: Date;
103
168
  } | PasslockError>;
104
169
  authenticateOidc: (request: AuthenticateOidcReq, options?: Options) => Promise<{
170
+ readonly email?: string;
171
+ readonly givenName?: string;
172
+ readonly familyName?: string;
173
+ readonly emailVerified?: boolean;
174
+ readonly iss: string;
175
+ readonly aud: string;
176
+ readonly sub: string;
177
+ readonly iat: Date;
178
+ readonly nbf: Date;
179
+ readonly exp: Date;
180
+ readonly jti: string;
105
181
  readonly token: string;
106
- readonly user: {
107
- readonly email: string;
182
+ readonly userVerified: boolean;
183
+ readonly authType: "email" | "apple" | "google" | "passkey";
184
+ readonly authId: string;
185
+ readonly user?: {
108
186
  readonly id: string;
187
+ readonly email: string;
109
188
  readonly givenName: string;
110
189
  readonly familyName: string;
111
190
  readonly emailVerified: boolean;
112
191
  };
113
192
  readonly authStatement: {
114
- readonly authType: "email" | "passkey" | "apple" | "google";
115
193
  readonly userVerified: boolean;
194
+ readonly authType: "email" | "apple" | "google" | "passkey";
116
195
  readonly authTimestamp: Date;
117
196
  };
118
197
  readonly expireAt: Date;
119
198
  } | PasslockError>;
120
199
  verifyEmailCode: (request: VerifyRequest, options?: Options) => Promise<Principal | PasslockError>;
121
200
  verifyEmailLink: (options?: Options) => Promise<Principal | PasslockError>;
122
- resendVerificationEmail: (request: ResendEmail, options?: Options) => Promise<void | PasslockError>;
123
- getSessionToken: (authType: AuthType) => StoredToken | undefined;
201
+ resendVerificationEmail: (request: ResendEmail, options?: Options) => Promise<boolean | PasslockError>;
202
+ getSessionToken: (authType: AuthType) => Promise<StoredToken | undefined>;
124
203
  clearExpiredTokens: () => void;
125
204
  }
126
- //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,15 +1,47 @@
1
1
  import { ErrorCode } from '@passlock/shared/dist/error/error.js';
2
- import { RpcConfig } from '@passlock/shared/dist/rpc/config.js';
3
- import { Effect as E, Layer as L, Layer, Option, Runtime, Scope, pipe } from 'effect';
4
- import { AuthenticationService } from './authentication/authenticate.js';
5
- import { Capabilities } from './capabilities/capabilities.js';
6
- import { ConnectionService } from './connection/connection.js';
7
- import { allRequirements } from './effect.js';
8
- import { EmailService } from './email/email.js';
9
- import { RegistrationService } from './registration/register.js';
10
- import { SocialService } from './social/social.js';
11
- import { Storage, StorageService } from './storage/storage.js';
12
- import { UserService } from './user/user.js';
2
+ import { RpcConfig } from './rpc/config.js';
3
+ import { Effect as E, Layer as L, Layer, Option as O, Runtime, Scope, pipe } from 'effect';
4
+ import { dual } from 'effect/Function';
5
+ import { allRequirements, authenticateOidc, authenticatePasskey, clearExpiredTokens, getSessionToken, isExistingUser, isPasskeySupport, preConnect, registerOidc, registerPasskey, resendVerificationEmail, verifyEmailCode, verifyEmailLink, } from './effect.js';
6
+ import { BrowserStorage, StorageService, } from './storage/storage.js';
7
+ import { PASSLOCK_CLIENT_VERSION } from './version.js';
8
+ const nonEmpty = (text) => {
9
+ const trimmed = text.trim();
10
+ if (trimmed.length > 0)
11
+ return O.some(trimmed);
12
+ return O.none();
13
+ };
14
+ const toRpcRegistrationRequest = (request) => {
15
+ return {
16
+ email: request.email,
17
+ givenName: pipe(O.fromNullable(request.givenName), O.flatMap(nonEmpty)),
18
+ familyName: pipe(O.fromNullable(request.familyName), O.flatMap(nonEmpty)),
19
+ userVerification: O.fromNullable(request.userVerification),
20
+ verifyEmail: O.fromNullable(request.verifyEmail),
21
+ };
22
+ };
23
+ const toRpcAuthenticationRequest = (request) => {
24
+ return {
25
+ email: O.fromNullable(request.email),
26
+ userVerification: O.fromNullable(request.userVerification),
27
+ };
28
+ };
29
+ const toRpcRegisterOidcReq = (request) => {
30
+ return {
31
+ provider: request.provider,
32
+ idToken: request.idToken,
33
+ givenName: pipe(O.fromNullable(request.givenName), O.flatMap(nonEmpty)),
34
+ familyName: pipe(O.fromNullable(request.familyName), O.flatMap(nonEmpty)),
35
+ nonce: request.nonce,
36
+ };
37
+ };
38
+ const toRpcAuthenticateOidcReq = (request) => {
39
+ return {
40
+ provider: request.provider,
41
+ idToken: request.idToken,
42
+ nonce: request.nonce,
43
+ };
44
+ };
13
45
  export { ErrorCode } from '@passlock/shared/dist/error/error.js';
14
46
  export class PasslockError extends Error {
15
47
  code;
@@ -20,9 +52,7 @@ export class PasslockError extends Error {
20
52
  this.detail = detail;
21
53
  }
22
54
  static isError = (error) => {
23
- return (typeof error === 'object' &&
24
- error !== null &&
25
- error instanceof PasslockError);
55
+ return typeof error === 'object' && error !== null && error instanceof PasslockError;
26
56
  };
27
57
  }
28
58
  const hasMessage = (defect) => {
@@ -49,6 +79,7 @@ const transformErrors = (effect) => {
49
79
  : E.succeed(new PasslockError('Sorry, something went wrong', ErrorCode.InternalServerError));
50
80
  },
51
81
  Interrupt: () => {
82
+ console.error("Interrupt");
52
83
  return E.succeed(new PasslockError('Operation aborted', ErrorCode.InternalBrowserError));
53
84
  },
54
85
  Sequential: errors => {
@@ -64,52 +95,72 @@ const transformErrors = (effect) => {
64
95
  };
65
96
  export class PasslockUnsafe {
66
97
  runtime;
67
- constructor(config) {
68
- const rpcConfig = Layer.succeed(RpcConfig, RpcConfig.of(config));
69
- const storage = Layer.succeed(Storage, Storage.of(globalThis.localStorage));
70
- const allLayers = pipe(allRequirements, L.provide(rpcConfig), L.provide(storage));
98
+ constructor(props) {
99
+ const config = Layer.succeed(RpcConfig, RpcConfig.of(props));
100
+ const storage = Layer.succeed(BrowserStorage, BrowserStorage.of(globalThis.localStorage));
101
+ const allLayers = pipe(allRequirements, L.provide(config), L.provide(storage), L.merge(config));
71
102
  const scope = E.runSync(Scope.make());
72
103
  this.runtime = E.runSync(Layer.toRuntime(allLayers).pipe(Scope.extend(scope)));
104
+ E.runSync(E.logDebug(`Passlock version: ${PASSLOCK_CLIENT_VERSION}`));
73
105
  }
74
- runPromise = (effect, options = undefined) => {
75
- return pipe(transformErrors(effect), E.flatMap(result => (PasslockError.isError(result) ? E.fail(result) : E.succeed(result))), effect => Runtime.runPromise(this.runtime)(effect, options));
106
+ static isUserPrincipal = (principal) => {
107
+ return (principal.givenName !== undefined &&
108
+ principal.familyName !== undefined &&
109
+ principal.email !== undefined &&
110
+ principal.emailVerified !== undefined);
111
+ };
112
+ runPromise = dual(2, (effect, options) => pipe(transformErrors(effect), E.flatMap(result => (PasslockError.isError(result) ? E.fail(result) : E.succeed(result))), effect => Runtime.runPromise(this.runtime)(effect, options)));
113
+ preConnect = (options) => pipe(preConnect(), this.runPromise(options));
114
+ isPasskeySupport = () => pipe(isPasskeySupport, effect => Runtime.runPromise(this.runtime)(effect));
115
+ isExistingUser = (email, options) => pipe(isExistingUser(email), this.runPromise(options));
116
+ registerPasskey = (request, options) => pipe(registerPasskey(toRpcRegistrationRequest(request)), this.runPromise(options));
117
+ authenticatePasskey = (request, options) => pipe(authenticatePasskey(toRpcAuthenticationRequest(request)), this.runPromise(options));
118
+ registerOidc = (request, options) => pipe(registerOidc(toRpcRegisterOidcReq(request)), this.runPromise(options));
119
+ authenticateOidc = (request, options) => pipe(authenticateOidc(toRpcAuthenticateOidcReq(request)), this.runPromise(options));
120
+ verifyEmailCode = (request, options) => pipe(verifyEmailCode(request), this.runPromise(options));
121
+ resendVerificationEmail = (request, options) => pipe(resendVerificationEmail(request), this.runPromise(options));
122
+ verifyEmailLink = (options) => pipe(verifyEmailLink, this.runPromise(options));
123
+ getSessionToken = (authType) => pipe(getSessionToken(authType), E.orElseSucceed(() => undefined), effect => Runtime.runSync(this.runtime)(effect));
124
+ clearExpiredTokens = () => {
125
+ pipe(clearExpiredTokens, effect => {
126
+ Runtime.runSync(this.runtime)(effect);
127
+ });
76
128
  };
77
- preConnect = (options) => pipe(ConnectionService, E.flatMap(service => service.preConnect()), effect => Runtime.runPromise(this.runtime)(effect, options));
78
- isPasskeySupport = () => pipe(Capabilities, E.flatMap(service => service.isPasskeySupport), effect => Runtime.runPromise(this.runtime)(effect));
79
- isExistingUser = (email, options) => pipe(UserService, E.flatMap(service => service.isExistingUser(email)), effect => this.runPromise(effect, options));
80
- registerPasskey = (request, options) => pipe(RegistrationService, E.flatMap(service => service.registerPasskey(request)), effect => this.runPromise(effect, options));
81
- authenticatePasskey = (request, options) => pipe(AuthenticationService, E.flatMap(service => service.authenticatePasskey(request)), effect => this.runPromise(effect, options));
82
- registerOidc = (request, options) => pipe(SocialService, E.flatMap(service => service.registerOidc(request)), effect => this.runPromise(effect, options));
83
- authenticateOidc = (request, options) => pipe(SocialService, E.flatMap(service => service.authenticateOidc(request)), effect => this.runPromise(effect, options));
84
- verifyEmailCode = (request, options) => pipe(EmailService, E.flatMap(service => service.verifyEmailCode(request)), effect => this.runPromise(effect, options));
85
- resendVerificationEmail = (request, options) => pipe(UserService, E.flatMap(service => service.resendVerificationEmail(request)), effect => this.runPromise(effect, options));
86
- verifyEmailLink = (options) => pipe(EmailService, E.flatMap(service => service.verifyEmailLink()), effect => this.runPromise(effect, options));
87
- getSessionToken = (authType) => pipe(StorageService, E.flatMap(service => service.getToken(authType).pipe(effect => E.option(effect))), E.map(Option.getOrUndefined), effect => Runtime.runSync(this.runtime)(effect));
88
- clearExpiredTokens = () => pipe(StorageService, E.flatMap(service => service.clearExpiredTokens), effect => Runtime.runSync(this.runtime)(effect));
89
129
  }
90
130
  export class Passlock {
91
131
  runtime;
92
- constructor(config) {
93
- const rpcConfig = Layer.succeed(RpcConfig, RpcConfig.of(config));
94
- const storage = Layer.succeed(Storage, Storage.of(globalThis.localStorage));
95
- const allLayers = pipe(allRequirements, L.provide(rpcConfig), L.provide(storage));
132
+ constructor(props) {
133
+ const config = Layer.succeed(RpcConfig, RpcConfig.of(props));
134
+ const storage = Layer.succeed(BrowserStorage, BrowserStorage.of(globalThis.localStorage));
135
+ const allLayers = pipe(allRequirements, L.provide(config), L.provide(storage), L.merge(config));
96
136
  const scope = E.runSync(Scope.make());
97
137
  this.runtime = E.runSync(Layer.toRuntime(allLayers).pipe(Scope.extend(scope)));
138
+ E.runSync(E.logDebug(`Passlock version: ${PASSLOCK_CLIENT_VERSION}`));
98
139
  }
99
- runPromise = (effect, options = undefined) => {
100
- return pipe(transformErrors(effect), effect => Runtime.runPromise(this.runtime)(effect, options));
140
+ static isUserPrincipal = (principal) => {
141
+ return (principal.givenName !== undefined &&
142
+ principal.familyName !== undefined &&
143
+ principal.email !== undefined &&
144
+ principal.emailVerified !== undefined);
145
+ };
146
+ runPromise = dual(2, (effect, options) => pipe(transformErrors(effect), effect => Runtime.runPromise(this.runtime)(effect, options)));
147
+ preConnect = async (options) => {
148
+ return pipe(preConnect(), E.as(true), this.runPromise(options));
149
+ };
150
+ isPasskeySupport = () => pipe(isPasskeySupport, effect => Runtime.runPromise(this.runtime)(effect));
151
+ isExistingUser = (email, options) => pipe(isExistingUser(email), this.runPromise(options));
152
+ registerPasskey = (request, options) => pipe(registerPasskey(toRpcRegistrationRequest(request)), this.runPromise(options));
153
+ authenticatePasskey = (request = {}, options) => pipe(toRpcAuthenticationRequest(request), authenticatePasskey, this.runPromise(options));
154
+ registerOidc = (request, options) => pipe(registerOidc(toRpcRegisterOidcReq(request)), this.runPromise(options));
155
+ authenticateOidc = (request, options) => pipe(authenticateOidc(request), this.runPromise(options));
156
+ verifyEmailCode = (request, options) => pipe(verifyEmailCode(request), this.runPromise(options));
157
+ verifyEmailLink = (options) => pipe(verifyEmailLink, this.runPromise(options));
158
+ resendVerificationEmail = (request, options) => pipe(resendVerificationEmail(request), E.as(true), this.runPromise(options));
159
+ getSessionToken = (authType) => pipe(getSessionToken(authType), E.orElseSucceed(() => undefined), effect => E.runPromise(effect));
160
+ clearExpiredTokens = () => {
161
+ pipe(StorageService, E.flatMap(service => service.clearExpiredTokens), effect => {
162
+ Runtime.runSync(this.runtime)(effect);
163
+ });
101
164
  };
102
- preConnect = (options) => pipe(ConnectionService, E.flatMap(service => service.preConnect()), effect => this.runPromise(effect, options));
103
- isPasskeySupport = () => pipe(Capabilities, E.flatMap(service => service.isPasskeySupport), effect => Runtime.runPromise(this.runtime)(effect));
104
- isExistingUser = (email, options) => pipe(UserService, E.flatMap(service => service.isExistingUser(email)), effect => this.runPromise(effect, options));
105
- registerPasskey = (request, options) => pipe(RegistrationService, E.flatMap(service => service.registerPasskey(request)), effect => this.runPromise(effect, options));
106
- authenticatePasskey = (request = {}, options) => pipe(AuthenticationService, E.flatMap(service => service.authenticatePasskey(request)), effect => this.runPromise(effect, options));
107
- registerOidc = (request, options) => pipe(SocialService, E.flatMap(service => service.registerOidc(request)), effect => this.runPromise(effect, options));
108
- authenticateOidc = (request, options) => pipe(SocialService, E.flatMap(service => service.authenticateOidc(request)), effect => this.runPromise(effect, options));
109
- verifyEmailCode = (request, options) => pipe(EmailService, E.flatMap(service => service.verifyEmailCode(request)), effect => this.runPromise(effect, options));
110
- verifyEmailLink = (options) => pipe(EmailService, E.flatMap(service => service.verifyEmailLink()), effect => this.runPromise(effect, options));
111
- resendVerificationEmail = (request, options) => pipe(UserService, E.flatMap(service => service.resendVerificationEmail(request)), effect => this.runPromise(effect, options));
112
- getSessionToken = (authType) => pipe(StorageService, E.flatMap(service => service.getToken(authType).pipe(effect => E.option(effect))), E.map(maybeToken => Option.getOrUndefined(maybeToken)), effect => Runtime.runSync(this.runtime)(effect));
113
- clearExpiredTokens = () => pipe(StorageService, E.flatMap(service => service.clearExpiredTokens), effect => Runtime.runSync(this.runtime)(effect));
114
165
  }
115
166
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAA;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAA;AAE/D,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AACrF,OAAO,EAAE,qBAAqB,EAA8B,MAAM,kCAAkC,CAAA;AACpG,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAsB,MAAM,kBAAkB,CAAA;AACnE,OAAO,EAAE,mBAAmB,EAA4B,MAAM,4BAA4B,CAAA;AAC1F,OAAO,EAAE,aAAa,EAAkD,MAAM,oBAAoB,CAAA;AAClG,OAAO,EAAE,OAAO,EAAE,cAAc,EAAmC,MAAM,sBAAsB,CAAA;AAC/F,OAAO,EAAE,WAAW,EAAgC,MAAM,gBAAgB,CAAA;AAqB1E,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAA;AAEhE,MAAM,OAAO,aAAc,SAAQ,KAAK;IAC7B,IAAI,CAAW;IACf,MAAM,CAAoB;IAEnC,YAAY,OAAe,EAAE,IAAe,EAAE,MAAe;QAC3D,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,MAAM,CAAU,OAAO,GAAG,CAAC,KAAc,EAA0B,EAAE;QACnE,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,KAAK,IAAI;YACd,KAAK,YAAY,aAAa,CAC/B,CAAA;IACH,CAAC,CAAA;;AAcH,MAAM,UAAU,GAAG,CAAC,MAAe,EAAiC,EAAE;IACpE,OAAO,CACL,OAAO,MAAM,KAAK,QAAQ;QAC1B,MAAM,KAAK,IAAI;QACf,SAAS,IAAI,MAAM;QACnB,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,QAAQ,CACtC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,CACtB,MAAsC,EACC,EAAE;IACzC,MAAM,iBAAiB,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE;QAC5C,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;QAClF,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QACxF,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QACtF,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QAC5F,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QACtF,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QACpF,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;KACrF,CAAC,CAAA;IAEF,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAE9C,MAAM,cAAc,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE;QAC5C,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;YAClB,OAAO,UAAU,CAAC,MAAM,CAAC;gBACvB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,mBAAmB,CAAC,CAAC;gBAC7E,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,6BAA6B,EAAE,SAAS,CAAC,mBAAmB,CAAC,CAAC,CAAA;QAChG,CAAC;QAED,SAAS,EAAE,GAAG,EAAE;YACd,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,mBAAmB,EAAE,SAAS,CAAC,oBAAoB,CAAC,CAAC,CAAA;QAC1F,CAAC;QAED,UAAU,EAAE,MAAM,CAAC,EAAE;YACnB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACrB,OAAO,CAAC,CAAC,OAAO,CACd,IAAI,aAAa,CAAC,6BAA6B,EAAE,SAAS,CAAC,mBAAmB,CAAC,CAChF,CAAA;QACH,CAAC;QAED,QAAQ,EAAE,MAAM,CAAC,EAAE;YACjB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACrB,OAAO,CAAC,CAAC,OAAO,CACd,IAAI,aAAa,CAAC,6BAA6B,EAAE,SAAS,CAAC,mBAAmB,CAAC,CAChF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;IAEF,OAAO,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAA;AACpC,CAAC,CAAA;AAYD,MAAM,OAAO,cAAc;IACR,OAAO,CAA+B;IAEvD,YAAY,MAAqB;QAC/B,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;QAChE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAA;QAC3E,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;QACjF,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;QACrC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAChF,CAAC;IAEgB,UAAU,GAAG,CAC5B,MAAsC,EACtC,UAA+B,SAAS,EACxC,EAAE;QACF,OAAO,IAAI,CACT,eAAe,CAAC,MAAM,CAAC,EACvB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EACzF,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAC5D,CAAA;IACH,CAAC,CAAA;IAED,UAAU,GAAG,CAAC,OAAiB,EAAiB,EAAE,CAChD,IAAI,CACF,iBAAiB,EACjB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,EAC1C,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAC5D,CAAA;IAEH,gBAAgB,GAAG,GAAqB,EAAE,CACxC,IAAI,CACF,YAAY,EACZ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC9C,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CACnD,CAAA;IAEH,cAAc,GAAG,CAAC,KAAY,EAAE,OAAiB,EAAoB,EAAE,CACrE,IAAI,CACF,WAAW,EACX,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EACnD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,eAAe,GAAG,CAAC,OAA4B,EAAE,OAAiB,EAAsB,EAAE,CACxF,IAAI,CACF,mBAAmB,EACnB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,EACtD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,mBAAmB,GAAG,CAAC,OAA8B,EAAE,OAAiB,EAAsB,EAAE,CAC9F,IAAI,CACF,qBAAqB,EACrB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,EAC1D,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,YAAY,GAAG,CAAC,OAAwB,EAAE,OAAiB,EAAE,EAAE,CAC7D,IAAI,CACF,aAAa,EACb,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,EACnD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,gBAAgB,GAAG,CAAC,OAA4B,EAAE,OAAiB,EAAE,EAAE,CACrE,IAAI,CACF,aAAa,EACb,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,EACvD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,eAAe,GAAG,CAAC,OAAsB,EAAE,OAAiB,EAAsB,EAAE,CAClF,IAAI,CACF,YAAY,EACZ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,EACtD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,uBAAuB,GAAG,CAAC,OAAoB,EAAE,OAAiB,EAAiB,EAAE,CACnF,IAAI,CACF,WAAW,EACX,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,EAC9D,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,eAAe,GAAG,CAAC,OAAiB,EAAsB,EAAE,CAC1D,IAAI,CACF,YAAY,EACZ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,EAC/C,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,eAAe,GAAG,CAAC,QAAkB,EAA2B,EAAE,CAChE,IAAI,CACF,cAAc,EACd,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EACjF,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,EAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAChD,CAAA;IAEH,kBAAkB,GAAG,GAAS,EAAE,CAC9B,IAAI,CACF,cAAc,EACd,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAChD,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAChD,CAAA;CACJ;AAED,MAAM,OAAO,QAAQ;IACF,OAAO,CAA+B;IAEvD,YAAY,MAAqB;QAC/B,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;QAChE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAA;QAC3E,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;QACjF,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;QACrC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAChF,CAAC;IAEgB,UAAU,GAAG,CAC5B,MAAsC,EACtC,UAA+B,SAAS,EACxC,EAAE;QACF,OAAO,IAAI,CACT,eAAe,CAAC,MAAM,CAAC,EACvB,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAC5D,CAAA;IACH,CAAC,CAAA;IAED,UAAU,GAAG,CAAC,OAAiB,EAAiC,EAAE,CAChE,IAAI,CACF,iBAAiB,EACjB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,EAC1C,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,gBAAgB,GAAG,GAAqB,EAAE,CACxC,IAAI,CACF,YAAY,EACZ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC9C,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CACnD,CAAA;IAEH,cAAc,GAAG,CAAC,KAAY,EAAE,OAAiB,EAAoC,EAAE,CACrF,IAAI,CACF,WAAW,EACX,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EACnD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,eAAe,GAAG,CAAC,OAA4B,EAAE,OAAiB,EAAsC,EAAE,CACxG,IAAI,CACF,mBAAmB,EACnB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,EACtD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,mBAAmB,GAAG,CAAC,UAAiC,EAAE,EAAE,OAAiB,EAAsC,EAAE,CACnH,IAAI,CACF,qBAAqB,EACrB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,EAC1D,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,YAAY,GAAG,CAAC,OAAwB,EAAE,OAAiB,EAAE,EAAE,CAC7D,IAAI,CACF,aAAa,EACb,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,EACnD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,gBAAgB,GAAG,CAAC,OAA4B,EAAE,OAAiB,EAAE,EAAE,CACrE,IAAI,CACF,aAAa,EACb,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,EACvD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,eAAe,GAAG,CAAC,OAAsB,EAAE,OAAiB,EAAsC,EAAE,CAClG,IAAI,CACF,YAAY,EACZ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,EACtD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,eAAe,GAAG,CAAC,OAAiB,EAAsC,EAAE,CAC1E,IAAI,CACF,YAAY,EACZ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,EAC/C,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,uBAAuB,GAAG,CAAC,OAAoB,EAAE,OAAiB,EAAiC,EAAE,CACnG,IAAI,CACF,WAAW,EACX,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,EAC9D,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3C,CAAA;IAEH,eAAe,GAAG,CAAC,QAAkB,EAA2B,EAAE,CAChE,IAAI,CACF,cAAc,EACd,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EACjF,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,EACtD,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAChD,CAAA;IAEH,kBAAkB,GAAG,GAAS,EAAE,CAC9B,IAAI,CACF,cAAc,EACd,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAChD,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAChD,CAAA;CACJ"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,17 @@
1
+ /**
2
+ * Logger implementation that also fires DOM events.
3
+ * This is useful to allow external code to plug into the logging
4
+ * mechanism. E.g. the Passlock demo subscribes to events to generate
5
+ * a typewriter style effect
6
+ */
1
7
  import { Effect as E } from 'effect';
8
+ /**
9
+ * Some log messages span multiple lines/include json etc which is
10
+ * better output without being formatted by Effect's logging framework
11
+ *
12
+ * @param message
13
+ * @returns
14
+ */
2
15
  export declare const logRaw: <T>(message: T) => E.Effect<void, never, never>;
3
16
  export declare const DebugMessage = "PasslogDebugMessage";
4
17
  export declare const eventLoggerLive: import("effect/Layer").Layer<never, never, never>;
5
- //# sourceMappingURL=eventLogger.d.ts.map
@@ -1,4 +1,17 @@
1
+ /**
2
+ * Logger implementation that also fires DOM events.
3
+ * This is useful to allow external code to plug into the logging
4
+ * mechanism. E.g. the Passlock demo subscribes to events to generate
5
+ * a typewriter style effect
6
+ */
1
7
  import { Effect as E, LogLevel, Logger } from 'effect';
8
+ /**
9
+ * Some log messages span multiple lines/include json etc which is
10
+ * better output without being formatted by Effect's logging framework
11
+ *
12
+ * @param message
13
+ * @returns
14
+ */
2
15
  export const logRaw = (message) => {
3
16
  return E.sync(() => {
4
17
  console.log(message);
@@ -1 +1 @@
1
- {"version":3,"file":"eventLogger.js","sourceRoot":"","sources":["../../src/logging/eventLogger.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAStD,MAAM,CAAC,MAAM,MAAM,GAAG,CAAI,OAAU,EAAE,EAAE;IACtC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;QACjB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACtB,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,qBAAqB,CAAA;AAEjD,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,EAAE;IACnC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;QAC9D,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;IAC/B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAA;IACvD,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CACvC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;IACpC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,QAAQ,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC/D,QAAQ,CAAC,OAAO,CAAC,CAAA;IACnB,CAAC;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,QAAQ,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC;QACjE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC3B,CAAC;AACH,CAAC,CAAC,CACH,CAAA"}
1
+ {"version":3,"file":"eventLogger.js","sourceRoot":"","sources":["../../src/logging/eventLogger.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAEtD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAI,OAAU,EAAE,EAAE;IACtC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;QACjB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACtB,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,qBAAqB,CAAA;AAEjD,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,EAAE;IACnC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;QAC9D,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;IAC/B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAA;IACvD,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CACvC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;IACpC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,QAAQ,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC/D,QAAQ,CAAC,OAAO,CAAC,CAAA;IACnB,CAAC;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,QAAQ,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC;QACjE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC3B,CAAC;AACH,CAAC,CAAC,CACH,CAAA"}
@@ -1,30 +1,27 @@
1
- import type { NotSupported } from '@passlock/shared/dist/error/error.js';
2
- import { Duplicate, InternalBrowserError } from '@passlock/shared/dist/error/error.js';
1
+ import type { Duplicate, NotSupported } from '@passlock/shared/dist/error/error.js';
2
+ import { InternalBrowserError } from '@passlock/shared/dist/error/error.js';
3
3
  import type { OptionsErrors, VerificationErrors } from '@passlock/shared/dist/rpc/registration.js';
4
- import { RegistrationClient } from '@passlock/shared/dist/rpc/registration.js';
5
- import { VerifyEmail } from '@passlock/shared/dist/schema/email.js';
6
- import type { RegistrationCredential, UserVerification } from '@passlock/shared/dist/schema/passkey.js';
7
- import { Principal } from '@passlock/shared/dist/schema/principal.js';
4
+ import { OptionsReq } from '@passlock/shared/dist/rpc/registration.js';
5
+ import type { RegistrationCredential } from '@passlock/shared/dist/schema/passkey.js';
6
+ import type { Principal } from '@passlock/shared/dist/schema/principal.js';
8
7
  import { Context, Effect as E, Layer } from 'effect';
9
8
  import { Capabilities } from '../capabilities/capabilities.js';
9
+ import { RegistrationClient } from '../rpc/registration.js';
10
10
  import { StorageService } from '../storage/storage.js';
11
- import { UserService } from '../user/user.js';
12
- export type RegistrationRequest = {
13
- email: string;
14
- givenName: string;
15
- familyName: string;
16
- userVerification?: UserVerification;
17
- verifyEmail?: VerifyEmail;
18
- };
19
- export type CreateCredential = (request: CredentialCreationOptions) => E.Effect<RegistrationCredential, InternalBrowserError | Duplicate>;
20
- export declare const CreateCredential: Context.Tag<CreateCredential, CreateCredential>;
11
+ import type { UserService } from '../user/user.js';
12
+ export type RegistrationRequest = OptionsReq;
13
+ declare const CreateCredential_base: Context.TagClass<CreateCredential, "@services/CreateCredential", {
14
+ createCredential: (request: CredentialCreationOptions) => E.Effect<RegistrationCredential, InternalBrowserError | Duplicate>;
15
+ }>;
16
+ export declare class CreateCredential extends CreateCredential_base {
17
+ }
21
18
  export type RegistrationErrors = NotSupported | OptionsErrors | VerificationErrors;
22
- export type RegistrationService = {
19
+ declare const RegistrationService_base: Context.TagClass<RegistrationService, "@services/RegistrationService", {
23
20
  registerPasskey: (request: RegistrationRequest) => E.Effect<Principal, RegistrationErrors>;
24
- };
25
- export declare const RegistrationService: Context.Tag<RegistrationService, RegistrationService>;
21
+ }>;
22
+ export declare class RegistrationService extends RegistrationService_base {
23
+ }
26
24
  type Dependencies = Capabilities | CreateCredential | StorageService | UserService | RegistrationClient;
27
25
  export declare const registerPasskey: (request: RegistrationRequest) => E.Effect<Principal, RegistrationErrors, Dependencies>;
28
- export declare const RegistrationServiceLive: Layer.Layer<RegistrationService, never, Capabilities | StorageService | UserService | CreateCredential | RegistrationClient>;
26
+ export declare const RegistrationServiceLive: Layer.Layer<RegistrationService, never, RegistrationClient | Capabilities | StorageService | UserService | CreateCredential>;
29
27
  export {};
30
- //# sourceMappingURL=register.d.ts.map
@@ -1,6 +1,7 @@
1
- import { OptionsReq, OptionsRes, RegistrationClient, VerificationReq, VerificationRes } from '@passlock/shared/dist/rpc/registration.js';
1
+ import { OptionsReq, OptionsRes, VerificationReq, VerificationRes } from '@passlock/shared/dist/rpc/registration.js';
2
2
  import type { RegistrationCredential } from '@passlock/shared/dist/schema/passkey.js';
3
3
  import { Layer as L } from 'effect';
4
+ import { RegistrationClient } from '../rpc/registration.js';
4
5
  import { UserService } from '../user/user.js';
5
6
  import { CreateCredential, type RegistrationRequest } from './register.js';
6
7
  export declare const session = "session";
@@ -19,21 +20,34 @@ export declare const createCredentialTest: L.Layer<CreateCredential, never, neve
19
20
  export declare const userServiceTest: L.Layer<UserService, never, never>;
20
21
  export declare const rpcClientTest: L.Layer<RegistrationClient, never, never>;
21
22
  export declare const principal: {
23
+ readonly email?: string;
24
+ readonly givenName?: string;
25
+ readonly familyName?: string;
26
+ readonly emailVerified?: boolean;
27
+ readonly iss: string;
28
+ readonly aud: string;
29
+ readonly sub: string;
30
+ readonly iat: Date;
31
+ readonly nbf: Date;
32
+ readonly exp: Date;
33
+ readonly jti: string;
22
34
  readonly token: string;
23
- readonly user: {
24
- readonly email: string;
35
+ readonly userVerified: boolean;
36
+ readonly authType: "email" | "apple" | "google" | "passkey";
37
+ readonly authId: string;
38
+ readonly user?: {
25
39
  readonly id: string;
40
+ readonly email: string;
26
41
  readonly givenName: string;
27
42
  readonly familyName: string;
28
43
  readonly emailVerified: boolean;
29
44
  };
30
45
  readonly authStatement: {
31
- readonly authType: "email" | "passkey" | "apple" | "google";
32
46
  readonly userVerified: boolean;
47
+ readonly authType: "email" | "apple" | "google" | "passkey";
33
48
  readonly authTimestamp: Date;
34
49
  };
35
50
  readonly expireAt: Date;
36
51
  };
37
52
  export declare const capabilitiesTest: L.Layer<import("../capabilities/capabilities.js").Capabilities, never, never>;
38
53
  export declare const storageServiceTest: L.Layer<import("../storage/storage.js").StorageService, never, never>;
39
- //# sourceMappingURL=register.fixture.d.ts.map