gant-core 0.2.36 → 2.0.1

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 (67) hide show
  1. package/.changeset/README.md +8 -0
  2. package/.changeset/config.json +11 -0
  3. package/CHANGELOG.md +14 -0
  4. package/eslint.config.mjs +26 -0
  5. package/lib/cli/acorn.js +2 -1
  6. package/lib/cli/angular.js +2 -1
  7. package/lib/cli/babel.js +2 -1
  8. package/lib/cli/config/defineConfig.js +103 -1
  9. package/lib/cli/config/index.js +2 -1
  10. package/lib/cli/copyfiles/index.js +2 -1
  11. package/lib/cli/create/config/index.js +3 -2
  12. package/lib/cli/create/index.js +1 -0
  13. package/lib/cli/create/module/index.js +2 -9
  14. package/lib/cli/estree.js +2 -1
  15. package/lib/cli/flow.js +2 -1
  16. package/lib/cli/glimmer.js +2 -1
  17. package/lib/cli/graphql.js +2 -1
  18. package/lib/cli/html.js +2 -1
  19. package/lib/cli/i18n/index.js +3 -2
  20. package/lib/cli/i18n/utils.js +2 -1
  21. package/lib/cli/index.d.ts +1836 -0
  22. package/lib/cli/index.js +2 -1
  23. package/lib/cli/markdown.js +2 -1
  24. package/lib/cli/meriyah.js +2 -1
  25. package/lib/cli/postcss.js +2 -1
  26. package/lib/cli/routes/index.js +2 -1
  27. package/lib/cli/template/template.vue.config.txt +1 -1
  28. package/lib/cli/template/types.d.txt +134 -132
  29. package/lib/cli/tsconfig/index.js +2 -1
  30. package/lib/cli/typescript.js +2 -1
  31. package/lib/cli/utils/detectPort.js +3 -0
  32. package/lib/cli/utils/getJavascriptfile.js +2 -1
  33. package/lib/cli/utils/index.js +2 -1
  34. package/lib/cli/webpack/Webpack.js +2 -1
  35. package/lib/cli/webpack/config/analyzer.config.js +2 -1
  36. package/lib/cli/webpack/config/browsers.js +1 -0
  37. package/lib/cli/webpack/config/cssRules.js +2 -1
  38. package/lib/cli/webpack/config/default.config.js +2 -1
  39. package/lib/cli/webpack/config/development.config.js +2 -1
  40. package/lib/cli/webpack/config/framework/index.js +3 -0
  41. package/lib/cli/webpack/config/framework/react.js +3 -0
  42. package/lib/cli/webpack/config/framework/vue.js +3 -0
  43. package/lib/cli/webpack/config/index.js +1 -0
  44. package/lib/cli/webpack/config/production.config.js +2 -1
  45. package/lib/cli/webpack/plugins/copy.js +2 -1
  46. package/lib/cli/webpack/plugins/index.js +2 -1
  47. package/lib/cli/yaml.js +2 -1
  48. package/lib/core/i18n/index.js +1 -1
  49. package/lib/core/index.js +1 -1
  50. package/lib/core/microservices/index.js +10 -1
  51. package/lib/core/request/index.js +1 -1
  52. package/lib/core/store/index.js +1 -1
  53. package/lib/core/theme/index.js +1 -1
  54. package/lib/core/utils/index.js +83 -1
  55. package/lib/types/index.d.ts +115 -104
  56. package/package.json +62 -44
  57. package/rollup.config.js +27 -10
  58. package/tsconfig.json +1 -0
  59. package/lib/core/cache/index.js.map +0 -1
  60. package/lib/core/event/index.js.map +0 -1
  61. package/lib/core/i18n/index.js.map +0 -1
  62. package/lib/core/index.js.map +0 -1
  63. package/lib/core/microservices/index.js.map +0 -1
  64. package/lib/core/request/index.js.map +0 -1
  65. package/lib/core/store/index.js.map +0 -1
  66. package/lib/core/theme/index.js.map +0 -1
  67. package/lib/core/utils/index.js.map +0 -1
