86 lines
2.6 KiB
JavaScript
Raw Normal View History

2025-02-08 00:27:30 -06:00
import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';
2025-02-08 00:34:32 -06:00
import html from '@rollup/plugin-html';
import { glob } from 'glob';
/**
* Obtener archivos desde el componente local
*/
function GetFilesArray(query) {
return glob.sync(query);
}
// Page JS Files
const pageJsFiles = GetFilesArray('vendor/koneko/vuexy-admin-mexico/resources/js/**/*.js'); // Incluye admin-settings, auth, pages, etc.
// Processing Vendor JS Files
const vendorJsFiles = GetFilesArray('vendor/koneko/vuexy-admin-mexico/resources/assets/vendor/js/*.js');
// Processing Libs JS Files
const LibsJsFiles = GetFilesArray('vendor/koneko/vuexy-admin-mexico/resources/assets/vendor/libs/**/*.js');
/**
* Scss Files
*/
// Page Scss Files
const pageScssFiles = GetFilesArray('vendor/koneko/vuexy-admin-mexico/resources/scss/**/!(_)*.scss');
// Processing Core, Themes & Pages Scss Files
const CoreScssFiles = GetFilesArray('vendor/koneko/vuexy-admin-mexico/resources/assets/vendor/scss/**/!(_)*.scss');
// Processing Libs Scss & Css Files
const LibsScssFiles = GetFilesArray('vendor/koneko/vuexy-admin-mexico/resources/assets/vendor/libs/**/!(_)*.scss');
const LibsCssFiles = GetFilesArray('vendor/koneko/vuexy-admin-mexico/resources/assets/vendor/libs/**/*.css');
// Processing Fonts Scss Files
const FontsScssFiles = GetFilesArray('vendor/koneko/vuexy-admin-mexico/resources/assets/vendor/fonts/!(_)*.scss');
// Processing Window Assignment for Libs like jKanban, pdfMake
function libsWindowAssignment() {
return {
name: 'libsWindowAssignment',
transform(src, id) {
if (id.includes('jkanban.js')) {
return src.replace('this.jKanban', 'window.jKanban');
} else if (id.includes('vfs_fonts')) {
return src.replaceAll('this.pdfMake', 'window.pdfMake');
}
}
};
}
2025-02-08 00:27:30 -06:00
export default defineConfig({
plugins: [
laravel({
2025-02-08 00:34:32 -06:00
input: [
'vendor/koneko/vuexy-admin-mexico/resources/assets/css/demo.css',
...pageJsFiles,
...vendorJsFiles,
...LibsJsFiles,
...pageScssFiles,
...CoreScssFiles,
...LibsScssFiles,
...LibsCssFiles,
...FontsScssFiles
],
refresh: ['resources/**', 'app/**', 'vendor/koneko/**']
2025-02-08 00:27:30 -06:00
}),
2025-02-08 00:34:32 -06:00
html(),
libsWindowAssignment(),
2025-02-08 00:27:30 -06:00
],
2025-02-08 00:34:32 -06:00
build: {
emptyOutDir: true
},
server: {
cors: true,
hmr: {
host: '127.0.0.1',
},
fs: {
allow: ['..'],
}
}
2025-02-08 00:27:30 -06:00
});
2025-02-08 00:34:32 -06:00