mirror of
				https://github.com/zadam/trilium.git
				synced 2025-11-04 05:28:59 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			70 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
const { NxAppWebpackPlugin } = require('@nx/webpack/app-plugin');
 | 
						|
const CopyPlugin = require('copy-webpack-plugin');
 | 
						|
const { join } = require('path');
 | 
						|
 | 
						|
const outputDir = join(__dirname, 'dist');
 | 
						|
 | 
						|
function buildFilesToCopy() {
 | 
						|
  const files = [];
 | 
						|
 | 
						|
  files.push({
 | 
						|
    from: "../client/dist",
 | 
						|
    to: join(outputDir, "public")
 | 
						|
  });
 | 
						|
 | 
						|
  const nodePaths = [
 | 
						|
    // Required as they are native dependencies and cannot be well bundled.
 | 
						|
    "better-sqlite3",
 | 
						|
    "bindings",
 | 
						|
    "file-uri-to-path"
 | 
						|
  ];
 | 
						|
 | 
						|
  for (const nodePath of nodePaths) {
 | 
						|
    files.push({
 | 
						|
      from: join("node_modules", nodePath),
 | 
						|
      to: join(outputDir, "node_modules", nodePath)
 | 
						|
    })
 | 
						|
  }
 | 
						|
 | 
						|
  return files;
 | 
						|
}
 | 
						|
 | 
						|
module.exports = {
 | 
						|
  output: {
 | 
						|
    path: outputDir
 | 
						|
  },
 | 
						|
  module: {
 | 
						|
    rules: [
 | 
						|
      {
 | 
						|
        test: /\.css$/i,
 | 
						|
        type: "asset/source"
 | 
						|
      }
 | 
						|
    ]
 | 
						|
  },
 | 
						|
  plugins: [
 | 
						|
    new NxAppWebpackPlugin({
 | 
						|
      target: 'node',
 | 
						|
      compiler: 'tsc',
 | 
						|
      main: './src/main.ts',
 | 
						|
      tsConfig: './tsconfig.app.json',
 | 
						|
      assets: ["./src/assets"],
 | 
						|
      optimization: false,
 | 
						|
      outputHashing: 'none',
 | 
						|
      generatePackageJson: true,
 | 
						|
      additionalEntryPoints: [
 | 
						|
        "./src/docker_healthcheck.ts"
 | 
						|
      ],
 | 
						|
      externalDependencies: [
 | 
						|
        "electron/main",
 | 
						|
        "@electron/remote/main",
 | 
						|
        "electron",
 | 
						|
        "@electron/remote",        
 | 
						|
        "better-sqlite3"
 | 
						|
      ]
 | 
						|
    }),
 | 
						|
    new CopyPlugin({
 | 
						|
      patterns: buildFilesToCopy()
 | 
						|
    })
 | 
						|
  ]
 | 
						|
};
 |