@@ -1,2 +1,3 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var e=require("webpack"),r=require("webpack-dev-server"),o=require("./config/index.js");exports.Webpack=class{Compiler;Config;devServer=null;constructor(r,s,t){try{let i={};i="development"===t?o.getDevConfig(r,s):"analyzer"===t?o.getAnalyzerConfig(r,s):o.getProductionConfig(r,s),this.Config=i,this.Compiler=e(i)}catch(e){console.log(e)}}runBuild=()=>{this.Compiler.run(((e,r)=>{if(e)console.log(e.message);else{console.log(r?.toString({colors:!0}));for(const e of Object.keys(r?.compilation?.assets||{}))console.log(`Generated asset: ${e}`)}}))};runServer=e=>{this.devServer=new r({...this.Config?.devServer,...e},this.Compiler),this.devServer?.start()}};
2
+ "use strict";var e=require("@rspack/core"),r=require("@rspack/dev-server"),t=require("./config/index.js");require("fs"),require("path"),require("../utils/getJavascriptfile.js");var o=require("../utils/detectPort.js");exports.Webpack=class{Compiler;Config;devServer=null;type;constructor(r,o,s){this.type=s;try{let i={};i="development"===s?t.getDevConfig(r,o):"analyzer"===s?t.getAnalyzerConfig(r,o):t.getProductionConfig(r,o),this.Config=i,this.Compiler=e.rspack(i)}catch(e){console.log(e)}}runBuild=()=>{this.Compiler.run((e,r)=>{if(e)console.log(e.message);else{console.log(r?.toString({colors:!0}));for(const e of Object.keys(r?.compilation?.assets||{}))console.log(`Generated asset: ${e}`)}})};runServer=async e=>{const t=Number(e?.port??this.Config?.devServer?.port??8080),s=await o.detectPort(t);this.devServer=new r.RspackDevServer({...this.Config?.devServer,...e,port:s},this.Compiler),await(this.devServer?.start())}};
3
+ //# sourceMappingURL=Webpack.js.map
@@ -1,2 +1,3 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var e=require("../../utils/index.js"),n=require("./production.config.js");const r=require("webpack-bundle-analyzer").BundleAnalyzerPlugin;exports._getAnalyzerConfig=(i,u)=>e.mergeConfig({plugins:[new r]},n.getProConfig(i,u));
2
+ "use strict";var r=require("./production.config.js");exports._getAnalyzerConfig=(n,o)=>{const{RsdoctorRspackPlugin:e}=require("@rsdoctor/rspack-plugin"),i=r.getProConfig(n,o);return{...i,plugins:[...i.plugins||[],new e({})]}};
3
+ //# sourceMappingURL=analyzer.config.js.map
@@ -1,2 +1,3 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";exports.browserslist=["Chrome >= 80","Firefox >= 72","Safari >= 13.1","Edge >= 80","iOS >= 13.4","not IE 11","> 1%"];
3
+ //# sourceMappingURL=browsers.js.map
@@ -1,2 +1,3 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var e=require("./browsers.js");const s=require("mini-css-extract-plugin");exports.getCssRules=r=>[{test:/\.(less)$/,exclude:/node_modules|public/,use:["development"===r?require.resolve("style-loader"):s.loader,{loader:require.resolve("css-loader"),options:{modules:{localIdentName:"[name]__[local]--[hash:base64:5]"}}},{loader:require.resolve("postcss-loader"),options:{postcssOptions:{plugins:[require.resolve("postcss-short"),require("postcss-preset-env")({browsers:e.browserslist,autoprefixer:{flexbox:"no-2009"},stage:3})]}}},{loader:require.resolve("less-loader"),options:{implementation:require.resolve("less"),lessOptions:{javascriptEnabled:!0}}}]},{test:/\.(css)$/,use:["development"===r?require.resolve("style-loader"):s.loader,require.resolve("css-loader"),{loader:require.resolve("postcss-loader"),options:{postcssOptions:{plugins:[require.resolve("postcss-short"),require("postcss-preset-env")({browsers:e.browserslist,autoprefixer:{flexbox:"no-2009"},stage:3})]}}}]}];
2
+ "use strict";var e=require("./browsers.js");const{CssExtractRspackPlugin:s}=require("@rspack/core");exports.getCssRules=r=>[{test:/\.(less)$/,exclude:/node_modules|public/,use:["development"===r?require.resolve("style-loader"):s.loader,{loader:require.resolve("css-loader"),options:{modules:{localIdentName:"[name]__[local]--[hash:base64:5]"}}},{loader:require.resolve("postcss-loader"),options:{postcssOptions:{plugins:[require.resolve("postcss-short"),require("postcss-preset-env")({browsers:e.browserslist,autoprefixer:{flexbox:"no-2009"},stage:3})]}}},{loader:require.resolve("less-loader"),options:{implementation:require.resolve("less"),lessOptions:{javascriptEnabled:!0}}}]},{test:/\.(css)$/,use:["development"===r?require.resolve("style-loader"):s.loader,require.resolve("css-loader"),{loader:require.resolve("postcss-loader"),options:{postcssOptions:{plugins:[require.resolve("postcss-short"),require("postcss-preset-env")({browsers:e.browserslist,autoprefixer:{flexbox:"no-2009"},stage:3})]}}}]}];
3
+ //# sourceMappingURL=cssRules.js.map
@@ -1,2 +1,3 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var e=require("../../utils/index.js"),t=require("html-webpack-plugin"),s=require("./cssRules.js"),r=require("path"),i=require("webpack"),a=require("./browsers.js"),o=require("../../config/index.js");const n=["name","routes","mpas","packages","microServiceMap","base","customHistoryApiFallback","outputPathDir","define","setting","vue","library","compression","terserOptions","htmlTemplatePath","locales","mfa","publicPathDir","provide"];exports.getDefaultConfig=(l,u)=>{const p=o.omit(u,n);let{base:c="/",routes:m,htmlTemplatePath:d,outputPathDir:g="dist",microServiceMap:f,define:v,setting:h,vue:b,provide:y}=o.pick(u,n);c=/^\/.*\/$/.test(c)?c:"/";let P=u.entry||{};const x=[];if(o.isEmpty(P)&&(P.index=r.resolve(l,"src/main")),"string"==typeof P.index){const s="string"==typeof d?d:d?.index,r=e.getMpasPageHtml(s);x.push(new t({template:r,filename:"index.html",chunks:["index"],publicPath:c,base:c,templateParameters:{base:c}})),u.entry=P}o.isEmpty(P)||Object.entries(P).forEach((([s,r])=>{if("index"!==s){const r="string"==typeof d?d:d?.[s],i=e.getMpasPageHtml(r);x.push(new t({template:i,filename:`${s}.html`,chunks:[s],publicPath:c,base:c,templateParameters:{base:c}}))}}));const w=s.getCssRules(u.mode);return e.mergeConfig({entry:P,stats:"minimal",devServer:{static:{directory:r.resolve(l,"src/.gant/public"),publicPath:c},compress:!0,historyApiFallback:o.has(u,"customHistoryApiFallback")?u?.customHistoryApiFallback:{index:r.resolve(c,"index.html"),rewrites:[{from:/^\/public\/(.*)$/,to:e=>r.resolve(c,e.match[1])}]}},module:{rules:[...b?[{test:/\.vue$/,loader:require.resolve("vue-loader")}]:[],{test:/\.(ts|tsx)$/,exclude:/node_modules/,use:{loader:require.resolve("swc-loader"),options:{jsc:{target:"es2020",parser:{syntax:"typescript",tsx:!0,dynamicImport:!0},transform:{...b?{}:{react:{runtime:"automatic",development:"development"===u.mode,refresh:"development"===u.mode}}}}}}},...w,{test:/\.ejs$/,use:{loader:require.resolve("ejs-loader"),options:{esModule:!1}}},{test:/\.(png|jpg|gif|woff|woff2|eot|ttf|svg)$/i,use:[{loader:require.resolve("url-loader"),options:{limit:8192,name:"[name][hash].[ext]",outputPath:"assets/"}}]}]},resolve:{extensions:[".tsx",".ts",".js",".jsx",".json",".vue"]},output:{path:r.resolve(l,g),publicPath:c,charset:!0,clean:!0},plugins:[...b?[new(require("vue-loader").VueLoaderPlugin)]:[],...x,new i.ProvidePlugin({...y}),new i.ProgressPlugin,new i.DefinePlugin({GANT_START_TIME:JSON.stringify(global.__gant_start_time),microServiceMap:JSON.stringify(f),BASE:JSON.stringify(c),SETTING:JSON.stringify(h||{}),...o.mapValues(v,(e=>JSON.stringify(e))),"process.env":JSON.stringify(process.env)}),new i.BannerPlugin({banner:`/*! @browserslist ${a.browserslist.join(", ")} */`,raw:!0})]},p)};
2
+ "use strict";var e=require("../../utils/index.js"),s=require("./cssRules.js"),t=require("path"),r=require("@rspack/core"),i=require("./browsers.js"),a=require("./framework/index.js");const o=["name","routes","mpas","packages","microServiceMap","base","customHistoryApiFallback","outputPathDir","define","setting","framework","library","compression","terserOptions","htmlTemplatePath","locales","mfa","publicPathDir","provide","copy"];exports.getDefaultConfig=(n,l)=>{const p=e.omit(l,o);let{base:c="/",routes:u,htmlTemplatePath:m,outputPathDir:g="dist",define:d,provide:f}=e.pick(l,o);c=/^\/.*\/$/.test(c)?c:"/";const h=a.getFrameworkConfig(l,l.mode);let b=l.entry||{};const P=[];if(e.isEmpty(b)&&(b.index=t.resolve(n,"src/main")),"string"==typeof b.index){const s="string"==typeof m?m:m?.index,t=e.getMpasPageHtml(s);P.push(new r.rspack.HtmlRspackPlugin({template:t,filename:"index.html",chunks:["index"],publicPath:c,base:c,templateParameters:{base:c}})),l.entry=b}e.isEmpty(b)||Object.entries(b).forEach(([s,t])=>{if("index"!==s){const t="string"==typeof m?m:m?.[s],i=e.getMpasPageHtml(t);P.push(new r.rspack.HtmlRspackPlugin({template:i,filename:`${s}.html`,chunks:[s],publicPath:c,base:c,templateParameters:{base:c}}))}});const v=s.getCssRules(l.mode);return e.mergeConfig({entry:b,stats:"minimal",devServer:{static:{directory:t.resolve(n,"src/.gant/public"),publicPath:c},compress:!0,historyApiFallback:e.has(l,"customHistoryApiFallback")?l?.customHistoryApiFallback:{index:t.resolve(c,"index.html"),rewrites:[{from:/^\/public\/(.*)$/,to:e=>t.resolve(c,e.match[1])}]}},module:{rules:[...h.loaders,{test:/\.(ts|tsx)$/,exclude:/node_modules/,use:{loader:require.resolve("swc-loader"),options:{jsc:{target:"es2020",parser:{syntax:"typescript",tsx:!0,dynamicImport:!0},transform:h.swcTransform}}}},...v,{test:/\.ejs$/,use:{loader:require.resolve("ejs-loader"),options:{esModule:!1}}},{test:/\.(png|jpg|gif|woff|woff2|eot|ttf|svg)$/i,use:[{loader:require.resolve("url-loader"),options:{limit:8192,name:"[name][hash].[ext]",outputPath:"assets/"}}]}]},resolve:{extensions:[".tsx",".ts",".js",".jsx",".json",...h.extensions],alias:{"@gant/setting":t.resolve(n,e.getSrcPath(),".gant/setting.ts"),"@gant/microServiceMap":t.resolve(n,e.getSrcPath(),".gant/microServiceMap.ts")}},output:{path:t.resolve(n,g),publicPath:c,charset:!0,clean:!0},plugins:[...h.plugins,...P,new r.rspack.ProvidePlugin({...f}),new r.rspack.ProgressPlugin,new r.rspack.DefinePlugin({GANT_START_TIME:JSON.stringify(global.__gant_start_time),BASE:JSON.stringify(c),"process.env.NODE_ENV":JSON.stringify(process.env.NODE_ENV),...e.mapValues(d,e=>JSON.stringify(e))}),new r.rspack.BannerPlugin({banner:`/*! @browserslist ${i.browserslist.join(", ")} */`,raw:!0})]},p)};
3
+ //# sourceMappingURL=default.config.js.map
@@ -1,2 +1,3 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var e=require("../../utils/index.js"),r=require("path"),t=require("../../config/index.js");const o=require("@pmmmwh/react-refresh-webpack-plugin");exports._getDevlopmentConfig=(i,s)=>{const{base:l="/"}=i;return e.mergeConfig({mode:"development",devtool:"eval-source-map",devServer:{port:8080,hot:!0,open:!0,client:{overlay:!1},static:{directory:r.resolve(s,"src/.gant/public"),publicPath:l},compress:!0,historyApiFallback:t.has(i,"customHistoryApiFallback")?i?.customHistoryApiFallback:{index:r.resolve(l,"index.html"),rewrites:[{from:new RegExp(`${l}public/(.*)`),to:e=>e.match&&e.match[1]?r.resolve(l,e.match[1]):l}]}},resolve:{},plugins:[new o({overlay:!1})]},i)};
2
+ "use strict";var e=require("../../utils/index.js"),r=require("path"),t=require("./framework/index.js");exports._getDevlopmentConfig=(o,i)=>{const{base:s="/"}=o,l=t.getFrameworkConfig(o,"development");return e.mergeConfig({mode:"development",devtool:"eval-source-map",devServer:{port:8080,hot:!0,open:!0,client:{overlay:!1},static:{directory:r.resolve(i,"src/.gant/public"),publicPath:s},compress:!0,historyApiFallback:e.has(o,"customHistoryApiFallback")?o?.customHistoryApiFallback:{index:r.resolve(s,"index.html"),rewrites:[{from:new RegExp(`${s}public/(.*)`),to:e=>e.match&&e.match[1]?r.resolve(s,e.match[1]):s}]}},resolve:{},plugins:[...l.devPlugins]},o)};
3
+ //# sourceMappingURL=development.config.js.map
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ "use strict";var e=require("./react.js"),r=require("./vue.js");function t(e){return e.framework||"react"}exports.getFrameworkConfig=function(o,u){return"vue"===t(o)?r.getVueConfig():e.getReactConfig(u)},exports.resolveFramework=t;
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ "use strict";exports.getReactConfig=function(e){const r="development"===e,{ReactRefreshRspackPlugin:t}=require("@rspack/plugin-react-refresh");return{swcTransform:{react:{runtime:"automatic",development:r,refresh:r}},loaders:[],plugins:[],extensions:[],tsConfigSuffix:"react",devPlugins:r?[new t({overlay:!1})]:[]}};
3
+ //# sourceMappingURL=react.js.map
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ "use strict";exports.getVueConfig=function(){const e=require("vue-loader").VueLoaderPlugin;return{swcTransform:{},loaders:[{test:/\.vue$/,loader:require.resolve("vue-loader")}],plugins:[new e],extensions:[".vue"],tsConfigSuffix:"vue",devPlugins:[]}};
3
+ //# sourceMappingURL=vue.js.map
@@ -1,2 +1,3 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";var e=require("./production.config.js"),t=require("./default.config.js"),n=require("./development.config.js"),o=require("./analyzer.config.js");exports.getAnalyzerConfig=(e,n)=>{const r=o._getAnalyzerConfig(e,n);return t.getDefaultConfig(n,r)},exports.getDevConfig=(e,o)=>{const r=n._getDevlopmentConfig(e,o);return t.getDefaultConfig(o,r)},exports.getProductionConfig=(n,o)=>{const r=e.getProConfig(n,o);return t.getDefaultConfig(o,r)};
3
+ //# sourceMappingURL=index.js.map
@@ -1,2 +1,3 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var e=require("../plugins/copy.js"),i=require("path"),n=require("../../utils/index.js"),s=require("mini-css-extract-plugin"),r=require("css-minimizer-webpack-plugin"),t=require("terser-webpack-plugin"),o=require("compression-webpack-plugin"),u=require("../../config/index.js");exports.getProConfig=(p,m)=>{const{outputPathDir:l="dist",publicPathDir:a=i.resolve(m,n.getSrcPath(),".gant/public"),optimization:c,library:g,compression:d=!0,terserOptions:h}=p,k=[],w={exclude:/node_modules/,...h,extractComments:!1,terserOptions:{compress:!0,mangle:!0,...h?.terserOptions}};return g?n.mergeConfig({mode:"production",optimization:{minimize:!0,minimizer:[new r,new t(w)],...c},plugins:[new s]},p):(!0===d&&k.push(new o({algorithm:"gzip",test:/\.js(\?.*)?$/i,threshold:10240,minRatio:.7,deleteOriginalAssets:!1})),n.mergeConfig({mode:"production",devtool:"source-map",optimization:{minimize:!0,minimizer:[new r,new t(w)],runtimeChunk:"single",...c,splitChunks:{chunks:"all",minSize:10240,maxAsyncRequests:3,maxInitialRequests:3,minChunks:1,maxSize:5242880,...c?.splitChunks,cacheGroups:{vendors:{chunks:"initial",name:"vendors",test:/[\\/]node_modules[\\/]/,priority:-10,reuseExistingChunk:!0},...u.get(c?.splitChunks,"cacheGroups",{})}}},plugins:[new s,new e.CopyFolderPlugin({patterns:[{from:a,to:i.resolve(m,l,"public")}]}),...k]},p))};
2
+ "use strict";var i=require("../plugins/copy.js"),e=require("path"),s=require("../../utils/index.js"),t=require("@rspack/core"),n=require("compression-webpack-plugin");exports.getProConfig=(r,o)=>{const{outputPathDir:u="dist",publicPathDir:p=e.resolve(o,s.getSrcPath(),".gant/public"),optimization:a,library:l,compression:c=!0,copy:m=[]}=r,g=[];return l?s.mergeConfig({mode:"production",optimization:{minimize:!0,...a},plugins:[new t.CssExtractRspackPlugin]},r):(!0===c&&g.push(new n({algorithm:"gzip",test:/\.js(\?.*)?$/i,threshold:10240,minRatio:.7,deleteOriginalAssets:!1})),s.mergeConfig({mode:"production",devtool:"source-map",optimization:{minimize:!0,runtimeChunk:"single",moduleIds:"deterministic",...a,splitChunks:{chunks:"all",minSize:10240,maxAsyncRequests:30,maxInitialRequests:30,minChunks:1,maxSize:5242880,...a?.splitChunks,cacheGroups:{vendors:{chunks:"initial",name:"vendors",test:/[\\/]node_modules[\\/]/,priority:-10,reuseExistingChunk:!0},...s.get(a?.splitChunks,"cacheGroups",{})}}},plugins:[new t.CssExtractRspackPlugin,new i.CopyFolderPlugin({patterns:[{from:p,to:e.resolve(o,u,"public")},...m]}),...g]},r))};
3
+ //# sourceMappingURL=production.config.js.map
@@ -1,2 +1,3 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var o=require("../../utils/index.js");exports.CopyFolderPlugin=class{options;constructor(o){this.options=o}apply(t){t.hooks.afterEmit.tap("CopyFolderPlugin",(()=>{this.options?.patterns?.map((t=>{o.copyFolder(t.from,t.to)}))}))}};
2
+ "use strict";var o=require("../../utils/index.js");exports.CopyFolderPlugin=class{options;constructor(o){this.options=o}apply(t){t.hooks.afterEmit.tap("CopyFolderPlugin",()=>{this.options?.patterns?.map(t=>{o.copyFolder(t.from,t.to)})})}};
3
+ //# sourceMappingURL=copy.js.map
@@ -1,2 +1,3 @@
1
1
  #!/usr/bin/env node
2
- "use strict";require("fs"),require("path"),require("../../utils/index.js"),require("../../utils/getJavascriptfile.js");
2
+ "use strict";require("fs"),require("path"),require("../../utils/getJavascriptfile.js"),require("net");
3
+ //# sourceMappingURL=index.js.map