@das-fed/cli 6.4.0-dev.5 → 6.4.0-dev.51

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 (53) hide show
  1. package/package.json +1 -1
  2. package/src/commands/build/extra/auth/index.js +1 -0
  3. package/src/commands/build/extra/i18n/index.js +2 -0
  4. package/src/commands/build/extra/i18n/vite.config.ts +1 -0
  5. package/src/commands/build/extra/index.js +1 -0
  6. package/src/commands/build/extra/theme/index.js +1 -0
  7. package/src/commands/build/index.js +1 -1
  8. package/src/commands/build/nginx.main.conf +54 -54
  9. package/src/commands/build/nginx.micro.conf +61 -61
  10. package/src/commands/dev-helper/init-public-config.js +1 -1
  11. package/src/commands/dev-helper/watchers/i18n/index.js +1 -1
  12. package/src/commands/dev-helper/watchers/theme/index.js +1 -1
  13. package/src/commands/extra/auth/index.js +1 -0
  14. package/src/commands/extra/i18n/index.js +2 -0
  15. package/src/commands/extra/i18n/vite.config.ts +1 -0
  16. package/src/commands/extra/index.js +1 -0
  17. package/src/commands/extra/theme/index.js +1 -0
  18. package/src/commands/helper/modules/gen-auth/gen/index.js +1 -1
  19. package/src/commands/helper/modules/gen-auth/index.js +1 -1
  20. package/src/commands/helper/modules/gen-esm-module-map/index.js +1 -1
  21. package/src/commands/helper/modules/gen-packages-entry/index.js +1 -1
  22. package/src/commands/init/index.js +1 -1
  23. package/src/commands/init/template/.prettierignore +21 -21
  24. package/src/commands/init/template/.prettierrc +8 -8
  25. package/src/commands/init/template/README.md +29 -19
  26. package/src/commands/init/template/config.js +3 -3
  27. package/src/commands/init/template/index.html +12 -12
  28. package/src/commands/init/template/package.json +12 -12
  29. package/src/commands/init/template/public/config.js +4 -1
  30. package/src/commands/init/template/src/das-web-app.ts +9 -0
  31. package/src/commands/init/template/src/main.ts +9 -9
  32. package/src/commands/init/template/src/micro-app.ts +8 -8
  33. package/src/commands/init/template/src/views/demo/app.vue +61 -61
  34. package/src/commands/init/template/src/views/demo/i18n/index.ts +14 -14
  35. package/src/commands/init/template/src/views/demo/router.ts +13 -13
  36. package/src/commands/init/template/src/views/demo/theme/index.ts +7 -7
  37. package/src/commands/init/template/src/views/hello/api/index.ts +6 -6
  38. package/src/commands/init/template/src/views/hello/app.vue +157 -157
  39. package/src/commands/init/template/src/views/hello/i18n/index.ts +16 -16
  40. package/src/commands/init/template/src/views/hello/router.ts +12 -12
  41. package/src/commands/init/template/src/views/hello/theme/index.ts +18 -18
  42. package/src/commands/init/template/src/vite-env.d.ts +1 -1
  43. package/src/commands/init/template/tsconfig.app.json +28 -28
  44. package/src/commands/init/template/tsconfig.json +11 -11
  45. package/src/commands/init/template/tsconfig.node.json +13 -13
  46. package/src/commands/init/template/vite.config.ts +11 -14
  47. package/src/vite-plugins/das-fe/index.js +1 -1
  48. package/src/vite-plugins/das-fe-resolve/index.js +1 -0
  49. package/src/vite-plugins/das-fe-ui/index.js +1 -0
  50. package/src/vite-plugins/das-fe-utils/index.js +1 -0
  51. package/src/vite-plugins/das-fe-web/index.js +1 -0
  52. package/src/vite-plugins/das-fe-web-app/index.js +1 -1
  53. package/src/vite-plugins/dynamic-entry/index.js +1 -0
