@das-fed/cli 1.0.4-beta.3 → 6.3.0-beta.3

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.
Files changed (28) hide show
  1. package/package.json +10 -1
  2. package/src/commands/build/index.js +1 -1
  3. package/src/commands/build/nginx.main.conf +1 -1
  4. package/src/commands/build/nginx.micro.conf +1 -1
  5. package/src/commands/dev-helper/index.js +1 -1
  6. package/src/commands/dev-helper/watchers/i18n/index.js +1 -1
  7. package/src/commands/help/index.js +1 -1
  8. package/src/commands/helper/index.js +1 -0
  9. package/src/commands/helper/modules/gen-esm-module-map/index.js +1 -0
  10. package/src/commands/helper/modules/gen-packages-entry/index.js +2 -0
  11. package/src/commands/init/index.js +1 -1
  12. package/src/commands/init/template/README.md +2 -2
  13. package/src/commands/init/template/config.js +0 -6
  14. package/src/commands/init/template/package.json +0 -10
  15. package/src/commands/init/template/tsconfig.app.json +1 -0
  16. package/src/utils/get-cli-config/index.js +1 -1
  17. package/src/utils/parse-import-code.js +1 -0
  18. package/src/utils/ts-morph/index.js +1 -1
  19. package/src/vite-plugins/das-fe-pretty/index.js +1 -0
  20. package/src/vite-plugins/das-fe-ui/index.js +1 -1
  21. package/src/vite-plugins/das-fe-utils/index.js +1 -0
  22. package/src/vite-plugins/das-fe-web/index.js +1 -1
  23. package/src/vite-plugins/index.js +1 -1
  24. package/src/vite-plugins/visualizer/index.js +1 -0
  25. /package/src/commands/init/template/src/{demo → views/demo}/app.vue +0 -0
  26. /package/src/commands/init/template/src/{demo → views/demo}/i18n/index.ts +0 -0
  27. /package/src/commands/init/template/src/{demo → views/demo}/router.ts +0 -0
  28. /package/src/commands/init/template/src/{demo → views/demo}/theme/index.ts +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@das-fed/cli",
3
- "version": "1.0.4-beta.3",
3
+ "version": "6.3.0-beta.3",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "src/index.js",
@@ -29,6 +29,7 @@
29
29
  },
30
30
  "devDependencies": {
31
31
  "@vitejs/plugin-vue-jsx": "^3.1.0",
32
+ "lodash-es": "^4.17.21",
32
33
  "rollup-plugin-visualizer": "^5.12.0",
33
34
  "uglify-js": "^3.18.0",
34
35
  "unplugin-auto-import": "^0.17.6",
@@ -36,6 +37,14 @@
36
37
  "vite-plugin-compression": "^0.5.1",
37
38
  "vite-plugin-style-import": "^2.0.0"
38
39
  },
