Skip to content

Commit

Permalink
chore(deps): update dependency kkt to v7
Browse files Browse the repository at this point in the history
  • Loading branch information
jaywcjlove committed Dec 31, 2021
1 parent 4f9e956 commit 4bd10bf
Show file tree
Hide file tree
Showing 3 changed files with 96 additions and 89 deletions.
151 changes: 82 additions & 69 deletions .kktrc.ts
Expand Up @@ -7,6 +7,7 @@ import scopePluginOptions from '@kkt/scope-plugin-options';
import pkg from './package.json';

export default (conf: Configuration, env: 'production' | 'development', options: LoaderConfOptions) => {
conf.module!.exprContextCritical = false;
conf = rawModules(conf, env, { ...options });
conf = lessModules(conf, env, options);
conf = scopePluginOptions(conf, env, {
Expand All @@ -21,79 +22,91 @@ export default (conf: Configuration, env: 'production' | 'development', options:
VERSION: JSON.stringify(pkg.version),
}));

conf.module!.exprContextCritical = false;

conf.optimization = {
...conf.optimization,
splitChunks: {
chunks: 'all', // async对异步引入的代码分割 initial 对同步引入代码分割 all对同步异步引入的分割都开启
minSize: 30000, // 字节 引入的文件大于30kb才进行分割
maxSize: 0, // 文件的最大尺寸,优先级:maxInitialRequest/maxAsyncRequests < maxSize < minSize,需要注意的是这个如果配置了,umi.js 就可能被拆开,最后构建出来的 chunkMap 中可能就找不到 umi.js 了
minChunks: 1, // 模块至少使用次数
maxAsyncRequests: 30, // 同时加载的模块数量最多是_个,只分割出同时引入的前_个文件(按需加载模块)
maxInitialRequests: 25, // 首页加载的时候引入的文件最多 _ 个(加载初始页面)
automaticNameDelimiter: '~', // 缓存组和生成文件名称之间的连接符
name: true, // 缓存组里面的 filename 生效,覆盖默认命名
cacheGroups: {
markdown_preview: {
name: 'vendors-markdown-preview',
chunks: 'all',
test: /[\\/]node_modules[\\/](@uiw\/react-markdown-preview)[\\/]/,
priority: -2,
},
codemirror: {
name: 'vendors-codemirror',
chunks: 'all',
test: /[\\/]node_modules[\\/](@codemirror)[\\/]/,
priority: -2,
},
refractor: {
name: 'vendors-refractor',
chunks: 'all',
test: /[\\/]node_modules[\\/](refractor)[\\/]/,
priority: -2,
},
uiwjs: {
name: 'vendors-uiwjs',
chunks: 'all',
test: /[\\/]node_modules[\\/]@uiw\/(copy-to-clipboard|formatter|icons|react-affix|react-alert|react-avatar|react-back-top|react-badge|react-breadcrumb|react-button|react-button-group|react-calendar|react-card|react-checkbox|react-codemirror|react-collapse|react-copy-to-clipboard|react-date-input|react-date-picker|react-descriptions|react-divider|react-drawer|react-dropdown|react-file-input|react-form|react-github-corners|react-grid|react-icon|react-input|react-layout|react-list|react-loader|react-menu|react-message|react-modal|react-month-picker|react-notify|react-overlay|react-overlay-trigger|react-pagination|react-pin-code|react-popover|react-portal|react-progress|react-radio|react-rate|react-search-select|react-select|react-slider|react-split|react-steps|react-switch|react-table|react-tabs|react-tag|react-textarea|react-time-picker|react-tooltip|react-tree|react-tree-checked|reset.css|utils)[\\/]/,
priority: -4, // 优先级,先打包到哪个组里面,值越大,优先级越高
},
react: {
name: 'vendors-react',
chunks: 'all',
test: /[\\/]node_modules[\\/](react|react-dom)[\\/]/,
priority: -5,
},
babel_standalone: {
name: 'vendors-standalone',
chunks: 'all',
test: /[\\/]node_modules[\\/](@babel\/standalone)[\\/]/,
priority: -2,
},
babel_vendors: {
name: 'babel_vendors',
chunks: 'all',
test: /[\\/]node_modules[\\/](@babel)[\\/]/,
priority: -5,
},
prismjs: {
test: /[\\/]node_modules[\\/](prismjs)[\\/]/,
name: 'prismjs-vendor',
chunks: 'async',
},
babel_runtime: {
name: 'vendors-runtime',
chunks: 'all',
test: /[\\/]node_modules[\\/](@babel\/runtime|@babel\/plugin-transform-classes|babel-plugin-transform-remove-imports)[\\/]/,
priority: -5,
},
}
/**
* https://github.com/kktjs/kkt/issues/198#issuecomment-1003244164
*/
if (conf.module && conf.module.rules && conf.module.rules[0]) {
const rules = conf.module.rules[0];
if (typeof rules === 'object' && typeof rules.loader === 'string' && /source-map-loader/.test(rules.loader)) {
;(conf.module.rules[0] as any).exclude = /((@babel(?:\/|\\{1,2})runtime)|codesandbox-import-utils)/;
}
}

if (env === 'production') {
conf.optimization = {
...conf.optimization,
splitChunks: {
chunks: 'all', // async对异步引入的代码分割 initial 对同步引入代码分割 all对同步异步引入的分割都开启
minSize: 30000, // 字节 引入的文件大于30kb才进行分割
// maxSize: 0, // 文件的最大尺寸,优先级:maxInitialRequest/maxAsyncRequests < maxSize < minSize,需要注意的是这个如果配置了,umi.js 就可能被拆开,最后构建出来的 chunkMap 中可能就找不到 umi.js 了
minChunks: 1, // 模块至少使用次数
maxAsyncRequests: 30, // 同时加载的模块数量最多是_个,只分割出同时引入的前_个文件(按需加载模块)
maxInitialRequests: 25, // 首页加载的时候引入的文件最多 _ 个(加载初始页面)
automaticNameDelimiter: '~', // 缓存组和生成文件名称之间的连接符
cacheGroups: {
markdown_preview: {
name: 'vendors-markdown-preview',
chunks: 'all',
test: /[\\/]node_modules[\\/](@uiw\/react-markdown-preview)[\\/]/,
priority: -2,
},
codemirror: {
name: 'vendors-codemirror',
chunks: 'all',
test: /[\\/]node_modules[\\/](@codemirror)[\\/]/,
priority: -2,
},
refractor: {
name: 'vendors-refractor',
chunks: 'all',
test: /[\\/]node_modules[\\/](refractor)[\\/]/,
priority: -2,
},
uiwjs: {
name: 'vendors-uiwjs',
chunks: 'all',
test: /[\\/]node_modules[\\/]@uiw\/(copy-to-clipboard|formatter|icons|react-affix|react-alert|react-avatar|react-back-top|react-badge|react-breadcrumb|react-button|react-button-group|react-calendar|react-card|react-checkbox|react-codemirror|react-collapse|react-copy-to-clipboard|react-date-input|react-date-picker|react-descriptions|react-divider|react-drawer|react-dropdown|react-file-input|react-form|react-github-corners|react-grid|react-icon|react-input|react-layout|react-list|react-loader|react-menu|react-message|react-modal|react-month-picker|react-notify|react-overlay|react-overlay-trigger|react-pagination|react-pin-code|react-popover|react-portal|react-progress|react-radio|react-rate|react-search-select|react-select|react-slider|react-split|react-steps|react-switch|react-table|react-tabs|react-tag|react-textarea|react-time-picker|react-tooltip|react-tree|react-tree-checked|reset.css|utils)[\\/]/,
priority: -4, // 优先级,先打包到哪个组里面,值越大,优先级越高
},
react: {
name: 'vendors-react',
chunks: 'all',
test: /[\\/]node_modules[\\/](react|react-dom)[\\/]/,
priority: -5,
},
babel_standalone: {
name: 'vendors-standalone',
chunks: 'all',
test: /[\\/]node_modules[\\/](@babel\/standalone)[\\/]/,
priority: -2,
},
babel_vendors: {
name: 'babel_vendors',
chunks: 'all',
test: /[\\/]node_modules[\\/](@babel)[\\/]/,
priority: -5,
},
prismjs: {
test: /[\\/]node_modules[\\/](prismjs)[\\/]/,
name: 'prismjs-vendor',
chunks: 'all',
},
reactmarkdownpreview: {
test: /[\\/](react-markdown-preview)[\\/]/,
name: 'markdown-preview-vendor',
chunks: 'all',
},
babel_runtime: {
name: 'vendors-runtime',
chunks: 'all',
test: /[\\/]node_modules[\\/](@babel\/runtime|@babel\/plugin-transform-classes|babel-plugin-transform-remove-imports)[\\/]/,
priority: -5,
},
}
}
}
conf.output = { ...conf.output, publicPath: './' };
}

return conf;
}
29 changes: 14 additions & 15 deletions package.json
Expand Up @@ -42,36 +42,35 @@
"react-dom": ">=16.9.0"
},
"devDependencies": {
"@kkt/less-modules": "6.11.0",
"@kkt/raw-modules": "6.11.0",
"@kkt/scope-plugin-options": "6.11.0",
"@types/babel__standalone": "7.1.3",
"@types/react": "17.0.37",
"@kkt/less-modules": "7.0.1",
"@kkt/raw-modules": "7.0.1",
"@kkt/scope-plugin-options": "7.0.1",
"@types/babel__standalone": "7.1.4",
"@types/react": "17.0.38",
"@types/react-dom": "17.0.11",
"@types/react-test-renderer": "17.0.1",
"@uiw/react-github-corners": "1.5.3",
"@uiw/react-markdown-preview": "3.4.3",
"@uiw/react-markdown-preview": "3.4.5",
"@uiw/reset.css": "1.0.5",
"compile-less-cli": "1.8.9",
"jest-environment-jsdom": "27.4.3",
"kkt": "6.11.0",
"kkt": "7.0.1",
"react": "17.0.2",
"react-dom": "17.0.2",
"react-test-renderer": "17.0.2",
"source-map-explorer": "2.5.2",
"tsbb": "3.5.2",
"tsbb": "3.5.4",
"uiw": "4.9.7"
},
"dependencies": {
"@babel/plugin-transform-classes": "7.16.0",
"@babel/runtime": "7.16.3",
"@babel/standalone": "7.16.4",
"@babel/core": "7.16.0",
"@babel/plugin-transform-classes": "7.16.7",
"@babel/runtime": "7.16.7",
"@babel/standalone": "7.16.7",
"@babel/core": "7.16.7",
"@codemirror/lang-javascript": "0.19.3",
"@uiw/copy-to-clipboard": "1.0.12",
"@uiw/react-codemirror": "4.2.4",
"@uiw/react-codemirror": "4.3.1",
"@uiw/react-split": "5.8.4",
"@uiw/react-codesandbox": "1.1.0",
"@uiw/react-codesandbox": "1.1.4",
"@uiw/react-codepen": "1.0.2",
"babel-plugin-transform-remove-imports": "1.7.0"
},
Expand Down
5 changes: 0 additions & 5 deletions website/react-app-env.d.ts
Expand Up @@ -9,8 +9,3 @@ declare module "*.md" {
const value: any;
export default value;
}

declare module '*.less' {
const content: any;
export default content;
}

0 comments on commit 4bd10bf

Please sign in to comment.