rainbow-me / rainbow

🌈‒ the Ethereum wallet that lives in your pocket
https://rainbow.me
GNU General Public License v3.0
3.97k stars 630 forks source link

Zeego MintsFilter migration #6126

Closed walmat closed 2 months ago

walmat commented 2 months ago

Fixes APP-1510 Fixes APP-1797 Fixes APP-1691

What changed (plus any additional context for devs)

There is a lot of noise in this PR because of the need for Expo Modules for react-native-ios-context-menu.

This PR adds the initial work of implementing Zeego dropdown menus. We're doing this to provide consistency between iOS and Android when it comes to dropdown menus. Right now we're using ActionSheets a lot on Android and incrementally we are hoping to reduce that number down to zero.

For this PR, we are adding one entry point in the MintsFilter Menu component.

Screen recordings / screenshots

iOS

Screenshot 2024-09-24 at 4 48 33 PM

Android

// coming soon

What to test

test that all other context menus are unaffected and the mints filter still works

linear[bot] commented 2 months ago

APP-1510 Replace Context Menus With Zeego

APP-1797 Context menu platform differences

socket-security[bot] commented 2 months ago

New and removed dependencies detected. Learn more about Socket for GitHub ↗︎

Package New capabilities Transitives Size Publisher
npm/@babel/plugin-proposal-decorators@7.24.7 None 0 107 kB nicolo-ribaudo
npm/@babel/plugin-syntax-decorators@7.24.7 None 0 78.5 kB nicolo-ribaudo
npm/@expo/bunyan@4.0.1 filesystem 0 139 kB philpl
npm/@expo/cli@0.18.29 environment, filesystem, network, shell, unsafe 0 8.7 MB brentvatne
npm/@expo/code-signing-certificates@0.0.5 None 0 55 kB wschurman
npm/@expo/config-plugins@8.0.8 filesystem 0 1.1 MB brentvatne
npm/@expo/config-types@51.0.2 None 0 48.1 kB brentvatne
npm/@expo/config@9.0.3 environment, filesystem 0 151 kB brentvatne
npm/@expo/devcert@1.1.4 environment, filesystem, shell 0 218 kB philpl
npm/@expo/env@0.3.0 environment, filesystem 0 29.6 kB brentvatne
npm/@expo/image-utils@0.5.1 filesystem 0 76.2 kB brentvatne
npm/@expo/metro-config@0.18.11 environment, eval, filesystem 0 275 kB brentvatne
npm/@expo/osascript@2.1.3 None 0 16.2 kB bycedric
npm/@expo/package-manager@1.5.2 environment, filesystem, network, shell 0 98.8 kB brentvatne
npm/@expo/prebuild-config@7.0.8 filesystem 0 381 kB brentvatne
npm/@expo/rudder-sdk-node@1.1.1 None 0 36.2 kB expoadmin
npm/@expo/vector-icons@14.0.3 None 0 5.76 MB brentvatne
npm/@expo/xcpretty@4.3.1 environment, filesystem 0 307 kB evanbacon
npm/@floating-ui/core@1.6.8 None 0 213 kB atomiks, fezvrasta
npm/@floating-ui/dom@1.6.11 None 0 160 kB atomiks, fezvrasta
npm/@floating-ui/react-dom@2.1.2 None 0 61.5 kB atomiks
npm/@floating-ui/utils@0.2.8 None 0 64 kB atomiks
npm/@radix-ui/primitive@1.1.0 None 0 4.96 kB vladmoroz
npm/@radix-ui/react-arrow@1.1.0 None 0 9.2 kB vladmoroz
npm/@radix-ui/react-collection@1.1.0 None 0 26.2 kB vladmoroz
npm/@radix-ui/react-compose-refs@1.1.0 None 0 7.78 kB vladmoroz
npm/@radix-ui/react-context-menu@2.2.1 None 0 108 kB vladmoroz
npm/@radix-ui/react-context@1.1.0 None 0 28.2 kB vladmoroz
npm/@radix-ui/react-direction@1.1.0 None 0 7.85 kB vladmoroz
npm/@radix-ui/react-dismissable-layer@1.1.0 None 0 66.1 kB vladmoroz
npm/@radix-ui/react-dropdown-menu@2.1.1 None 0 106 kB vladmoroz
npm/@radix-ui/react-focus-guards@1.1.0 None 0 9.76 kB vladmoroz
npm/@radix-ui/react-focus-scope@1.1.0 None 0 60.3 kB vladmoroz
npm/@radix-ui/react-id@1.1.0 None 0 6.42 kB vladmoroz
npm/@radix-ui/react-menu@2.1.1 None 0 246 kB vladmoroz
npm/@radix-ui/react-popper@1.2.0 None 0 75.3 kB vladmoroz
npm/@radix-ui/react-portal@1.1.1 None 0 10.3 kB vladmoroz
npm/@radix-ui/react-presence@1.1.0 None 0 33.2 kB vladmoroz
npm/@radix-ui/react-primitive@2.0.0 None 0 20.9 kB vladmoroz
npm/@radix-ui/react-roving-focus@1.1.0 None 0 64.2 kB vladmoroz
npm/@radix-ui/react-slot@1.1.0 None 0 25.4 kB vladmoroz
npm/@radix-ui/react-use-callback-ref@1.1.0 None 0 6.12 kB vladmoroz
npm/@radix-ui/react-use-controllable-state@1.1.0 None 0 12.3 kB vladmoroz
npm/@radix-ui/react-use-escape-keydown@1.1.0 None 0 7.53 kB vladmoroz
npm/@radix-ui/react-use-layout-effect@1.1.0 None 0 5.82 kB vladmoroz
npm/@radix-ui/react-use-rect@1.1.0 None 0 6.58 kB vladmoroz
npm/@radix-ui/react-use-size@1.1.0 None 0 11.4 kB vladmoroz
npm/@radix-ui/rect@1.1.0 None 0 16.1 kB vladmoroz
npm/@react-native-menu/menu@1.1.3 None 0 163 kB naturalclar
npm/@segment/loosely-validate-event@2.0.0 None 0 133 kB f2prateek
npm/@urql/core@2.3.6 environment, network 0 400 kB npm-urql
npm/@urql/exchange-retry@0.3.0 environment 0 39.6 kB npm-urql
npm/any-promise@1.3.0 None 0 22.2 kB kevinbeaty
npm/application-config-path@0.1.1 environment 0 3.57 kB linusu
npm/arg@5.0.2 None 0 13.7 kB leerobinson
npm/aria-hidden@1.2.4 None 0 30.6 kB kashey
npm/babel-plugin-react-compiler@0.0.0 None 0 223 B sugarpirate
npm/babel-plugin-react-native-web@0.19.12 None 0 17.2 kB necolas
npm/babel-preset-expo@11.0.14 environment 0 77.1 kB brentvatne
npm/better-opn@3.0.2 environment, shell 0 287 kB exiasr
npm/bplist-creator@0.0.7 None 0 53.4 kB joeferner
npm/builtins@1.0.3 None 0 2.7 kB juliangruber
npm/clone@2.1.2 None 0 15.9 kB pvorb
npm/component-type@1.2.2 None 0 120 kB sindresorhus
npm/crypto-random-string@1.0.0 None 0 3.48 kB sindresorhus
npm/dag-map@1.0.2 None 0 49.6 kB chadhietala
npm/default-gateway@4.2.0 None 0 14.9 kB silverwind
npm/define-lazy-prop@2.0.0 None 0 4.45 kB sindresorhus
npm/del@6.1.1 None 0 12.7 kB sindresorhus
npm/detect-node-es@1.1.0 None 0 3.21 kB kashey
npm/dotenv-expand@11.0.6 None 0 18.2 kB motdotla
npm/env-editor@0.4.2 environment 0 8.47 kB sindresorhus
npm/eol@0.9.1 None 0 12.4 kB ryanve
npm/exec-async@2.2.0 shell 0 4.32 kB exponent
npm/expo-asset@10.0.10 None 0 158 kB tsapeta
npm/expo-constants@16.0.2 None 0 112 kB brentvatne
npm/expo-file-system@17.0.1 None 0 303 kB brentvatne
npm/expo-font@12.0.10 None 0 139 kB gabrieldonadel
npm/expo-keep-awake@13.0.2 None 0 50.1 kB brentvatne
npm/expo-modules-autolinking@1.11.2 environment, filesystem, unsafe 0 377 kB brentvatne
npm/expo-modules-core@1.12.24 None 0 1.65 MB alanhughes, aleqsio, betoatexpo, ...24 more
npm/expo@51.0.33 environment 0 231 kB tsapeta
npm/fbemitter@3.0.0 environment 0 21.8 kB yangshun
npm/fetch-retry@4.1.1 network 0 46.5 kB jonbern
npm/fontfaceobserver@2.3.0 None 0 33.9 kB bramstein
npm/freeport-async@2.0.0 network 0 6.89 kB fson
npm/get-nonce@1.0.1 None 0 5.26 kB kashey
npm/get-port@3.2.0 network 0 3.35 kB sindresorhus
npm/hosted-git-info@3.0.8 None 0 26.4 kB nlf
npm/internal-ip@4.3.0 None 0 5.73 kB sindresorhus
npm/ip-regex@2.1.0 None 0 4.73 kB sindresorhus
npm/ipaddr.js@1.9.1 None 0 42.1 kB whitequark
npm/is-invalid-path@0.1.0 None 0 4.7 kB jonschlinkert
npm/is-path-cwd@2.2.0 None 0 2.76 kB sindresorhus
npm/is-path-inside@3.0.3 None 0 4.12 kB sindresorhus
npm/is-valid-path@0.1.1 None 0 8.82 kB jonschlinkert
npm/jimp-compact@0.16.1 environment, eval, filesystem, network 0 539 kB nuxt.bot
npm/join-component@1.1.0 None 0 3.38 kB tjholowaychuk
npm/json-schema-deref-sync@0.13.0 filesystem 0 23.2 kB bojand
npm/lightningcss-darwin-arm64@1.19.0 None 0 7.26 MB devongovett
npm/lightningcss-darwin-x64@1.19.0 None 0 9.12 MB devongovett
npm/lightningcss-linux-arm-gnueabihf@1.19.0 None 0 7.79 MB devongovett
npm/lightningcss-linux-arm64-gnu@1.19.0 None 0 7.37 MB devongovett
npm/lightningcss-linux-arm64-musl@1.19.0 None 0 7.38 MB devongovett
npm/lightningcss-linux-x64-gnu@1.19.0 None 0 9.03 MB devongovett
npm/lightningcss-linux-x64-musl@1.19.0 None 0 9.03 MB devongovett
npm/lightningcss-win32-x64-msvc@1.19.0 None 0 8.41 MB devongovett
npm/lightningcss@1.19.0 environment 0 454 kB devongovett
npm/md5-file@3.2.3 filesystem 0 4.56 kB linusu
npm/md5@2.2.1 None 0 12.9 kB pvorb
npm/md5hex@1.0.0 None 0 3.78 kB ccheever
npm/memory-cache@0.2.0 None 0 36.7 kB ptarjan
npm/mz@2.7.0 filesystem, network, shell 0 9.77 kB jongleberry
npm/nested-error-stacks@2.0.1 None 0 5.38 kB mdlavin
npm/npm-package-arg@7.0.0 None 0 16.2 kB isaacs
npm/open@8.4.2 environment, filesystem, shell 0 46.3 kB sindresorhus
npm/os-homedir@1.0.2 environment 0 3.15 kB sindresorhus
npm/osenv@0.1.5 environment, shell 0 4.89 kB isaacs
npm/parse-png@2.1.0 None 0 3.85 kB kevva
npm/password-prompt@1.1.3 environment 0 4.9 kB dickeyxxx
npm/postcss@8.4.47 environment, filesystem 0 200 kB ai
npm/pretty-bytes@5.6.0 None 0 11.5 kB sindresorhus
npm/qrcode-terminal@0.11.0 None 0 95.8 kB mwbrooks
npm/react-native-safe-area-context@4.11.0 None 0 239 kB janicduplessis
npm/react-remove-scroll-bar@2.3.6 None 0 25 kB kashey
npm/react-remove-scroll@2.5.7 None 0 78.6 kB kashey
npm/react-style-singleton@2.2.1 None 0 18.3 kB kashey
npm/remove-trailing-slash@0.1.1 None 0 1.94 kB stephenmathieson
npm/requireg@0.2.2 environment, filesystem, shell 0 53.6 kB h2non
npm/sf-symbols-typescript@2.0.0 None 0 178 kB fernandorojo
npm/source-map-js@1.2.1 None 0 140 kB 7rulnik
npm/structured-headers@0.4.1 None 0 94.4 kB evrt
npm/sucrase@3.34.0 None 0 1.14 MB alangpierce
npm/sudo-prompt@9.1.1 filesystem, shell 0 46 kB jorandirkgreef
npm/tempy@0.3.0 filesystem 0 5.95 kB sindresorhus
npm/thenify-all@1.6.0 None 0 6.59 kB dead_horse
npm/thenify@3.3.1 None 0 7.92 kB dead_horse
npm/traverse@0.6.10 None 0 85.5 kB ljharb
npm/ts-interface-checker@0.1.13 None 0 68 kB dsagal2
npm/type-fest@0.3.1 None 0 23 kB sindresorhus
npm/typedarray.prototype.slice@1.0.3 None 0 20.6 kB ljharb
npm/unique-string@1.0.0 None 0 2.58 kB sindresorhus
npm/use-callback-ref@1.3.2 None 0 51.8 kB kashey
npm/use-sidecar@1.1.2 None 0 49.5 kB kashey
npm/valid-url@1.0.9 None 0 17.2 kB odysseas
npm/validate-npm-package-name@3.0.0 None 0 21 kB chrisdickinson
npm/wonka@4.0.15 None 0 349 kB philpl
npm/zeego@1.10.0 None 0 553 kB fernandorojo

🚮 Removed packages: npm/@expo/config-plugins@7.9.2, npm/@expo/config-types@50.0.1, npm/@expo/fingerprint@0.6.1, npm/@react-native-menu/menu@1.0.3, npm/ip-regex@1.0.3, npm/md5@2.3.0, npm/postcss@8.4.39, npm/react-native-safe-area-context@4.10.1, npm/slash@2.0.0

View full report↗︎

linear[bot] commented 2 months ago

APP-1691 context menu overflowing off screen on android