@reown/appkit-siwx 1.4.0 → 1.5.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/dist/esm/src/core/SIWXConfig.js +1 -14
- package/dist/esm/src/core/SIWXConfig.js.map +1 -1
- package/dist/esm/src/storages/LocalStorage.js +16 -3
- package/dist/esm/src/storages/LocalStorage.js.map +1 -1
- package/dist/esm/tests/storages/LocalStorage.test.js +6 -4
- package/dist/esm/tests/storages/LocalStorage.test.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/types/src/core/SIWXConfig.d.ts +1 -1
- package/dist/types/src/core/SIWXStorage.d.ts +2 -2
- package/dist/types/src/storages/LocalStorage.d.ts +1 -1
- package/package.json +3 -3
|
@@ -23,20 +23,7 @@ export class SIWXConfig {
|
|
|
23
23
|
return this.storage.set(sessions);
|
|
24
24
|
}
|
|
25
25
|
async getSessions(chainId, address) {
|
|
26
|
-
|
|
27
|
-
return allSessions.filter(session => {
|
|
28
|
-
const isSameChain = session.data.chainId === chainId;
|
|
29
|
-
const isSameAddress = session.data.accountAddress === address;
|
|
30
|
-
const startsAt = session.data.notBefore || session.data.issuedAt;
|
|
31
|
-
if (!startsAt || Date.parse(startsAt) > Date.now()) {
|
|
32
|
-
return false;
|
|
33
|
-
}
|
|
34
|
-
const endsAt = session.data.expirationTime;
|
|
35
|
-
if (endsAt && Date.now() > Date.parse(endsAt)) {
|
|
36
|
-
return false;
|
|
37
|
-
}
|
|
38
|
-
return isSameChain && isSameAddress;
|
|
39
|
-
});
|
|
26
|
+
return this.storage.get(chainId, address);
|
|
40
27
|
}
|
|
41
28
|
async revokeSession(chainId, address) {
|
|
42
29
|
return this.storage.delete(chainId, address);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SIWXConfig.js","sourceRoot":"","sources":["../../../../src/core/SIWXConfig.ts"],"names":[],"mappings":"AAUA,MAAM,OAAgB,UAAU;IAK9B,YAAY,MAAoC;QAC9C,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;QACjC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;QACjC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;IAC/B,CAAC;IAEM,aAAa,CAAC,KAAwB;QAC3C,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;IAC5C,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,OAAoB;QAC1C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QACjD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;QAC/C,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IAClC,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,QAAuB;QAC9C,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QAE7F,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;QACzE,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,4BAA4B,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAA;QAC1E,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACnC,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,OAAsB,EAAE,OAAe;QAC9D,
|
|
1
|
+
{"version":3,"file":"SIWXConfig.js","sourceRoot":"","sources":["../../../../src/core/SIWXConfig.ts"],"names":[],"mappings":"AAUA,MAAM,OAAgB,UAAU;IAK9B,YAAY,MAAoC;QAC9C,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;QACjC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;QACjC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;IAC/B,CAAC;IAEM,aAAa,CAAC,KAAwB;QAC3C,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;IAC5C,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,OAAoB;QAC1C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QACjD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;QAC/C,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IAClC,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,QAAuB;QAC9C,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QAE7F,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;QACzE,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,4BAA4B,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAA;QAC1E,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACnC,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,OAAsB,EAAE,OAAe;QAC9D,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC3C,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,OAAsB,EAAE,OAAe;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC9C,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,OAAoB;QAChD,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAA;QACxF,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CACrC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CACzD,CAAA;QAED,OAAO,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;IAC1E,CAAC;CACF"}
|
|
@@ -12,9 +12,22 @@ export class LocalStorage {
|
|
|
12
12
|
this.setSessions(sessions);
|
|
13
13
|
return Promise.resolve();
|
|
14
14
|
}
|
|
15
|
-
get(chainId) {
|
|
16
|
-
const
|
|
17
|
-
|
|
15
|
+
get(chainId, address) {
|
|
16
|
+
const allSessions = this.getSessions();
|
|
17
|
+
const validSessions = allSessions.filter(session => {
|
|
18
|
+
const isSameChain = session.data.chainId === chainId;
|
|
19
|
+
const isSameAddress = session.data.accountAddress === address;
|
|
20
|
+
const startsAt = session.data.notBefore || session.data.issuedAt;
|
|
21
|
+
if (startsAt && Date.parse(startsAt) > Date.now()) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
const endsAt = session.data.expirationTime;
|
|
25
|
+
if (endsAt && Date.now() > Date.parse(endsAt)) {
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
return isSameChain && isSameAddress;
|
|
29
|
+
});
|
|
30
|
+
return Promise.resolve(validSessions);
|
|
18
31
|
}
|
|
19
32
|
delete(chainId, address) {
|
|
20
33
|
const sessions = this.getSessions().filter(session => session.data.chainId !== chainId && session.data.accountAddress !== address);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocalStorage.js","sourceRoot":"","sources":["../../../../src/storages/LocalStorage.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,YAAY;IAGvB,YAAY,MAAsC;QAChD,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAA;IACvB,CAAC;IAED,GAAG,CAAC,OAAoB;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QACnC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACtB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QAE1B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;IAED,GAAG,CAAC,QAAuB;QACzB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QAE1B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;IAED,GAAG,CAAC,OAAsB;
|
|
1
|
+
{"version":3,"file":"LocalStorage.js","sourceRoot":"","sources":["../../../../src/storages/LocalStorage.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,YAAY;IAGvB,YAAY,MAAsC;QAChD,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAA;IACvB,CAAC;IAED,GAAG,CAAC,OAAoB;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QACnC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACtB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QAE1B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;IAED,GAAG,CAAC,QAAuB;QACzB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QAE1B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;IAED,GAAG,CAAC,OAAsB,EAAE,OAAe;QACzC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAEtC,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;YACjD,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAA;YACpD,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,KAAK,OAAO,CAAA;YAE7D,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAA;YAChE,IAAI,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;gBAClD,OAAO,KAAK,CAAA;YACd,CAAC;YAED,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,CAAA;YAC1C,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC9C,OAAO,KAAK,CAAA;YACd,CAAC;YAED,OAAO,WAAW,IAAI,aAAa,CAAA;QACrC,CAAC,CAAC,CAAA;QAEF,OAAO,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;IACvC,CAAC;IAED,MAAM,CAAC,OAAe,EAAE,OAAe;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CACxC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,cAAc,KAAK,OAAO,CACvF,CAAA;QACD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QAE1B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;IAEO,WAAW;QACjB,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;QAC/C,CAAC;QAED,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEjD,OAAO,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACjD,CAAC;IAEO,WAAW,CAAC,QAA+B;QACjD,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC1D,CAAC;CACF"}
|
|
@@ -21,12 +21,14 @@ describe('LocalStorage', () => {
|
|
|
21
21
|
removeItem.mockClear();
|
|
22
22
|
});
|
|
23
23
|
test('should get sessions empty', async () => {
|
|
24
|
-
const sessions = await storage.get('eip155:1');
|
|
24
|
+
const sessions = await storage.get('eip155:1', '0x1234567890abcdef');
|
|
25
25
|
expect(sessions).toEqual([]);
|
|
26
26
|
});
|
|
27
27
|
test('should get sessions', async () => {
|
|
28
|
-
getItem.mockImplementation(() => JSON.stringify([
|
|
29
|
-
|
|
28
|
+
getItem.mockImplementation(() => JSON.stringify([
|
|
29
|
+
mockSession({ data: { accountAddress: '0x1234567890abcdef', chainId: 'eip155:1' } })
|
|
30
|
+
]));
|
|
31
|
+
const sessions = await storage.get('eip155:1', '0x1234567890abcdef');
|
|
30
32
|
expect(getItem).toHaveBeenCalledWith(key);
|
|
31
33
|
expect(sessions).toHaveLength(1);
|
|
32
34
|
});
|
|
@@ -41,7 +43,7 @@ describe('LocalStorage', () => {
|
|
|
41
43
|
data: { accountAddress: '0x1234567890abcdef', chainId: 'eip155:1' }
|
|
42
44
|
})
|
|
43
45
|
]));
|
|
44
|
-
expect(await storage.get('eip155:1')).toHaveLength(1);
|
|
46
|
+
expect(await storage.get('eip155:1', '0x1234567890abcdef')).toHaveLength(1);
|
|
45
47
|
await storage.delete('eip155:1', '0x1234567890abcdef');
|
|
46
48
|
expect(getItem).toHaveBeenCalledWith(key);
|
|
47
49
|
expect(setItem).toHaveBeenCalledWith(key, JSON.stringify([]));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocalStorage.test.js","sourceRoot":"","sources":["../../../../tests/storages/LocalStorage.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAElD,MAAM,oBAAoB,GAAG,UAAU,CAAC,YAAY,CAAA;AACpD,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,CAAA;AAExC,QAAQ,CAAC,GAAG,EAAE;IACZ,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAA;AAC3F,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,MAAM,GAAG,GAAG,kBAAkB,CAAA;IAC9B,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;IAEzC,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAsB,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;IACtD,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;IACvB,MAAM,UAAU,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;IAE1B,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;IAC3F,CAAC,CAAC,CAAA;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,SAAS,EAAE,CAAA;QACnB,OAAO,CAAC,SAAS,EAAE,CAAA;QACnB,UAAU,CAAC,SAAS,EAAE,CAAA;IACxB,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;QAC3C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"LocalStorage.test.js","sourceRoot":"","sources":["../../../../tests/storages/LocalStorage.test.ts"],"names":[],"mappings":"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"}
|