From ed2a1919531b0074e099453cf72849954e2329bc Mon Sep 17 00:00:00 2001 From: Ludovic Levalleux Date: Thu, 21 Sep 2023 16:48:13 +0100 Subject: [PATCH] feat: pass forcedAccount property to redemption widget --- package-lock.json | 102 +++++++++++------------ package.json | 2 +- public/scripts/boson-widgets.js | 15 +++- src/components/widgets/redeem/Redeem.tsx | 2 + 4 files changed, 65 insertions(+), 56 deletions(-) diff --git a/package-lock.json b/package-lock.json index 53b4419..3ac222a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "name": "widgets", "version": "0.1.0", "dependencies": { - "@bosonprotocol/react-kit": "^0.20.0-alpha.19", + "@bosonprotocol/react-kit": "^0.20.0-alpha.22", "@testing-library/jest-dom": "^5.16.5", "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", @@ -2147,11 +2147,11 @@ } }, "node_modules/@bosonprotocol/common": { - "version": "1.23.0-alpha.19", - "resolved": "https://registry.npmjs.org/@bosonprotocol/common/-/common-1.23.0-alpha.19.tgz", - "integrity": "sha512-UBgqDWzEoQoAebunVUTYy3GDDGRXpxaSUgmcf79eGaRfVMpkxBYylLG/zu4N659dBoLkrtlh1zIY1PGsWfKOqw==", + "version": "1.23.0-alpha.22", + "resolved": "https://registry.npmjs.org/@bosonprotocol/common/-/common-1.23.0-alpha.22.tgz", + "integrity": "sha512-HcIt9lZv2pLtm2kp+OSJfdYDQS48rLXP6j/DlxwrnH+DFKjBM5yGTFDByf0gKitzpVQZ+j1eV8Kl4+8KSD6emw==", "dependencies": { - "@bosonprotocol/metadata": "^1.12.2-alpha.13", + "@bosonprotocol/metadata": "^1.12.2-alpha.16", "@ethersproject/abi": "^5.5.0", "@ethersproject/address": "^5.5.0", "@ethersproject/bignumber": "^5.5.0", @@ -2161,11 +2161,11 @@ } }, "node_modules/@bosonprotocol/core-sdk": { - "version": "1.30.0-alpha.19", - "resolved": "https://registry.npmjs.org/@bosonprotocol/core-sdk/-/core-sdk-1.30.0-alpha.19.tgz", - "integrity": "sha512-Nvzn8uATFYtyJeWrEQpPnzUvBiQ5oveaMal0/4ApHrwkYfwX49mvd9zWe4S7z2zm3yseI+pvx8+PE7l0loC2XA==", + "version": "1.30.0-alpha.22", + "resolved": "https://registry.npmjs.org/@bosonprotocol/core-sdk/-/core-sdk-1.30.0-alpha.22.tgz", + "integrity": "sha512-cMOAhMdv+B0KIA1h20NfEAGw9QazsQa3eURM/pPdpygSjmkgdDkWKbmxkEbL8l19of4z1+g5XSHYH/uxLOx2YA==", "dependencies": { - "@bosonprotocol/common": "^1.23.0-alpha.19", + "@bosonprotocol/common": "^1.23.0-alpha.22", "@ethersproject/abi": "^5.5.0", "@ethersproject/address": "^5.5.0", "@ethersproject/bignumber": "^5.5.0", @@ -2194,44 +2194,44 @@ } }, "node_modules/@bosonprotocol/ethers-sdk": { - "version": "1.12.7-alpha.19", - "resolved": "https://registry.npmjs.org/@bosonprotocol/ethers-sdk/-/ethers-sdk-1.12.7-alpha.19.tgz", - "integrity": "sha512-x6g+Bgibmar2m5bGD8EAJavpBfvY5lQE49rXFt144Wqrj2pOgv3hcaiuqQ50aVOaZutkgPW+eMQz2ufOLI5Hag==", + "version": "1.12.7-alpha.22", + "resolved": "https://registry.npmjs.org/@bosonprotocol/ethers-sdk/-/ethers-sdk-1.12.7-alpha.22.tgz", + "integrity": "sha512-ii/0AyL/nvx0N2/0oZVwXAIP1wZypl6aeslEcBQmJ/hEu4dIK7d8zZ5dLu9USKa35CspmMFNYBlOF9jHvJlbiw==", "dependencies": { - "@bosonprotocol/common": "^1.23.0-alpha.19" + "@bosonprotocol/common": "^1.23.0-alpha.22" }, "peerDependencies": { "ethers": "^5.5.0" } }, "node_modules/@bosonprotocol/ipfs-storage": { - "version": "1.10.9-alpha.13", - "resolved": "https://registry.npmjs.org/@bosonprotocol/ipfs-storage/-/ipfs-storage-1.10.9-alpha.13.tgz", - "integrity": "sha512-kmKQRGdD0IVnuTDES5fraitaMKWibcoKLaWQQhojxj2QgMfb3bBa1rFHlO2otlu54GenwuXXx+nSWqABT/0DkA==", + "version": "1.10.9-alpha.16", + "resolved": "https://registry.npmjs.org/@bosonprotocol/ipfs-storage/-/ipfs-storage-1.10.9-alpha.16.tgz", + "integrity": "sha512-FSpurORwfZwlY78ceK/2teSZ6fWr2HxKYtcArie6ew9kCNRRbXRmSPzet/mYSiv2GA2wGg4gFmiTC9AVeToFIg==", "dependencies": { - "@bosonprotocol/metadata": "^1.12.2-alpha.13", + "@bosonprotocol/metadata": "^1.12.2-alpha.16", "ipfs-http-client": "^56.0.1", "multiformats": "^9.6.4", "uint8arrays": "^3.0.0" } }, "node_modules/@bosonprotocol/metadata": { - "version": "1.12.2-alpha.13", - "resolved": "https://registry.npmjs.org/@bosonprotocol/metadata/-/metadata-1.12.2-alpha.13.tgz", - "integrity": "sha512-WxYGqoaewRM8dd4uOzQBE1NinqPeuHChKNsPsvCWcadNCke3EN2pra3bGLwxLyela5sUhrw02JDFjIQ0BXq6ZQ==", + "version": "1.12.2-alpha.16", + "resolved": "https://registry.npmjs.org/@bosonprotocol/metadata/-/metadata-1.12.2-alpha.16.tgz", + "integrity": "sha512-ggKQEwAmfC7nY6y2A7QmgQvYJgE8UZXp8nvT/33eq8uj0/3zE1Q4zdIsXS6Ne/zDS5MQF0/srRttcJL4hBLJrA==", "dependencies": { "schema-to-yup": "^1.11.11" } }, "node_modules/@bosonprotocol/react-kit": { - "version": "0.20.0-alpha.19", - "resolved": "https://registry.npmjs.org/@bosonprotocol/react-kit/-/react-kit-0.20.0-alpha.19.tgz", - "integrity": "sha512-NOWxVCFT67dejVzOC9oFr2ZfZcBc6PMwbdINm5fI9GWGAmY1YodgesvfP79YZONlnueiItUMResdznI3z0TX9w==", + "version": "0.20.0-alpha.22", + "resolved": "https://registry.npmjs.org/@bosonprotocol/react-kit/-/react-kit-0.20.0-alpha.22.tgz", + "integrity": "sha512-eLaagHih9wryXHaz1fhxnFpSjHBNEFMr/BybpBjHqTG1V61p7uoFtGIeIYaaewpsHXQpqlmphikEYmg+6RQCiw==", "dependencies": { "@bosonprotocol/chat-sdk": "^1.3.1-alpha.9", - "@bosonprotocol/core-sdk": "^1.30.0-alpha.19", - "@bosonprotocol/ethers-sdk": "^1.12.7-alpha.19", - "@bosonprotocol/ipfs-storage": "^1.10.9-alpha.13", + "@bosonprotocol/core-sdk": "^1.30.0-alpha.22", + "@bosonprotocol/ethers-sdk": "^1.12.7-alpha.22", + "@bosonprotocol/ipfs-storage": "^1.10.9-alpha.16", "@davatar/react": "1.11.1", "@ethersproject/units": "5.6.0", "@glidejs/glide": "3.6.0", @@ -30618,11 +30618,11 @@ } }, "@bosonprotocol/common": { - "version": "1.23.0-alpha.19", - "resolved": "https://registry.npmjs.org/@bosonprotocol/common/-/common-1.23.0-alpha.19.tgz", - "integrity": "sha512-UBgqDWzEoQoAebunVUTYy3GDDGRXpxaSUgmcf79eGaRfVMpkxBYylLG/zu4N659dBoLkrtlh1zIY1PGsWfKOqw==", + "version": "1.23.0-alpha.22", + "resolved": "https://registry.npmjs.org/@bosonprotocol/common/-/common-1.23.0-alpha.22.tgz", + "integrity": "sha512-HcIt9lZv2pLtm2kp+OSJfdYDQS48rLXP6j/DlxwrnH+DFKjBM5yGTFDByf0gKitzpVQZ+j1eV8Kl4+8KSD6emw==", "requires": { - "@bosonprotocol/metadata": "^1.12.2-alpha.13", + "@bosonprotocol/metadata": "^1.12.2-alpha.16", "@ethersproject/abi": "^5.5.0", "@ethersproject/address": "^5.5.0", "@ethersproject/bignumber": "^5.5.0", @@ -30632,11 +30632,11 @@ } }, "@bosonprotocol/core-sdk": { - "version": "1.30.0-alpha.19", - "resolved": "https://registry.npmjs.org/@bosonprotocol/core-sdk/-/core-sdk-1.30.0-alpha.19.tgz", - "integrity": "sha512-Nvzn8uATFYtyJeWrEQpPnzUvBiQ5oveaMal0/4ApHrwkYfwX49mvd9zWe4S7z2zm3yseI+pvx8+PE7l0loC2XA==", + "version": "1.30.0-alpha.22", + "resolved": "https://registry.npmjs.org/@bosonprotocol/core-sdk/-/core-sdk-1.30.0-alpha.22.tgz", + "integrity": "sha512-cMOAhMdv+B0KIA1h20NfEAGw9QazsQa3eURM/pPdpygSjmkgdDkWKbmxkEbL8l19of4z1+g5XSHYH/uxLOx2YA==", "requires": { - "@bosonprotocol/common": "^1.23.0-alpha.19", + "@bosonprotocol/common": "^1.23.0-alpha.22", "@ethersproject/abi": "^5.5.0", "@ethersproject/address": "^5.5.0", "@ethersproject/bignumber": "^5.5.0", @@ -30664,41 +30664,41 @@ } }, "@bosonprotocol/ethers-sdk": { - "version": "1.12.7-alpha.19", - "resolved": "https://registry.npmjs.org/@bosonprotocol/ethers-sdk/-/ethers-sdk-1.12.7-alpha.19.tgz", - "integrity": "sha512-x6g+Bgibmar2m5bGD8EAJavpBfvY5lQE49rXFt144Wqrj2pOgv3hcaiuqQ50aVOaZutkgPW+eMQz2ufOLI5Hag==", + "version": "1.12.7-alpha.22", + "resolved": "https://registry.npmjs.org/@bosonprotocol/ethers-sdk/-/ethers-sdk-1.12.7-alpha.22.tgz", + "integrity": "sha512-ii/0AyL/nvx0N2/0oZVwXAIP1wZypl6aeslEcBQmJ/hEu4dIK7d8zZ5dLu9USKa35CspmMFNYBlOF9jHvJlbiw==", "requires": { - "@bosonprotocol/common": "^1.23.0-alpha.19" + "@bosonprotocol/common": "^1.23.0-alpha.22" } }, "@bosonprotocol/ipfs-storage": { - "version": "1.10.9-alpha.13", - "resolved": "https://registry.npmjs.org/@bosonprotocol/ipfs-storage/-/ipfs-storage-1.10.9-alpha.13.tgz", - "integrity": "sha512-kmKQRGdD0IVnuTDES5fraitaMKWibcoKLaWQQhojxj2QgMfb3bBa1rFHlO2otlu54GenwuXXx+nSWqABT/0DkA==", + "version": "1.10.9-alpha.16", + "resolved": "https://registry.npmjs.org/@bosonprotocol/ipfs-storage/-/ipfs-storage-1.10.9-alpha.16.tgz", + "integrity": "sha512-FSpurORwfZwlY78ceK/2teSZ6fWr2HxKYtcArie6ew9kCNRRbXRmSPzet/mYSiv2GA2wGg4gFmiTC9AVeToFIg==", "requires": { - "@bosonprotocol/metadata": "^1.12.2-alpha.13", + "@bosonprotocol/metadata": "^1.12.2-alpha.16", "ipfs-http-client": "^56.0.1", "multiformats": "^9.6.4", "uint8arrays": "^3.0.0" } }, "@bosonprotocol/metadata": { - "version": "1.12.2-alpha.13", - "resolved": "https://registry.npmjs.org/@bosonprotocol/metadata/-/metadata-1.12.2-alpha.13.tgz", - "integrity": "sha512-WxYGqoaewRM8dd4uOzQBE1NinqPeuHChKNsPsvCWcadNCke3EN2pra3bGLwxLyela5sUhrw02JDFjIQ0BXq6ZQ==", + "version": "1.12.2-alpha.16", + "resolved": "https://registry.npmjs.org/@bosonprotocol/metadata/-/metadata-1.12.2-alpha.16.tgz", + "integrity": "sha512-ggKQEwAmfC7nY6y2A7QmgQvYJgE8UZXp8nvT/33eq8uj0/3zE1Q4zdIsXS6Ne/zDS5MQF0/srRttcJL4hBLJrA==", "requires": { "schema-to-yup": "^1.11.11" } }, "@bosonprotocol/react-kit": { - "version": "0.20.0-alpha.19", - "resolved": "https://registry.npmjs.org/@bosonprotocol/react-kit/-/react-kit-0.20.0-alpha.19.tgz", - "integrity": "sha512-NOWxVCFT67dejVzOC9oFr2ZfZcBc6PMwbdINm5fI9GWGAmY1YodgesvfP79YZONlnueiItUMResdznI3z0TX9w==", + "version": "0.20.0-alpha.22", + "resolved": "https://registry.npmjs.org/@bosonprotocol/react-kit/-/react-kit-0.20.0-alpha.22.tgz", + "integrity": "sha512-eLaagHih9wryXHaz1fhxnFpSjHBNEFMr/BybpBjHqTG1V61p7uoFtGIeIYaaewpsHXQpqlmphikEYmg+6RQCiw==", "requires": { "@bosonprotocol/chat-sdk": "^1.3.1-alpha.9", - "@bosonprotocol/core-sdk": "^1.30.0-alpha.19", - "@bosonprotocol/ethers-sdk": "^1.12.7-alpha.19", - "@bosonprotocol/ipfs-storage": "^1.10.9-alpha.13", + "@bosonprotocol/core-sdk": "^1.30.0-alpha.22", + "@bosonprotocol/ethers-sdk": "^1.12.7-alpha.22", + "@bosonprotocol/ipfs-storage": "^1.10.9-alpha.16", "@davatar/react": "1.11.1", "@ethersproject/units": "5.6.0", "@glidejs/glide": "3.6.0", diff --git a/package.json b/package.json index e6bfe72..0221f73 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "version": "0.1.0", "private": true, "dependencies": { - "@bosonprotocol/react-kit": "^0.20.0-alpha.19", + "@bosonprotocol/react-kit": "^0.20.0-alpha.22", "@testing-library/jest-dom": "^5.16.5", "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", diff --git a/public/scripts/boson-widgets.js b/public/scripts/boson-widgets.js index d072d77..723a0dd 100644 --- a/public/scripts/boson-widgets.js +++ b/public/scripts/boson-widgets.js @@ -15,6 +15,7 @@ const constants = { redeemCallbackHeaders: "data-redeem-callback-headers", sellerIdTag: "data-seller-id", configIdTag: "data-config-id", + accountTag: "data-account", hideModalId: "boson-hide-modal", hideModalMessage: "boson-close-iframe", financeUrl: (widgetsHost) => `${widgetsHost}/#/finance`, @@ -94,9 +95,11 @@ function bosonWidgetReload() { showFinanceId.onclick = function () { const sellerId = showFinanceId.attributes[constants.sellerIdTag]?.value; const configId = showFinanceId.attributes[constants.configIdTag]?.value; + const account = showFinanceId.attributes[constants.accountTag]?.value; bosonWidgetShowFinance({ sellerId, - configId + configId, + account }); }; } @@ -119,12 +122,14 @@ function bosonWidgetReload() { const redeemCallbackHeaders = showRedeemId.attributes[constants.redeemCallbackHeaders]?.value; const configId = showRedeemId.attributes[constants.configIdTag]?.value; + const account = showRedeemId.attributes[constants.accountTag]?.value; bosonWidgetShowRedeem({ exchangeId, bypassMode, redeemCallbackUrl, redeemCallbackHeaders, - configId + configId, + account }); }; } @@ -143,7 +148,8 @@ function bosonWidgetShowRedeem(args) { { tag: "bypassMode", value: args.bypassMode }, { tag: "redeemCallbackUrl", value: args.redeemCallbackUrl }, { tag: "redeemCallbackHeaders", value: args.redeemCallbackHeaders }, - { tag: "configId", value: args.configId } + { tag: "configId", value: args.configId }, + { tag: "account", value: args.account } ]); showLoading(); hideIFrame(); @@ -156,7 +162,8 @@ function bosonWidgetShowRedeem(args) { function bosonWidgetShowFinance(args) { const params = buildParams([ { tag: "sellerId", value: args.sellerId }, - { tag: "configId", value: args.configId } + { tag: "configId", value: args.configId }, + { tag: "account", value: args.account } ]); showLoading(constants.loadingDurationMSec); hideIFrame(); diff --git a/src/components/widgets/redeem/Redeem.tsx b/src/components/widgets/redeem/Redeem.tsx index 94c8621..628c9ee 100644 --- a/src/components/widgets/redeem/Redeem.tsx +++ b/src/components/widgets/redeem/Redeem.tsx @@ -32,11 +32,13 @@ export function Redeem() { if (!configId) { return

Missing 'configId' query param

; } + const account = searchParams.get("account") as string; return (