40
+ "peerDependencies": {
41
+ "@vitejs/plugin-vue-jsx": ">=3.1.0",
42
+ "rollup-plugin-visualizer": ">=5.12.0",
43
+ "unplugin-auto-import": ">=0.17.6",
44
+ "unplugin-vue-components": ">=0.26.0",
45
+ "vite-plugin-compression": ">=0.5.1",
46
+ "vite-plugin-style-import": ">=2.0.0"
47
+ },
39
48
  "publishConfig": {
40
49
  "access": "public",
41
50
  "registry": "https://registry.npmjs.org"
@@ -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";import{runPackageScript}from"../dev-helper/run-package-script.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};await runPackageScript("@das-fed/ui","scripts/utils/build-svg-icon.js"),await runPackageScript("@das-fed/ui","scripts/utils/gen-components-entry.js"),await initPublicConfig(r),await initWatchers(r);let o=await getWindowConfig(resolve(t,"public/config.js"));try{var a,n=resolve(t,"config.js");await fs.exists(n)&&(a=(await import(relative(resolve(__dirname),n)))["default"],""===o.microAppName&&delete o.microAppName,o={...a,...o})}catch(i){console.log("get rootConfig error",i)}await generateNginx({cwd:t,...o});(e||[]).join(" ");let s="";i.c&&(s+="-c "+i.c),execSync("npx vite build "+s,{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"./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,4 +1,4 @@
1
- worker_processes auto;
1
+ worker_processes 8;
2
2
  worker_rlimit_nofile 6000;
3
3
  events {
4
4
  worker_connections 1000;
@@ -1,4 +1,4 @@
1
- worker_processes auto;
1
+ worker_processes 8;
2
2
  worker_rlimit_nofile 2000;
3
3
  events {
4
4
  worker_connections 1000;
@@ -1 +1 @@
1
- import{initGitignore}from"./init-git-ignore.js";import{initPublicConfig}from"./init-public-config.js";import{initWatchers}from"./watchers/index.js";import{runPackageScript}from"./run-package-script.js";import minimist from"minimist";export default{handle:async i=>{console.log("das-cli dev-helper running!");i=minimist(i),i={cwd:process.cwd(),isDev:!0,...i};await runPackageScript("@das-fed/ui","scripts/utils/build-svg-icon.js"),await runPackageScript("@das-fed/ui","scripts/utils/gen-components-entry.js"),initGitignore(i),initPublicConfig(i),initWatchers(i)}};
1
+ import{initGitignore}from"./init-git-ignore.js";import{initPublicConfig}from"./init-public-config.js";import{initWatchers}from"./watchers/index.js";import minimist from"minimist";export default{handle:async i=>{console.log("das-cli dev-helper running!");var i=minimist(i),i={cwd:process.cwd(),isDev:!0,...i},n=i.isLib??!1;initGitignore(i),n||(initPublicConfig(i),initWatchers(i))}};
@@ -1 +1 @@
1
- import glob from"fast-glob";import fs from"fs-extra";import json5 from"json5";import{resolve}from"path";import{getExportDefaultsByAst}from"../../../../utils/ts-morph/index.js";import{json2type}from"../../../../utils/json2type/index.js";import{getCliConfig}from"../../../../utils/get-cli-config/index.js";let watchGlob=["src/**/i18n/*.ts"],handle=async(t={})=>{var e=t["cwd"],a=(await getCliConfig()).i18n?.watchGlob||[],a=getExportDefaultsByAst([...watchGlob,...a],t);let o={};a.map((t,e)=>{t=t.defaultText;Object.assign(o,json5.parse(t))});var s,r=[];for(s of await glob(["src/**/*.vue"]))for(var i=(await fs.readFile(s)).toString(),l=/i18n\(\s*(.+)\s*\)/g;null!==(n=l.exec(i));){var[,n]=n;r.push(n)}r.forEach(t=>{for(var e=/['"](.*?)['"]/g;null!==(a=e.exec(t));){var[,a]=a;o[a]||(o[a]={})}});let f={"zh-CN":""};Object.values(o).filter(t=>!!t["zh-CN"]).map(t=>Object.assign(f,t)),0===Object.keys(o).length&&(o.any="");t=resolve(e,"src/das-fe-local-runtime/i18n-runtime/type.d.ts");await json2type({data:[{title:"I18NName",type:"string",enum:Object.keys(f)},{title:"I18NKey",type:"string",enum:Object.keys(o)}],outputFilePath:t})};export default{name:"das-i18n",glob:watchGlob,ignoreGlob:[],load:handle,change:handle};
1
+ import glob from"fast-glob";import fs from"fs-extra";import json5 from"json5";import{resolve}from"path";import{getExportDefaultsByAst}from"../../../../utils/ts-morph/index.js";import{json2type}from"../../../../utils/json2type/index.js";import{getCliConfig}from"../../../../utils/get-cli-config/index.js";let watchGlob=["src/**/i18n/*.ts"],handle=async(t={})=>{var e=t["cwd"],a=(await getCliConfig()).i18n?.watchGlob||[],a=getExportDefaultsByAst([...watchGlob,...a],t);let o={};a.map((t,e)=>{t=t.defaultText;Object.assign(o,json5.parse(t))});var s,r=[];for(s of await glob(["src/**/*.vue","src/**/*.tsx"]))for(var i=(await fs.readFile(s)).toString(),l=/i18n\(\s*(.+)\s*\)/g;null!==(n=l.exec(i));){var[,n]=n;r.push(n)}r.forEach(t=>{for(var e=/['"](.*?)['"]/g;null!==(a=e.exec(t));){var[,a]=a;o[a]||(o[a]={})}});let f={"zh-CN":""};Object.values(o).filter(t=>!!t["zh-CN"]).map(t=>Object.assign(f,t)),0===Object.keys(o).length&&(o.any="");t=resolve(e,"src/das-fe-local-runtime/i18n-runtime/type.d.ts");await json2type({data:[{title:"I18NName",type:"string",enum:Object.keys(f)},{title:"I18NKey",type:"string",enum:Object.keys(o)}],outputFilePath:t})};export default{name:"das-i18n",glob:watchGlob,ignoreGlob:[],load:handle,change:handle};
@@ -1 +1 @@
1
- export default{alias:["-h","--help"],flags:[],handle:e=>{console.log("das-cli init - create a pnpm-workspace app for @das-fed"),console.log("das-cli dev - use vite create develop server"),console.log("das-cli build - use vite create product resource"),console.log("das-cli version - check the cli version")}};
1
+ export default{alias:["-h","--help"],handle:e=>{console.log("das-cli init - create a pnpm-workspace app for @das-fed"),console.log("das-cli dev - use vite create develop server"),console.log("das-cli build - use vite create product resource"),console.log("das-cli version - check the cli version")}};
@@ -0,0 +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)}};
@@ -0,0 +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已生成!"))};
@@ -0,0 +1,2 @@
1
+ import glob from"fast-glob";import fs from"fs-extra";import{resolve,relative}from"path";import{minimatch}from"minimatch";import{extractExports}from"../../../../utils/ts-morph/index.js";import ora from"ora";import{consola}from"consola";let genModulesEntry=async e=>{let{globString:r,result:o,cwd:t}=e;e=await glob(r,{cwd:t,onlyDirectories:!0,absolute:!0});let a="",s="";e.map(e=>{s=s||resolve(e,o||"../index.ts");e=relative(resolve(s,"../"),e);a+=`export * from './${e}'\r
2
+ `}),await fs.ensureFile(s),await fs.writeFile(s,a)};export default async e=>{var o=(e?.helper||{})["genPacakgesEntry"];if(o){let r=o.cwd||e.cwd||process.cwd();e=o["modules"];e&&(consola.start("正在生成packages entry..."),await Promise.all(e.map(e=>genModulesEntry({cwd:r,globString:e}))),consola.success("packages entry已生成!"))}};
@@ -1 +1 @@
1
- import inquirer from"inquirer";import glob from"fast-glob";import{dirname,resolve}from"path";import{fileURLToPath}from"url";import fs from"fs-extra";import{consola}from"consola";import{execSync}from"child_process";let __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename),getPackageJson=()=>{var e=resolve(__dirname,"../../../package.json");return fs.existsSync(e)?fs.readJSONSync(e):{}};export default{alias:["create","create-app","-c"],handle:async e=>{var r=getPackageJson(),r=(consola.box(`Using ${r.name} v`+r.version),consola.info("create app for @das-fed"),consola.warn("必须使用 pnpm 作为依赖安装工具"),await inquirer.prompt([{name:"inputName",type:"input",message:"请输入子应用名称(一般形如: enterpriseadmin/xxx,可不输入 enterpriseadmin/ 前缀)"}]))["inputName"],[a]=(r||(consola.error("子应用名称必填!"),process.exit()),r.split("/").slice(-1)),i="enterpriseadmin/"+a,r=(consola.success("子应用名称为: "+i),await inquirer.prompt([{name:"overwrite",type:"confirm",message:"初始化项目会在当前目录下创建文件夹,可能会覆盖当前目录已经存在的文件,是否继续?"}]))["overwrite"];if(!r)return process.exit();var o,n=process.cwd(),s=resolve(__dirname,"./template");for(o of await glob(["**/**"],{cwd:s})){var t,p=resolve(n,o);await fs.copy(resolve(s,o),p,{overwrite:!0}),-1<o.indexOf("config.js")&&(t=(await fs.readFile(p)).toString(),await fs.writeFile(p,t.replaceAll("%microAppName%",i))),-1<o.indexOf("package.json")&&(t=(await fs.readFile(p)).toString(),await fs.writeFile(p,t.replaceAll("%packageName%",a)))}execSync("pnpm add @das-fed/web @das-fed/ui @das-fed/utils @das-fed/web-components",{cwd:n,stdio:"inherit"}),execSync("pnpm add @das-fed/cli @vitejs/plugin-vue-jsx rollup-plugin-visualizer unplugin-auto-import unplugin-vue-components vite-plugin-compression vite-plugin-style-import consola -D",{cwd:n,stdio:"inherit"}),console.log(""),consola.success("项目初始化完成!"),consola.box("run: pnpm run dev")}};
1
+ import inquirer from"inquirer";import glob from"fast-glob";import{dirname,resolve}from"path";import{fileURLToPath}from"url";import fs from"fs-extra";import{consola}from"consola";import{execSync}from"child_process";let __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename),getPackageJson=()=>{var e=resolve(__dirname,"../../../package.json");return fs.existsSync(e)?fs.readJSONSync(e):{}};export default{alias:["create","create-app","-c"],handle:async e=>{var r=getPackageJson(),r=(consola.box(`Using ${r.name} v`+r.version),consola.info("create app for @das-fed"),consola.warn("必须使用 pnpm 作为依赖安装工具"),await inquirer.prompt([{name:"inputName",type:"input",message:"请输入应用名称(一般为英文缩写)"}]))["inputName"],[a]=(r||(consola.error("应用名称必填!"),process.exit()),r.split("/").slice(-1)),i="enterpriseadmin/"+a,r=(consola.success(`子应用名称为: ${i} (enterpriseadmin为默认加入的前缀)`),await inquirer.prompt([{name:"overwrite",type:"confirm",message:"初始化项目将覆盖当前目录的文件及文件夹,是否继续?"}]))["overwrite"];if(!r)return process.exit();var o,s=process.cwd(),t=resolve(__dirname,"./template");for(o of await glob(["**/**"],{cwd:t,dot:!0})){var n,c=resolve(s,o);await fs.copy(resolve(t,o),c,{overwrite:!0}),-1<o.indexOf("config.js")&&(n=(await fs.readFile(c)).toString(),await fs.writeFile(c,n.replaceAll("%microAppName%",i))),-1<o.indexOf("package.json")&&(n=(await fs.readFile(c)).toString(),await fs.writeFile(c,n.replaceAll("%packageName%",a)))}execSync("pnpm add "+["vue","vue-router","@das-fed/web","@das-fed/ui","@das-fed/utils"].join(" "),{cwd:s,stdio:"inherit"}),execSync("pnpm add -D "+["@vitejs/plugin-vue","typescript","vite","vue-tsc","@das-fed/cli"].join(" "),{cwd:s,stdio:"inherit"}),console.log(""),consola.success("项目初始化完成!"),consola.box("run: pnpm run dev")}};
@@ -9,11 +9,11 @@ pnpm i
9
9
  ## dev
10
10
 
11
11
  ```
12
- das-cli dev
12
+ pnpm run dev
13
13
  ```
14
14
 
15
15
  ## build
16
16
 
17
17
  ```
18
- das-cli build
18
+ pnpm run build
19
19
  ```
@@ -1,9 +1,3 @@
1
1
  export default {
2
2
  microAppName: '%microAppName%',
3
- framework: {
4
- git: {
5
- repository: '',
6
- branch: 'dev',
7
- },
8
- },
9
3
  }
@@ -8,15 +8,5 @@
8
8
  "dev": "das-cli dev",
9
9
  "build": "das-cli build",
10
10
  "preview": "vite preview"
11
- },
12
- "dependencies": {
13
- "vue": "^3.4.29",
14
- "vue-router": "^4.2.5"
15
- },
16
- "devDependencies": {
17
- "@vitejs/plugin-vue": "^5.0.5",
18
- "typescript": "^5.2.2",
19
- "vite": "^5.3.1",
20
- "vue-tsc": "^2.0.21"
21
11
  }
22
12
  }
@@ -16,6 +16,7 @@
16
16
  "moduleDetection": "force",
17
17
  "noEmit": true,
18
18
  "jsx": "preserve",
19
+ "jsxImportSource": "vue", // vue 3.4+ 需要显示指定jsx导出为vue
19
20
 
20
21
  /* Linting */
21
22
  "strict": true,
@@ -1 +1 @@
1
- import fs from"fs-extra";import{resolve}from"path";import json5 from"json5";let getCliConfig=async(o={})=>{var{cwd:o=process.cwd()}=o||{},o=resolve(o,"das-cli.config.json");return await fs.exists(o)?(o=(await fs.readFile(o)).toString(),json5.parse(o)):{}};export{getCliConfig};
1
+ import fs from"fs-extra";import{resolve}from"path";import json5 from"json5";let getCliConfig=async(r={})=>{(r=r||{}).cwd||(r.cwd=process.cwd());r=r.cwd,r=resolve(r,"das-cli.json");if(!await fs.exists(r))return{};try{var o=(await fs.readFile(r)).toString();return json5.parse(o)}catch(r){return console.error(r),{}}};export{getCliConfig};
@@ -0,0 +1 @@
1
+ import stripComments from"strip-comments";let parseImportCode=(r,t)=>{var m,p=/import\s+\{[^}]+\}\s+from\s+['"][^'"]+['"]/gm;if(stripComments(r).match(p)){let e=[];for(;null!==(m=p.exec(r));){var a=m[0],s=stripComments(a).replace(/\r?\n/g,""),l=s.split("from")[1].replace(/\s+/g,"").replaceAll("'","").replaceAll('"',"");e.push({name:l,code:a,pureCode:s,start:m.index,end:m.index+a.length,members:[]})}if(0!==(e=t?e.filter(e=>!t||e.name===t):e).length)return e.map(e=>{var r=e.pureCode.match(/\{([^}]+)\}/);return r&&(e.members=r[1].split(",").map(e=>e.trimStart().trimEnd()).filter(e=>!!e).map(e=>{let[r,t]=e.split(" as ");return r=r.replace(/\s+/g,""),t=t&&t.replace(/\s+/g,""),{name:r,aliasName:t,code:e}})),e})}};export{parseImportCode};
@@ -1 +1 @@
1
- import{Project}from"ts-morph";let project,initProject=(e={})=>project=project||new Project({skipFileDependencyResolution:!0,skipAddingFilesFromTsConfig:!0,skipLoadingLibFiles:!0,compilerOptions:{skipDefaultLibCheck:!0,skipLibCheck:!0,rootDir:e.cwd||process.cwd()},exclude:["node_modules"]}),getExportDefaultsByAst=(e,t={})=>{t=new Project({skipFileDependencyResolution:!0,skipAddingFilesFromTsConfig:!0,skipLoadingLibFiles:!0,compilerOptions:{skipDefaultLibCheck:!0,skipLibCheck:!0,rootDir:t.cwd||process.cwd()},exclude:["node_modules"]});return t.addSourceFilesAtPaths(e),t.getSourceFiles().map(e=>{var t,i,o,r={filePath:e.getFilePath(),name:"default",defaultText:""};for([t,i]of e.getExportedDeclarations())"default"===t&&0!==(o=i.map(e=>(e.getInitializer?e.getInitializer():e).getText())).length&&(r.name=t,r.defaultText=o[0]);return r}).filter(e=>!!e.defaultText)};export{getExportDefaultsByAst};
1
+ import{Project}from"ts-morph";let project,initProject=(e={})=>project=project||new Project({skipFileDependencyResolution:!0,skipAddingFilesFromTsConfig:!0,skipLoadingLibFiles:!0,compilerOptions:{skipDefaultLibCheck:!0,skipLibCheck:!0,rootDir:e.cwd||process.cwd(),noLib:!0,strict:!1,noEmitOnError:!0},exclude:["node_modules"]}),getExportDefaultsByAst=(e,t={})=>{t=new Project({skipFileDependencyResolution:!0,skipAddingFilesFromTsConfig:!0,skipLoadingLibFiles:!0,compilerOptions:{skipDefaultLibCheck:!0,skipLibCheck:!0,rootDir:t.cwd||process.cwd(),noLib:!0},exclude:["node_modules"]});return t.addSourceFilesAtPaths(e),t.getSourceFiles().map(e=>{var t,i,r,o={filePath:e.getFilePath(),name:"default",defaultText:""};for([t,i]of e.getExportedDeclarations())"default"===t&&0!==(r=i.map(e=>(e.getInitializer?e.getInitializer():e).getText())).length&&(o.name=t,o.defaultText=r[0]);return o}).filter(e=>!!e.defaultText)},extractExports=(e,t)=>{initProject();e=project.createSourceFile("extract-exports.ts",e,{overwrite:!0});let i=[];return e.getExportedDeclarations().forEach((e,t)=>{i.push(t)}),project.removeSourceFile(e),i=t?i:i.filter(e=>"default"!==e)};export{getExportDefaultsByAst,extractExports};
@@ -0,0 +1 @@
1
+ export default(e={})=>({name:"das-fed-pretty",enforce:"pre",apply:"build",config:()=>({esbuild:{drop:["console","debugger"],minify:!0,...e?.esbuild||{}}})});
@@ -1 +1 @@
1
- export*from"./core/style.js";
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):{},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 a="";e.members.map(async e=>{var s=e.name,s=esmMap[s];s&&(a+=`import { ${e.code} } from '@das-fed/ui${s}';`,await fs.exists(resolve(nodeModulesDir,`@das-fed/ui${s}/style.css`)))&&(a+=`import '@das-fed/ui${s}/style.css'`)}),a&&s.overwrite(e.start,e.end,a)}),s.toString()}}}});export default(e={})=>[DasFeUIEsm(e)];
@@ -0,0 +1 @@
1
+ import{extname}from"path";import MagicString from"magic-string";import{parseImportCode}from"../../utils/parse-import-code.js";import{resolve}from"path";import fs from"fs-extra";let cwd=process.cwd(),nodeModulesDir=resolve(cwd,"node_modules"),esmMapPath=resolve(nodeModulesDir,"@das-fed/util/sesm-map.json"),esmMapPathExits=fs.existsSync(esmMapPath),esmMap=esmMapPathExits?fs.readJSONSync(esmMapPath):{};export default(e=0)=>({name:"das-fed-ui-esm",enforce:"pre",transform(e,t){if(!(-1<t.indexOf("?"))&&[".vue",".ts",".js",".jsx",".tsx"].includes(extname(t))){t=parseImportCode(e,"@das-fed/utils");if(t){let s=new MagicString(e);return t.map(e=>{let t="";e.members.map(e=>{var s=e.name,s=esmMap[s];s&&(t+=`import { ${e.code} } from '@das-fed/utils${s}';`)}),s.overwrite(e.start,e.end,t)}),s.toString()}}}});
@@ -1 +1 @@
1
- export*from"./core/das-fe-web.js";export*from"./core/style.js";
1
+ import{resolve,extname}from"path";import fs from"fs-extra";import{createStyleImportPlugin}from"vite-plugin-style-import";import MagicString from"magic-string";import{parseImportCode}from"../../utils/parse-import-code.js";let cwd=process.cwd(),dasFeWebStylePath=resolve(cwd,"node_modules","@das-fed/web/style.css"),dasFeWebStylePathExits=fs.existsSync(dasFeWebStylePath),dasFeWeb=e=>{let t;return{name:"das-fe-web",config:(e,{})=>({resolve:{alias:{"@":resolve(process.cwd(),"src")}},build:{rollupOptions:{output:{}}}}),configResolved(e){t=e},buildStart:async()=>{t.cwd=resolve(process.cwd())},transformIndexHtml:{order:"post",handler:()=>{var e=t.base||"/";let s="development"===t.mode?e+"config.local.js":e+"config.js";return[{tag:"script",attrs:{src:s}}]}}}},WebStyleResolve=()=>({libraryName:"@das-fed/web",base:dasFeWebStylePathExits?"@das-fed/web/style.css":void 0}),styleImport=(e={})=>e.styleResolve?createStyleImportPlugin({resolves:[WebStyleResolve()]}):null,dasFeWebEsmMapPath=resolve(cwd,"node_modules","@das-fed/web/esm-map.json"),dasFeWebEsmMapPathExits=fs.existsSync(dasFeWebEsmMapPath),esmMap=dasFeWebEsmMapPathExits?fs.readJSONSync(dasFeWebEsmMapPath):{},dasFeWebEsm=async e=>({name:"das-fed-web-esm",enforce:"pre",transform(e,t){if(dasFeWebEsmMapPathExits&&!(-1<t.indexOf("?"))&&[".vue",".ts",".js",".jsx",".tsx"].includes(extname(t))){t=parseImportCode(e,"@das-fed/web");if(t){let s=new MagicString(e);return t.map(e=>{let t="";e.members.map(e=>{var s=e.name,s=esmMap[s];s&&(t+=`import { ${e.code} } from '@das-fed/web${s}';`)}),s.overwrite(e.start,e.end,t)}),s.toString()}}}});export default e=>[dasFeWeb(e),styleImport(e),dasFeWebEsm(e)];export{styleImport};
@@ -1 +1 @@
1
- import{dasFeWeb,DasWebStyleImport}from"./das-fe-web/index.js";import{DasUIStyleImport}from"./das-fe-ui/index.js";import{checkInLocalWorkspace}from"../utils/check-local-workspace.js";import vueJsx from"@vitejs/plugin-vue-jsx";import AutoImport from"unplugin-auto-import/vite";import Components from"unplugin-vue-components/vite";import{ElementPlusResolver,AntDesignVueResolver}from"unplugin-vue-components/resolvers";import viteCompression from"vite-plugin-compression";import{visualizer as rollupVisualizer}from"rollup-plugin-visualizer";let dasFeWebVitePlugin=async(e={})=>{var{dasWeb:e={styleResolve:!0},dasUI:s={styleResolve:!0},compression:o={},visualizer:t}=e||{},e=(await checkInLocalWorkspace(process.cwd())&&(e.styleResolve=!1,s.styleResolve=!1),[vueJsx(),AutoImport({resolvers:[ElementPlusResolver(),AntDesignVueResolver()],dts:"./src/das-fe-local-runtime/auto-imports.d.ts"}),Components({resolvers:[ElementPlusResolver(),AntDesignVueResolver()],dts:"./src/das-fe-local-runtime/components.d.ts"}),dasFeWeb(e),DasWebStyleImport(e),DasUIStyleImport(s),viteCompression(o)]);return t&&"object"==typeof t&&e.push(rollupVisualizer({open:!0,filename:"stats.html",gzipSize:!0,brotliSize:!0,...t})),e};export{dasFeWebVitePlugin};
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};
@@ -0,0 +1 @@
1
+ import{visualizer}from"rollup-plugin-visualizer";export default i=>i&&"object"==typeof i?visualizer({open:!0,filename:"stats.html",gzipSize:!0,brotliSize:!0,...i.visualizer||{}}):[];