decentraland-dapps 13.55.0 → 13.56.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/modules/authorization/actions.d.ts +19 -1
- package/dist/modules/authorization/actions.js +17 -1
- package/dist/modules/authorization/actions.js.map +1 -1
- package/dist/modules/authorization/reducer.d.ts +9 -3
- package/dist/modules/authorization/reducer.js +7 -1
- package/dist/modules/authorization/reducer.js.map +1 -1
- package/dist/modules/authorization/sagas.js +58 -5
- package/dist/modules/authorization/sagas.js.map +1 -1
- package/dist/modules/authorization/selectors.d.ts +1 -0
- package/dist/modules/authorization/selectors.js +3 -1
- package/dist/modules/authorization/selectors.js.map +1 -1
- package/dist/modules/authorization/utils.d.ts +6 -0
- package/dist/modules/authorization/utils.js +8 -1
- package/dist/modules/authorization/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ChainId } from '@dcl/schemas/dist/dapps/chain-id';
|
|
2
|
-
import { Authorization } from './types';
|
|
2
|
+
import { Authorization, AuthorizationAction } from './types';
|
|
3
3
|
export declare const FETCH_AUTHORIZATIONS_REQUEST = "[Request] Fetch Authorizations";
|
|
4
4
|
export declare const FETCH_AUTHORIZATIONS_SUCCESS = "[Success] Fetch Authorizations";
|
|
5
5
|
export declare const FETCH_AUTHORIZATIONS_FAILURE = "[Failure] Fetch Authorizations";
|
|
@@ -52,3 +52,21 @@ export declare const revokeTokenFailure: (authorization: Authorization, error: s
|
|
|
52
52
|
export declare type RevokeTokenRequestAction = ReturnType<typeof revokeTokenRequest>;
|
|
53
53
|
export declare type RevokeTokenSuccessAction = ReturnType<typeof revokeTokenSuccess>;
|
|
54
54
|
export declare type RevokeTokenFailureAction = ReturnType<typeof revokeTokenFailure>;
|
|
55
|
+
export declare const AUTHORIZATION_FLOW_REQUEST = "[Request] Authorization Flow";
|
|
56
|
+
export declare const AUTHORIZATION_FLOW_SUCCESS = "[Success] Authorization Flow";
|
|
57
|
+
export declare const AUTHORIZATION_FLOW_FAILURE = "[Failure] Authorization Flow";
|
|
58
|
+
export declare const authorizationFlowRequest: (authorization: Authorization, authorizationAction: AuthorizationAction, allowance?: string | undefined) => import("typesafe-actions/dist/types").PayloadAction<"[Request] Authorization Flow", {
|
|
59
|
+
authorization: Authorization;
|
|
60
|
+
authorizationAction: AuthorizationAction;
|
|
61
|
+
allowance: string | undefined;
|
|
62
|
+
}>;
|
|
63
|
+
export declare const authorizationFlowSuccess: (authorization: Authorization) => import("typesafe-actions/dist/types").PayloadAction<"[Success] Authorization Flow", {
|
|
64
|
+
authorization: Authorization;
|
|
65
|
+
}>;
|
|
66
|
+
export declare const authorizationFlowFailure: (authorization: Authorization, error: string) => import("typesafe-actions/dist/types").PayloadAction<"[Failure] Authorization Flow", {
|
|
67
|
+
authorization: Authorization;
|
|
68
|
+
error: string;
|
|
69
|
+
}>;
|
|
70
|
+
export declare type AuthorizationFlowRequestAction = ReturnType<typeof authorizationFlowRequest>;
|
|
71
|
+
export declare type AuthorizationFlowSuccessAction = ReturnType<typeof authorizationFlowSuccess>;
|
|
72
|
+
export declare type AuthorizationFlowFailureAction = ReturnType<typeof authorizationFlowFailure>;
|
|
@@ -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.fetchAuthorizationsFailure = exports.fetchAuthorizationsSuccess = exports.fetchAuthorizationsRequest = exports.FETCH_AUTHORIZATIONS_FAILURE = exports.FETCH_AUTHORIZATIONS_SUCCESS = exports.FETCH_AUTHORIZATIONS_REQUEST = void 0;
|
|
3
|
+
exports.authorizationFlowFailure = exports.authorizationFlowSuccess = exports.authorizationFlowRequest = exports.AUTHORIZATION_FLOW_FAILURE = exports.AUTHORIZATION_FLOW_SUCCESS = exports.AUTHORIZATION_FLOW_REQUEST = 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
|
|
@@ -45,4 +45,20 @@ const revokeTokenSuccess = (authorization, chainId, txHash) => (0, typesafe_acti
|
|
|
45
45
|
exports.revokeTokenSuccess = revokeTokenSuccess;
|
|
46
46
|
const revokeTokenFailure = (authorization, error) => (0, typesafe_actions_1.action)(exports.REVOKE_TOKEN_FAILURE, { authorization, error });
|
|
47
47
|
exports.revokeTokenFailure = revokeTokenFailure;
|
|
48
|
+
// Authorization Flow
|
|
49
|
+
exports.AUTHORIZATION_FLOW_REQUEST = '[Request] Authorization Flow';
|
|
50
|
+
exports.AUTHORIZATION_FLOW_SUCCESS = '[Success] Authorization Flow';
|
|
51
|
+
exports.AUTHORIZATION_FLOW_FAILURE = '[Failure] Authorization Flow';
|
|
52
|
+
const authorizationFlowRequest = (authorization, authorizationAction, allowance) => (0, typesafe_actions_1.action)(exports.AUTHORIZATION_FLOW_REQUEST, {
|
|
53
|
+
authorization,
|
|
54
|
+
authorizationAction,
|
|
55
|
+
allowance
|
|
56
|
+
});
|
|
57
|
+
exports.authorizationFlowRequest = authorizationFlowRequest;
|
|
58
|
+
const authorizationFlowSuccess = (authorization) => (0, typesafe_actions_1.action)(exports.AUTHORIZATION_FLOW_SUCCESS, {
|
|
59
|
+
authorization
|
|
60
|
+
});
|
|
61
|
+
exports.authorizationFlowSuccess = authorizationFlowSuccess;
|
|
62
|
+
const authorizationFlowFailure = (authorization, error) => (0, typesafe_actions_1.action)(exports.AUTHORIZATION_FLOW_FAILURE, { authorization, error });
|
|
63
|
+
exports.authorizationFlowFailure = authorizationFlowFailure;
|
|
48
64
|
//# sourceMappingURL=actions.js.map
|
|
@@ -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;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
|
+
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/modules/authorization/actions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,23 @@
|
|
|
1
1
|
import { LoadingState } from '../loading/reducer';
|
|
2
2
|
import { FetchTransactionSuccessAction } from '../transaction/actions';
|
|
3
|
-
import { FetchAuthorizationsRequestAction, FetchAuthorizationsSuccessAction, FetchAuthorizationsFailureAction, GrantTokenRequestAction, GrantTokenSuccessAction, GrantTokenFailureAction, RevokeTokenRequestAction, RevokeTokenSuccessAction, RevokeTokenFailureAction } from './actions';
|
|
3
|
+
import { FetchAuthorizationsRequestAction, FetchAuthorizationsSuccessAction, FetchAuthorizationsFailureAction, GrantTokenRequestAction, GrantTokenSuccessAction, GrantTokenFailureAction, RevokeTokenRequestAction, RevokeTokenSuccessAction, RevokeTokenFailureAction, AuthorizationFlowRequestAction, AuthorizationFlowSuccessAction, AuthorizationFlowFailureAction } 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
|
+
authorizationFlowError: string | null;
|
|
9
10
|
};
|
|
10
11
|
export declare const INITIAL_STATE: {
|
|
11
12
|
data: never[];
|
|
12
13
|
loading: never[];
|
|
13
14
|
error: null;
|
|
15
|
+
authorizationFlowError: null;
|
|
16
|
+
};
|
|
17
|
+
declare type AuthorizationReducerAction = FetchAuthorizationsRequestAction | FetchAuthorizationsSuccessAction | FetchAuthorizationsFailureAction | GrantTokenRequestAction | GrantTokenSuccessAction | GrantTokenFailureAction | RevokeTokenRequestAction | RevokeTokenSuccessAction | RevokeTokenFailureAction | FetchTransactionSuccessAction | AuthorizationFlowRequestAction | AuthorizationFlowSuccessAction | AuthorizationFlowFailureAction;
|
|
18
|
+
export declare function authorizationReducer(state: AuthorizationState | undefined, action: AuthorizationReducerAction): AuthorizationState | {
|
|
19
|
+
loading: LoadingState;
|
|
20
|
+
error: null;
|
|
21
|
+
data: Authorization[];
|
|
14
22
|
};
|
|
15
|
-
declare type AuthorizationReducerAction = FetchAuthorizationsRequestAction | FetchAuthorizationsSuccessAction | FetchAuthorizationsFailureAction | GrantTokenRequestAction | GrantTokenSuccessAction | GrantTokenFailureAction | RevokeTokenRequestAction | RevokeTokenSuccessAction | RevokeTokenFailureAction | FetchTransactionSuccessAction;
|
|
16
|
-
export declare function authorizationReducer(state: AuthorizationState | undefined, action: AuthorizationReducerAction): AuthorizationState;
|
|
17
23
|
export {};
|
|
@@ -8,7 +8,8 @@ const utils_1 = require("./utils");
|
|
|
8
8
|
exports.INITIAL_STATE = {
|
|
9
9
|
data: [],
|
|
10
10
|
loading: [],
|
|
11
|
-
error: null
|
|
11
|
+
error: null,
|
|
12
|
+
authorizationFlowError: null
|
|
12
13
|
};
|
|
13
14
|
function authorizationReducer(state = exports.INITIAL_STATE, action) {
|
|
14
15
|
switch (action.type) {
|
|
@@ -19,6 +20,11 @@ function authorizationReducer(state = exports.INITIAL_STATE, action) {
|
|
|
19
20
|
case actions_2.FETCH_AUTHORIZATIONS_REQUEST: {
|
|
20
21
|
return Object.assign(Object.assign({}, state), { error: null, loading: (0, reducer_1.loadingReducer)(state.loading, action) });
|
|
21
22
|
}
|
|
23
|
+
case actions_2.AUTHORIZATION_FLOW_REQUEST:
|
|
24
|
+
case actions_2.AUTHORIZATION_FLOW_SUCCESS:
|
|
25
|
+
return Object.assign(Object.assign({}, state), { authorizationFlowError: null, loading: (0, reducer_1.loadingReducer)(state.loading, action) });
|
|
26
|
+
case actions_2.AUTHORIZATION_FLOW_FAILURE:
|
|
27
|
+
return Object.assign(Object.assign({}, state), { authorizationFlowError: action.payload.error, loading: (0, reducer_1.loadingReducer)(state.loading, action) });
|
|
22
28
|
case actions_2.FETCH_AUTHORIZATIONS_SUCCESS: {
|
|
23
29
|
const { authorizations } = action.payload;
|
|
24
30
|
// TODO: Optimize with some sort of Map structure to prevent O(n^2)
|
|
@@ -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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"}
|
|
@@ -15,15 +15,18 @@ const multicall_1 = require("@0xsequence/multicall");
|
|
|
15
15
|
const ethers_1 = require("ethers");
|
|
16
16
|
const decentraland_transactions_1 = require("decentraland-transactions");
|
|
17
17
|
const eth_1 = require("../../lib/eth");
|
|
18
|
-
const
|
|
18
|
+
const sendTransaction_1 = require("../wallet/utils/sendTransaction");
|
|
19
|
+
const utils_1 = require("../transaction/utils");
|
|
20
|
+
const utils_2 = require("./utils");
|
|
19
21
|
const actions_1 = require("./actions");
|
|
20
22
|
const types_1 = require("./types");
|
|
21
|
-
const
|
|
23
|
+
const selectors_1 = require("./selectors");
|
|
22
24
|
function createAuthorizationSaga() {
|
|
23
25
|
return function* authorizationSaga() {
|
|
24
26
|
yield (0, effects_1.takeEvery)(actions_1.FETCH_AUTHORIZATIONS_REQUEST, handleFetchAuthorizationsRequest);
|
|
25
27
|
yield (0, effects_1.takeEvery)(actions_1.GRANT_TOKEN_REQUEST, handleGrantTokenRequest);
|
|
26
28
|
yield (0, effects_1.takeEvery)(actions_1.REVOKE_TOKEN_REQUEST, handleRevokeTokenRequest);
|
|
29
|
+
yield (0, effects_1.takeEvery)(actions_1.AUTHORIZATION_FLOW_REQUEST, handleAuthorizationFlowRequest);
|
|
27
30
|
};
|
|
28
31
|
function* handleFetchAuthorizationsRequest(action) {
|
|
29
32
|
const { authorizations } = action.payload;
|
|
@@ -31,7 +34,7 @@ function createAuthorizationSaga() {
|
|
|
31
34
|
const promises = [];
|
|
32
35
|
const multicallProviders = {};
|
|
33
36
|
for (const authorization of authorizations) {
|
|
34
|
-
if (!(0,
|
|
37
|
+
if (!(0, utils_2.isValidType)(authorization.type)) {
|
|
35
38
|
throw new Error(`Invalid authorization type ${authorization.type}`);
|
|
36
39
|
}
|
|
37
40
|
const { chainId } = authorization;
|
|
@@ -108,16 +111,66 @@ function createAuthorizationSaga() {
|
|
|
108
111
|
yield (0, effects_1.put)((0, actions_1.revokeTokenFailure)(authorization, error.message));
|
|
109
112
|
}
|
|
110
113
|
}
|
|
114
|
+
function* handleAuthorizationFlowRequest(action) {
|
|
115
|
+
const { authorizationAction, authorization, allowance } = action.payload;
|
|
116
|
+
const isRevoke = authorizationAction === types_1.AuthorizationAction.REVOKE;
|
|
117
|
+
const tokenRequest = isRevoke
|
|
118
|
+
? (0, actions_1.revokeTokenRequest)(authorization)
|
|
119
|
+
: (0, actions_1.grantTokenRequest)(authorization);
|
|
120
|
+
const TOKEN_SUCCESS = isRevoke ? actions_1.REVOKE_TOKEN_SUCCESS : actions_1.GRANT_TOKEN_SUCCESS;
|
|
121
|
+
const TOKEN_FAILURE = isRevoke ? actions_1.REVOKE_TOKEN_FAILURE : actions_1.GRANT_TOKEN_FAILURE;
|
|
122
|
+
yield (0, effects_1.put)(tokenRequest);
|
|
123
|
+
try {
|
|
124
|
+
const { success, failure } = yield (0, effects_1.race)({
|
|
125
|
+
success: (0, effects_1.take)(TOKEN_SUCCESS),
|
|
126
|
+
failure: (0, effects_1.take)(TOKEN_FAILURE)
|
|
127
|
+
});
|
|
128
|
+
if (failure) {
|
|
129
|
+
throw new Error(failure.payload.error);
|
|
130
|
+
}
|
|
131
|
+
const txHash = (0, utils_1.getTransactionFromAction)(success).hash;
|
|
132
|
+
yield (0, effects_1.call)(utils_1.waitForTx, txHash);
|
|
133
|
+
yield (0, effects_1.put)((0, actions_1.fetchAuthorizationsRequest)([authorization]));
|
|
134
|
+
const { fetchFailure } = yield (0, effects_1.race)({
|
|
135
|
+
fetchSuccess: (0, effects_1.take)(actions_1.FETCH_AUTHORIZATIONS_SUCCESS),
|
|
136
|
+
fetchFailure: (0, effects_1.take)(actions_1.FETCH_AUTHORIZATIONS_FAILURE)
|
|
137
|
+
});
|
|
138
|
+
if (fetchFailure) {
|
|
139
|
+
throw new Error(fetchFailure.payload.error ||
|
|
140
|
+
utils_2.AuthorizationError.FETCH_AUTHORIZATIONS_FAILURE);
|
|
141
|
+
}
|
|
142
|
+
const authorizations = yield (0, effects_1.select)(selectors_1.getData);
|
|
143
|
+
if (authorizationAction === types_1.AuthorizationAction.REVOKE &&
|
|
144
|
+
(0, utils_2.hasAuthorization)(authorizations, authorization)) {
|
|
145
|
+
throw new Error(utils_2.AuthorizationError.REVOKE_FAILED);
|
|
146
|
+
}
|
|
147
|
+
if (authorizationAction === types_1.AuthorizationAction.GRANT) {
|
|
148
|
+
if (authorization.type === types_1.AuthorizationType.ALLOWANCE &&
|
|
149
|
+
allowance &&
|
|
150
|
+
!(0, utils_2.hasAuthorizationAndEnoughAllowance)(authorizations, authorization, allowance)) {
|
|
151
|
+
throw new Error(utils_2.AuthorizationError.INSUFFICIENT_ALLOWANCE);
|
|
152
|
+
}
|
|
153
|
+
if (authorization.type === types_1.AuthorizationType.APPROVAL &&
|
|
154
|
+
!(0, utils_2.hasAuthorization)(authorizations, authorization)) {
|
|
155
|
+
throw new Error(utils_2.AuthorizationError.GRANT_FAILED);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
yield (0, effects_1.put)((0, actions_1.authorizationFlowSuccess)(authorization));
|
|
159
|
+
}
|
|
160
|
+
catch (error) {
|
|
161
|
+
yield (0, effects_1.put)((0, actions_1.authorizationFlowFailure)(authorization, error.message));
|
|
162
|
+
}
|
|
163
|
+
}
|
|
111
164
|
function changeAuthorization(authorization, action) {
|
|
112
165
|
return __awaiter(this, void 0, void 0, function* () {
|
|
113
|
-
if (!(0,
|
|
166
|
+
if (!(0, utils_2.isValidType)(authorization.type)) {
|
|
114
167
|
throw new Error(`Invalid authorization type ${authorization.type}`);
|
|
115
168
|
}
|
|
116
169
|
const contract = Object.assign(Object.assign({}, (0, decentraland_transactions_1.getContract)(authorization.contractName, authorization.chainId)), { address: authorization.contractAddress });
|
|
117
170
|
switch (authorization.type) {
|
|
118
171
|
case types_1.AuthorizationType.ALLOWANCE:
|
|
119
172
|
const amount = action === types_1.AuthorizationAction.GRANT
|
|
120
|
-
? (0,
|
|
173
|
+
? (0, utils_2.getTokenAmountToApprove)().toString()
|
|
121
174
|
: '0';
|
|
122
175
|
return (0, sendTransaction_1.sendTransaction)(contract, erc20 => erc20.approve(authorization.authorizedAddress, amount));
|
|
123
176
|
case types_1.AuthorizationType.APPROVAL:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sagas.js","sourceRoot":"","sources":["../../../src/modules/authorization/sagas.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"sagas.js","sourceRoot":"","sources":["../../../src/modules/authorization/sagas.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ export declare const getData: (state: any) => import("./types").Authorization[];
|
|
|
4
4
|
export declare const getLoading: (state: any) => import("../loading/reducer").LoadingState;
|
|
5
5
|
export declare const isLoading: (state: any) => boolean;
|
|
6
6
|
export declare const getError: (state: any) => string | null;
|
|
7
|
+
export declare const getAuthorizationFlowError: (state: any) => string | null;
|
|
7
8
|
export declare const getTransactions: (state: any) => import("../transaction/types").Transaction[];
|
|
8
9
|
export declare const getAllowTransactions: (state: any) => import("../transaction/types").Transaction[];
|
|
9
10
|
export declare const getApproveTransactions: (state: any) => import("../transaction/types").Transaction[];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getApproveTransactions = exports.getAllowTransactions = exports.getTransactions = exports.getError = exports.isLoading = exports.getLoading = exports.getData = exports.getState = void 0;
|
|
3
|
+
exports.getApproveTransactions = exports.getAllowTransactions = exports.getTransactions = exports.getAuthorizationFlowError = exports.getError = exports.isLoading = exports.getLoading = exports.getData = exports.getState = void 0;
|
|
4
4
|
const selectors_1 = require("../transaction/selectors");
|
|
5
5
|
const selectors_2 = require("../wallet/selectors");
|
|
6
6
|
const actions_1 = require("./actions");
|
|
@@ -15,6 +15,8 @@ const isLoading = (state) => (0, exports.getLoading)(state).length > 0;
|
|
|
15
15
|
exports.isLoading = isLoading;
|
|
16
16
|
const getError = (state) => (0, exports.getState)(state).error;
|
|
17
17
|
exports.getError = getError;
|
|
18
|
+
const getAuthorizationFlowError = (state) => (0, exports.getState)(state).authorizationFlowError;
|
|
19
|
+
exports.getAuthorizationFlowError = getAuthorizationFlowError;
|
|
18
20
|
const getTransactions = (state) => (0, selectors_1.getTransactionsByType)(state, (0, selectors_2.getAddress)(state) || '', actions_1.GRANT_TOKEN_SUCCESS);
|
|
19
21
|
exports.getTransactions = getTransactions;
|
|
20
22
|
const getAllowTransactions = (state) => (0, exports.getTransactions)(state).filter(transaction => transaction.payload.authorization.type === types_1.AuthorizationType.ALLOWANCE);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selectors.js","sourceRoot":"","sources":["../../../src/modules/authorization/selectors.ts"],"names":[],"mappings":";;;AAAA,wDAAgE;AAChE,mDAAgD;AAChD,uCAA+C;AAE/C,mCAA2C;AAEpC,MAAM,QAAQ,GAAuC,KAAK,CAAC,EAAE,CAClE,KAAK,CAAC,aAAa,CAAA;AADR,QAAA,QAAQ,YACA;AACd,MAAM,OAAO,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC,IAAI,CAAA;AAA9C,QAAA,OAAO,WAAuC;AACpD,MAAM,UAAU,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC,OAAO,CAAA;AAApD,QAAA,UAAU,cAA0C;AAC1D,MAAM,SAAS,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,IAAA,kBAAU,EAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;AAAxD,QAAA,SAAS,aAA+C;AAC9D,MAAM,QAAQ,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC,KAAK,CAAA;AAAhD,QAAA,QAAQ,YAAwC;
|
|
1
|
+
{"version":3,"file":"selectors.js","sourceRoot":"","sources":["../../../src/modules/authorization/selectors.ts"],"names":[],"mappings":";;;AAAA,wDAAgE;AAChE,mDAAgD;AAChD,uCAA+C;AAE/C,mCAA2C;AAEpC,MAAM,QAAQ,GAAuC,KAAK,CAAC,EAAE,CAClE,KAAK,CAAC,aAAa,CAAA;AADR,QAAA,QAAQ,YACA;AACd,MAAM,OAAO,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC,IAAI,CAAA;AAA9C,QAAA,OAAO,WAAuC;AACpD,MAAM,UAAU,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC,OAAO,CAAA;AAApD,QAAA,UAAU,cAA0C;AAC1D,MAAM,SAAS,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,IAAA,kBAAU,EAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;AAAxD,QAAA,SAAS,aAA+C;AAC9D,MAAM,QAAQ,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC,KAAK,CAAA;AAAhD,QAAA,QAAQ,YAAwC;AACtD,MAAM,yBAAyB,GAAG,CAAC,KAAU,EAAE,EAAE,CACtD,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC,sBAAsB,CAAA;AAD3B,QAAA,yBAAyB,6BACE;AAEjC,MAAM,eAAe,GAAG,CAAC,KAAU,EAAE,EAAE,CAC5C,IAAA,iCAAqB,EAAC,KAAK,EAAE,IAAA,sBAAU,EAAC,KAAK,CAAC,IAAI,EAAE,EAAE,6BAAmB,CAAC,CAAA;AAD/D,QAAA,eAAe,mBACgD;AAErE,MAAM,oBAAoB,GAAG,CAAC,KAAU,EAAE,EAAE,CACjD,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAC,MAAM,CAC3B,WAAW,CAAC,EAAE,CACZ,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,KAAK,yBAAiB,CAAC,SAAS,CACzE,CAAA;AAJU,QAAA,oBAAoB,wBAI9B;AAEI,MAAM,sBAAsB,GAAG,CAAC,KAAU,EAAE,EAAE,CACnD,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAC,MAAM,CAC3B,WAAW,CAAC,EAAE,CACZ,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,KAAK,yBAAiB,CAAC,QAAQ,CACxE,CAAA;AAJU,QAAA,sBAAsB,0BAIhC"}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { ethers } from 'ethers';
|
|
2
2
|
import { Authorization } from './types';
|
|
3
|
+
export declare enum AuthorizationError {
|
|
4
|
+
REVOKE_FAILED = "revoke-failed-error",
|
|
5
|
+
GRANT_FAILED = "grant-failed-error",
|
|
6
|
+
INSUFFICIENT_ALLOWANCE = "insufficient-allowance",
|
|
7
|
+
FETCH_AUTHORIZATIONS_FAILURE = "fetch-authorizations-failure"
|
|
8
|
+
}
|
|
3
9
|
export declare function getTokenAmountToApprove(): ethers.BigNumber;
|
|
4
10
|
export declare function hasAuthorization(authorizations: Authorization[], authorizationToFind: Authorization): boolean;
|
|
5
11
|
export declare function hasAuthorizationAndEnoughAllowance(authorizations: Authorization[], authorizationToFind: Authorization, allowance: string): boolean;
|
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isValidType = exports.areEqual = exports.hasAuthorizationAndEnoughAllowance = exports.hasAuthorization = exports.getTokenAmountToApprove = void 0;
|
|
3
|
+
exports.isValidType = exports.areEqual = exports.hasAuthorizationAndEnoughAllowance = exports.hasAuthorization = exports.getTokenAmountToApprove = exports.AuthorizationError = void 0;
|
|
4
4
|
const ethers_1 = require("ethers");
|
|
5
5
|
const types_1 = require("./types");
|
|
6
|
+
var AuthorizationError;
|
|
7
|
+
(function (AuthorizationError) {
|
|
8
|
+
AuthorizationError["REVOKE_FAILED"] = "revoke-failed-error";
|
|
9
|
+
AuthorizationError["GRANT_FAILED"] = "grant-failed-error";
|
|
10
|
+
AuthorizationError["INSUFFICIENT_ALLOWANCE"] = "insufficient-allowance";
|
|
11
|
+
AuthorizationError["FETCH_AUTHORIZATIONS_FAILURE"] = "fetch-authorizations-failure";
|
|
12
|
+
})(AuthorizationError = exports.AuthorizationError || (exports.AuthorizationError = {}));
|
|
6
13
|
function getTokenAmountToApprove() {
|
|
7
14
|
return ethers_1.ethers.BigNumber.from(2)
|
|
8
15
|
.pow(256)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/modules/authorization/utils.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAC/B,mCAA0D;AAE1D,SAAgB,uBAAuB;IACrC,OAAO,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;SAC5B,GAAG,CAAC,GAAG,CAAC;SACR,GAAG,CAAC,CAAC,CAAC,CAAA;AACX,CAAC;AAJD,0DAIC;AAED,SAAgB,gBAAgB,CAC9B,cAA+B,EAC/B,mBAAkC;IAElC,OAAO,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CACzC,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAC7C,CAAA;AACH,CAAC;AAPD,4CAOC;AAED,SAAgB,kCAAkC,CAChD,cAA+B,EAC/B,mBAAkC,EAClC,SAAiB;IAEjB,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CACpD,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAC7C,CAAA;IAED,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,KAAK,CAAA;KACb;IAED,+DAA+D;IAC/D,wDAAwD;IACxD,IAAI,mBAAmB,CAAC,IAAI,KAAK,yBAAiB,CAAC,SAAS,EAAE;QAC5D,OAAO,IAAI,CAAA;KACZ;IAED,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,SAAS,CAAA;IAEnD,IAAI,CAAC,kBAAkB,EAAE;QACvB,OAAO,KAAK,CAAA;KACb;IAED,MAAM,CAAC,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;IAC5C,MAAM,CAAC,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAA;IAErD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC;AA7BD,gFA6BC;AAED,SAAgB,QAAQ,CAAC,IAAmB,EAAE,KAAoB;IAChE,OAAO,CACL,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;QACxB,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE;YAClC,KAAK,CAAC,iBAAiB,CAAC,WAAW,EAAE;QACvC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE;YAChC,KAAK,CAAC,eAAe,CAAC,WAAW,EAAE;QACrC,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;QAC9B,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAC3D,CAAA;AACH,CAAC;AAVD,4BAUC;AAED,SAAgB,WAAW,CAAC,IAAY;IACtC,OAAO,MAAM,CAAC,MAAM,CAAS,yBAAiB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;AAChE,CAAC;AAFD,kCAEC"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/modules/authorization/utils.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAC/B,mCAA0D;AAE1D,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,2DAAqC,CAAA;IACrC,yDAAmC,CAAA;IACnC,uEAAiD,CAAA;IACjD,mFAA6D,CAAA;AAC/D,CAAC,EALW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAK7B;AAED,SAAgB,uBAAuB;IACrC,OAAO,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;SAC5B,GAAG,CAAC,GAAG,CAAC;SACR,GAAG,CAAC,CAAC,CAAC,CAAA;AACX,CAAC;AAJD,0DAIC;AAED,SAAgB,gBAAgB,CAC9B,cAA+B,EAC/B,mBAAkC;IAElC,OAAO,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CACzC,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAC7C,CAAA;AACH,CAAC;AAPD,4CAOC;AAED,SAAgB,kCAAkC,CAChD,cAA+B,EAC/B,mBAAkC,EAClC,SAAiB;IAEjB,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CACpD,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAC7C,CAAA;IAED,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,KAAK,CAAA;KACb;IAED,+DAA+D;IAC/D,wDAAwD;IACxD,IAAI,mBAAmB,CAAC,IAAI,KAAK,yBAAiB,CAAC,SAAS,EAAE;QAC5D,OAAO,IAAI,CAAA;KACZ;IAED,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,SAAS,CAAA;IAEnD,IAAI,CAAC,kBAAkB,EAAE;QACvB,OAAO,KAAK,CAAA;KACb;IAED,MAAM,CAAC,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;IAC5C,MAAM,CAAC,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAA;IAErD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC;AA7BD,gFA6BC;AAED,SAAgB,QAAQ,CAAC,IAAmB,EAAE,KAAoB;IAChE,OAAO,CACL,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;QACxB,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE;YAClC,KAAK,CAAC,iBAAiB,CAAC,WAAW,EAAE;QACvC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE;YAChC,KAAK,CAAC,eAAe,CAAC,WAAW,EAAE;QACrC,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;QAC9B,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAC3D,CAAA;AACH,CAAC;AAVD,4BAUC;AAED,SAAgB,WAAW,CAAC,IAAY;IACtC,OAAO,MAAM,CAAC,MAAM,CAAS,yBAAiB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;AAChE,CAAC;AAFD,kCAEC"}
|