@das-fed/cli 6.3.0-beta.9 → 6.4.0-beta.10

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/bin/index.js CHANGED
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@das-fed/cli",
3
- "version": "6.3.0-beta.9",
3
+ "version": "6.4.0-beta.10",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "src/index.js",
@@ -15,30 +15,37 @@
15
15
  "chokidar": "^3.6.0",
16
16
  "concurrently": "^8.2.2",
17
17
  "consola": "^3.2.3",
18
+ "dayjs": "^1.11.10",
19
+ "es-module-lexer": "^1.5.4",
20
+ "execa": "^9.3.0",
18
21
  "fast-glob": "^3.3.2",
19
22
  "fs-extra": "^11.2.0",
20
23
  "inquirer": "^9.3.2",
21
24
  "json-schema-to-typescript": "^13.1.2",
22
25
  "json5": "^2.2.3",
26
+ "magic-string": "^0.30.10",
23
27
  "minimatch": "^9.0.3",
24
28
  "minimist": "^1.2.8",
25
29
  "minio": "^7.1.3",
30
+ "ora": "^8.0.1",
26
31
  "prettier": "^3.2.5",
27
32
  "strip-comments": "^2.0.1",
28
- "ts-morph": "^21.0.1"
29
- },
30
- "devDependencies": {
33
+ "ts-morph": "^21.0.1",
34
+ "@vitejs/plugin-vue": "^5.1.1",
31
35
  "@vitejs/plugin-vue-jsx": "^3.1.0",
36
+ "diff": "^5.2.0",
32
37
  "lodash-es": "^4.17.21",
33
38
  "rollup-plugin-visualizer": "^5.12.0",
34
39
  "semver": "^7.6.0",
35
40
  "uglify-js": "^3.18.0",
36
41
  "unplugin-auto-import": "^0.17.6",
37
42
  "unplugin-vue-components": "^0.26.0",
43
+ "vite": "^5.3.5",
38
44
  "vite-plugin-compression": "^0.5.1",
39
45
  "vite-plugin-style-import": "^2.0.0"
40
46
  },
