@ic-reactor/react 3.6.0 → 3.7.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 +28 -8
- package/dist/auth/authentication-manager.d.ts +66 -0
- package/dist/auth/authentication-manager.d.ts.map +1 -0
- package/dist/auth/authentication-manager.js +458 -0
- package/dist/auth/authentication-manager.js.map +1 -0
- package/dist/auth/constants.d.ts +18 -0
- package/dist/auth/constants.d.ts.map +1 -0
- package/dist/auth/constants.js +18 -0
- package/dist/auth/constants.js.map +1 -0
- package/dist/auth/createIdentityAttributeHooks.d.ts +14 -0
- package/dist/auth/createIdentityAttributeHooks.d.ts.map +1 -0
- package/dist/auth/createIdentityAttributeHooks.js +54 -0
- package/dist/auth/createIdentityAttributeHooks.js.map +1 -0
- package/dist/auth/identity-attributes-manager.d.ts +19 -0
- package/dist/auth/identity-attributes-manager.d.ts.map +1 -0
- package/dist/auth/identity-attributes-manager.js +94 -0
- package/dist/auth/identity-attributes-manager.js.map +1 -0
- package/dist/auth/identity-attributes.d.ts +19 -0
- package/dist/auth/identity-attributes.d.ts.map +1 -0
- package/dist/auth/identity-attributes.js +170 -0
- package/dist/auth/identity-attributes.js.map +1 -0
- package/dist/auth/index.d.ts +8 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +8 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/types.d.ts +75 -0
- package/dist/auth/types.d.ts.map +1 -0
- package/dist/auth/types.js +2 -0
- package/dist/auth/types.js.map +1 -0
- package/dist/createActorHooks.d.ts +12 -12
- package/dist/createActorHooks.d.ts.map +1 -1
- package/dist/createActorHooks.js.map +1 -1
- package/dist/createInfiniteQuery.d.ts +32 -32
- package/dist/createInfiniteQuery.d.ts.map +1 -1
- package/dist/createInfiniteQuery.js +6 -6
- package/dist/createInfiniteQuery.js.map +1 -1
- package/dist/createMutation.d.ts +12 -1
- package/dist/createMutation.d.ts.map +1 -1
- package/dist/createMutation.js +11 -0
- package/dist/createMutation.js.map +1 -1
- package/dist/createQuery.d.ts +12 -2
- package/dist/createQuery.d.ts.map +1 -1
- package/dist/createQuery.js +15 -5
- package/dist/createQuery.js.map +1 -1
- package/dist/createSuspenseInfiniteQuery.d.ts +31 -31
- package/dist/createSuspenseInfiniteQuery.d.ts.map +1 -1
- package/dist/createSuspenseInfiniteQuery.js +6 -6
- package/dist/createSuspenseInfiniteQuery.js.map +1 -1
- package/dist/createSuspenseQuery.d.ts +2 -2
- package/dist/createSuspenseQuery.d.ts.map +1 -1
- package/dist/createSuspenseQuery.js.map +1 -1
- package/dist/defineReactor.d.ts +74 -0
- package/dist/defineReactor.d.ts.map +1 -0
- package/dist/defineReactor.js +75 -0
- package/dist/defineReactor.js.map +1 -0
- package/dist/{createAuthHooks.d.ts → hooks/createAuthHooks.d.ts} +6 -13
- package/dist/hooks/createAuthHooks.d.ts.map +1 -0
- package/dist/{createAuthHooks.js → hooks/createAuthHooks.js} +12 -57
- package/dist/hooks/createAuthHooks.js.map +1 -0
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +2 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/useActorInfiniteQuery.d.ts +9 -9
- package/dist/hooks/useActorInfiniteQuery.d.ts.map +1 -1
- package/dist/hooks/useActorInfiniteQuery.js +3 -1
- package/dist/hooks/useActorInfiniteQuery.js.map +1 -1
- package/dist/hooks/useActorMethod.d.ts +17 -17
- package/dist/hooks/useActorMethod.d.ts.map +1 -1
- package/dist/hooks/useActorMethod.js.map +1 -1
- package/dist/hooks/useActorMutation.d.ts +18 -7
- package/dist/hooks/useActorMutation.d.ts.map +1 -1
- package/dist/hooks/useActorMutation.js +11 -0
- package/dist/hooks/useActorMutation.js.map +1 -1
- package/dist/hooks/useActorQuery.d.ts +8 -8
- package/dist/hooks/useActorQuery.d.ts.map +1 -1
- package/dist/hooks/useActorQuery.js.map +1 -1
- package/dist/hooks/useActorSuspenseInfiniteQuery.d.ts +9 -9
- package/dist/hooks/useActorSuspenseInfiniteQuery.d.ts.map +1 -1
- package/dist/hooks/useActorSuspenseInfiniteQuery.js +3 -1
- package/dist/hooks/useActorSuspenseInfiniteQuery.js.map +1 -1
- package/dist/hooks/useActorSuspenseQuery.d.ts +8 -8
- package/dist/hooks/useActorSuspenseQuery.d.ts.map +1 -1
- package/dist/hooks/useActorSuspenseQuery.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +24 -24
- package/dist/types.d.ts.map +1 -1
- package/dist/utils.d.ts +3 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +10 -2
- package/dist/utils.js.map +1 -1
- package/llms.txt +48 -0
- package/package.json +27 -21
- package/src/auth/authentication-manager.ts +519 -0
- package/src/auth/constants.ts +25 -0
- package/src/auth/createIdentityAttributeHooks.ts +83 -0
- package/src/auth/identity-attributes-manager.ts +127 -0
- package/src/auth/identity-attributes.ts +270 -0
- package/src/auth/index.ts +7 -0
- package/src/auth/types.ts +88 -0
- package/src/createActorHooks.ts +81 -49
- package/src/createInfiniteQuery.ts +153 -97
- package/src/createMutation.ts +34 -18
- package/src/createQuery.ts +92 -48
- package/src/createSuspenseInfiniteQuery.ts +165 -114
- package/src/createSuspenseQuery.ts +67 -41
- package/src/defineReactor.test.ts +70 -0
- package/src/defineReactor.ts +150 -0
- package/src/{createAuthHooks.ts → hooks/createAuthHooks.ts} +17 -98
- package/src/hooks/index.ts +4 -0
- package/src/hooks/useActorInfiniteQuery.ts +44 -30
- package/src/hooks/useActorMethod.ts +62 -53
- package/src/hooks/useActorMutation.ts +47 -30
- package/src/hooks/useActorQuery.ts +36 -32
- package/src/hooks/useActorSuspenseInfiniteQuery.ts +56 -30
- package/src/hooks/useActorSuspenseQuery.ts +42 -32
- package/src/index.ts +3 -1
- package/src/types.ts +76 -71
- package/src/utils.test.ts +14 -0
- package/src/utils.ts +15 -2
- package/dist/createAuthHooks.d.ts.map +0 -1
- package/dist/createAuthHooks.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createIdentityAttributeHooks.d.ts","sourceRoot":"","sources":["../../src/auth/createIdentityAttributeHooks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAC9E,OAAO,KAAK,EACV,uBAAuB,EACvB,mCAAmC,EACnC,yCAAyC,EAC1C,MAAM,SAAS,CAAA;AAEhB,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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { useCallback, useState } from "react";
|
|
2
|
+
export function createIdentityAttributeHooks(identityAttributes) {
|
|
3
|
+
const useIdentityAttributes = () => {
|
|
4
|
+
const [attributes, setAttributes] = useState(null);
|
|
5
|
+
const [isRequestingAttributes, setIsRequestingAttributes] = useState(false);
|
|
6
|
+
const [attributeError, setAttributeError] = useState(null);
|
|
7
|
+
const requestAttributes = useCallback(async (params) => {
|
|
8
|
+
setIsRequestingAttributes(true);
|
|
9
|
+
setAttributeError(null);
|
|
10
|
+
try {
|
|
11
|
+
const result = await identityAttributes.request(params);
|
|
12
|
+
setAttributes(result);
|
|
13
|
+
return result;
|
|
14
|
+
}
|
|
15
|
+
catch (error) {
|
|
16
|
+
setAttributeError(error);
|
|
17
|
+
throw error;
|
|
18
|
+
}
|
|
19
|
+
finally {
|
|
20
|
+
setIsRequestingAttributes(false);
|
|
21
|
+
}
|
|
22
|
+
}, []);
|
|
23
|
+
const requestOpenIdAttributes = useCallback(async (params) => {
|
|
24
|
+
setIsRequestingAttributes(true);
|
|
25
|
+
setAttributeError(null);
|
|
26
|
+
try {
|
|
27
|
+
const result = await identityAttributes.requestOpenId(params);
|
|
28
|
+
setAttributes(result);
|
|
29
|
+
return result;
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
setAttributeError(error);
|
|
33
|
+
throw error;
|
|
34
|
+
}
|
|
35
|
+
finally {
|
|
36
|
+
setIsRequestingAttributes(false);
|
|
37
|
+
}
|
|
38
|
+
}, []);
|
|
39
|
+
const clearAttributes = useCallback(() => {
|
|
40
|
+
setAttributes(null);
|
|
41
|
+
setAttributeError(null);
|
|
42
|
+
}, []);
|
|
43
|
+
return {
|
|
44
|
+
requestAttributes,
|
|
45
|
+
requestOpenIdAttributes,
|
|
46
|
+
attributes,
|
|
47
|
+
isRequestingAttributes,
|
|
48
|
+
attributeError,
|
|
49
|
+
clearAttributes,
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
return { useIdentityAttributes };
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=createIdentityAttributeHooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createIdentityAttributeHooks.js","sourceRoot":"","sources":["../../src/auth/createIdentityAttributeHooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAqB7C,MAAM,UAAU,4BAA4B,CAC1C,kBAA6C;IAE7C,MAAM,qBAAqB,GAAG,GAAgC,EAAE;QAC9D,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAC/B,QAAQ,CAAiC,IAAI,CAAC,CAAA;QAChD,MAAM,CAAC,sBAAsB,EAAE,yBAAyB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC3E,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAA;QAExE,MAAM,iBAAiB,GAAG,WAAW,CACnC,KAAK,EAAE,MAA2C,EAAE,EAAE;YACpD,yBAAyB,CAAC,IAAI,CAAC,CAAA;YAC/B,iBAAiB,CAAC,IAAI,CAAC,CAAA;YACvB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;gBACvD,aAAa,CAAC,MAAM,CAAC,CAAA;gBACrB,OAAO,MAAM,CAAA;YACf,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,iBAAiB,CAAC,KAAc,CAAC,CAAA;gBACjC,MAAM,KAAK,CAAA;YACb,CAAC;oBAAS,CAAC;gBACT,yBAAyB,CAAC,KAAK,CAAC,CAAA;YAClC,CAAC;QACH,CAAC,EACD,EAAE,CACH,CAAA;QAED,MAAM,uBAAuB,GAAG,WAAW,CACzC,KAAK,EAAE,MAAiD,EAAE,EAAE;YAC1D,yBAAyB,CAAC,IAAI,CAAC,CAAA;YAC/B,iBAAiB,CAAC,IAAI,CAAC,CAAA;YACvB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;gBAC7D,aAAa,CAAC,MAAM,CAAC,CAAA;gBACrB,OAAO,MAAM,CAAA;YACf,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,iBAAiB,CAAC,KAAc,CAAC,CAAA;gBACjC,MAAM,KAAK,CAAA;YACb,CAAC;oBAAS,CAAC;gBACT,yBAAyB,CAAC,KAAK,CAAC,CAAA;YAClC,CAAC;QACH,CAAC,EACD,EAAE,CACH,CAAA;QAED,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,EAAE;YACvC,aAAa,CAAC,IAAI,CAAC,CAAA;YACnB,iBAAiB,CAAC,IAAI,CAAC,CAAA;QACzB,CAAC,EAAE,EAAE,CAAC,CAAA;QAEN,OAAO;YACL,iBAAiB;YACjB,uBAAuB;YACvB,UAAU;YACV,sBAAsB;YACtB,cAAc;YACd,eAAe;SAChB,CAAA;IACH,CAAC,CAAA;IAED,OAAO,EAAE,qBAAqB,EAAE,CAAA;AAClC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { IdentityAttributeResult, RequestIdentityAttributesParameters, RequestOpenIdIdentityAttributesParameters } from "./types";
|
|
2
|
+
import { AuthenticationManager } from "./authentication-manager";
|
|
3
|
+
/**
|
|
4
|
+
* Requests and decodes signed identity attributes for an authenticated
|
|
5
|
+
* Internet Identity session.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* const attributes = new IdentityAttributesManager(authentication)
|
|
10
|
+
* const result = await attributes.request({ keys: ["name"] })
|
|
11
|
+
* ```
|
|
12
|
+
*/
|
|
13
|
+
export declare class IdentityAttributesManager {
|
|
14
|
+
readonly authentication: AuthenticationManager;
|
|
15
|
+
constructor(authentication: AuthenticationManager);
|
|
16
|
+
request: ({ keys, nonce, identityProvider, openIdProvider, windowOpenerFeatures, signIn, maxTimeToLive, targets, }: RequestIdentityAttributesParameters) => Promise<IdentityAttributeResult>;
|
|
17
|
+
requestOpenId: ({ nonce, openIdProvider, keys, identityProvider, windowOpenerFeatures, signIn, maxTimeToLive, targets, }: RequestOpenIdIdentityAttributesParameters) => Promise<IdentityAttributeResult>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=identity-attributes-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity-attributes-manager.d.ts","sourceRoot":"","sources":["../../src/auth/identity-attributes-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,uBAAuB,EACvB,mCAAmC,EACnC,yCAAyC,EAC1C,MAAM,SAAS,CAAA;AAEhB,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAOhE;;;;;;;;;GASG;AACH,qBAAa,yBAAyB;aACR,cAAc,EAAE,qBAAqB;gBAArC,cAAc,EAAE,qBAAqB;IAE1D,OAAO,GAAU,0GASrB,mCAAmC,KAAG,OAAO,CAAC,uBAAuB,CAAC,CAoDxE;IAEM,aAAa,GAAU,0GAS3B,yCAAyC,KAAG,OAAO,CAAC,uBAAuB,CAAC,CAW9E;CACF"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { decodeIdentityAttributeValues, identityAttributeKeys, normalizeSignedIdentityAttributes, } from "./identity-attributes";
|
|
2
|
+
/**
|
|
3
|
+
* Requests and decodes signed identity attributes for an authenticated
|
|
4
|
+
* Internet Identity session.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* const attributes = new IdentityAttributesManager(authentication)
|
|
9
|
+
* const result = await attributes.request({ keys: ["name"] })
|
|
10
|
+
* ```
|
|
11
|
+
*/
|
|
12
|
+
export class IdentityAttributesManager {
|
|
13
|
+
constructor(authentication) {
|
|
14
|
+
Object.defineProperty(this, "authentication", {
|
|
15
|
+
enumerable: true,
|
|
16
|
+
configurable: true,
|
|
17
|
+
writable: true,
|
|
18
|
+
value: authentication
|
|
19
|
+
});
|
|
20
|
+
Object.defineProperty(this, "request", {
|
|
21
|
+
enumerable: true,
|
|
22
|
+
configurable: true,
|
|
23
|
+
writable: true,
|
|
24
|
+
value: async ({ keys, nonce, identityProvider, openIdProvider, windowOpenerFeatures, signIn = true, maxTimeToLive, targets, }) => {
|
|
25
|
+
const authClient = await this.authentication.ensureClient(getAuthClientOptions({
|
|
26
|
+
identityProvider,
|
|
27
|
+
windowOpenerFeatures,
|
|
28
|
+
openIdProvider,
|
|
29
|
+
}));
|
|
30
|
+
if (!authClient) {
|
|
31
|
+
throw new Error("Authentication module is missing or failed to initialize. To request identity attributes, please install @icp-sdk/auth v7 or provide a compatible authClient.");
|
|
32
|
+
}
|
|
33
|
+
this.authentication.setAuthenticating();
|
|
34
|
+
try {
|
|
35
|
+
const identityPromise = signIn
|
|
36
|
+
? this.authentication.signInOrRecoverIdentity({
|
|
37
|
+
maxTimeToLive,
|
|
38
|
+
targets,
|
|
39
|
+
})
|
|
40
|
+
: Promise.resolve(authClient.getIdentity());
|
|
41
|
+
const requestPromise = authClient.requestAttributes({ keys, nonce });
|
|
42
|
+
const [signedAttributes, identity] = await Promise.all([
|
|
43
|
+
requestPromise,
|
|
44
|
+
identityPromise,
|
|
45
|
+
]);
|
|
46
|
+
const finalIdentity = identity ?? (await authClient.getIdentity());
|
|
47
|
+
const isAuthenticated = await authClient.isAuthenticated();
|
|
48
|
+
await this.authentication.commitIdentity(finalIdentity, isAuthenticated);
|
|
49
|
+
const normalizedSignedAttributes = normalizeSignedIdentityAttributes(signedAttributes);
|
|
50
|
+
return {
|
|
51
|
+
principal: finalIdentity.getPrincipal().toText(),
|
|
52
|
+
requestedKeys: keys,
|
|
53
|
+
signedAttributes: normalizedSignedAttributes,
|
|
54
|
+
decodedAttributes: decodeIdentityAttributeValues(normalizedSignedAttributes.data, keys),
|
|
55
|
+
completedAt: new Date().toISOString(),
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
this.authentication.setAuthenticationError(error);
|
|
60
|
+
throw error;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
Object.defineProperty(this, "requestOpenId", {
|
|
65
|
+
enumerable: true,
|
|
66
|
+
configurable: true,
|
|
67
|
+
writable: true,
|
|
68
|
+
value: async ({ nonce, openIdProvider, keys, identityProvider, windowOpenerFeatures, signIn, maxTimeToLive, targets, }) => {
|
|
69
|
+
return this.request({
|
|
70
|
+
keys: identityAttributeKeys({ openIdProvider, keys }),
|
|
71
|
+
nonce,
|
|
72
|
+
identityProvider,
|
|
73
|
+
openIdProvider,
|
|
74
|
+
windowOpenerFeatures,
|
|
75
|
+
signIn,
|
|
76
|
+
maxTimeToLive,
|
|
77
|
+
targets,
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
function getAuthClientOptions(options) {
|
|
84
|
+
return {
|
|
85
|
+
identityProvider: options.identityProvider,
|
|
86
|
+
windowOpenerFeatures: options.windowOpenerFeatures,
|
|
87
|
+
openIdProvider: options.openIdProvider === "google" ||
|
|
88
|
+
options.openIdProvider === "apple" ||
|
|
89
|
+
options.openIdProvider === "microsoft"
|
|
90
|
+
? options.openIdProvider
|
|
91
|
+
: undefined,
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=identity-attributes-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity-attributes-manager.js","sourceRoot":"","sources":["../../src/auth/identity-attributes-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { IdentityAttributeOpenIdProvider, IdentityAttributeValues, SignedIdentityAttributes } from "./types";
|
|
2
|
+
export declare const IDENTITY_ATTRIBUTES_PROVIDER = "https://id.ai/authorize";
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated Use the default ClientManager identity provider or
|
|
5
|
+
* `IDENTITY_ATTRIBUTES_PROVIDER` instead.
|
|
6
|
+
*/
|
|
7
|
+
export declare const IDENTITY_ATTRIBUTES_BETA_PROVIDER = "https://id.ai/authorize";
|
|
8
|
+
export declare function identityAttributeKeys({ openIdProvider, keys, }: {
|
|
9
|
+
openIdProvider: IdentityAttributeOpenIdProvider;
|
|
10
|
+
keys: string[];
|
|
11
|
+
}): string[];
|
|
12
|
+
export declare function normalizeOpenIdProvider(openIdProvider: IdentityAttributeOpenIdProvider): string;
|
|
13
|
+
export declare function resolveIdentityAttributeKeys({ openIdProvider, keys, }: {
|
|
14
|
+
openIdProvider: IdentityAttributeOpenIdProvider;
|
|
15
|
+
keys: string[];
|
|
16
|
+
}): Promise<string[]>;
|
|
17
|
+
export declare function decodeIdentityAttributeValues(data: Uint8Array, requestedKeys: string[]): IdentityAttributeValues;
|
|
18
|
+
export declare function normalizeSignedIdentityAttributes(attributes: SignedIdentityAttributes): SignedIdentityAttributes;
|
|
19
|
+
//# sourceMappingURL=identity-attributes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity-attributes.d.ts","sourceRoot":"","sources":["../../src/auth/identity-attributes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,+BAA+B,EAC/B,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,SAAS,CAAA;AAGhB,eAAO,MAAM,4BAA4B,4BAAgC,CAAA;AAEzE;;;GAGG;AACH,eAAO,MAAM,iCAAiC,4BAA+B,CAAA;AAQ7E,wBAAgB,qBAAqB,CAAC,EACpC,cAAc,EACd,IAAI,GACL,EAAE;IACD,cAAc,EAAE,+BAA+B,CAAA;IAC/C,IAAI,EAAE,MAAM,EAAE,CAAA;CACf,GAAG,MAAM,EAAE,CAGX;AAED,wBAAgB,uBAAuB,CACrC,cAAc,EAAE,+BAA+B,GAC9C,MAAM,CAMR;AAED,wBAAsB,4BAA4B,CAAC,EACjD,cAAc,EACd,IAAI,GACL,EAAE;IACD,cAAc,EAAE,+BAA+B,CAAA;IAC/C,IAAI,EAAE,MAAM,EAAE,CAAA;CACf,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAEpB;AAED,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,UAAU,EAChB,aAAa,EAAE,MAAM,EAAE,GACtB,uBAAuB,CAgBzB;AA6LD,wBAAgB,iCAAiC,CAC/C,UAAU,EAAE,wBAAwB,GACnC,wBAAwB,CAK1B"}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
import { IDL } from "@icp-sdk/core/candid";
|
|
2
|
+
import { IC_INTERNET_IDENTITY_PROVIDER } from "./constants";
|
|
3
|
+
export const IDENTITY_ATTRIBUTES_PROVIDER = IC_INTERNET_IDENTITY_PROVIDER;
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated Use the default ClientManager identity provider or
|
|
6
|
+
* `IDENTITY_ATTRIBUTES_PROVIDER` instead.
|
|
7
|
+
*/
|
|
8
|
+
export const IDENTITY_ATTRIBUTES_BETA_PROVIDER = IDENTITY_ATTRIBUTES_PROVIDER;
|
|
9
|
+
const OPEN_ID_PROVIDER_URLS = {
|
|
10
|
+
apple: "https://appleid.apple.com",
|
|
11
|
+
google: "https://accounts.google.com",
|
|
12
|
+
microsoft: "https://login.microsoftonline.com/{tid}/v2.0",
|
|
13
|
+
};
|
|
14
|
+
export function identityAttributeKeys({ openIdProvider, keys, }) {
|
|
15
|
+
const provider = normalizeOpenIdProvider(openIdProvider);
|
|
16
|
+
return keys.map((key) => `openid:${provider}:${key}`);
|
|
17
|
+
}
|
|
18
|
+
export function normalizeOpenIdProvider(openIdProvider) {
|
|
19
|
+
return (OPEN_ID_PROVIDER_URLS[openIdProvider] ?? openIdProvider);
|
|
20
|
+
}
|
|
21
|
+
export async function resolveIdentityAttributeKeys({ openIdProvider, keys, }) {
|
|
22
|
+
return identityAttributeKeys({ openIdProvider, keys });
|
|
23
|
+
}
|
|
24
|
+
export function decodeIdentityAttributeValues(data, requestedKeys) {
|
|
25
|
+
const requestedKeyMap = requestedKeys.reduce((acc, key) => {
|
|
26
|
+
acc[key] = identityAttributeDisplayKey(key);
|
|
27
|
+
acc[identityAttributeDisplayKey(key)] = identityAttributeDisplayKey(key);
|
|
28
|
+
return acc;
|
|
29
|
+
}, {});
|
|
30
|
+
const decodedValues = decodeCandidAttributeValues(data, requestedKeyMap);
|
|
31
|
+
if (Object.keys(decodedValues).length > 0) {
|
|
32
|
+
return decodedValues;
|
|
33
|
+
}
|
|
34
|
+
return extractPrintableAttributeValues(data, requestedKeys);
|
|
35
|
+
}
|
|
36
|
+
function decodeCandidAttributeValues(data, requestedKeyMap) {
|
|
37
|
+
const textPairs = IDL.Vec(IDL.Tuple(IDL.Text, IDL.Text));
|
|
38
|
+
const recordPairs = IDL.Vec(IDL.Record({
|
|
39
|
+
key: IDL.Text,
|
|
40
|
+
value: IDL.Text,
|
|
41
|
+
}));
|
|
42
|
+
const candidates = [
|
|
43
|
+
[textPairs],
|
|
44
|
+
[recordPairs],
|
|
45
|
+
[IDL.Record({ attributes: textPairs })],
|
|
46
|
+
[IDL.Record({ values: textPairs })],
|
|
47
|
+
[IDL.Record({ attributes: recordPairs })],
|
|
48
|
+
[IDL.Record({ values: recordPairs })],
|
|
49
|
+
];
|
|
50
|
+
for (const candidate of candidates) {
|
|
51
|
+
try {
|
|
52
|
+
const decoded = IDL.decode(candidate, data);
|
|
53
|
+
const values = collectDecodedAttributeValues(decoded, requestedKeyMap);
|
|
54
|
+
if (Object.keys(values).length > 0) {
|
|
55
|
+
return values;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
catch {
|
|
59
|
+
// Try the next known beta payload shape, then fall back to text extraction.
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
return {};
|
|
63
|
+
}
|
|
64
|
+
function collectDecodedAttributeValues(value, requestedKeyMap, activeKey) {
|
|
65
|
+
const values = {};
|
|
66
|
+
if (typeof value === "string") {
|
|
67
|
+
const displayKey = requestedKeyMap[value];
|
|
68
|
+
if (displayKey) {
|
|
69
|
+
return values;
|
|
70
|
+
}
|
|
71
|
+
if (activeKey && isPrintableTextValue(value)) {
|
|
72
|
+
values[activeKey] = value;
|
|
73
|
+
}
|
|
74
|
+
return values;
|
|
75
|
+
}
|
|
76
|
+
if (Array.isArray(value)) {
|
|
77
|
+
if (value.length === 2 && typeof value[0] === "string") {
|
|
78
|
+
const displayKey = requestedKeyMap[value[0]];
|
|
79
|
+
if (displayKey &&
|
|
80
|
+
typeof value[1] === "string" &&
|
|
81
|
+
isPrintableTextValue(value[1])) {
|
|
82
|
+
values[displayKey] = value[1];
|
|
83
|
+
return values;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
for (const item of value) {
|
|
87
|
+
Object.assign(values, collectDecodedAttributeValues(item, requestedKeyMap, activeKey));
|
|
88
|
+
}
|
|
89
|
+
return values;
|
|
90
|
+
}
|
|
91
|
+
if (value && typeof value === "object") {
|
|
92
|
+
const record = value;
|
|
93
|
+
if (typeof record.key === "string" && typeof record.value === "string") {
|
|
94
|
+
const displayKey = requestedKeyMap[record.key];
|
|
95
|
+
if (displayKey && isPrintableTextValue(record.value)) {
|
|
96
|
+
values[displayKey] = record.value;
|
|
97
|
+
return values;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
for (const [key, nested] of Object.entries(record)) {
|
|
101
|
+
const displayKey = requestedKeyMap[key] ?? activeKey;
|
|
102
|
+
if (displayKey &&
|
|
103
|
+
typeof nested === "string" &&
|
|
104
|
+
isPrintableTextValue(nested)) {
|
|
105
|
+
values[displayKey] = nested;
|
|
106
|
+
continue;
|
|
107
|
+
}
|
|
108
|
+
Object.assign(values, collectDecodedAttributeValues(nested, requestedKeyMap, displayKey));
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
return values;
|
|
112
|
+
}
|
|
113
|
+
function extractPrintableAttributeValues(data, requestedKeys) {
|
|
114
|
+
const text = new TextDecoder().decode(data);
|
|
115
|
+
const values = {};
|
|
116
|
+
for (const requestedKey of requestedKeys) {
|
|
117
|
+
const start = text.indexOf(requestedKey);
|
|
118
|
+
if (start === -1) {
|
|
119
|
+
continue;
|
|
120
|
+
}
|
|
121
|
+
const tail = text.slice(start + requestedKey.length);
|
|
122
|
+
const printableRuns = tail.match(/[\x20-\x7E]{2,512}/g) ?? [];
|
|
123
|
+
const value = printableRuns
|
|
124
|
+
.map((candidate) => cleanPrintableAttributeValue(candidate, requestedKeys))
|
|
125
|
+
.find((candidate) => isPrintableTextValue(candidate) &&
|
|
126
|
+
candidate !== requestedKey &&
|
|
127
|
+
!candidate.startsWith("openid:"));
|
|
128
|
+
if (value) {
|
|
129
|
+
values[identityAttributeDisplayKey(requestedKey)] = value.trim();
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
return values;
|
|
133
|
+
}
|
|
134
|
+
function cleanPrintableAttributeValue(value, requestedKeys) {
|
|
135
|
+
let cleaned = value;
|
|
136
|
+
for (const requestedKey of requestedKeys) {
|
|
137
|
+
const nextKeyIndex = cleaned.indexOf(requestedKey);
|
|
138
|
+
if (nextKeyIndex > 0) {
|
|
139
|
+
cleaned = cleaned.slice(0, trimCandidTextLengthPrefix(cleaned, nextKeyIndex));
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
const nextOpenIdKeyIndex = cleaned.indexOf("openid:");
|
|
143
|
+
if (nextOpenIdKeyIndex > 0) {
|
|
144
|
+
cleaned = cleaned.slice(0, trimCandidTextLengthPrefix(cleaned, nextOpenIdKeyIndex));
|
|
145
|
+
}
|
|
146
|
+
return cleaned.trim();
|
|
147
|
+
}
|
|
148
|
+
function trimCandidTextLengthPrefix(value, index) {
|
|
149
|
+
let trimmedIndex = index;
|
|
150
|
+
while (trimmedIndex > 0 && isAsciiDigit(value.charCodeAt(trimmedIndex - 1))) {
|
|
151
|
+
trimmedIndex -= 1;
|
|
152
|
+
}
|
|
153
|
+
return trimmedIndex;
|
|
154
|
+
}
|
|
155
|
+
function isAsciiDigit(charCode) {
|
|
156
|
+
return charCode >= 48 && charCode <= 57;
|
|
157
|
+
}
|
|
158
|
+
function identityAttributeDisplayKey(key) {
|
|
159
|
+
return key.split(":").pop() || key;
|
|
160
|
+
}
|
|
161
|
+
function isPrintableTextValue(value) {
|
|
162
|
+
return value.length > 0 && value.length <= 512 && /^[\x20-\x7E]+$/.test(value);
|
|
163
|
+
}
|
|
164
|
+
export function normalizeSignedIdentityAttributes(attributes) {
|
|
165
|
+
return {
|
|
166
|
+
data: new Uint8Array(attributes.data),
|
|
167
|
+
signature: new Uint8Array(attributes.signature),
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
//# sourceMappingURL=identity-attributes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity-attributes.js","sourceRoot":"","sources":["../../src/auth/identity-attributes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from "./authentication-manager";
|
|
2
|
+
export * from "./identity-attributes-manager";
|
|
3
|
+
export * from "./identity-attributes";
|
|
4
|
+
export * from "./constants";
|
|
5
|
+
export * from "./types";
|
|
6
|
+
export * from "../hooks/createAuthHooks";
|
|
7
|
+
export * from "./createIdentityAttributeHooks";
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,uBAAuB,CAAA;AACrC,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,0BAA0B,CAAA;AACxC,cAAc,gCAAgC,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from "./authentication-manager";
|
|
2
|
+
export * from "./identity-attributes-manager";
|
|
3
|
+
export * from "./identity-attributes";
|
|
4
|
+
export * from "./constants";
|
|
5
|
+
export * from "./types";
|
|
6
|
+
export * from "../hooks/createAuthHooks";
|
|
7
|
+
export * from "./createIdentityAttributeHooks";
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,uBAAuB,CAAA;AACrC,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,0BAA0B,CAAA;AACxC,cAAc,gCAAgC,CAAA"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import type { Identity } from "@icp-sdk/core/agent";
|
|
2
|
+
import type { Principal } from "@icp-sdk/core/principal";
|
|
3
|
+
export interface SignedIdentityAttributes {
|
|
4
|
+
data: Uint8Array;
|
|
5
|
+
signature: Uint8Array;
|
|
6
|
+
}
|
|
7
|
+
export interface IdentityAttributeRequest {
|
|
8
|
+
keys: string[];
|
|
9
|
+
nonce: Uint8Array;
|
|
10
|
+
}
|
|
11
|
+
export interface IdentityAttributeValues {
|
|
12
|
+
email?: string;
|
|
13
|
+
name?: string;
|
|
14
|
+
verified_email?: string;
|
|
15
|
+
[key: string]: string | undefined;
|
|
16
|
+
}
|
|
17
|
+
export interface IdentityAttributeResult {
|
|
18
|
+
principal: string;
|
|
19
|
+
requestedKeys: string[];
|
|
20
|
+
signedAttributes: SignedIdentityAttributes;
|
|
21
|
+
decodedAttributes: IdentityAttributeValues;
|
|
22
|
+
completedAt: string;
|
|
23
|
+
}
|
|
24
|
+
type IdentityAttributeOpenIdProviderAlias = "google" | "apple" | "microsoft";
|
|
25
|
+
export type IdentityAttributeOpenIdProvider = IdentityAttributeOpenIdProviderAlias | (string & {});
|
|
26
|
+
export interface AuthenticationClientOptions {
|
|
27
|
+
identityProvider?: string | URL;
|
|
28
|
+
windowOpenerFeatures?: string;
|
|
29
|
+
openIdProvider?: IdentityAttributeOpenIdProvider;
|
|
30
|
+
}
|
|
31
|
+
export interface AuthClientSignInOptions {
|
|
32
|
+
maxTimeToLive?: bigint;
|
|
33
|
+
targets?: Principal[];
|
|
34
|
+
}
|
|
35
|
+
export interface AuthenticationSignInOptions extends AuthClientSignInOptions, AuthenticationClientOptions {
|
|
36
|
+
onSuccess?: () => void | Promise<void>;
|
|
37
|
+
onError?: (error?: string) => void | Promise<void>;
|
|
38
|
+
}
|
|
39
|
+
export interface RequestIdentityAttributesParameters {
|
|
40
|
+
keys: string[];
|
|
41
|
+
nonce: Uint8Array;
|
|
42
|
+
identityProvider?: string | URL;
|
|
43
|
+
openIdProvider?: IdentityAttributeOpenIdProvider;
|
|
44
|
+
windowOpenerFeatures?: string;
|
|
45
|
+
signIn?: boolean;
|
|
46
|
+
maxTimeToLive?: bigint;
|
|
47
|
+
targets?: Principal[];
|
|
48
|
+
}
|
|
49
|
+
export interface RequestOpenIdIdentityAttributesParameters {
|
|
50
|
+
nonce: Uint8Array;
|
|
51
|
+
openIdProvider: IdentityAttributeOpenIdProvider;
|
|
52
|
+
keys: string[];
|
|
53
|
+
identityProvider?: string | URL;
|
|
54
|
+
windowOpenerFeatures?: string;
|
|
55
|
+
signIn?: boolean;
|
|
56
|
+
maxTimeToLive?: bigint;
|
|
57
|
+
targets?: Principal[];
|
|
58
|
+
}
|
|
59
|
+
export interface AuthClientLike {
|
|
60
|
+
getIdentity(): Promise<Identity> | Identity;
|
|
61
|
+
isAuthenticated(): Promise<boolean> | boolean;
|
|
62
|
+
signIn(options?: AuthClientSignInOptions): Promise<Identity>;
|
|
63
|
+
signOut(options?: {
|
|
64
|
+
returnTo?: string;
|
|
65
|
+
}): Promise<void>;
|
|
66
|
+
requestAttributes(params: IdentityAttributeRequest): Promise<SignedIdentityAttributes>;
|
|
67
|
+
}
|
|
68
|
+
export interface AuthState {
|
|
69
|
+
identity: Identity | null;
|
|
70
|
+
isAuthenticating: boolean;
|
|
71
|
+
isAuthenticated: boolean;
|
|
72
|
+
error: Error | undefined;
|
|
73
|
+
}
|
|
74
|
+
export {};
|
|
75
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":""}
|
|
@@ -16,26 +16,26 @@
|
|
|
16
16
|
* const { data } = useActorQuery({ functionName: 'get_user' })
|
|
17
17
|
* const { mutate } = useActorMutation({ functionName: 'update_user' })
|
|
18
18
|
*/
|
|
19
|
-
import { Reactor, DisplayReactor, ReactorReturnErr, ReactorReturnOk, BaseActor, FunctionName, TransformKey } from "@ic-reactor/core";
|
|
19
|
+
import { Reactor, DisplayReactor, ReactorReturnErr, ReactorReturnOk, ReactorQueryData, BaseActor, FunctionName, TransformKey } from "@ic-reactor/core";
|
|
20
20
|
import { UseQueryResult, UseSuspenseQueryResult, UseInfiniteQueryResult, UseSuspenseInfiniteQueryResult, UseMutationResult, InfiniteData } from "@tanstack/react-query";
|
|
21
21
|
import { useActorMethod, UseActorMethodParameters } from "./hooks/useActorMethod";
|
|
22
22
|
import { InfiniteQueryConfig } from "./createInfiniteQuery";
|
|
23
23
|
import { SuspenseInfiniteQueryConfig } from "./createSuspenseInfiniteQuery";
|
|
24
24
|
import { QueryConfig, SuspenseQueryConfig, MutationConfig } from "./types";
|
|
25
|
-
export type ActorHooks<
|
|
25
|
+
export type ActorHooks<Service, Transform extends TransformKey> = {
|
|
26
26
|
useActorQuery: {
|
|
27
|
-
<
|
|
28
|
-
<
|
|
27
|
+
<Method extends FunctionName<Service>>(config: QueryConfig<Service, Method, Transform, ReactorQueryData<ReactorReturnOk<Service, Method, Transform>>>): UseQueryResult<ReactorQueryData<ReactorReturnOk<Service, Method, Transform>>, ReactorReturnErr<Service, Method, Transform>>;
|
|
28
|
+
<Method extends FunctionName<Service>, TData>(config: QueryConfig<Service, Method, Transform, TData>): UseQueryResult<TData, ReactorReturnErr<Service, Method, Transform>>;
|
|
29
29
|
};
|
|
30
30
|
useActorSuspenseQuery: {
|
|
31
|
-
<
|
|
32
|
-
<
|
|
31
|
+
<Method extends FunctionName<Service>>(config: SuspenseQueryConfig<Service, Method, Transform, ReactorQueryData<ReactorReturnOk<Service, Method, Transform>>>): UseSuspenseQueryResult<ReactorQueryData<ReactorReturnOk<Service, Method, Transform>>, ReactorReturnErr<Service, Method, Transform>>;
|
|
32
|
+
<Method extends FunctionName<Service>, TData>(config: SuspenseQueryConfig<Service, Method, Transform, TData>): UseSuspenseQueryResult<TData, ReactorReturnErr<Service, Method, Transform>>;
|
|
33
33
|
};
|
|
34
|
-
useActorInfiniteQuery: <
|
|
35
|
-
useActorSuspenseInfiniteQuery: <
|
|
36
|
-
useActorMutation: <
|
|
37
|
-
useActorMethod: <
|
|
34
|
+
useActorInfiniteQuery: <Method extends FunctionName<Service>, TPageParam = unknown>(config: InfiniteQueryConfig<Service, Method, Transform, TPageParam>) => UseInfiniteQueryResult<InfiniteData<ReactorQueryData<ReactorReturnOk<Service, Method, Transform>>, TPageParam>, ReactorReturnErr<Service, Method, Transform>>;
|
|
35
|
+
useActorSuspenseInfiniteQuery: <Method extends FunctionName<Service>, TPageParam = unknown>(config: SuspenseInfiniteQueryConfig<Service, Method, Transform, TPageParam>) => UseSuspenseInfiniteQueryResult<InfiniteData<ReactorQueryData<ReactorReturnOk<Service, Method, Transform>>, TPageParam>, ReactorReturnErr<Service, Method, Transform>>;
|
|
36
|
+
useActorMutation: <Method extends FunctionName<Service>>(config: MutationConfig<Service, Method, Transform>) => UseMutationResult<ReactorReturnOk<Service, Method, Transform>, ReactorReturnErr<Service, Method, Transform>>;
|
|
37
|
+
useActorMethod: <Method extends FunctionName<Service>>(config: Omit<UseActorMethodParameters<Service, Method, Transform>, "reactor">) => ReturnType<typeof useActorMethod<Service, Method, Transform>>;
|
|
38
38
|
};
|
|
39
|
-
export declare function createActorHooks<
|
|
40
|
-
export declare function createActorHooks<
|
|
39
|
+
export declare function createActorHooks<Service>(reactor: DisplayReactor<Service>): ActorHooks<Service, "display">;
|
|
40
|
+
export declare function createActorHooks<Service = BaseActor, Transform extends TransformKey = "candid">(reactor: Reactor<Service, Transform>): ActorHooks<Service, Transform>;
|
|
41
41
|
//# sourceMappingURL=createActorHooks.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createActorHooks.d.ts","sourceRoot":"","sources":["../src/createActorHooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EACL,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,SAAS,EACT,YAAY,EACZ,YAAY,EACb,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACtB,8BAA8B,EAC9B,iBAAiB,EACjB,YAAY,EACb,MAAM,uBAAuB,CAAA;AAM9B,OAAO,EACL,cAAc,EACd,wBAAwB,EACzB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAA;AAC3E,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAE1E,MAAM,MAAM,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"createActorHooks.d.ts","sourceRoot":"","sources":["../src/createActorHooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createActorHooks.js","sourceRoot":"","sources":["../src/createActorHooks.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"createActorHooks.js","sourceRoot":"","sources":["../src/createActorHooks.ts"],"names":[],"mappings":"AAoCA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AACrE,OAAO,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAA;AACrF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EACL,cAAc,GAEf,MAAM,wBAAwB,CAAA;AA6F/B,MAAM,UAAU,gBAAgB,CAC9B,OAAoC;IAEpC,OAAO;QACL,aAAa,EAAE,CAAC,CAAC,MAAW,EAAE,EAAE,CAC9B,aAAa,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,CAGrB;QAElB,qBAAqB,EAAE,CAAC,CAAC,MAAW,EAAE,EAAE,CACtC,qBAAqB,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,CAGrB;QAE1B,qBAAqB,EAAE,CAAC,CAAC,MAAW,EAAE,EAAE,CACtC,qBAAqB,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,CAGrB;QAE1B,6BAA6B,EAAE,CAAC,CAAC,MAAW,EAAE,EAAE,CAC9C,6BAA6B,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,CAGrB;QAElC,gBAAgB,EAAE,CAAC,CAAC,MAAW,EAAE,EAAE,CACjC,gBAAgB,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,CAGrB;QAErB,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,CACzB,cAAc,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAIlC,CAAC;KACL,CAAA;AACH,CAAC"}
|