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
|
|
|
|