11import { defineConfig } from 'vite' ;
22import react from '@vitejs/plugin-react' ;
33import loadVersion from 'vite-plugin-package-version' ;
4- import { resolve , relative } from 'path' ;
5- import { visualizer } from 'rollup-plugin-visualizer' ;
6- import { readdirSync , watch , writeFileSync } from 'fs' ;
7- import { isEqual } from 'lodash' ;
4+ import { resolve } from 'path' ;
85import Info from 'unplugin-info/vite' ;
96import viteCompression from 'vite-plugin-compression' ;
107
@@ -13,40 +10,6 @@ import viteCompression from 'vite-plugin-compression';
1310// @ts -ignore
1411const env = process . env . NODE_ENV ;
1512console . log ( env ) ;
16- ( ( ) => {
17- const pixiPerformScriptDirPath = './src/Core/gameScripts/pixi/performs/' ;
18- const pixiPerformManagerDirPath = './src/Core/util/pixiPerformManager/' ;
19- const relativePath = relative ( pixiPerformManagerDirPath , pixiPerformScriptDirPath ) . replaceAll ( '\\' , '/' ) ;
20- let lastFiles : string [ ] = [ ] ;
21-
22- function setInitFile ( ) {
23- console . log ( '正在自动编写pixi特效依赖注入' ) ;
24- writeFileSync (
25- resolve ( pixiPerformManagerDirPath , 'initRegister.ts' ) ,
26- lastFiles
27- . map ( ( v ) => {
28- const filePath = relativePath + '/' + v . slice ( 0 , v . lastIndexOf ( '.' ) ) ;
29- return `import '${ filePath } ';` ;
30- } )
31- . join ( '\n' ) + '\n' ,
32- { encoding : 'utf-8' } ,
33- ) ;
34- }
35-
36- function getPixiPerformScriptFiles ( ) {
37- const pixiPerformScriptFiles = readdirSync ( pixiPerformScriptDirPath , { encoding : 'utf-8' } ) . filter ( ( v ) =>
38- [ 'ts' , 'js' , 'tsx' , 'jsx' ] . includes ( v . slice ( v . indexOf ( '.' ) + 1 , v . length ) ) ,
39- ) ;
40- if ( ! isEqual ( pixiPerformScriptFiles , lastFiles ) ) {
41- lastFiles = pixiPerformScriptFiles ;
42- setInitFile ( ) ;
43- }
44- }
45-
46- getPixiPerformScriptFiles ( ) ;
47-
48- if ( env !== 'production' ) watch ( pixiPerformScriptDirPath , { encoding : 'utf-8' } , getPixiPerformScriptFiles ) ;
49- } ) ( ) ;
5013
5114export default defineConfig ( {
5215 plugins : [
0 commit comments