41
47
  "peerDependencies": {
48
+ "@vitejs/plugin-vue": ">=5.1.1",
42
49
  "@vitejs/plugin-vue-jsx": ">=3.1.0",
43
50
  "rollup-plugin-visualizer": ">=5.12.0",
44
51
  "unplugin-auto-import": ">=0.17.6",
@@ -1 +1 @@
1
- import{initPublicConfig}from"../dev-helper/init-public-config.js";import{initWatchers}from"../dev-helper/watchers/index.js";import{execSync}from"child_process";import{resolve,relative,dirname}from"path";import{fileURLToPath}from"url";import minimist from"minimist";import fs from"fs-extra";import{generateNginx}from"./generate-nginx.js";import{getWindowConfig}from"./get-window-config.js";let __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename);export default{handle:async i=>{var[,...e]=i,i=minimist(i),t=process.cwd(),r={cwd:t,isDev:!1,isBuild:!0,...i};if(!(r.isLib??!1)){await initPublicConfig(r),await initWatchers(r);let i=await getWindowConfig(resolve(t,"public/config.js"));try{var o,n=resolve(t,"config.js");await fs.exists(n)&&(o=(await import(relative(resolve(__dirname),n)))["default"],""===i.microAppName&&delete i.microAppName,i={...o,...i})}catch(i){console.log("get rootConfig error",i)}await generateNginx({cwd:t,...i})}(e||[]).join(" ");let a="";i.c&&(a+="-c "+i.c),execSync("npx vite build "+a,{cwd:t,stdio:"inherit"})}};
1
+ import{initPublicConfig}from"../dev-helper/init-public-config.js";import{initWatchers}from"../dev-helper/watchers/index.js";import{execSync}from"child_process";import{resolve,relative,dirname}from"path";import{fileURLToPath}from"url";import minimist from"minimist";import fs from"fs-extra";import{generateNginx}from"./generate-nginx.js";import{getWindowConfig}from"../../utils/get-window-config/index.js";import{getCliConfig}from"../../utils/get-cli-config/index.js";let __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename);export default{handle:async i=>{var[,...e]=i,i=minimist(i),t=process.cwd(),o={cwd:t,isDev:!1,isBuild:!0,...await getCliConfig(),...i};if(!(o.isLib??!1)){await initPublicConfig(o),await initWatchers(o);let i=await getWindowConfig(resolve(t,"public/config.js"));try{var r,n=resolve(t,"config.js");await fs.exists(n)&&(r=(await import(relative(resolve(__dirname),n)))["default"],""===i.microAppName&&delete i.microAppName,i={...r,...i})}catch(i){console.log("get rootConfig error",i)}}(e||[]).join(" ");let a="";i.c&&(a+="-c "+i.c),execSync("npx vite build "+a,{cwd:t,stdio:"inherit"})}};
@@ -1 +1 @@
1
- import{dirname,resolve,relative}from"path";import{fileURLToPath}from"url";import glob from"fast-glob";import{getCliConfig}from"../../utils/get-cli-config/index.js";let __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename),loadModules=async l=>{var e=await glob("*/index.js",{cwd:resolve(__dirname,"./modules"),absolute:!0});0!==e.length&&(await Promise.all(e.map(e=>{let l=relative(__dirname,e).replaceAll("\\\\","/").replaceAll("\\","/");return l.startsWith(".")||(l="./"+l),import(l).then(e=>e?.default||(()=>{}))}))).map(e=>e(l))};export default{alias:[],handle:async e=>{console.log("das-cli heler","将会读取das-cli.json中helper的配置执行脚本");var l=process.cwd(),l=await getCliConfig({cwd:l});loadModules(l)}};
1
+ import{dirname,resolve,relative}from"path";import{fileURLToPath}from"url";import glob from"fast-glob";import{getCliConfig}from"../../utils/get-cli-config/index.js";let __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename),loadModules=async l=>{var e=await glob("*/index.js",{cwd:resolve(__dirname,"./modules"),absolute:!0});0!==e.length&&(await Promise.all(e.map(e=>{let l=relative(__dirname,e).replaceAll("\\\\","/").replaceAll("\\","/");return l.startsWith(".")||(l="./"+l),import(l).then(e=>e?.default||(()=>{}))}))).map(e=>e(l))};export default{alias:[],handle:async e=>{console.log("das-cli helper","将会读取das-cli.json中helper的配置执行脚本");var l=process.cwd(),l=await getCliConfig({cwd:l});loadModules(l)}};
@@ -0,0 +1 @@
1
+ window.config={};
@@ -0,0 +1 @@
1
+ window.config={};
@@ -0,0 +1 @@
1
+ let m={path:"/demo",component:()=>"virtual:module",meta:{keepAlive:!0}},l=(e,p)=>{var t=(s,e)=>async e=>{let t="string"==typeof e?e:"",a=("object"==typeof e&&(t=e.value),{method:s,url:t,headers:{}});return"get"!==a.method&&(a.params={...a.params,timestamp:(new Date).getTime()}),(a=p?await p(a):a).baseURL&&a.urlPrefix&&(a.baseURL=a.baseURL+a.urlPrefix),a};return{get:t("get"),post:t("post"),put:t("put"),patch:t("patch"),delete:t("delete")}},f=(t,e)=>l(null,async e=>(e.urlPrefix=t,e)),a=f("/test"),h=a.get("/user"),r=a.post("/user"),i=a.put("/user"),c=a.delete("/user"),p=Object.freeze(Object.defineProperty({__proto__:null,addUser:r,deleteUser:c,editUser:i,getUser:h},Symbol.toStringTag,{value:"Module"})),_={name:"示例",code:"demo",path:m.path,apis:p,btns:{add:{name:"新增按钮",apis:[r]},edit:{name:"编辑按钮",apis:[i]},delete:{name:"删除按钮",apis:[c]}}},g={path:"/",component:()=>"virtual:module"},b={name:"公告列表",code:"notice",path:g.path,apis:p,btns:{add:{name:"新增按钮",apis:[r]},edit:{name:"编辑按钮",apis:[i]},delete:{name:"删除按钮",apis:[c]}}},v=Object.assign({"./demo/index.ts":_,"./hello/index.ts":b}),U={code:"cms",name:"内容运营",modules:v};export{U as default};
@@ -0,0 +1 @@
1
+ import{build}from"vite";import{dirname,resolve}from"path";import{fileURLToPath}from"url";import fs from"fs-extra";let __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename),genAuthData=async e=>{var a,{cwd:e,entry:t="src/auth/index.ts"}=e,r=(await build({configFile:resolve(__dirname,"./vite.config.js"),build:{outDir:resolve(__dirname,"dist"),lib:{entry:resolve(e,t),name:"index",fileName:"index",formats:["es"]},rollupOptions:{external:["vue","vue-router",/^@das-fed\//]}},esbuild:{drop:["console","debugger"]}}),await import("./dist/index.js"))["default"],i=[];for(a of Object.values(r.modules)){for(var o of Object.values(a.apis)){var{method:o,urlPrefix:n,url:m}=await o,o={app:{code:r.code,name:r.name},api:{method:o,path:""+n+m},page:{path:a.path,name:a.name}};i.push(o)}for(var p of Object.keys(a.btns)){var d,l=a.btns[p];for(d of l.apis){var{method:s,urlPrefix:u,url:f}=await d,s={app:{code:r.code,name:r.name},api:{method:s,path:""+u+f},page:{path:a.path,name:a.name},btn:{code:p,name:l.name}};i.push(s)}}}return Object.values(i.reduce((e,a)=>{var t=`${a.page.path}:${a.api.method}:`+a.api.path;return(a.btn||!e[t]||e[t]&&!e[t].btn)&&(e[t]=a),e},{}))};export{genAuthData};
@@ -0,0 +1 @@
1
+ function isObject(e){return e&&"object"==typeof e&&!Array.isArray(e)}let merge=(e,t)=>{if(!isObject(e)||!isObject(t))return t;for(var r in t)isObject(t[r])?(e[r]||Object.assign(e,{[r]:{}}),mergeDeep(e[r],t[r])):Object.assign(e,{[r]:t[r]});return e},curringHttp=(e,s)=>{var t=(a,i)=>async e=>{let t="string"==typeof e?e:"",r=("object"==typeof e&&(t=e.value),{method:a,url:t,headers:{}});return"get"!==r.method&&(r.params={...r.params,timestamp:(new Date).getTime()}),i&&(r=await i(r)),(r=s?await s(r):r).baseURL&&r.urlPrefix&&(r.baseURL=r.baseURL+r.urlPrefix),r};return{get:t("get"),post:t("post"),put:t("put"),patch:t("patch"),delete:t("delete")}},createService=(t,r)=>curringHttp(null,async e=>(e.urlPrefix=t,r?.(e)||e));export{curringHttp,createService};
@@ -0,0 +1 @@
1
+ import{defineConfig}from"vite";import vue from"@vitejs/plugin-vue";import MagicString from"magic-string";import{parse}from"es-module-lexer";import fs from"fs-extra";import{resolve}from"path";import{parseImportCode}from"../../../../../utils/parse-import-code.js";let transformVueComponent=()=>{let n="virtual:module",r="\0"+n,p="virtual:node-create-api-service",t="\0"+p;return{name:"transform-vue-component",resolveId(e){return e===n?r:e===p?t:void 0},async load(e){return e===r?"export default ()=>{}":e===t?(await fs.readFile(resolve(__dirname,"./node-create-service.js"))).toString():void 0},async transform(e,r){var t;for(t of parseImportCode(e)||[]){var o=t.name.startsWith("@das-fed/utils/api-services"),a=!o&&!t.name.startsWith("@/")&&!t.name.startsWith(".");if(o&&(e=e.replace(t.name,p)),a){let r="";t.members.map(e=>{r+=`import { default as ${e.aliasName||e.name} } from '${n}';`}),r&&(e=e.replace(t.code,r))}}var i,s=new MagicString(e),[m]=parse(e);for(i of m)i.n?.endsWith(".vue")&&(1===i.t&&s.overwrite(i.s,i.e,n),2===i.t)&&s.overwrite(i.ss,i.se,`'${n}'`);return s.toString()}}};export default defineConfig(({})=>({plugins:[vue(),transformVueComponent()]}));
@@ -0,0 +1 @@
1
+ import fs from"fs-extra";import{resolve}from"path";import{consola}from"consola";import{genAuthData}from"./gen/index.js";import{diffWriteJson}from"../../../../utils/diff/index.js";export default async s=>{var t,o,e=(s?.helper||{})["genAuth"];e&&(e.cwd=e.cwd||s.cwd||process.cwd(),s=e["cwd"],{entry:o="src/auth/index.ts",result:t="auth.json"}=e,await fs.exists(resolve(s,o)))&&(consola.start("正在生成auth.json..."),o=await genAuthData(e),await diffWriteJson(resolve(s,t),o,{spaces:2}),consola.success("auth.json已生成!"))};
@@ -1 +1 @@
1
- import glob from"fast-glob";import fs from"fs-extra";import{resolve}from"path";import{extractExports}from"../../../../utils/ts-morph/index.js";import{consola}from"consola";let genEsmData=async s=>{let{cwd:e,modules:a}=s,t={};s=await glob(a,{cwd:e});return await Promise.all(s.map(async s=>{let a=s.replace(e,"").replace(/\\/g,"/").replace(".ts","").replace(".js","");(a=a.startsWith("./")?a.replace("./","/"):a).startsWith("/")||(a="/"+a);s=await fs.readFile(s);extractExports(s.toString()).map(s=>{t[s]=a})})),t};export default async s=>{var a=(s?.helper||{})["genEsmModuleMap"];a&&(s=a.cwd||s.cwd||process.cwd(),a=a["modules"],consola.start("正在生成esm-map.json..."),a=await genEsmData({modules:a}),s=resolve(s,"esm-map.json"),await fs.ensureFile(s),await fs.writeJSON(s,a,{spaces:2}),consola.success("esm-map.json已生成!"))};
1
+ import glob from"fast-glob";import fs from"fs-extra";import{resolve}from"path";import{diffWriteJson}from"../../../../utils/diff/index.js";import{consola}from"consola";import{parse}from"es-module-lexer";let genEsmData=async e=>{let{cwd:s,modules:a}=e,o={};e=await glob(a,{cwd:s});return await Promise.all(e.map(async e=>{let a=e.replace(s,"").replace(/\\/g,"/").replace(".ts","").replace(".js","");(a=a.startsWith("./")?a.replace("./","/"):a).startsWith("/")||(a="/"+a);var e=await fs.readFile(e),[,e]=parse(e.toString());e&&e.map(e=>{"default"!==e.n&&(o[e.n]=a)})})),o};export default async e=>{var a=(e?.helper||{})["genEsmModuleMap"];a&&(e=a.cwd||e.cwd||process.cwd(),a=a["modules"],consola.start("正在生成esm-map.json..."),a=await genEsmData({modules:a}),await diffWriteJson(resolve(e,"esm-map.json"),a),consola.success("esm-map.json已生成!"))};
@@ -1,4 +1,4 @@
1
- import { createService } from '@das-fed/utils/api-services'
1
+ import { createService } from '@das-fed/utils/create-api-service'
2
2
 
3
3
  const http = createService('/test')
4
4
 
@@ -0,0 +1 @@
1
+ import fs from"fs-extra";import{diffLines}from"diff";let diffWriteFile=async(i,e)=>{var f,r;if(await fs.exists(i))return(f=(await fs.readFile(i)).toString())?(r=diffLines(f,e).map(i=>i.value).join(";\r\n"),void fs.writeFile(i,""+f+r)):fs.writeFile(i,e);await fs.ensureFile(i),await fs.writeFile(i,e)};export{diffWriteFile};
@@ -0,0 +1 @@
1
+ export*from"./file/index.js";export*from"./json/index.js";
@@ -0,0 +1 @@
1
+ import fs from"fs-extra";import isEqual from"lodash-es/isEqual.js";function updateArray(r,a){let t=r.filter(e=>!a.some(r=>isEqual(e,r)));var e=a.filter(e=>!r.some(r=>isEqual(r,e)));let s=r.filter(e=>!t.some(r=>isEqual(e,r)));return e.forEach(r=>s.push(r)),s}function updateObject(e,a){let t={...e};return Object.keys(e).forEach(r=>{a.hasOwnProperty(r)||delete t[r]}),Object.keys(a).forEach(r=>{e.hasOwnProperty(r)||(t[r]=a[r])}),t}let diffWriteJson=async(e,a,t={})=>{if(await fs.exists(e)){var s=await fs.readJSON(e);if(0===Object.keys(s).length)return fs.writeJSON(e,a,{spaces:2,...t});let r=s;Array.isArray(s)&&Array.isArray(a)&&(r=updateArray(s,a)),Array.isArray(s)||Array.isArray(a)||(r=updateObject(s,a)),await fs.writeJSON(e,r,{spaces:2,...t})}else await fs.ensureFile(e),await fs.writeJSON(e,a)};export{diffWriteJson};
@@ -0,0 +1 @@
1
+ import stripComments from"strip-comments";import fs from"fs-extra";import vm from"vm";let getWindowConfig=async t=>{var o,e;return await fs.exists(t)?(t=(await fs.readFile(t)).toString(),o={exports:{},module:{exports:{}}},t=new vm.Script(`const window = {};${t};module.exports={ window }`),e=vm.createContext(o),t.runInContext(e),(o.module.exports.window||{}).config):{}};export{getWindowConfig};
@@ -0,0 +1 @@
1
+ import{resolve,extname}from"path";import fs from"fs-extra";import MagicString from"magic-string";import glob from"fast-glob";import{parseImportCode}from"../../utils/parse-import-code.js";let dasFeWeb=async e=>{let o;var s=process.cwd();let t=["@das-fed/web","@das-fed/utils","@das-fed/ui","@das-fed/ui","@das-fed/web-components"],i=resolve(s,"node_modules");s=["vue","vue-router","pinia","axios","@vueuse/core","element-plus","ant-design-vue","@element-plus/icons-vue","@ant-design/icons-vue","echarts","monaco-editor","@das-fed/web/packages/style","@das-fed/ui/packages/global/style",...e?.optimizeDepsInlclude||[]];let a=[],l=(await Promise.all(s.map(async e=>{var s;await fs.exists(resolve(i,e))&&(a.push(e),"element-plus"===e&&(a.push("element-plus/es"),s=await glob(["element-plus/es/components/*/style/css.mjs"],{cwd:i,onlyFiles:!0}),a.push(...s.map(e=>e.split(".")[0]))),"ant-design-vue"===e&&(a.push("ant-design-vue/es"),s=await glob(["ant-design-vue/es/*/style/css.js"],{cwd:i,onlyFiles:!0}),a.push(...s.map(e=>e.split(".")[0]))),"monaco-editor"===e)&&a.push("monaco-editor/esm/vs/language/json/json.worker","monaco-editor/esm/vs/language/css/css.worker","monaco-editor/esm/vs/language/html/html.worker","monaco-editor/esm/vs/language/typescript/ts.worker","monaco-editor/esm/vs/editor/editor.worker")})),{});return{name:"das-fe",enforce:"pre",config:(e,{})=>({optimizeDeps:{include:a},resolve:{alias:{"@":resolve(process.cwd(),"src")}}}),configResolved(e){o=e},buildStart:async()=>{o.cwd=resolve(process.cwd())},transformIndexHtml:{order:"post",handler:()=>{var e=o.base||"./";let s="development"===o.mode?e+"config.local.js":e+"config.js";return[{tag:"script",attrs:{src:s}}]}},async transform(s,e){if(!(-1<e.indexOf("?"))&&!(-1<e.indexOf("node_modules"))&&[".vue",".ts",".js",".jsx",".tsx"].includes(extname(e))){let e=parseImportCode(s);if(e&&0!==(e=e.filter(s=>t.find(e=>s.name===e))).length){var o,r,n=new MagicString(s);for(let a of e){o=a.name,r=void 0;let t=await(l[o]||(r=resolve(i,o,"esm-map.json"),await fs.exists(r)?(r=await fs.readJson(r),l[o]=r,l[o]):void 0));if(t){let o="";a.members.map(e=>{var s=e.name,s=t[s];s&&(o+=`import { ${e.code} } from '${a.name}${s}';`)}),o&&n.overwrite(a.start,a.end,o)}}return n.toString()}}}}};export default e=>[dasFeWeb(e)];
@@ -1 +1 @@
1
- import{resolve,extname}from"path";import fs from"fs-extra";import MagicString from"magic-string";import stripComments from"strip-comments";import kebabCase from"lodash-es/kebabCase.js";import{parseImportCode}from"../../utils/parse-import-code.js";let cwd=process.cwd(),nodeModulesDir=resolve(cwd,"node_modules"),nodeModulesDasUIDir=resolve(cwd,"node_modules/@das-fed/ui"),dasFeUIEsmMapPath=resolve(nodeModulesDasUIDir,"esm-map.json"),dasFeUIEsmMapPathPathExits=fs.existsSync(dasFeUIEsmMapPath),esmMap=dasFeUIEsmMapPathPathExits?fs.readJSONSync(dasFeUIEsmMapPath):{},iconComponentName="DasIcon",getEsmPath=e=>{let s=esmMap[e];return s=s.endsWith("/index")?s.slice(0,-6):s},DasFeUIEsm=e=>({name:"das-fed-ui-esm",enforce:"pre",async transform(e,a){if(!(-1<a.indexOf("?"))&&!(-1<a.indexOf("@das-fed/ui/packages/icon"))&&[".vue",".ts",".js",".jsx",".tsx"].includes(extname(a))){a=parseImportCode(e,"@das-fed/ui");if(a){let s=new MagicString(e);return a.map(e=>{let r="";e.members.map(async a=>{var t=a.name,o=getEsmPath(t);if(o){r+=`import { ${a.code} } from '@das-fed/ui${o}';`;let e=resolve(nodeModulesDir,`@das-fed/ui${o}/style.css`),s=`import '@das-fed/ui${o}/style.css'`;t.startsWith(iconComponentName)&&(a=getEsmPath(iconComponentName),e=resolve(nodeModulesDir,`@das-fed/ui${a}/style.css`),s=`import '@das-fed/ui${a}/style.css'`);o=await fs.exists(e);o&&(r+=s)}}),r&&s.overwrite(e.start,e.end,r)}),s.toString()}}}});export default(e={})=>[DasFeUIEsm(e)];
1
+ import{resolve,extname}from"path";import fs from"fs-extra";import MagicString from"magic-string";import stripComments from"strip-comments";import kebabCase from"lodash-es/kebabCase.js";import{parseImportCode}from"../../utils/parse-import-code.js";let cwd=process.cwd(),nodeModulesDir=resolve(cwd,"node_modules"),nodeModulesDasUIDir=resolve(cwd,"node_modules/@das-fed/ui"),dasFeUIEsmMapPath=resolve(nodeModulesDasUIDir,"esm-map.json"),dasFeUIEsmMapPathPathExits=fs.existsSync(dasFeUIEsmMapPath),esmMap=dasFeUIEsmMapPathPathExits?fs.readJSONSync(dasFeUIEsmMapPath):{},iconComponentName="DasIcon",getEsmPath=e=>{let s=esmMap[e];return s=s.endsWith("/index")?s.slice(0,-6):s},DasFeUIEsm=e=>({name:"das-fed-ui-esm",enforce:"pre",async transform(e,s){if(!(-1<s.indexOf("?"))&&!(-1<s.indexOf("@das-fed/ui/packages/icon"))&&[".vue",".ts",".js",".jsx",".tsx"].includes(extname(s))){s=parseImportCode(e,"@das-fed/ui");if(s){var t,o=new MagicString(e);for(t of s){let a="";for(var r of t.members){var d=r.name,i=getEsmPath(d);if(i){a+=`import { ${r.code} } from '@das-fed/ui${i}';`;let e=resolve(nodeModulesDir,`@das-fed/ui${i}/style.css`),s=`import '@das-fed/ui${i}/style.css';`;d.startsWith(iconComponentName)&&(r=getEsmPath(iconComponentName),e=resolve(nodeModulesDir,`@das-fed/ui${r}/style.css`),s=`import '@das-fed/ui${r}/style.css';`);i=await fs.exists(e);i&&(a+=s)}}a&&o.overwrite(t.start,t.end,a)}return o.toString()}}}});export default(e={})=>[DasFeUIEsm(e)];
@@ -0,0 +1 @@
1
+ import{resolve,extname}from"path";import dayjs from"dayjs";let pureOpt=e=>{process.cwd();let{base:p="./",apply:s="build",type:t="singleApp",external:a=["vue","vue-router","pinia","pinia-plugin-persistedstate",/^@das-fed\//,/^dayjs(\/.*)?$/,/^element-plus(\/.*)?$/,/^ant-design-vue(\/.*)?$/],entry:r="src/das-web-app.ts",outputDir:i="dist",...n}=e||{};return{base:p,apply:s,type:t,external:a,entry:r,outputDir:i,isSingleApp:"singleApp"===t,isDasMainApp:"mainApp"===t,isDasMicroApp:"microApp"===t,...n}},dasFeWebApp=e=>{let s=process.cwd(),{base:t,apply:p,external:a,entry:r,isSingleApp:i}=pureOpt(e);return i?{}:{name:"das-fe-web-app",apply:p,config:(e,{})=>{let p=e?.build?.assetsDir??"assets";(p=p||"")&&!p.endsWith("/")&&(p+="/");e=dayjs().format("YYYY-MM-DD-HH-mm-ss-SSS");return{base:t,build:{lib:{entry:resolve(s,r),name:"index",fileName:"index",formats:["es"]},rollupOptions:{external:a,output:{chunkFileNames:`[name]-[hash]-${e}.js`}}}}}}};export default e=>[dasFeWebApp(e)];
@@ -0,0 +1 @@
1
+ import{resolve}from"path";import fs from"fs-extra";export default(r="/src/main.ts",s="/src/main.dev.ts")=>{let a=process.cwd();return{name:"das-fe-dynamic-entry",apply:"serve",transformIndexHtml:{order:"pre",handler:async e=>await fs.exists(resolve(a,"."+s))?e.replace(r,s):e}}};
@@ -1 +1 @@
1
- import vueJsx from"@vitejs/plugin-vue-jsx";import AutoImportPlugin from"unplugin-auto-import/vite";import ComponentsPlugin from"unplugin-vue-components/vite";import{ElementPlusResolver,AntDesignVueResolver}from"unplugin-vue-components/resolvers";import viteCompression from"vite-plugin-compression";import dasFeWeb from"./das-fe-web/index.js";import dasFeUI from"./das-fe-ui/index.js";import dasFeUtils from"./das-fe-utils/index.js";import dasFePretty from"./das-fe-pretty/index.js";import visualizerPlugin from"./visualizer/index.js";let dasFeWebVitePlugin=async(e={})=>{var{dasWeb:e={styleResolve:!0},dasUI:s={},dasUtils:o={},compression:i={},visualizer:t=null,autoImport:r={},components:n={},pretty:l={}}=e||{},e=[vueJsx(),dasFeWeb(e),dasFeUI(s),dasFeUtils(o),viteCompression(i),visualizerPlugin(t),dasFePretty(l)];return r.disabled||e.push(AutoImportPlugin({resolvers:[ElementPlusResolver(),AntDesignVueResolver()],dts:"./src/das-fe-local-runtime/auto-imports.d.ts",...r})),n.disabled||e.push(ComponentsPlugin({resolvers:[ElementPlusResolver(),AntDesignVueResolver()],dts:"./src/das-fe-local-runtime/components.d.ts",...n})),e};export{dasFeWebVitePlugin};
1
+ import vuePlugin from"@vitejs/plugin-vue";import vueJsxPlugin from"@vitejs/plugin-vue-jsx";import AutoImportPlugin from"unplugin-auto-import/vite";import ComponentsPlugin from"unplugin-vue-components/vite";import{ElementPlusResolver,AntDesignVueResolver}from"unplugin-vue-components/resolvers";import dasFePlugin from"./das-fe/index.js";import dasFeWebAppPlugin from"./das-fe-web-app/index.js";import dasDynamicDevEntryPlugin from"./dynamic-dev-entry/index.js";import dasFePrettyPlugin from"./das-fe-pretty/index.js";import viteCompressionPlugin from"vite-plugin-compression";import visualizerPlugin from"./visualizer/index.js";let dasFeWebVitePlugin=async(e={})=>{var{entry:e="/src/main.ts",devEntry:s="/src/main.dev.ts",vue:i={},vueJsx:n={},dasFe:t={},dasWebApp:r={},pretty:o={},autoImport:u={},components:l={},compression:m={},visualizer:p=null}=e||{},i=[vuePlugin({template:{compilerOptions:{isCustomElement:e=>e.startsWith("das-ce")}},...i||{}}),vueJsxPlugin(n),dasFePlugin(t),dasFeWebAppPlugin(r),dasDynamicDevEntryPlugin(e,s),dasFePrettyPlugin(o)];return u&&i.push(AutoImportPlugin({resolvers:[ElementPlusResolver(),AntDesignVueResolver()],dts:"./src/das-fe-local-runtime/auto-imports.d.ts",...u})),l&&i.push(ComponentsPlugin({resolvers:[ElementPlusResolver(),AntDesignVueResolver()],dts:"./src/das-fe-local-runtime/components.d.ts",...l})),m&&i.push(viteCompressionPlugin(m)),p&&i.push(visualizerPlugin(p)),i};export{dasFeWebVitePlugin};
@@ -1 +0,0 @@
1
- import{createStyleImportPlugin}from"vite-plugin-style-import";let UIStyleResolve=()=>({libraryName:"@das-fed/ui",resolveStyle:e=>"@das-fed/ui/style/business.css",base:"@das-fed/ui/style/index.css"}),businessUIStyleResolve=()=>({libraryName:"@das-fed/ui/packages/business",base:"@das-fed/ui/style/business.css"}),DasUIStyleImport=(e={})=>e.styleResolve?createStyleImportPlugin({resolves:[UIStyleResolve(),businessUIStyleResolve()]}):null;export{DasUIStyleImport};
@@ -1 +0,0 @@
1
- import{resolve}from"path";let dasFeWeb=e=>{let s;return{name:"das-fe-web",config:(e,{})=>({resolve:{alias:{"@":resolve(process.cwd(),"src")}},build:{rollupOptions:{output:{manualChunks(r){var e=["sortablejs","echarts","@wangeditor/editor","@antv/x6","mpegts.js"].find(e=>r.includes(e));if(e)return e}}}}}),configResolved(e){s=e},buildStart:async()=>{s.cwd=resolve(process.cwd())},transformIndexHtml:{order:"post",handler:()=>{var e=s.base||"/";let r="development"===s.mode?e+"config.local.js":e+"config.js";return[{tag:"script",attrs:{src:r}}]}}}};export{dasFeWeb};
@@ -1 +0,0 @@
1
- import{createStyleImportPlugin}from"vite-plugin-style-import";let WebStyleResolve=()=>({libraryName:"@das-fed/web",base:"@das-fed/web/style.css"}),DasWebStyleImport=(e={})=>e.styleResolve?createStyleImportPlugin({resolves:[WebStyleResolve()]}):null;export{DasWebStyleImport};