decentraland-dapps 13.42.0 → 13.44.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/containers/BuyManaWithFiatModal/BuyManaWithFiatModal.container.d.ts +1 -1
- package/dist/containers/LoginModal/LoginModal.container.d.ts +3 -3
- package/dist/containers/LoginModal/LoginModal.js +2 -2
- package/dist/containers/LoginModal/LoginModal.js.map +1 -1
- package/dist/containers/LoginModal/LoginModal.types.d.ts +3 -1
- package/dist/containers/SignInPage/SignInPage.container.js +2 -2
- package/dist/containers/SignInPage/SignInPage.container.js.map +1 -1
- package/dist/containers/SignInPage/SignInPage.d.ts +2 -3
- package/dist/containers/SignInPage/SignInPage.js +1 -14
- package/dist/containers/SignInPage/SignInPage.js.map +1 -1
- package/dist/containers/SignInPage/SignInPage.types.d.ts +3 -7
- package/dist/modules/authorization/actions.d.ts +6 -18
- package/dist/modules/authorization/actions.js +5 -11
- package/dist/modules/authorization/actions.js.map +1 -1
- package/dist/modules/authorization/reducer.d.ts +2 -2
- package/dist/modules/authorization/reducer.js +15 -18
- package/dist/modules/authorization/reducer.js.map +1 -1
- package/dist/modules/authorization/sagas.js +12 -44
- package/dist/modules/authorization/sagas.js.map +1 -1
- package/package.json +1 -1
|
@@ -7,7 +7,7 @@ declare const _default: import("react-redux").ConnectedComponent<typeof BuyManaW
|
|
|
7
7
|
networks?: (import("decentraland-ui/dist/components/BuyManaWithFiatModal/BuyManaWithFiatModal").BuyManaWithFiatModalNetworkProps & import("decentraland-ui/dist/components/BuyManaWithFiatModal/Network").BuyWithFiatNetworkProps)[] | undefined;
|
|
8
8
|
hasTranslations?: boolean | undefined;
|
|
9
9
|
onContinue: (network: Network, gateway: NetworkGatewayType) => void;
|
|
10
|
-
}, "metadata" | "name" | "className" | "onClose" | "open" | "loading" | "hasTranslations" | "i18n" | "
|
|
10
|
+
}, "metadata" | "name" | "className" | "onClose" | "open" | "loading" | "hasTranslations" | "i18n" | "message" | "hasError" | "onInfo" | "networks" | "onContinue" | keyof import("react").ClassAttributes<BuyManaWithFiatModal>> & Partial<Pick<import("react").ClassAttributes<BuyManaWithFiatModal> & import("./BuyManaWithFiatModal.types").DefaultProps & Omit<import("decentraland-ui/dist/components/BuyManaWithFiatModal/BuyManaWithFiatModal").BuyManaWithFiatModalProps, "networks"> & Partial<Pick<import("decentraland-ui/dist/components/BuyManaWithFiatModal/BuyManaWithFiatModal").BuyManaWithFiatModalProps, "networks">> & Omit<import("../../providers/ModalProvider/ModalProvider.types").ModalProps, "metadata"> & {
|
|
11
11
|
metadata: import("./BuyManaWithFiatModal.types").Metadata;
|
|
12
12
|
networks?: (import("decentraland-ui/dist/components/BuyManaWithFiatModal/BuyManaWithFiatModal").BuyManaWithFiatModalNetworkProps & import("decentraland-ui/dist/components/BuyManaWithFiatModal/Network").BuyWithFiatNetworkProps)[] | undefined;
|
|
13
13
|
hasTranslations?: boolean | undefined;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { LoginModalProps } from 'decentraland-ui/dist/components/LoginModal/LoginModal';
|
|
3
3
|
import LoginModal from './LoginModal';
|
|
4
|
-
declare const _default: import("react-redux").ConnectedComponent<typeof LoginModal, import("react-redux").Omit<Pick<import("react").ClassAttributes<LoginModal> & import("./LoginModal.types").DefaultProps & LoginModalProps & {
|
|
4
|
+
declare const _default: import("react-redux").ConnectedComponent<typeof LoginModal, import("react-redux").Omit<Pick<import("react").ClassAttributes<LoginModal> & import("./LoginModal.types").DefaultProps & import("../../providers/ModalProvider/ModalProvider.types").ModalProps & LoginModalProps & {
|
|
5
5
|
hasTranslations?: boolean | undefined;
|
|
6
6
|
onConnect: (providerType: import("@dcl/schemas").ProviderType) => any;
|
|
7
|
-
}, "
|
|
7
|
+
}, "metadata" | "ref" | "key" | "name" | "className" | "onClose" | "open" | "loading" | "hasTranslations" | "i18n" | "message" | "hasError" | "onConnect"> & Partial<Pick<import("react").ClassAttributes<LoginModal> & import("./LoginModal.types").DefaultProps & import("../../providers/ModalProvider/ModalProvider.types").ModalProps & LoginModalProps & {
|
|
8
8
|
hasTranslations?: boolean | undefined;
|
|
9
9
|
onConnect: (providerType: import("@dcl/schemas").ProviderType) => any;
|
|
10
|
-
}, "isLoading">> & Partial<Pick<import("./LoginModal.types").DefaultProps, never>>, "className" | "onClose" | "open" | "loading" | "i18n" | "
|
|
10
|
+
}, "isLoading">> & Partial<Pick<import("./LoginModal.types").DefaultProps, never>>, "className" | "onClose" | "open" | "loading" | "i18n" | "message" | "hasError"> & LoginModalProps>;
|
|
11
11
|
export default _default;
|
|
@@ -74,9 +74,9 @@ class LoginModal extends React.PureComponent {
|
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
render() {
|
|
77
|
-
const {
|
|
77
|
+
const { className, isLoading, onClose } = this.props;
|
|
78
78
|
const { hasError } = this.state;
|
|
79
|
-
return (React.createElement(LoginModal_1.LoginModal, { open:
|
|
79
|
+
return (React.createElement(LoginModal_1.LoginModal, { open: true, className: className, i18n: this.getModalTranslations(), message: React.createElement(utils_1.T, { id: "@dapps.login.modal.supported_wallets", values: {
|
|
80
80
|
br: React.createElement("br", null),
|
|
81
81
|
trezor_link: (React.createElement("a", { href: "https://github.com/trezor/trezor-firmware/pull/1568", target: "_blank", rel: "noopener noreferrer" }, (0, utils_1.t)('@dapps.login.modal.trezor_link')))
|
|
82
82
|
} }), 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,+DAAiD;AACjD,sFAK8D;AAE9D,2DAAsD;AAEtD,mCAA2D;AAE3D,MAAqB,UAAW,SAAQ,KAAK,CAAC,aAA2B;IAKvE,YAAY,KAAY;QACtB,KAAK,CAAC,KAAK,CAAC,CAAA;QAkBd,oBAAe,GAAG,CAAC,SAA+B,EAAE,EAAE;YACpD,IAAI,YAAY,GAAiB,IAAA,sBAAc,EAAC,SAAS,CAAC,CAAA;YAC1D,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;QACpC,CAAC,CAAA;QAED,yBAAoB,GAAG,GAA+B,EAAE;YACtD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;gBAC/B,OAAO,SAAS,CAAA;aACjB;YACD,OAAO;gBACL,KAAK,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,0BAA0B,GAAG;gBAC1C,QAAQ,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,6BAA6B,GAAG;gBAChD,KAAK,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,0BAA0B,GAAG;aAC3C,CAAA;QACH,CAAC,CAAA;QAED,0BAAqB,GAAG,GAAqC,EAAE;YAC7D,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;gBAC/B,OAAO,SAAS,CAAA;aACjB;YACD,OAAO;gBACL,iBAAiB,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,uCAAuC,GAAG;gBACnE,KAAK,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,2BAA2B,GAAG;gBAC3C,MAAM,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,4BAA4B,GAAG;gBAC7C,kBAAkB,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,wCAAwC,GAAG;gBACrE,eAAe,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,qCAAqC,GAAG;aAChE,CAAA;QACH,CAAC,CAAA;QAED,2BAAsB,GAAG,CAAC,YAA0B,EAAE,EAAE;YACtD,MAAM,SAAS,GAAG,IAAA,yBAAiB,EAAC,YAAY,CAAC,CAAA;YAEjD,OAAO,SAAS,CAAC,CAAC,CAAC,CACjB,oBAAC,uBAAc,CAAC,MAAM,IACpB,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,IAAI,CAAC,qBAAqB,EAAE,EAClC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,SAAU,CAAC,GAC/C,CACH,CAAC,CAAC,CAAC,IAAI,CAAA;QACV,CAAC,CAAA;QAzDC,IAAI,CAAC,KAAK,GAAG;YACX,QAAQ,EAAE,KAAK;SAChB,CAAA;IACH,CAAC;IAED,kBAAkB,CAAC,SAAgB;QACjC,IAAI,CAAC,SAAS,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YAC9C,IAAI,CAAC,QAAQ,CAAC;gBACZ,QAAQ,EAAE,IAAI;aACf,CAAC,CAAA;SACH;aAAM,IAAI,SAAS,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACrD,IAAI,CAAC,QAAQ,CAAC;gBACZ,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAA;SACH;IACH,CAAC;IA4CD,MAAM;QACJ,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"LoginModal.js","sourceRoot":"","sources":["../../../src/containers/LoginModal/LoginModal.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,6CAA8B;AAC9B,+DAAiD;AACjD,sFAK8D;AAE9D,2DAAsD;AAEtD,mCAA2D;AAE3D,MAAqB,UAAW,SAAQ,KAAK,CAAC,aAA2B;IAKvE,YAAY,KAAY;QACtB,KAAK,CAAC,KAAK,CAAC,CAAA;QAkBd,oBAAe,GAAG,CAAC,SAA+B,EAAE,EAAE;YACpD,IAAI,YAAY,GAAiB,IAAA,sBAAc,EAAC,SAAS,CAAC,CAAA;YAC1D,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;QACpC,CAAC,CAAA;QAED,yBAAoB,GAAG,GAA+B,EAAE;YACtD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;gBAC/B,OAAO,SAAS,CAAA;aACjB;YACD,OAAO;gBACL,KAAK,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,0BAA0B,GAAG;gBAC1C,QAAQ,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,6BAA6B,GAAG;gBAChD,KAAK,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,0BAA0B,GAAG;aAC3C,CAAA;QACH,CAAC,CAAA;QAED,0BAAqB,GAAG,GAAqC,EAAE;YAC7D,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;gBAC/B,OAAO,SAAS,CAAA;aACjB;YACD,OAAO;gBACL,iBAAiB,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,uCAAuC,GAAG;gBACnE,KAAK,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,2BAA2B,GAAG;gBAC3C,MAAM,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,4BAA4B,GAAG;gBAC7C,kBAAkB,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,wCAAwC,GAAG;gBACrE,eAAe,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,qCAAqC,GAAG;aAChE,CAAA;QACH,CAAC,CAAA;QAED,2BAAsB,GAAG,CAAC,YAA0B,EAAE,EAAE;YACtD,MAAM,SAAS,GAAG,IAAA,yBAAiB,EAAC,YAAY,CAAC,CAAA;YAEjD,OAAO,SAAS,CAAC,CAAC,CAAC,CACjB,oBAAC,uBAAc,CAAC,MAAM,IACpB,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,IAAI,CAAC,qBAAqB,EAAE,EAClC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,SAAU,CAAC,GAC/C,CACH,CAAC,CAAC,CAAC,IAAI,CAAA;QACV,CAAC,CAAA;QAzDC,IAAI,CAAC,KAAK,GAAG;YACX,QAAQ,EAAE,KAAK;SAChB,CAAA;IACH,CAAC;IAED,kBAAkB,CAAC,SAAgB;QACjC,IAAI,CAAC,SAAS,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YAC9C,IAAI,CAAC,QAAQ,CAAC;gBACZ,QAAQ,EAAE,IAAI;aACf,CAAC,CAAA;SACH;aAAM,IAAI,SAAS,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACrD,IAAI,CAAC,QAAQ,CAAC;gBACZ,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAA;SACH;IACH,CAAC;IA4CD,MAAM;QACJ,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QACpD,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAE/B,OAAO,CACL,oBAAC,uBAAc,IACb,IAAI,QACJ,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,CAAC,oBAAoB,EAAE,EACjC,OAAO,EACL,oBAAC,SAAC,IACA,EAAE,EAAC,sCAAsC,EACzC,MAAM,EAAE;oBACN,EAAE,EAAE,+BAAM;oBACV,WAAW,EAAE,CACX,2BACE,IAAI,EAAC,qDAAqD,EAC1D,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,IAExB,IAAA,SAAC,EAAC,gCAAgC,CAAC,CAClC,CACL;iBACF,GACD,EAEJ,OAAO,EAAE,SAAS,EAClB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,IAEf,iCAAU,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,CACrD,CAClB,CAAA;IACH,CAAC;;AAnGH,6BAoGC;AAnGQ,uBAAY,GAAiB;IAClC,SAAS,EAAE,KAAK;CACjB,CAAA"}
|
|
@@ -2,16 +2,18 @@ import { Dispatch } from 'redux';
|
|
|
2
2
|
import { LoginModalProps } from 'decentraland-ui/dist/components/LoginModal/LoginModal';
|
|
3
3
|
import { ProviderType } from '@dcl/schemas/dist/dapps/provider-type';
|
|
4
4
|
import { EnableWalletRequestAction } from '../../modules/wallet/actions';
|
|
5
|
+
import { ModalProps } from '../../providers/ModalProvider/ModalProvider.types';
|
|
5
6
|
export declare type DefaultProps = {
|
|
6
7
|
isLoading: boolean;
|
|
7
8
|
};
|
|
8
|
-
export declare type Props = DefaultProps & LoginModalProps & {
|
|
9
|
+
export declare type Props = DefaultProps & ModalProps & LoginModalProps & {
|
|
9
10
|
hasTranslations?: boolean;
|
|
10
11
|
onConnect: (providerType: ProviderType) => any;
|
|
11
12
|
};
|
|
12
13
|
export declare type State = {
|
|
13
14
|
hasError: boolean;
|
|
14
15
|
};
|
|
16
|
+
export declare type OwnProps = Pick<Props, 'metadata'>;
|
|
15
17
|
export declare type MapStateProps = Pick<Props, 'hasTranslations' | 'isLoading' | 'hasError'>;
|
|
16
18
|
export declare type MapDispatchProps = Pick<Props, 'onConnect'>;
|
|
17
19
|
export declare type MapDispatch = Dispatch<EnableWalletRequestAction>;
|
|
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
const react_redux_1 = require("react-redux");
|
|
7
7
|
const selectors_1 = require("../../modules/translation/selectors");
|
|
8
8
|
const selectors_2 = require("../../modules/wallet/selectors");
|
|
9
|
-
const actions_1 = require("../../modules/wallet/actions");
|
|
10
9
|
const SignInPage_1 = __importDefault(require("./SignInPage"));
|
|
10
|
+
const actions_1 = require("../../modules/modal/actions");
|
|
11
11
|
const mapState = (state) => ({
|
|
12
12
|
isConnecting: (0, selectors_2.isConnecting)(state),
|
|
13
13
|
isConnected: (0, selectors_2.isConnected)(state),
|
|
@@ -15,7 +15,7 @@ const mapState = (state) => ({
|
|
|
15
15
|
hasTranslations: (0, selectors_1.isEnabled)(state)
|
|
16
16
|
});
|
|
17
17
|
const mapDispatch = (dispatch) => ({
|
|
18
|
-
onConnect:
|
|
18
|
+
onConnect: () => dispatch((0, actions_1.openModal)('LoginModal'))
|
|
19
19
|
});
|
|
20
20
|
const mergeProps = (stateProps, dispatchProps, ownProps) => (Object.assign(Object.assign(Object.assign({}, stateProps), dispatchProps), ownProps));
|
|
21
21
|
exports.default = (0, react_redux_1.connect)(mapState, mapDispatch, mergeProps)(SignInPage_1.default);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignInPage.container.js","sourceRoot":"","sources":["../../../src/containers/SignInPage/SignInPage.container.ts"],"names":[],"mappings":";;;;;AAAA,6CAAqC;AAErC,mEAA+D;AAC/D,8DAIuC;
|
|
1
|
+
{"version":3,"file":"SignInPage.container.js","sourceRoot":"","sources":["../../../src/containers/SignInPage/SignInPage.container.ts"],"names":[],"mappings":";;;;;AAAA,6CAAqC;AAErC,mEAA+D;AAC/D,8DAIuC;AAOvC,8DAAqC;AACrC,yDAAuD;AAEvD,MAAM,QAAQ,GAAG,CAAC,KAAU,EAAiB,EAAE,CAAC,CAAC;IAC/C,YAAY,EAAE,IAAA,wBAAY,EAAC,KAAK,CAAC;IACjC,WAAW,EAAE,IAAA,uBAAW,EAAC,KAAK,CAAC;IAC/B,QAAQ,EAAE,CAAC,CAAC,IAAA,oBAAQ,EAAC,KAAK,CAAC;IAC3B,eAAe,EAAE,IAAA,qBAAS,EAAC,KAAK,CAAC;CAClC,CAAC,CAAA;AAEF,MAAM,WAAW,GAAG,CAAC,QAAqB,EAAoB,EAAE,CAAC,CAAC;IAChE,SAAS,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAA,mBAAS,EAAC,YAAY,CAAC,CAAC;CACnD,CAAC,CAAA;AAEF,MAAM,UAAU,GAAG,CACjB,UAAyB,EACzB,aAA+B,EAC/B,QAAyB,EACR,EAAE,CAAC,+CACjB,UAAU,GACV,aAAa,GACb,QAAQ,EACX,CAAA;AAEF,kBAAe,IAAA,qBAAO,EAAC,QAAQ,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC,oBAAU,CAAQ,CAAA"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { SignInI18N } from 'decentraland-ui/dist/components/SignIn/SignIn';
|
|
3
|
-
import { SignInPageProps
|
|
4
|
-
export default class SignInPage extends React.PureComponent<SignInPageProps
|
|
3
|
+
import { SignInPageProps } from './SignInPage.types';
|
|
4
|
+
export default class SignInPage extends React.PureComponent<SignInPageProps> {
|
|
5
5
|
constructor(props: SignInPageProps);
|
|
6
|
-
handleToggleLoginModal: () => void;
|
|
7
6
|
getTranslations: () => SignInI18N | undefined;
|
|
8
7
|
render(): JSX.Element;
|
|
9
8
|
}
|
|
@@ -18,23 +18,15 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
18
18
|
__setModuleDefault(result, mod);
|
|
19
19
|
return result;
|
|
20
20
|
};
|
|
21
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
-
};
|
|
24
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
22
|
const React = __importStar(require("react"));
|
|
26
23
|
const SignIn_1 = require("decentraland-ui/dist/components/SignIn/SignIn");
|
|
27
24
|
const utils_1 = require("../../modules/translation/utils");
|
|
28
25
|
const utils_2 = require("../../lib/utils");
|
|
29
26
|
const eth_1 = require("../../lib/eth");
|
|
30
|
-
const LoginModal_1 = __importDefault(require("../LoginModal"));
|
|
31
27
|
class SignInPage extends React.PureComponent {
|
|
32
28
|
constructor(props) {
|
|
33
29
|
super(props);
|
|
34
|
-
this.handleToggleLoginModal = () => {
|
|
35
|
-
const isLoginModalOpen = !this.state.isLoginModalOpen;
|
|
36
|
-
this.setState({ isLoginModalOpen });
|
|
37
|
-
};
|
|
38
30
|
this.getTranslations = () => {
|
|
39
31
|
const { hasTranslations, isConnected } = this.props;
|
|
40
32
|
if (!hasTranslations) {
|
|
@@ -58,16 +50,11 @@ class SignInPage extends React.PureComponent {
|
|
|
58
50
|
} }))
|
|
59
51
|
};
|
|
60
52
|
};
|
|
61
|
-
this.state = {
|
|
62
|
-
isLoginModalOpen: false
|
|
63
|
-
};
|
|
64
53
|
}
|
|
65
54
|
render() {
|
|
66
55
|
const { center, isConnected, isConnecting, hasError, onConnect } = this.props;
|
|
67
|
-
const { isLoginModalOpen } = this.state;
|
|
68
56
|
return (React.createElement(React.Fragment, null,
|
|
69
|
-
React.createElement(SignIn_1.SignIn, { center: center, isConnected: isConnected, isConnecting: isConnecting, hasError: hasError, onConnect:
|
|
70
|
-
React.createElement(LoginModal_1.default, { open: isLoginModalOpen, onConnect: onConnect, onClose: this.handleToggleLoginModal })));
|
|
57
|
+
React.createElement(SignIn_1.SignIn, { center: center, isConnected: isConnected, isConnecting: isConnecting, hasError: hasError, onConnect: onConnect, i18n: this.getTranslations() })));
|
|
71
58
|
}
|
|
72
59
|
}
|
|
73
60
|
exports.default = SignInPage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignInPage.js","sourceRoot":"","sources":["../../../src/containers/SignInPage/SignInPage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SignInPage.js","sourceRoot":"","sources":["../../../src/containers/SignInPage/SignInPage.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,6CAA8B;AAE9B,0EAGsD;AAEtD,2DAAmD;AACnD,2CAA0C;AAC1C,uCAAkD;AAGlD,MAAqB,UAAW,SAAQ,KAAK,CAAC,aAA8B;IAC1E,YAAY,KAAsB;QAChC,KAAK,CAAC,KAAK,CAAC,CAAA;QAGd,oBAAe,GAAG,GAA2B,EAAE;YAC7C,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;YACnD,IAAI,CAAC,eAAe,EAAE;gBACpB,OAAO,SAAS,CAAA;aACjB;YAED,OAAO;gBACL,MAAM,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,4BAA4B,GAAG;gBAC7C,KAAK,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,sBAAsB,GAAG;gBACtC,OAAO,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,wBAAwB,GAAG;gBAC1C,UAAU,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,2BAA2B,GAAG;gBAChD,SAAS,EAAE,oBAAC,SAAC,IAAC,EAAE,EAAC,0BAA0B,GAAG;gBAC9C,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CACrB,oBAAC,SAAC,IAAC,EAAE,EAAC,kCAAkC,GAAG,CAC5C,CAAC,CAAC,CAAC,IAAA,wBAAkB,GAAE,CAAC,CAAC,CAAC,CACzB,oBAAC,SAAC,IACA,EAAE,EAAC,gCAAgC,EACnC,MAAM,EAAE;wBACN,YAAY,EAAE,CACZ,2BACE,IAAI,EAAC,gEAAgE,EACrE,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,gCAGvB,CACL;qBACF,GACD,CACH,CAAC,CAAC,CAAC,IAAA,gBAAQ,GAAE,CAAC,CAAC,CAAC,CACf,oBAAC,SAAC,IACA,EAAE,EAAC,+BAA+B,EAClC,MAAM,EAAE;wBACN,aAAa,EAAE,CACb,2BACE,IAAI,EAAC,qBAAqB,EAC1B,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,eAGvB,CACL;wBACD,aAAa,EAAE,CACb,2BACE,IAAI,EAAC,6BAA6B,EAClC,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,sBAGvB,CACL;wBACD,YAAY,EAAE,CACZ,2BACE,IAAI,EAAC,kBAAkB,EACvB,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,cAGvB,CACL;qBACF,GACD,CACH,CAAC,CAAC,CAAC,CACF,oBAAC,SAAC,IACA,EAAE,EAAC,gCAAgC,EACnC,MAAM,EAAE;wBACN,aAAa,EAAE,CACb,2BACE,IAAI,EAAC,qBAAqB,EAC1B,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,eAGvB,CACL;wBACD,gBAAgB,EAAE,CAChB,2BACE,IAAI,EAAC,yBAAyB,EAC9B,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,oBAGvB,CACL;qBACF,GACD,CACH;aACF,CAAA;QACH,CAAC,CAAA;IA1FD,CAAC;IA4FD,MAAM;QACJ,MAAM,EACJ,MAAM,EACN,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,SAAS,EACV,GAAG,IAAI,CAAC,KAAK,CAAA;QAEd,OAAO,CACL;YACE,oBAAC,eAAM,IACL,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE,GAC5B,CACD,CACJ,CAAA;IACH,CAAC;CACF;AArHD,6BAqHC"}
|
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
import { Dispatch } from 'redux';
|
|
2
|
-
import { ProviderType } from '@dcl/schemas/dist/dapps/provider-type';
|
|
3
2
|
import { SignInProps } from 'decentraland-ui/dist/components/SignIn/SignIn';
|
|
4
|
-
import {
|
|
3
|
+
import { openModal, OpenModalAction } from '../../modules/modal/actions';
|
|
5
4
|
export declare type SignInPageProps = Omit<SignInProps, 'onConnect'> & {
|
|
6
|
-
onConnect: (
|
|
5
|
+
onConnect: () => ReturnType<typeof openModal>;
|
|
7
6
|
hasTranslations?: boolean;
|
|
8
7
|
};
|
|
9
|
-
export declare type SignInPageState = {
|
|
10
|
-
isLoginModalOpen: boolean;
|
|
11
|
-
};
|
|
12
8
|
export declare type MapStateProps = Pick<SignInPageProps, 'isConnecting' | 'isConnected' | 'hasTranslations' | 'hasError'>;
|
|
13
9
|
export declare type MapDispatchProps = Pick<SignInPageProps, 'onConnect'>;
|
|
14
|
-
export declare type MapDispatch = Dispatch<
|
|
10
|
+
export declare type MapDispatch = Dispatch<OpenModalAction>;
|
|
@@ -6,8 +6,12 @@ export declare const FETCH_AUTHORIZATIONS_FAILURE = "[Failure] Fetch Authorizati
|
|
|
6
6
|
export declare const fetchAuthorizationsRequest: (authorizations: Authorization[]) => import("typesafe-actions/dist/types").PayloadAction<"[Request] Fetch Authorizations", {
|
|
7
7
|
authorizations: Authorization[];
|
|
8
8
|
}>;
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
/**
|
|
10
|
+
* @param authorizations Tuple of the original authorization used to fetch and the authorization fetched result.
|
|
11
|
+
* Necessary by the reducer to be able to remove authorizations fetched that now are not authorized anymore.
|
|
12
|
+
*/
|
|
13
|
+
export declare const fetchAuthorizationsSuccess: (authorizations: [Authorization, Authorization | null][]) => import("typesafe-actions/dist/types").PayloadAction<"[Success] Fetch Authorizations", {
|
|
14
|
+
authorizations: [Authorization, Authorization | null][];
|
|
11
15
|
}>;
|
|
12
16
|
export declare const fetchAuthorizationsFailure: (authorizations: Authorization[], error: string) => import("typesafe-actions/dist/types").PayloadAction<"[Failure] Fetch Authorizations", {
|
|
13
17
|
authorizations: Authorization[];
|
|
@@ -16,22 +20,6 @@ export declare const fetchAuthorizationsFailure: (authorizations: Authorization[
|
|
|
16
20
|
export declare type FetchAuthorizationsRequestAction = ReturnType<typeof fetchAuthorizationsRequest>;
|
|
17
21
|
export declare type FetchAuthorizationsSuccessAction = ReturnType<typeof fetchAuthorizationsSuccess>;
|
|
18
22
|
export declare type FetchAuthorizationsFailureAction = ReturnType<typeof fetchAuthorizationsFailure>;
|
|
19
|
-
export declare const FETCH_AUTHORIZATION_REQUEST = "[Request] Fetch Authorization";
|
|
20
|
-
export declare const FETCH_AUTHORIZATION_SUCCESS = "[Success] Fetch Authorization";
|
|
21
|
-
export declare const FETCH_AUTHORIZATION_FAILURE = "[Failure] Fetch Authorization";
|
|
22
|
-
export declare const fetchAuthorizationRequest: (authorization: Authorization) => import("typesafe-actions/dist/types").PayloadAction<"[Request] Fetch Authorization", {
|
|
23
|
-
authorization: Authorization;
|
|
24
|
-
}>;
|
|
25
|
-
export declare const fetchAuthorizationSuccess: (authorization: Authorization | null) => import("typesafe-actions/dist/types").PayloadAction<"[Success] Fetch Authorization", {
|
|
26
|
-
authorization: Authorization | null;
|
|
27
|
-
}>;
|
|
28
|
-
export declare const fetchAuthorizationFailure: (authorization: Authorization, error: string) => import("typesafe-actions/dist/types").PayloadAction<"[Failure] Fetch Authorization", {
|
|
29
|
-
authorization: Authorization;
|
|
30
|
-
error: string;
|
|
31
|
-
}>;
|
|
32
|
-
export declare type FetchAuthorizationRequestAction = ReturnType<typeof fetchAuthorizationRequest>;
|
|
33
|
-
export declare type FetchAuthorizationSuccessAction = ReturnType<typeof fetchAuthorizationSuccess>;
|
|
34
|
-
export declare type FetchAuthorizationFailureAction = ReturnType<typeof fetchAuthorizationFailure>;
|
|
35
23
|
export declare const GRANT_TOKEN_REQUEST = "[Request] Grant Token";
|
|
36
24
|
export declare const GRANT_TOKEN_SUCCESS = "[Success] Grant Token";
|
|
37
25
|
export declare const GRANT_TOKEN_FAILURE = "[Failure] Grant Token";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.revokeTokenFailure = exports.revokeTokenSuccess = exports.revokeTokenRequest = exports.REVOKE_TOKEN_FAILURE = exports.REVOKE_TOKEN_SUCCESS = exports.REVOKE_TOKEN_REQUEST = exports.grantTokenFailure = exports.grantTokenSuccess = exports.grantTokenRequest = exports.GRANT_TOKEN_FAILURE = exports.GRANT_TOKEN_SUCCESS = exports.GRANT_TOKEN_REQUEST = exports.
|
|
3
|
+
exports.revokeTokenFailure = exports.revokeTokenSuccess = exports.revokeTokenRequest = exports.REVOKE_TOKEN_FAILURE = exports.REVOKE_TOKEN_SUCCESS = exports.REVOKE_TOKEN_REQUEST = exports.grantTokenFailure = exports.grantTokenSuccess = exports.grantTokenRequest = exports.GRANT_TOKEN_FAILURE = exports.GRANT_TOKEN_SUCCESS = exports.GRANT_TOKEN_REQUEST = exports.fetchAuthorizationsFailure = exports.fetchAuthorizationsSuccess = exports.fetchAuthorizationsRequest = exports.FETCH_AUTHORIZATIONS_FAILURE = exports.FETCH_AUTHORIZATIONS_SUCCESS = exports.FETCH_AUTHORIZATIONS_REQUEST = void 0;
|
|
4
4
|
const typesafe_actions_1 = require("typesafe-actions");
|
|
5
5
|
const utils_1 = require("../transaction/utils");
|
|
6
6
|
// Fetch authorizations
|
|
@@ -9,20 +9,14 @@ exports.FETCH_AUTHORIZATIONS_SUCCESS = '[Success] Fetch Authorizations';
|
|
|
9
9
|
exports.FETCH_AUTHORIZATIONS_FAILURE = '[Failure] Fetch Authorizations';
|
|
10
10
|
const fetchAuthorizationsRequest = (authorizations) => (0, typesafe_actions_1.action)(exports.FETCH_AUTHORIZATIONS_REQUEST, { authorizations });
|
|
11
11
|
exports.fetchAuthorizationsRequest = fetchAuthorizationsRequest;
|
|
12
|
+
/**
|
|
13
|
+
* @param authorizations Tuple of the original authorization used to fetch and the authorization fetched result.
|
|
14
|
+
* Necessary by the reducer to be able to remove authorizations fetched that now are not authorized anymore.
|
|
15
|
+
*/
|
|
12
16
|
const fetchAuthorizationsSuccess = (authorizations) => (0, typesafe_actions_1.action)(exports.FETCH_AUTHORIZATIONS_SUCCESS, { authorizations });
|
|
13
17
|
exports.fetchAuthorizationsSuccess = fetchAuthorizationsSuccess;
|
|
14
18
|
const fetchAuthorizationsFailure = (authorizations, error) => (0, typesafe_actions_1.action)(exports.FETCH_AUTHORIZATIONS_FAILURE, { authorizations, error });
|
|
15
19
|
exports.fetchAuthorizationsFailure = fetchAuthorizationsFailure;
|
|
16
|
-
// Fetch authorization
|
|
17
|
-
exports.FETCH_AUTHORIZATION_REQUEST = '[Request] Fetch Authorization';
|
|
18
|
-
exports.FETCH_AUTHORIZATION_SUCCESS = '[Success] Fetch Authorization';
|
|
19
|
-
exports.FETCH_AUTHORIZATION_FAILURE = '[Failure] Fetch Authorization';
|
|
20
|
-
const fetchAuthorizationRequest = (authorization) => (0, typesafe_actions_1.action)(exports.FETCH_AUTHORIZATION_REQUEST, { authorization });
|
|
21
|
-
exports.fetchAuthorizationRequest = fetchAuthorizationRequest;
|
|
22
|
-
const fetchAuthorizationSuccess = (authorization) => (0, typesafe_actions_1.action)(exports.FETCH_AUTHORIZATION_SUCCESS, { authorization });
|
|
23
|
-
exports.fetchAuthorizationSuccess = fetchAuthorizationSuccess;
|
|
24
|
-
const fetchAuthorizationFailure = (authorization, error) => (0, typesafe_actions_1.action)(exports.FETCH_AUTHORIZATION_FAILURE, { authorization, error });
|
|
25
|
-
exports.fetchAuthorizationFailure = fetchAuthorizationFailure;
|
|
26
20
|
// Grant Token
|
|
27
21
|
exports.GRANT_TOKEN_REQUEST = '[Request] Grant Token';
|
|
28
22
|
exports.GRANT_TOKEN_SUCCESS = '[Success] Grant Token';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/modules/authorization/actions.ts"],"names":[],"mappings":";;;AACA,uDAAyC;AACzC,gDAA8D;AAG9D,uBAAuB;AAEV,QAAA,4BAA4B,GAAG,gCAAgC,CAAA;AAC/D,QAAA,4BAA4B,GAAG,gCAAgC,CAAA;AAC/D,QAAA,4BAA4B,GAAG,gCAAgC,CAAA;AAErE,MAAM,0BAA0B,GAAG,CAAC,cAA+B,EAAE,EAAE,CAC5E,IAAA,yBAAM,EAAC,oCAA4B,EAAE,EAAE,cAAc,EAAE,CAAC,CAAA;AAD7C,QAAA,0BAA0B,8BACmB;
|
|
1
|
+
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/modules/authorization/actions.ts"],"names":[],"mappings":";;;AACA,uDAAyC;AACzC,gDAA8D;AAG9D,uBAAuB;AAEV,QAAA,4BAA4B,GAAG,gCAAgC,CAAA;AAC/D,QAAA,4BAA4B,GAAG,gCAAgC,CAAA;AAC/D,QAAA,4BAA4B,GAAG,gCAAgC,CAAA;AAErE,MAAM,0BAA0B,GAAG,CAAC,cAA+B,EAAE,EAAE,CAC5E,IAAA,yBAAM,EAAC,oCAA4B,EAAE,EAAE,cAAc,EAAE,CAAC,CAAA;AAD7C,QAAA,0BAA0B,8BACmB;AAE1D;;;GAGG;AACI,MAAM,0BAA0B,GAAG,CACxC,cAAuD,EACvD,EAAE,CAAC,IAAA,yBAAM,EAAC,oCAA4B,EAAE,EAAE,cAAc,EAAE,CAAC,CAAA;AAFhD,QAAA,0BAA0B,8BAEsB;AAEtD,MAAM,0BAA0B,GAAG,CACxC,cAA+B,EAC/B,KAAa,EACb,EAAE,CAAC,IAAA,yBAAM,EAAC,oCAA4B,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAA;AAHvD,QAAA,0BAA0B,8BAG6B;AAYpE,cAAc;AAED,QAAA,mBAAmB,GAAG,uBAAuB,CAAA;AAC7C,QAAA,mBAAmB,GAAG,uBAAuB,CAAA;AAC7C,QAAA,mBAAmB,GAAG,uBAAuB,CAAA;AAEnD,MAAM,iBAAiB,GAAG,CAAC,aAA4B,EAAE,EAAE,CAChE,IAAA,yBAAM,EAAC,2BAAmB,EAAE;IAC1B,aAAa;CACd,CAAC,CAAA;AAHS,QAAA,iBAAiB,qBAG1B;AAEG,MAAM,iBAAiB,GAAG,CAC/B,aAA4B,EAC5B,OAAgB,EAChB,MAAc,EACd,EAAE,CACF,IAAA,yBAAM,EAAC,2BAAmB,kCACrB,IAAA,+BAAuB,EAAC,OAAO,EAAE,MAAM,EAAE;IAC1C,aAAa;CACd,CAAC,KACF,aAAa,IACb,CAAA;AAVS,QAAA,iBAAiB,qBAU1B;AAEG,MAAM,iBAAiB,GAAG,CAC/B,aAA4B,EAC5B,KAAa,EACb,EAAE,CAAC,IAAA,yBAAM,EAAC,2BAAmB,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAA;AAH7C,QAAA,iBAAiB,qBAG4B;AAM1D,eAAe;AAEF,QAAA,oBAAoB,GAAG,wBAAwB,CAAA;AAC/C,QAAA,oBAAoB,GAAG,wBAAwB,CAAA;AAC/C,QAAA,oBAAoB,GAAG,wBAAwB,CAAA;AAErD,MAAM,kBAAkB,GAAG,CAAC,aAA4B,EAAE,EAAE,CACjE,IAAA,yBAAM,EAAC,4BAAoB,EAAE;IAC3B,aAAa;CACd,CAAC,CAAA;AAHS,QAAA,kBAAkB,sBAG3B;AAEG,MAAM,kBAAkB,GAAG,CAChC,aAA4B,EAC5B,OAAgB,EAChB,MAAc,EACd,EAAE,CACF,IAAA,yBAAM,EAAC,4BAAoB,kCACtB,IAAA,+BAAuB,EAAC,OAAO,EAAE,MAAM,EAAE;IAC1C,aAAa;CACd,CAAC,KACF,aAAa,IACb,CAAA;AAVS,QAAA,kBAAkB,sBAU3B;AAEG,MAAM,kBAAkB,GAAG,CAChC,aAA4B,EAC5B,KAAa,EACb,EAAE,CAAC,IAAA,yBAAM,EAAC,4BAAoB,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAA;AAH9C,QAAA,kBAAkB,sBAG4B"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { LoadingState } from '../loading/reducer';
|
|
2
2
|
import { FetchTransactionSuccessAction } from '../transaction/actions';
|
|
3
|
-
import { FetchAuthorizationsRequestAction, FetchAuthorizationsSuccessAction, FetchAuthorizationsFailureAction,
|
|
3
|
+
import { FetchAuthorizationsRequestAction, FetchAuthorizationsSuccessAction, FetchAuthorizationsFailureAction, GrantTokenRequestAction, GrantTokenSuccessAction, GrantTokenFailureAction, RevokeTokenRequestAction, RevokeTokenSuccessAction, RevokeTokenFailureAction } from './actions';
|
|
4
4
|
import { Authorization } from './types';
|
|
5
5
|
export declare type AuthorizationState = {
|
|
6
6
|
data: Authorization[];
|
|
7
7
|
loading: LoadingState;
|
|
8
8
|
error: string | null;
|
|
9
9
|
};
|
|
10
|
-
declare type AuthorizationReducerAction = FetchAuthorizationsRequestAction | FetchAuthorizationsSuccessAction | FetchAuthorizationsFailureAction |
|
|
10
|
+
declare type AuthorizationReducerAction = FetchAuthorizationsRequestAction | FetchAuthorizationsSuccessAction | FetchAuthorizationsFailureAction | GrantTokenRequestAction | GrantTokenSuccessAction | GrantTokenFailureAction | RevokeTokenRequestAction | RevokeTokenSuccessAction | RevokeTokenFailureAction | FetchTransactionSuccessAction;
|
|
11
11
|
export declare function authorizationReducer(state: AuthorizationState | undefined, action: AuthorizationReducerAction): AuthorizationState;
|
|
12
12
|
export {};
|
|
@@ -16,35 +16,32 @@ function authorizationReducer(state = INITIAL_STATE, action) {
|
|
|
16
16
|
case actions_2.REVOKE_TOKEN_REQUEST:
|
|
17
17
|
case actions_2.GRANT_TOKEN_SUCCESS:
|
|
18
18
|
case actions_2.REVOKE_TOKEN_SUCCESS:
|
|
19
|
-
case actions_2.FETCH_AUTHORIZATIONS_REQUEST:
|
|
20
|
-
case actions_2.FETCH_AUTHORIZATION_REQUEST: {
|
|
19
|
+
case actions_2.FETCH_AUTHORIZATIONS_REQUEST: {
|
|
21
20
|
return Object.assign(Object.assign({}, state), { loading: (0, reducer_1.loadingReducer)(state.loading, action) });
|
|
22
21
|
}
|
|
23
22
|
case actions_2.FETCH_AUTHORIZATIONS_SUCCESS: {
|
|
24
23
|
const { authorizations } = action.payload;
|
|
24
|
+
// TODO: Optimize with some sort of Map structure to prevent O(n^2)
|
|
25
|
+
// Filters out all authorizations in the state that have been obtained in the fetch to prevent duplication.
|
|
26
|
+
const baseAuthorizations = state.data.filter(stateAuth => !authorizations.some(([original]) => (0, utils_1.areEqual)(original, stateAuth)));
|
|
27
|
+
// Get from the fetched authorizations the ones that are not null.
|
|
28
|
+
const newAuthorizations = authorizations.reduce((acc, next) => {
|
|
29
|
+
const [_, result] = next;
|
|
30
|
+
if (!!result) {
|
|
31
|
+
acc.push(result);
|
|
32
|
+
}
|
|
33
|
+
return acc;
|
|
34
|
+
}, []);
|
|
25
35
|
return {
|
|
26
36
|
loading: (0, reducer_1.loadingReducer)(state.loading, action),
|
|
27
37
|
error: null,
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
31
|
-
case actions_2.FETCH_AUTHORIZATION_SUCCESS: {
|
|
32
|
-
const { authorization } = action.payload;
|
|
33
|
-
let data = [...state.data];
|
|
34
|
-
if (authorization) {
|
|
35
|
-
data = data.filter(stateAuthorization => !(0, utils_1.areEqual)(stateAuthorization, authorization));
|
|
36
|
-
data.push(authorization);
|
|
37
|
-
}
|
|
38
|
-
return {
|
|
39
|
-
loading: (0, reducer_1.loadingReducer)(state.loading, action),
|
|
40
|
-
error: null,
|
|
41
|
-
data
|
|
38
|
+
// concat the base and new authorizations, without duplications and removing the ones that are now null.
|
|
39
|
+
data: [...baseAuthorizations, ...newAuthorizations]
|
|
42
40
|
};
|
|
43
41
|
}
|
|
44
42
|
case actions_2.GRANT_TOKEN_FAILURE:
|
|
45
43
|
case actions_2.REVOKE_TOKEN_FAILURE:
|
|
46
|
-
case actions_2.FETCH_AUTHORIZATIONS_FAILURE:
|
|
47
|
-
case actions_2.FETCH_AUTHORIZATION_FAILURE: {
|
|
44
|
+
case actions_2.FETCH_AUTHORIZATIONS_FAILURE: {
|
|
48
45
|
return Object.assign(Object.assign({}, state), { loading: (0, reducer_1.loadingReducer)(state.loading, action), error: action.payload.error });
|
|
49
46
|
}
|
|
50
47
|
case actions_1.FETCH_TRANSACTION_SUCCESS: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reducer.js","sourceRoot":"","sources":["../../../src/modules/authorization/reducer.ts"],"names":[],"mappings":";;;AAAA,gDAAiE;AACjE,oDAG+B;AAC/B,
|
|
1
|
+
{"version":3,"file":"reducer.js","sourceRoot":"","sources":["../../../src/modules/authorization/reducer.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,7 +22,6 @@ const sendTransaction_1 = require("../wallet/utils/sendTransaction");
|
|
|
22
22
|
function createAuthorizationSaga() {
|
|
23
23
|
return function* authorizationSaga() {
|
|
24
24
|
yield (0, effects_1.takeEvery)(actions_1.FETCH_AUTHORIZATIONS_REQUEST, handleFetchAuthorizationsRequest);
|
|
25
|
-
yield (0, effects_1.takeEvery)(actions_1.FETCH_AUTHORIZATION_REQUEST, handleFetchAuthorizationRequest);
|
|
26
25
|
yield (0, effects_1.takeEvery)(actions_1.GRANT_TOKEN_REQUEST, handleGrantTokenRequest);
|
|
27
26
|
yield (0, effects_1.takeEvery)(actions_1.REVOKE_TOKEN_REQUEST, handleRevokeTokenRequest);
|
|
28
27
|
};
|
|
@@ -52,14 +51,15 @@ function createAuthorizationSaga() {
|
|
|
52
51
|
erc20
|
|
53
52
|
.allowance(authorization.address, authorization.authorizedAddress)
|
|
54
53
|
.then((allowance) => {
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
54
|
+
return [
|
|
55
|
+
authorization,
|
|
56
|
+
allowance.gt(0)
|
|
57
|
+
? Object.assign(Object.assign({}, authorization), { allowance: allowance.toString() }) : null
|
|
58
|
+
];
|
|
59
59
|
})
|
|
60
60
|
.catch((error) => {
|
|
61
61
|
console.warn(`Error fetching allowance`, authorization, error);
|
|
62
|
-
return null;
|
|
62
|
+
return [authorization, null];
|
|
63
63
|
}));
|
|
64
64
|
break;
|
|
65
65
|
case types_1.AuthorizationType.APPROVAL:
|
|
@@ -68,17 +68,19 @@ function createAuthorizationSaga() {
|
|
|
68
68
|
// @ts-ignore
|
|
69
69
|
erc721
|
|
70
70
|
.isApprovedForAll(authorization.address, authorization.authorizedAddress)
|
|
71
|
-
.then((isApproved) =>
|
|
71
|
+
.then((isApproved) => [
|
|
72
|
+
authorization,
|
|
73
|
+
isApproved ? authorization : null
|
|
74
|
+
])
|
|
72
75
|
.catch((error) => {
|
|
73
76
|
console.warn(`Error fetching approval`, authorization, error);
|
|
74
|
-
return null;
|
|
77
|
+
return [authorization, null];
|
|
75
78
|
}));
|
|
76
79
|
break;
|
|
77
80
|
}
|
|
78
81
|
}
|
|
79
82
|
const authorizationsToStore = yield (0, effects_1.call)(() => __awaiter(this, void 0, void 0, function* () {
|
|
80
|
-
|
|
81
|
-
return results.filter(result => !!result); // filter nulls, or undefineds due to caught promises
|
|
83
|
+
return Promise.all(promises);
|
|
82
84
|
}));
|
|
83
85
|
yield (0, effects_1.put)((0, actions_1.fetchAuthorizationsSuccess)(authorizationsToStore));
|
|
84
86
|
}
|
|
@@ -86,40 +88,6 @@ function createAuthorizationSaga() {
|
|
|
86
88
|
yield (0, effects_1.put)((0, actions_1.fetchAuthorizationsFailure)(authorizations, error.message));
|
|
87
89
|
}
|
|
88
90
|
}
|
|
89
|
-
function* handleFetchAuthorizationRequest(action) {
|
|
90
|
-
const { authorization } = action.payload;
|
|
91
|
-
try {
|
|
92
|
-
if (!(0, utils_1.isValidType)(authorization.type)) {
|
|
93
|
-
throw new Error(`Invalid authorization type ${authorization.type}`);
|
|
94
|
-
}
|
|
95
|
-
const { chainId } = authorization;
|
|
96
|
-
const provider = yield (0, effects_1.call)(eth_1.getNetworkProvider, chainId);
|
|
97
|
-
const ethersProvider = new ethers_1.ethers.providers.Web3Provider(provider);
|
|
98
|
-
switch (authorization.type) {
|
|
99
|
-
case types_1.AuthorizationType.ALLOWANCE:
|
|
100
|
-
const erc20 = getERC20ContractInstance(authorization, ethersProvider);
|
|
101
|
-
const allowance = yield (0, effects_1.call)(
|
|
102
|
-
// @ts-ignore
|
|
103
|
-
[erc20, 'allowance'], authorization.address, authorization.authorizedAddress);
|
|
104
|
-
if (allowance.gt(0)) {
|
|
105
|
-
yield (0, effects_1.put)((0, actions_1.fetchAuthorizationSuccess)(Object.assign(Object.assign({}, authorization), { allowance: allowance.toString() })));
|
|
106
|
-
}
|
|
107
|
-
break;
|
|
108
|
-
case types_1.AuthorizationType.APPROVAL:
|
|
109
|
-
const erc721 = getERC721ContractInstance(authorization, ethersProvider);
|
|
110
|
-
const isApproved = yield (0, effects_1.call)(
|
|
111
|
-
// @ts-ignore
|
|
112
|
-
[erc721, 'isApprovedForAll'], authorization.address, authorization.authorizedAddress);
|
|
113
|
-
yield (0, effects_1.put)((0, actions_1.fetchAuthorizationSuccess)(isApproved ? authorization : null));
|
|
114
|
-
break;
|
|
115
|
-
default:
|
|
116
|
-
yield (0, effects_1.put)((0, actions_1.fetchAuthorizationSuccess)(null));
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
catch (error) {
|
|
120
|
-
yield (0, effects_1.put)((0, actions_1.fetchAuthorizationFailure)(authorization, error.message));
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
91
|
function* handleGrantTokenRequest(action) {
|
|
124
92
|
const { authorization } = action.payload;
|
|
125
93
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sagas.js","sourceRoot":"","sources":["../../../src/modules/authorization/sagas.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gDAAyD;AACzD,qDAAiD;AACjD,mCAA+B;AAE/B,yEAAqE;AACrE,uCAAkD;AAClD,mCAA8D;AAC9D,
|
|
1
|
+
{"version":3,"file":"sagas.js","sourceRoot":"","sources":["../../../src/modules/authorization/sagas.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gDAAyD;AACzD,qDAAiD;AACjD,mCAA+B;AAE/B,yEAAqE;AACrE,uCAAkD;AAClD,mCAA8D;AAC9D,uCAakB;AAClB,mCAA+E;AAC/E,qEAAiE;AAEjE,SAAgB,uBAAuB;IACrC,OAAO,QAAQ,CAAC,CAAC,iBAAiB;QAChC,MAAM,IAAA,mBAAS,EACb,sCAA4B,EAC5B,gCAAgC,CACjC,CAAA;QACD,MAAM,IAAA,mBAAS,EAAC,6BAAmB,EAAE,uBAAuB,CAAC,CAAA;QAC7D,MAAM,IAAA,mBAAS,EAAC,8BAAoB,EAAE,wBAAwB,CAAC,CAAA;IACjE,CAAC,CAAA;IAED,QAAQ,CAAC,CAAC,gCAAgC,CACxC,MAAwC;QAExC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC,OAAO,CAAA;QACzC,IAAI;YACF,MAAM,QAAQ,GAAqD,EAAE,CAAA;YACrE,MAAM,kBAAkB,GAAgD,EAAE,CAAA;YAE1E,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE;gBAC1C,IAAI,CAAC,IAAA,mBAAW,EAAC,aAAa,CAAC,IAAI,CAAC,EAAE;oBACpC,MAAM,IAAI,KAAK,CAAC,8BAA8B,aAAa,CAAC,IAAI,EAAE,CAAC,CAAA;iBACpE;gBACD,MAAM,EAAE,OAAO,EAAE,GAAG,aAAa,CAAA;gBAEjC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE;oBAChC,oBAAoB;oBACpB,MAAM,QAAQ,GAAa,MAAM,IAAA,cAAI,EAAC,GAAG,EAAE,CACzC,IAAA,wBAAkB,EAAC,OAAO,CAAC,CAC5B,CAAA;oBACD,MAAM,cAAc,GAAG,IAAI,eAAM,CAAC,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;oBAClE,MAAM,iBAAiB,GAAG,IAAI,qBAAS,CAAC,iBAAiB,CACvD,cAAc,EACd,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,iBAAiB;qBACrC,CAAA;oBACD,kBAAkB,CAAC,OAAO,CAAC,GAAG,iBAAiB,CAAA;iBAChD;gBAED,QAAQ,aAAa,CAAC,IAAI,EAAE;oBAC1B,KAAK,yBAAiB,CAAC,SAAS;wBAC9B,MAAM,KAAK,GAAG,wBAAwB,CACpC,aAAa,EACb,kBAAkB,CAAC,OAAO,CAAC,CAC5B,CAAA;wBAED,QAAQ,CAAC,IAAI;wBACX,aAAa;wBACb,KAAK;6BACF,SAAS,CACR,aAAa,CAAC,OAAO,EACrB,aAAa,CAAC,iBAAiB,CAChC;6BACA,IAAI,CAAuB,CAAC,SAA2B,EAAE,EAAE;4BAC1D,OAAO;gCACL,aAAa;gCACb,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;oCACb,CAAC,iCACM,aAAa,KAChB,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE,IAEnC,CAAC,CAAC,IAAI;6BACT,CAAA;wBACH,CAAC,CAAC;6BACD,KAAK,CAAC,CAAC,KAAY,EAAE,EAAE;4BACtB,OAAO,CAAC,IAAI,CAAC,0BAA0B,EAAE,aAAa,EAAE,KAAK,CAAC,CAAA;4BAC9D,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;wBAC9B,CAAC,CAAC,CACL,CAAA;wBACD,MAAK;oBACP,KAAK,yBAAiB,CAAC,QAAQ;wBAC7B,MAAM,MAAM,GAAG,yBAAyB,CACtC,aAAa,EACb,kBAAkB,CAAC,OAAO,CAAC,CAC5B,CAAA;wBAED,QAAQ,CAAC,IAAI;wBACX,aAAa;wBACb,MAAM;6BACH,gBAAgB,CACf,aAAa,CAAC,OAAO,EACrB,aAAa,CAAC,iBAAiB,CAChC;6BACA,IAAI,CAAuB,CAAC,UAAmB,EAAE,EAAE,CAAC;4BACnD,aAAa;4BACb,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI;yBAClC,CAAC;6BACD,KAAK,CAAC,CAAC,KAAY,EAAE,EAAE;4BACtB,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,aAAa,EAAE,KAAK,CAAC,CAAA;4BAC7D,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;wBAC9B,CAAC,CAAC,CACL,CAAA;wBACD,MAAK;iBACR;aACF;YAED,MAAM,qBAAqB,GAGrB,MAAM,IAAA,cAAI,EAAC,GAAS,EAAE;gBAC1B,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YAC9B,CAAC,CAAA,CAAC,CAAA;YAEF,MAAM,IAAA,aAAG,EAAC,IAAA,oCAA0B,EAAC,qBAAqB,CAAC,CAAC,CAAA;SAC7D;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAA,aAAG,EAAC,IAAA,oCAA0B,EAAC,cAAc,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;SACrE;IACH,CAAC;IAED,QAAQ,CAAC,CAAC,uBAAuB,CAAC,MAA+B;QAC/D,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC,OAAO,CAAA;QACxC,IAAI;YACF,MAAM,MAAM,GAAW,MAAM,IAAA,cAAI,EAAC,GAAG,EAAE,CACrC,mBAAmB,CAAC,aAAa,EAAE,2BAAmB,CAAC,KAAK,CAAC,CAC9D,CAAA;YACD,MAAM,IAAA,aAAG,EAAC,IAAA,2BAAiB,EAAC,aAAa,EAAE,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;SAC3E;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAA,aAAG,EAAC,IAAA,2BAAiB,EAAC,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;SAC3D;IACH,CAAC;IAED,QAAQ,CAAC,CAAC,wBAAwB,CAAC,MAAgC;QACjE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC,OAAO,CAAA;QACxC,IAAI;YACF,MAAM,MAAM,GAAW,MAAM,IAAA,cAAI,EAAC,GAAG,EAAE,CACrC,mBAAmB,CAAC,aAAa,EAAE,2BAAmB,CAAC,MAAM,CAAC,CAC/D,CAAA;YACD,MAAM,IAAA,aAAG,EACP,IAAA,4BAAkB,EAAC,aAAa,EAAE,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CACjE,CAAA;SACF;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAA,aAAG,EAAC,IAAA,4BAAkB,EAAC,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;SAC5D;IACH,CAAC;IAED,SAAe,mBAAmB,CAChC,aAA4B,EAC5B,MAA2B;;YAE3B,IAAI,CAAC,IAAA,mBAAW,EAAC,aAAa,CAAC,IAAI,CAAC,EAAE;gBACpC,MAAM,IAAI,KAAK,CAAC,8BAA8B,aAAa,CAAC,IAAI,EAAE,CAAC,CAAA;aACpE;YAED,MAAM,QAAQ,mCACT,IAAA,uCAAW,EAAC,aAAa,CAAC,YAAY,EAAE,aAAa,CAAC,OAAO,CAAC,KACjE,OAAO,EAAE,aAAa,CAAC,eAAe,GACvC,CAAA;YAED,QAAQ,aAAa,CAAC,IAAI,EAAE;gBAC1B,KAAK,yBAAiB,CAAC,SAAS;oBAC9B,MAAM,MAAM,GACV,MAAM,KAAK,2BAAmB,CAAC,KAAK;wBAClC,CAAC,CAAC,IAAA,+BAAuB,GAAE,CAAC,QAAQ,EAAE;wBACtC,CAAC,CAAC,GAAG,CAAA;oBACT,OAAO,IAAA,iCAAe,EAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CACvC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,iBAAiB,EAAE,MAAM,CAAC,CACvD,CAAA;gBACH,KAAK,yBAAiB,CAAC,QAAQ;oBAC7B,MAAM,UAAU,GAAG,MAAM,KAAK,2BAAmB,CAAC,KAAK,CAAA;oBACvD,OAAO,IAAA,iCAAe,EAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CACxC,MAAM,CAAC,iBAAiB,CAAC,aAAa,CAAC,iBAAiB,EAAE,UAAU,CAAC,CACtE,CAAA;aACJ;QACH,CAAC;KAAA;AACH,CAAC;AAlKD,0DAkKC;AAED,sCAAsC;AACtC,SAAS,wBAAwB,CAC/B,aAA4B,EAC5B,QAAmC;IAEnC,OAAO,IAAI,eAAM,CAAC,QAAQ,CACxB,aAAa,CAAC,eAAe,EAC7B;QACE,2EAA2E;KAC5E,EACD,QAAQ,CACT,CAAA;AACH,CAAC;AAED,SAAS,yBAAyB,CAChC,aAA4B,EAC5B,QAAmC;IAEnC,OAAO,IAAI,eAAM,CAAC,QAAQ,CACxB,aAAa,CAAC,eAAe,EAC7B;QACE,gFAAgF;KACjF,EACD,QAAQ,CACT,CAAA;AACH,CAAC;AAEY,QAAA,iBAAiB,GAAG,uBAAuB,EAAE,CAAA"}
|