bithyve / bitcointribe

Bitcoin Tribe. A simple bitcoin wallet made to be used with Friends and Family. Lightning. Gifts and more.
https://bitcointribe.app/
MIT License
123 stars 60 forks source link

Bring some node_module dependencies in house #45

Closed Varunram closed 4 years ago

Varunram commented 5 years ago

As show by past attacks on popular npm packages (event-stream and electron-native-notify), its is becoming increasingly popular to try and attack dependencies that are used by cryptocurrency wallets. In order to prevent this, we need to pull these dependencies in house while still continuing to patch critical security updates. This can be done by maintaining our copy of these dependencies in something like hexa/deps and then importing what we want from this package hexa/deps/ac-qrcode for example. This would be a multi step process and this issue is meant to track updates on the same.

Varunram commented 5 years ago

decision made to bring all packages older than 2017 in house as per the medium article. Will put in a PR once other pending PRs have been merged to avoid the need to rebase everything once that's done.

Varunram commented 5 years ago

original list of git hashes:

{
  "name": "HexaWallet",
  "version": "0.0.1",
  "private": true,
  "author": "Bithyve",
  "license": "ISC",
  "scripts": {
    "compile": "tsc",
    "prepare": "rn-nodeify --install --hack  &&  react-native link",
    "issuemodel": "cp -r -f .src/app/lib/IssueFiles/Model/index.js ./node_modules/source-map-support/source-map-support.js",
    "issueBuffer": "cp -r -f ./src/app/lib/IssueFiles/Buffer/index.js ./node_modules/bip32/index.js",
    "issueSlideMenuAndroid": "cp -r -f ./src/app/lib/IssueFiles/slideMenuAndroid/MainActivity.java ./android/app/src/main/java/com/bithyve/hexa/MainActivity.java",
    "issueQrcodeImageCode": "cp -r -f ./src/app/lib/IssueFiles/qrcodeimagereader/ScannerMask.js  ./node_modules/react-native-barcode-scanners/src/ScannerMask.js",
    "compDatePickerVaultAccountScreenIOS": "cp -r -f ./src/assets/custComp/vaultAccountDatePickerView/index.js ./node_modules/react-native-datepicker/datepicker.js",
    "compSCLSubtitlenumberOfTextIncrement": "cp -r -f ./src/app/lib/IssueFiles/Alert/SclAlertSubtitle/subtitle.js ./node_modules/react-native-scl-alert/src/components/SCLAlertSubtitle.js",
    "start": "node node_modules/react-native/local-cli/cli.js start",
    "removeall": "rm -rf android rm -rf ios rm -rf node_modules",
    "rmnode": "rm -rf node_modules",
    "android": "react-native run-android",
    "ios": "react-native run-ios",
    "postinstall": "./node_modules/.bin/rn-nodeify --install buffer,events,process,stream,util,inherits,fs,path --hack",
    "test": "npm run unit && npm run jest && npm run lint",
    "jest": "node node_modules/jest/bin/jest.js",
    "lint": "./node_modules/.bin/eslint *.js screen/**/*.js screen/ class/ models/ loc/ --fix",
    "unit": "./node_modules/.bin/mocha tests/**/*.js",
    "android-dev": "ENVFILE=.env.dev react-native run-android",
    "build-android-dev": "export ENVFILE=.env.dev && cd android && ./gradlew assembleRelease && cd ..",
    "android-relase": "ENVFILE=.env.dev react-native run-android --variant=release"
  },
  "dependencies": {
    "@babel/preset-env": "^7.2.3",
    "@babel/runtime": "^7.2.0",
    "@tradle/react-native-http": "^2.0.1",
    "@types/bip39": "^2.4.1",
    "@types/bitcoinjs-lib": "^4.0.0",
    "@types/node": "^10.12.18",
    "ac-qrcode": "git://github.com/MarnoDev/react-native-scan-view#470015022eee6a25bc3353a8e611cfbb36502acb",
    "assert": "git://github.com/browserify/commonjs-assert/commit/ea25d53a51201cf268681c5ec37f7d51b2d82884",
    "asyncstorage-down": "git://github.com/tradle/asyncstorage-down#d43ad3c2558becffe4d0a044d5b5ffc81d988fc6",
    "axios": "git://github.com/axios/axios#2ee3b482456cd2a09ccbd3a4b0c20f3d0c5a5644",
    "backbone-events-standalone": "git://github.com/n1k0/backbone-events-standalone#846ac47d80d5133adace749ac574613c3390de98",
    "bip65": "git://github.com/bitcoinjs/bip65#f7df6e3bd967672cbf40f4aaa1c9ac4e1e20ec05",
    "bip39": "git://github.com/bitcoinjs/bip39#e18e1e4e8fe6e9a42c04b478bbcf810facd44b4a",
    "bitcoin-core": "git://github.com/ruimarinho/bitcoin-core#bd89a29e147e7a056417f8fd971f20515f8353b4",
    "bitcoinjs-lib": "git://github.com/bitcoinjs/bitcoinjs-lib#8bbe7c7178f8f7d0cdbed13da13a6e62dacb3d06",
    "browserify-zlib": "git://github.com/devongovett/browserify-zlib#8b3f0a862f6bb49833c4ab0bcaeaee8fd524c917",
    "buffer": "git://github.com/feross/buffer#4189cee8f9651c0e1a22e8d0969cf8712f66d5bf",
    "coinselect": "git://github.com/bitcoinjs/coinselect#288f24d221e5f1e5beac883043cc706914b2b2bd",
    "console-browserify": "git://github.com/Raynos/console-browserify/commit/c686821ade6ac85d255ee6cdd7d54d858d72c23d",
    "constants-browserify": "git://github.com/juliangruber/constants-browserify#e0ee990c75f3a0b3275e6bb2e3ff4d5d169d1b9d",
    "crypto-js": "git://github.com/brix/crypto-js#8e6d15bf2e26d6ff0af5277df2604ca12b60a718",
    "dns.js": "git://github.com/indutny/dns.js#82d01aaa273c46d0f36dcf3660242cc44d576461",
    "domain-browser": "git://github.com/bevry/domain-browser#d77aeed4098c1e685f46f833392759996742424a",
    "events": "git://github.com/Gozala/events#a7eb04c6a4be31682e170f4c37e7edbc607754fd",
    "https-browserify": "git://github.com/substack/https-browserify#98a1310b385d24dd8cf1a67aa258e91ec03743e4",
    "inherits": "git://github.com/isaacs/inherits#9a2c29400c6d491e0b7beefe0c32efa3b462545d",
    "jsc-android": "git:////github.com/react-native-community/jsc-android-buildscripts/commit/1de70d41ec73b965c95da557fcafecb00d43f3c8",
    "lodash": "git://github.com/lodash/lodash#488e62bd79443dd96fd83e631cccf3f68da489b1",
    "moment": "git://github.com/moment/moment#13a61b285c095bda7ea8e33156090ea5ccfeaef1",
    "native-base": "git://github.com/GeekyAnts/NativeBase#65f0bc7ff53b28099d177813d2b33ffd987cadcd",
    "node-libs-react-native": "git://github.com/parshap/node-libs-react-native#13cae5d884eb9e93bb0b92b3d18631791fb7d4d3",
    "number-to-words": "git://github.com/marlun78/number-to-words#2b810ab7efffecb48941b1e07833d49604144569",
    "otplib": "git://github.com/yeojz/otplib#dd7dc73ee08032df0196d8774b55af210b27cab5",
    "path-browserify": "git://github.com/browserify/path-browserify#84bef698f416c09439b2aaba51f119a83dae3ff0",
    "process": "git://github.com/defunctzombie/node-process#77caa43cdaee4ea710aa14d11cea1705293c0ef3",
    "prop-types": "git://github.com/facebook/prop-types#e32c4900f5ab5fd3acea93e9d2f0d09e4a2f2ceb",
    "punycode": "git://github.com/bestiejs/punycode.js#68df855dc42d1086ada161331b3074468e8d848d",
    "qr-image": "git://github.com/alexeyten/qr-image#9b5ee0e8f38152f29cfd59eedaf037fafb47e740",
    "qrcode": "git://github.com/soldair/node-qrcode#8d0b21b89acccccf3cfd8bb98601d7ca03bfcb34",
    "querystring-es3": "git://github.com/mike-spainhower/querystring#f336a2eef49c44165e19ab4910dcb6d14adbcbfa",
    "react": "git://github.com/facebook/react#d271df5c993ba54408969fbfc4b5e0f751a4cf0c",
    "react-native": "git://github.com/facebook/react-native#3915c0fa6178fbb8aa9b8bd54881cfdbde8fde70",
    "react-native-animatable": "git://github.com/oblador/react-native-animatable#1c5c0b597536ea059dc8fb7f52e17cab5f796746",
    "react-native-barcode-builder": "git://github.com/wonsikin/react-native-barcode-builder#292a2b9dd49587273dfc62bb50934d19c324e148",
    "react-native-barcode-scanners": "git://github.com/ChrisDowney1996/react-native-barcode-scanners#b83d83144bb460fdc21cf9ec26d278c63bb2a0ef",
    "react-native-bip39": "git://github.com/novalabio/react-native-bip39#c40e9a6b414b7767c793db64514ccb603f02a1dc",
    "react-native-calendars": "git://github.com/wix/react-native-calendars#a8fe05d529249f61ad3cd630941f44666a560c6f",
    "react-native-camera": "git://github.com/react-native-community/react-native-camera#a77b64cf5b6eefbe719884a4d3f2fa53a7783994",
    "react-native-card-flip": "git://github.com/lhandel/react-native-card-flip#8706598df525a56bebcac6650ab6d173e62717c3",
    "react-native-cards-slider": "git://github.com/LIU9293/react-native-cards-slider#2b7452cce745206fcc53fa56ec4d1f5a72f33019",
    "react-native-circular-action-menu": "git://github.com/geremih/react-native-circular-action-menu#a62cecfb0f0f2adeae2a0fd1c69679a889194632",
    "react-native-collapsible": "git://github.com/oblador/react-native-collapsible#dca17b2350f984c9769c9a2a5b69504d51cefdbc",
    "react-native-config": "git://github.com/luggit/react-native-config#7390b74934968f633d4adc6fa2d2224956766e15",
    "react-native-confirmation-code-input": "git://github.com/ttdung11t2/react-native-confirmation-code-input#46b820384d0221a0cd2c2d7aa65b9dcd674c5832",
    "react-native-connectivity-tracker": "git://github.com/SudoPlz/react-native-connectivity-tracker#1f3d1bd482f09a9dc3e3914b7f64e16969804d3b",
    "react-native-contacts": "git://github.com/rt2zz/react-native-contacts#1f16e46b3046eb7a5cd5d537124276500fc7c990",
    "react-native-country-picker-modal": "git://github.com/xcarpentier/react-native-country-picker-modal#5e808ac22e19e4515db7f9747b99b0fee44f175b",
    "react-native-crypto": "git://github.com/mvayngrib/react-native-crypto#204384f06e3fa78c3a272ac55dd3a9de4743f1f3",
    "react-native-custom-datepicker-ios": "git://github.com/pinguinjkeke/react-native-custom-datepicker-ios#c6098c0c398555c079fdc4aaa7715decd2f12fdf",
    "react-native-custom-qr-codes": "git://github.com/nating/react-native-custom-qr-codes#5dc8b8659cee5d64dc400c4e22d148a0daa4fade",
    "react-native-datepicker": "git://github.com/xgfe/react-native-datepicker#2a209bd4f11a84ff4543fbde930fed60dcbc0f68",
    "react-native-deep-linking": "git://github.com/luisfcofv/react-native-deep-linking#b46c90f689a3b46ebec5d2742e91edaccdb15d55",
    "react-native-device-info": "git://github.com/react-native-community/react-native-device-info#3a53b139b603147d57aee096b4977bf2b72956ca",
    "react-native-dropdownalert": "git://github.com/testshallpass/react-native-dropdownalert#9c31e70d2ccabd8c909cb2fb57f3125965b8a2d2",
    "react-native-elements": "git://github.com/react-native-training/react-native-elements#4c900a4d5abd1bcb95ae8ebd35b396c1af88859b",
    "react-native-ezswiper": "git://github.com/easyui/react-native-ezswiper#0c1f04e3bf3ad24cad74d7ebd19299aac51e3300",
    "react-native-fetch-blob": "git://github.com/wkh237/react-native-fetch-blob#57375d8bbed7c247c331d20b99ff39526a206edd",
    "react-native-flash-message": "git://github.com/lucasferreira/react-native-flash-message#7eeb2c29f3b3b56884a3cde66f91bbaca378e782",
    "react-native-form-builder": "git://github.com/bietkul/react-native-form-builder#358a0fa3884bbd4b9155f5436765f504ebc15e46",
    "react-native-fs": "git://github.com/itinance/react-native-fs#57b6131aaad5b7721857b9bf24dc86d8bcaf6eda",
    "react-native-gesture-handler": "git://github.com/kmagiera/react-native-gesture-handler#af1da898830e07b17dd0fb970ac756999b5f1352",
    "react-native-gesture-password": "git://github.com/Spikef/react-native-gesture-password#97845427eddb448694267d8fa1d2fa5547444009",
    "react-native-google-shortener": "git://github.com/mgufrone/react-native-google-shortener#7c8718fc0473576659bc50f4f312a49b1ed9442c",
    "react-native-http": "git://github.com/tradle/react-native-http/commit/17b2990010ebd39461d1117c1e2c50c25eab869f",
    "react-native-image-picker": "git://github.com/react-community/react-native-image-picker#8c6d45d562c4d3537aeff194c652f2e0df1a52b3",
    "react-native-inappbrowser-reborn": "git://github.com/proyecto26/react-native-inappbrowser/a6a5b3e3838789c103f3c71e7a7773fb35594d0b",
    "react-native-indicators": "git://github.com/n4kz/react-native-indicators#0986a0e1ff449dc22ade0d3a036bdd586d6d7546",
    "react-native-keyboard-aware-scroll-view": "git://github.com/APSL/react-native-keyboard-aware-scroll-view/commit/62fd0d1383907f1a2b9a03ae4b0f1bdee4ac2e08",
    "react-native-keychain": "git://github.com/oblador/react-native-keychain#d8ed753383abdde35879377fd3f9760f8f3eaaeb",
    "react-native-level-fs": "git://github.com/tradle/react-native-level-fs#84b201adcfe2b2b54ceaee83694488348d9c529c",
    "react-native-lewin-qrcode": "git://github.com/LewinJun/react-native-lewin-qrcode#81dc13d3e9d0f07f30d20d3ece3a2447f697a5db",
    "react-native-linear-gradient": "git://github.com/react-native-community/react-native-linear-gradient#f84ccb81bff124c1a26fbbd67b914096d1b3d82e",
    "react-native-mail": "git://github.com/chirag04/react-native-mail#0c3a535d7cb9d72bc537b830fba6e2b316f4d781",
    "react-native-material-dropdown": "git://github.com/n4kz/react-native-material-dropdown#4526671144e4c7296588872819e2b6b261bd6c85",
    "react-native-modal-loader": "git://github.com/kdastan/react-native-modal-loader#cd998ff230361a0b75a45902b2030a2711e61360",
    "react-native-modal-picker": "git://github.com/d-a-n/react-native-modal-picker#a2d0b9b4ea7b2ab8cb08ef28e4ea62fa49634945",
    "react-native-modalbox": "git://github.com/maxs15/react-native-modalbox#39e53d9f0cb01930d7e1c6cc0e9dd4b258b552a5",
    "react-native-motion": "git://github.com/xotahal/react-native-motion#d4a7e8c53a606921346847d3eab15f969ebb6185",
    "react-native-multibar": "git://github.com/alex-melnyk/react-native-multibar#815a7161961ff626a422f2c28a86323f443c0061",
    "react-native-onboarding-swiper": "git://github.com/jfilter/react-native-onboarding-swiper#7bcbb015b8863b5e053aec804e8838d4129bf55b",
    "react-native-os": "git://github.com/aprock/react-native-os#e0d836fca3f287c469694f558eacf18ef5d86383",
    "react-native-pdf-lib": "git://github.com/Hopding/react-native-pdf-lib#52778977cf3e69dbce51796b3a6a164d1af98ad7",
    "react-native-permissions": "git://github.com/yonahforst/react-native-permissions#e74f1bd6d167e009cb1c58ecf3433ccbe9eb4fb3",
    "react-native-pin-code": "git://github.com/gkueny/react-native-pin-code#7139d61fcb5993058fd41d13b78788008aa41db2",
    "react-native-popup-dialog": "git://github.com/jacklam718/react-native-popup-dialog#d81d0e703c182838a2651c2234ac9ef196497f41",
    "react-native-popup-menu": "git://github.com/instea/react-native-popup-menu#46197a3a72a2031c040b6c1c5971199bb53f938b",
    "react-native-qrcode": "git://github.com/cssivision/react-native-qrcode#25ff1d1c7f616f2e7f6703ae24861e0b27ab1ca0",
    "react-native-qrcode-scanner": "git://github.com/moaazsidat/react-native-qrcode-scanner#40c980ed38d1cff91256afe2280d236d8efdf43a",
    "react-native-qrcode-svg": "git://github.com/awesomejerry/react-native-qrcode-svg#5eed87f947be3e44a0da0c9500e19134ba226640",
    "react-native-randombytes": "git://github.com/mvayngrib/react-native-randombytes#60f9767ab49afa88257a7eecf35d5962c60fc917",
    "react-native-remote-svg": "git://github.com/seekshiva/react-native-remote-svg#9c2d55473946f9953a47ab43a87f2d975021dc11",
    "react-native-rsa": "git://github.com/z-hao-wang/react-native-rsa#112ecd2e78006221c579d4949d670adad3189fa5",
    "react-native-safari-view": "git://github.com/naoufal/react-native-safari-view#d828e7911b9588a5c1b3456c7934c587bd0d3c14",
    "react-native-scaling-drawer": "git://github.com/melihberberolu/react-native-scaling-drawer#3c009cd2ef4209d7c24560e8da48ac028da11b72",
    "react-native-scl-alert": "git://github.com/rafaelmotta/react-native-scl-alert#27de09a4d149de78011c50fd8c0a6fe8e7e569ca",
    "react-native-share": "git://github.com/react-native-community/react-native-share#98971f23011e5427510088a873ce370b95e75e41",
    "react-native-simple-modal": "git://github.com/bodyflex/react-native-simple-modal#e6b7b256349912a0c6b759c34135700404941161",
    "react-native-simple-toast": "git://github.com/vonovak/react-native-simple-toast#1a0dab90ca15b22e6b0064f2d34d2851e49193fb",
    "react-native-sms": "git://github.com/tkporter/react-native-sms#9d874ec510a80ffbb89c4944aee1f93efe123615",
    "react-native-snap-carousel": "git://github.com/archriss/react-native-snap-carousel#1aebb185036813b1104ea01fc6229b43f10f4d9c",
    "react-native-spinkit": "git://github.com/maxs15/react-native-spinkit#77756ddc973bb97aad94312ef2e6030299d7f8ee",
    "react-native-splash-screen": "git://github.com/crazycodeboy/react-native-splash-screen#d4ab6ca9f6399d3d3d79e2ca4e561fa06de7704b",
    "react-native-sqlite-storage": "git://github.com/andpor/react-native-sqlite-storage#b42100f009eef82a4951a933d02ce49104f30648",
    "react-native-super-grid": "git://github.com/saleel/react-native-super-grid#8dd60fe9bab4a51b93cb7d94c421b4264fb1536e",
    "react-native-svg": "git://github.com/react-native-community/react-native-svg#115b3f94bb69dc5fa32f82b04109beb058a015bc",
    "react-native-svg-icon": "git://github.com/stowball/react-native-svg-icon#ab4b593baeff2a8309f4c0dfe134ac1f05011fe0",
    "react-native-svg-image": "git://github.com/chitezh/react-native-svg-image#c141f83fc025667db4e0359df66abed959f51624",
    "react-native-svg-uri": "git://github.com/matiascba/react-native-svg-uri#c6841a6e7d1a6ee5cf5b515d4faea6002e166f3c",
    "react-native-swipe-gestures": "git://github.com/glepur/react-native-swipe-gestures#0b227c22cc55da654cd7724e60003bc2b4a03af4",
    "react-native-swiper": "git://github.com/leecade/react-native-swiper#e4dbde6657f6c66cba50f8abca7c472b47297c7f",
    "react-native-tag-select": "git://github.com/rafaelmotta/react-native-tag-select#490ffcd320a3585c921f6af4274e28cf6c85b01c",
    "react-native-tcp": "git://github.com/PeelTechnologies/react-native-tcp#b056904809b24eac2595a4c631121372edf15b71",
    "react-native-udp": "git://github.com/tradle/react-native-udp#e333144294db00239db8fe3d6f5434882d7f0126",
    "react-native-ui-kitten": "git://github.com/akveo/react-native-ui-kitten#94b81412d342129a4c8b48c80d1669c531c14388",
    "react-native-ultimate-listview": "git://github.com/gameboyVito/react-native-ultimate-listview#288a21cd1e32e5372b08e241d33eba8f1cd80ece",
    "react-native-vector-icons": "git://github.com/oblador/react-native-vector-icons#c4bd3125c0d8865862cfd6de3a7357ff48a455d9",
    "react-native-view-shot": "git://github.com/gre/react-native-view-shot#ec23260a9ef5289a87d619b7aab60d0cb033b958",
    "react-native-webview": "git://github.com/react-native-community/react-native-webview#d61d335f80a9d9aa613f00e4e2592dba3f289bb4",
    "react-navigation": "git://github.com/react-navigation/react-navigation#b05cdcb07619b3f9758de0ee93be2749af3f670e",
    "readable-stream": "git://github.com/nodejs/readable-stream#4ba93f84cf8812ca2af793c7304a5c16de72088a",
    "recompose": "git://github.com/acdlite/recompose#3db12ce7121a050b533476958ff3d66ded1c4bb8",
    "secrets.js-grempe": "git://github.com/grempe/secrets.js#b6e13cb43f2065a9b622a35002a68222f2bfd437",
    "stream-browserify": "git://github.com/browserify/stream-browserify#3d756bbf775899535fc6f25180f84ba516c9eb76",
    "string_decoder": "git://github.com/nodejs/string_decoder#6e0a9286ed4497badebd4ec6a9a7a4d37793aae8",
    "superagent": "git://github.com/visionmedia/superagent#8e49f73bbdd30aeb6f0cef7a4c6f0dba23a89de3",
    "timers-browserify": "git://github.com/browserify/timers-browserify#bedb5290e1d2366e61b7882d25f44287a94f5cc1",
    "tty-browserify": "git://github.com/browserify/tty-browserify#ad66fbdd4529ac8de43dc4b998ceb12cb2ec63c6",
    "url": "git://github.com/defunctzombie/node-url#13a35bd35a2cdf3fbfa7ee9c6ed5b927a48d6821",
    "util": "git://github.com/browserify/node-util#4bbf01414dbb8037288e66295ae369d0c92aad76",
    "vm-browserify": "git://github.com/browserify/vm-browserify#03a1d4da11004978d56e35bb735e136477147a4a",

    "babel-preset-react-native": "^4.0.1",

    "react-native-item-select": "^0.3.0",
    "react-native-timer-countdown": "^4.1.0",
    "react-native-i18n": "^2.0.15",
  },
  "devDependencies": {
    "@babel/plugin-syntax-export-namespace-from": "^7.2.0",
    "@types/react": "^16.7.18",
    "@types/react-native": "^0.57.20",
    "babel-jest": "23.6.0",
    "eslint": "^5.9.0",
    "eslint-config-airbnb-base": "^13.1.0",
    "eslint-plugin-babel": "^5.3.0",
    "eslint-plugin-import": "^2.14.0",
    "eslint-plugin-node": "^8.0.0",
    "eslint-plugin-promise": "^4.0.1",
    "eslint-plugin-react": "^7.12.2",
    "jest": "23.6.0",
    "metro-react-native-babel-preset": "0.51.1",
    "prettier-eslint-cli": "^4.7.1",
    "react-devtools-core": "3.4.2",
    "react-native-typescript-transformer": "^1.2.11",
    "react-test-renderer": "16.6.3",
    "rn-nodeify": "^10.0.1",
    "ts-node": "^7.0.1",
    "typescript": "^3.2.2"
  },
  "jest": {
    "preset": "react-native"
  },
  "resolutions": {
    "react-devtools-core": "3.4.2"
  },
  "rnpm": {
    "assets": [
      "./src/assets/fonts/*",
      "./src/assets/fonts/firaSans",
      "./src/assets/fonts/Roboto"
    ]
  },
  "react-native": {
    "path": "path-browserify",
    "fs": "react-native-level-fs",
    "_stream_transform": "readable-stream/transform",
    "_stream_readable": "readable-stream/readable",
    "_stream_writable": "readable-stream/writable",
    "_stream_duplex": "readable-stream/duplex",
    "_stream_passthrough": "readable-stream/passthrough",
    "stream": "stream-browserify",
    "zlib": "browserify-zlib",
    "console": "console-browserify",
    "constants": "constants-browserify",
    "crypto": "react-native-crypto",
    "dns": "dns.js",
    "net": "react-native-tcp",
    "domain": "domain-browser",
    "http": "@tradle/react-native-http",
    "https": "https-browserify",
    "os": "react-native-os",
    "querystring": "querystring-es3",
    "dgram": "react-native-udp",
    "timers": "timers-browserify",
    "tty": "tty-browserify",
    "vm": "vm-browserify",
    "tls": false
  },
  "browser": {
    "path": "path-browserify",
    "fs": "react-native-level-fs",
    "_stream_transform": "readable-stream/transform",
    "_stream_readable": "readable-stream/readable",
    "_stream_writable": "readable-stream/writable",
    "_stream_duplex": "readable-stream/duplex",
    "_stream_passthrough": "readable-stream/passthrough",
    "stream": "stream-browserify",
    "zlib": "browserify-zlib",
    "console": "console-browserify",
    "constants": "constants-browserify",
    "crypto": "react-native-crypto",
    "dns": "dns.js",
    "net": "react-native-tcp",
    "domain": "domain-browser",
    "http": "@tradle/react-native-http",
    "https": "https-browserify",
    "os": "react-native-os",
    "querystring": "querystring-es3",
    "dgram": "react-native-udp",
    "timers": "timers-browserify",
    "tty": "tty-browserify",
    "vm": "vm-browserify",
    "tls": false
  }
}