zen-app-plugin 0.0.7 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +1 -1
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(){let e=require("terser-webpack-plugin"),{VueLoaderPlugin:
|
|
1
|
+
!function(){let e=require("terser-webpack-plugin"),{VueLoaderPlugin:o}=require("vue-loader"),s=require("path"),t=require("fs"),n=require("body-parser"),r=require("./makeIndex"),{makeRootIndex:l,makeSonIndex:i}=r,u=require("./plugin");function a(e,o){if(o.length<2)return;let n,r=o.filter(((o,r)=>(0===r&&(n=s.join(e,o),t.existsSync(n)||t.mkdirSync(n)),r>0)));a(n,r)}var c={entry:{},output:{filename:"[name].js"},watchOptions:{ignored:["node_modules","dist","debug"],poll:300},externals:{vue:"Vue","router-view":"VueRouter","element-plus":"ElementPlus"},plugins:[new o],module:{noParse:/Vue|jquery/,rules:[{test:/\.jsx?$/,exclude:/(node_modules|bower_components)/,use:{loader:"babel-loader",options:{cacheDirectory:!0,presets:[["@vue/app",{modules:"commonjs",loose:!0,useBuiltIns:"entry"}]],plugins:["@babel/plugin-syntax-jsx"]}}},{test:/\.vue$/,loader:"vue-loader"},{test:/\.css$/,use:["style-loader","css-loader"]},{test:/\.scss$/,use:["style-loader","css-loader",{loader:"sass-loader",options:{implementation:require("sass")}}]}]}};module.exports=({target:o,mode:r,ROOT:d,port:p})=>{let m,g,y,j,f;for(f=t.readdirSync(s.resolve(d,"src")),y=0,j=f.length;y<j;y++)g=f[y],-1!==g.indexOf(".js")&&(m=s.basename(g),m=m.substr(0,m.length-3),c.entry[m]=s.resolve(d,"src",g));return c.resolve={alias:{"@":s.resolve(d,"src")},extensions:[".js",".vue",".jsx",".json"]},c.mode=r,c.optimization=function(o){return"production"===o?{splitChunks:!1,minimize:!0,minimizer:[new e({parallel:!0,extractComments:!1,exclude:/node_modules/,terserOptions:{compress:{drop_console:!0,collapse_vars:!0,reduce_vars:!0,drop_debugger:!0},mangle:{reserved:["zen","$"]},output:{comments:!1,ascii_only:!0},sourceMap:!1,toplevel:!0,ie8:!1,keep_fnames:!1,safari10:!1}})]}:{}}(r),"development"===r?(c.cache={type:"memory"},c.devServer={open:!0,hot:!0,client:!1,host:"127.0.0.1",allowedHosts:"all",historyApiFallback:!0,onAfterSetupMiddleware:function(e){const{app:o}=e;o.use(n.json());const r=s.join(d,"src","pages");o.post("/coder/read",(function(e,o){const{file:n,key:l}=e.body;if(!n)return o.json({code:10001,message:"参数错误"});const i=s.join(r,n);if(!t.existsSync(i))return o.json({code:1e4,data:null});let u={code:1e4,data:t.readFileSync(i,"utf-8")};o.json(u)})),o.post("/coder/write",(function(e,o){const{file:n,content:u,type:c}=e.body;if(!n)return o.json({code:10001,message:"参数错误"});const d=n.split("/");a(r,d);const p=s.join(r,n);if(t.writeFileSync(p,u),"page"===c){const e=d.splice(0,d.length-2),o=s.join(r,e.join(s.sep));if(0===e.length)return l(r);i(o,e.join("/"),r)}o.json({code:1e4,message:"操作成功"})}))},proxy:{"/api":{target:"http://127.0.0.1:"+p,secure:!1,changeOrigin:!0}},static:{directory:s.join(d,"public")},headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Headers":"*"}}):(c.devtool=!1,c.output.clean=!0,c.output.path=s.join(d,"dist")),c.plugins.push(new u(o)),c}}();
|