@ic-reactor/react 3.12.5 → 4.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +236 -423
- package/dist/index.d.ts +259 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +470 -17
- package/dist/index.js.map +1 -1
- package/llms.txt +82 -54
- package/package.json +12 -28
- package/src/index.tsx +611 -0
- package/dist/auth/authentication-manager.d.ts +0 -123
- package/dist/auth/authentication-manager.d.ts.map +0 -1
- package/dist/auth/authentication-manager.js +0 -767
- package/dist/auth/authentication-manager.js.map +0 -1
- package/dist/auth/constants.d.ts +0 -24
- package/dist/auth/constants.d.ts.map +0 -1
- package/dist/auth/constants.js +0 -24
- package/dist/auth/constants.js.map +0 -1
- package/dist/auth/createIdentityAttributeHooks.d.ts +0 -14
- package/dist/auth/createIdentityAttributeHooks.d.ts.map +0 -1
- package/dist/auth/createIdentityAttributeHooks.js +0 -106
- package/dist/auth/createIdentityAttributeHooks.js.map +0 -1
- package/dist/auth/identity-attributes-manager.d.ts +0 -26
- package/dist/auth/identity-attributes-manager.d.ts.map +0 -1
- package/dist/auth/identity-attributes-manager.js +0 -107
- package/dist/auth/identity-attributes-manager.js.map +0 -1
- package/dist/auth/identity-attributes.d.ts +0 -19
- package/dist/auth/identity-attributes.d.ts.map +0 -1
- package/dist/auth/identity-attributes.js +0 -170
- package/dist/auth/identity-attributes.js.map +0 -1
- package/dist/auth/index.d.ts +0 -8
- package/dist/auth/index.d.ts.map +0 -1
- package/dist/auth/index.js +0 -8
- package/dist/auth/index.js.map +0 -1
- package/dist/auth/local-ii-probe.d.ts +0 -46
- package/dist/auth/local-ii-probe.d.ts.map +0 -1
- package/dist/auth/local-ii-probe.js +0 -102
- package/dist/auth/local-ii-probe.js.map +0 -1
- package/dist/auth/types.d.ts +0 -179
- package/dist/auth/types.d.ts.map +0 -1
- package/dist/auth/types.js +0 -2
- package/dist/auth/types.js.map +0 -1
- package/dist/createActorHooks.d.ts +0 -52
- package/dist/createActorHooks.d.ts.map +0 -1
- package/dist/createActorHooks.js +0 -17
- package/dist/createActorHooks.js.map +0 -1
- package/dist/createInfiniteQuery.d.ts +0 -144
- package/dist/createInfiniteQuery.d.ts.map +0 -1
- package/dist/createInfiniteQuery.js +0 -174
- package/dist/createInfiniteQuery.js.map +0 -1
- package/dist/createMutation.d.ts +0 -30
- package/dist/createMutation.d.ts.map +0 -1
- package/dist/createMutation.js +0 -192
- package/dist/createMutation.js.map +0 -1
- package/dist/createQuery.d.ts +0 -30
- package/dist/createQuery.d.ts.map +0 -1
- package/dist/createQuery.js +0 -117
- package/dist/createQuery.js.map +0 -1
- package/dist/createSuspenseInfiniteQuery.d.ts +0 -147
- package/dist/createSuspenseInfiniteQuery.d.ts.map +0 -1
- package/dist/createSuspenseInfiniteQuery.js +0 -177
- package/dist/createSuspenseInfiniteQuery.js.map +0 -1
- package/dist/createSuspenseQuery.d.ts +0 -25
- package/dist/createSuspenseQuery.d.ts.map +0 -1
- package/dist/createSuspenseQuery.js +0 -111
- package/dist/createSuspenseQuery.js.map +0 -1
- package/dist/defineReactor.d.ts +0 -125
- package/dist/defineReactor.d.ts.map +0 -1
- package/dist/defineReactor.js +0 -180
- package/dist/defineReactor.js.map +0 -1
- package/dist/hooks/createAuthHooks.d.ts +0 -43
- package/dist/hooks/createAuthHooks.d.ts.map +0 -1
- package/dist/hooks/createAuthHooks.js +0 -131
- package/dist/hooks/createAuthHooks.js.map +0 -1
- package/dist/hooks/index.d.ts +0 -21
- package/dist/hooks/index.d.ts.map +0 -1
- package/dist/hooks/index.js +0 -24
- package/dist/hooks/index.js.map +0 -1
- package/dist/hooks/useActorInfiniteQuery.d.ts +0 -39
- package/dist/hooks/useActorInfiniteQuery.d.ts.map +0 -1
- package/dist/hooks/useActorInfiniteQuery.js +0 -56
- package/dist/hooks/useActorInfiniteQuery.js.map +0 -1
- package/dist/hooks/useActorMethod.d.ts +0 -115
- package/dist/hooks/useActorMethod.d.ts.map +0 -1
- package/dist/hooks/useActorMethod.js +0 -250
- package/dist/hooks/useActorMethod.js.map +0 -1
- package/dist/hooks/useActorMutation.d.ts +0 -48
- package/dist/hooks/useActorMutation.d.ts.map +0 -1
- package/dist/hooks/useActorMutation.js +0 -69
- package/dist/hooks/useActorMutation.js.map +0 -1
- package/dist/hooks/useActorQuery.d.ts +0 -32
- package/dist/hooks/useActorQuery.d.ts.map +0 -1
- package/dist/hooks/useActorQuery.js +0 -46
- package/dist/hooks/useActorQuery.js.map +0 -1
- package/dist/hooks/useActorSuspenseInfiniteQuery.d.ts +0 -39
- package/dist/hooks/useActorSuspenseInfiniteQuery.d.ts.map +0 -1
- package/dist/hooks/useActorSuspenseInfiniteQuery.js +0 -56
- package/dist/hooks/useActorSuspenseInfiniteQuery.js.map +0 -1
- package/dist/hooks/useActorSuspenseQuery.d.ts +0 -32
- package/dist/hooks/useActorSuspenseQuery.d.ts.map +0 -1
- package/dist/hooks/useActorSuspenseQuery.js +0 -47
- package/dist/hooks/useActorSuspenseQuery.js.map +0 -1
- package/dist/types.d.ts +0 -270
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -5
- package/dist/types.js.map +0 -1
- package/dist/utils.d.ts +0 -51
- package/dist/utils.d.ts.map +0 -1
- package/dist/utils.js +0 -105
- package/dist/utils.js.map +0 -1
- package/dist/validation.d.ts +0 -131
- package/dist/validation.d.ts.map +0 -1
- package/dist/validation.js +0 -125
- package/dist/validation.js.map +0 -1
- package/src/auth/authentication-manager.ts +0 -860
- package/src/auth/constants.ts +0 -32
- package/src/auth/createIdentityAttributeHooks.ts +0 -143
- package/src/auth/identity-attributes-manager.ts +0 -131
- package/src/auth/identity-attributes.ts +0 -270
- package/src/auth/index.ts +0 -7
- package/src/auth/local-ii-probe.ts +0 -147
- package/src/auth/types.ts +0 -200
- package/src/createActorHooks.ts +0 -220
- package/src/createInfiniteQuery.ts +0 -578
- package/src/createMutation.ts +0 -341
- package/src/createQuery.ts +0 -237
- package/src/createSuspenseInfiniteQuery.ts +0 -601
- package/src/createSuspenseQuery.ts +0 -234
- package/src/defineReactor.ts +0 -324
- package/src/hooks/createAuthHooks.ts +0 -189
- package/src/hooks/index.ts +0 -103
- package/src/hooks/useActorInfiniteQuery.ts +0 -205
- package/src/hooks/useActorMethod.ts +0 -507
- package/src/hooks/useActorMutation.ts +0 -205
- package/src/hooks/useActorQuery.ts +0 -124
- package/src/hooks/useActorSuspenseInfiniteQuery.ts +0 -205
- package/src/hooks/useActorSuspenseQuery.ts +0 -132
- package/src/index.ts +0 -23
- package/src/types.ts +0 -499
- package/src/utils.ts +0 -121
- package/src/validation.ts +0 -202
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
import type { Identity } from "@icp-sdk/core/agent";
|
|
2
|
-
import type { AuthClientLike, AuthClientSignInOptions, AuthState, AuthenticationClientOptions, AuthenticationSignInOptions } from "./types.js";
|
|
3
|
-
import { ClientManager } from "@ic-reactor/core";
|
|
4
|
-
export interface AuthenticationManagerParameters extends AuthenticationClientOptions {
|
|
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
|
-
*/
|
|
10
|
-
authClient?: AuthClientLike;
|
|
11
|
-
/** Canister ID of a locally deployed Internet Identity. */
|
|
12
|
-
internetIdentityId?: string;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Manages Internet Identity sign-in, session restoration, and authentication
|
|
16
|
-
* state for a {@link ClientManager}.
|
|
17
|
-
*
|
|
18
|
-
* @example
|
|
19
|
-
* ```ts
|
|
20
|
-
* const authentication = new AuthenticationManager({ clientManager })
|
|
21
|
-
* const identity = await authentication.authenticate()
|
|
22
|
-
* ```
|
|
23
|
-
*/
|
|
24
|
-
export declare class AuthenticationManager {
|
|
25
|
-
private authClient?;
|
|
26
|
-
private authPromise?;
|
|
27
|
-
private authClientWasProvided;
|
|
28
|
-
private authStateRevision;
|
|
29
|
-
private authStateSubscribers;
|
|
30
|
-
private authClientConstructor?;
|
|
31
|
-
private authClientConstructorPromise?;
|
|
32
|
-
private authModuleMissing;
|
|
33
|
-
private authClientOptions?;
|
|
34
|
-
private authStateValue;
|
|
35
|
-
private readonly identityProvider?;
|
|
36
|
-
private readonly internetIdentityId?;
|
|
37
|
-
/**
|
|
38
|
-
* Which authorize path the locally deployed Internet Identity serves, once
|
|
39
|
-
* probed. `undefined` means not probed yet; `null` means it serves no sign-in
|
|
40
|
-
* UI and login should fail with an explanation rather than open a popup onto
|
|
41
|
-
* a gateway error page.
|
|
42
|
-
*/
|
|
43
|
-
private localAuthorizePath?;
|
|
44
|
-
private readonly defaultClientOptions;
|
|
45
|
-
readonly clientManager: ClientManager;
|
|
46
|
-
/** The current authentication state. */
|
|
47
|
-
get authState(): AuthState;
|
|
48
|
-
constructor({ clientManager, authClient, identityProvider, internetIdentityId, ...clientOptions }: AuthenticationManagerParameters);
|
|
49
|
-
/** @internal Used by IdentityAttributesManager. */
|
|
50
|
-
get client(): AuthClientLike | undefined;
|
|
51
|
-
subscribeAuthState(callback: (state: AuthState) => void): () => void;
|
|
52
|
-
/**
|
|
53
|
-
* Preloads the auth module and creates an AuthClient ahead of time.
|
|
54
|
-
*
|
|
55
|
-
* Call (and await) this before wiring up a login button: it makes
|
|
56
|
-
* {@link login} and {@link IdentityAttributesManager.request} able to open
|
|
57
|
-
* the identity provider synchronously inside the click handler, which is
|
|
58
|
-
* what browser popup blockers and the ICRC-29 transport require.
|
|
59
|
-
*/
|
|
60
|
-
prepareClient(options?: AuthenticationClientOptions): Promise<AuthClientLike | undefined>;
|
|
61
|
-
/**
|
|
62
|
-
* Probe the local Internet Identity canister once, and remember what it
|
|
63
|
-
* serves.
|
|
64
|
-
*
|
|
65
|
-
* Only for the derived local provider: an explicitly configured
|
|
66
|
-
* `identityProvider` is the caller's business, and mainnet is fixed.
|
|
67
|
-
*/
|
|
68
|
-
private ensureLocalAuthorizePath;
|
|
69
|
-
/**
|
|
70
|
-
* Returns an AuthClient without awaiting, or `undefined` when the auth
|
|
71
|
-
* module has not been loaded yet.
|
|
72
|
-
*
|
|
73
|
-
* Callers that must stay inside a user gesture use this instead of
|
|
74
|
-
* `ensureClient`; awaiting anything before opening the identity
|
|
75
|
-
* provider window loses the gesture.
|
|
76
|
-
*/
|
|
77
|
-
getPreparedClient(options?: AuthenticationClientOptions): AuthClientLike | undefined;
|
|
78
|
-
authenticate: () => Promise<Identity | undefined>;
|
|
79
|
-
login: (loginOptions?: AuthenticationSignInOptions) => Promise<void>;
|
|
80
|
-
logout: (options?: {
|
|
81
|
-
returnTo?: string;
|
|
82
|
-
}) => Promise<void>;
|
|
83
|
-
private initializeClient;
|
|
84
|
-
/** @internal Used by IdentityAttributesManager. */
|
|
85
|
-
signInOrRecoverIdentity(options?: AuthClientSignInOptions): Promise<Identity>;
|
|
86
|
-
private ensurePreparedClient;
|
|
87
|
-
/**
|
|
88
|
-
* Only rebuild the client when the effective options actually changed.
|
|
89
|
-
*
|
|
90
|
-
* Recreating on every call would discard the client warmed up by
|
|
91
|
-
* `prepareClient()` and register a duplicate sign-out callback on the
|
|
92
|
-
* shared IdleManager singleton each time.
|
|
93
|
-
*/
|
|
94
|
-
private shouldRecreateClient;
|
|
95
|
-
/**
|
|
96
|
-
* Merges constructor-level defaults with per-call overrides and fills in the
|
|
97
|
-
* network-appropriate identity provider.
|
|
98
|
-
*/
|
|
99
|
-
private resolveClientOptions;
|
|
100
|
-
/** Whether the shared agent currently signs as the anonymous principal. */
|
|
101
|
-
private agentIsAnonymous;
|
|
102
|
-
/**
|
|
103
|
-
* End a session whose delegation has lapsed: ask the client to forget it,
|
|
104
|
-
* put the anonymous identity on the agent -- which also sweeps the previous
|
|
105
|
-
* user's caller-scoped cache entries and refetches the rest anonymously --
|
|
106
|
-
* and publish the signed-out state. `signOut` failing changes nothing here:
|
|
107
|
-
* the delegation is already unusable, and the agent must not keep it.
|
|
108
|
-
*/
|
|
109
|
-
private expireSession;
|
|
110
|
-
private syncStateFromClient;
|
|
111
|
-
/** @internal Used by IdentityAttributesManager. */
|
|
112
|
-
ensureClient(options?: AuthenticationClientOptions): Promise<AuthClientLike | undefined>;
|
|
113
|
-
/** @internal Used by IdentityAttributesManager. */
|
|
114
|
-
commitIdentity(identity: Identity, isAuthenticated: boolean): Promise<void>;
|
|
115
|
-
/** @internal Used by IdentityAttributesManager. */
|
|
116
|
-
setAuthenticating(): void;
|
|
117
|
-
/** @internal Used by IdentityAttributesManager. */
|
|
118
|
-
setAuthenticationError(error: Error): void;
|
|
119
|
-
private getDefaultIdentityProvider;
|
|
120
|
-
private updateState;
|
|
121
|
-
private loadAuthClientConstructor;
|
|
122
|
-
}
|
|
123
|
-
//# sourceMappingURL=authentication-manager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
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;AAEnD,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACvB,SAAS,EACT,2BAA2B,EAC3B,2BAA2B,EAC5B,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,aAAa,EAAS,MAAM,kBAAkB,CAAA;AAgBvD,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;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB,CAAC,CAAsB;IACjD,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;IAsClC,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;IAehE;;;;;;OAMG;YACW,wBAAwB;IA2BtC;;;;;;;OAOG;IACI,iBAAiB,CACtB,OAAO,CAAC,EAAE,2BAA2B,GACpC,cAAc,GAAG,SAAS;IAItB,YAAY,QAAa,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAqG5D;IAEM,KAAK,GAAU,eAAe,2BAA2B,mBAwD/D;IAEM,MAAM,GAAU,UAAU;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,mBAuBrD;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;IAe5B,2EAA2E;IAC3E,OAAO,CAAC,gBAAgB;IAKxB;;;;;;OAMG;YACW,aAAa;YAgBb,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;IA0BlC,OAAO,CAAC,WAAW;YASL,yBAAyB;CAkCxC"}
|