@passlock/client 0.9.30 → 0.9.32
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/README.md +1 -1
- package/README.template.md +1 -1
- package/dist/authentication/authenticate.d.ts +5 -6
- package/dist/authentication/authenticate.fixture.d.ts +9 -9
- package/dist/authentication/authenticate.fixture.js +8 -8
- package/dist/authentication/authenticate.fixture.js.map +1 -1
- package/dist/authentication/authenticate.js +4 -5
- package/dist/authentication/authenticate.js.map +1 -1
- package/dist/connection/connection.d.ts +3 -3
- package/dist/connection/connection.fixture.d.ts +2 -2
- package/dist/connection/connection.fixture.js +2 -2
- package/dist/connection/connection.fixture.js.map +1 -1
- package/dist/connection/connection.js +2 -2
- package/dist/connection/connection.js.map +1 -1
- package/dist/effect.js +2 -2
- package/dist/effect.js.map +1 -1
- package/dist/email/email.d.ts +1 -1
- package/dist/email/email.fixture.d.ts +4 -4
- package/dist/email/email.fixture.js +3 -3
- package/dist/email/email.fixture.js.map +1 -1
- package/dist/email/email.js +2 -2
- package/dist/email/email.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/registration/register.d.ts +5 -7
- package/dist/registration/register.fixture.d.ts +8 -8
- package/dist/registration/register.fixture.js +6 -6
- package/dist/registration/register.fixture.js.map +1 -1
- package/dist/registration/register.js +5 -6
- package/dist/registration/register.js.map +1 -1
- package/dist/rpc/client.js +1 -1
- package/dist/rpc/client.js.map +1 -1
- package/dist/rpc/connection.d.ts +1 -1
- package/dist/rpc/connection.js +3 -2
- package/dist/rpc/connection.js.map +1 -1
- package/dist/rpc/{authentication.d.ts → passkey/authentication.d.ts} +4 -4
- package/dist/rpc/passkey/authentication.js +17 -0
- package/dist/rpc/passkey/authentication.js.map +1 -0
- package/dist/rpc/{registration.d.ts → passkey/registration.d.ts} +3 -3
- package/dist/rpc/passkey/registration.js +17 -0
- package/dist/rpc/passkey/registration.js.map +1 -0
- package/dist/rpc/social.d.ts +1 -1
- package/dist/rpc/social.js +6 -5
- package/dist/rpc/social.js.map +1 -1
- package/dist/rpc/user.d.ts +1 -1
- package/dist/rpc/user.js +5 -4
- package/dist/rpc/user.js.map +1 -1
- package/dist/social/social.d.ts +7 -8
- package/dist/social/social.fixture.d.ts +5 -5
- package/dist/social/social.fixture.js +7 -7
- package/dist/social/social.fixture.js.map +1 -1
- package/dist/social/social.js +7 -8
- package/dist/social/social.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/user/user.d.ts +3 -3
- package/dist/user/user.fixture.d.ts +6 -6
- package/dist/user/user.fixture.js +6 -6
- package/dist/user/user.fixture.js.map +1 -1
- package/dist/user/user.js +5 -6
- package/dist/user/user.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -2
- package/src/authentication/authenticate.fixture.ts +11 -11
- package/src/authentication/authenticate.test.ts +1 -1
- package/src/authentication/authenticate.ts +10 -16
- package/src/connection/connection.fixture.ts +2 -2
- package/src/connection/connection.ts +3 -3
- package/src/effect.ts +2 -2
- package/src/email/email.fixture.ts +3 -3
- package/src/email/email.ts +2 -2
- package/src/registration/register.fixture.ts +11 -11
- package/src/registration/register.test.ts +1 -1
- package/src/registration/register.ts +11 -13
- package/src/rpc/client.ts +1 -1
- package/src/rpc/connection.ts +4 -2
- package/src/rpc/{authentication.ts → passkey/authentication.ts} +22 -13
- package/src/rpc/passkey/registration.ts +52 -0
- package/src/rpc/social.ts +24 -14
- package/src/rpc/user.ts +23 -12
- package/src/social/social.fixture.ts +7 -8
- package/src/social/social.test.ts +8 -8
- package/src/social/social.ts +13 -16
- package/src/user/user.fixture.ts +10 -10
- package/src/user/user.ts +7 -9
- package/dist/rpc/authentication.js +0 -16
- package/dist/rpc/authentication.js.map +0 -1
- package/dist/rpc/registration.js +0 -16
- package/dist/rpc/registration.js.map +0 -1
- package/src/rpc/registration.ts +0 -41
package/README.md
CHANGED
|
@@ -105,7 +105,7 @@ if (!PasslockError.isError(result)) {
|
|
|
105
105
|
|
|
106
106
|
### Backend verification
|
|
107
107
|
|
|
108
|
-
Verify the token and obtain the passkey registration or authentication details. You can make a simple GET request to `https://api.passlock.dev/{tenancyId}/token/{token}` or use the [@passlock/node][node] library:
|
|
108
|
+
Verify the token and obtain the passkey registration or authentication details. You can make a simple GET request to `https://api.v1.passlock.dev/{tenancyId}/token/{token}` or use the [@passlock/node][node] library:
|
|
109
109
|
|
|
110
110
|
```typescript
|
|
111
111
|
import { Passlock } from '@passlock/node'
|
package/README.template.md
CHANGED
|
@@ -105,7 +105,7 @@ if (!PasslockError.isError(result)) {
|
|
|
105
105
|
|
|
106
106
|
### Backend verification
|
|
107
107
|
|
|
108
|
-
Verify the token and obtain the passkey registration or authentication details. You can make a simple GET request to `https://api.passlock.dev/{tenancyId}/token/{token}` or use the [@passlock/node][node] library:
|
|
108
|
+
Verify the token and obtain the passkey registration or authentication details. You can make a simple GET request to `https://api.v1.passlock.dev/{tenancyId}/token/{token}` or use the [@passlock/node][node] library:
|
|
109
109
|
|
|
110
110
|
```typescript
|
|
111
111
|
import { Passlock } from '@passlock/node'
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import { Context, Effect as E, Layer } from 'effect';
|
|
2
2
|
import { InternalBrowserError, type NotSupported } from '@passlock/shared/dist/error/error.js';
|
|
3
|
-
import
|
|
3
|
+
import * as RPC from '../rpc/passkey/authentication.js';
|
|
4
4
|
import type { AuthenticationCredential } from '@passlock/shared/dist/schema/passkey.js';
|
|
5
5
|
import type { Principal } from '@passlock/shared/dist/schema/principal.js';
|
|
6
6
|
import { Capabilities } from '../capabilities/capabilities.js';
|
|
7
|
-
import { AuthenticationClient } from '../rpc/authentication.js';
|
|
8
7
|
import { StorageService } from '../storage/storage.js';
|
|
9
|
-
export type AuthenticationRequest =
|
|
10
|
-
export type AuthenticationErrors = NotSupported | OptionsErrors | VerificationErrors;
|
|
8
|
+
export type AuthenticationRequest = RPC.OptionsRequest;
|
|
9
|
+
export type AuthenticationErrors = NotSupported | RPC.OptionsErrors | RPC.VerificationErrors;
|
|
11
10
|
declare const GetCredential_base: Context.TagClass<GetCredential, "@services/GetCredential", {
|
|
12
11
|
getCredential: (request: CredentialRequestOptions) => E.Effect<AuthenticationCredential, InternalBrowserError>;
|
|
13
12
|
}>;
|
|
@@ -18,7 +17,7 @@ declare const AuthenticationService_base: Context.TagClass<AuthenticationService
|
|
|
18
17
|
}>;
|
|
19
18
|
export declare class AuthenticationService extends AuthenticationService_base {
|
|
20
19
|
}
|
|
21
|
-
type Dependencies = GetCredential | Capabilities | StorageService | AuthenticationClient;
|
|
20
|
+
type Dependencies = GetCredential | Capabilities | StorageService | RPC.AuthenticationClient;
|
|
22
21
|
export declare const authenticatePasskey: (request: AuthenticationRequest) => E.Effect<Principal, AuthenticationErrors, Dependencies>;
|
|
23
|
-
export declare const AuthenticateServiceLive: Layer.Layer<AuthenticationService, never,
|
|
22
|
+
export declare const AuthenticateServiceLive: Layer.Layer<AuthenticationService, never, RPC.AuthenticationClient | Capabilities | StorageService | GetCredential>;
|
|
24
23
|
export {};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Layer as L } from 'effect';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { OptionsResponse, VerificationRequest, VerificationResponse } from '@passlock/shared/dist/rpc/passkey/authentication.js';
|
|
3
|
+
import { IsExistingUserResponse, VerifyEmailResponse } from '@passlock/shared/dist/rpc/user.js';
|
|
4
4
|
import type { AuthenticationCredential } from '@passlock/shared/dist/schema/passkey.js';
|
|
5
|
-
import { AuthenticationClient } from '../rpc/authentication.js';
|
|
5
|
+
import { AuthenticationClient } from '../rpc/passkey/authentication.js';
|
|
6
6
|
import { type AuthenticationRequest, GetCredential } from './authenticate.js';
|
|
7
7
|
export declare const session = "session";
|
|
8
8
|
export declare const token = "token";
|
|
@@ -10,12 +10,12 @@ export declare const code = "code";
|
|
|
10
10
|
export declare const authType = "passkey";
|
|
11
11
|
export declare const expireAt: number;
|
|
12
12
|
export declare const request: AuthenticationRequest;
|
|
13
|
-
export declare const rpcOptionsRes:
|
|
13
|
+
export declare const rpcOptionsRes: OptionsResponse;
|
|
14
14
|
export declare const credential: AuthenticationCredential;
|
|
15
|
-
export declare const rpcVerificationReq:
|
|
16
|
-
export declare const rpcVerificationRes:
|
|
17
|
-
export declare const rpcIsExistingUserRes:
|
|
18
|
-
export declare const rpcVerifyEmailRes:
|
|
15
|
+
export declare const rpcVerificationReq: VerificationRequest;
|
|
16
|
+
export declare const rpcVerificationRes: VerificationResponse;
|
|
17
|
+
export declare const rpcIsExistingUserRes: IsExistingUserResponse;
|
|
18
|
+
export declare const rpcVerifyEmailRes: VerifyEmailResponse;
|
|
19
19
|
export declare const getCredentialTest: L.Layer<GetCredential, never, never>;
|
|
20
20
|
export declare const rpcClientTest: L.Layer<AuthenticationClient, never, never>;
|
|
21
21
|
export declare const principal: {
|
|
@@ -24,8 +24,8 @@ export declare const principal: {
|
|
|
24
24
|
readonly familyName?: string;
|
|
25
25
|
readonly emailVerified?: boolean;
|
|
26
26
|
readonly user?: {
|
|
27
|
-
readonly id: string;
|
|
28
27
|
readonly email: string;
|
|
28
|
+
readonly id: string;
|
|
29
29
|
readonly givenName: string;
|
|
30
30
|
readonly familyName: string;
|
|
31
31
|
readonly emailVerified: boolean;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Effect as E, Layer as L, Option as O } from 'effect';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { OptionsResponse, VerificationRequest, VerificationResponse, } from '@passlock/shared/dist/rpc/passkey/authentication.js';
|
|
3
|
+
import { IsExistingUserResponse, VerifyEmailResponse } from '@passlock/shared/dist/rpc/user.js';
|
|
4
4
|
import * as Fixtures from '../test/fixtures.js';
|
|
5
|
-
import { AuthenticationClient } from '../rpc/authentication.js';
|
|
5
|
+
import { AuthenticationClient } from '../rpc/passkey/authentication.js';
|
|
6
6
|
import { GetCredential } from './authenticate.js';
|
|
7
7
|
export const session = 'session';
|
|
8
8
|
export const token = 'token';
|
|
@@ -13,7 +13,7 @@ export const request = {
|
|
|
13
13
|
userVerification: O.some('preferred'),
|
|
14
14
|
email: O.none(),
|
|
15
15
|
};
|
|
16
|
-
export const rpcOptionsRes = new
|
|
16
|
+
export const rpcOptionsRes = new OptionsResponse({
|
|
17
17
|
session,
|
|
18
18
|
publicKey: {
|
|
19
19
|
rpId: 'passlock.dev',
|
|
@@ -35,10 +35,10 @@ export const credential = {
|
|
|
35
35
|
clientExtensionResults: {},
|
|
36
36
|
authenticatorAttachment: null,
|
|
37
37
|
};
|
|
38
|
-
export const rpcVerificationReq = new
|
|
39
|
-
export const rpcVerificationRes = new
|
|
40
|
-
export const rpcIsExistingUserRes = new
|
|
41
|
-
export const rpcVerifyEmailRes = new
|
|
38
|
+
export const rpcVerificationReq = new VerificationRequest({ session, credential });
|
|
39
|
+
export const rpcVerificationRes = new VerificationResponse({ principal: Fixtures.principal });
|
|
40
|
+
export const rpcIsExistingUserRes = new IsExistingUserResponse({ existingUser: true, detail: O.none() });
|
|
41
|
+
export const rpcVerifyEmailRes = new VerifyEmailResponse({ principal: Fixtures.principal });
|
|
42
42
|
export const getCredentialTest = L.succeed(GetCredential, GetCredential.of({ getCredential: () => E.succeed(credential) }));
|
|
43
43
|
export const rpcClientTest = L.succeed(AuthenticationClient, AuthenticationClient.of({
|
|
44
44
|
getAuthenticationOptions: () => E.succeed(rpcOptionsRes),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authenticate.fixture.js","sourceRoot":"","sources":["../../src/authentication/authenticate.fixture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE7D,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"authenticate.fixture.js","sourceRoot":"","sources":["../../src/authentication/authenticate.fixture.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,9 +4,8 @@
|
|
|
4
4
|
import { parseRequestOptionsFromJSON, } from '@github/webauthn-json/browser-ponyfill';
|
|
5
5
|
import { Context, Effect as E, Layer, flow, pipe } from 'effect';
|
|
6
6
|
import { InternalBrowserError } from '@passlock/shared/dist/error/error.js';
|
|
7
|
-
import
|
|
7
|
+
import * as RPC from '../rpc/passkey/authentication.js';
|
|
8
8
|
import { Capabilities } from '../capabilities/capabilities.js';
|
|
9
|
-
import { AuthenticationClient } from '../rpc/authentication.js';
|
|
10
9
|
import { StorageService } from '../storage/storage.js';
|
|
11
10
|
/* Dependencies */
|
|
12
11
|
export class GetCredential extends Context.Tag('@services/GetCredential')() {
|
|
@@ -18,7 +17,7 @@ export class AuthenticationService extends Context.Tag('@services/Authentication
|
|
|
18
17
|
const fetchOptions = (request) => {
|
|
19
18
|
return E.gen(function* (_) {
|
|
20
19
|
yield* _(E.logDebug('Making request'));
|
|
21
|
-
const rpcClient = yield* _(AuthenticationClient);
|
|
20
|
+
const rpcClient = yield* _(RPC.AuthenticationClient);
|
|
22
21
|
const { publicKey, session } = yield* _(rpcClient.getAuthenticationOptions(request));
|
|
23
22
|
yield* _(E.logDebug('Converting Passlock options to CredentialRequestOptions'));
|
|
24
23
|
const options = yield* _(toRequestOptions({ publicKey }));
|
|
@@ -34,7 +33,7 @@ const toRequestOptions = (request) => {
|
|
|
34
33
|
const verifyCredential = (request) => {
|
|
35
34
|
return E.gen(function* (_) {
|
|
36
35
|
yield* _(E.logDebug('Making request'));
|
|
37
|
-
const rpcClient = yield* _(AuthenticationClient);
|
|
36
|
+
const rpcClient = yield* _(RPC.AuthenticationClient);
|
|
38
37
|
const { principal } = yield* _(rpcClient.verifyAuthenticationCredential(request));
|
|
39
38
|
return principal;
|
|
40
39
|
});
|
|
@@ -50,7 +49,7 @@ export const authenticatePasskey = (request) => {
|
|
|
50
49
|
const { getCredential } = yield* _(GetCredential);
|
|
51
50
|
const credential = yield* _(getCredential(options));
|
|
52
51
|
yield* _(E.logInfo('Verifying credential with Passlock'));
|
|
53
|
-
const principal = yield* _(verifyCredential(new
|
|
52
|
+
const principal = yield* _(verifyCredential(new RPC.VerificationRequest({ credential, session })));
|
|
54
53
|
const storageService = yield* _(StorageService);
|
|
55
54
|
yield* _(storageService.storeToken(principal));
|
|
56
55
|
yield* _(E.logDebug('Stored token in local storage'));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authenticate.js","sourceRoot":"","sources":["../../src/authentication/authenticate.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAEL,2BAA2B,GAC5B,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAEhE,OAAO,EAAE,oBAAoB,EAAqB,MAAM,sCAAsC,CAAA;AAC9F,OAAO,
|
|
1
|
+
{"version":3,"file":"authenticate.js","sourceRoot":"","sources":["../../src/authentication/authenticate.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,12 +4,12 @@
|
|
|
4
4
|
import { Context, Effect as E, Layer } from 'effect';
|
|
5
5
|
import { Dispatcher } from '../rpc/client.js';
|
|
6
6
|
import type { RpcConfig } from '../rpc/config.js';
|
|
7
|
-
import
|
|
7
|
+
import * as RPC from '../rpc/connection.js';
|
|
8
8
|
declare const ConnectionService_base: Context.TagClass<ConnectionService, "@services/ConnectionService", {
|
|
9
9
|
preConnect: () => E.Effect<void>;
|
|
10
10
|
}>;
|
|
11
11
|
export declare class ConnectionService extends ConnectionService_base {
|
|
12
12
|
}
|
|
13
|
-
export declare const preConnect: () => E.Effect<void, never, Dispatcher | ConnectionClient>;
|
|
14
|
-
export declare const ConnectionServiceLive: Layer.Layer<ConnectionService, never, RpcConfig | Dispatcher | ConnectionClient>;
|
|
13
|
+
export declare const preConnect: () => E.Effect<void, never, Dispatcher | RPC.ConnectionClient>;
|
|
14
|
+
export declare const ConnectionServiceLive: Layer.Layer<ConnectionService, never, RpcConfig | Dispatcher | RPC.ConnectionClient>;
|
|
15
15
|
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Layer as L } from 'effect';
|
|
2
|
-
import {
|
|
2
|
+
import { ConnectResponse } from '@passlock/shared/dist/rpc/connection.js';
|
|
3
3
|
import { ConnectionClient } from '../rpc/connection.js';
|
|
4
|
-
export declare const preConnectRes:
|
|
4
|
+
export declare const preConnectRes: ConnectResponse;
|
|
5
5
|
export declare const rpcClientTest: L.Layer<ConnectionClient, never, never>;
|
|
6
6
|
export declare const rpcConfig: {
|
|
7
7
|
endpoint: string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Effect as E, Layer as L } from 'effect';
|
|
2
|
-
import {
|
|
2
|
+
import { ConnectResponse } from '@passlock/shared/dist/rpc/connection.js';
|
|
3
3
|
import { ConnectionClient } from '../rpc/connection.js';
|
|
4
|
-
export const preConnectRes = new
|
|
4
|
+
export const preConnectRes = new ConnectResponse({ warmed: true });
|
|
5
5
|
export const rpcClientTest = L.succeed(ConnectionClient, ConnectionClient.of({
|
|
6
6
|
preConnect: () => E.succeed(preConnectRes),
|
|
7
7
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.fixture.js","sourceRoot":"","sources":["../../src/connection/connection.fixture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEhD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"connection.fixture.js","sourceRoot":"","sources":["../../src/connection/connection.fixture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEhD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAA;AAEzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEvD,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,eAAe,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;AAElE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,OAAO,CACpC,gBAAgB,EAChB,gBAAgB,CAAC,EAAE,CAAC;IAClB,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;CAC3C,CAAC,CACH,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,QAAQ,EAAE,qBAAqB;IAC/B,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,UAAU;CACrB,CAAA"}
|
|
@@ -3,13 +3,13 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Context, Effect as E, Layer, flow, pipe } from 'effect';
|
|
5
5
|
import { Dispatcher } from '../rpc/client.js';
|
|
6
|
-
import
|
|
6
|
+
import * as RPC from '../rpc/connection.js';
|
|
7
7
|
/* Service */
|
|
8
8
|
export class ConnectionService extends Context.Tag('@services/ConnectionService')() {
|
|
9
9
|
}
|
|
10
10
|
/* Effects */
|
|
11
11
|
const hitPrincipal = pipe(E.logInfo('Pre-connecting to Principal endpoint'), E.zipRight(Dispatcher), E.flatMap(dispatcher => dispatcher.get('/token/token?warm=true')), E.asVoid, E.catchAll(() => E.void));
|
|
12
|
-
const hitRpc = pipe(E.logInfo('Pre-connecting to RPC endpoint'), E.zipRight(ConnectionClient), E.flatMap(rpcClient => rpcClient.preConnect()), E.asVoid);
|
|
12
|
+
const hitRpc = pipe(E.logInfo('Pre-connecting to RPC endpoint'), E.zipRight(RPC.ConnectionClient), E.flatMap(rpcClient => rpcClient.preConnect()), E.asVoid);
|
|
13
13
|
export const preConnect = () => pipe(E.all([hitPrincipal, hitRpc], { concurrency: 2 }), E.asVoid);
|
|
14
14
|
/* Live */
|
|
15
15
|
/* v8 ignore start */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/connection/connection.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAEhE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,OAAO,
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/connection/connection.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAEhE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,OAAO,KAAK,GAAG,MAAM,sBAAsB,CAAA;AAE3C,aAAa;AAEb,MAAM,OAAO,iBAAkB,SAAQ,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,EAK9E;CAAG;AAEN,aAAa;AAEb,MAAM,YAAY,GAAG,IAAI,CACvB,CAAC,CAAC,OAAO,CAAC,sCAAsC,CAAC,EACjD,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EACtB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,EACjE,CAAC,CAAC,MAAM,EACR,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CACzB,CAAA;AAED,MAAM,MAAM,GAAG,IAAI,CACjB,CAAC,CAAC,OAAO,CAAC,gCAAgC,CAAC,EAC3C,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAChC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,EAC9C,CAAC,CAAC,MAAM,CACT,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjG,UAAU;AAEV,qBAAqB;AACrB,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC,MAAM,CAC/C,iBAAiB,EACjB,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;IAChB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAiD,CAAC,CAAA;IAEpF,OAAO,iBAAiB,CAAC,EAAE,CAAC;QAC1B,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;KACjD,CAAC,CAAA;AACJ,CAAC,CAAC,CACH,CAAA;AACD,oBAAoB"}
|
package/dist/effect.js
CHANGED
|
@@ -6,11 +6,11 @@ import { Capabilities, capabilitiesLive } from './capabilities/capabilities.js';
|
|
|
6
6
|
import { ConnectionService, ConnectionServiceLive } from './connection/connection.js';
|
|
7
7
|
import { EmailService, EmailServiceLive, URLQueryString, } from './email/email.js';
|
|
8
8
|
import { CreateCredential, RegistrationService, RegistrationServiceLive, } from './registration/register.js';
|
|
9
|
-
import { AuthenticationClientLive } from './rpc/authentication.js';
|
|
9
|
+
import { AuthenticationClientLive } from './rpc/passkey/authentication.js';
|
|
10
10
|
import { DispatcherLive } from './rpc/client.js';
|
|
11
11
|
import { RetrySchedule } from './rpc/config.js';
|
|
12
12
|
import { ConnectionClientLive } from './rpc/connection.js';
|
|
13
|
-
import { RegistrationClientLive } from './rpc/registration.js';
|
|
13
|
+
import { RegistrationClientLive } from './rpc/passkey/registration.js';
|
|
14
14
|
import { SocialClientLive } from './rpc/social.js';
|
|
15
15
|
import { UserClientLive } from './rpc/user.js';
|
|
16
16
|
import { SocialService, SocialServiceLive, } from './social/social.js';
|
package/dist/effect.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"effect.js","sourceRoot":"","sources":["../src/effect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,aAAa,EAAE,MAAM,wCAAwC,CAAA;AACrF,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAGvE,OAAO,EAEL,SAAS,EACT,oBAAoB,GACrB,MAAM,sCAAsC,CAAA;AAG7C,OAAO,EACL,uBAAuB,EAGvB,qBAAqB,EACrB,aAAa,GACd,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAC/E,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACrF,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,cAAc,GAGf,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,gBAAgB,EAGhB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"effect.js","sourceRoot":"","sources":["../src/effect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,aAAa,EAAE,MAAM,wCAAwC,CAAA;AACrF,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAGvE,OAAO,EAEL,SAAS,EACT,oBAAoB,GACrB,MAAM,sCAAsC,CAAA;AAG7C,OAAO,EACL,uBAAuB,EAGvB,qBAAqB,EACrB,aAAa,GACd,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAC/E,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACrF,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,cAAc,GAGf,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,gBAAgB,EAGhB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAA;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAKL,aAAa,EACb,iBAAiB,GAClB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAEL,cAAc,EACd,cAAc,EACd,kBAAkB,GAEnB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAIL,WAAW,EACX,eAAe,GAChB,MAAM,gBAAgB,CAAA;AAEvB,YAAY;AAEZ,MAAM,oBAAoB,GAAG,CAAC,CAAC,OAAO,CACpC,gBAAgB,EAChB,gBAAgB,CAAC,EAAE,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC,EAAE,CAC1B,IAAI,CACF,CAAC,CAAC,UAAU,CAAC;QACX,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;QAC1B,KAAK,EAAE,CAAC,CAAC,EAAE;YACT,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;gBACnE,OAAO,IAAI,SAAS,CAAC;oBACnB,OAAO,EAAE,4DAA4D;iBACtE,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,oBAAoB,CAAC;oBAC9B,OAAO,EAAE,6BAA6B;oBACtC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;iBAClB,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;KACF,CAAC,EACF,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CACzC;CACJ,CAAC,CACH,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,CAAC,OAAO,CACjC,aAAa,EACb,aAAa,CAAC,EAAE,CAAC;IACf,aAAa,EAAE,CAAC,OAAiC,EAAE,EAAE,CACnD,IAAI,CACF,CAAC,CAAC,UAAU,CAAC;QACX,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC;QACjC,KAAK,EAAE,CAAC,CAAC,EAAE,CACT,IAAI,oBAAoB,CAAC;YACvB,OAAO,EAAE,yCAAyC;YAClD,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;SAClB,CAAC;KACL,CAAC,EACF,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CACzC;CACJ,CAAC,CACH,CAAA;AAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAA;AAE3F,MAAM,iBAAiB,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;AAElF,cAAc;AACd,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAA;AACzE,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAA;AAC/E,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAA;AAClF,MAAM,sBAAsB,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAA;AACxF,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAA;AAC1E,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAA;AACtE,MAAM,kBAAkB,GAAG,kBAAkB,CAAA;AAC7C,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAA;AAExE,MAAM,uBAAuB,GAAG,IAAI,CAClC,uBAAuB,EACvB,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAC7B,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,EAC1B,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC3B,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAC/B,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAED,MAAM,yBAAyB,GAAG,IAAI,CACpC,uBAAuB,EACvB,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,EACjC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC3B,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAC5B,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAED,MAAM,qBAAqB,GAAG,IAAI,CAChC,qBAAqB,EACrB,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAC5B,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAC1B,CAAA;AAED,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CACtC,cAAc,EACd,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CACnE,CAAA;AAED,MAAM,gBAAgB,GAAG,IAAI,CAC3B,gBAAgB,EAChB,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAC7B,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,EACzB,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC3B,CAAC,CAAC,OAAO,CAAC,yBAAyB,CAAC,EACpC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAA;AAE9E,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC,QAAQ,CAC3C,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,CAClB,CAAA;AAED,MAAM,kBAAkB,GAAG,KAAK,CAAC,MAAM,CACrC,cAAc,EACd,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CACzD,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,GAAqC,EAAE,CAC/D,IAAI,CACF,iBAAiB,EACjB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,EAC1C,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,CACjC,CAAA;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAsB,IAAI,CACrD,YAAY,EACZ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC9C,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAC5B,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAAc,EAA4C,EAAE,CACzF,IAAI,CACF,WAAW,EACX,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EACrD,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAC3B,CAAA;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,OAA4B,EACwB,EAAE,CACtD,IAAI,CACF,mBAAmB,EACnB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,EACtD,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC,EAClC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,OAA8B,EACwB,EAAE,CACxD,IAAI,CACF,qBAAqB,EACrB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,EAC1D,CAAC,CAAC,OAAO,CAAC,yBAAyB,CAAC,EACpC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,OAAsB,EAC6B,EAAE,CACrD,IAAI,CACF,YAAY,EACZ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,EACtD,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC3B,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAEH,MAAM,CAAC,MAAM,eAAe,GAAsD,IAAI,CACpF,YAAY,EACZ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,EAC/C,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAC3B,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,OAAoB,EAC0B,EAAE,CAChD,IAAI,CACF,WAAW,EACX,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,EAC9D,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,EAC1B,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,QAAkB,EAC6B,EAAE,CACjD,IAAI,CACF,cAAc,EACd,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAChD,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAC7B,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAmB,IAAI,CACpD,cAAc,EACd,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAChD,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAC7B,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAC9B,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,OAAwB,EACgC,EAAE,CAC1D,IAAI,CACF,aAAa,EACb,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,EACnD,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAC7B,CAAA;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,OAA4B,EAC8B,EAAE,CAC5D,IAAI,CACF,aAAa,EACb,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,EACvD,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAC7B,CAAA"}
|
package/dist/email/email.d.ts
CHANGED
|
@@ -42,8 +42,8 @@ export declare const verifyEmailLink: () => E.Effect<{
|
|
|
42
42
|
readonly familyName?: string;
|
|
43
43
|
readonly emailVerified?: boolean;
|
|
44
44
|
readonly user?: {
|
|
45
|
-
readonly id: string;
|
|
46
45
|
readonly email: string;
|
|
46
|
+
readonly id: string;
|
|
47
47
|
readonly givenName: string;
|
|
48
48
|
readonly familyName: string;
|
|
49
49
|
readonly emailVerified: boolean;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Layer as L } from 'effect';
|
|
2
|
-
import {
|
|
2
|
+
import { VerifyEmailRequest, VerifyEmailResponse } from '@passlock/shared/dist/rpc/user.js';
|
|
3
3
|
import { AuthenticationService } from '../authentication/authenticate.js';
|
|
4
4
|
import { UserClient } from '../rpc/user.js';
|
|
5
5
|
import { URLQueryString } from './email.js';
|
|
@@ -9,8 +9,8 @@ export declare const authType = "passkey";
|
|
|
9
9
|
export declare const expireAt: number;
|
|
10
10
|
export declare const locationSearchTest: L.Layer<URLQueryString, never, never>;
|
|
11
11
|
export declare const authenticationServiceTest: L.Layer<AuthenticationService, never, never>;
|
|
12
|
-
export declare const rpcVerifyEmailReq:
|
|
13
|
-
export declare const rpcVerifyEmailRes:
|
|
12
|
+
export declare const rpcVerifyEmailReq: VerifyEmailRequest;
|
|
13
|
+
export declare const rpcVerifyEmailRes: VerifyEmailResponse;
|
|
14
14
|
export declare const rpcClientTest: L.Layer<UserClient, never, never>;
|
|
15
15
|
export declare const principal: {
|
|
16
16
|
readonly email?: string;
|
|
@@ -18,8 +18,8 @@ export declare const principal: {
|
|
|
18
18
|
readonly familyName?: string;
|
|
19
19
|
readonly emailVerified?: boolean;
|
|
20
20
|
readonly user?: {
|
|
21
|
-
readonly id: string;
|
|
22
21
|
readonly email: string;
|
|
22
|
+
readonly id: string;
|
|
23
23
|
readonly givenName: string;
|
|
24
24
|
readonly familyName: string;
|
|
25
25
|
readonly emailVerified: boolean;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Effect as E, Layer as L, Option as O } from 'effect';
|
|
2
|
-
import {
|
|
2
|
+
import { VerifyEmailRequest, VerifyEmailResponse } from '@passlock/shared/dist/rpc/user.js';
|
|
3
3
|
import * as Fixtures from '../test/fixtures.js';
|
|
4
4
|
import { AuthenticationService } from '../authentication/authenticate.js';
|
|
5
5
|
import { UserClient } from '../rpc/user.js';
|
|
@@ -12,8 +12,8 @@ export const locationSearchTest = L.succeed(URLQueryString, URLQueryString.of(E.
|
|
|
12
12
|
export const authenticationServiceTest = L.succeed(AuthenticationService, AuthenticationService.of({
|
|
13
13
|
authenticatePasskey: () => E.succeed(Fixtures.principal),
|
|
14
14
|
}));
|
|
15
|
-
export const rpcVerifyEmailReq = new
|
|
16
|
-
export const rpcVerifyEmailRes = new
|
|
15
|
+
export const rpcVerifyEmailReq = new VerifyEmailRequest({ token, code });
|
|
16
|
+
export const rpcVerifyEmailRes = new VerifyEmailResponse({ principal: Fixtures.principal });
|
|
17
17
|
export const rpcClientTest = L.succeed(UserClient, UserClient.of({
|
|
18
18
|
isExistingUser: () => E.succeed({ existingUser: true, detail: O.none() }),
|
|
19
19
|
verifyEmail: () => E.succeed(rpcVerifyEmailRes),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.fixture.js","sourceRoot":"","sources":["../../src/email/email.fixture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE7D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"email.fixture.js","sourceRoot":"","sources":["../../src/email/email.fixture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE7D,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AAE3F,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAA;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE3C,MAAM,CAAC,MAAM,KAAK,GAAG,OAAO,CAAA;AAC5B,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAA;AAC1B,MAAM,CAAC,MAAM,QAAQ,GAAG,SAAS,CAAA;AACjC,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;AAE1C,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,OAAO,CACzC,cAAc,EACd,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAC9C,CAAA;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,OAAO,CAChD,qBAAqB,EACrB,qBAAqB,CAAC,EAAE,CAAC;IACvB,mBAAmB,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;CACzD,CAAC,CACH,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,kBAAkB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;AAExE,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,mBAAmB,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAA;AAE3F,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,OAAO,CACpC,UAAU,EACV,UAAU,CAAC,EAAE,CAAC;IACZ,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;IACzE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC;IAC/C,uBAAuB,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;CAC/D,CAAC,CACH,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;AAE3C,MAAM,CAAC,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAA;AAE/C,MAAM,CAAC,MAAM,kBAAkB,GAAG,QAAQ,CAAC,kBAAkB,CAAA"}
|
package/dist/email/email.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Context, Effect as E, Layer, Option as O, flow, identity, pipe } from 'effect';
|
|
5
5
|
import { BadRequest } from '@passlock/shared/dist/error/error.js';
|
|
6
|
-
import {
|
|
6
|
+
import { VerifyEmailRequest } from '@passlock/shared/dist/rpc/user.js';
|
|
7
7
|
import { AuthenticationService } from '../authentication/authenticate.js';
|
|
8
8
|
import { UserClient } from '../rpc/user.js';
|
|
9
9
|
import { StorageService } from '../storage/storage.js';
|
|
@@ -61,7 +61,7 @@ export const verifyEmail = (request) => {
|
|
|
61
61
|
const { token } = yield* _(getToken());
|
|
62
62
|
yield* _(E.logDebug('Making request'));
|
|
63
63
|
const client = yield* _(UserClient);
|
|
64
|
-
const { principal } = yield* _(client.verifyEmail(new
|
|
64
|
+
const { principal } = yield* _(client.verifyEmail(new VerifyEmailRequest({ token, code: request.code })));
|
|
65
65
|
return principal;
|
|
66
66
|
});
|
|
67
67
|
};
|
package/dist/email/email.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/email/email.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAEvF,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAA;AAEjE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/email/email.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAEvF,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAA;AAEjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAA;AAGtE,OAAO,EAA6B,qBAAqB,EAAE,MAAM,mCAAmC,CAAA;AACpG,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAoB,MAAM,uBAAuB,CAAA;AAYxE,kBAAkB;AAElB,MAAM,OAAO,cAAe,SAAQ,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAGrE;CAAG;AAEN,aAAa;AAEb,MAAM,OAAO,YAAa,SAAQ,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,EAMpE;CAAG;AAMN;;;;GAIG;AACH,MAAM,QAAQ,GAAG,GAAG,EAAE;IACpB,OAAO,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvB,2BAA2B;QAC3B,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAA;QAC/C,MAAM,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QACzD,MAAM,qBAAqB,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAA;QAE7D,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,cAAc,EAAE;YAC3C,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;YACpC,SAAS,EAAE,GAAG,EAAE;YACd,0CAA0C;YAC1C,IAAI,CACF,qBAAqB,CAAC,mBAAmB,CAAC;gBACxC,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;gBACrC,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE;aAChB,CAAC,EACF,CAAC,CAAC,GAAG,CACH,SAAS,CAAC,EAAE,CACV,CAAC;gBACC,KAAK,EAAE,SAAS,CAAC,GAAG;gBACpB,QAAQ,EAAE,SAAS,CAAC,QAAQ;gBAC5B,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE;aAChC,CAAgB,CACpB,CACF;SACJ,CAAC,CAAA;QAEF,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;QAC9B,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAA;QAE9C,OAAO,KAAK,CAAA;IACd,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,EAAE;IACtC,OAAO,IAAI,CACT,cAAc,EACd,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EACnB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC,EAC5C,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CACxD,CAAA;AACH,CAAC,CAAA;AAED,aAAa;AAEb;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,OAAsB,EACgC,EAAE;IACxD,OAAO,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvB,uCAAuC;QACvC,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;QAEtC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAA;QACtC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;QACnC,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAC5B,MAAM,CAAC,WAAW,CAAC,IAAI,kBAAkB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAC1E,CAAA;QAED,OAAO,SAAS,CAAA;IAClB,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE,CAClC,IAAI,CACF,mBAAmB,EAAE,EACrB,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,UAAU,CAAC,EAAE,OAAO,EAAE,uCAAuC,EAAE,CAAC,CAAC,EACtF,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CACzC,CAAA;AAEH,UAAU;AAEV,qBAAqB;AACrB,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAC1C,YAAY,EACZ,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;IAChB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CACtB,CAAC,CAAC,OAAO,EAAwE,CAClF,CAAA;IACD,OAAO,YAAY,CAAC,EAAE,CAAC;QACrB,eAAe,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACtD,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;KAC3D,CAAC,CAAA;AACJ,CAAC,CAAC,CACH,CAAA;AACD,oBAAoB"}
|
package/dist/index.d.ts
CHANGED
|
@@ -67,8 +67,8 @@ export declare class PasslockUnsafe {
|
|
|
67
67
|
readonly familyName?: string;
|
|
68
68
|
readonly emailVerified?: boolean;
|
|
69
69
|
readonly user?: {
|
|
70
|
-
readonly id: string;
|
|
71
70
|
readonly email: string;
|
|
71
|
+
readonly id: string;
|
|
72
72
|
readonly givenName: string;
|
|
73
73
|
readonly familyName: string;
|
|
74
74
|
readonly emailVerified: boolean;
|
|
@@ -97,8 +97,8 @@ export declare class PasslockUnsafe {
|
|
|
97
97
|
readonly familyName?: string;
|
|
98
98
|
readonly emailVerified?: boolean;
|
|
99
99
|
readonly user?: {
|
|
100
|
-
readonly id: string;
|
|
101
100
|
readonly email: string;
|
|
101
|
+
readonly id: string;
|
|
102
102
|
readonly givenName: string;
|
|
103
103
|
readonly familyName: string;
|
|
104
104
|
readonly emailVerified: boolean;
|
|
@@ -144,8 +144,8 @@ export declare class Passlock {
|
|
|
144
144
|
readonly familyName?: string;
|
|
145
145
|
readonly emailVerified?: boolean;
|
|
146
146
|
readonly user?: {
|
|
147
|
-
readonly id: string;
|
|
148
147
|
readonly email: string;
|
|
148
|
+
readonly id: string;
|
|
149
149
|
readonly givenName: string;
|
|
150
150
|
readonly familyName: string;
|
|
151
151
|
readonly emailVerified: boolean;
|
|
@@ -174,8 +174,8 @@ export declare class Passlock {
|
|
|
174
174
|
readonly familyName?: string;
|
|
175
175
|
readonly emailVerified?: boolean;
|
|
176
176
|
readonly user?: {
|
|
177
|
-
readonly id: string;
|
|
178
177
|
readonly email: string;
|
|
178
|
+
readonly id: string;
|
|
179
179
|
readonly givenName: string;
|
|
180
180
|
readonly familyName: string;
|
|
181
181
|
readonly emailVerified: boolean;
|
|
@@ -1,27 +1,25 @@
|
|
|
1
1
|
import { Context, Effect as E, Layer } from 'effect';
|
|
2
2
|
import type { Duplicate, NotSupported } from '@passlock/shared/dist/error/error.js';
|
|
3
3
|
import { InternalBrowserError } from '@passlock/shared/dist/error/error.js';
|
|
4
|
-
import
|
|
5
|
-
import { OptionsReq } from '@passlock/shared/dist/rpc/registration.js';
|
|
4
|
+
import * as RPC from '../rpc/passkey/registration.js';
|
|
6
5
|
import type { RegistrationCredential } from '@passlock/shared/dist/schema/passkey.js';
|
|
7
6
|
import type { Principal } from '@passlock/shared/dist/schema/principal.js';
|
|
8
7
|
import { Capabilities } from '../capabilities/capabilities.js';
|
|
9
|
-
import { RegistrationClient } from '../rpc/registration.js';
|
|
10
8
|
import { StorageService } from '../storage/storage.js';
|
|
11
9
|
import type { UserService } from '../user/user.js';
|
|
12
|
-
export type RegistrationRequest =
|
|
10
|
+
export type RegistrationRequest = RPC.OptionsRequest;
|
|
13
11
|
declare const CreateCredential_base: Context.TagClass<CreateCredential, "@services/CreateCredential", {
|
|
14
12
|
createCredential: (request: CredentialCreationOptions) => E.Effect<RegistrationCredential, InternalBrowserError | Duplicate>;
|
|
15
13
|
}>;
|
|
16
14
|
export declare class CreateCredential extends CreateCredential_base {
|
|
17
15
|
}
|
|
18
|
-
export type RegistrationErrors = NotSupported | OptionsErrors | VerificationErrors;
|
|
16
|
+
export type RegistrationErrors = NotSupported | RPC.OptionsErrors | RPC.VerificationErrors;
|
|
19
17
|
declare const RegistrationService_base: Context.TagClass<RegistrationService, "@services/RegistrationService", {
|
|
20
18
|
registerPasskey: (request: RegistrationRequest) => E.Effect<Principal, RegistrationErrors>;
|
|
21
19
|
}>;
|
|
22
20
|
export declare class RegistrationService extends RegistrationService_base {
|
|
23
21
|
}
|
|
24
|
-
type Dependencies = Capabilities | CreateCredential | StorageService | UserService | RegistrationClient;
|
|
22
|
+
type Dependencies = Capabilities | CreateCredential | StorageService | UserService | RPC.RegistrationClient;
|
|
25
23
|
export declare const registerPasskey: (request: RegistrationRequest) => E.Effect<Principal, RegistrationErrors, Dependencies>;
|
|
26
|
-
export declare const RegistrationServiceLive: Layer.Layer<RegistrationService, never, Capabilities | StorageService | RegistrationClient | UserService | CreateCredential>;
|
|
24
|
+
export declare const RegistrationServiceLive: Layer.Layer<RegistrationService, never, Capabilities | StorageService | RPC.RegistrationClient | UserService | CreateCredential>;
|
|
27
25
|
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Layer as L } from 'effect';
|
|
2
|
-
import {
|
|
2
|
+
import { OptionsRequest, OptionsResponse, VerificationRequest, VerificationResponse } from '@passlock/shared/dist/rpc/passkey/registration.js';
|
|
3
3
|
import type { RegistrationCredential } from '@passlock/shared/dist/schema/passkey.js';
|
|
4
|
-
import { RegistrationClient } from '../rpc/registration.js';
|
|
4
|
+
import { RegistrationClient } from '../rpc/passkey/registration.js';
|
|
5
5
|
import { UserService } from '../user/user.js';
|
|
6
6
|
import { CreateCredential, type RegistrationRequest } from './register.js';
|
|
7
7
|
export declare const session = "session";
|
|
@@ -10,12 +10,12 @@ export declare const code = "code";
|
|
|
10
10
|
export declare const authType = "passkey";
|
|
11
11
|
export declare const expireAt: number;
|
|
12
12
|
export declare const registrationRequest: RegistrationRequest;
|
|
13
|
-
export declare const rpcOptionsReq:
|
|
14
|
-
export declare const registrationOptions:
|
|
15
|
-
export declare const rpcOptionsRes:
|
|
13
|
+
export declare const rpcOptionsReq: OptionsRequest;
|
|
14
|
+
export declare const registrationOptions: OptionsResponse;
|
|
15
|
+
export declare const rpcOptionsRes: OptionsResponse;
|
|
16
16
|
export declare const credential: RegistrationCredential;
|
|
17
|
-
export declare const rpcVerificationReq:
|
|
18
|
-
export declare const rpcVerificationRes:
|
|
17
|
+
export declare const rpcVerificationReq: VerificationRequest;
|
|
18
|
+
export declare const rpcVerificationRes: VerificationResponse;
|
|
19
19
|
export declare const createCredentialTest: L.Layer<CreateCredential, never, never>;
|
|
20
20
|
export declare const userServiceTest: L.Layer<UserService, never, never>;
|
|
21
21
|
export declare const rpcClientTest: L.Layer<RegistrationClient, never, never>;
|
|
@@ -25,8 +25,8 @@ export declare const principal: {
|
|
|
25
25
|
readonly familyName?: string;
|
|
26
26
|
readonly emailVerified?: boolean;
|
|
27
27
|
readonly user?: {
|
|
28
|
-
readonly id: string;
|
|
29
28
|
readonly email: string;
|
|
29
|
+
readonly id: string;
|
|
30
30
|
readonly givenName: string;
|
|
31
31
|
readonly familyName: string;
|
|
32
32
|
readonly emailVerified: boolean;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Effect as E, Layer as L, Option as O } from 'effect';
|
|
2
|
-
import {
|
|
2
|
+
import { OptionsRequest, OptionsResponse, VerificationRequest, VerificationResponse, } from '@passlock/shared/dist/rpc/passkey/registration.js';
|
|
3
3
|
import * as Fixtures from '../test/fixtures.js';
|
|
4
|
-
import { RegistrationClient } from '../rpc/registration.js';
|
|
4
|
+
import { RegistrationClient } from '../rpc/passkey/registration.js';
|
|
5
5
|
import { UserService } from '../user/user.js';
|
|
6
6
|
import { CreateCredential } from './register.js';
|
|
7
7
|
export const session = 'session';
|
|
@@ -16,7 +16,7 @@ export const registrationRequest = {
|
|
|
16
16
|
userVerification: O.none(),
|
|
17
17
|
verifyEmail: O.none(),
|
|
18
18
|
};
|
|
19
|
-
export const rpcOptionsReq = new
|
|
19
|
+
export const rpcOptionsReq = new OptionsRequest(registrationRequest);
|
|
20
20
|
export const registrationOptions = {
|
|
21
21
|
session,
|
|
22
22
|
publicKey: {
|
|
@@ -33,7 +33,7 @@ export const registrationOptions = {
|
|
|
33
33
|
pubKeyCredParams: [],
|
|
34
34
|
},
|
|
35
35
|
};
|
|
36
|
-
export const rpcOptionsRes = new
|
|
36
|
+
export const rpcOptionsRes = new OptionsResponse(registrationOptions);
|
|
37
37
|
export const credential = {
|
|
38
38
|
type: 'public-key',
|
|
39
39
|
id: '1',
|
|
@@ -45,12 +45,12 @@ export const credential = {
|
|
|
45
45
|
},
|
|
46
46
|
clientExtensionResults: {},
|
|
47
47
|
};
|
|
48
|
-
export const rpcVerificationReq = new
|
|
48
|
+
export const rpcVerificationReq = new VerificationRequest({
|
|
49
49
|
session,
|
|
50
50
|
credential,
|
|
51
51
|
verifyEmail: O.none(),
|
|
52
52
|
});
|
|
53
|
-
export const rpcVerificationRes = new
|
|
53
|
+
export const rpcVerificationRes = new VerificationResponse({ principal: Fixtures.principal });
|
|
54
54
|
export const createCredentialTest = L.succeed(CreateCredential, CreateCredential.of({ createCredential: () => E.succeed(credential) }));
|
|
55
55
|
export const userServiceTest = L.succeed(UserService, UserService.of({
|
|
56
56
|
isExistingUser: () => E.succeed(false),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.fixture.js","sourceRoot":"","sources":["../../src/registration/register.fixture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE7D,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"register.fixture.js","sourceRoot":"","sources":["../../src/registration/register.fixture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE7D,OAAO,EACL,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,mDAAmD,CAAA;AAG1D,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,gBAAgB,EAA4B,MAAM,eAAe,CAAA;AAE1E,MAAM,CAAC,MAAM,OAAO,GAAG,SAAS,CAAA;AAChC,MAAM,CAAC,MAAM,KAAK,GAAG,OAAO,CAAA;AAC5B,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAA;AAC1B,MAAM,CAAC,MAAM,QAAQ,GAAG,SAAS,CAAA;AACjC,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;AAE1C,MAAM,CAAC,MAAM,mBAAmB,GAAwB;IACtD,KAAK,EAAE,gBAAgB;IACvB,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;IACzB,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;IACzB,gBAAgB,EAAE,CAAC,CAAC,IAAI,EAAE;IAC1B,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE;CACtB,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,cAAc,CAAC,mBAAmB,CAAC,CAAA;AAEpE,MAAM,CAAC,MAAM,mBAAmB,GAAoB;IAClD,OAAO;IACP,SAAS,EAAE;QACT,EAAE,EAAE;YACF,IAAI,EAAE,UAAU;YAChB,EAAE,EAAE,cAAc;SACnB;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,UAAU;YAChB,EAAE,EAAE,MAAM;YACV,WAAW,EAAE,UAAU;SACxB;QACD,SAAS,EAAE,6CAA6C;QACxD,gBAAgB,EAAE,EAAE;KACrB;CACF,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,eAAe,CAAC,mBAAmB,CAAC,CAAA;AAErE,MAAM,CAAC,MAAM,UAAU,GAA2B;IAChD,IAAI,EAAE,YAAY;IAClB,EAAE,EAAE,GAAG;IACP,KAAK,EAAE,GAAG;IACV,QAAQ,EAAE;QACR,UAAU,EAAE,EAAE;QACd,cAAc,EAAE,EAAE;QAClB,iBAAiB,EAAE,EAAE;KACtB;IACD,sBAAsB,EAAE,EAAE;CAC3B,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,mBAAmB,CAAC;IACxD,OAAO;IACP,UAAU;IACV,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE;CACtB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,oBAAoB,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAA;AAE7F,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,OAAO,CAC3C,gBAAgB,EAChB,gBAAgB,CAAC,EAAE,CAAC,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CACvE,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,OAAO,CACtC,WAAW,EACX,WAAW,CAAC,EAAE,CAAC;IACb,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACtC,uBAAuB,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;CAC/C,CAAC,CACH,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,OAAO,CACpC,kBAAkB,EAClB,kBAAkB,CAAC,EAAE,CAAC;IACpB,sBAAsB,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IACtD,4BAA4B,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC;CAClE,CAAC,CACH,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;AAE3C,MAAM,CAAC,MAAM,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAA;AAEzD,MAAM,CAAC,MAAM,kBAAkB,GAAG,QAAQ,CAAC,kBAAkB,CAAA"}
|