refactor: load webtorrent source
This commit is contained in:
		
							parent
							
								
									5e24d5f1d3
								
							
						
					
					
						commit
						d10c047fec
					
				
							
								
								
									
										1002
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										1002
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										10
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								package.json
									
									
									
									
									
								
							| @ -85,19 +85,27 @@ | ||||
|     "autoprefixer": "^10.4.8", | ||||
|     "bittorrent-tracker": "^9.19.0", | ||||
|     "cross-env": "^7.0.3", | ||||
|     "crypto": "npm:crypto-browserify@^3.12.0", | ||||
|     "eslint": "^8.21.0", | ||||
|     "eslint-config-react-app": "^7.0.1", | ||||
|     "eslint-plugin-import": "^2.26.0", | ||||
|     "eslint-plugin-jsx-a11y": "^6.6.1", | ||||
|     "eslint-plugin-react": "^7.30.1", | ||||
|     "eslint-plugin-react-hooks": "^4.6.0", | ||||
|     "http": "npm:http-browserify@^1.7.0", | ||||
|     "https": "npm:https-browserify@^1.0.0", | ||||
|     "husky": "^8.0.1", | ||||
|     "mprocs": "^0.6.3", | ||||
|     "path": "npm:path-browserify@^1.0.1", | ||||
|     "postcss": "^8.4.16", | ||||
|     "prettier": "^2.7.1", | ||||
|     "pretty-quick": "^3.1.3", | ||||
|     "process": "^0.11.10", | ||||
|     "serve": "^14.1.2", | ||||
|     "tailwindcss": "^3.1.8" | ||||
|     "stream": "npm:stream-browserify@^3.0.0", | ||||
|     "tailwindcss": "^3.1.8", | ||||
|     "url": "^0.11.0", | ||||
|     "util": "^0.12.5" | ||||
|   }, | ||||
|   "jest": { | ||||
|     "transformIgnorePatterns": [ | ||||
|  | ||||
| @ -1,5 +1,4 @@ | ||||
| import { Buffer } from 'buffer' | ||||
| 
 | ||||
| import './polyfills' | ||||
| import ReactDOM from 'react-dom/client' | ||||
| import 'typeface-roboto' | ||||
| 
 | ||||
| @ -7,9 +6,6 @@ import 'index.sass' | ||||
| import Bootstrap from 'Bootstrap' | ||||
| import reportWebVitals from 'reportWebVitals' | ||||
| 
 | ||||
| // Polyfill
 | ||||
| window.Buffer = Buffer | ||||
| 
 | ||||
| const root = ReactDOM.createRoot(document.getElementById('root') as HTMLElement) | ||||
| root.render(<Bootstrap />) | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										8
									
								
								src/polyfills.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								src/polyfills.ts
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| import { Buffer } from 'buffer' | ||||
| 
 | ||||
| // @ts-ignore
 | ||||
| import process from 'process/browser' | ||||
| 
 | ||||
| // Polyfill
 | ||||
| window.Buffer = Buffer | ||||
| window.process = process | ||||
| @ -1,12 +1,9 @@ | ||||
| import { WebTorrent as WebTorrentType, Torrent } from 'webtorrent' | ||||
| // @ts-ignore
 | ||||
| import WebTorrent, { Torrent } from 'webtorrent' | ||||
| import streamSaver from 'streamsaver' | ||||
| // @ts-ignore
 | ||||
| import idbChunkStore from 'idb-chunk-store' | ||||
| import { detectIncognito } from 'detectincognitojs' | ||||
| 
 | ||||
| // @ts-ignore
 | ||||
| import WebTorrent from 'webtorrent/webtorrent.min.js' | ||||
| import { trackerUrls } from 'config/trackerUrls' | ||||
| import { streamSaverUrl } from 'config/streamSaverUrl' | ||||
| 
 | ||||
| @ -17,7 +14,7 @@ interface DownloadOpts { | ||||
| } | ||||
| 
 | ||||
| export class FileTransfer { | ||||
|   private webTorrentClient = new (WebTorrent as unknown as WebTorrentType)() | ||||
|   private webTorrentClient = new WebTorrent() | ||||
| 
 | ||||
|   private torrents: Record<Torrent['magnetURI'], Torrent> = {} | ||||
| 
 | ||||
|  | ||||
| @ -8,7 +8,7 @@ afterEach(() => { | ||||
|   jest.restoreAllMocks() | ||||
| }) | ||||
| 
 | ||||
| jest.mock('webtorrent/webtorrent.min.js', () => ({ | ||||
| jest.mock('webtorrent', () => ({ | ||||
|   __esModule: true, | ||||
|   default: class WebTorrent {}, | ||||
| })) | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user