@renown/sdk 6.0.0-dev.69 → 6.0.0-dev.77
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/dist/src/common.d.ts +5 -3
- package/dist/src/common.d.ts.map +1 -1
- package/dist/src/common.js +44 -12
- package/dist/src/common.js.map +1 -1
- package/dist/src/crypto/common.d.ts +6 -0
- package/dist/src/crypto/common.d.ts.map +1 -0
- package/dist/src/crypto/common.js +8 -0
- package/dist/src/crypto/common.js.map +1 -0
- package/dist/src/crypto/index.d.ts +1 -5
- package/dist/src/crypto/index.d.ts.map +1 -1
- package/dist/src/crypto/index.js +1 -7
- package/dist/src/crypto/index.js.map +1 -1
- package/dist/src/crypto/node.d.ts +1 -0
- package/dist/src/crypto/node.d.ts.map +1 -1
- package/dist/src/crypto/node.js +1 -1
- package/dist/src/crypto/node.js.map +1 -1
- package/dist/src/index.d.ts +1 -8
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -8
- package/dist/src/index.js.map +1 -1
- package/dist/src/node.d.ts +3 -3
- package/dist/src/node.d.ts.map +1 -1
- package/dist/src/node.js +3 -3
- package/dist/src/node.js.map +1 -1
- package/dist/src/profile.d.ts +3 -0
- package/dist/src/profile.d.ts.map +1 -0
- package/dist/src/profile.js +22 -0
- package/dist/src/profile.js.map +1 -0
- package/dist/src/renown-builder.d.ts +9 -1
- package/dist/src/renown-builder.d.ts.map +1 -1
- package/dist/src/renown-builder.js +16 -1
- package/dist/src/renown-builder.js.map +1 -1
- package/dist/src/types.d.ts +23 -1
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils.d.ts +6 -0
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/src/utils.js +6 -0
- package/dist/src/utils.js.map +1 -1
- package/dist/test/renown.test.d.ts +2 -0
- package/dist/test/renown.test.d.ts.map +1 -0
- package/dist/test/renown.test.js +287 -0
- package/dist/test/renown.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -28
- package/dist/e2e/fixtures/main.d.ts +0 -2
- package/dist/e2e/fixtures/main.d.ts.map +0 -1
- package/dist/e2e/fixtures/main.js +0 -97
- package/dist/e2e/fixtures/main.js.map +0 -1
- package/dist/e2e/fixtures/vite.config.d.ts +0 -3
- package/dist/e2e/fixtures/vite.config.d.ts.map +0 -1
- package/dist/e2e/fixtures/vite.config.js +0 -10
- package/dist/e2e/fixtures/vite.config.js.map +0 -1
- package/dist/e2e/renown-components.spec.d.ts +0 -2
- package/dist/e2e/renown-components.spec.d.ts.map +0 -1
- package/dist/e2e/renown-components.spec.js +0 -155
- package/dist/e2e/renown-components.spec.js.map +0 -1
- package/dist/playwright.config.d.ts +0 -3
- package/dist/playwright.config.d.ts.map +0 -1
- package/dist/playwright.config.js +0 -25
- package/dist/playwright.config.js.map +0 -1
- package/dist/src/assets/assets.d.ts +0 -19
- package/dist/src/assets/renown-hover.svg +0 -17
- package/dist/src/assets/renown-light.svg +0 -15
- package/dist/src/assets/renown-short-hover.png +0 -0
- package/dist/src/assets/renown-short.png +0 -0
- package/dist/src/assets/renown.svg +0 -16
- package/dist/src/components/RenownAuthButton.d.ts +0 -62
- package/dist/src/components/RenownAuthButton.d.ts.map +0 -1
- package/dist/src/components/RenownAuthButton.js +0 -82
- package/dist/src/components/RenownAuthButton.js.map +0 -1
- package/dist/src/components/RenownLoginButton.d.ts +0 -48
- package/dist/src/components/RenownLoginButton.d.ts.map +0 -1
- package/dist/src/components/RenownLoginButton.js +0 -175
- package/dist/src/components/RenownLoginButton.js.map +0 -1
- package/dist/src/components/RenownUserButton.d.ts +0 -66
- package/dist/src/components/RenownUserButton.d.ts.map +0 -1
- package/dist/src/components/RenownUserButton.js +0 -216
- package/dist/src/components/RenownUserButton.js.map +0 -1
- package/dist/src/components/icons.d.ts +0 -25
- package/dist/src/components/icons.d.ts.map +0 -1
- package/dist/src/components/icons.js +0 -24
- package/dist/src/components/icons.js.map +0 -1
- package/dist/src/components/image-data.d.ts +0 -3
- package/dist/src/components/image-data.d.ts.map +0 -1
- package/dist/src/components/image-data.js +0 -4
- package/dist/src/components/image-data.js.map +0 -1
- package/dist/src/components/index.d.ts +0 -8
- package/dist/src/components/index.d.ts.map +0 -1
- package/dist/src/components/index.js +0 -5
- package/dist/src/components/index.js.map +0 -1
- package/dist/src/hooks/index.d.ts +0 -2
- package/dist/src/hooks/index.d.ts.map +0 -1
- package/dist/src/hooks/index.js +0 -2
- package/dist/src/hooks/index.js.map +0 -1
- package/dist/src/hooks/use-user.d.ts +0 -21
- package/dist/src/hooks/use-user.d.ts.map +0 -1
- package/dist/src/hooks/use-user.js +0 -30
- package/dist/src/hooks/use-user.js.map +0 -1
- package/dist/src/index.browser.d.ts +0 -4
- package/dist/src/index.browser.d.ts.map +0 -1
- package/dist/src/index.browser.js +0 -4
- package/dist/src/index.browser.js.map +0 -1
- package/dist/src/index.node.d.ts +0 -4
- package/dist/src/index.node.d.ts.map +0 -1
- package/dist/src/index.node.js +0 -4
- package/dist/src/index.node.js.map +0 -1
- package/dist/src/lib/renown/constants.d.ts +0 -130
- package/dist/src/lib/renown/constants.d.ts.map +0 -1
- package/dist/src/lib/renown/constants.js +0 -40
- package/dist/src/lib/renown/constants.js.map +0 -1
- package/dist/src/lib/renown/credential.d.ts +0 -2
- package/dist/src/lib/renown/credential.d.ts.map +0 -1
- package/dist/src/lib/renown/credential.js +0 -68
- package/dist/src/lib/renown/credential.js.map +0 -1
- package/dist/src/lib/renown/did-parser.d.ts +0 -28
- package/dist/src/lib/renown/did-parser.d.ts.map +0 -1
- package/dist/src/lib/renown/did-parser.js +0 -57
- package/dist/src/lib/renown/did-parser.js.map +0 -1
- package/dist/src/lib/renown/index.d.ts +0 -4
- package/dist/src/lib/renown/index.d.ts.map +0 -1
- package/dist/src/lib/renown/index.js +0 -4
- package/dist/src/lib/renown/index.js.map +0 -1
- package/dist/src/lib/renown/utils.d.ts +0 -33
- package/dist/src/lib/renown/utils.d.ts.map +0 -1
- package/dist/src/lib/renown/utils.js +0 -188
- package/dist/src/lib/renown/utils.js.map +0 -1
- package/dist/src/lib/session-storage.d.ts +0 -40
- package/dist/src/lib/session-storage.d.ts.map +0 -1
- package/dist/src/lib/session-storage.js +0 -107
- package/dist/src/lib/session-storage.js.map +0 -1
- package/dist/src/providers/index.d.ts +0 -3
- package/dist/src/providers/index.d.ts.map +0 -1
- package/dist/src/providers/index.js +0 -2
- package/dist/src/providers/index.js.map +0 -1
- package/dist/src/providers/renown-user-provider.d.ts +0 -76
- package/dist/src/providers/renown-user-provider.d.ts.map +0 -1
- package/dist/src/providers/renown-user-provider.js +0 -166
- package/dist/src/providers/renown-user-provider.js.map +0 -1
- package/dist/test/script.test.d.ts +0 -2
- package/dist/test/script.test.d.ts.map +0 -1
- package/dist/test/script.test.js +0 -144
- package/dist/test/script.test.js.map +0 -1
package/dist/src/common.d.ts
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
|
-
import type { ISigner } from "document-model";
|
|
2
1
|
import { type IRenownCrypto } from "./crypto/index.js";
|
|
3
2
|
import { MemoryStorage } from "./storage/common.js";
|
|
4
|
-
import type { CreateBearerTokenOptions, IRenown, RenownEventEmitter, RenownEvents, RenownStorage, RenownStorageMap, User } from "./types.js";
|
|
3
|
+
import type { CreateBearerTokenOptions, IRenown, ISigner, LoginStatus, ProfileFetcher, RenownEventEmitter, RenownEvents, RenownStorage, RenownStorageMap, User } from "./types.js";
|
|
5
4
|
export * from "./constants.js";
|
|
6
5
|
export declare class RenownMemoryStorage extends MemoryStorage<RenownStorageMap> {
|
|
7
6
|
}
|
|
8
7
|
export declare class Renown implements IRenown {
|
|
9
8
|
#private;
|
|
10
|
-
constructor(store: RenownStorage, eventEmitter: RenownEventEmitter, crypto: IRenownCrypto, appName: string, baseUrl?: string);
|
|
9
|
+
constructor(store: RenownStorage, eventEmitter: RenownEventEmitter, crypto: IRenownCrypto, appName: string, baseUrl?: string, profileFetcher?: ProfileFetcher);
|
|
11
10
|
get baseUrl(): string;
|
|
12
11
|
get user(): import("./types.js").InternalUser | undefined;
|
|
12
|
+
get status(): LoginStatus;
|
|
13
13
|
get signer(): ISigner;
|
|
14
|
+
get crypto(): IRenownCrypto;
|
|
14
15
|
get did(): `did:${string}`;
|
|
16
|
+
get profileFetcher(): ProfileFetcher | undefined;
|
|
15
17
|
login(userDid: string): Promise<User>;
|
|
16
18
|
logout(): Promise<void>;
|
|
17
19
|
on<K extends keyof RenownEvents>(event: K, listener: (data: RenownEvents[K]) => void): () => void;
|
package/dist/src/common.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/common.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/common.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EACV,wBAAwB,EACxB,OAAO,EACP,OAAO,EACP,WAAW,EAEX,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,IAAI,EACL,MAAM,YAAY,CAAC;AAEpB,cAAc,gBAAgB,CAAC;AAE/B,qBAAa,mBAAoB,SAAQ,aAAa,CAAC,gBAAgB,CAAC;CAAG;AAE3E,qBAAa,MAAO,YAAW,OAAO;;gBAWlC,KAAK,EAAE,aAAa,EACpB,YAAY,EAAE,kBAAkB,EAChC,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,MAAM,EACf,OAAO,SAAqB,EAC5B,cAAc,CAAC,EAAE,cAAc;IAejC,IAAI,OAAO,WAEV;IAED,IAAI,IAAI,kDAEP;IAED,IAAI,MAAM,gBAET;IAED,IAAI,MAAM,YAET;IAED,IAAI,MAAM,kBAET;IAED,IAAI,GAAG,oBAEN;IAED,IAAI,cAAc,+BAEjB;IAgBK,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgE3C,MAAM;IAMN,EAAE,CAAC,CAAC,SAAS,MAAM,YAAY,EAC7B,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,GACxC,MAAM,IAAI;IA6BP,iBAAiB,CAAC,KAAK,EAAE,MAAM;IAI/B,cAAc,CAAC,OAAO,EAAE,wBAAwB;CAMvD"}
|
package/dist/src/common.js
CHANGED
|
@@ -12,12 +12,15 @@ export class Renown {
|
|
|
12
12
|
#appName;
|
|
13
13
|
#crypto;
|
|
14
14
|
#signer;
|
|
15
|
-
|
|
15
|
+
#profileFetcher;
|
|
16
|
+
#status = "initial";
|
|
17
|
+
constructor(store, eventEmitter, crypto, appName, baseUrl = DEFAULT_RENOWN_URL, profileFetcher) {
|
|
16
18
|
this.#store = store;
|
|
17
19
|
this.#eventEmitter = eventEmitter;
|
|
18
20
|
this.#baseUrl = baseUrl;
|
|
19
21
|
this.#crypto = crypto;
|
|
20
22
|
this.#appName = appName;
|
|
23
|
+
this.#profileFetcher = profileFetcher;
|
|
21
24
|
this.#signer = new RenownCryptoSigner(crypto, this.#appName, this.user);
|
|
22
25
|
this.on("user", (user) => {
|
|
23
26
|
this.#signer.user = user;
|
|
@@ -29,12 +32,25 @@ export class Renown {
|
|
|
29
32
|
get user() {
|
|
30
33
|
return this.#store.get("user");
|
|
31
34
|
}
|
|
35
|
+
get status() {
|
|
36
|
+
return this.#status;
|
|
37
|
+
}
|
|
32
38
|
get signer() {
|
|
33
39
|
return this.#signer;
|
|
34
40
|
}
|
|
41
|
+
get crypto() {
|
|
42
|
+
return this.#crypto;
|
|
43
|
+
}
|
|
35
44
|
get did() {
|
|
36
45
|
return this.#crypto.did;
|
|
37
46
|
}
|
|
47
|
+
get profileFetcher() {
|
|
48
|
+
return this.#profileFetcher;
|
|
49
|
+
}
|
|
50
|
+
#updateStatus(status) {
|
|
51
|
+
this.#status = status;
|
|
52
|
+
this.#eventEmitter.emit("status", status);
|
|
53
|
+
}
|
|
38
54
|
#updateUser(user) {
|
|
39
55
|
if (user) {
|
|
40
56
|
this.#store.set("user", user);
|
|
@@ -45,6 +61,7 @@ export class Renown {
|
|
|
45
61
|
this.#eventEmitter.emit("user", user);
|
|
46
62
|
}
|
|
47
63
|
async login(userDid) {
|
|
64
|
+
this.#updateStatus("checking");
|
|
48
65
|
try {
|
|
49
66
|
const result = parsePkhDid(userDid);
|
|
50
67
|
const credential = await this.#getCredential(result.address, result.chainId, this.#crypto.did);
|
|
@@ -52,33 +69,48 @@ export class Renown {
|
|
|
52
69
|
this.#updateUser(undefined);
|
|
53
70
|
throw new Error("Credential not found");
|
|
54
71
|
}
|
|
72
|
+
if (!(credential.issuer.id === userDid &&
|
|
73
|
+
credential.credentialSubject.id === this.did)) {
|
|
74
|
+
throw new Error("Invalid credential");
|
|
75
|
+
}
|
|
55
76
|
const user = {
|
|
56
77
|
...result,
|
|
57
78
|
address: credential.issuer.ethereumAddress,
|
|
58
79
|
did: userDid,
|
|
59
80
|
credential,
|
|
60
81
|
};
|
|
61
|
-
// TODO
|
|
62
|
-
// getEnsInfo(user.address, user.chainId)
|
|
63
|
-
// .then((ens) => {
|
|
64
|
-
// if (
|
|
65
|
-
// this.user?.address === user.address &&
|
|
66
|
-
// this.user.chainId === user.chainId
|
|
67
|
-
// ) {
|
|
68
|
-
// this.#updateUser({ ...this.user, ens });
|
|
69
|
-
// }
|
|
70
|
-
// })
|
|
71
|
-
// .catch(logger.error);
|
|
72
82
|
this.#updateUser(user);
|
|
83
|
+
this.#updateStatus("authorized");
|
|
84
|
+
// Fetch profile data in the background if a fetcher is configured
|
|
85
|
+
if (this.#profileFetcher) {
|
|
86
|
+
this.#profileFetcher(user, this.#baseUrl)
|
|
87
|
+
.then((profile) => {
|
|
88
|
+
if (profile &&
|
|
89
|
+
this.user?.address === user.address &&
|
|
90
|
+
this.user.chainId === user.chainId) {
|
|
91
|
+
this.#updateUser({
|
|
92
|
+
...this.user,
|
|
93
|
+
profile,
|
|
94
|
+
ens: {
|
|
95
|
+
name: profile.username ?? undefined,
|
|
96
|
+
avatarUrl: profile.userImage ?? undefined,
|
|
97
|
+
},
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
})
|
|
101
|
+
.catch(console.error);
|
|
102
|
+
}
|
|
73
103
|
return user;
|
|
74
104
|
}
|
|
75
105
|
catch (error) {
|
|
76
106
|
this.#updateUser(undefined);
|
|
107
|
+
this.#updateStatus("not-authorized");
|
|
77
108
|
throw error;
|
|
78
109
|
}
|
|
79
110
|
}
|
|
80
111
|
logout() {
|
|
81
112
|
this.#updateUser(undefined);
|
|
113
|
+
this.#updateStatus("initial");
|
|
82
114
|
return Promise.resolve();
|
|
83
115
|
}
|
|
84
116
|
on(event, listener) {
|
package/dist/src/common.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/common.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/common.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export type { DID, IConnectCrypto, IRenownCrypto, JsonWebKeyPairStorage, JwkKeyPair, } from "./types.js";
|
|
2
|
+
export { RenownCryptoBuilder } from "./renown-crypto-builder.js";
|
|
3
|
+
export { ConnectCrypto, RenownCrypto } from "./renown-crypto.js";
|
|
4
|
+
export { MemoryKeyStorage } from "./memory-key-storage.js";
|
|
5
|
+
export { createSignatureVerifier, extractResultingHashFromSignature, parseSignatureHashField, RenownCryptoSigner, signatureHasResultingHash, } from "./signer.js";
|
|
6
|
+
//# sourceMappingURL=common.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/crypto/common.ts"],"names":[],"mappings":"AACA,YAAY,EACV,GAAG,EACH,cAAc,EACd,aAAa,EACb,qBAAqB,EACrB,UAAU,GACX,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3D,OAAO,EACL,uBAAuB,EACvB,iCAAiC,EACjC,uBAAuB,EACvB,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// Classes
|
|
2
|
+
export { RenownCryptoBuilder } from "./renown-crypto-builder.js";
|
|
3
|
+
export { ConnectCrypto, RenownCrypto } from "./renown-crypto.js";
|
|
4
|
+
// Storage implementations
|
|
5
|
+
export { MemoryKeyStorage } from "./memory-key-storage.js";
|
|
6
|
+
// Signer utilities
|
|
7
|
+
export { createSignatureVerifier, extractResultingHashFromSignature, parseSignatureHashField, RenownCryptoSigner, signatureHasResultingHash, } from "./signer.js";
|
|
8
|
+
//# sourceMappingURL=common.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/crypto/common.ts"],"names":[],"mappings":"AASA,UAAU;AACV,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEjE,0BAA0B;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,mBAAmB;AACnB,OAAO,EACL,uBAAuB,EACvB,iCAAiC,EACjC,uBAAuB,EACvB,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,aAAa,CAAC"}
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
export
|
|
2
|
-
export { RenownCryptoBuilder } from "./renown-crypto-builder.js";
|
|
3
|
-
export { ConnectCrypto, RenownCrypto } from "./renown-crypto.js";
|
|
1
|
+
export * from "./common.js";
|
|
4
2
|
export { BrowserKeyStorage } from "./browser-key-storage.js";
|
|
5
|
-
export { MemoryKeyStorage } from "./memory-key-storage.js";
|
|
6
|
-
export { createSignatureVerifier, RenownCryptoSigner, parseSignatureHashField, extractResultingHashFromSignature, signatureHasResultingHash, } from "./signer.js";
|
|
7
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAE5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC"}
|
package/dist/src/crypto/index.js
CHANGED
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
export { RenownCryptoBuilder } from "./renown-crypto-builder.js";
|
|
3
|
-
export { ConnectCrypto, RenownCrypto } from "./renown-crypto.js";
|
|
4
|
-
// Storage implementations
|
|
1
|
+
export * from "./common.js";
|
|
5
2
|
export { BrowserKeyStorage } from "./browser-key-storage.js";
|
|
6
|
-
export { MemoryKeyStorage } from "./memory-key-storage.js";
|
|
7
|
-
// Signer utilities
|
|
8
|
-
export { createSignatureVerifier, RenownCryptoSigner, parseSignatureHashField, extractResultingHashFromSignature, signatureHasResultingHash, } from "./signer.js";
|
|
9
3
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/crypto/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/crypto/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAE5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/crypto/node.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/crypto/node.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAE5B,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC"}
|
package/dist/src/crypto/node.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../../src/crypto/node.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../../src/crypto/node.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAE5B,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,15 +1,8 @@
|
|
|
1
1
|
export * from "./common.js";
|
|
2
|
-
export * from "./components/index.js";
|
|
3
2
|
export * from "./crypto/index.js";
|
|
4
|
-
export * from "./hooks/index.js";
|
|
5
3
|
export * from "./init.browser.js";
|
|
6
|
-
export * from "./
|
|
4
|
+
export * from "./profile.js";
|
|
7
5
|
export * from "./renown-builder.js";
|
|
8
6
|
export * from "./types.js";
|
|
9
7
|
export * from "./utils.js";
|
|
10
|
-
export { RENOWN_CHAIN_ID, RENOWN_NETWORK_ID, RENOWN_URL, } from "./lib/renown/constants.js";
|
|
11
|
-
export { extractEthAddressFromDid } from "./lib/renown/did-parser.js";
|
|
12
|
-
export { fetchProfileDataForUser, handleRenownReturn, login, logout, openRenown, reauthenticateFromSession, } from "./lib/renown/utils.js";
|
|
13
|
-
export type { LoginStatus, User as SimpleUser } from "./lib/renown/utils.js";
|
|
14
|
-
export { SessionStorageManager } from "./lib/session-storage.js";
|
|
15
8
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -1,15 +1,8 @@
|
|
|
1
1
|
export * from "./common.js";
|
|
2
|
-
export * from "./components/index.js";
|
|
3
2
|
export * from "./crypto/index.js";
|
|
4
|
-
export * from "./hooks/index.js";
|
|
5
3
|
export * from "./init.browser.js";
|
|
6
|
-
export * from "./
|
|
4
|
+
export * from "./profile.js";
|
|
7
5
|
export * from "./renown-builder.js";
|
|
8
6
|
export * from "./types.js";
|
|
9
7
|
export * from "./utils.js";
|
|
10
|
-
// Export specific items from lib/renown to avoid conflicts
|
|
11
|
-
export { RENOWN_CHAIN_ID, RENOWN_NETWORK_ID, RENOWN_URL, } from "./lib/renown/constants.js";
|
|
12
|
-
export { extractEthAddressFromDid } from "./lib/renown/did-parser.js";
|
|
13
|
-
export { fetchProfileDataForUser, handleRenownReturn, login, logout, openRenown, reauthenticateFromSession, } from "./lib/renown/utils.js";
|
|
14
|
-
export { SessionStorageManager } from "./lib/session-storage.js";
|
|
15
8
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
|
package/dist/src/node.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export * from "./common.js";
|
|
2
|
-
export * from "./crypto/
|
|
3
|
-
export * from "./crypto/node-key-storage.js";
|
|
4
|
-
export * from "./renown-builder.js";
|
|
2
|
+
export * from "./crypto/node.js";
|
|
5
3
|
export * from "./event/event.node.js";
|
|
6
4
|
export * from "./init.node.js";
|
|
5
|
+
export * from "./profile.js";
|
|
6
|
+
export * from "./renown-builder.js";
|
|
7
7
|
export * from "./storage/storage.node.js";
|
|
8
8
|
export * from "./types.js";
|
|
9
9
|
export * from "./utils.js";
|
package/dist/src/node.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/node.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/node.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
|
package/dist/src/node.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export * from "./common.js";
|
|
2
|
-
export * from "./crypto/
|
|
3
|
-
export * from "./crypto/node-key-storage.js";
|
|
4
|
-
export * from "./renown-builder.js";
|
|
2
|
+
export * from "./crypto/node.js";
|
|
5
3
|
export * from "./event/event.node.js";
|
|
6
4
|
export * from "./init.node.js";
|
|
5
|
+
export * from "./profile.js";
|
|
6
|
+
export * from "./renown-builder.js";
|
|
7
7
|
export * from "./storage/storage.node.js";
|
|
8
8
|
export * from "./types.js";
|
|
9
9
|
export * from "./utils.js";
|
package/dist/src/node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/node.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/node.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/profile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAiB,MAAM,YAAY,CAAC;AAEhE,eAAO,MAAM,kBAAkB,EAAE,cAwBhC,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export const fetchRenownProfile = async (user, baseUrl) => {
|
|
2
|
+
try {
|
|
3
|
+
const response = await fetch(`${baseUrl}/api/profile`, {
|
|
4
|
+
method: "POST",
|
|
5
|
+
headers: {
|
|
6
|
+
"Content-Type": "application/json",
|
|
7
|
+
},
|
|
8
|
+
body: JSON.stringify({
|
|
9
|
+
ethAddress: user.address,
|
|
10
|
+
}),
|
|
11
|
+
});
|
|
12
|
+
if (!response.ok) {
|
|
13
|
+
return undefined;
|
|
14
|
+
}
|
|
15
|
+
const result = (await response.json());
|
|
16
|
+
return result.profile ?? undefined;
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return undefined;
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=profile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/profile.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,kBAAkB,GAAmB,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;IACxE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,cAAc,EAAE;YACrD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,UAAU,EAAE,IAAI,CAAC,OAAO;aACzB,CAAC;SACH,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAEpC,CAAC;QAEF,OAAO,MAAM,CAAC,OAAO,IAAI,SAAS,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Renown } from "./common.js";
|
|
2
2
|
import type { IRenownCrypto, JsonWebKeyPairStorage } from "./crypto/types.js";
|
|
3
|
-
import type { RenownEventEmitter, RenownStorage } from "./types.js";
|
|
3
|
+
import type { ProfileFetcher, RenownEventEmitter, RenownStorage } from "./types.js";
|
|
4
4
|
export interface RenownBuilderOptions {
|
|
5
5
|
appName: string;
|
|
6
6
|
storage?: RenownStorage;
|
|
@@ -8,6 +8,7 @@ export interface RenownBuilderOptions {
|
|
|
8
8
|
crypto?: IRenownCrypto;
|
|
9
9
|
keyPairStorage?: JsonWebKeyPairStorage;
|
|
10
10
|
baseUrl?: string;
|
|
11
|
+
profileFetcher?: ProfileFetcher;
|
|
11
12
|
}
|
|
12
13
|
/**
|
|
13
14
|
* Base builder for creating Renown instances.
|
|
@@ -46,6 +47,13 @@ export declare class BaseRenownBuilder {
|
|
|
46
47
|
* Defaults to https://www.renown.id
|
|
47
48
|
*/
|
|
48
49
|
withBaseUrl(baseUrl: string): this;
|
|
50
|
+
/**
|
|
51
|
+
* Set a profile fetcher strategy for enriching user data after login.
|
|
52
|
+
* The fetcher receives the authenticated user and the base URL,
|
|
53
|
+
* and returns a RenownProfile. Called in the background after each login.
|
|
54
|
+
* Defaults to fetchRenownProfile which calls the Renown API.
|
|
55
|
+
*/
|
|
56
|
+
withProfileFetcher(profileFetcher: ProfileFetcher): this;
|
|
49
57
|
/**
|
|
50
58
|
* Build and initialize the Renown instance.
|
|
51
59
|
* If a user is stored, attempts to re-authenticate them.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renown-builder.d.ts","sourceRoot":"","sources":["../../src/renown-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAuB,MAAM,aAAa,CAAC;AAG1D,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"renown-builder.d.ts","sourceRoot":"","sources":["../../src/renown-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAuB,MAAM,aAAa,CAAC;AAG1D,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAG9E,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,cAAc,CAAC,EAAE,qBAAqB,CAAC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED;;;;GAIG;AACH,qBAAa,iBAAiB;;IAS5B;;OAEG;gBACS,OAAO,EAAE,MAAM;IAI3B;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAKzC;;;OAGG;IACH,gBAAgB,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI;IAKxD;;;OAGG;IACH,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAKvC;;;;OAIG;IACH,kBAAkB,CAAC,cAAc,EAAE,qBAAqB,GAAG,IAAI;IAK/D;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKlC;;;;;OAKG;IACH,kBAAkB,CAAC,cAAc,EAAE,cAAc,GAAG,IAAI;IAKxD;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAsC9B;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,GAAG,iBAAiB;CAwB9D"}
|
|
@@ -2,6 +2,7 @@ import { Renown, RenownMemoryStorage } from "./common.js";
|
|
|
2
2
|
import { DEFAULT_RENOWN_URL } from "./constants.js";
|
|
3
3
|
import { RenownCryptoBuilder } from "./crypto/renown-crypto-builder.js";
|
|
4
4
|
import { MemoryEventEmitter } from "./event/memory.js";
|
|
5
|
+
import { fetchRenownProfile } from "./profile.js";
|
|
5
6
|
/**
|
|
6
7
|
* Base builder for creating Renown instances.
|
|
7
8
|
* Use platform-specific builders (RenownBuilder from init.browser.js or init.node.js)
|
|
@@ -14,6 +15,7 @@ export class BaseRenownBuilder {
|
|
|
14
15
|
#crypto;
|
|
15
16
|
#keyPairStorage;
|
|
16
17
|
#baseUrl;
|
|
18
|
+
#profileFetcher;
|
|
17
19
|
/**
|
|
18
20
|
* @param appName - Application name used for signing context
|
|
19
21
|
*/
|
|
@@ -61,6 +63,16 @@ export class BaseRenownBuilder {
|
|
|
61
63
|
this.#baseUrl = baseUrl;
|
|
62
64
|
return this;
|
|
63
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* Set a profile fetcher strategy for enriching user data after login.
|
|
68
|
+
* The fetcher receives the authenticated user and the base URL,
|
|
69
|
+
* and returns a RenownProfile. Called in the background after each login.
|
|
70
|
+
* Defaults to fetchRenownProfile which calls the Renown API.
|
|
71
|
+
*/
|
|
72
|
+
withProfileFetcher(profileFetcher) {
|
|
73
|
+
this.#profileFetcher = profileFetcher;
|
|
74
|
+
return this;
|
|
75
|
+
}
|
|
64
76
|
/**
|
|
65
77
|
* Build and initialize the Renown instance.
|
|
66
78
|
* If a user is stored, attempts to re-authenticate them.
|
|
@@ -77,7 +89,7 @@ export class BaseRenownBuilder {
|
|
|
77
89
|
const storage = this.#storage ?? new RenownMemoryStorage();
|
|
78
90
|
const eventEmitter = this.#eventEmitter ?? new MemoryEventEmitter();
|
|
79
91
|
const baseUrl = this.#baseUrl ?? DEFAULT_RENOWN_URL;
|
|
80
|
-
const renown = new Renown(storage, eventEmitter, crypto, this.#appName, baseUrl);
|
|
92
|
+
const renown = new Renown(storage, eventEmitter, crypto, this.#appName, baseUrl, this.#profileFetcher ?? fetchRenownProfile);
|
|
81
93
|
// Re-authenticate stored user if present
|
|
82
94
|
if (renown.user) {
|
|
83
95
|
try {
|
|
@@ -109,6 +121,9 @@ export class BaseRenownBuilder {
|
|
|
109
121
|
if (options.baseUrl) {
|
|
110
122
|
builder.withBaseUrl(options.baseUrl);
|
|
111
123
|
}
|
|
124
|
+
if (options.profileFetcher) {
|
|
125
|
+
builder.withProfileFetcher(options.profileFetcher);
|
|
126
|
+
}
|
|
112
127
|
return builder;
|
|
113
128
|
}
|
|
114
129
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renown-builder.js","sourceRoot":"","sources":["../../src/renown-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAExE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"renown-builder.js","sourceRoot":"","sources":["../../src/renown-builder.ts"],"names":[],"mappings":"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"}
|
package/dist/src/types.d.ts
CHANGED
|
@@ -1,29 +1,52 @@
|
|
|
1
1
|
import type { Verifiable, VerifiedCredential } from "did-jwt-vc";
|
|
2
2
|
import type { User as EditorUser, ISigner } from "document-model";
|
|
3
3
|
import type { CREDENTIAL_TYPES } from "./constants.js";
|
|
4
|
+
import type { IRenownCrypto } from "./crypto/types.js";
|
|
4
5
|
import type { IEventEmitter } from "./event/types.js";
|
|
5
6
|
import type { IStorage } from "./storage/common.js";
|
|
7
|
+
export type { ISigner };
|
|
8
|
+
export type RenownProfile = {
|
|
9
|
+
documentId: string;
|
|
10
|
+
username: string | null;
|
|
11
|
+
ethAddress: string | null;
|
|
12
|
+
userImage: string | null;
|
|
13
|
+
createdAt: string;
|
|
14
|
+
updatedAt: string;
|
|
15
|
+
};
|
|
6
16
|
export type InternalUser = EditorUser & {
|
|
7
17
|
did: string;
|
|
8
18
|
credential: PowerhouseVerifiableCredential | undefined;
|
|
19
|
+
profile?: RenownProfile;
|
|
9
20
|
};
|
|
10
21
|
export type User = InternalUser;
|
|
22
|
+
/**
|
|
23
|
+
* Strategy function for fetching user profile data.
|
|
24
|
+
* Called after successful authentication to enrich the user object.
|
|
25
|
+
* Should return the user's Renown profile, or undefined if not available.
|
|
26
|
+
* Must not throw — return undefined on failure.
|
|
27
|
+
*/
|
|
28
|
+
export type ProfileFetcher = (user: User, baseUrl: string) => Promise<RenownProfile | undefined>;
|
|
11
29
|
export type Unsubscribe = () => void;
|
|
30
|
+
export type LoginStatus = "initial" | "checking" | "authorized" | "not-authorized";
|
|
12
31
|
export type RenownStorageMap = {
|
|
13
32
|
user: InternalUser | undefined;
|
|
14
33
|
};
|
|
15
34
|
export type RenownStorage = IStorage<RenownStorageMap>;
|
|
16
35
|
export type RenownEvents = {
|
|
17
36
|
user: User | undefined;
|
|
37
|
+
status: LoginStatus;
|
|
18
38
|
};
|
|
19
39
|
export type RenownEventEmitter = IEventEmitter<RenownEvents>;
|
|
20
40
|
export interface IRenown extends Pick<RenownEventEmitter, "on"> {
|
|
21
41
|
readonly baseUrl: string;
|
|
22
42
|
readonly user: User | undefined;
|
|
43
|
+
readonly status: LoginStatus;
|
|
23
44
|
login: (userDid: string) => Promise<User>;
|
|
24
45
|
logout: () => Promise<void>;
|
|
46
|
+
readonly crypto: IRenownCrypto;
|
|
25
47
|
readonly signer: ISigner;
|
|
26
48
|
readonly did: string;
|
|
49
|
+
readonly profileFetcher: ProfileFetcher | undefined;
|
|
27
50
|
verifyBearerToken: (token: string) => Promise<false | VerifiedCredential>;
|
|
28
51
|
getBearerToken: (options: CreateBearerTokenOptions, refresh?: boolean) => Promise<string>;
|
|
29
52
|
}
|
|
@@ -100,5 +123,4 @@ export interface CreateBearerTokenOptions {
|
|
|
100
123
|
expiresIn?: number;
|
|
101
124
|
aud?: string;
|
|
102
125
|
}
|
|
103
|
-
export {};
|
|
104
126
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/src/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,KAAK,EAAE,IAAI,IAAI,UAAU,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/src/utils.d.ts
CHANGED
|
@@ -9,6 +9,12 @@ export type ILogger = {
|
|
|
9
9
|
warn: (message: string, ...replacements: any[]) => void;
|
|
10
10
|
error: (message: string, ...replacements: any[]) => void;
|
|
11
11
|
};
|
|
12
|
+
/**
|
|
13
|
+
* Parse a DID:pkh string to extract network, chain ID, and address information
|
|
14
|
+
* @param did - The DID string in format "did:pkh:networkId:chainId:address"
|
|
15
|
+
* @returns Parsed DID information
|
|
16
|
+
* @throws Error if the DID format is invalid
|
|
17
|
+
*/
|
|
12
18
|
export declare function parsePkhDid(did: string): PKHDid;
|
|
13
19
|
export declare function verifyAuthBearerToken(jwt: string): Promise<false | AuthVerifiedCredential>;
|
|
14
20
|
export declare function assertIsAuthCredential(credential: VerifiedCredential): asserts credential is AuthVerifiedCredential;
|
package/dist/src/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,MAAM,EAEN,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,OAAO,KAAK,EACV,sBAAsB,EACtB,wBAAwB,EAExB,MAAM,EACP,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,OAAO,GAAG;IACpB,KAAK,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAEvD,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IAC3D,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IACzD,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IACxD,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IACxD,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;CAC1D,CAAC;AAEF,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAqB/C;AAED,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,KAAK,GAAG,sBAAsB,CAAC,CAoBzC;AAED,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,kBAAkB,GAC7B,OAAO,CAAC,UAAU,IAAI,sBAAsB,CAkB9C;AAED,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,wBAAwB,mBAoBnC;AAED,eAAO,MAAM,WAAW,gBAOvB,CAAC;AAEF,wBAAsB,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAQvE"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,MAAM,EAEN,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,OAAO,KAAK,EACV,sBAAsB,EACtB,wBAAwB,EAExB,MAAM,EACP,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,OAAO,GAAG;IACpB,KAAK,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAEvD,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IAC3D,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IACzD,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IACxD,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IACxD,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;CAC1D,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAqB/C;AAED,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,KAAK,GAAG,sBAAsB,CAAC,CAoBzC;AAED,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,kBAAkB,GAC7B,OAAO,CAAC,UAAU,IAAI,sBAAsB,CAkB9C;AAED,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,wBAAwB,mBAoBnC;AAED,eAAO,MAAM,WAAW,gBAOvB,CAAC;AAEF,wBAAsB,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAQvE"}
|
package/dist/src/utils.js
CHANGED
|
@@ -3,6 +3,12 @@ import { EdDSASigner } from "did-jwt";
|
|
|
3
3
|
import { createVerifiableCredentialJwt, verifyCredential } from "did-jwt-vc";
|
|
4
4
|
import { Resolver } from "did-resolver";
|
|
5
5
|
import { getResolver as keyDidResolver } from "key-did-resolver";
|
|
6
|
+
/**
|
|
7
|
+
* Parse a DID:pkh string to extract network, chain ID, and address information
|
|
8
|
+
* @param did - The DID string in format "did:pkh:networkId:chainId:address"
|
|
9
|
+
* @returns Parsed DID information
|
|
10
|
+
* @throws Error if the DID format is invalid
|
|
11
|
+
*/
|
|
6
12
|
export function parsePkhDid(did) {
|
|
7
13
|
const parts = did.split(":");
|
|
8
14
|
if (!did.startsWith("did:pkh:") || parts.length !== 5) {
|
package/dist/src/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renown.test.d.ts","sourceRoot":"","sources":["../../test/renown.test.ts"],"names":[],"mappings":""}
|