@@ -1,28 +1,28 @@
1
- {
2
- "compilerOptions": {
3
- "composite": true,
4
- "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
5
- "target": "ES2020",
6
- "useDefineForClassFields": true,
7
- "module": "ESNext",
8
- "lib": ["ES2020", "DOM", "DOM.Iterable"],
9
- "skipLibCheck": true,
10
-
11
- /* Bundler mode */
12
- "moduleResolution": "bundler",
13
- "allowImportingTsExtensions": true,
14
- "resolveJsonModule": true,
15
- "isolatedModules": true,
16
- "moduleDetection": "force",
17
- "noEmit": true,
18
- "jsx": "preserve",
19
- "jsxImportSource": "vue", // vue 3.4+ 需要显示指定jsx导出为vue
20
-
21
- /* Linting */
22
- "strict": true,
23
- "noUnusedLocals": true,
24
- "noUnusedParameters": true,
25
- "noFallthroughCasesInSwitch": true
26
- },
27
- "include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.vue"]
28
- }
1
+ {
2
+ "compilerOptions": {
3
+ "composite": true,
4
+ "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
5
+ "target": "ES2020",
6
+ "useDefineForClassFields": true,
7
+ "module": "ESNext",
8
+ "lib": ["ES2020", "DOM", "DOM.Iterable"],
9
+ "skipLibCheck": true,
10
+
11
+ /* Bundler mode */
12
+ "moduleResolution": "bundler",
13
+ "allowImportingTsExtensions": true,
14
+ "resolveJsonModule": true,
15
+ "isolatedModules": true,
16
+ "moduleDetection": "force",
17
+ "noEmit": true,
18
+ "jsx": "preserve",
19
+ "jsxImportSource": "vue", // vue 3.4+ 需要显示指定jsx导出为vue
20
+
21
+ /* Linting */
22
+ "strict": true,
23
+ "noUnusedLocals": true,
24
+ "noUnusedParameters": true,
25
+ "noFallthroughCasesInSwitch": true
26
+ },
27
+ "include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.vue"]
28
+ }
@@ -1,11 +1,11 @@
1
- {
2
- "files": [],
3
- "references": [
4
- {
5
- "path": "./tsconfig.app.json"
6
- },
7
- {
8
- "path": "./tsconfig.node.json"
9
- }
10
- ]
11
- }
1
+ {
2
+ "files": [],
3
+ "references": [
4
+ {
5
+ "path": "./tsconfig.app.json"
6
+ },
7
+ {
8
+ "path": "./tsconfig.node.json"
9
+ }
10
+ ]
11
+ }
@@ -1,13 +1,13 @@
1
- {
2
- "compilerOptions": {
3
- "composite": true,
4
- "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo",
5
- "skipLibCheck": true,
6
- "module": "ESNext",
7
- "moduleResolution": "bundler",
8
- "allowSyntheticDefaultImports": true,
9
- "strict": true,
10
- "noEmit": true
11
- },
12
- "include": ["vite.config.ts"]
13
- }
1
+ {
2
+ "compilerOptions": {
3
+ "composite": true,
4
+ "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo",
5
+ "skipLibCheck": true,
6
+ "module": "ESNext",
7
+ "moduleResolution": "bundler",
8
+ "allowSyntheticDefaultImports": true,
9
+ "strict": true,
10
+ "noEmit": true
11
+ },
12
+ "include": ["vite.config.ts"]
13
+ }
@@ -1,14 +1,11 @@
1
- import { defineConfig } from 'vite'
2
- import vue from '@vitejs/plugin-vue'
3
- import { dasFeWebVitePlugin } from '@das-fed/cli'
4
- import config from './config.js'
5
-
6
- // https://vitejs.dev/config/
7
- export default defineConfig(({ command }) => {
8
- const isBuild = command === 'build'
9
- return {
10
- define: { __MICRO_APPNAME__: JSON.stringify(config.microAppName) },
11
- base: isBuild ? `/${config.microAppName}` : '/',
12
- plugins: [vue(), dasFeWebVitePlugin()],
13
- }
14
- })
1
+ import { defineConfig } from 'vite'
2
+ import { dasFeWebVitePlugin } from '@das-fed/cli'
3
+ import config from './config.js'
4
+
5
+ // https://vitejs.dev/config/
6
+ export default defineConfig(({ command }) => {
7
+ return {
8
+ define: { __MICRO_APPNAME__: JSON.stringify(config.microAppName) },
9
+ plugins: [dasFeWebVitePlugin()],
10
+ }
11
+ })
@@ -1 +1 @@
1
- import{resolve,extname}from"path";import fs from"fs-extra";import MagicString from"magic-string";import{parseImportCode}from"../../utils/parse-import-code.js";let dasFeWeb=async e=>{let s;var r=process.cwd();let t=["@das-fed/web","@das-fed/utils","@das-fed/ui","@das-fed/ui","@das-fed/web-components"],n=resolve(r,"node_modules"),i={};return{name:"das-fe",enforce:"pre",config:(e,{})=>({resolve:{alias:{"@":resolve(process.cwd(),"src")}}}),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}}]}},async transform(r,e){if(!(-1<e.indexOf("?"))&&!(-1<e.indexOf("node_modules"))&&[".vue",".ts",".js",".jsx",".tsx"].includes(extname(e))){let e=parseImportCode(r);if(e&&0!==(e=e.filter(r=>t.find(e=>r.name===e))).length){var s,a,d=new MagicString(r);for(let o of e){s=o.name,a=void 0;let t=await(i[s]||(a=resolve(n,s,"esm-map.json"),await fs.exists(a)?(a=await fs.readJson(a),i[s]=a,i[s]):void 0));if(t){let s="";o.members.map(e=>{var r=e.name,r=t[r];r&&(s+=`import { ${e.code} } from '${o.name}${r}';`)}),s&&d.overwrite(o.start,o.end,s)}}return d.toString()}}}}};export default e=>[dasFeWeb(e)];
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)];
@@ -0,0 +1 @@
1
+ import{resolve,extname}from"path";import dayjs from"dayjs";import fs from"fs-extra";import{parse as lexerParse}from"es-module-lexer";import MagicString from"magic-string";import{parseImportCode}from"../../utils/parse-import-code.js";let dasFeExternal=e=>{var r=process.cwd();resolve(r,"node_modules");let n=["@das-fed/web","@das-fed/ui","@das-fed/utils"];return{name:"das-fe-web-app-external",enforce:"pre",apply:"build",async transform(e,r){if(!(-1<r.indexOf("?"))&&[".vue",".ts",".js",".jsx",".tsx"].includes(extname(r))){if([".ts",".js"].includes(extname(r))&&r.indexOf("node_modules")<0){var s,[r,,]=lexerParse(e),a=new MagicString(e);for(s of r){var t=e.slice(s.s,s.e);!t.startsWith("@das-fed/")||t.endsWith(".js")||(t.endsWith("/index")?a.overwrite(s.s,s.e,t+".js"):a.overwrite(s.s,s.e,t+"/index.js"))}e=a.toString()}var i,r=parseImportCode(e);if(r)for(i of r.filter(e=>e.name.startsWith("@das-fed/")).filter(e=>!n.includes(e.name)))i.name.endsWith(".js")||(e=i.name.endsWith("/index")?e.replaceAll(`'${i.name}'`,`'${i.name}.js'`):e.replaceAll(`'${i.name}'`,`'${i.name}/index.js'`));return e}}}};export default e=>[dasFeExternal()];
@@ -0,0 +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];if(s)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 i=r.name,d=getEsmPath(i);if(d){a+=`import { ${r.code} } from '@das-fed/ui${d}';`;let e=resolve(nodeModulesDir,`@das-fed/ui${d}/style.css`),s=`import '@das-fed/ui${d}/style.css';`;i.startsWith(iconComponentName)&&(r=getEsmPath(iconComponentName),e=resolve(nodeModulesDir,`@das-fed/ui${r}/style.css`),s=`import '@das-fed/ui${r}/style.css';`);d=await fs.exists(e);d&&(a+=s)}}a&&o.overwrite(t.start,t.end,a)}return o.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/utils/esm-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()}}}});
@@ -0,0 +1 @@
1
+ import{resolve,extname}from"path";import fs from"fs-extra";import MagicString from"magic-string";import{parseImportCode}from"../../utils/parse-import-code.js";let cwd=process.cwd(),dasFeWeb=e=>{let a;return{name:"das-fe-web",config:(e,{})=>({resolve:{alias:{"@":resolve(process.cwd(),"src")}}}),configResolved(e){a=e},buildStart:async()=>{a.cwd=resolve(process.cwd())},transformIndexHtml:{order:"post",handler:()=>{var e=a.base||"./";let s="development"===a.mode?e+"config.local.js":e+"config.js";return[{tag:"script",attrs:{src:s}}]}}}},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,a){if(dasFeWebEsmMapPathExits&&!(-1<a.indexOf("?"))&&[".vue",".ts",".js",".jsx",".tsx"].includes(extname(a))){a=parseImportCode(e,"@das-fed/web");if(a){let s=new MagicString(e);return a.map(e=>{let a="";e.members.map(e=>{var s=e.name,s=esmMap[s];s&&(a+=`import { ${e.code} } from '@das-fed/web${s}';`)}),s.overwrite(e.start,e.end,a)}),s.toString()}}}});export default e=>[dasFeWeb(e),dasFeWebEsm(e)];
@@ -1 +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",/^@das-fed\//],entry:r="src/das-web-app.ts",outputDir:i="dist",...l}=e||{};return{base:p,apply:s,type:t,external:a,entry:r,outputDir:i,isSingleApp:"singleApp"===t,isDasMainApp:"mainApp"===t,isDasMicroApp:"microApp"===t,...l}},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)];
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(s="/src/main.ts")=>{let a=process.cwd();return{name:"das-fe-dynamic-entry",apply:"serve",transformIndexHtml:{order:"pre",handler:async r=>{var e="/src/main.dev.ts";return await fs.exists(resolve(a,"."+e))?r.replace(s,e):r}}}};