@bosonprotocol/react-kit 0.37.0-alpha.0 → 0.37.0-alpha.2
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/cjs/components/exchangeCard/ExchangeCard.d.ts +0 -1
- package/dist/cjs/components/exchangeCard/ExchangeCard.d.ts.map +1 -1
- package/dist/cjs/components/exchangeCard/ExchangeCard.js +21 -26
- package/dist/cjs/components/exchangeCard/ExchangeCard.js.map +1 -1
- package/dist/cjs/components/exchangeCard/ExchangeCard.styles.d.ts +227 -5
- package/dist/cjs/components/exchangeCard/ExchangeCard.styles.d.ts.map +1 -1
- package/dist/cjs/components/exchangeCard/ExchangeCard.styles.js +33 -22
- package/dist/cjs/components/exchangeCard/ExchangeCard.styles.js.map +1 -1
- package/dist/cjs/components/form/Select.d.ts.map +1 -1
- package/dist/cjs/components/form/Select.js.map +1 -1
- package/dist/cjs/components/modal/components/Commit/DetailView/InnerCommitDetailView.d.ts.map +1 -1
- package/dist/cjs/components/modal/components/Commit/DetailView/InnerCommitDetailView.js +1 -1
- package/dist/cjs/components/modal/components/Commit/DetailView/InnerCommitDetailView.js.map +1 -1
- package/dist/cjs/components/modal/components/Redeem/MyItems/Exchange.d.ts +1 -2
- package/dist/cjs/components/modal/components/Redeem/MyItems/Exchange.d.ts.map +1 -1
- package/dist/cjs/components/modal/components/Redeem/MyItems/Exchange.js +1 -12
- package/dist/cjs/components/modal/components/Redeem/MyItems/Exchange.js.map +1 -1
- package/dist/cjs/components/modal/components/Redeem/MyItems/Exchanges.d.ts +1 -2
- package/dist/cjs/components/modal/components/Redeem/MyItems/Exchanges.d.ts.map +1 -1
- package/dist/cjs/components/modal/components/Redeem/MyItems/Exchanges.js +2 -2
- package/dist/cjs/components/modal/components/Redeem/MyItems/Exchanges.js.map +1 -1
- package/dist/cjs/components/modal/components/Redeem/MyItems/MyItems.d.ts +1 -2
- package/dist/cjs/components/modal/components/Redeem/MyItems/MyItems.d.ts.map +1 -1
- package/dist/cjs/components/modal/components/Redeem/MyItems/MyItems.js +2 -2
- package/dist/cjs/components/modal/components/Redeem/MyItems/MyItems.js.map +1 -1
- package/dist/cjs/components/modal/components/Redeem/MyItems/WithExchangesData.d.ts +0 -1
- package/dist/cjs/components/modal/components/Redeem/MyItems/WithExchangesData.d.ts.map +1 -1
- package/dist/cjs/components/modal/components/Redeem/MyItems/WithExchangesData.js.map +1 -1
- package/dist/cjs/components/modal/components/Redeem/RedeemNonModal.d.ts +0 -1
- package/dist/cjs/components/modal/components/Redeem/RedeemNonModal.d.ts.map +1 -1
- package/dist/cjs/components/modal/components/Redeem/RedeemNonModal.js +1 -5
- package/dist/cjs/components/modal/components/Redeem/RedeemNonModal.js.map +1 -1
- package/dist/cjs/components/productCard/ProductCard.d.ts +2 -0
- package/dist/cjs/components/productCard/ProductCard.d.ts.map +1 -1
- package/dist/cjs/components/productCard/ProductCard.js +13 -15
- package/dist/cjs/components/productCard/ProductCard.js.map +1 -1
- package/dist/cjs/components/productCard/ProductCard.styles.d.ts +4 -0
- package/dist/cjs/components/productCard/ProductCard.styles.d.ts.map +1 -1
- package/dist/cjs/components/productCard/ProductCard.styles.js +55 -20
- package/dist/cjs/components/productCard/ProductCard.styles.js.map +1 -1
- package/dist/cjs/components/productCard/commonStyles.d.ts.map +1 -1
- package/dist/cjs/components/productCard/commonStyles.js +0 -1
- package/dist/cjs/components/productCard/commonStyles.js.map +1 -1
- package/dist/cjs/components/widgets/roblox/components/ProductsRoblox.d.ts.map +1 -1
- package/dist/cjs/components/widgets/roblox/components/ProductsRoblox.js +16 -2
- package/dist/cjs/components/widgets/roblox/components/ProductsRoblox.js.map +1 -1
- package/dist/cjs/components/widgets/roblox/components/RobloxExchangesGrid.d.ts +2 -2
- package/dist/cjs/components/widgets/roblox/components/RobloxExchangesGrid.d.ts.map +1 -1
- package/dist/cjs/components/widgets/roblox/components/RobloxExchangesGrid.js +3 -6
- package/dist/cjs/components/widgets/roblox/components/RobloxExchangesGrid.js.map +1 -1
- package/dist/esm/components/exchangeCard/ExchangeCard.d.ts +0 -1
- package/dist/esm/components/exchangeCard/ExchangeCard.d.ts.map +1 -1
- package/dist/esm/components/exchangeCard/ExchangeCard.js +22 -26
- package/dist/esm/components/exchangeCard/ExchangeCard.js.map +1 -1
- package/dist/esm/components/exchangeCard/ExchangeCard.styles.d.ts +227 -5
- package/dist/esm/components/exchangeCard/ExchangeCard.styles.d.ts.map +1 -1
- package/dist/esm/components/exchangeCard/ExchangeCard.styles.js +33 -22
- package/dist/esm/components/exchangeCard/ExchangeCard.styles.js.map +1 -1
- package/dist/esm/components/form/Select.d.ts.map +1 -1
- package/dist/esm/components/form/Select.js.map +1 -1
- package/dist/esm/components/modal/components/Commit/DetailView/InnerCommitDetailView.d.ts.map +1 -1
- package/dist/esm/components/modal/components/Commit/DetailView/InnerCommitDetailView.js +1 -1
- package/dist/esm/components/modal/components/Commit/DetailView/InnerCommitDetailView.js.map +1 -1
- package/dist/esm/components/modal/components/Redeem/MyItems/Exchange.d.ts +1 -2
- package/dist/esm/components/modal/components/Redeem/MyItems/Exchange.d.ts.map +1 -1
- package/dist/esm/components/modal/components/Redeem/MyItems/Exchange.js +1 -12
- package/dist/esm/components/modal/components/Redeem/MyItems/Exchange.js.map +1 -1
- package/dist/esm/components/modal/components/Redeem/MyItems/Exchanges.d.ts +1 -2
- package/dist/esm/components/modal/components/Redeem/MyItems/Exchanges.d.ts.map +1 -1
- package/dist/esm/components/modal/components/Redeem/MyItems/Exchanges.js +2 -2
- package/dist/esm/components/modal/components/Redeem/MyItems/Exchanges.js.map +1 -1
- package/dist/esm/components/modal/components/Redeem/MyItems/MyItems.d.ts +1 -2
- package/dist/esm/components/modal/components/Redeem/MyItems/MyItems.d.ts.map +1 -1
- package/dist/esm/components/modal/components/Redeem/MyItems/MyItems.js +2 -2
- package/dist/esm/components/modal/components/Redeem/MyItems/MyItems.js.map +1 -1
- package/dist/esm/components/modal/components/Redeem/MyItems/WithExchangesData.d.ts +0 -1
- package/dist/esm/components/modal/components/Redeem/MyItems/WithExchangesData.d.ts.map +1 -1
- package/dist/esm/components/modal/components/Redeem/MyItems/WithExchangesData.js.map +1 -1
- package/dist/esm/components/modal/components/Redeem/RedeemNonModal.d.ts +0 -1
- package/dist/esm/components/modal/components/Redeem/RedeemNonModal.d.ts.map +1 -1
- package/dist/esm/components/modal/components/Redeem/RedeemNonModal.js +1 -5
- package/dist/esm/components/modal/components/Redeem/RedeemNonModal.js.map +1 -1
- package/dist/esm/components/productCard/ProductCard.d.ts +2 -0
- package/dist/esm/components/productCard/ProductCard.d.ts.map +1 -1
- package/dist/esm/components/productCard/ProductCard.js +13 -15
- package/dist/esm/components/productCard/ProductCard.js.map +1 -1
- package/dist/esm/components/productCard/ProductCard.styles.d.ts +4 -0
- package/dist/esm/components/productCard/ProductCard.styles.d.ts.map +1 -1
- package/dist/esm/components/productCard/ProductCard.styles.js +54 -19
- package/dist/esm/components/productCard/ProductCard.styles.js.map +1 -1
- package/dist/esm/components/productCard/commonStyles.d.ts.map +1 -1
- package/dist/esm/components/productCard/commonStyles.js +0 -1
- package/dist/esm/components/productCard/commonStyles.js.map +1 -1
- package/dist/esm/components/widgets/roblox/components/ProductsRoblox.d.ts.map +1 -1
- package/dist/esm/components/widgets/roblox/components/ProductsRoblox.js +16 -2
- package/dist/esm/components/widgets/roblox/components/ProductsRoblox.js.map +1 -1
- package/dist/esm/components/widgets/roblox/components/RobloxExchangesGrid.d.ts +2 -2
- package/dist/esm/components/widgets/roblox/components/RobloxExchangesGrid.d.ts.map +1 -1
- package/dist/esm/components/widgets/roblox/components/RobloxExchangesGrid.js +3 -6
- package/dist/esm/components/widgets/roblox/components/RobloxExchangesGrid.js.map +1 -1
- package/package.json +2 -2
- package/src/components/exchangeCard/ExchangeCard.styles.ts +40 -22
- package/src/components/exchangeCard/ExchangeCard.tsx +53 -57
- package/src/components/form/Select.tsx +5 -3
- package/src/components/modal/components/Commit/DetailView/InnerCommitDetailView.tsx +4 -1
- package/src/components/modal/components/Redeem/MyItems/Exchange.tsx +7 -15
- package/src/components/modal/components/Redeem/MyItems/Exchanges.tsx +0 -3
- package/src/components/modal/components/Redeem/MyItems/MyItems.tsx +0 -3
- package/src/components/modal/components/Redeem/MyItems/WithExchangesData.tsx +0 -1
- package/src/components/modal/components/Redeem/RedeemNonModal.tsx +0 -7
- package/src/components/productCard/ProductCard.styles.ts +58 -19
- package/src/components/productCard/ProductCard.tsx +30 -27
- package/src/components/productCard/commonStyles.ts +0 -1
- package/src/components/widgets/roblox/components/ProductsRoblox.tsx +14 -2
- package/src/components/widgets/roblox/components/RobloxExchangesGrid.tsx +5 -10
|
@@ -3,16 +3,16 @@ import React from "react";
|
|
|
3
3
|
import { BosonRobloxExchange, GetExchangesResponse } from "@bosonprotocol/roblox-sdk";
|
|
4
4
|
import { FetchNextPageOptions, InfiniteData, InfiniteQueryObserverResult, QueryObserverResult, RefetchOptions, RefetchQueryFilters } from "react-query";
|
|
5
5
|
export type RobloxExchangesGridProps = {
|
|
6
|
-
isLoading: boolean;
|
|
7
6
|
numProducts?: number;
|
|
8
7
|
itemsPerRow: GridContainerProps["itemsPerRow"];
|
|
9
8
|
raiseDisputeForExchangeUrl: string;
|
|
10
9
|
handleRequestShipment: (robloxExchange: BosonRobloxExchange) => void;
|
|
11
10
|
handleCancellation: (robloxExchange: BosonRobloxExchange) => void;
|
|
11
|
+
handleOnCardClick: (robloxExchange: BosonRobloxExchange) => void;
|
|
12
12
|
exchanges: BosonRobloxExchange[] | undefined;
|
|
13
13
|
fetchNextPage: (options?: FetchNextPageOptions) => Promise<InfiniteQueryObserverResult<GetExchangesResponse, unknown>>;
|
|
14
14
|
refetch: <TPageData>(options?: (RefetchOptions & RefetchQueryFilters<TPageData>) | undefined) => Promise<QueryObserverResult<InfiniteData<GetExchangesResponse>, unknown>>;
|
|
15
15
|
hasNextPage: boolean | undefined;
|
|
16
16
|
};
|
|
17
|
-
export declare const RobloxExchangesGrid: ({
|
|
17
|
+
export declare const RobloxExchangesGrid: ({ numProducts, itemsPerRow, raiseDisputeForExchangeUrl, exchanges, handleRequestShipment, handleOnCardClick, handleCancellation, fetchNextPage, refetch, hasNextPage }: RobloxExchangesGridProps) => React.JSX.Element;
|
|
18
18
|
//# sourceMappingURL=RobloxExchangesGrid.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RobloxExchangesGrid.d.ts","sourceRoot":"","sources":["../../../../../../src/components/widgets/roblox/components/RobloxExchangesGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAI9E,OAAO,KAAgC,MAAM,OAAO,CAAC;AAarD,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAInC,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,2BAA2B,EAC3B,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAwBrB,MAAM,MAAM,wBAAwB,GAAG;IACrC,
|
|
1
|
+
{"version":3,"file":"RobloxExchangesGrid.d.ts","sourceRoot":"","sources":["../../../../../../src/components/widgets/roblox/components/RobloxExchangesGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAI9E,OAAO,KAAgC,MAAM,OAAO,CAAC;AAarD,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAInC,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,2BAA2B,EAC3B,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAwBrB,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAC/C,0BAA0B,EAAE,MAAM,CAAC;IACnC,qBAAqB,EAAE,CAAC,cAAc,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACrE,kBAAkB,EAAE,CAAC,cAAc,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAClE,iBAAiB,EAAE,CAAC,cAAc,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACjE,SAAS,EAAE,mBAAmB,EAAE,GAAG,SAAS,CAAC;IAC7C,aAAa,EAAE,CACb,OAAO,CAAC,EAAE,oBAAoB,KAC3B,OAAO,CAAC,2BAA2B,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC,CAAC;IACzE,OAAO,EAAE,CAAC,SAAS,EACjB,OAAO,CAAC,EAAE,CAAC,cAAc,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS,KACpE,OAAO,CACV,mBAAmB,CAAC,YAAY,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC,CACjE,CAAC;IACF,WAAW,EAAE,OAAO,GAAG,SAAS,CAAC;CAClC,CAAC;AAEF,eAAO,MAAM,mBAAmB,2KAW7B,wBAAwB,sBA0J1B,CAAC"}
|
|
@@ -37,7 +37,7 @@ const TransparentSkeletonProductCard = styled(ProductCardSkeleton) `
|
|
|
37
37
|
height: 100%;
|
|
38
38
|
`;
|
|
39
39
|
const gap = "2rem";
|
|
40
|
-
export const RobloxExchangesGrid = ({
|
|
40
|
+
export const RobloxExchangesGrid = ({ numProducts, itemsPerRow, raiseDisputeForExchangeUrl, exchanges, handleRequestShipment, handleOnCardClick, handleCancellation, fetchNextPage, refetch, hasNextPage }) => {
|
|
41
41
|
const { address } = useAccount();
|
|
42
42
|
const { ipfsImageGateway } = useIpfsContext();
|
|
43
43
|
const [isNextLoading, setNextLoading] = useState(false);
|
|
@@ -88,11 +88,8 @@ export const RobloxExchangesGrid = ({ isLoading, numProducts, itemsPerRow, raise
|
|
|
88
88
|
handleRequestShipment(robloxExchange);
|
|
89
89
|
},
|
|
90
90
|
type: "button"
|
|
91
|
-
},
|
|
92
|
-
|
|
93
|
-
handleCancellation(robloxExchange);
|
|
94
|
-
},
|
|
95
|
-
type: "button"
|
|
91
|
+
}, onCardClick: () => {
|
|
92
|
+
handleOnCardClick(robloxExchange);
|
|
96
93
|
}, disputeButtonConfig: {
|
|
97
94
|
onClick: () => {
|
|
98
95
|
const raiseDisputeForExchangeUrlWithId = raiseDisputeForExchangeUrl?.replace("{id}", exchangeId || "");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RobloxExchangesGrid.js","sourceRoot":"","sources":["../../../../../../src/components/widgets/roblox/components/RobloxExchangesGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAsB,MAAM,2BAA2B,CAAC;AAC9E,OAAO,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EACL,mBAAmB,EACnB,WAAW,EACZ,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAKlE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AASlE,OAAO,cAAc,MAAM,iCAAiC,CAAC;AAC7D,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;CAKzB,CAAC;AACF,MAAM,gBAAgB,GAAG,GAAG,CAAA;;;;;;;CAO3B,CAAC;AACF,MAAM,uBAAuB,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;IAChD,gBAAgB;CACnB,CAAC;AACF,MAAM,8BAA8B,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAA;IAC9D,gBAAgB;;CAEnB,CAAC;AAoBF,MAAM,GAAG,GAAG,MAAM,CAAC;AACnB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAClC,
|
|
1
|
+
{"version":3,"file":"RobloxExchangesGrid.js","sourceRoot":"","sources":["../../../../../../src/components/widgets/roblox/components/RobloxExchangesGrid.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bosonprotocol/react-kit",
|
|
3
3
|
"description": "React toolkit with smart components and hooks for building on top of the Boson Protocol.",
|
|
4
|
-
"version": "0.37.0-alpha.
|
|
4
|
+
"version": "0.37.0-alpha.2",
|
|
5
5
|
"main": "./dist/cjs/index.js",
|
|
6
6
|
"module": "./dist/esm/index.js",
|
|
7
7
|
"types": "./dist/cjs/index.d.ts",
|
|
@@ -205,5 +205,5 @@
|
|
|
205
205
|
"overrides": {
|
|
206
206
|
"typescript": "^5.1.6"
|
|
207
207
|
},
|
|
208
|
-
"gitHead": "
|
|
208
|
+
"gitHead": "9db355a00d406cf8c3947d181eae307244a6c296"
|
|
209
209
|
}
|
|
@@ -1,19 +1,14 @@
|
|
|
1
1
|
import styled, { css } from "styled-components";
|
|
2
2
|
import { colors, getCssVar } from "../../theme";
|
|
3
3
|
import { ExchangeCardStatus } from "./types";
|
|
4
|
-
import {
|
|
4
|
+
import {
|
|
5
|
+
CTAOnHoverContainer,
|
|
6
|
+
ProductCardTitle
|
|
7
|
+
} from "../productCard/ProductCard.styles";
|
|
8
|
+
import { Grid } from "../ui/Grid";
|
|
5
9
|
|
|
6
10
|
const topSpace = "1rem";
|
|
7
11
|
const sideSpace = "1rem";
|
|
8
|
-
export const ExchangeCardLabelWrapper = styled(ProductCardLabelWrapper)`
|
|
9
|
-
top: ${topSpace};
|
|
10
|
-
left: ${sideSpace};
|
|
11
|
-
`;
|
|
12
|
-
export const ExchangeCreator = styled.div`
|
|
13
|
-
display: flex;
|
|
14
|
-
flex-wrap: wrap;
|
|
15
|
-
gap: 0.5rem;
|
|
16
|
-
`;
|
|
17
12
|
|
|
18
13
|
export const ExchangeCreatorAvatar = styled.div`
|
|
19
14
|
width: 1rem;
|
|
@@ -47,17 +42,18 @@ export const ExchangeTitle = styled.div`
|
|
|
47
42
|
word-break: break-word;
|
|
48
43
|
`;
|
|
49
44
|
|
|
50
|
-
export const ExchangeCardPriceWrapper = styled
|
|
51
|
-
display: flex;
|
|
52
|
-
flex-direction: column;
|
|
53
|
-
align-self: stretch;
|
|
54
|
-
max-width: 50%;
|
|
55
|
-
min-width: 44%;
|
|
45
|
+
export const ExchangeCardPriceWrapper = styled(Grid)`
|
|
56
46
|
span {
|
|
57
47
|
padding-left: 0.5rem;
|
|
58
48
|
}
|
|
59
49
|
`;
|
|
60
50
|
|
|
51
|
+
export const ExchangeCardTitleWrapper = styled(Grid)`
|
|
52
|
+
width: 100%;
|
|
53
|
+
box-sizing: border-box;
|
|
54
|
+
align-items: flex-start;
|
|
55
|
+
`;
|
|
56
|
+
|
|
61
57
|
export const ExchangeCardPrice = styled.div`
|
|
62
58
|
font-size: 0.75rem;
|
|
63
59
|
line-height: 150%;
|
|
@@ -68,7 +64,7 @@ export const ExchangeCardPrice = styled.div`
|
|
|
68
64
|
|
|
69
65
|
export const ExchangeCarData = styled.div`
|
|
70
66
|
display: flex;
|
|
71
|
-
|
|
67
|
+
width: 100%;
|
|
72
68
|
`;
|
|
73
69
|
|
|
74
70
|
export const ExchangeCardBottom = styled.div`
|
|
@@ -103,10 +99,8 @@ export const ExchangeCardWrapper = styled.div<{
|
|
|
103
99
|
isolation: isolate;
|
|
104
100
|
width: 100%;
|
|
105
101
|
min-height: 31.25rem;
|
|
106
|
-
border: 1px solid rgba(85, 96, 114, 0.15);
|
|
107
|
-
box-shadow: 0px 4.31783px 107.946px rgba(21, 30, 52, 0.1);
|
|
108
102
|
cursor: pointer;
|
|
109
|
-
background: ${getCssVar("--background-
|
|
103
|
+
background: ${getCssVar("--background-color")};
|
|
110
104
|
[data-image-wrapper] {
|
|
111
105
|
position: static;
|
|
112
106
|
padding-top: 0;
|
|
@@ -160,7 +154,6 @@ export const ExchangeCardTop = styled.div<{ $isNotImageLoaded: boolean }>`
|
|
|
160
154
|
`;
|
|
161
155
|
export const ExchangeButtonWrapper = styled.div`
|
|
162
156
|
width: 100%;
|
|
163
|
-
border-top: 1px solid rgba(85, 96, 114, 0.15);
|
|
164
157
|
align-items: center;
|
|
165
158
|
`;
|
|
166
159
|
|
|
@@ -181,10 +174,24 @@ export const CommittedButtonWrapper = styled.div`
|
|
|
181
174
|
|
|
182
175
|
export const ExchangeStatus = styled.div<{
|
|
183
176
|
$status: ExchangeCardStatus;
|
|
177
|
+
$side: "left" | "right";
|
|
184
178
|
}>`
|
|
185
179
|
position: absolute;
|
|
186
180
|
top: ${topSpace};
|
|
187
|
-
|
|
181
|
+
${({ $side }) => {
|
|
182
|
+
switch ($side) {
|
|
183
|
+
case "left": {
|
|
184
|
+
return css`
|
|
185
|
+
left: ${sideSpace};
|
|
186
|
+
`;
|
|
187
|
+
}
|
|
188
|
+
case "right": {
|
|
189
|
+
return css`
|
|
190
|
+
right: ${sideSpace};
|
|
191
|
+
`;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
}}
|
|
188
195
|
z-index: 10;
|
|
189
196
|
letter-spacing: 0.5px;
|
|
190
197
|
line-height: 16px;
|
|
@@ -236,3 +243,14 @@ export const ExchangeCTAWrapper = styled.div`
|
|
|
236
243
|
transition: all 0.4s ease-out;
|
|
237
244
|
max-height: 0;
|
|
238
245
|
`;
|
|
246
|
+
|
|
247
|
+
export const ExchangeCardTitle = styled(ProductCardTitle)`
|
|
248
|
+
width: 100%;
|
|
249
|
+
white-space: normal;
|
|
250
|
+
`;
|
|
251
|
+
|
|
252
|
+
export const CTAOnHoverContainerExchangeCard = styled(CTAOnHoverContainer)`
|
|
253
|
+
left: 50%;
|
|
254
|
+
transform: translate(-50%, 0);
|
|
255
|
+
margin-bottom: 1rem;
|
|
256
|
+
`;
|
|
@@ -9,28 +9,27 @@ import { IBaseImage, Image } from "../image/Image";
|
|
|
9
9
|
import { ProductType } from "../productCard/const";
|
|
10
10
|
import { IButton } from "../ui/ThemedButton";
|
|
11
11
|
import {
|
|
12
|
-
|
|
12
|
+
CTAOnHoverContainerExchangeCard,
|
|
13
13
|
CommittedButtonWrapper,
|
|
14
14
|
ExchangeButtonWrapper,
|
|
15
15
|
ExchangeCTAWrapper,
|
|
16
16
|
ExchangeCarData,
|
|
17
17
|
ExchangeCardBottom,
|
|
18
18
|
ExchangeCardBottomContent,
|
|
19
|
-
ExchangeCardLabelWrapper,
|
|
20
|
-
ExchangeCardPrice,
|
|
21
19
|
ExchangeCardPriceWrapper,
|
|
20
|
+
ExchangeCardTitle,
|
|
21
|
+
ExchangeCardTitleWrapper,
|
|
22
22
|
ExchangeCardTop,
|
|
23
23
|
ExchangeCardWrapper,
|
|
24
|
-
ExchangeCreator,
|
|
25
|
-
ExchangeCreatorAvatar,
|
|
26
|
-
ExchangeCreatorName,
|
|
27
24
|
ExchangeImageWrapper,
|
|
28
25
|
ExchangeStatus,
|
|
29
|
-
ExchangeTitle,
|
|
30
26
|
RedeemButtonWrapper
|
|
31
27
|
} from "./ExchangeCard.styles";
|
|
32
28
|
import { ExchangeCardStatus } from "./types";
|
|
33
29
|
import { subgraph } from "@bosonprotocol/core-sdk";
|
|
30
|
+
|
|
31
|
+
import { Grid } from "../ui/Grid";
|
|
32
|
+
import { PhygitalLabel } from "../productCard/ProductCard";
|
|
34
33
|
export type { ExchangeCardStatus } from "./types";
|
|
35
34
|
interface Base {
|
|
36
35
|
id: string;
|
|
@@ -64,7 +63,6 @@ interface CancelledCard extends Base {
|
|
|
64
63
|
interface CommittedCard extends Base {
|
|
65
64
|
status: subgraph.ExchangeState.COMMITTED;
|
|
66
65
|
redeemButtonConfig: IButton;
|
|
67
|
-
cancelButtonConfig: IButton;
|
|
68
66
|
bottomText?: string;
|
|
69
67
|
}
|
|
70
68
|
|
|
@@ -95,8 +93,6 @@ export const ExchangeCard = (props: ExchangeCardProps) => {
|
|
|
95
93
|
imageProps,
|
|
96
94
|
price,
|
|
97
95
|
currency,
|
|
98
|
-
avatar,
|
|
99
|
-
avatarName,
|
|
100
96
|
onCardClick,
|
|
101
97
|
status,
|
|
102
98
|
isCTAVisible = true,
|
|
@@ -110,7 +106,7 @@ export const ExchangeCard = (props: ExchangeCardProps) => {
|
|
|
110
106
|
} = props;
|
|
111
107
|
|
|
112
108
|
const [isImageLoaded, setIsImageLoaded] = useState(false);
|
|
113
|
-
|
|
109
|
+
const [isHovered, setIsHovered] = useState(false);
|
|
114
110
|
const exchangeCardBottom = useMemo(() => {
|
|
115
111
|
if (isCTAVisible) {
|
|
116
112
|
switch (status) {
|
|
@@ -136,7 +132,7 @@ export const ExchangeCard = (props: ExchangeCardProps) => {
|
|
|
136
132
|
);
|
|
137
133
|
}
|
|
138
134
|
case subgraph.ExchangeState.COMMITTED: {
|
|
139
|
-
const { redeemButtonConfig
|
|
135
|
+
const { redeemButtonConfig } = props;
|
|
140
136
|
return (
|
|
141
137
|
<ExchangeButtonWrapper>
|
|
142
138
|
<CommittedButtonWrapper>
|
|
@@ -152,20 +148,7 @@ export const ExchangeCard = (props: ExchangeCardProps) => {
|
|
|
152
148
|
>
|
|
153
149
|
Redeem
|
|
154
150
|
</Button>
|
|
155
|
-
<Button
|
|
156
|
-
variant="secondaryInverted"
|
|
157
|
-
{...cancelButtonConfig}
|
|
158
|
-
onClick={(
|
|
159
|
-
e: React.MouseEvent<HTMLButtonElement, MouseEvent>
|
|
160
|
-
) => {
|
|
161
|
-
e.stopPropagation();
|
|
162
|
-
cancelButtonConfig?.onClick?.(e);
|
|
163
|
-
}}
|
|
164
|
-
>
|
|
165
|
-
Cancel
|
|
166
|
-
</Button>
|
|
167
151
|
</CommittedButtonWrapper>
|
|
168
|
-
<CommittedBottomText>{bottomText}</CommittedBottomText>
|
|
169
152
|
</ExchangeButtonWrapper>
|
|
170
153
|
);
|
|
171
154
|
}
|
|
@@ -183,6 +166,8 @@ export const ExchangeCard = (props: ExchangeCardProps) => {
|
|
|
183
166
|
data-card={dataCard}
|
|
184
167
|
$isHoverDisabled={isHoverDisabled}
|
|
185
168
|
data-testid={dataTestId}
|
|
169
|
+
onMouseEnter={() => setIsHovered(true)}
|
|
170
|
+
onMouseLeave={() => setIsHovered(false)}
|
|
186
171
|
onClick={(e) => {
|
|
187
172
|
e.preventDefault();
|
|
188
173
|
onCardClick?.(id);
|
|
@@ -190,12 +175,22 @@ export const ExchangeCard = (props: ExchangeCardProps) => {
|
|
|
190
175
|
>
|
|
191
176
|
<ExchangeCardTop $isNotImageLoaded={isNotImageLoaded}>
|
|
192
177
|
<ExchangeImageWrapper>
|
|
193
|
-
{isPhygital && (
|
|
194
|
-
<ExchangeCardLabelWrapper>Phygital</ExchangeCardLabelWrapper>
|
|
195
|
-
)}
|
|
196
178
|
<Image {...imageProps} onLoaded={() => setIsImageLoaded(true)} />
|
|
179
|
+
{isCTAVisible && isConnected && (
|
|
180
|
+
<CTAOnHoverContainerExchangeCard $isHovered={isHovered}>
|
|
181
|
+
{isCTAVisible && isConnected ? (
|
|
182
|
+
<ExchangeCTAWrapper data-cta-wrapper>
|
|
183
|
+
{exchangeCardBottom}
|
|
184
|
+
</ExchangeCTAWrapper>
|
|
185
|
+
) : isCTAVisible && !isConnected && CTAIfDisconnected ? (
|
|
186
|
+
CTAIfDisconnected
|
|
187
|
+
) : null}
|
|
188
|
+
</CTAOnHoverContainerExchangeCard>
|
|
189
|
+
)}
|
|
197
190
|
</ExchangeImageWrapper>
|
|
198
|
-
<ExchangeStatus $status={status}>
|
|
191
|
+
<ExchangeStatus $status={status} $side="left">
|
|
192
|
+
{status.toLowerCase()}
|
|
193
|
+
</ExchangeStatus>
|
|
199
194
|
</ExchangeCardTop>
|
|
200
195
|
<div style={{ height: height + "px" }} />
|
|
201
196
|
<ExchangeCardBottom>
|
|
@@ -209,41 +204,42 @@ export const ExchangeCard = (props: ExchangeCardProps) => {
|
|
|
209
204
|
}}
|
|
210
205
|
>
|
|
211
206
|
<ExchangeCarData>
|
|
212
|
-
<
|
|
207
|
+
<Grid
|
|
208
|
+
flexDirection="column"
|
|
209
|
+
alignItems="flex-start"
|
|
213
210
|
onClick={(e) => {
|
|
214
211
|
e.stopPropagation();
|
|
215
212
|
onAvatarNameClick?.();
|
|
216
213
|
}}
|
|
217
214
|
>
|
|
218
|
-
<
|
|
219
|
-
<
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
215
|
+
<ExchangeCardTitleWrapper>
|
|
216
|
+
<ExchangeCardTitle fontSize={"0.75rem"} fontWeight={"600"}>
|
|
217
|
+
{title}
|
|
218
|
+
</ExchangeCardTitle>
|
|
219
|
+
<ExchangeCardPriceWrapper
|
|
220
|
+
justifyContent="flex-end"
|
|
221
|
+
alignItems="center"
|
|
222
|
+
width="40%"
|
|
223
|
+
>
|
|
224
|
+
<CurrencyDisplay
|
|
225
|
+
value={price}
|
|
226
|
+
currency={currency}
|
|
227
|
+
fontSize={"0.875rem"}
|
|
228
|
+
iconSize={16}
|
|
229
|
+
gap={"0.3125rem"}
|
|
230
|
+
style={{
|
|
231
|
+
wordBreak: "break-all",
|
|
232
|
+
alignItems: "center",
|
|
233
|
+
justifyContent: "center",
|
|
234
|
+
fontWeight: "600"
|
|
235
|
+
}}
|
|
236
|
+
/>
|
|
237
|
+
</ExchangeCardPriceWrapper>
|
|
238
|
+
</ExchangeCardTitleWrapper>
|
|
239
|
+
{isPhygital && <PhygitalLabel />}
|
|
240
|
+
</Grid>
|
|
226
241
|
</ExchangeCarData>
|
|
227
|
-
<ExchangeCardPriceWrapper>
|
|
228
|
-
<ExchangeCardPrice>Price</ExchangeCardPrice>
|
|
229
|
-
<CurrencyDisplay
|
|
230
|
-
value={price}
|
|
231
|
-
currency={currency}
|
|
232
|
-
style={{
|
|
233
|
-
wordBreak: "break-all",
|
|
234
|
-
alignItems: "flex-start",
|
|
235
|
-
justifyContent: "flex-end"
|
|
236
|
-
}}
|
|
237
|
-
/>
|
|
238
|
-
</ExchangeCardPriceWrapper>
|
|
239
242
|
</ExchangeCardBottomContent>
|
|
240
|
-
{isCTAVisible && isConnected ? (
|
|
241
|
-
<ExchangeCTAWrapper data-cta-wrapper>
|
|
242
|
-
{exchangeCardBottom}
|
|
243
|
-
</ExchangeCTAWrapper>
|
|
244
|
-
) : isCTAVisible && !isConnected && CTAIfDisconnected ? (
|
|
245
|
-
CTAIfDisconnected
|
|
246
|
-
) : null}
|
|
247
243
|
</ExchangeCardBottom>
|
|
248
244
|
</ExchangeCardWrapper>
|
|
249
245
|
);
|
|
@@ -7,7 +7,6 @@ import ReactSelect, {
|
|
|
7
7
|
SingleValue,
|
|
8
8
|
ActionMeta,
|
|
9
9
|
Props as ReactSelectProps,
|
|
10
|
-
PropsValue,
|
|
11
10
|
CSSObjectWithLabel
|
|
12
11
|
} from "react-select";
|
|
13
12
|
import { CSSProperties } from "react";
|
|
@@ -208,7 +207,10 @@ export function Select<
|
|
|
208
207
|
isMulti,
|
|
209
208
|
...props
|
|
210
209
|
}: SelectProps<Option, IsMulti, Group>) {
|
|
211
|
-
const [field, meta, helpers] =
|
|
210
|
+
const [field, meta, helpers] =
|
|
211
|
+
useField<IsMulti extends true ? MultiValue<Option> : SingleValue<Option>>(
|
|
212
|
+
name
|
|
213
|
+
);
|
|
212
214
|
|
|
213
215
|
const displayErrorMessage =
|
|
214
216
|
meta.error && meta.touched && !errorMessage
|
|
@@ -261,7 +263,7 @@ export function Select<
|
|
|
261
263
|
isMulti={isMulti}
|
|
262
264
|
placeholder={placeholder}
|
|
263
265
|
options={options}
|
|
264
|
-
value={field.value
|
|
266
|
+
value={field.value}
|
|
265
267
|
onChange={handleChange}
|
|
266
268
|
onBlur={handleBlur}
|
|
267
269
|
isSearchable={isSearchable}
|
|
@@ -355,7 +355,10 @@ export default function InnerCommitDetailView(
|
|
|
355
355
|
priceSibling={
|
|
356
356
|
status === "success" ? (
|
|
357
357
|
// TODO: if exchange is in a different state what do we do?
|
|
358
|
-
<ExchangeStatus
|
|
358
|
+
<ExchangeStatus
|
|
359
|
+
$status={subgraph.ExchangeState.COMMITTED}
|
|
360
|
+
$side="right"
|
|
361
|
+
>
|
|
359
362
|
{labelValueToText[LabelType.purchased]}
|
|
360
363
|
</ExchangeStatus>
|
|
361
364
|
) : (
|
|
@@ -4,7 +4,10 @@ import { useMemo } from "react";
|
|
|
4
4
|
import styled from "styled-components";
|
|
5
5
|
import mockedAvatar from "../../../../../assets/frame.png";
|
|
6
6
|
|
|
7
|
-
import {
|
|
7
|
+
import {
|
|
8
|
+
ExchangeCard,
|
|
9
|
+
ExchangeCardProps
|
|
10
|
+
} from "../../../../exchangeCard/ExchangeCard";
|
|
8
11
|
import { Currencies } from "../../../../currencyDisplay/CurrencyDisplay";
|
|
9
12
|
import { exchanges } from "@bosonprotocol/core-sdk";
|
|
10
13
|
import { colors } from "../../../../../theme";
|
|
@@ -31,7 +34,6 @@ interface Props {
|
|
|
31
34
|
exchange: ExtendedExchange;
|
|
32
35
|
onCardClick: (exchange: IExchange) => void;
|
|
33
36
|
onRedeemClick: (exchange: IExchange) => void;
|
|
34
|
-
onCancelExchangeClick: (exchange: IExchange) => void;
|
|
35
37
|
onRaiseDisputeClick: (exchange: IExchange) => void;
|
|
36
38
|
onAvatarClick: (exchange: IExchange) => void;
|
|
37
39
|
}
|
|
@@ -56,7 +58,6 @@ export default function Exchange({
|
|
|
56
58
|
exchange,
|
|
57
59
|
onRedeemClick,
|
|
58
60
|
onCardClick,
|
|
59
|
-
onCancelExchangeClick,
|
|
60
61
|
onRaiseDisputeClick,
|
|
61
62
|
onAvatarClick
|
|
62
63
|
}: Props) {
|
|
@@ -122,12 +123,6 @@ export default function Exchange({
|
|
|
122
123
|
const handleRedeem = () => {
|
|
123
124
|
onRedeemClick(exchange);
|
|
124
125
|
};
|
|
125
|
-
const handleCancel = () => {
|
|
126
|
-
if (!exchange) {
|
|
127
|
-
return;
|
|
128
|
-
}
|
|
129
|
-
onCancelExchangeClick(exchange);
|
|
130
|
-
};
|
|
131
126
|
return {
|
|
132
127
|
status: "COMMITTED" as Extract<ExchangeCardStatus, "COMMITTED">,
|
|
133
128
|
isCTAVisible: isBuyer,
|
|
@@ -136,13 +131,10 @@ export default function Exchange({
|
|
|
136
131
|
onClick: handleRedeem,
|
|
137
132
|
type: "button",
|
|
138
133
|
disabled: isInWrongChain
|
|
139
|
-
} as const,
|
|
140
|
-
cancelButtonConfig: {
|
|
141
|
-
onClick: handleCancel,
|
|
142
|
-
type: "button",
|
|
143
|
-
disabled: isInWrongChain
|
|
144
134
|
} as const
|
|
145
|
-
}
|
|
135
|
+
} satisfies Partial<
|
|
136
|
+
Extract<ExchangeCardProps, { status: "COMMITTED" }>
|
|
137
|
+
>;
|
|
146
138
|
}
|
|
147
139
|
default:
|
|
148
140
|
return {
|
|
@@ -6,7 +6,6 @@ import { ProductGridContainer } from "./ProfilePage.styles";
|
|
|
6
6
|
interface Props {
|
|
7
7
|
onCardClick: (exchange: IExchange) => void;
|
|
8
8
|
onRedeemClick: (exchange: IExchange) => void;
|
|
9
|
-
onCancelExchangeClick: (exchange: IExchange) => void;
|
|
10
9
|
onRaiseDisputeClick: (exchange: IExchange) => void;
|
|
11
10
|
onAvatarClick: (exchange: IExchange) => void;
|
|
12
11
|
exchanges: ExtendedExchange[];
|
|
@@ -15,7 +14,6 @@ interface Props {
|
|
|
15
14
|
export default function Exchanges({
|
|
16
15
|
onRedeemClick,
|
|
17
16
|
exchanges,
|
|
18
|
-
onCancelExchangeClick,
|
|
19
17
|
onRaiseDisputeClick,
|
|
20
18
|
onCardClick,
|
|
21
19
|
onAvatarClick
|
|
@@ -38,7 +36,6 @@ export default function Exchanges({
|
|
|
38
36
|
exchange={exchange}
|
|
39
37
|
onRedeemClick={onRedeemClick}
|
|
40
38
|
onCardClick={onCardClick}
|
|
41
|
-
onCancelExchangeClick={onCancelExchangeClick}
|
|
42
39
|
onRaiseDisputeClick={onRaiseDisputeClick}
|
|
43
40
|
onAvatarClick={onAvatarClick}
|
|
44
41
|
/>
|
|
@@ -16,7 +16,6 @@ import { BosonLogo } from "../../common/BosonLogo";
|
|
|
16
16
|
export type MyItemsProps = {
|
|
17
17
|
onExchangeCardClick: (exchange: Exchange) => void;
|
|
18
18
|
onRedeemClick: (exchange: Exchange) => void;
|
|
19
|
-
onCancelExchange: (exchange: Exchange) => void;
|
|
20
19
|
onRaiseDisputeClick: (exchange: Exchange) => void;
|
|
21
20
|
onAvatarClick: (exchange: Exchange) => void;
|
|
22
21
|
isValid: boolean;
|
|
@@ -30,7 +29,6 @@ const ExchangesWithData = WithExchangesData(Exchanges);
|
|
|
30
29
|
export function MyItems({
|
|
31
30
|
onRedeemClick,
|
|
32
31
|
onExchangeCardClick,
|
|
33
|
-
onCancelExchange,
|
|
34
32
|
onRaiseDisputeClick,
|
|
35
33
|
onAvatarClick,
|
|
36
34
|
sellerIds,
|
|
@@ -100,7 +98,6 @@ export function MyItems({
|
|
|
100
98
|
{...values}
|
|
101
99
|
onCardClick={onExchangeCardClick}
|
|
102
100
|
onRedeemClick={onRedeemClick}
|
|
103
|
-
onCancelExchangeClick={onCancelExchange}
|
|
104
101
|
onRaiseDisputeClick={onRaiseDisputeClick}
|
|
105
102
|
onAvatarClick={onAvatarClick}
|
|
106
103
|
/>
|
|
@@ -20,7 +20,6 @@ const orderProps = {
|
|
|
20
20
|
interface CommonProps {
|
|
21
21
|
onCardClick: (exchange: Exchange) => void;
|
|
22
22
|
onRedeemClick: (exchange: Exchange) => void;
|
|
23
|
-
onCancelExchangeClick: (exchange: Exchange) => void;
|
|
24
23
|
onRaiseDisputeClick: (exchange: Exchange) => void;
|
|
25
24
|
onAvatarClick: (exchange: Exchange) => void;
|
|
26
25
|
}
|
|
@@ -87,7 +87,6 @@ export type RedeemNonModalProps = Pick<
|
|
|
87
87
|
hideModal?: NonModalProps["hideModal"];
|
|
88
88
|
myItemsOnExchangeCardClick?: MyItemsProps["onExchangeCardClick"];
|
|
89
89
|
myItemsOnRedeemClick?: MyItemsProps["onRedeemClick"];
|
|
90
|
-
myItemsOnCancelExchange?: MyItemsProps["onCancelExchange"];
|
|
91
90
|
myItemsOnRaiseDisputeClick?: MyItemsProps["onRaiseDisputeClick"];
|
|
92
91
|
myItemsOnAvatarClick?: MyItemsProps["onAvatarClick"];
|
|
93
92
|
onExchangePolicyClick?: ExchangeViewProps["onExchangePolicyClick"];
|
|
@@ -161,7 +160,6 @@ function RedeemNonModal({
|
|
|
161
160
|
raiseDisputeForExchangeUrl,
|
|
162
161
|
myItemsOnExchangeCardClick,
|
|
163
162
|
myItemsOnRedeemClick,
|
|
164
|
-
myItemsOnCancelExchange,
|
|
165
163
|
myItemsOnRaiseDisputeClick,
|
|
166
164
|
myItemsOnAvatarClick,
|
|
167
165
|
onExchangePolicyClick,
|
|
@@ -403,11 +401,6 @@ function RedeemNonModal({
|
|
|
403
401
|
setExchange(exchange);
|
|
404
402
|
myItemsOnRedeemClick?.(exchange);
|
|
405
403
|
}}
|
|
406
|
-
onCancelExchange={(exchange) => {
|
|
407
|
-
setActiveStep(ActiveStep.CANCELLATION_VIEW);
|
|
408
|
-
setExchange(exchange);
|
|
409
|
-
myItemsOnCancelExchange?.(exchange);
|
|
410
|
-
}}
|
|
411
404
|
isValid={isRedeemFormOK}
|
|
412
405
|
onRaiseDisputeClick={(exchange) => {
|
|
413
406
|
setExchange(exchange);
|