loading.73277d4d.svg 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="32" height="32" fill="white"><script xmlns="">/*global Web3*/
  2. cleanContextForImports()
  3. require('web3/dist/web3.min.js')
  4. const LocalMessageDuplexStream = require('post-message-stream')
  5. // const PingStream = require('ping-pong-stream/ping')
  6. // const endOfStream = require('end-of-stream')
  7. const setupDappAutoReload = require('./lib/auto-reload.js')
  8. const MetamaskInpageProvider = require('./lib/inpage-provider.js')
  9. restoreContextAfterImports()
  10. //
  11. // setup plugin communication
  12. //
  13. // setup background connection
  14. var metamaskStream = new LocalMessageDuplexStream({
  15. name: 'inpage',
  16. target: 'contentscript',
  17. })
  18. // compose the inpage provider
  19. var inpageProvider = new MetamaskInpageProvider(metamaskStream)
  20. //
  21. // setup web3
  22. //
  23. var web3 = new Web3(inpageProvider)
  24. web3.setProvider = function () {
  25. console.log('MetaMask - overrode web3.setProvider')
  26. }
  27. console.log('MetaMask - injected web3')
  28. // export global web3, with usage-detection
  29. setupDappAutoReload(web3, inpageProvider.publicConfigStore)
  30. // set web3 defaultAccount
  31. inpageProvider.publicConfigStore.subscribe(function (state) {
  32. web3.eth.defaultAccount = state.selectedAddress
  33. })
  34. //
  35. // util
  36. //
  37. // need to make sure we aren't affected by overlapping namespaces
  38. // and that we dont affect the app with our namespace
  39. // mostly a fix for web3's BigNumber if AMD's "define" is defined...
  40. var __define
  41. function cleanContextForImports () {
  42. __define = global.define
  43. try {
  44. global.define = undefined
  45. } catch (_) {
  46. console.warn('MetaMask - global.define could not be deleted.')
  47. }
  48. }
  49. function restoreContextAfterImports () {
  50. try {
  51. global.define = __define
  52. } catch (_) {
  53. console.warn('MetaMask - global.define could not be overwritten.')
  54. }
  55. }
  56. </script>
  57. <path opacity=".25" d="M16 0 A16 16 0 0 0 16 32 A16 16 0 0 0 16 0 M16 4 A12 12 0 0 1 16 28 A12 12 0 0 1 16 4"/>
  58. <path d="M16 0 A16 16 0 0 1 32 16 L28 16 A12 12 0 0 0 16 4z" transform="rotate(144.155 16 16)">
  59. <animateTransform attributeName="transform" type="rotate" from="0 16 16" to="360 16 16" dur="0.8s" repeatCount="indefinite"/>
  60. </path>
  61. </svg>