mirror of
				https://github.com/excalidraw/excalidraw.git
				synced 2025-10-31 10:54:33 +01:00 
			
		
		
		
	 d6cd8b78f1
			
		
	
	d6cd8b78f1
	
	
	
		
			
			* feat: decouple package deps and introduce yarn workspaces * update root directory * fix * fix scripts * fix lint * update path in scripts * remove yarn.lock files from packages * ignore workspace * dummy * dummy * remove comment check * revert workflow changes * ignore ws when installing gh actions * remove log * update path * fix * fix typo
		
			
				
	
	
		
			41 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env node
 | |
| 
 | |
| // In order to use this, you need to install Cairo on your machine. See
 | |
| // instructions here: https://github.com/Automattic/node-canvas#compiling
 | |
| 
 | |
| // In order to run:
 | |
| //   npm install canvas # please do not check it in
 | |
| //   yarn build-node
 | |
| //   node build/static/js/build-node.js
 | |
| //   open test.png
 | |
| 
 | |
| const rewire = require("rewire");
 | |
| const defaults = rewire("react-scripts/scripts/build.js");
 | |
| const config = defaults.__get__("config");
 | |
| 
 | |
| // Disable multiple chunks
 | |
| config.optimization.runtimeChunk = false;
 | |
| config.optimization.splitChunks = {
 | |
|   cacheGroups: {
 | |
|     default: false,
 | |
|   },
 | |
| };
 | |
| // Set the filename to be deterministic
 | |
| config.output.filename = "static/js/build-node.js";
 | |
| // Don't choke on node-specific requires
 | |
| config.target = "node";
 | |
| // Set the node entrypoint
 | |
| config.entry = "../packages/excalidraw/index-node";
 | |
| // By default, webpack is going to replace the require of the canvas.node file
 | |
| // to just a string with the path of the canvas.node file. We need to tell
 | |
| // webpack to avoid rewriting that dependency.
 | |
| config.externals = (context, request, callback) => {
 | |
|   if (/\.node$/.test(request)) {
 | |
|     return callback(
 | |
|       null,
 | |
|       "commonjs ../../../node_modules/canvas/build/Release/canvas.node",
 | |
|     );
 | |
|   }
 | |
|   callback();
 | |
| };
 |