UNPKG

vite-plugin-cesium-build

Version:
49 lines (45 loc) 1.81 kB
'use strict'; const pathe = require('pathe'); const vitePluginExternals = require('vite-plugin-externals'); const vitePluginStaticCopy = require('vite-plugin-static-copy'); const setBaseUrl = require('./shared/vite-plugin-cesium-build.CBlexsze.cjs'); const index = (pluginOptions) => { const options = setBaseUrl.resolveOptions(pluginOptions, "./node_modules/cesium/Build/Cesium"); return [ // externals ...options.iife ? [vitePluginExternals.viteExternalsPlugin({ cesium: "Cesium" })] : [], // copy ...vitePluginStaticCopy.viteStaticCopy({ targets: [ // resources ...["Assets", "ThirdParty", "Widgets", "Workers"].map((item) => ({ src: pathe.join(options.from, item, "*"), dest: pathe.join(options.to, item, "/") })), // Cesium.js ...options.iife ? [{ src: pathe.join(options.from, "Cesium.js"), dest: pathe.join(options.to, "/") }] : [], // css ...options.css ? [{ src: pathe.join(options.from, "/Widgets/widgets.css"), dest: pathe.join(options.to, "/Widgets/") }] : [] ], silent: true }), // imports ...options.iife ? [ setBaseUrl.imports([(base) => pathe.join(base, options.from.replace(/\/Cesium\/?$/, ""), "CesiumUnminified/Cesium.js")], "serve"), setBaseUrl.imports([(base) => pathe.join(base, options.to, "Cesium.js")], "build") ] : [], ...options.css ? [ setBaseUrl.imports([(base) => pathe.join(base, options.from, "Widgets/widgets.css")], "serve"), setBaseUrl.imports([(base) => pathe.join(base, options.to, "Widgets/widgets.css")], "build") ] : [], // base url ...options.customCesiumBaseUrl !== true ? [setBaseUrl.setBaseUrl(options)] : [] ]; }; module.exports = index;