sifatbaho
This commit is contained in:
354
webpack.mix.js
vendored
Executable file
354
webpack.mix.js
vendored
Executable file
@@ -0,0 +1,354 @@
|
||||
const mix = require('laravel-mix');
|
||||
const lodash = require("lodash");
|
||||
const WebpackRTLPlugin = require('webpack-rtl-plugin');
|
||||
const folder = {
|
||||
src: "resources/", // source files
|
||||
dist: "public/", // build files
|
||||
dist_assets: "public/assets/" //build assets files
|
||||
};
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Mix Asset Management
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Mix provides a clean, fluent API for defining some Webpack build steps
|
||||
| for your Laravel application. By default, we are compiling the Sass
|
||||
| file for the application as well as bundling up all the JS files.
|
||||
|
|
||||
*/
|
||||
|
||||
var third_party_assets = {
|
||||
css_js: [
|
||||
{ "name": "bootstrap", "assets": ["./node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"] },
|
||||
{
|
||||
"name": "aos",
|
||||
"assets": [
|
||||
"./node_modules/aos/dist/aos.js",
|
||||
"./node_modules/aos/dist/aos.css",
|
||||
]
|
||||
},
|
||||
|
||||
{ "name": "dom-autoscroller", "assets": ["./node_modules/dom-autoscroller/dist/dom-autoscroller.min.js"] },
|
||||
{
|
||||
"name": "dragula",
|
||||
"assets": ["./node_modules/dragula/dist/dragula.min.js",
|
||||
"./node_modules/dragula/dist/dragula.min.css"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "choices.js",
|
||||
"assets": ["./node_modules/choices.js/public/assets/scripts/choices.min.js",
|
||||
"./node_modules/choices.js/public/assets/styles/choices.min.css"
|
||||
]
|
||||
},
|
||||
{ "name": "cleave.js", "assets": ["./node_modules/cleave.js/dist/cleave.min.js"] },
|
||||
{ "name": "cleave-phone.js", "assets": ["./node_modules/cleave.js/src/addons/phone-type-formatter.uz.js"] },
|
||||
{ "name": "apexcharts", "assets": ["./node_modules/apexcharts/dist/apexcharts.min.js"] },
|
||||
// { "name": "bootstrap", "assets": ["./node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"] },
|
||||
{ "name": "chart.js", "assets": ["./node_modules/chart.js/dist/chart.min.js"] },
|
||||
// { "name": "fg-emoji-picker", "assets": ["./node_modules/fg-emoji-picker/fgEmojiPicker.js"] },
|
||||
|
||||
{
|
||||
"name": "dropzone",
|
||||
"assets": ["./node_modules/dropzone/dist/dropzone-min.js",
|
||||
"./node_modules/dropzone/dist/dropzone.css"
|
||||
]
|
||||
},
|
||||
//{ "name": "echarts", "assets": ["./node_modules/echarts/dist/echarts.min.js"] },
|
||||
|
||||
{
|
||||
"name": "fullcalendar",
|
||||
"assets": [
|
||||
"./node_modules/fullcalendar/main.min.js",
|
||||
"./node_modules/fullcalendar/main.min.css"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "flatpickr",
|
||||
"assets": ["./node_modules/flatpickr/dist/flatpickr.min.js",
|
||||
"./node_modules/flatpickr/dist/flatpickr.min.css"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "glightbox",
|
||||
"assets": ["./node_modules/glightbox/dist/js/glightbox.min.js",
|
||||
"./node_modules/glightbox/dist/css/glightbox.min.css"
|
||||
]
|
||||
},
|
||||
{ "name": "isotope-layout", "assets": ["./node_modules/isotope-layout/dist/isotope.pkgd.min.js"] },
|
||||
{
|
||||
"name": "jsvectormap",
|
||||
"assets": [
|
||||
"./node_modules/jsvectormap/dist/css/jsvectormap.min.css",
|
||||
"./node_modules/jsvectormap/dist/js/jsvectormap.min.js",
|
||||
// "./node_modules/jsvectormap/src/maps/world-merc.js",
|
||||
// "./node_modules/jsvectormap/src/maps/us-merc-en.js",
|
||||
// "./node_modules/jsvectormap/src/maps/canada.js",
|
||||
// "./node_modules/jsvectormap/src/maps/russia.js",
|
||||
// "./node_modules/jsvectormap/src/maps/spain.js",
|
||||
]
|
||||
},
|
||||
{ "name": "masonry-layout", "assets": ["./node_modules/masonry-layout/dist/masonry.pkgd.min.js"] },
|
||||
{ "name": "particles.js", "assets": ["./node_modules/particles.js/particles.js"] },
|
||||
|
||||
{
|
||||
"name": "prismjs",
|
||||
"assets": [
|
||||
"./node_modules/prismjs/prism.js",
|
||||
"./node_modules/prismjs/themes/prism.css",
|
||||
"./node_modules/prismjs/plugins/toolbar/prism-toolbar.min.css",
|
||||
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "multi.js",
|
||||
"assets": [
|
||||
"./node_modules/multi.js/dist/multi.min.js",
|
||||
"./node_modules/multi.js/dist/multi.min.css",
|
||||
]
|
||||
},
|
||||
|
||||
{ "name": "moment", "assets": ["./node_modules/moment/min/moment.min.js"] },
|
||||
{
|
||||
"name": "quill",
|
||||
"assets": [
|
||||
"./node_modules/quill/dist/quill.core.css",
|
||||
"./node_modules/quill/dist/quill.bubble.css",
|
||||
"./node_modules/quill/dist/quill.snow.css",
|
||||
"./node_modules/quill/dist/quill.min.js"
|
||||
]
|
||||
},
|
||||
{ "name": "rater-js", "assets": ["./node_modules/rater-js/index.js"] },
|
||||
|
||||
{
|
||||
"name": "shepherd.js",
|
||||
"assets": [
|
||||
"./node_modules/shepherd.js/dist/js/shepherd.min.js",
|
||||
"./node_modules/shepherd.js/dist/css/shepherd.css",
|
||||
]
|
||||
},
|
||||
|
||||
|
||||
{ "name": "simplebar", "assets": ["./node_modules/simplebar/dist/simplebar.min.js"] },
|
||||
{
|
||||
"name": "sweetalert2",
|
||||
"assets": ["./node_modules/sweetalert2/dist/sweetalert2.min.js",
|
||||
"./node_modules/sweetalert2/dist/sweetalert2.min.css"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "swiper",
|
||||
"assets": ["./node_modules/swiper/swiper-bundle.min.js",
|
||||
"./node_modules/swiper/swiper-bundle.min.css"
|
||||
]
|
||||
},
|
||||
|
||||
// { "name": "feather-icons", "assets": ["./node_modules/feather-icons/dist/feather.min.js"] },
|
||||
{ "name": "wnumb", "assets": ["./node_modules/wnumb/wNumb.min.js"] },
|
||||
{ "name": "node-waves", "assets": ["./node_modules/node-waves/dist/waves.min.js"] },
|
||||
{ "name": "sortablejs", "assets": ["./node_modules/sortablejs/Sortable.min.js"] }
|
||||
]
|
||||
};
|
||||
|
||||
//copying third party assets
|
||||
lodash(third_party_assets).forEach(function(assets, type) {
|
||||
if (type == "css_js") {
|
||||
lodash(assets).forEach(function(plugin) {
|
||||
var name = plugin['name'],
|
||||
assetlist = plugin['assets'],
|
||||
css = [],
|
||||
js = [];
|
||||
lodash(assetlist).forEach(function(asset) {
|
||||
var ass = asset.split(',');
|
||||
for (let i = 0; i < ass.length; ++i) {
|
||||
if (ass[i].substr(ass[i].length - 3) == ".js") {
|
||||
js.push(ass[i]);
|
||||
} else {
|
||||
css.push(ass[i]);
|
||||
}
|
||||
};
|
||||
});
|
||||
if (js.length > 0) {
|
||||
mix.combine(js, folder.dist_assets + "/libs/" + name + "/" + name + ".min.js");
|
||||
}
|
||||
if (css.length > 0) {
|
||||
mix.combine(css, folder.dist_assets + "/libs/" + name + "/" + name + ".min.css");
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// mix.copyDirectory("./node_modules/tinymce", folder.dist_assets + "/libs/tinymce");
|
||||
// mix.copyDirectory("./node_modules/leaflet/dist/images", folder.dist_assets + "/libs/leaflet/images");
|
||||
// mix.copyDirectory("./node_modules/bootstrap-editable/img", folder.dist_assets + "/libs/img");
|
||||
|
||||
// copy all fonts
|
||||
var out = folder.dist_assets + "fonts";
|
||||
mix.copyDirectory(folder.src + "fonts", out);
|
||||
|
||||
// copy all images
|
||||
var out = folder.dist_assets + "images";
|
||||
mix.copyDirectory(folder.src + "images", out);
|
||||
|
||||
//copy all json
|
||||
// var out = folder.dist_assets + "json";
|
||||
// mix.copyDirectory(folder.src + "json", out);
|
||||
|
||||
mix.sass('resources/scss/bootstrap.scss', folder.dist_assets + "css").minify(folder.dist_assets + "css/bootstrap.css");
|
||||
mix.sass('resources/scss/icons.scss', folder.dist_assets + "css").options({ processCssUrls: false }).minify(folder.dist_assets + "css/icons.css");
|
||||
mix.sass('resources/scss/app.scss', folder.dist_assets + "css").options({ processCssUrls: false }).minify(folder.dist_assets + "css/app.css");
|
||||
mix.sass('resources/scss/custom.scss', folder.dist_assets + "css").options({ processCssUrls: false }).minify(folder.dist_assets + "css/custom.css");
|
||||
|
||||
|
||||
mix.webpackConfig({
|
||||
plugins: [
|
||||
new WebpackRTLPlugin()
|
||||
],
|
||||
stats: {
|
||||
children: true,
|
||||
},
|
||||
});
|
||||
|
||||
|
||||
//copying demo pages related assets
|
||||
var app_pages_assets = {
|
||||
js: [
|
||||
// folder.src + "js/pages/animation-aos.init.js",
|
||||
// folder.src + "js/pages/apexcharts-area.init.js",
|
||||
// folder.src + "js/pages/apexcharts-bar.init.js",
|
||||
// folder.src + "js/pages/apexcharts-boxplot.init.js",
|
||||
// folder.src + "js/pages/apexcharts-bubble.init.js",
|
||||
// folder.src + "js/pages/apexcharts-candlestick.init.js",
|
||||
// folder.src + "js/pages/apexcharts-column.init.js",
|
||||
// folder.src + "js/pages/apexcharts-heatmap.init.js",
|
||||
// folder.src + "js/pages/apexcharts-line.init.js",
|
||||
// folder.src + "js/pages/apexcharts-mixed.init.js",
|
||||
// folder.src + "js/pages/apexcharts-pie.init.js",
|
||||
// folder.src + "js/pages/apexcharts-polararea.init.js",
|
||||
// folder.src + "js/pages/apexcharts-radar.init.js",
|
||||
// folder.src + "js/pages/apexcharts-radialbar.init.js",
|
||||
// folder.src + "js/pages/apexcharts-scatter.init.js",
|
||||
// folder.src + "js/pages/apexcharts-timeline.init.js",
|
||||
// folder.src + "js/pages/apexcharts-treemap.init.js",
|
||||
// folder.src + "js/pages/apps-nft-auction.init.js",
|
||||
// folder.src + "js/pages/apps-nft-create.init.js",
|
||||
// folder.src + "js/pages/apps-nft-explore.init.js",
|
||||
// folder.src + "js/pages/apps-nft-item-details.init.js",
|
||||
// folder.src + "js/pages/apps-nft-ranking.init.js",
|
||||
// folder.src + "js/pages/card.init.js",
|
||||
// folder.src + "js/pages/chartjs.init.js",
|
||||
// folder.src + "js/pages/chat.init.js",
|
||||
// folder.src + "js/pages/coming-soon.init.js",
|
||||
// folder.src + "js/pages/crm-deals.init.js",
|
||||
// folder.src + "js/pages/crypto-buy-sell.init.js",
|
||||
// folder.src + "js/pages/crypto-kyc.init.js",
|
||||
// folder.src + "js/pages/crypto-orders.init.js",
|
||||
// folder.src + "js/pages/crypto-transactions.init.js",
|
||||
// folder.src + "js/pages/crypto-wallet.init.js",
|
||||
// folder.src + "js/pages/dashboard-analytics.init.js",
|
||||
// folder.src + "js/pages/dashboard-crm.init.js",
|
||||
// folder.src + "js/pages/dashboard-crypto.init.js",
|
||||
// folder.src + "js/pages/dashboard-ecommerce.init.js",
|
||||
// folder.src + "js/pages/dashboard-projects.init.js",
|
||||
// folder.src + "js/pages/dashboard-nft.init.js",
|
||||
// folder.src + "js/pages/datatables.init.js",
|
||||
// folder.src + "js/pages/echarts.init.js",
|
||||
// folder.src + "js/pages/ecommerce-cart.init.js",
|
||||
// folder.src + "js/pages/ecommerce-customer-list.init.js",
|
||||
// folder.src + "js/pages/ecommerce-product-checkout.init.js",
|
||||
// folder.src + "js/pages/ecommerce-product-create.init.js",
|
||||
// folder.src + "js/pages/ecommerce-product-details.init.js",
|
||||
// folder.src + "js/pages/ecommerce-product-list.init.js",
|
||||
// folder.src + "js/pages/file-manager.init.js",
|
||||
// folder.src + "js/pages/flag-input.init.js",
|
||||
// folder.src + "js/pages/form-file-upload.init.js",
|
||||
// folder.src + "js/pages/form-input-spin.init.js",
|
||||
// folder.src + "js/pages/form-advanced.init.js",
|
||||
// folder.src + "js/pages/form-editor.init.js",
|
||||
// folder.src + "js/pages/form-masks.init.js",
|
||||
// folder.src + "js/pages/form-pickers.init.js",
|
||||
// folder.src + "js/pages/form-validation.init.js",
|
||||
// folder.src + "js/pages/form-wizard.init.js",
|
||||
// folder.src + "js/pages/gallery.init.js",
|
||||
// folder.src + "js/pages/gmaps.init.js",
|
||||
// folder.src + "js/pages/gridjs.init.js",
|
||||
//folder.src + "js/pages/invoicecreate.init.js",
|
||||
// folder.src + "js/pages/invoiceslist.init.js",
|
||||
// folder.src + "js/pages/leaflet-map.init.js",
|
||||
// folder.src + "js/pages/leaflet-us-states.js",
|
||||
//folder.src + "js/pages/listjs.init.js",
|
||||
// folder.src + "js/pages/mailbox.init.js",
|
||||
// folder.src + "js/pages/modal.init.js",
|
||||
// folder.src + "js/pages/materialdesign.list.js",
|
||||
// folder.src + "js/pages/notifications.init.js",
|
||||
// folder.src + "js/pages/nestable.init.js",
|
||||
// folder.src + "js/pages/nft-landing.init.js",
|
||||
// folder.src + "js/pages/particles.app.js",
|
||||
// folder.src + "js/pages/password-addon.init.js",
|
||||
// folder.src + "js/pages/password-create.init.js",
|
||||
// folder.src + "js/pages/pricing.init.js",
|
||||
// folder.src + "js/pages/profile-setting.init.js",
|
||||
// folder.src + "js/pages/profile.init.js",
|
||||
// folder.src + "js/pages/project-create.init.js",
|
||||
// folder.src + "js/pages/project-list.init.js",
|
||||
// folder.src + "js/pages/project-overview.init.js",
|
||||
// folder.src + "js/pages/range-sliders.init.js",
|
||||
// folder.src + "js/pages/rating.init.js",
|
||||
folder.src + "js/pages/remix-icons-listing.js",
|
||||
folder.src + "js/pages/search-result.init.js",
|
||||
// folder.src + "js/pages/seller-details.init.js",
|
||||
// folder.src + "js/pages/sellers.init.js",
|
||||
// folder.src + "js/pages/select2.init.js",
|
||||
// folder.src + "js/pages/sweetalerts.init.js",
|
||||
// folder.src + "js/pages/swiper.init.js",
|
||||
// folder.src + "js/pages/tasks-kanban.init.js",
|
||||
// folder.src + "js/pages/tasks-list.init.js",
|
||||
// folder.src + "js/pages/team.init.js",
|
||||
// folder.src + "js/pages/ticketdetail.init.js",
|
||||
// folder.src + "js/pages/ticketlist.init.js",
|
||||
// folder.src + "js/pages/timeline.init.js",
|
||||
// folder.src + "js/pages/tour.init.js",
|
||||
// folder.src + "js/pages/todo.init.js",
|
||||
// folder.src + "js/pages/two-step-verification.init.js",
|
||||
// folder.src + "js/pages/vector-maps.init.js",
|
||||
// folder.src + "js/pages/landing.init.js",
|
||||
// folder.src + "js/pages/widgets.init.js"
|
||||
|
||||
]
|
||||
};
|
||||
|
||||
var out = folder.dist_assets + "js/";
|
||||
lodash(app_pages_assets).forEach(function(assets, type) {
|
||||
for (let i = 0; i < assets.length; ++i) {
|
||||
mix.js(assets[i], out + "pages");
|
||||
};
|
||||
});
|
||||
|
||||
mix.combine('resources/js/plugins.js', folder.dist_assets + "js/plugins.min.js");
|
||||
mix.combine('resources/js/layout.js', folder.dist_assets + "js/layout.js");
|
||||
mix.combine('resources/js/bootstrap.js', folder.dist_assets + "js/bootstrap.min.js");
|
||||
mix.combine('resources/js/app.js', folder.dist_assets + "js/app.min.js");
|
||||
mix.combine('resources/js/order-edit.js', folder.dist_assets + "js/order-edit.js");
|
||||
mix.combine('resources/js/conclusion-add.js', folder.dist_assets + "js/conclusion-add.js");
|
||||
mix.combine('resources/js/pages/orders/show.js', folder.dist_assets + "js/pages/orders/show.js");
|
||||
mix.combine('resources/js/pages/orders/create.js', folder.dist_assets + "js/pages/orders/create.js");
|
||||
// mix.combine('resources/js/pages/leaflet-us-states.js', folder.dist_assets + "js/pages/leaflet-us-states.js");
|
||||
// mix.combine('resources/js/pages/form-wizard.init.js', folder.dist_assets + "js/pages/form-wizard.init.js");
|
||||
// mix.combine('resources/js/pages/ecommerce-order.init.js', folder.dist_assets + "js/pages/ecommerce-order.init.js");
|
||||
// mix.combine('resources/js/pages/ecommerce-customer-list.init.js', folder.dist_assets + "js/pages/ecommerce-customer-list.init.js");
|
||||
// mix.combine('resources/js/pages/ecommerce-cart.init.js', folder.dist_assets + "js/pages/ecommerce-cart.init.js");
|
||||
// mix.combine('resources/js/pages/tasks-list.init.js', folder.dist_assets + "js/pages/tasks-list.init.js");
|
||||
// mix.combine('resources/js/pages/invoicecreate.init.js', folder.dist_assets + "js/pages/invoicecreate.init.js");
|
||||
// mix.combine('resources/js/pages/invoicedetails.js', folder.dist_assets + "js/pages/invoicedetails.js");
|
||||
// mix.combine('resources/js/pages/invoiceslist.init.js', folder.dist_assets + "js/pages/invoiceslist.init.js");
|
||||
// mix.combine('resources/js/pages/ticketlist.init.js', folder.dist_assets + "js/pages/ticketlist.init.js");
|
||||
// mix.combine('resources/js/pages/listjs.init.js', folder.dist_assets + "js/pages/listjs.init.js");
|
||||
// mix.combine('resources/js/pages/calendar.init.js', folder.dist_assets + "js/pages/calendar.init.js");
|
||||
mix.combine('resources/js/pages/plugins/lord-icon-2.1.0.js', folder.dist_assets + "js/pages/plugins/lord-icon-2.1.0.min.js");
|
||||
// mix.combine('resources/js/pages/plugins/jsonfull-emoji-list.json', folder.dist_assets + "js/pages/plugins/jsonfull-emoji-list.json");
|
||||
// mix.combine('resources/js/pages/plugins/event.init.json', folder.dist_assets + "js/pages/plugins/event.init.json");
|
||||
mix.combine('resources/js/dashboard.js', folder.dist_assets + "js/dashboard.js");
|
||||
mix.combine('resources/js/toastify.js', folder.dist_assets + "js/toastify.js");
|
||||
mix.combine('resources/js/activities.js', folder.dist_assets + "js/activities.js");
|
||||
mix.combine('resources/js/show-documents.js', folder.dist_assets + "js/show-documents.js");
|
||||
Reference in New Issue
Block a user