@ic-reactor/react 3.7.0 → 3.8.0
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 +93 -9
- package/dist/auth/authentication-manager.d.ts +37 -5
- package/dist/auth/authentication-manager.d.ts.map +1 -1
- package/dist/auth/authentication-manager.js +111 -37
- package/dist/auth/authentication-manager.js.map +1 -1
- package/dist/auth/createIdentityAttributeHooks.d.ts +2 -2
- package/dist/auth/createIdentityAttributeHooks.d.ts.map +1 -1
- package/dist/auth/identity-attributes-manager.d.ts +12 -5
- package/dist/auth/identity-attributes-manager.d.ts.map +1 -1
- package/dist/auth/identity-attributes-manager.js +42 -28
- package/dist/auth/identity-attributes-manager.js.map +1 -1
- package/dist/auth/identity-attributes.d.ts +1 -1
- package/dist/auth/identity-attributes.d.ts.map +1 -1
- package/dist/auth/identity-attributes.js +1 -1
- package/dist/auth/identity-attributes.js.map +1 -1
- package/dist/auth/index.d.ts +7 -7
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +7 -7
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/types.d.ts +123 -16
- package/dist/auth/types.d.ts.map +1 -1
- package/dist/createActorHooks.d.ts +4 -4
- package/dist/createActorHooks.d.ts.map +1 -1
- package/dist/createActorHooks.js +6 -6
- package/dist/createActorHooks.js.map +1 -1
- package/dist/createInfiniteQuery.d.ts +1 -1
- package/dist/createInfiniteQuery.d.ts.map +1 -1
- package/dist/createInfiniteQuery.js +1 -1
- package/dist/createInfiniteQuery.js.map +1 -1
- package/dist/createMutation.d.ts +1 -1
- package/dist/createMutation.d.ts.map +1 -1
- package/dist/createQuery.d.ts +1 -1
- package/dist/createQuery.d.ts.map +1 -1
- package/dist/createQuery.js +1 -1
- package/dist/createQuery.js.map +1 -1
- package/dist/createSuspenseInfiniteQuery.d.ts +1 -1
- package/dist/createSuspenseInfiniteQuery.d.ts.map +1 -1
- package/dist/createSuspenseInfiniteQuery.js +1 -1
- package/dist/createSuspenseInfiniteQuery.js.map +1 -1
- package/dist/createSuspenseQuery.d.ts +1 -1
- package/dist/createSuspenseQuery.d.ts.map +1 -1
- package/dist/createSuspenseQuery.js +1 -1
- package/dist/createSuspenseQuery.js.map +1 -1
- package/dist/defineReactor.d.ts +54 -4
- package/dist/defineReactor.d.ts.map +1 -1
- package/dist/defineReactor.js +77 -7
- package/dist/defineReactor.js.map +1 -1
- package/dist/hooks/createAuthHooks.d.ts +2 -2
- package/dist/hooks/createAuthHooks.d.ts.map +1 -1
- package/dist/hooks/createAuthHooks.js +7 -2
- package/dist/hooks/createAuthHooks.js.map +1 -1
- package/dist/hooks/useActorInfiniteQuery.js +1 -1
- package/dist/hooks/useActorInfiniteQuery.js.map +1 -1
- package/dist/hooks/useActorSuspenseInfiniteQuery.js +1 -1
- package/dist/hooks/useActorSuspenseInfiniteQuery.js.map +1 -1
- package/dist/index.d.ts +11 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -11
- package/dist/index.js.map +1 -1
- package/llms.txt +1 -1
- package/package.json +14 -9
- package/src/auth/authentication-manager.ts +121 -49
- package/src/auth/createIdentityAttributeHooks.ts +2 -2
- package/src/auth/identity-attributes-manager.ts +53 -44
- package/src/auth/identity-attributes.ts +2 -2
- package/src/auth/index.ts +7 -7
- package/src/auth/types.ts +134 -18
- package/src/createActorHooks.ts +9 -9
- package/src/createInfiniteQuery.ts +2 -2
- package/src/createMutation.ts +1 -1
- package/src/createQuery.ts +2 -2
- package/src/createSuspenseInfiniteQuery.ts +2 -2
- package/src/createSuspenseQuery.ts +2 -2
- package/src/defineReactor.ts +136 -14
- package/src/hooks/createAuthHooks.ts +8 -3
- package/src/hooks/useActorInfiniteQuery.ts +1 -1
- package/src/hooks/useActorSuspenseInfiniteQuery.ts +1 -1
- package/src/index.ts +11 -11
- package/src/defineReactor.test.ts +0 -70
- package/src/hooks/useActorInfiniteQuery.test.tsx +0 -457
- package/src/hooks/useActorMethod.test.tsx +0 -798
- package/src/hooks/useActorMutation.test.tsx +0 -220
- package/src/hooks/useActorQuery.test.tsx +0 -287
- package/src/hooks/useActorSuspenseInfiniteQuery.test.tsx +0 -472
- package/src/hooks/useActorSuspenseQuery.test.tsx +0 -254
- package/src/utils.test.ts +0 -14
package/README.md
CHANGED
|
@@ -13,6 +13,11 @@ pnpm add @ic-reactor/react @icp-sdk/core @tanstack/react-query
|
|
|
13
13
|
pnpm add @icp-sdk/auth
|
|
14
14
|
```
|
|
15
15
|
|
|
16
|
+
`@icp-sdk/auth` is an optional peer. `AuthenticationManager` reaches it through a
|
|
17
|
+
literal `import("@icp-sdk/auth/client")`, so Vite, Rollup and webpack resolve it
|
|
18
|
+
at build time and code-split it into its own chunk — and tree-shake it away
|
|
19
|
+
entirely in apps that never reference the class.
|
|
20
|
+
|
|
16
21
|
## Quick Start
|
|
17
22
|
|
|
18
23
|
```tsx
|
|
@@ -25,7 +30,6 @@ export const queryClient = new QueryClient()
|
|
|
25
30
|
|
|
26
31
|
export const clientManager = new ClientManager({
|
|
27
32
|
queryClient,
|
|
28
|
-
withCanisterEnv: true,
|
|
29
33
|
})
|
|
30
34
|
|
|
31
35
|
export const backend = new Reactor<_SERVICE>({
|
|
@@ -136,12 +140,41 @@ const mutation = updateProfile.useMutation({
|
|
|
136
140
|
})
|
|
137
141
|
```
|
|
138
142
|
|
|
139
|
-
## Identity
|
|
143
|
+
## Internet Identity
|
|
140
144
|
|
|
141
|
-
Identity
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
+
`defineReactor` wires up Internet Identity for you — `useAuth`,
|
|
146
|
+
`useUserPrincipal`, `useAgentState` and `useIdentityAttributes` come back
|
|
147
|
+
alongside the actor hooks:
|
|
148
|
+
|
|
149
|
+
```tsx
|
|
150
|
+
// src/reactor.ts
|
|
151
|
+
export const { useActorQuery, useAuth, useIdentityAttributes, authentication } =
|
|
152
|
+
defineReactor<_SERVICE>({
|
|
153
|
+
name: "backend",
|
|
154
|
+
idlFactory,
|
|
155
|
+
auth: {
|
|
156
|
+
// Required when the app is served from more than one origin, so every
|
|
157
|
+
// origin resolves to the same principal.
|
|
158
|
+
derivationOrigin: "https://app.example.com",
|
|
159
|
+
// The default signs the user out and reloads after 10 minutes idle.
|
|
160
|
+
idleOptions: { disableIdle: true },
|
|
161
|
+
},
|
|
162
|
+
})
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
Auth options are forwarded to the underlying `@icp-sdk/auth` client:
|
|
166
|
+
`identityProvider`, `derivationOrigin`, `windowOpenerFeatures`,
|
|
167
|
+
`openIdProvider`, `storage`, `keyType`, `idleOptions`, `identity`, and
|
|
168
|
+
`transport`. Only the `"google" | "apple" | "microsoft"` aliases are accepted
|
|
169
|
+
for `openIdProvider`; any other value is dropped, since raw issuer URLs are
|
|
170
|
+
only meaningful on `requestOpenIdAttributes`, where they scope the keys.
|
|
171
|
+
|
|
172
|
+
Pass `authentication` from one reactor into another to share a single session
|
|
173
|
+
across canisters. That reactor adopts the manager's `ClientManager` so sign-in
|
|
174
|
+
updates the agent it calls through, so pass either `authentication` or `auth` —
|
|
175
|
+
not both.
|
|
176
|
+
|
|
177
|
+
Set up manually when you need more control:
|
|
145
178
|
|
|
146
179
|
```tsx
|
|
147
180
|
// src/auth.ts
|
|
@@ -162,6 +195,59 @@ export const { useIdentityAttributes } =
|
|
|
162
195
|
createIdentityAttributeHooks(identityAttributes)
|
|
163
196
|
```
|
|
164
197
|
|
|
198
|
+
`useAuth()` calls `authentication.prepareClient()` on mount. Outside React, do
|
|
199
|
+
it yourself during startup — it preloads the auth module so `login()` can open
|
|
200
|
+
the identity provider window synchronously inside a click handler, which is
|
|
201
|
+
what browser popup blockers require:
|
|
202
|
+
|
|
203
|
+
```ts
|
|
204
|
+
// once, at startup — awaits the dynamic import and builds the AuthClient
|
|
205
|
+
await authentication.prepareClient()
|
|
206
|
+
|
|
207
|
+
// later, inside the click handler — no await before signIn(), so the popup
|
|
208
|
+
// still counts as user-initiated
|
|
209
|
+
button.onclick = () => authentication.login()
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
`authentication.getPreparedClient()` returns the already-built client
|
|
213
|
+
synchronously, or `undefined` when the module has not loaded yet.
|
|
214
|
+
|
|
215
|
+
If your bundler cannot resolve the optional peer at all, construct the client
|
|
216
|
+
yourself and inject it — IC Reactor then never imports `@icp-sdk/auth`:
|
|
217
|
+
|
|
218
|
+
```ts
|
|
219
|
+
import { AuthClient } from "@icp-sdk/auth/client"
|
|
220
|
+
|
|
221
|
+
const authentication = new AuthenticationManager({
|
|
222
|
+
clientManager,
|
|
223
|
+
authClient: new AuthClient(),
|
|
224
|
+
})
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
## Identity Attributes / OpenID email and profile values
|
|
228
|
+
|
|
229
|
+
Identity attributes use a dedicated `IdentityAttributesManager`, with React
|
|
230
|
+
bindings created by `createIdentityAttributeHooks`. Works with `@icp-sdk/auth`
|
|
231
|
+
v7 and v8; the two versions disagree on the nonce contract and IC Reactor
|
|
232
|
+
normalizes whichever form you pass.
|
|
233
|
+
|
|
234
|
+
**Pass the nonce as a callback.** Awaiting your backend before calling
|
|
235
|
+
`requestOpenIdAttributes` ends the user gesture, and the browser then blocks
|
|
236
|
+
the Internet Identity window:
|
|
237
|
+
|
|
238
|
+
```tsx
|
|
239
|
+
// ✅ window opens immediately, nonce resolves while the user is in II
|
|
240
|
+
await requestOpenIdAttributes({
|
|
241
|
+
nonce: () => backend.registerBegin(),
|
|
242
|
+
openIdProvider: "google",
|
|
243
|
+
keys: ["email", "name"],
|
|
244
|
+
})
|
|
245
|
+
|
|
246
|
+
// ❌ gesture is gone by the time the window would open
|
|
247
|
+
const nonce = await backend.registerBegin()
|
|
248
|
+
await requestOpenIdAttributes({ nonce, openIdProvider: "google", keys })
|
|
249
|
+
```
|
|
250
|
+
|
|
165
251
|
```tsx
|
|
166
252
|
// src/RegisterWithOpenIdProvider.tsx
|
|
167
253
|
import { useIdentityAttributes } from "./auth"
|
|
@@ -176,10 +262,8 @@ function RegisterWithOpenIdProvider() {
|
|
|
176
262
|
} = useIdentityAttributes()
|
|
177
263
|
|
|
178
264
|
async function handleProviderLogin() {
|
|
179
|
-
const nonce = await backend.registerBegin()
|
|
180
|
-
|
|
181
265
|
const result = await requestOpenIdAttributes({
|
|
182
|
-
nonce,
|
|
266
|
+
nonce: () => backend.registerBegin(),
|
|
183
267
|
openIdProvider: "microsoft",
|
|
184
268
|
keys: ["email", "name"],
|
|
185
269
|
windowOpenerFeatures: popupCenter(),
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import type { Identity } from "@icp-sdk/core/agent";
|
|
2
|
-
import type { AuthClientLike, AuthClientSignInOptions, AuthState, AuthenticationClientOptions, AuthenticationSignInOptions } from "./types";
|
|
2
|
+
import type { AuthClientLike, AuthClientSignInOptions, AuthState, AuthenticationClientOptions, AuthenticationSignInOptions } from "./types.js";
|
|
3
3
|
import { ClientManager } from "@ic-reactor/core";
|
|
4
|
-
export interface AuthenticationManagerParameters {
|
|
4
|
+
export interface AuthenticationManagerParameters extends AuthenticationClientOptions {
|
|
5
5
|
clientManager: ClientManager;
|
|
6
|
+
/**
|
|
7
|
+
* Bring your own client instance. When provided, IC Reactor never constructs
|
|
8
|
+
* one and never applies the options below to it.
|
|
9
|
+
*/
|
|
6
10
|
authClient?: AuthClientLike;
|
|
7
|
-
|
|
11
|
+
/** Canister ID of a locally deployed Internet Identity. */
|
|
8
12
|
internetIdentityId?: string;
|
|
9
13
|
}
|
|
10
14
|
/**
|
|
@@ -26,20 +30,36 @@ export declare class AuthenticationManager {
|
|
|
26
30
|
private authClientConstructor?;
|
|
27
31
|
private authClientConstructorPromise?;
|
|
28
32
|
private authModuleMissing;
|
|
33
|
+
private authClientOptions?;
|
|
29
34
|
private authStateValue;
|
|
30
35
|
private readonly identityProvider?;
|
|
31
36
|
private readonly internetIdentityId?;
|
|
37
|
+
private readonly defaultClientOptions;
|
|
32
38
|
readonly clientManager: ClientManager;
|
|
33
39
|
/** The current authentication state. */
|
|
34
40
|
get authState(): AuthState;
|
|
35
|
-
constructor({ clientManager, authClient, identityProvider, internetIdentityId, }: AuthenticationManagerParameters);
|
|
41
|
+
constructor({ clientManager, authClient, identityProvider, internetIdentityId, ...clientOptions }: AuthenticationManagerParameters);
|
|
36
42
|
/** @internal Used by IdentityAttributesManager. */
|
|
37
43
|
get client(): AuthClientLike | undefined;
|
|
38
44
|
subscribeAuthState(callback: (state: AuthState) => void): () => void;
|
|
39
45
|
/**
|
|
40
|
-
* Preloads and creates an AuthClient
|
|
46
|
+
* Preloads the auth module and creates an AuthClient ahead of time.
|
|
47
|
+
*
|
|
48
|
+
* Call (and await) this before wiring up a login button: it makes
|
|
49
|
+
* {@link login} and {@link IdentityAttributesManager.request} able to open
|
|
50
|
+
* the identity provider synchronously inside the click handler, which is
|
|
51
|
+
* what browser popup blockers and the ICRC-29 transport require.
|
|
41
52
|
*/
|
|
42
53
|
prepareClient(options?: AuthenticationClientOptions): Promise<AuthClientLike | undefined>;
|
|
54
|
+
/**
|
|
55
|
+
* Returns an AuthClient without awaiting, or `undefined` when the auth
|
|
56
|
+
* module has not been loaded yet.
|
|
57
|
+
*
|
|
58
|
+
* Callers that must stay inside a user gesture use this instead of
|
|
59
|
+
* {@link ensureClient}; awaiting anything before opening the identity
|
|
60
|
+
* provider window loses the gesture.
|
|
61
|
+
*/
|
|
62
|
+
getPreparedClient(options?: AuthenticationClientOptions): AuthClientLike | undefined;
|
|
43
63
|
authenticate: () => Promise<Identity | undefined>;
|
|
44
64
|
login: (loginOptions?: AuthenticationSignInOptions) => Promise<void>;
|
|
45
65
|
logout: (options?: {
|
|
@@ -49,7 +69,19 @@ export declare class AuthenticationManager {
|
|
|
49
69
|
/** @internal Used by IdentityAttributesManager. */
|
|
50
70
|
signInOrRecoverIdentity(options?: AuthClientSignInOptions): Promise<Identity>;
|
|
51
71
|
private ensurePreparedClient;
|
|
72
|
+
/**
|
|
73
|
+
* Only rebuild the client when the effective options actually changed.
|
|
74
|
+
*
|
|
75
|
+
* Recreating on every call would discard the client warmed up by
|
|
76
|
+
* `prepareClient()` and register a duplicate sign-out callback on the
|
|
77
|
+
* shared IdleManager singleton each time.
|
|
78
|
+
*/
|
|
52
79
|
private shouldRecreateClient;
|
|
80
|
+
/**
|
|
81
|
+
* Merges constructor-level defaults with per-call overrides and fills in the
|
|
82
|
+
* network-appropriate identity provider.
|
|
83
|
+
*/
|
|
84
|
+
private resolveClientOptions;
|
|
53
85
|
private syncStateFromClient;
|
|
54
86
|
/** @internal Used by IdentityAttributesManager. */
|
|
55
87
|
ensureClient(options?: AuthenticationClientOptions): Promise<AuthClientLike | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authentication-manager.d.ts","sourceRoot":"","sources":["../../src/auth/authentication-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACvB,SAAS,EACT,2BAA2B,EAC3B,2BAA2B,EAC5B,MAAM,
|
|
1
|
+
{"version":3,"file":"authentication-manager.d.ts","sourceRoot":"","sources":["../../src/auth/authentication-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACvB,SAAS,EACT,2BAA2B,EAC3B,2BAA2B,EAC5B,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,aAAa,EAAS,MAAM,kBAAkB,CAAA;AASvD,MAAM,WAAW,+BAAgC,SAAQ,2BAA2B;IAClF,aAAa,EAAE,aAAa,CAAA;IAC5B;;;OAGG;IACH,UAAU,CAAC,EAAE,cAAc,CAAA;IAC3B,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B;AAMD;;;;;;;;;GASG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,UAAU,CAAC,CAAgB;IACnC,OAAO,CAAC,WAAW,CAAC,CAA+B;IACnD,OAAO,CAAC,qBAAqB,CAAQ;IACrC,OAAO,CAAC,iBAAiB,CAAI;IAC7B,OAAO,CAAC,oBAAoB,CAAwC;IACpE,OAAO,CAAC,qBAAqB,CAAC,CAAuB;IACrD,OAAO,CAAC,4BAA4B,CAAC,CAEpC;IACD,OAAO,CAAC,iBAAiB,CAAQ;IACjC,OAAO,CAAC,iBAAiB,CAAC,CAA6B;IACvD,OAAO,CAAC,cAAc,CAKrB;IACD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAc;IAChD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAQ;IAC5C,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA6B;IAClE,SAAgB,aAAa,EAAE,aAAa,CAAA;IAE5C,wCAAwC;IACxC,IAAW,SAAS,IAAI,SAAS,CAEhC;gBAEW,EACV,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,GAAG,aAAa,EACjB,EAAE,+BAA+B;IA4BlC,mDAAmD;IACnD,IAAW,MAAM,+BAEhB;IAEM,kBAAkB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI;IAS9D;;;;;;;OAOG;IACU,aAAa,CAAC,OAAO,CAAC,EAAE,2BAA2B;IAUhE;;;;;;;OAOG;IACI,iBAAiB,CACtB,OAAO,CAAC,EAAE,2BAA2B,GACpC,cAAc,GAAG,SAAS;IAItB,YAAY,QAAa,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CA0D5D;IAEM,KAAK,GAAU,eAAe,2BAA2B,mBAwD/D;IAEM,MAAM,GAAU,UAAU;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,mBAerD;YAEa,gBAAgB;IAc9B,mDAAmD;IACtC,uBAAuB,CAClC,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,QAAQ,CAAC;IAyBpB,OAAO,CAAC,oBAAoB;IAiB5B;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB;IAO5B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;YAed,mBAAmB;IAmBjC,mDAAmD;IACtC,YAAY,CAAC,OAAO,CAAC,EAAE,2BAA2B;IAQ/D,mDAAmD;IACtC,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO;IAQxE,mDAAmD;IAC5C,iBAAiB;IAIxB,mDAAmD;IAC5C,sBAAsB,CAAC,KAAK,EAAE,KAAK;IAI1C,OAAO,CAAC,0BAA0B;IAYlC,OAAO,CAAC,WAAW;YASL,yBAAyB;CAuCxC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { isDev } from "@ic-reactor/core";
|
|
2
2
|
import { safeGetCanisterEnv } from "@icp-sdk/core/agent/canister-env";
|
|
3
|
-
import { IC_INTERNET_IDENTITY_PROVIDER, INTERNET_IDENTITY_PROVIDER_ENV_KEY, localInternetIdentityProvider, } from "./constants";
|
|
4
|
-
const AUTH_CLIENT_MODULE = "@icp-sdk/auth/client";
|
|
3
|
+
import { IC_INTERNET_IDENTITY_PROVIDER, INTERNET_IDENTITY_PROVIDER_ENV_KEY, localInternetIdentityProvider, } from "./constants.js";
|
|
5
4
|
/**
|
|
6
5
|
* Manages Internet Identity sign-in, session restoration, and authentication
|
|
7
6
|
* state for a {@link ClientManager}.
|
|
@@ -17,7 +16,7 @@ export class AuthenticationManager {
|
|
|
17
16
|
get authState() {
|
|
18
17
|
return this.authStateValue;
|
|
19
18
|
}
|
|
20
|
-
constructor({ clientManager, authClient, identityProvider, internetIdentityId, }) {
|
|
19
|
+
constructor({ clientManager, authClient, identityProvider, internetIdentityId, ...clientOptions }) {
|
|
21
20
|
Object.defineProperty(this, "authClient", {
|
|
22
21
|
enumerable: true,
|
|
23
22
|
configurable: true,
|
|
@@ -66,6 +65,12 @@ export class AuthenticationManager {
|
|
|
66
65
|
writable: true,
|
|
67
66
|
value: false
|
|
68
67
|
});
|
|
68
|
+
Object.defineProperty(this, "authClientOptions", {
|
|
69
|
+
enumerable: true,
|
|
70
|
+
configurable: true,
|
|
71
|
+
writable: true,
|
|
72
|
+
value: void 0
|
|
73
|
+
});
|
|
69
74
|
Object.defineProperty(this, "authStateValue", {
|
|
70
75
|
enumerable: true,
|
|
71
76
|
configurable: true,
|
|
@@ -89,6 +94,12 @@ export class AuthenticationManager {
|
|
|
89
94
|
writable: true,
|
|
90
95
|
value: void 0
|
|
91
96
|
});
|
|
97
|
+
Object.defineProperty(this, "defaultClientOptions", {
|
|
98
|
+
enumerable: true,
|
|
99
|
+
configurable: true,
|
|
100
|
+
writable: true,
|
|
101
|
+
value: void 0
|
|
102
|
+
});
|
|
92
103
|
Object.defineProperty(this, "clientManager", {
|
|
93
104
|
enumerable: true,
|
|
94
105
|
configurable: true,
|
|
@@ -119,9 +130,7 @@ export class AuthenticationManager {
|
|
|
119
130
|
this.updateState({ isAuthenticating: true });
|
|
120
131
|
try {
|
|
121
132
|
if (!this.authClient) {
|
|
122
|
-
const authClient = await this.initializeClient(
|
|
123
|
-
identityProvider: this.getDefaultIdentityProvider(),
|
|
124
|
-
}));
|
|
133
|
+
const authClient = await this.initializeClient(this.resolveClientOptions());
|
|
125
134
|
if (!authClient) {
|
|
126
135
|
this.updateState({ isAuthenticating: false });
|
|
127
136
|
return undefined;
|
|
@@ -129,7 +138,12 @@ export class AuthenticationManager {
|
|
|
129
138
|
}
|
|
130
139
|
const identity = await this.authClient.getIdentity();
|
|
131
140
|
const isAuthenticated = await this.authClient.isAuthenticated();
|
|
132
|
-
|
|
141
|
+
// Restoring an anonymous session is the common first-load case; pushing
|
|
142
|
+
// it through updateAgent would invalidate the whole query cache on
|
|
143
|
+
// every mount for nothing.
|
|
144
|
+
if (isAuthenticated || !identity.getPrincipal().isAnonymous()) {
|
|
145
|
+
this.clientManager.updateAgent(identity);
|
|
146
|
+
}
|
|
133
147
|
this.updateState({
|
|
134
148
|
identity,
|
|
135
149
|
isAuthenticated,
|
|
@@ -156,11 +170,9 @@ export class AuthenticationManager {
|
|
|
156
170
|
value: async (loginOptions) => {
|
|
157
171
|
let didCompleteSignIn = false;
|
|
158
172
|
try {
|
|
159
|
-
const
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
identityProvider,
|
|
163
|
-
});
|
|
173
|
+
const authClientOptions = this.resolveClientOptions(loginOptions);
|
|
174
|
+
// Stays synchronous when `prepareClient()` has already loaded the auth
|
|
175
|
+
// module, so `signIn()` still runs inside the caller's click handler.
|
|
164
176
|
if (!this.ensurePreparedClient(authClientOptions)) {
|
|
165
177
|
await this.initializeClient(authClientOptions);
|
|
166
178
|
}
|
|
@@ -168,7 +180,7 @@ export class AuthenticationManager {
|
|
|
168
180
|
await this.authenticate();
|
|
169
181
|
}
|
|
170
182
|
if (!this.authClient) {
|
|
171
|
-
throw new Error("Authentication module is missing or failed to initialize. To use login,
|
|
183
|
+
throw new Error("Authentication module is missing or failed to initialize. To use login, install the optional auth peer: npm install @icp-sdk/auth. If it is already installed and your bundler could not resolve it, pass a pre-constructed client instead: new AuthenticationManager({ clientManager, authClient: new AuthClient(...) })");
|
|
172
184
|
}
|
|
173
185
|
this.updateState({ isAuthenticating: true, error: undefined });
|
|
174
186
|
const identity = await this.signInOrRecoverIdentity(getSignInOptions(loginOptions));
|
|
@@ -209,7 +221,7 @@ export class AuthenticationManager {
|
|
|
209
221
|
writable: true,
|
|
210
222
|
value: async (options) => {
|
|
211
223
|
if (!this.authClient) {
|
|
212
|
-
throw new Error("Authentication module is missing or failed to initialize. To use logout,
|
|
224
|
+
throw new Error("Authentication module is missing or failed to initialize. To use logout, install the optional auth peer: npm install @icp-sdk/auth. If it is already installed and your bundler could not resolve it, pass a pre-constructed client instead: new AuthenticationManager({ clientManager, authClient: new AuthClient(...) })");
|
|
213
225
|
}
|
|
214
226
|
this.updateState({ isAuthenticating: true, error: undefined });
|
|
215
227
|
await this.authClient.signOut(options);
|
|
@@ -233,6 +245,7 @@ export class AuthenticationManager {
|
|
|
233
245
|
canisterEnv?.["internet_identity"] ||
|
|
234
246
|
canisterEnv?.["PUBLIC_CANISTER_ID:internet_identity"] ||
|
|
235
247
|
canisterEnv?.["CANISTER_ID_INTERNET_IDENTITY"];
|
|
248
|
+
this.defaultClientOptions = clientOptions;
|
|
236
249
|
if (authClient) {
|
|
237
250
|
this.authClientWasProvided = true;
|
|
238
251
|
this.authClient = authClient;
|
|
@@ -257,31 +270,44 @@ export class AuthenticationManager {
|
|
|
257
270
|
};
|
|
258
271
|
}
|
|
259
272
|
/**
|
|
260
|
-
* Preloads and creates an AuthClient
|
|
273
|
+
* Preloads the auth module and creates an AuthClient ahead of time.
|
|
274
|
+
*
|
|
275
|
+
* Call (and await) this before wiring up a login button: it makes
|
|
276
|
+
* {@link login} and {@link IdentityAttributesManager.request} able to open
|
|
277
|
+
* the identity provider synchronously inside the click handler, which is
|
|
278
|
+
* what browser popup blockers and the ICRC-29 transport require.
|
|
261
279
|
*/
|
|
262
280
|
async prepareClient(options) {
|
|
263
|
-
const clientOptions =
|
|
264
|
-
|
|
265
|
-
identityProvider: options?.identityProvider ?? this.getDefaultIdentityProvider(),
|
|
266
|
-
});
|
|
267
|
-
if (this.authClient &&
|
|
268
|
-
(!this.shouldRecreateClient(clientOptions) || this.authClientWasProvided)) {
|
|
281
|
+
const clientOptions = this.resolveClientOptions(options);
|
|
282
|
+
if (this.authClient && !this.shouldRecreateClient(clientOptions)) {
|
|
269
283
|
return this.authClient;
|
|
270
284
|
}
|
|
271
285
|
return this.initializeClient(clientOptions);
|
|
272
286
|
}
|
|
287
|
+
/**
|
|
288
|
+
* Returns an AuthClient without awaiting, or `undefined` when the auth
|
|
289
|
+
* module has not been loaded yet.
|
|
290
|
+
*
|
|
291
|
+
* Callers that must stay inside a user gesture use this instead of
|
|
292
|
+
* {@link ensureClient}; awaiting anything before opening the identity
|
|
293
|
+
* provider window loses the gesture.
|
|
294
|
+
*/
|
|
295
|
+
getPreparedClient(options) {
|
|
296
|
+
return this.ensurePreparedClient(this.resolveClientOptions(options));
|
|
297
|
+
}
|
|
273
298
|
async initializeClient(options) {
|
|
274
299
|
const AuthClient = await this.loadAuthClientConstructor();
|
|
275
300
|
if (!AuthClient) {
|
|
276
301
|
return undefined;
|
|
277
302
|
}
|
|
278
303
|
this.authClient = new AuthClient(options);
|
|
304
|
+
this.authClientOptions = options;
|
|
279
305
|
return this.authClient;
|
|
280
306
|
}
|
|
281
307
|
/** @internal Used by IdentityAttributesManager. */
|
|
282
308
|
async signInOrRecoverIdentity(options) {
|
|
283
309
|
if (!this.authClient) {
|
|
284
|
-
throw new Error("Authentication module is missing or failed to initialize. To use login,
|
|
310
|
+
throw new Error("Authentication module is missing or failed to initialize. To use login, install the optional auth peer: npm install @icp-sdk/auth. If it is already installed and your bundler could not resolve it, pass a pre-constructed client instead: new AuthenticationManager({ clientManager, authClient: new AuthClient(...) })");
|
|
285
311
|
}
|
|
286
312
|
try {
|
|
287
313
|
return await this.authClient.signIn(options);
|
|
@@ -296,8 +322,7 @@ export class AuthenticationManager {
|
|
|
296
322
|
}
|
|
297
323
|
}
|
|
298
324
|
ensurePreparedClient(options) {
|
|
299
|
-
if (this.authClient &&
|
|
300
|
-
(!this.shouldRecreateClient(options) || this.authClientWasProvided)) {
|
|
325
|
+
if (this.authClient && !this.shouldRecreateClient(options)) {
|
|
301
326
|
return this.authClient;
|
|
302
327
|
}
|
|
303
328
|
const AuthClient = this.authClientConstructor;
|
|
@@ -305,10 +330,35 @@ export class AuthenticationManager {
|
|
|
305
330
|
return undefined;
|
|
306
331
|
}
|
|
307
332
|
this.authClient = new AuthClient(options);
|
|
333
|
+
this.authClientOptions = options;
|
|
308
334
|
return this.authClient;
|
|
309
335
|
}
|
|
336
|
+
/**
|
|
337
|
+
* Only rebuild the client when the effective options actually changed.
|
|
338
|
+
*
|
|
339
|
+
* Recreating on every call would discard the client warmed up by
|
|
340
|
+
* `prepareClient()` and register a duplicate sign-out callback on the
|
|
341
|
+
* shared IdleManager singleton each time.
|
|
342
|
+
*/
|
|
310
343
|
shouldRecreateClient(options) {
|
|
311
|
-
|
|
344
|
+
if (this.authClientWasProvided) {
|
|
345
|
+
return false;
|
|
346
|
+
}
|
|
347
|
+
return !isSameAuthClientOptions(this.authClientOptions, options);
|
|
348
|
+
}
|
|
349
|
+
/**
|
|
350
|
+
* Merges constructor-level defaults with per-call overrides and fills in the
|
|
351
|
+
* network-appropriate identity provider.
|
|
352
|
+
*/
|
|
353
|
+
resolveClientOptions(options) {
|
|
354
|
+
const merged = getAuthClientOptions({
|
|
355
|
+
...this.defaultClientOptions,
|
|
356
|
+
...options,
|
|
357
|
+
});
|
|
358
|
+
return {
|
|
359
|
+
...merged,
|
|
360
|
+
identityProvider: merged?.identityProvider ?? this.getDefaultIdentityProvider(),
|
|
361
|
+
};
|
|
312
362
|
}
|
|
313
363
|
async syncStateFromClient(revision = this.authStateRevision) {
|
|
314
364
|
if (!this.authClient) {
|
|
@@ -329,10 +379,7 @@ export class AuthenticationManager {
|
|
|
329
379
|
}
|
|
330
380
|
/** @internal Used by IdentityAttributesManager. */
|
|
331
381
|
async ensureClient(options) {
|
|
332
|
-
const clientOptions =
|
|
333
|
-
...options,
|
|
334
|
-
identityProvider: options?.identityProvider ?? this.getDefaultIdentityProvider(),
|
|
335
|
-
});
|
|
382
|
+
const clientOptions = this.resolveClientOptions(options);
|
|
336
383
|
if (!this.ensurePreparedClient(clientOptions)) {
|
|
337
384
|
await this.initializeClient(clientOptions);
|
|
338
385
|
}
|
|
@@ -374,10 +421,12 @@ export class AuthenticationManager {
|
|
|
374
421
|
return this.authClientConstructor;
|
|
375
422
|
}
|
|
376
423
|
if (!this.authClientConstructorPromise) {
|
|
377
|
-
//
|
|
378
|
-
//
|
|
379
|
-
|
|
380
|
-
|
|
424
|
+
// The specifier must stay a literal: a variable specifier (or /* @vite-ignore */)
|
|
425
|
+
// makes bundlers skip this import entirely, so the bare specifier survives into
|
|
426
|
+
// the browser, where it cannot be resolved without an import map and every login
|
|
427
|
+
// path fails. A literal lets Vite/Rollup/webpack code-split the optional peer,
|
|
428
|
+
// and lets them tree-shake it away for apps that never reference this class.
|
|
429
|
+
this.authClientConstructorPromise = import("@icp-sdk/auth/client")
|
|
381
430
|
.then((authModule) => {
|
|
382
431
|
const AuthClient = authModule.AuthClient;
|
|
383
432
|
if (!AuthClient) {
|
|
@@ -407,6 +456,12 @@ function getAuthClientOptions(options) {
|
|
|
407
456
|
identityProvider: options.identityProvider,
|
|
408
457
|
windowOpenerFeatures: options.windowOpenerFeatures,
|
|
409
458
|
openIdProvider: getAuthClientOpenIdProvider(options.openIdProvider),
|
|
459
|
+
derivationOrigin: options.derivationOrigin,
|
|
460
|
+
storage: options.storage,
|
|
461
|
+
keyType: options.keyType,
|
|
462
|
+
idleOptions: options.idleOptions,
|
|
463
|
+
identity: options.identity,
|
|
464
|
+
transport: options.transport,
|
|
410
465
|
};
|
|
411
466
|
}
|
|
412
467
|
function getAuthClientOpenIdProvider(openIdProvider) {
|
|
@@ -416,10 +471,29 @@ function getAuthClientOpenIdProvider(openIdProvider) {
|
|
|
416
471
|
? openIdProvider
|
|
417
472
|
: undefined;
|
|
418
473
|
}
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
474
|
+
/**
|
|
475
|
+
* Compares the options two AuthClients would be built from. Object-valued
|
|
476
|
+
* options (`storage`, `identity`, `idleOptions`) are compared by reference,
|
|
477
|
+
* which is what module-scoped configuration produces.
|
|
478
|
+
*/
|
|
479
|
+
function isSameAuthClientOptions(current, next) {
|
|
480
|
+
if (current === next) {
|
|
481
|
+
return true;
|
|
482
|
+
}
|
|
483
|
+
if (!current || !next) {
|
|
484
|
+
return false;
|
|
485
|
+
}
|
|
486
|
+
return (String(current.identityProvider ?? "") ===
|
|
487
|
+
String(next.identityProvider ?? "") &&
|
|
488
|
+
current.windowOpenerFeatures === next.windowOpenerFeatures &&
|
|
489
|
+
current.openIdProvider === next.openIdProvider &&
|
|
490
|
+
String(current.derivationOrigin ?? "") ===
|
|
491
|
+
String(next.derivationOrigin ?? "") &&
|
|
492
|
+
current.storage === next.storage &&
|
|
493
|
+
current.keyType === next.keyType &&
|
|
494
|
+
current.idleOptions === next.idleOptions &&
|
|
495
|
+
current.identity === next.identity &&
|
|
496
|
+
current.transport === next.transport);
|
|
423
497
|
}
|
|
424
498
|
function getAuthenticationCanisterEnv() {
|
|
425
499
|
const canisterEnv = safeGetCanisterEnv();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authentication-manager.js","sourceRoot":"","sources":["../../src/auth/authentication-manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"authentication-manager.js","sourceRoot":"","sources":["../../src/auth/authentication-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { IdentityAttributesManager } from "./identity-attributes-manager";
|
|
2
|
-
import type { IdentityAttributeResult, RequestIdentityAttributesParameters, RequestOpenIdIdentityAttributesParameters } from "./types";
|
|
1
|
+
import type { IdentityAttributesManager } from "./identity-attributes-manager.js";
|
|
2
|
+
import type { IdentityAttributeResult, RequestIdentityAttributesParameters, RequestOpenIdIdentityAttributesParameters } from "./types.js";
|
|
3
3
|
export interface UseIdentityAttributesReturn {
|
|
4
4
|
requestAttributes: (params: RequestIdentityAttributesParameters) => Promise<IdentityAttributeResult>;
|
|
5
5
|
requestOpenIdAttributes: (params: RequestOpenIdIdentityAttributesParameters) => Promise<IdentityAttributeResult>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createIdentityAttributeHooks.d.ts","sourceRoot":"","sources":["../../src/auth/createIdentityAttributeHooks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"createIdentityAttributeHooks.d.ts","sourceRoot":"","sources":["../../src/auth/createIdentityAttributeHooks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAA;AACjF,OAAO,KAAK,EACV,uBAAuB,EACvB,mCAAmC,EACnC,yCAAyC,EAC1C,MAAM,YAAY,CAAA;AAEnB,MAAM,WAAW,2BAA2B;IAC1C,iBAAiB,EAAE,CACjB,MAAM,EAAE,mCAAmC,KACxC,OAAO,CAAC,uBAAuB,CAAC,CAAA;IACrC,uBAAuB,EAAE,CACvB,MAAM,EAAE,yCAAyC,KAC9C,OAAO,CAAC,uBAAuB,CAAC,CAAA;IACrC,UAAU,EAAE,uBAAuB,GAAG,IAAI,CAAA;IAC1C,sBAAsB,EAAE,OAAO,CAAA;IAC/B,cAAc,EAAE,KAAK,GAAG,IAAI,CAAA;IAC5B,eAAe,EAAE,MAAM,IAAI,CAAA;CAC5B;AAED,wBAAgB,4BAA4B,CAC1C,kBAAkB,EAAE,yBAAyB;iCAEX,2BAA2B;EA0D9D"}
|
|
@@ -1,19 +1,26 @@
|
|
|
1
|
-
import type { IdentityAttributeResult, RequestIdentityAttributesParameters, RequestOpenIdIdentityAttributesParameters } from "./types";
|
|
2
|
-
import { AuthenticationManager } from "./authentication-manager";
|
|
1
|
+
import type { IdentityAttributeResult, RequestIdentityAttributesParameters, RequestOpenIdIdentityAttributesParameters } from "./types.js";
|
|
2
|
+
import { AuthenticationManager } from "./authentication-manager.js";
|
|
3
3
|
/**
|
|
4
4
|
* Requests and decodes signed identity attributes for an authenticated
|
|
5
5
|
* Internet Identity session.
|
|
6
6
|
*
|
|
7
|
+
* Await `authentication.prepareClient()` once during startup (the `useAuth`
|
|
8
|
+
* hook already does) so that {@link request} can open the identity provider
|
|
9
|
+
* window synchronously from a click handler.
|
|
10
|
+
*
|
|
7
11
|
* @example
|
|
8
12
|
* ```ts
|
|
9
13
|
* const attributes = new IdentityAttributesManager(authentication)
|
|
10
|
-
* const result = await attributes.request({
|
|
14
|
+
* const result = await attributes.request({
|
|
15
|
+
* keys: ["name"],
|
|
16
|
+
* nonce: () => fetchNonceFromCanister(),
|
|
17
|
+
* })
|
|
11
18
|
* ```
|
|
12
19
|
*/
|
|
13
20
|
export declare class IdentityAttributesManager {
|
|
14
21
|
readonly authentication: AuthenticationManager;
|
|
15
22
|
constructor(authentication: AuthenticationManager);
|
|
16
|
-
request: ({ keys, nonce,
|
|
17
|
-
requestOpenId: ({
|
|
23
|
+
request: ({ keys, nonce, signIn, maxTimeToLive, targets, ...clientOptions }: RequestIdentityAttributesParameters) => Promise<IdentityAttributeResult>;
|
|
24
|
+
requestOpenId: ({ keys, openIdProvider, ...rest }: RequestOpenIdIdentityAttributesParameters) => Promise<IdentityAttributeResult>;
|
|
18
25
|
}
|
|
19
26
|
//# sourceMappingURL=identity-attributes-manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity-attributes-manager.d.ts","sourceRoot":"","sources":["../../src/auth/identity-attributes-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"identity-attributes-manager.d.ts","sourceRoot":"","sources":["../../src/auth/identity-attributes-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,uBAAuB,EACvB,mCAAmC,EACnC,yCAAyC,EAC1C,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAOnE;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,yBAAyB;aACR,cAAc,EAAE,qBAAqB;gBAArC,cAAc,EAAE,qBAAqB;IAE1D,OAAO,GAAU,mEAOrB,mCAAmC,KAAG,OAAO,CAAC,uBAAuB,CAAC,CAyDxE;IAEM,aAAa,GAAI,mCAIrB,yCAAyC,KAAG,OAAO,CAAC,uBAAuB,CAAC,CAO9E;CACF"}
|