decentraland-dapps 12.25.2 → 12.26.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 +1 -0
- package/dist/containers/LoginModal/LoginModal.d.ts +1 -1
- package/dist/containers/LoginModal/LoginModal.js +6 -44
- package/dist/containers/LoginModal/LoginModal.js.map +1 -1
- package/dist/containers/LoginModal/utils.d.ts +4 -0
- package/dist/containers/LoginModal/utils.js +49 -0
- package/dist/containers/LoginModal/utils.js.map +1 -0
- package/dist/lib/eth.d.ts +2 -0
- package/dist/lib/eth.js +6 -1
- package/dist/lib/eth.js.map +1 -1
- package/dist/lib/localStorage.d.ts +7 -2
- package/dist/lib/localStorage.js +13 -2
- package/dist/lib/localStorage.js.map +1 -1
- package/dist/lib/types.d.ts +5 -0
- package/dist/modules/storage/middleware.d.ts +2 -1
- package/dist/modules/storage/middleware.js +6 -8
- package/dist/modules/storage/middleware.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -1249,6 +1249,7 @@ async function doSomething() {
|
|
|
1249
1249
|
### Helpers
|
|
1250
1250
|
|
|
1251
1251
|
- `isCucumberProvider`: Check if the provider is a `cucumberProvider`.
|
|
1252
|
+
- `isCoinbaseProvider`: Check if the provider is a `coinbaseProvider`.
|
|
1252
1253
|
- `isDapperProvider`: Check if the provider is a _dapper's_ provider.
|
|
1253
1254
|
- `isValidChainId`: Check if the chain id is valid.
|
|
1254
1255
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { LoginModalI18N, LoginModalOptionI18N, LoginModalOptionType } from 'decentraland-ui';
|
|
2
|
+
import { LoginModalI18N, LoginModalOptionI18N, LoginModalOptionType } from 'decentraland-ui/dist/components/LoginModal/LoginModal';
|
|
3
3
|
import { ProviderType } from 'decentraland-connect';
|
|
4
4
|
import { DefaultProps, Props, State } from './LoginModal.types';
|
|
5
5
|
export default class LoginModal extends React.PureComponent<Props, State> {
|
|
@@ -20,31 +20,15 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
20
20
|
};
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
22
|
const React = __importStar(require("react"));
|
|
23
|
-
const
|
|
23
|
+
const LoginModal_1 = require("decentraland-ui/dist/components/LoginModal/LoginModal");
|
|
24
24
|
const decentraland_connect_1 = require("decentraland-connect");
|
|
25
25
|
const utils_1 = require("../../modules/translation/utils");
|
|
26
|
-
const
|
|
27
|
-
const { METAMASK, DAPPER, SAMSUNG, FORTMATIC, WALLET_CONNECT } = decentraland_ui_1.LoginModalOptionType;
|
|
26
|
+
const utils_2 = require("./utils");
|
|
28
27
|
class LoginModal extends React.PureComponent {
|
|
29
28
|
constructor(props) {
|
|
30
29
|
super(props);
|
|
31
30
|
this.handleOnConnect = (loginType) => {
|
|
32
|
-
let providerType;
|
|
33
|
-
switch (loginType) {
|
|
34
|
-
case METAMASK:
|
|
35
|
-
case DAPPER:
|
|
36
|
-
case SAMSUNG:
|
|
37
|
-
providerType = decentraland_connect_1.ProviderType.INJECTED;
|
|
38
|
-
break;
|
|
39
|
-
case FORTMATIC:
|
|
40
|
-
providerType = decentraland_connect_1.ProviderType.FORTMATIC;
|
|
41
|
-
break;
|
|
42
|
-
case WALLET_CONNECT:
|
|
43
|
-
providerType = decentraland_connect_1.ProviderType.WALLET_CONNECT;
|
|
44
|
-
break;
|
|
45
|
-
default:
|
|
46
|
-
throw new Error(`Invalid login type ${loginType}`);
|
|
47
|
-
}
|
|
31
|
+
let providerType = utils_2.toProviderType(loginType);
|
|
48
32
|
this.props.onConnect(providerType);
|
|
49
33
|
};
|
|
50
34
|
this.getModalTranslations = () => {
|
|
@@ -68,30 +52,8 @@ class LoginModal extends React.PureComponent {
|
|
|
68
52
|
};
|
|
69
53
|
};
|
|
70
54
|
this.renderLoginModalOption = (providerType) => {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
case decentraland_connect_1.ProviderType.INJECTED:
|
|
74
|
-
if (eth_1.isCucumberProvider()) {
|
|
75
|
-
loginType = SAMSUNG;
|
|
76
|
-
}
|
|
77
|
-
else if (eth_1.isDapperProvider()) {
|
|
78
|
-
loginType = DAPPER;
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
loginType = METAMASK;
|
|
82
|
-
}
|
|
83
|
-
break;
|
|
84
|
-
case decentraland_connect_1.ProviderType.FORTMATIC:
|
|
85
|
-
loginType = FORTMATIC;
|
|
86
|
-
break;
|
|
87
|
-
case decentraland_connect_1.ProviderType.WALLET_CONNECT:
|
|
88
|
-
loginType = WALLET_CONNECT;
|
|
89
|
-
break;
|
|
90
|
-
default:
|
|
91
|
-
console.warn(`Invalid provider type ${providerType}`);
|
|
92
|
-
break;
|
|
93
|
-
}
|
|
94
|
-
return loginType ? (React.createElement(decentraland_ui_1.LoginModal.Option, { key: loginType, type: loginType, i18n: this.getOptionTranslations(), onClick: () => this.handleOnConnect(loginType) })) : null;
|
|
55
|
+
const loginType = utils_2.toModalOptionType(providerType);
|
|
56
|
+
return loginType ? (React.createElement(LoginModal_1.LoginModal.Option, { key: loginType, type: loginType, i18n: this.getOptionTranslations(), onClick: () => this.handleOnConnect(loginType) })) : null;
|
|
95
57
|
};
|
|
96
58
|
this.state = {
|
|
97
59
|
hasError: false
|
|
@@ -112,7 +74,7 @@ class LoginModal extends React.PureComponent {
|
|
|
112
74
|
render() {
|
|
113
75
|
const { open, className, isLoading, onClose } = this.props;
|
|
114
76
|
const { hasError } = this.state;
|
|
115
|
-
return (React.createElement(
|
|
77
|
+
return (React.createElement(LoginModal_1.LoginModal, { open: open, className: className, i18n: this.getModalTranslations(), message: React.createElement(utils_1.T, { id: "@dapps.login.modal.supported_wallets", values: {
|
|
116
78
|
br: React.createElement("br", null),
|
|
117
79
|
trezor_link: (React.createElement("a", { href: "https://github.com/trezor/trezor-firmware/pull/1568", target: "_blank", rel: "noopener noreferrer" }, utils_1.t('@dapps.login.modal.trezor_link')))
|
|
118
80
|
} }), loading: isLoading, hasError: hasError, onClose: onClose }, decentraland_connect_1.connection.getAvailableProviders().map(this.renderLoginModalOption)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoginModal.js","sourceRoot":"","sources":["../../../src/containers/LoginModal/LoginModal.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,6CAA8B;AAC9B,
|
|
1
|
+
{"version":3,"file":"LoginModal.js","sourceRoot":"","sources":["../../../src/containers/LoginModal/LoginModal.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ProviderType } from "decentraland-connect/dist/types";
|
|
2
|
+
import { LoginModalOptionType } from "decentraland-ui/dist/components/LoginModal/LoginModal";
|
|
3
|
+
export declare function toModalOptionType(providerType: ProviderType): LoginModalOptionType | undefined;
|
|
4
|
+
export declare function toProviderType(modalOptionType: LoginModalOptionType): ProviderType;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toProviderType = exports.toModalOptionType = void 0;
|
|
4
|
+
const types_1 = require("decentraland-connect/dist/types");
|
|
5
|
+
const LoginModal_1 = require("decentraland-ui/dist/components/LoginModal/LoginModal");
|
|
6
|
+
const eth_1 = require("../../lib/eth");
|
|
7
|
+
const { METAMASK, DAPPER, SAMSUNG, FORTMATIC, COINBASE, WALLET_CONNECT } = LoginModal_1.LoginModalOptionType;
|
|
8
|
+
function toModalOptionType(providerType) {
|
|
9
|
+
switch (providerType) {
|
|
10
|
+
case types_1.ProviderType.INJECTED:
|
|
11
|
+
if (eth_1.isCucumberProvider()) {
|
|
12
|
+
return SAMSUNG;
|
|
13
|
+
}
|
|
14
|
+
else if (eth_1.isCoinbaseProvider()) {
|
|
15
|
+
return COINBASE;
|
|
16
|
+
}
|
|
17
|
+
else if (eth_1.isDapperProvider()) {
|
|
18
|
+
return DAPPER;
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
return METAMASK;
|
|
22
|
+
}
|
|
23
|
+
case types_1.ProviderType.FORTMATIC:
|
|
24
|
+
return FORTMATIC;
|
|
25
|
+
case types_1.ProviderType.WALLET_CONNECT:
|
|
26
|
+
return WALLET_CONNECT;
|
|
27
|
+
default:
|
|
28
|
+
console.warn(`Invalid provider type ${providerType}`);
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.toModalOptionType = toModalOptionType;
|
|
33
|
+
function toProviderType(modalOptionType) {
|
|
34
|
+
switch (modalOptionType) {
|
|
35
|
+
case METAMASK:
|
|
36
|
+
case COINBASE:
|
|
37
|
+
case DAPPER:
|
|
38
|
+
case SAMSUNG:
|
|
39
|
+
return types_1.ProviderType.INJECTED;
|
|
40
|
+
case FORTMATIC:
|
|
41
|
+
return types_1.ProviderType.FORTMATIC;
|
|
42
|
+
case WALLET_CONNECT:
|
|
43
|
+
return types_1.ProviderType.WALLET_CONNECT;
|
|
44
|
+
default:
|
|
45
|
+
throw new Error(`Invalid login type ${modalOptionType}`);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.toProviderType = toProviderType;
|
|
49
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/containers/LoginModal/utils.ts"],"names":[],"mappings":";;;AAAA,2DAA+D;AAC/D,sFAA6F;AAC7F,uCAAyF;AAEzF,MAAM,EACJ,QAAQ,EACR,MAAM,EACN,OAAO,EACP,SAAS,EACT,QAAQ,EACR,cAAc,EACf,GAAG,iCAAoB,CAAA;AAExB,SAAgB,iBAAiB,CAAC,YAA0B;IAC1D,QAAQ,YAAY,EAAE;QACpB,KAAK,oBAAY,CAAC,QAAQ;YACxB,IAAI,wBAAkB,EAAE,EAAE;gBACxB,OAAO,OAAO,CAAA;aACf;iBAAM,IAAI,wBAAkB,EAAE,EAAE;gBAC/B,OAAO,QAAQ,CAAA;aAChB;iBAAM,IAAI,sBAAgB,EAAE,EAAE;gBAC7B,OAAO,MAAM,CAAA;aACd;iBAAM;gBACL,OAAO,QAAQ,CAAA;aAChB;QACH,KAAK,oBAAY,CAAC,SAAS;YACzB,OAAO,SAAS,CAAA;QAClB,KAAK,oBAAY,CAAC,cAAc;YAC9B,OAAO,cAAc,CAAA;QACvB;YACE,OAAO,CAAC,IAAI,CAAC,yBAAyB,YAAY,EAAE,CAAC,CAAA;YACrD,OAAM;KACT;AACH,CAAC;AApBD,8CAoBC;AAED,SAAgB,cAAc,CAAC,eAAqC;IAClE,QAAQ,eAAe,EAAE;QACvB,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ,CAAC;QACd,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO;YACV,OAAO,oBAAY,CAAC,QAAQ,CAAA;QAC9B,KAAK,SAAS;YACZ,OAAO,oBAAY,CAAC,SAAS,CAAA;QAC/B,KAAK,cAAc;YACjB,OAAO,oBAAY,CAAC,cAAc,CAAA;QACpC;YACE,MAAM,IAAI,KAAK,CAAC,sBAAsB,eAAe,EAAE,CAAC,CAAA;KAC3D;AACH,CAAC;AAdD,wCAcC"}
|
package/dist/lib/eth.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export declare type EthereumWindow = Window & {
|
|
|
5
5
|
enable?: () => Promise<string[]>;
|
|
6
6
|
isCucumber?: boolean;
|
|
7
7
|
isDapper?: boolean;
|
|
8
|
+
isToshi?: boolean;
|
|
8
9
|
};
|
|
9
10
|
};
|
|
10
11
|
export declare function getNetworkProvider(chainId: ChainId): Promise<Provider>;
|
|
@@ -13,5 +14,6 @@ export declare function getConnectedProviderType(): ProviderType | null;
|
|
|
13
14
|
export declare function getConnectedProviderChainId(): ChainId | null;
|
|
14
15
|
export declare function isCucumberProvider(): boolean;
|
|
15
16
|
export declare function isDapperProvider(): boolean;
|
|
17
|
+
export declare function isCoinbaseProvider(): boolean;
|
|
16
18
|
export declare function isValidChainId(chainId: string | number): boolean;
|
|
17
19
|
export declare function getChainIdByNetwork(network: Network): ChainId;
|
package/dist/lib/eth.js
CHANGED
|
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.getChainIdByNetwork = exports.isValidChainId = exports.isDapperProvider = exports.isCucumberProvider = exports.getConnectedProviderChainId = exports.getConnectedProviderType = exports.getConnectedProvider = exports.getNetworkProvider = void 0;
|
|
12
|
+
exports.getChainIdByNetwork = exports.isValidChainId = exports.isCoinbaseProvider = exports.isDapperProvider = exports.isCucumberProvider = exports.getConnectedProviderChainId = exports.getConnectedProviderType = exports.getConnectedProvider = exports.getNetworkProvider = void 0;
|
|
13
13
|
const schemas_1 = require("@dcl/schemas");
|
|
14
14
|
const ethers_1 = require("ethers");
|
|
15
15
|
const decentraland_connect_1 = require("decentraland-connect");
|
|
@@ -66,6 +66,11 @@ function isDapperProvider() {
|
|
|
66
66
|
return !!provider && !!provider.isDapper;
|
|
67
67
|
}
|
|
68
68
|
exports.isDapperProvider = isDapperProvider;
|
|
69
|
+
function isCoinbaseProvider() {
|
|
70
|
+
const provider = window.ethereum;
|
|
71
|
+
return !!provider && !!provider.isToshi;
|
|
72
|
+
}
|
|
73
|
+
exports.isCoinbaseProvider = isCoinbaseProvider;
|
|
69
74
|
function isValidChainId(chainId) {
|
|
70
75
|
return Object.values(schemas_1.ChainId).includes(Number(chainId));
|
|
71
76
|
}
|
package/dist/lib/eth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eth.js","sourceRoot":"","sources":["../../src/lib/eth.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAA+C;AAC/C,mCAAkC;AAClC,+DAAyE;AACzE,6DAA4D;AAC5D,mCAAkC;
|
|
1
|
+
{"version":3,"file":"eth.js","sourceRoot":"","sources":["../../src/lib/eth.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAA+C;AAC/C,mCAAkC;AAClC,+DAAyE;AACzE,6DAA4D;AAC5D,mCAAkC;AAWlC,SAAsB,kBAAkB,CAAC,OAAgB;;QACvD;;;UAGE;QACF,MAAM,iBAAiB,GAAG,MAAM,oBAAoB,EAAE,CAAA;QACtD,IAAI,iBAAiB,EAAE;YACrB,MAAM,gBAAgB,GAAG,MAAM,IAAI,kBAAS,CAAC,YAAY,CAAC,iBAAiB,CAAC;iBACzE,SAAS,EAAE;iBACX,UAAU,EAAE,CAAA;YACf,IAAI,OAAO,KAAK,gBAAgB,EAAE;gBAChC,OAAO,iBAAiB,CAAA;aACzB;SACF;QACD,OAAO,iCAAU,CAAC,cAAc,CAAC,mCAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACjE,CAAC;CAAA;AAfD,gDAeC;AAED,SAAsB,oBAAoB;;QACxC,IAAI;YACF,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,iCAAU,CAAC,qBAAqB,EAAE,CAAA;YAC7D,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAA;SAClC;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,IAAI,CAAA;SACZ;IACH,CAAC;CAAA;AAPD,oDAOC;AAED,SAAgB,wBAAwB;IACtC,MAAM,cAAc,GAAG,iCAAU,CAAC,iBAAiB,EAAE,CAAA;IACrD,OAAO,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAA;AAC5D,CAAC;AAHD,4DAGC;AAED,SAAgB,2BAA2B;IACzC,MAAM,cAAc,GAAG,iCAAU,CAAC,iBAAiB,EAAE,CAAA;IACrD,OAAO,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;AACvD,CAAC;AAHD,kEAGC;AAED,SAAgB,kBAAkB;IAChC,MAAM,QAAQ,GAAI,MAAyB,CAAC,QAAQ,CAAA;IACpD,OAAO,gBAAQ,EAAE,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAA;AAC1D,CAAC;AAHD,gDAGC;AAED,SAAgB,gBAAgB;IAC9B,MAAM,QAAQ,GAAI,MAAyB,CAAC,QAAQ,CAAA;IACpD,OAAO,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAA;AAC1C,CAAC;AAHD,4CAGC;AAED,SAAgB,kBAAkB;IAChC,MAAM,QAAQ,GAAI,MAAyB,CAAC,QAAQ,CAAA;IACpD,OAAO,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAA;AACzC,CAAC;AAHD,gDAGC;AAED,SAAgB,cAAc,CAAC,OAAwB;IACrD,OAAO,MAAM,CAAC,MAAM,CAAC,iBAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;AACzD,CAAC;AAFD,wCAEC;AAED,SAAgB,mBAAmB,CAAC,OAAgB;IAClD,MAAM,gBAAgB,GAAG,2BAA2B,EAAE,CAAA;IACtD,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;KAC7D;IACD,MAAM,MAAM,GAAG,0CAAqB,CAAC,gBAAgB,CAAC,CAAA;IACtD,OAAO,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;AACvC,CAAC;AAPD,kDAOC"}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
import { Migrations, LocalStorage } from './types';
|
|
1
|
+
import { Migrations, LocalStorage, StorageOwnData } from './types';
|
|
2
2
|
export declare function hasLocalStorage(): boolean;
|
|
3
3
|
export declare function getLocalStorage(): LocalStorage;
|
|
4
|
-
export declare function
|
|
4
|
+
export declare function getDefaultState<T>(migrations: Migrations<T>): {
|
|
5
|
+
storage: {
|
|
6
|
+
version: number;
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
export declare function migrateStorage<T extends StorageOwnData>(key: string, migrations: Migrations<T>): T;
|
package/dist/lib/localStorage.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.migrateStorage = exports.getLocalStorage = exports.hasLocalStorage = void 0;
|
|
3
|
+
exports.migrateStorage = exports.getDefaultState = exports.getLocalStorage = exports.hasLocalStorage = void 0;
|
|
4
4
|
function hasLocalStorage() {
|
|
5
5
|
try {
|
|
6
6
|
// https://gist.github.com/paulirish/5558557
|
|
@@ -25,6 +25,17 @@ function getLocalStorage() {
|
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
27
|
exports.getLocalStorage = getLocalStorage;
|
|
28
|
+
function getDefaultState(migrations) {
|
|
29
|
+
const keys = Object.keys(migrations);
|
|
30
|
+
const version = keys.length === 0
|
|
31
|
+
? 1
|
|
32
|
+
: Object.keys(migrations)
|
|
33
|
+
.map(Number)
|
|
34
|
+
.filter(num => !isNaN(num))
|
|
35
|
+
.sort((a, b) => b - a)[0];
|
|
36
|
+
return { storage: { version } };
|
|
37
|
+
}
|
|
38
|
+
exports.getDefaultState = getDefaultState;
|
|
28
39
|
function migrateStorage(key, migrations) {
|
|
29
40
|
let version = 1;
|
|
30
41
|
const localStorage = getLocalStorage();
|
|
@@ -45,7 +56,7 @@ function migrateStorage(key, migrations) {
|
|
|
45
56
|
}
|
|
46
57
|
return data;
|
|
47
58
|
}
|
|
48
|
-
return
|
|
59
|
+
return getDefaultState(migrations);
|
|
49
60
|
}
|
|
50
61
|
exports.migrateStorage = migrateStorage;
|
|
51
62
|
//# sourceMappingURL=localStorage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localStorage.js","sourceRoot":"","sources":["../../src/lib/localStorage.ts"],"names":[],"mappings":";;;AAEA,SAAgB,eAAe;IAC7B,IAAI;QACF,4CAA4C;QAC5C,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAA;QACxC,MAAM,GAAG,GAAG,KAAK,CAAA;QACjB,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAC9B,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QAC5B,OAAO,IAAI,CAAA;KACZ;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,KAAK,CAAA;KACb;AACH,CAAC;AAXD,0CAWC;AAED,SAAgB,eAAe;IAC7B,OAAO,eAAe,EAAE;QACtB,CAAC,CAAC,MAAM,CAAC,YAAY;QACrB,CAAC,CAAC;YACE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI;YACnB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI;YACnB,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI;SACvB,CAAA;AACP,CAAC;AARD,0CAQC;AAED,SAAgB,cAAc,CAC5B,GAAW,EACX,UAAyB;IAEzB,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,MAAM,YAAY,GAAG,eAAe,EAAE,CAAA;IACtC,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAE5C,IAAI,UAAU,EAAE;QACd,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QAEjC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACxC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;SAC7C;QACD,IAAI,WAAW,GAAG,OAAO,GAAG,CAAC,CAAA;QAE7B,OAAO,UAAU,CAAC,WAAW,CAAC,EAAE;YAC9B,IAAI,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAA;YACpC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBACjB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAA;aAClB;YACD,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,WAAW,CAAA;YAClC,WAAW,EAAE,CAAA;SACd;QAED,OAAO,IAAI,CAAA;KACZ;IAED,OAAO,
|
|
1
|
+
{"version":3,"file":"localStorage.js","sourceRoot":"","sources":["../../src/lib/localStorage.ts"],"names":[],"mappings":";;;AAEA,SAAgB,eAAe;IAC7B,IAAI;QACF,4CAA4C;QAC5C,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAA;QACxC,MAAM,GAAG,GAAG,KAAK,CAAA;QACjB,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAC9B,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QAC5B,OAAO,IAAI,CAAA;KACZ;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,KAAK,CAAA;KACb;AACH,CAAC;AAXD,0CAWC;AAED,SAAgB,eAAe;IAC7B,OAAO,eAAe,EAAE;QACtB,CAAC,CAAC,MAAM,CAAC,YAAY;QACrB,CAAC,CAAC;YACE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI;YACnB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI;YACnB,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI;SACvB,CAAA;AACP,CAAC;AARD,0CAQC;AAED,SAAgB,eAAe,CAAI,UAAyB;IAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAEpC,MAAM,OAAO,GACX,IAAI,CAAC,MAAM,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;aACpB,GAAG,CAAC,MAAM,CAAC;aACX,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;aAC1B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAEjC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAA;AACjC,CAAC;AAZD,0CAYC;AAED,SAAgB,cAAc,CAC5B,GAAW,EACX,UAAyB;IAEzB,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,MAAM,YAAY,GAAG,eAAe,EAAE,CAAA;IACtC,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAE5C,IAAI,UAAU,EAAE;QACd,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QAEjC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACxC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;SAC7C;QACD,IAAI,WAAW,GAAG,OAAO,GAAG,CAAC,CAAA;QAE7B,OAAO,UAAU,CAAC,WAAW,CAAC,EAAE;YAC9B,IAAI,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAA;YACpC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBACjB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAA;aAClB;YACD,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,WAAW,CAAA;YAClC,WAAW,EAAE,CAAA;SACd;QAED,OAAO,IAAI,CAAA;KACZ;IAED,OAAO,eAAe,CAAC,UAAU,CAAM,CAAA;AACzC,CAAC;AA7BD,wCA6BC"}
|
package/dist/lib/types.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { StorageOwnData } from '../../lib/types';
|
|
1
2
|
import { StorageMiddleware } from './types';
|
|
2
|
-
export declare function createStorageMiddleware<T>(options: StorageMiddleware<T>): {
|
|
3
|
+
export declare function createStorageMiddleware<T extends StorageOwnData>(options: StorageMiddleware<T>): {
|
|
3
4
|
storageMiddleware: any;
|
|
4
5
|
loadStorageMiddleware: any;
|
|
5
6
|
};
|
|
@@ -42,14 +42,12 @@ function createStorageMiddleware(options) {
|
|
|
42
42
|
}
|
|
43
43
|
const localStorageState = localStorage_1.migrateStorage(storageKey, migrations);
|
|
44
44
|
let setItemFailure = false;
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
console.warn(e.message);
|
|
52
|
-
}
|
|
45
|
+
try {
|
|
46
|
+
localStorage.setItem(storageKey, JSON.stringify(localStorageState));
|
|
47
|
+
}
|
|
48
|
+
catch (e) {
|
|
49
|
+
setItemFailure = true;
|
|
50
|
+
console.warn(e.message);
|
|
53
51
|
}
|
|
54
52
|
const storageEngine = redux_storage_decorator_filter_1.default(redux_persistence_engine_localstorage_1.default(storageKey), [
|
|
55
53
|
['translation', 'locale'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/modules/storage/middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,2DAA4C;AAC5C,kHAAuE;AACvE,oGAAmD;AACnD,yDAAwE;AACxE,qEAAiE;
|
|
1
|
+
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/modules/storage/middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,2DAA4C;AAC5C,kHAAuE;AACvE,oGAAmD;AACnD,yDAAwE;AACxE,qEAAiE;AAEjE,uCAAwC;AAExC,oDAG+B;AAC/B,oDAU+B;AAE/B,MAAM,YAAY,GAAG,CAAC,KAAU,EAAE,EAAE,CAClC,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,sBAAY,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;AAEvE,SAAgB,uBAAuB,CACrC,OAA6B;IAE7B,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,OAAO,CAAA;IAEzE,IAAI,CAAC,8BAAe,EAAE,EAAE;QACtB,OAAO;YACL,iBAAiB,EAAE,uCAAyB;YAC5C,qBAAqB,EAAE,YAAmB;SAC3C,CAAA;KACF;IAED,MAAM,iBAAiB,GAAG,6BAAc,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;IAChE,IAAI,cAAc,GAAG,KAAK,CAAA;IAE1B,IAAI;QACF,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAA;KACpE;IAAC,OAAO,CAAC,EAAE;QACV,cAAc,GAAG,IAAI,CAAA;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;KACxB;IAED,MAAM,aAAa,GAAG,wCAAM,CAAC,+CAAmB,CAAC,UAAU,CAAC,EAAE;QAC5D,CAAC,aAAa,EAAE,QAAQ,CAAC;QACzB,aAAa;QACb,CAAC,SAAS,EAAE,SAAS,CAAC;QACtB,GAAG,KAAK;KACT,CAAC,CAAA;IAEF,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;QACxB,uBAAa;QACb,oCAA0B;QAC1B,mCAAyB;QACzB,mCAAyB;QACzB,mCAAyB;QACzB,mCAAyB;QACzB,kCAAwB;QACxB,qCAA2B;QAC3B,kCAAwB;QACxB,4BAAkB;QAClB,2BAAiB;QACjB,GAAG,OAAO;KACX,CAAC,CAAA;IAEF,MAAM,iBAAiB,GAAQ,OAAO,CAAC,gBAAgB,CAAC,aAAa,EAAE;QACrE,YAAY,EAAE,CAAC,MAAW,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QACzD,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAA;IAEF,MAAM,IAAI,GAAG,CAAC,KAAiB,EAAE,EAAE;QACjC,IAAI,cAAc,EAAE;YAClB,MAAM,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;gBACvC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;gBAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,KAAK,KAAK,EAAE;oBACnC,WAAW,EAAE,CAAA;oBACb,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAA;iBACnE;YACH,CAAC,CAAC,CAAA;SACH;QAED,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAA;IAC5C,CAAC,CAAA;IAED,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAA;AAC3D,CAAC;AAjED,0DAiEC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "decentraland-dapps",
|
|
3
|
-
"version": "12.
|
|
3
|
+
"version": "12.26.0",
|
|
4
4
|
"dependencies": {
|
|
5
5
|
"@0xsequence/multicall": "^0.25.1",
|
|
6
6
|
"@0xsequence/relayer": "^0.25.1",
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
"date-fns": "^1.29.0",
|
|
13
13
|
"dcl-catalyst-client": "^4.0.6",
|
|
14
14
|
"decentraland-connect": "^2.20.1",
|
|
15
|
-
"decentraland-transactions": "^1.
|
|
16
|
-
"decentraland-ui": "^3.
|
|
15
|
+
"decentraland-transactions": "^1.23.1",
|
|
16
|
+
"decentraland-ui": "^3.12.0",
|
|
17
17
|
"flat": "^4.1.0",
|
|
18
18
|
"react-intl": "^5.20.7",
|
|
19
19
|
"redux-persistence": "^1.2.0",
|