@renown/sdk 6.0.0-dev.6 → 6.0.0-dev.61
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 +14 -8
- package/dist/src/common.d.ts.map +1 -1
- package/dist/src/common.js +35 -27
- package/dist/src/common.js.map +1 -1
- package/dist/src/crypto/browser-key-storage.d.ts +4 -2
- package/dist/src/crypto/browser-key-storage.d.ts.map +1 -1
- package/dist/src/crypto/browser-key-storage.js +54 -51
- package/dist/src/crypto/browser-key-storage.js.map +1 -1
- package/dist/src/crypto/index.d.ts +5 -34
- package/dist/src/crypto/index.d.ts.map +1 -1
- package/dist/src/crypto/index.js +7 -128
- package/dist/src/crypto/index.js.map +1 -1
- package/dist/src/crypto/memory-key-storage.d.ts +9 -0
- package/dist/src/crypto/memory-key-storage.d.ts.map +1 -0
- package/dist/src/crypto/memory-key-storage.js +18 -0
- package/dist/src/crypto/memory-key-storage.js.map +1 -0
- package/dist/src/crypto/node-key-storage.d.ts +16 -3
- package/dist/src/crypto/node-key-storage.d.ts.map +1 -1
- package/dist/src/crypto/node-key-storage.js +82 -42
- package/dist/src/crypto/node-key-storage.js.map +1 -1
- package/dist/src/crypto/renown-crypto-builder.d.ts +11 -0
- package/dist/src/crypto/renown-crypto-builder.d.ts.map +1 -0
- package/dist/src/crypto/renown-crypto-builder.js +34 -0
- package/dist/src/crypto/renown-crypto-builder.js.map +1 -0
- package/dist/src/crypto/renown-crypto.d.ts +26 -0
- package/dist/src/crypto/renown-crypto.d.ts.map +1 -0
- package/dist/src/crypto/renown-crypto.js +56 -0
- package/dist/src/crypto/renown-crypto.js.map +1 -0
- package/dist/src/crypto/signer.d.ts +61 -8
- package/dist/src/crypto/signer.d.ts.map +1 -1
- package/dist/src/crypto/signer.js +98 -28
- package/dist/src/crypto/signer.js.map +1 -1
- package/dist/src/crypto/types.d.ts +27 -0
- package/dist/src/crypto/types.d.ts.map +1 -0
- package/dist/src/crypto/types.js +2 -0
- package/dist/src/crypto/types.js.map +1 -0
- package/dist/src/crypto/utils.d.ts +13 -0
- package/dist/src/crypto/utils.d.ts.map +1 -0
- package/dist/src/crypto/utils.js +39 -0
- package/dist/src/crypto/utils.js.map +1 -0
- package/dist/src/event/event.browser.d.ts.map +1 -1
- package/dist/src/event/event.node.d.ts.map +1 -1
- package/dist/src/event/memory.d.ts +8 -0
- package/dist/src/event/memory.d.ts.map +1 -0
- package/dist/src/event/memory.js +16 -0
- package/dist/src/event/memory.js.map +1 -0
- package/dist/src/hooks/use-user.d.ts +1 -1
- package/dist/src/hooks/use-user.js +1 -1
- package/dist/src/index.browser.d.ts +1 -1
- package/dist/src/index.browser.d.ts.map +1 -1
- package/dist/src/index.browser.js +1 -1
- package/dist/src/index.browser.js.map +1 -1
- package/dist/src/index.d.ts +3 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/index.node.d.ts +1 -1
- package/dist/src/index.node.d.ts.map +1 -1
- package/dist/src/index.node.js +1 -1
- package/dist/src/index.node.js.map +1 -1
- package/dist/src/init.browser.d.ts +51 -2
- package/dist/src/init.browser.d.ts.map +1 -1
- package/dist/src/init.browser.js +62 -3
- package/dist/src/init.browser.js.map +1 -1
- package/dist/src/init.node.d.ts +28 -2
- package/dist/src/init.node.d.ts.map +1 -1
- package/dist/src/init.node.js +26 -4
- package/dist/src/init.node.js.map +1 -1
- package/dist/src/lib/renown/credential.d.ts +2 -0
- package/dist/src/lib/renown/credential.d.ts.map +1 -0
- package/dist/src/lib/renown/credential.js +68 -0
- package/dist/src/lib/renown/credential.js.map +1 -0
- package/dist/src/lib/renown/utils.d.ts +4 -4
- package/dist/src/lib/renown/utils.d.ts.map +1 -1
- package/dist/src/lib/renown/utils.js +24 -43
- package/dist/src/lib/renown/utils.js.map +1 -1
- package/dist/src/node.d.ts +5 -1
- package/dist/src/node.d.ts.map +1 -1
- package/dist/src/node.js +5 -1
- package/dist/src/node.js.map +1 -1
- package/dist/src/providers/renown-user-provider.d.ts +9 -5
- package/dist/src/providers/renown-user-provider.d.ts.map +1 -1
- package/dist/src/providers/renown-user-provider.js +25 -30
- package/dist/src/providers/renown-user-provider.js.map +1 -1
- package/dist/src/renown-builder.d.ts +60 -0
- package/dist/src/renown-builder.d.ts.map +1 -0
- package/dist/src/renown-builder.js +115 -0
- package/dist/src/renown-builder.js.map +1 -0
- package/dist/src/storage/common.d.ts +14 -10
- package/dist/src/storage/common.d.ts.map +1 -1
- package/dist/src/storage/common.js +16 -3
- package/dist/src/storage/common.js.map +1 -1
- package/dist/src/storage/storage.browser.d.ts +1 -0
- package/dist/src/storage/storage.browser.d.ts.map +1 -1
- package/dist/src/storage/storage.browser.js +3 -1
- package/dist/src/storage/storage.browser.js.map +1 -1
- package/dist/src/storage/storage.node.d.ts +1 -1
- package/dist/src/storage/storage.node.d.ts.map +1 -1
- package/dist/src/storage/storage.node.js +7 -5
- package/dist/src/storage/storage.node.js.map +1 -1
- package/dist/src/types.d.ts +28 -4
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils.d.ts +11 -10
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/src/utils.js +8 -0
- package/dist/src/utils.js.map +1 -1
- package/dist/{tests → test}/auth.test.d.ts.map +1 -1
- package/dist/test/auth.test.js.map +1 -0
- package/dist/test/crypto/signer.test.d.ts +2 -0
- package/dist/test/crypto/signer.test.d.ts.map +1 -0
- package/dist/test/crypto/signer.test.js +184 -0
- package/dist/test/crypto/signer.test.js.map +1 -0
- package/dist/test/script.test.d.ts +2 -0
- package/dist/test/script.test.d.ts.map +1 -0
- package/dist/test/script.test.js +144 -0
- package/dist/test/script.test.js.map +1 -0
- package/dist/test/storage.node.test.d.ts +2 -0
- package/dist/test/storage.node.test.d.ts.map +1 -0
- package/dist/test/storage.node.test.js +66 -0
- package/dist/test/storage.node.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/vitest.config.d.ts +3 -0
- package/dist/vitest.config.d.ts.map +1 -0
- package/dist/vitest.config.js +7 -0
- package/dist/vitest.config.js.map +1 -0
- package/package.json +14 -14
- package/dist/src/lib/crypto/browser.d.ts +0 -8
- package/dist/src/lib/crypto/browser.d.ts.map +0 -1
- package/dist/src/lib/crypto/browser.js +0 -73
- package/dist/src/lib/crypto/browser.js.map +0 -1
- package/dist/src/lib/crypto/index.d.ts +0 -36
- package/dist/src/lib/crypto/index.d.ts.map +0 -1
- package/dist/src/lib/crypto/index.js +0 -150
- package/dist/src/lib/crypto/index.js.map +0 -1
- package/dist/src/lib/crypto/node.d.ts +0 -8
- package/dist/src/lib/crypto/node.d.ts.map +0 -1
- package/dist/src/lib/crypto/node.js +0 -67
- package/dist/src/lib/crypto/node.js.map +0 -1
- package/dist/tests/auth.test.js.map +0 -1
- /package/dist/{tests → test}/auth.test.d.ts +0 -0
- /package/dist/{tests → test}/auth.test.js +0 -0
|
@@ -65,7 +65,7 @@ export async function fetchProfileDataForUser(user) {
|
|
|
65
65
|
return user;
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
|
-
export
|
|
68
|
+
export function openRenown(documentId) {
|
|
69
69
|
// If documentId is provided, open the profile page directly
|
|
70
70
|
if (documentId) {
|
|
71
71
|
const profileUrl = `${RENOWN_URL}/profile/${documentId}`;
|
|
@@ -74,18 +74,10 @@ export async function openRenown(documentId) {
|
|
|
74
74
|
}
|
|
75
75
|
// Otherwise, open the auth flow
|
|
76
76
|
const url = new URL(RENOWN_URL);
|
|
77
|
-
// Get DID from
|
|
78
|
-
|
|
79
|
-
if (
|
|
80
|
-
|
|
81
|
-
connectDid = await window.connectCrypto.did();
|
|
82
|
-
}
|
|
83
|
-
catch (error) {
|
|
84
|
-
console.error("Failed to get DID from connectCrypto:", error);
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
console.warn("connectCrypto not available - authentication may not be properly initialized");
|
|
77
|
+
// Get DID from renownCrypto if available
|
|
78
|
+
const connectDid = window.renownCrypto?.did;
|
|
79
|
+
if (!connectDid) {
|
|
80
|
+
throw new Error("Keypair not found - authentication may not be properly initialized");
|
|
89
81
|
}
|
|
90
82
|
url.searchParams.set("connect", connectDid);
|
|
91
83
|
url.searchParams.set("network", RENOWN_NETWORK_ID);
|
|
@@ -101,9 +93,9 @@ export async function handleRenownReturn() {
|
|
|
101
93
|
const urlParams = new URLSearchParams(window.location.search);
|
|
102
94
|
const userDid = decodeURIComponent(urlParams.get("user") ?? "");
|
|
103
95
|
// If we have authentication parameters, attempt login
|
|
104
|
-
if (userDid && window.renown && window.
|
|
96
|
+
if (userDid && window.renown && window.renownCrypto) {
|
|
105
97
|
try {
|
|
106
|
-
await login(userDid, window.renown, window.
|
|
98
|
+
await login(userDid, window.renown, window.renownCrypto);
|
|
107
99
|
// Clean up URL parameters
|
|
108
100
|
const cleanUrl = new URL(window.location.href);
|
|
109
101
|
cleanUrl.searchParams.delete("user");
|
|
@@ -114,8 +106,8 @@ export async function handleRenownReturn() {
|
|
|
114
106
|
}
|
|
115
107
|
}
|
|
116
108
|
}
|
|
117
|
-
export async function login(userDid, renown,
|
|
118
|
-
if (!renown || !
|
|
109
|
+
export async function login(userDid, renown, renownCrypto) {
|
|
110
|
+
if (!renown || !renownCrypto) {
|
|
119
111
|
return;
|
|
120
112
|
}
|
|
121
113
|
// Validate that userDid is a valid pkh DID format
|
|
@@ -124,8 +116,7 @@ export async function login(userDid, renown, connectCrypto) {
|
|
|
124
116
|
return;
|
|
125
117
|
}
|
|
126
118
|
try {
|
|
127
|
-
|
|
128
|
-
user = user instanceof Promise ? await user : user;
|
|
119
|
+
const user = renown.user;
|
|
129
120
|
if (user?.did && (user.did === userDid || !userDid)) {
|
|
130
121
|
// Fetch profile data for the user
|
|
131
122
|
const userWithProfile = await fetchProfileDataForUser(user);
|
|
@@ -142,20 +133,18 @@ export async function login(userDid, renown, connectCrypto) {
|
|
|
142
133
|
if (!userDid) {
|
|
143
134
|
return;
|
|
144
135
|
}
|
|
145
|
-
const newUser = await renown.login(userDid
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
return userWithProfile;
|
|
158
|
-
}
|
|
136
|
+
const newUser = await renown.login(userDid);
|
|
137
|
+
// Fetch profile data for the user
|
|
138
|
+
const userWithProfile = await fetchProfileDataForUser(newUser);
|
|
139
|
+
// Set up JWT handler if reactor is available
|
|
140
|
+
// Store user data in sessionStorage for persistence
|
|
141
|
+
SessionStorageManager.setUserData({
|
|
142
|
+
user: userWithProfile,
|
|
143
|
+
userDid: userWithProfile.did,
|
|
144
|
+
loginStatus: "authorized",
|
|
145
|
+
timestamp: Date.now(),
|
|
146
|
+
});
|
|
147
|
+
return userWithProfile;
|
|
159
148
|
}
|
|
160
149
|
catch (error) {
|
|
161
150
|
console.error("Renown login error:", error);
|
|
@@ -175,9 +164,7 @@ export async function logout() {
|
|
|
175
164
|
* This allows calling renown.login without needing to go through the full auth flow again
|
|
176
165
|
*/
|
|
177
166
|
export async function reauthenticateFromSession() {
|
|
178
|
-
if (typeof window === "undefined" ||
|
|
179
|
-
!window.renown ||
|
|
180
|
-
!window.connectCrypto) {
|
|
167
|
+
if (typeof window === "undefined" || !window.renown || !window.renownCrypto) {
|
|
181
168
|
return null;
|
|
182
169
|
}
|
|
183
170
|
const storedUserDid = SessionStorageManager.getStoredUserDid();
|
|
@@ -185,13 +172,7 @@ export async function reauthenticateFromSession() {
|
|
|
185
172
|
return null;
|
|
186
173
|
}
|
|
187
174
|
try {
|
|
188
|
-
await login(storedUserDid, window.renown, window.
|
|
189
|
-
// Get the current user after login
|
|
190
|
-
let currentUser = window.renown.user instanceof Function
|
|
191
|
-
? window.renown.user()
|
|
192
|
-
: window.renown.user;
|
|
193
|
-
currentUser =
|
|
194
|
-
currentUser instanceof Promise ? await currentUser : currentUser;
|
|
175
|
+
const currentUser = await login(storedUserDid, window.renown, window.renownCrypto);
|
|
195
176
|
if (currentUser) {
|
|
196
177
|
// Fetch profile data for the restored user
|
|
197
178
|
const userWithProfile = await fetchProfileDataForUser(currentUser);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/lib/renown/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AA4B3D,wDAAwD;AACxD,KAAK,UAAU,0BAA0B,CACvC,UAAkB;IAElB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,cAAc,EAAE;YACxD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,UAAU;aACX,CAAC;SACH,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CASpC,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAE/B,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO;gBACL,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,KAAK,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,mDAAmD;AACnD,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,IAAU;IACtD,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEtD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,IAAI,CAAC,yCAAyC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YAClE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,mCAAmC;QACnC,MAAM,OAAO,GAAG,MAAM,0BAA0B,CAAC,UAAU,CAAC,CAAC;QAE7D,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO;gBACL,GAAG,IAAI;gBACP,IAAI,EAAE,OAAO,CAAC,QAAQ,IAAI,SAAS;gBACnC,MAAM,EAAE,OAAO,CAAC,SAAS,IAAI,SAAS;gBACtC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,SAAS;gBAC3C,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC;QACJ,CAAC;QAED,mDAAmD;QACnD,OAAO;YACL,GAAG,IAAI;YACP,UAAU;SACX,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAgBD,MAAM,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/lib/renown/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/src/node.d.ts
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
|
+
export * from "./common.js";
|
|
1
2
|
export * from "./crypto/index.js";
|
|
2
3
|
export * from "./crypto/node-key-storage.js";
|
|
3
|
-
export
|
|
4
|
+
export * from "./renown-builder.js";
|
|
5
|
+
export * from "./event/event.node.js";
|
|
6
|
+
export * from "./init.node.js";
|
|
7
|
+
export * from "./storage/storage.node.js";
|
|
4
8
|
export * from "./types.js";
|
|
5
9
|
export * from "./utils.js";
|
|
6
10
|
//# sourceMappingURL=node.d.ts.map
|
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,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/node.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
|
package/dist/src/node.js
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
|
+
export * from "./common.js";
|
|
1
2
|
export * from "./crypto/index.js";
|
|
2
3
|
export * from "./crypto/node-key-storage.js";
|
|
3
|
-
export
|
|
4
|
+
export * from "./renown-builder.js";
|
|
5
|
+
export * from "./event/event.node.js";
|
|
6
|
+
export * from "./init.node.js";
|
|
7
|
+
export * from "./storage/storage.node.js";
|
|
4
8
|
export * from "./types.js";
|
|
5
9
|
export * from "./utils.js";
|
|
6
10
|
//# sourceMappingURL=node.js.map
|
package/dist/src/node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/node.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/node.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { IRenownCrypto } from "../crypto/index.js";
|
|
2
2
|
import type { LoginStatus, User } from "../lib/renown/index.js";
|
|
3
3
|
import type { IRenown } from "../types.js";
|
|
4
4
|
export interface RenownUserContextValue {
|
|
@@ -10,20 +10,24 @@ export interface RenownUserContextValue {
|
|
|
10
10
|
isLoading: boolean;
|
|
11
11
|
/** Whether the user system has been initialized */
|
|
12
12
|
isInitialized: boolean;
|
|
13
|
-
/** Login with optional DID (defaults to
|
|
13
|
+
/** Login with optional DID (defaults to renownCrypto DID) */
|
|
14
14
|
login: (userDid?: string) => Promise<void>;
|
|
15
15
|
/** Logout the current user */
|
|
16
16
|
logout: () => Promise<void>;
|
|
17
17
|
/** Open Renown portal for authentication */
|
|
18
18
|
openRenown: () => void;
|
|
19
|
-
/**
|
|
20
|
-
|
|
19
|
+
/** RenownCrypto instance for cryptographic operations */
|
|
20
|
+
renownCrypto: IRenownCrypto | null;
|
|
21
21
|
/** Renown SDK instance */
|
|
22
22
|
renown: IRenown | null;
|
|
23
23
|
}
|
|
24
24
|
export declare const RenownUserContext: import("react").Context<RenownUserContextValue | null>;
|
|
25
25
|
interface RenownUserProviderProps {
|
|
26
26
|
children: React.ReactNode;
|
|
27
|
+
/**
|
|
28
|
+
* Name of the application. Will be part of the credential.
|
|
29
|
+
*/
|
|
30
|
+
appName?: string;
|
|
27
31
|
/**
|
|
28
32
|
* Renown service URL
|
|
29
33
|
* @default 'https://www.renown.id'
|
|
@@ -67,6 +71,6 @@ interface RenownUserProviderProps {
|
|
|
67
71
|
* const { user, login, logout } = useUser()
|
|
68
72
|
* ```
|
|
69
73
|
*/
|
|
70
|
-
export declare function RenownUserProvider({ children, renownUrl, networkId, chainId, loadingComponent, errorComponent, }: RenownUserProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
74
|
+
export declare function RenownUserProvider({ children, appName, renownUrl, networkId, chainId, loadingComponent, errorComponent, }: RenownUserProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
71
75
|
export {};
|
|
72
76
|
//# sourceMappingURL=renown-user-provider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renown-user-provider.d.ts","sourceRoot":"","sources":["../../../src/providers/renown-user-provider.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"renown-user-provider.d.ts","sourceRoot":"","sources":["../../../src/providers/renown-user-provider.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,OAAO,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAShE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3C,MAAM,WAAW,sBAAsB;IACrC,4DAA4D;IAC5D,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,2BAA2B;IAC3B,WAAW,EAAE,WAAW,CAAC;IACzB,8CAA8C;IAC9C,SAAS,EAAE,OAAO,CAAC;IACnB,mDAAmD;IACnD,aAAa,EAAE,OAAO,CAAC;IACvB,6DAA6D;IAC7D,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,8BAA8B;IAC9B,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,4CAA4C;IAC5C,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,yDAAyD;IACzD,YAAY,EAAE,aAAa,GAAG,IAAI,CAAC;IACnC,0BAA0B;IAC1B,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;CACxB;AAED,eAAO,MAAM,iBAAiB,wDAE7B,CAAC;AAEF,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACnC;;;OAGG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,IAAI,KAAK,KAAK,CAAC,SAAS,CAAC;CACvE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,OAAY,EACZ,SAAmC,EACnC,SAAoB,EACpB,OAAa,EACb,gBAAgB,EAChB,cAAc,GACf,EAAE,uBAAuB,2CAgKzB"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
3
3
|
import { createContext, useCallback, useEffect, useState } from "react";
|
|
4
|
-
import { BrowserKeyStorage,
|
|
5
|
-
import {
|
|
4
|
+
import { BrowserKeyStorage, RenownCryptoBuilder } from "../crypto/index.js";
|
|
5
|
+
import { RenownBuilder } from "../init.browser.js";
|
|
6
6
|
import { fetchProfileDataForUser, handleRenownReturn, openRenown as openRenownPortal, login as renownLogin, logout as renownLogout, } from "../lib/renown/index.js";
|
|
7
7
|
import { SessionStorageManager } from "../lib/session-storage.js";
|
|
8
8
|
export const RenownUserContext = createContext(null);
|
|
@@ -23,13 +23,13 @@ export const RenownUserContext = createContext(null);
|
|
|
23
23
|
* const { user, login, logout } = useUser()
|
|
24
24
|
* ```
|
|
25
25
|
*/
|
|
26
|
-
export function RenownUserProvider({ children, renownUrl = "https://www.renown.id", networkId = "eip155", chainId = "1", loadingComponent, errorComponent, }) {
|
|
26
|
+
export function RenownUserProvider({ children, appName = "", renownUrl = "https://www.renown.id", networkId = "eip155", chainId = "1", loadingComponent, errorComponent, }) {
|
|
27
27
|
const [user, setUser] = useState(null);
|
|
28
28
|
const [loginStatus, setLoginStatus] = useState("initial");
|
|
29
29
|
const [isLoading, setIsLoading] = useState(false);
|
|
30
30
|
const [isInitialized, setIsInitialized] = useState(false);
|
|
31
31
|
const [initError, setInitError] = useState(null);
|
|
32
|
-
const [
|
|
32
|
+
const [renownCrypto, setRenownCrypto] = useState(null);
|
|
33
33
|
const [renown, setRenown] = useState(null);
|
|
34
34
|
// Initialize auth system
|
|
35
35
|
useEffect(() => {
|
|
@@ -40,22 +40,26 @@ export function RenownUserProvider({ children, renownUrl = "https://www.renown.i
|
|
|
40
40
|
return;
|
|
41
41
|
}
|
|
42
42
|
// Initialize SDK if not already initialized
|
|
43
|
-
if (!window.renown || !window.
|
|
44
|
-
// Initialize
|
|
45
|
-
const
|
|
46
|
-
|
|
47
|
-
|
|
43
|
+
if (!window.renown || !window.renownCrypto) {
|
|
44
|
+
// Initialize RenownCrypto with browser key storage
|
|
45
|
+
const keyStorage = await BrowserKeyStorage.create();
|
|
46
|
+
const cryptoInstance = await new RenownCryptoBuilder()
|
|
47
|
+
.withKeyPairStorage(keyStorage)
|
|
48
|
+
.build();
|
|
49
|
+
const renownInstance = await new RenownBuilder(appName)
|
|
50
|
+
.withCrypto(cryptoInstance)
|
|
51
|
+
.build();
|
|
48
52
|
// Attach to window for global access
|
|
49
53
|
window.renown = renownInstance;
|
|
50
|
-
window.
|
|
54
|
+
window.renownCrypto = cryptoInstance;
|
|
51
55
|
// Save to state
|
|
52
|
-
|
|
56
|
+
setRenownCrypto(cryptoInstance);
|
|
53
57
|
setRenown(renownInstance);
|
|
54
58
|
}
|
|
55
59
|
else {
|
|
56
60
|
// Use existing instances from window
|
|
57
|
-
setConnectCrypto(window.connectCrypto);
|
|
58
61
|
setRenown(window.renown);
|
|
62
|
+
setRenownCrypto(window.renownCrypto);
|
|
59
63
|
}
|
|
60
64
|
// Check for stored session first
|
|
61
65
|
const storedUserData = SessionStorageManager.getUserData();
|
|
@@ -70,12 +74,7 @@ export function RenownUserProvider({ children, renownUrl = "https://www.renown.i
|
|
|
70
74
|
}
|
|
71
75
|
// Handle return from Renown authentication
|
|
72
76
|
await handleRenownReturn();
|
|
73
|
-
|
|
74
|
-
let currentUser = window.renown.user instanceof Function
|
|
75
|
-
? window.renown.user()
|
|
76
|
-
: window.renown.user;
|
|
77
|
-
currentUser =
|
|
78
|
-
currentUser instanceof Promise ? await currentUser : currentUser;
|
|
77
|
+
const currentUser = window.renown.user;
|
|
79
78
|
if (currentUser) {
|
|
80
79
|
// Fetch profile data for the logged-in user
|
|
81
80
|
const userWithProfile = await fetchProfileDataForUser(currentUser);
|
|
@@ -95,25 +94,25 @@ export function RenownUserProvider({ children, renownUrl = "https://www.renown.i
|
|
|
95
94
|
setIsInitialized(true);
|
|
96
95
|
}
|
|
97
96
|
};
|
|
98
|
-
init();
|
|
97
|
+
init().catch(console.error);
|
|
99
98
|
}, [renownUrl, networkId, chainId]);
|
|
100
99
|
// Login handler
|
|
101
100
|
const login = useCallback(async (userDid) => {
|
|
102
101
|
if (typeof window === "undefined")
|
|
103
102
|
return;
|
|
104
103
|
const renown = window.renown;
|
|
105
|
-
const
|
|
106
|
-
if (!renown || !
|
|
107
|
-
console.error("Renown or
|
|
104
|
+
const renownCrypto = window.renownCrypto;
|
|
105
|
+
if (!renown || !renownCrypto) {
|
|
106
|
+
console.error("Renown or RenownCrypto not available");
|
|
108
107
|
setLoginStatus("not-authorized");
|
|
109
108
|
return;
|
|
110
109
|
}
|
|
111
110
|
try {
|
|
112
111
|
setIsLoading(true);
|
|
113
112
|
setLoginStatus("checking");
|
|
114
|
-
const did = userDid
|
|
113
|
+
const did = userDid ?? renownCrypto.did;
|
|
115
114
|
// Perform login
|
|
116
|
-
const loggedInUser = await renownLogin(did, renown,
|
|
115
|
+
const loggedInUser = await renownLogin(did, renown, renownCrypto);
|
|
117
116
|
if (loggedInUser) {
|
|
118
117
|
// Fetch profile data and update state
|
|
119
118
|
const userWithProfile = await fetchProfileDataForUser(loggedInUser);
|
|
@@ -143,10 +142,6 @@ export function RenownUserProvider({ children, renownUrl = "https://www.renown.i
|
|
|
143
142
|
console.error("Logout failed:", error);
|
|
144
143
|
}
|
|
145
144
|
}, []);
|
|
146
|
-
// Open Renown portal
|
|
147
|
-
const openRenown = useCallback(() => {
|
|
148
|
-
openRenownPortal();
|
|
149
|
-
}, []);
|
|
150
145
|
// Show loading state while initializing
|
|
151
146
|
if (!isInitialized && loadingComponent) {
|
|
152
147
|
return _jsx(_Fragment, { children: loadingComponent });
|
|
@@ -162,8 +157,8 @@ export function RenownUserProvider({ children, renownUrl = "https://www.renown.i
|
|
|
162
157
|
isInitialized,
|
|
163
158
|
login,
|
|
164
159
|
logout,
|
|
165
|
-
openRenown,
|
|
166
|
-
|
|
160
|
+
openRenown: openRenownPortal,
|
|
161
|
+
renownCrypto,
|
|
167
162
|
renown,
|
|
168
163
|
};
|
|
169
164
|
return (_jsx(RenownUserContext.Provider, { value: value, children: children }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renown-user-provider.js","sourceRoot":"","sources":["../../../src/providers/renown-user-provider.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAExE,OAAO,EAAE,iBAAiB,EAAE,
|
|
1
|
+
{"version":3,"file":"renown-user-provider.js","sourceRoot":"","sources":["../../../src/providers/renown-user-provider.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { Renown } from "./common.js";
|
|
2
|
+
import type { IRenownCrypto, JsonWebKeyPairStorage } from "./crypto/types.js";
|
|
3
|
+
import type { RenownEventEmitter, RenownStorage } from "./types.js";
|
|
4
|
+
export interface RenownBuilderOptions {
|
|
5
|
+
appName: string;
|
|
6
|
+
storage?: RenownStorage;
|
|
7
|
+
eventEmitter?: RenownEventEmitter;
|
|
8
|
+
crypto?: IRenownCrypto;
|
|
9
|
+
keyPairStorage?: JsonWebKeyPairStorage;
|
|
10
|
+
baseUrl?: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Base builder for creating Renown instances.
|
|
14
|
+
* Use platform-specific builders (RenownBuilder from init.browser.js or init.node.js)
|
|
15
|
+
* for pre-configured defaults.
|
|
16
|
+
*/
|
|
17
|
+
export declare class BaseRenownBuilder {
|
|
18
|
+
#private;
|
|
19
|
+
/**
|
|
20
|
+
* @param appName - Application name used for signing context
|
|
21
|
+
*/
|
|
22
|
+
constructor(appName: string);
|
|
23
|
+
/**
|
|
24
|
+
* Set custom storage for user data persistence.
|
|
25
|
+
* Defaults to in-memory storage if not set.
|
|
26
|
+
*/
|
|
27
|
+
withStorage(storage: RenownStorage): this;
|
|
28
|
+
/**
|
|
29
|
+
* Set custom event emitter for user state changes.
|
|
30
|
+
* Defaults to in-memory event emitter if not set.
|
|
31
|
+
*/
|
|
32
|
+
withEventEmitter(eventEmitter: RenownEventEmitter): this;
|
|
33
|
+
/**
|
|
34
|
+
* Set a pre-built crypto instance.
|
|
35
|
+
* Either crypto or keyPairStorage must be provided.
|
|
36
|
+
*/
|
|
37
|
+
withCrypto(crypto: IRenownCrypto): this;
|
|
38
|
+
/**
|
|
39
|
+
* Set key pair storage for cryptographic keys.
|
|
40
|
+
* A crypto instance will be built from this storage.
|
|
41
|
+
* Either crypto or keyPairStorage must be provided.
|
|
42
|
+
*/
|
|
43
|
+
withKeyPairStorage(keyPairStorage: JsonWebKeyPairStorage): this;
|
|
44
|
+
/**
|
|
45
|
+
* Set the Renown server URL for credential verification.
|
|
46
|
+
* Defaults to https://www.renown.id
|
|
47
|
+
*/
|
|
48
|
+
withBaseUrl(baseUrl: string): this;
|
|
49
|
+
/**
|
|
50
|
+
* Build and initialize the Renown instance.
|
|
51
|
+
* If a user is stored, attempts to re-authenticate them.
|
|
52
|
+
* @throws Error if neither crypto nor keyPairStorage is provided
|
|
53
|
+
*/
|
|
54
|
+
build(): Promise<Renown>;
|
|
55
|
+
/**
|
|
56
|
+
* Create a BaseRenownBuilder from options object for a more concise API
|
|
57
|
+
*/
|
|
58
|
+
static from(options: RenownBuilderOptions): BaseRenownBuilder;
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=renown-builder.d.ts.map
|
|
@@ -0,0 +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;AAE9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEpE,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;CAClB;AAED;;;;GAIG;AACH,qBAAa,iBAAiB;;IAQ5B;;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;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAqC9B;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,GAAG,iBAAiB;CAqB9D"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { Renown, RenownMemoryStorage } from "./common.js";
|
|
2
|
+
import { DEFAULT_RENOWN_URL } from "./constants.js";
|
|
3
|
+
import { RenownCryptoBuilder } from "./crypto/renown-crypto-builder.js";
|
|
4
|
+
import { MemoryEventEmitter } from "./event/memory.js";
|
|
5
|
+
/**
|
|
6
|
+
* Base builder for creating Renown instances.
|
|
7
|
+
* Use platform-specific builders (RenownBuilder from init.browser.js or init.node.js)
|
|
8
|
+
* for pre-configured defaults.
|
|
9
|
+
*/
|
|
10
|
+
export class BaseRenownBuilder {
|
|
11
|
+
#appName;
|
|
12
|
+
#storage;
|
|
13
|
+
#eventEmitter;
|
|
14
|
+
#crypto;
|
|
15
|
+
#keyPairStorage;
|
|
16
|
+
#baseUrl;
|
|
17
|
+
/**
|
|
18
|
+
* @param appName - Application name used for signing context
|
|
19
|
+
*/
|
|
20
|
+
constructor(appName) {
|
|
21
|
+
this.#appName = appName;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Set custom storage for user data persistence.
|
|
25
|
+
* Defaults to in-memory storage if not set.
|
|
26
|
+
*/
|
|
27
|
+
withStorage(storage) {
|
|
28
|
+
this.#storage = storage;
|
|
29
|
+
return this;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Set custom event emitter for user state changes.
|
|
33
|
+
* Defaults to in-memory event emitter if not set.
|
|
34
|
+
*/
|
|
35
|
+
withEventEmitter(eventEmitter) {
|
|
36
|
+
this.#eventEmitter = eventEmitter;
|
|
37
|
+
return this;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Set a pre-built crypto instance.
|
|
41
|
+
* Either crypto or keyPairStorage must be provided.
|
|
42
|
+
*/
|
|
43
|
+
withCrypto(crypto) {
|
|
44
|
+
this.#crypto = crypto;
|
|
45
|
+
return this;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Set key pair storage for cryptographic keys.
|
|
49
|
+
* A crypto instance will be built from this storage.
|
|
50
|
+
* Either crypto or keyPairStorage must be provided.
|
|
51
|
+
*/
|
|
52
|
+
withKeyPairStorage(keyPairStorage) {
|
|
53
|
+
this.#keyPairStorage = keyPairStorage;
|
|
54
|
+
return this;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Set the Renown server URL for credential verification.
|
|
58
|
+
* Defaults to https://www.renown.id
|
|
59
|
+
*/
|
|
60
|
+
withBaseUrl(baseUrl) {
|
|
61
|
+
this.#baseUrl = baseUrl;
|
|
62
|
+
return this;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Build and initialize the Renown instance.
|
|
66
|
+
* If a user is stored, attempts to re-authenticate them.
|
|
67
|
+
* @throws Error if neither crypto nor keyPairStorage is provided
|
|
68
|
+
*/
|
|
69
|
+
async build() {
|
|
70
|
+
if (!this.#crypto && !this.#keyPairStorage) {
|
|
71
|
+
throw new Error("Either crypto or keyPairStorage is required. Use withCrypto() or withKeyPairStorage() to set one.");
|
|
72
|
+
}
|
|
73
|
+
const crypto = this.#crypto ??
|
|
74
|
+
(await new RenownCryptoBuilder()
|
|
75
|
+
.withKeyPairStorage(this.#keyPairStorage)
|
|
76
|
+
.build());
|
|
77
|
+
const storage = this.#storage ?? new RenownMemoryStorage();
|
|
78
|
+
const eventEmitter = this.#eventEmitter ?? new MemoryEventEmitter();
|
|
79
|
+
const baseUrl = this.#baseUrl ?? DEFAULT_RENOWN_URL;
|
|
80
|
+
const renown = new Renown(storage, eventEmitter, crypto, this.#appName, baseUrl);
|
|
81
|
+
// Re-authenticate stored user if present
|
|
82
|
+
if (renown.user) {
|
|
83
|
+
try {
|
|
84
|
+
await renown.login(renown.user.did);
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
console.error("Failed to re-authenticate user:", error);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return renown;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Create a BaseRenownBuilder from options object for a more concise API
|
|
94
|
+
*/
|
|
95
|
+
static from(options) {
|
|
96
|
+
const builder = new BaseRenownBuilder(options.appName);
|
|
97
|
+
if (options.storage) {
|
|
98
|
+
builder.withStorage(options.storage);
|
|
99
|
+
}
|
|
100
|
+
if (options.eventEmitter) {
|
|
101
|
+
builder.withEventEmitter(options.eventEmitter);
|
|
102
|
+
}
|
|
103
|
+
if (options.crypto) {
|
|
104
|
+
builder.withCrypto(options.crypto);
|
|
105
|
+
}
|
|
106
|
+
if (options.keyPairStorage) {
|
|
107
|
+
builder.withKeyPairStorage(options.keyPairStorage);
|
|
108
|
+
}
|
|
109
|
+
if (options.baseUrl) {
|
|
110
|
+
builder.withBaseUrl(options.baseUrl);
|
|
111
|
+
}
|
|
112
|
+
return builder;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=renown-builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renown-builder.js","sourceRoot":"","sources":["../../src/renown-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,17 @@
|
|
|
1
|
-
export interface IStorage<T extends Record<string, unknown> = Record<string, unknown
|
|
2
|
-
get
|
|
3
|
-
set
|
|
4
|
-
delete(key:
|
|
1
|
+
export interface IStorage<T extends Record<string, unknown> = Record<string, unknown>, Key extends keyof T = keyof T> {
|
|
2
|
+
get(key: Key): T[Key] | undefined;
|
|
3
|
+
set(key: Key, value?: T[Key]): void;
|
|
4
|
+
delete(key: Key): void;
|
|
5
5
|
}
|
|
6
|
-
export declare abstract class BaseStorage<T extends Record<string, unknown> = Record<string, unknown
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
abstract
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
export declare abstract class BaseStorage<T extends Record<string, unknown> = Record<string, unknown>, Key extends keyof T = keyof T> implements IStorage<T> {
|
|
7
|
+
abstract get(key: Key): T[Key] | undefined;
|
|
8
|
+
abstract set(key: Key, value?: T[Key]): void;
|
|
9
|
+
abstract delete(key: Key): void;
|
|
10
|
+
}
|
|
11
|
+
export declare class MemoryStorage<T extends Record<string, unknown> = Record<string, unknown>, Key extends keyof T = keyof T> extends BaseStorage<T> {
|
|
12
|
+
private readonly data;
|
|
13
|
+
get(key: Key): T[Key] | undefined;
|
|
14
|
+
set(key: Key, value?: T[Key]): void;
|
|
15
|
+
delete(key: Key): void;
|
|
12
16
|
}
|
|
13
17
|
//# sourceMappingURL=common.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/storage/common.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ,CACvB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/storage/common.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ,CACvB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,GAAG,SAAS,MAAM,CAAC,GAAG,MAAM,CAAC;IAE7B,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAClC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IACpC,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;CACxB;AAED,8BAAsB,WAAW,CAC/B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,GAAG,SAAS,MAAM,CAAC,GAAG,MAAM,CAAC,CAC7B,YAAW,QAAQ,CAAC,CAAC,CAAC;IACtB,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS;IAC1C,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI;IAC5C,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;CAChC;AAED,qBAAa,aAAa,CACxB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,GAAG,SAAS,MAAM,CAAC,GAAG,MAAM,CAAC,CAC7B,SAAQ,WAAW,CAAC,CAAC,CAAC;IACtB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA0B;IAE/C,GAAG,CAAC,GAAG,EAAE,GAAG;IAIZ,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI;IAQnC,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;CAGvB"}
|