|
5 | 5 | import * as forge from 'node-forge' |
6 | 6 | import { BASE_URL } from '../config' |
7 | 7 | import { |
8 | | - IAuthResult, |
9 | 8 | IIframeData, |
10 | 9 | IIframeEventData, |
11 | 10 | IIframeOptions, |
@@ -318,60 +317,30 @@ export const callIframe = async ( |
318 | 317 | } |
319 | 318 | } |
320 | 319 |
|
321 | | -export const readCache = (provider: Provider) => { |
322 | | - try { |
323 | | - const result = JSON.parse( |
324 | | - (window.localStorage && window.localStorage.getItem('anyweb_info')) || |
325 | | - '{}' |
326 | | - ) |
327 | | - if ( |
328 | | - Object.keys(result).length > 0 && |
329 | | - Object.keys(result).includes('address') && |
330 | | - Object.keys(result).includes('networkId') && |
331 | | - Object.keys(result).includes('chainId') && |
332 | | - Object.keys(result).includes('expires') && |
333 | | - Object.keys(result).includes('oauthToken') && |
334 | | - Object.keys(result).includes('scopes') && |
335 | | - result.expires > new Date().getTime() |
336 | | - ) { |
337 | | - provider.address = result.address |
338 | | - provider.networkId = result.networkId |
339 | | - provider.chainId = result.chainId |
340 | | - provider.url = result.url |
341 | | - provider.oauthToken = result.oauthToken |
342 | | - provider.scopes = result.scopes |
343 | | - } |
344 | | - } catch (e) { |
345 | | - provider.logger.error(e) |
346 | | - } |
347 | | -} |
348 | | - |
349 | | -export const setCache = (data: IAuthResult, provider: Provider) => { |
| 320 | +export const writeStorage = ( |
| 321 | + key: string, |
| 322 | + content: Record<string, unknown>, |
| 323 | + expiresTime: number = 5 * 60 * 1000 |
| 324 | +) => { |
350 | 325 | window.localStorage && |
351 | 326 | window.localStorage.setItem( |
352 | | - 'anyweb_info', |
| 327 | + `anyweb_${key}`, |
353 | 328 | JSON.stringify({ |
354 | | - ...data, |
355 | | - expires: 60 * 1000 + new Date().getTime(), |
| 329 | + ...content, |
| 330 | + expires: expiresTime + new Date().getTime(), |
356 | 331 | }) |
357 | 332 | ) |
358 | | - provider.address = data.address || provider.address |
359 | | - provider.networkId = data.networkId || provider.networkId |
360 | | - provider.chainId = data.chainId || provider.chainId |
361 | | - provider.url = data.url |
362 | | - provider.oauthToken = data.oauthToken || provider.oauthToken |
363 | | - provider.scopes = data.scopes || provider.scopes |
364 | | - return data |
365 | 333 | } |
366 | 334 |
|
367 | | -export const removeCache = (provider: Provider) => { |
368 | | - window.localStorage && window.localStorage.removeItem('anyweb_info') |
369 | | - provider.address = [] |
370 | | - provider.networkId = -1 |
371 | | - provider.chainId = -1 |
372 | | - provider.url = '' |
373 | | - provider.oauthToken = undefined |
374 | | - provider.scopes = [] |
| 335 | +export const readStorage = (key: string) => { |
| 336 | + return JSON.parse( |
| 337 | + (window.localStorage && window.localStorage.getItem(`anyweb_${key}`)) || |
| 338 | + '{}' |
| 339 | + ) |
| 340 | +} |
| 341 | + |
| 342 | +export const removeStorage = (key: string) => { |
| 343 | + window.localStorage && window.localStorage.removeItem(`anyweb_${key}`) |
375 | 344 | } |
376 | 345 |
|
377 | 346 | export const isArrEqual = <T>(arr1: T[], arr2: T[]) => { |
|
0 commit comments