diff --git a/libs/widget-lib/src/cowSwapWidget.ts b/libs/widget-lib/src/cowSwapWidget.ts index d48fff6555..173c68c135 100644 --- a/libs/widget-lib/src/cowSwapWidget.ts +++ b/libs/widget-lib/src/cowSwapWidget.ts @@ -10,6 +10,14 @@ const COW_SWAP_WIDGET_EVENT_KEY = 'cowSwapWidget' const DEFAULT_HEIGHT = '640px' const DEFAULT_WIDTH = '450px' +/** + * Reference: IframeResizer (apps/cowswap-frontend/src/modules/injectedWidget/updaters/IframeResizer.ts) + * Sometimes MutationObserver doesn't trigger when the height of the widget changes and the widget displays with a scrollbar. + * To avoid this we add a threshold to the height. + * 20px + */ +const HEIGHT_THRESHOLD = 20 + /** * Callback function signature for updating the CoW Swap Widget. */ @@ -126,6 +134,6 @@ function applyDynamicHeight(iframe: HTMLIFrameElement, defaultHeight = DEFAULT_H return } - iframe.style.height = event.data.height ? `${event.data.height}px` : defaultHeight + iframe.style.height = event.data.height ? `${event.data.height + HEIGHT_THRESHOLD}px` : defaultHeight }) } diff --git a/package.json b/package.json index 9fa965d81e..a221cdb1c2 100644 --- a/package.json +++ b/package.json @@ -89,9 +89,9 @@ "@safe-global/protocol-kit": "^1.2.0", "@safe-global/safe-core-sdk-types": "^2.2.0", "@safe-global/safe-ethers-lib": "^1.9.4", - "@sentry/react": "^7.64.0", - "@sentry/tracing": "^7.3.0", - "@sentry/webpack-plugin": "^1.17.1", + "@sentry/react": "^7.80.0", + "@sentry/tracing": "^7.80.0", + "@sentry/webpack-plugin": "^2.10.0", "@swc/helpers": "~0.5.0", "@tanstack/react-virtual": "^3.0.0-beta.65", "@trezor/connect-plugin-ethereum": "^9.0.1", diff --git a/yarn.lock b/yarn.lock index 0938ec129d..31657349f5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4620,16 +4620,6 @@ "@noble/hashes" "~1.3.0" "@scure/base" "~1.1.0" -"@sentry-internal/tracing@7.60.1": - version "7.60.1" - resolved "https://registry.yarnpkg.com/@sentry-internal/tracing/-/tracing-7.60.1.tgz#c20766a7e31589962ffe9ea9dc58b6f475432303" - integrity sha512-2vM+3/ddzmoBfi92OOD9FFTHXf0HdQhKtNM26+/RsmkKnTid+/inbvA7nKi+Qa7ExcnlC6eclEHQEg+0X3yDkQ== - dependencies: - "@sentry/core" "7.60.1" - "@sentry/types" "7.60.1" - "@sentry/utils" "7.60.1" - tslib "^2.4.1 || ^1.9.3" - "@sentry-internal/tracing@7.64.0": version "7.64.0" resolved "https://registry.yarnpkg.com/@sentry-internal/tracing/-/tracing-7.64.0.tgz#3e110473b8edf805b799cc91d6ee592830237bb4" @@ -4640,17 +4630,39 @@ "@sentry/utils" "7.64.0" tslib "^2.4.1 || ^1.9.3" -"@sentry/browser@7.64.0": - version "7.64.0" - resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-7.64.0.tgz#76db08a5d32ffe7c5aa907f258e6c845ce7f10d7" - integrity sha512-lB2IWUkZavEDclxfLBp554dY10ZNIEvlDZUWWathW+Ws2wRb6PNLtuPUNu12R7Q7z0xpkOLrM1kRNN0OdldgKA== +"@sentry-internal/tracing@7.80.0": + version "7.80.0" + resolved "https://registry.yarnpkg.com/@sentry-internal/tracing/-/tracing-7.80.0.tgz#f9a6c0456b3cbf4a53c986a0b9208572d80e0756" + integrity sha512-P1Ab9gamHLsbH9D82i1HY8xfq9dP8runvc4g50AAd6OXRKaJ45f2KGRZUmnMEVqBQ7YoPYp2LFMkrhNYbcZEoQ== dependencies: - "@sentry-internal/tracing" "7.64.0" - "@sentry/core" "7.64.0" - "@sentry/replay" "7.64.0" - "@sentry/types" "7.64.0" - "@sentry/utils" "7.64.0" - tslib "^2.4.1 || ^1.9.3" + "@sentry/core" "7.80.0" + "@sentry/types" "7.80.0" + "@sentry/utils" "7.80.0" + +"@sentry/browser@7.80.0": + version "7.80.0" + resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-7.80.0.tgz#385fb59ac1d52b67919087f3d7044575ae0abbdd" + integrity sha512-Ngwjc+yyf/aH5q7iQM1LeDNlhM1Ilt4ZLUogTghZR/guwNWmCtk3OHcjOLz7fxBBj9wGFUc2pHPyeYM6bQhrEw== + dependencies: + "@sentry-internal/tracing" "7.80.0" + "@sentry/core" "7.80.0" + "@sentry/replay" "7.80.0" + "@sentry/types" "7.80.0" + "@sentry/utils" "7.80.0" + +"@sentry/bundler-plugin-core@2.10.0": + version "2.10.0" + resolved "https://registry.yarnpkg.com/@sentry/bundler-plugin-core/-/bundler-plugin-core-2.10.0.tgz#2f866ffe4a4cd1983897c5eac6d7823ec954d678" + integrity sha512-bjcYvMrCQgqTiRRkWGNpeZ7EJOu0JQFYj+rrcQpwaVO+ll1eWNGW1nNveU+8vpnXrlaIAvieBxCrcCj5V9y1+Q== + dependencies: + "@sentry/cli" "^2.21.2" + "@sentry/node" "^7.60.0" + "@sentry/utils" "^7.60.0" + dotenv "^16.3.1" + find-up "5.0.0" + glob "9.3.2" + magic-string "0.27.0" + unplugin "1.0.1" "@sentry/bundler-plugin-core@2.7.0": version "2.7.0" @@ -4666,22 +4678,21 @@ magic-string "0.27.0" unplugin "1.0.1" -"@sentry/cli@^1.75.1": - version "1.75.2" - resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-1.75.2.tgz#2c38647b38300e52c9839612d42b7c23f8d6455b" - integrity sha512-CG0CKH4VCKWzEaegouWfCLQt9SFN+AieFESCatJ7zSuJmzF05ywpMusjxqRul6lMwfUhRKjGKOzcRJ1jLsfTBw== +"@sentry/cli@^2.20.1": + version "2.20.5" + resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-2.20.5.tgz#255a5388ca24c211a0eae01dcc4ad813a7ff335a" + integrity sha512-ZvWb86eF0QXH9C5Mbi87aUmr8SH848yEpXJmlM2AoBowpE9kKDnewCAKvyXUihojUFwCSEEjoJhrRMMgmCZqXA== dependencies: https-proxy-agent "^5.0.0" - mkdirp "^0.5.5" node-fetch "^2.6.7" progress "^2.0.3" proxy-from-env "^1.1.0" which "^2.0.2" -"@sentry/cli@^2.20.1": - version "2.20.5" - resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-2.20.5.tgz#255a5388ca24c211a0eae01dcc4ad813a7ff335a" - integrity sha512-ZvWb86eF0QXH9C5Mbi87aUmr8SH848yEpXJmlM2AoBowpE9kKDnewCAKvyXUihojUFwCSEEjoJhrRMMgmCZqXA== +"@sentry/cli@^2.21.2": + version "2.21.3" + resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-2.21.3.tgz#2d06411af8163b187d9c52e0fd59892443098dd9" + integrity sha512-gv8SNaMVNggiE/+6fPxEj8+y5uj9PqAQ8QS277aZ/HSXFgoidnNecE4QGHh4n+AkT0qCSQ/byxZsojVXkwkC7g== dependencies: https-proxy-agent "^5.0.0" node-fetch "^2.6.7" @@ -4689,15 +4700,6 @@ proxy-from-env "^1.1.0" which "^2.0.2" -"@sentry/core@7.60.1": - version "7.60.1" - resolved "https://registry.yarnpkg.com/@sentry/core/-/core-7.60.1.tgz#789ebb2ba6808042e8c288f6881b82ff108c9c7c" - integrity sha512-yr/0VFYWOJyXj+F2nifkRYxXskotsNnDggUnFOZZN2ZgTG94IzRFsOZQ6RslHJ8nrYPTBNO74reU0C0GB++xRw== - dependencies: - "@sentry/types" "7.60.1" - "@sentry/utils" "7.60.1" - tslib "^2.4.1 || ^1.9.3" - "@sentry/core@7.64.0": version "7.64.0" resolved "https://registry.yarnpkg.com/@sentry/core/-/core-7.64.0.tgz#9d61cdc29ba299dedbdcbe01cfadf94bd0b7df48" @@ -4707,6 +4709,14 @@ "@sentry/utils" "7.64.0" tslib "^2.4.1 || ^1.9.3" +"@sentry/core@7.80.0": + version "7.80.0" + resolved "https://registry.yarnpkg.com/@sentry/core/-/core-7.80.0.tgz#7b8a460c19160b81ade20080333189f1a80c1410" + integrity sha512-nJiiymdTSEyI035/rdD3VOq6FlOZ2wWLR5bit9LK8a3rzHU3UXkwScvEo6zYgs0Xp1sC0yu1S9+0BEiYkmi29A== + dependencies: + "@sentry/types" "7.80.0" + "@sentry/utils" "7.80.0" + "@sentry/node@^7.60.0": version "7.64.0" resolved "https://registry.yarnpkg.com/@sentry/node/-/node-7.64.0.tgz#c6f7a67c1442324298f0525e7191bc18572ee1ce" @@ -4721,50 +4731,42 @@ lru_map "^0.3.3" tslib "^2.4.1 || ^1.9.3" -"@sentry/react@^7.64.0": - version "7.64.0" - resolved "https://registry.yarnpkg.com/@sentry/react/-/react-7.64.0.tgz#edee24ac232990204e0fb43dd83994642d4b0f54" - integrity sha512-wOyJUQi7OoT1q+F/fVVv1fzbyO4OYbTu6m1DliLOGQPGEHPBsgPc722smPIExd1/rAMK/FxOuNN5oNhubH8nhg== +"@sentry/react@^7.80.0": + version "7.80.0" + resolved "https://registry.yarnpkg.com/@sentry/react/-/react-7.80.0.tgz#ee589ff202174ced45e77dc2714237031ca9c726" + integrity sha512-xoX7fqgY0NZR9Fud/IJ4a3b8Z/HsdwU5SLILi46lV+CWaXS6eFM1E81jG2Vd2EeYIpkH+bMA//XHMEod8LAJcQ== dependencies: - "@sentry/browser" "7.64.0" - "@sentry/types" "7.64.0" - "@sentry/utils" "7.64.0" + "@sentry/browser" "7.80.0" + "@sentry/types" "7.80.0" + "@sentry/utils" "7.80.0" hoist-non-react-statics "^3.3.2" - tslib "^2.4.1 || ^1.9.3" -"@sentry/replay@7.64.0": - version "7.64.0" - resolved "https://registry.yarnpkg.com/@sentry/replay/-/replay-7.64.0.tgz#bdf09b0c4712f9dc6b24b3ebefa55a4ac76708e6" - integrity sha512-alaMCZDZhaAVmEyiUnszZnvfdbiZx5MmtMTGrlDd7tYq3K5OA9prdLqqlmfIJYBfYtXF3lD0iZFphOZQD+4CIw== +"@sentry/replay@7.80.0": + version "7.80.0" + resolved "https://registry.yarnpkg.com/@sentry/replay/-/replay-7.80.0.tgz#0626d85af1d8573038d52ae9e244e3e95fa47385" + integrity sha512-wWnpuJq3OaDLp1LutE4oxWXnau04fvwuzBjuaFvOXOV+pB/kn+pDPuVOC5+FH/RMRZ5ftwX5+dF6fojfcLVGCg== dependencies: - "@sentry/core" "7.64.0" - "@sentry/types" "7.64.0" - "@sentry/utils" "7.64.0" + "@sentry-internal/tracing" "7.80.0" + "@sentry/core" "7.80.0" + "@sentry/types" "7.80.0" + "@sentry/utils" "7.80.0" -"@sentry/tracing@^7.3.0": - version "7.60.1" - resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-7.60.1.tgz#099002f81cfe2cc629290b7b9328c3c3feff78de" - integrity sha512-yzjbFaaOPeMERD5GPaBdKQRihznluYO7O24y0hznROPGOVNozwPX8JZgX0plOfSmCttjYjDwRrIo9nFFpzFhtw== +"@sentry/tracing@^7.80.0": + version "7.80.0" + resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-7.80.0.tgz#730cba2e27606b2c27ae0a3a91a053c9b050ae68" + integrity sha512-y9zBVMpCgY5Y6dBZrnKKHf6K9YWjGo3S35tPwDV1mQLml64bi6bNr6Fc6OBzXyrl9OTJAO71A1Z7DlAu6BQY9w== dependencies: - "@sentry-internal/tracing" "7.60.1" - -"@sentry/types@7.60.1": - version "7.60.1" - resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.60.1.tgz#2f8740db56ae4cae87523ae7a0daf753308496f0" - integrity sha512-8lKKSCOhZ953cWxwnfZwoR3ZFFlZG4P3PQFTaFt/u4LxLh/0zYbdtgvtUqXRURjMCi5P6ddeE9Uw9FGnTJCsTw== + "@sentry-internal/tracing" "7.80.0" "@sentry/types@7.64.0": version "7.64.0" resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.64.0.tgz#21fc545ea05c3c8c4c3e518583eca1a8c5429506" integrity sha512-LqjQprWXjUFRmzIlUjyA+KL+38elgIYmAeoDrdyNVh8MK5IC1W2Lh1Q87b4yOiZeMiIhIVNBd7Ecoh2rodGrGA== -"@sentry/utils@7.60.1": - version "7.60.1" - resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-7.60.1.tgz#27b20bd2926c877011eb39fcb4b2db95dc72243f" - integrity sha512-ik+5sKGBx4DWuvf6UUKPSafaDiASxP+Xvjg3C9ppop2I/JWxP1FfZ5g22n5ZmPmNahD6clTSoTWly8qyDUlUOw== - dependencies: - "@sentry/types" "7.60.1" - tslib "^2.4.1 || ^1.9.3" +"@sentry/types@7.80.0": + version "7.80.0" + resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.80.0.tgz#f6896de2d231a7f8d814cf1c981c474240e96d8a" + integrity sha512-4bpMO+2jWiWLDa8zbTASWWNLWe6yhjfPsa7/6VH5y9x1NGtL8oRbqUsTgsvjF3nmeHEMkHQsC8NHPaQ/ibFmZQ== "@sentry/utils@7.64.0", "@sentry/utils@^7.60.0": version "7.64.0" @@ -4774,6 +4776,13 @@ "@sentry/types" "7.64.0" tslib "^2.4.1 || ^1.9.3" +"@sentry/utils@7.80.0": + version "7.80.0" + resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-7.80.0.tgz#5bd682fa9a382eea952d4fa3628f0f33e4240ff3" + integrity sha512-XbBCEl6uLvE50ftKwrEo6XWdDaZXHXu+kkHXTPWQEcnbvfZKLuG9V0Hxtxxq3xQgyWmuF05OH1GcqYqiO+v5Yg== + dependencies: + "@sentry/types" "7.80.0" + "@sentry/vite-plugin@^2.7.0": version "2.7.0" resolved "https://registry.yarnpkg.com/@sentry/vite-plugin/-/vite-plugin-2.7.0.tgz#b219f2a1d8e52f0737a0083a0a2302b60d409654" @@ -4782,13 +4791,14 @@ "@sentry/bundler-plugin-core" "2.7.0" unplugin "1.0.1" -"@sentry/webpack-plugin@^1.17.1": - version "1.20.1" - resolved "https://registry.yarnpkg.com/@sentry/webpack-plugin/-/webpack-plugin-1.20.1.tgz#e70a2fe516f3a39a132acfa841e4f2ea2a1cecd2" - integrity sha512-klOLkfM/oSYzcR2M9oDmJA5/Mdaw0Mtck/h820Z+gqpd6WJepjhqVDel1z2VddaP/XMY0Dj6elCGp2/nDWNr0w== +"@sentry/webpack-plugin@^2.10.0": + version "2.10.0" + resolved "https://registry.yarnpkg.com/@sentry/webpack-plugin/-/webpack-plugin-2.10.0.tgz#72edbeeb41a4722c5ce569be74e4350219616d32" + integrity sha512-Fy4KntCK2qFjOQrg/jRd3ZIKw6grwtZfAKR3wYuxyn7IpfFcZn6ABEPnCPVWDTA/180yU/jsTFHLFImPzLFyng== dependencies: - "@sentry/cli" "^1.75.1" - webpack-sources "^2.0.0 || ^3.0.0" + "@sentry/bundler-plugin-core" "2.10.0" + unplugin "1.0.1" + uuid "^9.0.0" "@sinclair/typebox@^0.24.1": version "0.24.51" @@ -23923,11 +23933,6 @@ webpack-sources@^1.4.3: source-list-map "^2.0.0" source-map "~0.6.1" -"webpack-sources@^2.0.0 || ^3.0.0", webpack-sources@^3.2.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" - integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== - webpack-sources@^2.2.0: version "2.3.1" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-2.3.1.tgz#570de0af163949fe272233c2cefe1b56f74511fd" @@ -23936,6 +23941,11 @@ webpack-sources@^2.2.0: source-list-map "^2.0.1" source-map "^0.6.1" +webpack-sources@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" + integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== + webpack-virtual-modules@^0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/webpack-virtual-modules/-/webpack-virtual-modules-0.5.0.tgz#362f14738a56dae107937ab98ea7062e8bdd3b6c"