59 lines
1.6 KiB
JavaScript
59 lines
1.6 KiB
JavaScript
import react from '@vitejs/plugin-react';
|
|
import { promises as fsPromises } from 'fs';
|
|
import { createRequire } from 'module';
|
|
import * as path from 'path';
|
|
import * as url from 'url';
|
|
import { defineConfig } from 'vite';
|
|
import { ViteEjsPlugin } from 'vite-plugin-ejs';
|
|
|
|
process.env.VITE_APP_GIT_SHA_DATE = new Date().toLocaleString('en-US', {
|
|
timeZone: 'America/Los_Angeles',
|
|
});
|
|
|
|
const WRONG_CODE = `import { bpfrpt_proptype_WindowScroller } from "../WindowScroller.js";`;
|
|
function reactVirtualized() {
|
|
return {
|
|
name: 'flat:react-virtualized',
|
|
configResolved: async () => {
|
|
const require = createRequire(import.meta.url);
|
|
const reactVirtualizedPath = require.resolve('react-virtualized');
|
|
const { pathname: reactVirtualizedFilePath } = new url.URL(
|
|
reactVirtualizedPath,
|
|
import.meta.url
|
|
);
|
|
const file = reactVirtualizedFilePath.replace(
|
|
path.join('dist', 'commonjs', 'index.js'),
|
|
path.join('dist', 'es', 'WindowScroller', 'utils', 'onScroll.js')
|
|
);
|
|
const code = await fsPromises.readFile(file, 'utf-8');
|
|
const modified = code.replace(WRONG_CODE, '');
|
|
await fsPromises.writeFile(file, modified);
|
|
},
|
|
};
|
|
}
|
|
|
|
export default defineConfig({
|
|
base: '/',
|
|
plugins: [
|
|
ViteEjsPlugin((viteConfig) => {
|
|
// viteConfig is the current Vite resolved config
|
|
return { env: viteConfig.env };
|
|
}),
|
|
|
|
reactVirtualized(),
|
|
react(),
|
|
],
|
|
server: {
|
|
host: true,
|
|
port: 3000,
|
|
open: true,
|
|
},
|
|
optimizeDeps: {
|
|
esbuildOptions: {
|
|
loader: {
|
|
'.js': 'jsx',
|
|
},
|
|
},
|
|
},
|
|
});
|