@moneko/core 2.0.0-beta.8 → 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 (90) hide show
  1. package/{lib/utils → build}/color-palette.d.ts +0 -0
  2. package/build/color-palette.js +1 -0
  3. package/build/common.js +1 -1
  4. package/build/envFlags.d.ts +1 -1
  5. package/build/envFlags.js +1 -1
  6. package/build/minify.d.ts +1 -1
  7. package/build/modifyVars.js +1 -1
  8. package/build/module.config.js +1 -1
  9. package/build/process-env.d.ts +3 -1
  10. package/build/process-env.js +1 -1
  11. package/build/swcrc.js +1 -1
  12. package/build/tsloader.config.js +1 -1
  13. package/build/utils.d.ts +9 -6
  14. package/build/utils.js +1 -1
  15. package/{lib/utils/theme.d.ts → build/variables.d.ts} +9 -1
  16. package/build/variables.js +1 -0
  17. package/build/webpack.common.js +1 -1
  18. package/build/webpack.dev.js +1 -1
  19. package/build/webpack.prod.js +1 -1
  20. package/lib/components/app-router/index.d.ts +3 -2
  21. package/lib/components/app-router/index.js +1 -1
  22. package/lib/components/app-router/index.js.map +1 -1
  23. package/lib/components/fallback/index.js +1 -1
  24. package/lib/components/fallback/index.js.map +1 -1
  25. package/lib/components/fallback-comp/index.js.map +1 -1
  26. package/lib/components/layout-menu/index.js.map +1 -1
  27. package/lib/hooks/navgate.js.map +1 -1
  28. package/lib/index.d.ts +3 -9
  29. package/lib/index.js +1 -1
  30. package/lib/index.js.map +1 -1
  31. package/lib/packages/back-stage/app.d.ts +0 -2
  32. package/lib/packages/back-stage/app.js +1 -1
  33. package/lib/packages/back-stage/app.js.map +1 -1
  34. package/lib/packages/back-stage/index.d.ts +1 -1
  35. package/lib/packages/back-stage/index.js +1 -1
  36. package/lib/packages/back-stage/index.js.map +1 -1
  37. package/lib/packages/back-stage/layout/index.js +1 -1
  38. package/lib/packages/back-stage/layout/index.js.map +1 -1
  39. package/lib/packages/back-stage/models/app-program.d.ts +1 -1
  40. package/lib/packages/back-stage/models/app-program.js.map +1 -1
  41. package/lib/packages/library/app.js.map +1 -1
  42. package/lib/packages/library/index.d.ts +1 -1
  43. package/lib/packages/library/index.js +1 -1
  44. package/lib/packages/library/index.js.map +1 -1
  45. package/lib/packages/mobile/app.js.map +1 -1
  46. package/lib/packages/mobile/index.d.ts +1 -1
  47. package/lib/packages/mobile/index.js +1 -1
  48. package/lib/packages/mobile/index.js.map +1 -1
  49. package/lib/packages/single-spa/app.js.map +1 -1
  50. package/lib/packages/single-spa/bootstrap.js.map +1 -1
  51. package/lib/packages/single-spa/index.d.ts +1 -1
  52. package/lib/packages/single-spa/index.js +1 -1
  53. package/lib/packages/single-spa/index.js.map +1 -1
  54. package/lib/packages/site/app.js.map +1 -1
  55. package/lib/packages/site/index.d.ts +1 -1
  56. package/lib/packages/site/index.js +1 -1
  57. package/lib/packages/site/index.js.map +1 -1
  58. package/lib/prefix/react-router-dom.js.map +1 -1
  59. package/lib/router/index.d.ts +24 -6
  60. package/lib/router/index.js +1 -1
  61. package/lib/router/index.js.map +1 -1
  62. package/lib/styles/animation.css +58 -0
  63. package/lib/styles/normalize.css +93 -22
  64. package/lib/styles/variables.css +40 -0
  65. package/lib/utils/index.d.ts +1 -2
  66. package/lib/utils/index.js +1 -1
  67. package/lib/utils/index.js.map +1 -1
  68. package/package.json +21 -21
  69. package/typings/global.d.ts +31 -11
  70. package/build/has-antd.d.ts +0 -2
  71. package/build/has-antd.js +0 -1
  72. package/lib/components/readme/index.d.ts +0 -3
  73. package/lib/components/readme/index.js +0 -2
  74. package/lib/components/readme/index.js.map +0 -1
  75. package/lib/components/readme/index.less +0 -4
  76. package/lib/packages/back-stage/antd.global.less +0 -67
  77. package/lib/styles/animation.less +0 -58
  78. package/lib/styles/ant.variables.global.less +0 -231
  79. package/lib/styles/eval/bezierEasing.less +0 -106
  80. package/lib/styles/eval/colorPalette.less +0 -73
  81. package/lib/styles/eval/tinyColor.less +0 -1181
  82. package/lib/styles/index.global.less +0 -136
  83. package/lib/styles/vars.less +0 -98
  84. package/lib/utils/color-palette.js +0 -2
  85. package/lib/utils/color-palette.js.map +0 -1
  86. package/lib/utils/lazy-import.d.ts +0 -22
  87. package/lib/utils/lazy-import.js +0 -2
  88. package/lib/utils/lazy-import.js.map +0 -1
  89. package/lib/utils/theme.js +0 -2
  90. package/lib/utils/theme.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/router/index.ts"],"sourcesContent":["import { lazyImport } from '../utils/lazy-import';\nimport { pathToRegexp } from 'path-to-regexp';\nimport { createElement, lazy, type ReactElement, type ReactNode } from 'react';\nimport type { RouteObject } from 'react-router-dom';\nimport type { KeepAliveProps } from 'react-activation';\n\nexport interface RouterProps extends Omit<RouteObject, 'index' | 'children'> {\n key: string;\n alive?: KeepAliveProps | boolean;\n icon?: ReactNode;\n dynamicTitle?: string;\n i18n?: string | null;\n hideMenu?: boolean;\n hideTabs?: boolean;\n onlyLogin?: boolean;\n root?: boolean;\n path?: string;\n element?: ReactElement;\n fallback?: ReactElement;\n /** 可否关闭标签 */\n closable?: boolean;\n children?: RouterProps[];\n}\n\nexport const myPkgs: RouterProps[] = [];\nif (APPTYPE === 'library') {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n // const Readme = require('@moneko/core/lib/components/readme').default;\n const models = require.context('@pkg/', true, /README\\.mdx?$/, 'lazy');\n\n models.keys().map((item: string) => {\n const key = item.substring(2).split('/').slice(0, -1).join('/');\n\n myPkgs.push({\n key: key,\n path: key,\n element: createElement(\n lazy(\n () =>\n import(\n /* webpackChunkName: \"[request]\" */\n '@pkg/' + key + '/' + 'README.mdx'\n )\n )\n ),\n });\n });\n}\n\nlet list: RouterProps[] = [];\n\ntry {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n list = require('@/router').default;\n} catch (error) {\n // eslint-disable-next-line no-console\n console.info('自定义路由请在 router 目录下新建 index.ts, 类型: RouterProps[]');\n}\n\nconst predixKey = (path?: string, prev?: string) =>\n // eslint-disable-next-line no-undefined\n [prev === '*' && path !== '*' ? undefined : prev, path].filter(Boolean).join('/');\n\nconst models = require.context('@/pages/', true, /\\.(t|j)sx$/, 'lazy');\n\nconst pathToTree = (input: string[]) => {\n const root: RouterProps[] = [];\n\n for (let i = 0; i < input.length; i++) {\n const chain = input[i].split('/').slice(0, -1);\n let curr = root;\n\n for (let j = 0; j < chain.length; j++) {\n let pathRule = chain[j];\n\n if (pathRule === '') continue;\n if (pathRule === '.') pathRule = '*';\n const lastHierarchy = curr;\n\n // 遍历root是否已有该层级\n if (Array.isArray(curr)) {\n for (let k = 0; k < curr.length; k++) {\n if (curr[k].path === pathRule) {\n curr = curr[k].children as RouterProps[];\n break;\n }\n }\n }\n\n if (lastHierarchy === curr) {\n let key: string = j === chain.length - 1 ? input[i] : chain.slice(0, j + 1).join('/') + '/';\n\n // 截取最后一个 / 前面的数据\n key = key.substring(2, key.lastIndexOf('/'));\n\n const node: RouterProps = {\n key: key,\n path: pathRule,\n i18n: 'route-' + key,\n children: [],\n alive: false,\n element: createElement(lazyImport(key.replace(/:/g, '$'))),\n hideMenu: key.includes(':'),\n };\n\n // 文件,最后一个字符不是\"/“符号\n // if (j === chain.length - 1) delete node.children;\n if (Array.isArray(curr)) curr.push(node);\n curr = node.children as RouterProps[];\n }\n }\n }\n\n return root;\n};\nconst routers: RouterProps[] = pathToTree(\n models.keys().map((item: string) => item.replace(/\\$/g, ':'))\n);\n\nfunction merge(source: RouterProps[], child: RouterProps, prev?: string) {\n const _ = source.find((item) => item.path === child.path);\n\n if (!_) {\n source.push(child);\n } else {\n // 处理key\n _.key = predixKey(_.path, prev);\n if (typeof _.i18n === 'undefined') {\n _.i18n = 'route-' + _.key;\n }\n if (typeof _.alive === 'undefined') {\n _.alive = false;\n }\n if (typeof _.element === 'undefined' && child.element) {\n _.element = child.element;\n }\n if (typeof _.hideMenu === 'undefined') {\n _.hideMenu = _.path === '*' ? true : _.key.includes(':');\n }\n\n Object.assign(_, {\n ...child,\n ..._,\n });\n if (child.children) {\n if (!_.children && Array.isArray(child.children)) {\n _.children = child.children;\n }\n child.children?.forEach((childData) => {\n merge(_?.children as RouterProps[], childData, _?.key);\n });\n }\n }\n}\nconst findLogin = (rs: RouterProps[] = [], onlyLogin: boolean, prevKey?: string): RouterProps[] => {\n return rs\n .map((e) => {\n const _ = { ...e };\n\n if (typeof _.key === 'undefined') {\n _.key = predixKey(e.path, prevKey);\n }\n if (typeof _.i18n === 'undefined') {\n _.i18n = 'route-' + _.key;\n }\n if (typeof _.alive === 'undefined') {\n _.alive = false;\n }\n if (_.path === '*' && typeof _.hideMenu === 'undefined') {\n _.hideMenu = true;\n }\n if (Array.isArray(_.children)) {\n // eslint-disable-next-line no-undefined\n _.children = _.children.length ? findLogin(_.children, onlyLogin, _.key) : undefined;\n }\n if (!_.element) {\n _.element = createElement(lazyImport(_.key.replace(/:/g, '$')));\n }\n return !!_.onlyLogin === onlyLogin && !_.root ? null : _;\n })\n .filter(Boolean) as RouterProps[];\n};\nconst _router: RouterProps[] = [...list];\n\nrouters.forEach((item: RouterProps) => merge(_router, item));\n\n/* 登录前注册的路由 */\nexport const onlyLoginRouter = findLogin(_router, false);\n/* 登录后注册的路由 */\nexport const router = findLogin(_router, true);\n\nexport const matchUtil = (pathname: string) => {\n let p: RouterProps = { key: '' };\n const findPath = (rs: RouterProps[]): void => {\n rs.forEach((item) => {\n if (item.path && item.path !== '*' && item.key) {\n try {\n if (pathToRegexp(item.key).exec(pathname.substring(1) as string)) {\n p = item;\n return;\n }\n // eslint-disable-next-line no-empty\n } catch (error) {}\n }\n if (Array.isArray(item.children)) findPath(item.children);\n });\n };\n\n findPath(router);\n return p;\n};\n"],"names":["lazyImport","pathToRegexp","createElement","lazy","myPkgs","APPTYPE","models","require","context","keys","map","item","key","substring","split","slice","join","push","path","element","list","default","error","console","info","predixKey","prev","undefined","filter","Boolean","pathToTree","input","root","i","length","chain","curr","j","pathRule","lastHierarchy","Array","isArray","k","children","lastIndexOf","node","i18n","alive","replace","hideMenu","includes","routers","merge","source","child","_","find","Object","assign","forEach","childData","findLogin","rs","onlyLogin","prevKey","e","_router","onlyLoginRouter","router","matchUtil","pathname","p","findPath","exec"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/router/index.ts"],"sourcesContent":["import { pathToRegexp } from 'path-to-regexp';\nimport { createElement, lazy, type ReactNode } from 'react';\nimport type { KeepAliveProps } from 'react-activation';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Any = any;\nexport interface RouterProps {\n key: string;\n alive?: KeepAliveProps | boolean;\n icon?: ReactNode;\n dynamicTitle?: string;\n i18n?: string | null;\n hideMenu?: boolean;\n hideTabs?: boolean;\n onlyLogin?: boolean;\n root?: boolean;\n path?: string;\n element?: ReactNode;\n fallback?: ReactNode;\n /** 可否关闭标签 */\n closable?: boolean;\n children?: RouterProps[];\n props?: {\n path: string;\n // eslint-disable-next-line no-unused-vars\n components?: Record<string, (p: Any) => ReactNode>;\n [key: string]: Any;\n };\n}\nexport const lazyImport = (filePath: string) => {\n return lazy(\n () =>\n import(\n /* webpackChunkName: \"[request]\" */\n '@/pages/' + filePath.replace(/:/g, '$').replace(/^\\//, '')\n )\n );\n};\n\nexport interface ExampleModule {\n soucre: string;\n title?: string;\n}\nexport type MyPkg = RouterProps & {\n type: string;\n title: string;\n subtitle?: string;\n icon?: string;\n};\nexport const myPkgs: MyPkg[] = [];\nexport const myDemoKv: Record<string, ExampleModule[]> = {};\nif (APPTYPE === 'library') {\n const models = require.context('@pkg/', true, /README\\.mdx?$/);\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const Code = require('@/components/code').default;\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const Box = require('@/components/box').default;\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const Snapshot = require('@/components/snapshot').default;\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n let mdxComponents = {};\n\n try {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n mdxComponents = require('@/components/mdx-components').default;\n // eslint-disable-next-line no-empty\n } catch (error) {}\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const pkgs = require('@pkg');\n\n models.keys()?.forEach((item: string) => {\n const key = item.substring(2).split('/').slice(0, -1).join('/');\n const { basic, default: Child } = models(item);\n const heading = (p: Any, level: number) =>\n createElement(`h${level}`, {\n 'data-prefix': '# ',\n role: 'heading',\n 'aria-level': level,\n ...p,\n });\n\n myPkgs.push({\n key: key,\n path: key,\n element: Child,\n ...basic,\n props: {\n components: {\n h1: (p: Any) => heading(p, 1),\n h2: (p: Any) => heading(p, 2),\n h3: (p: Any) => heading(p, 3),\n h4: (p: Any) => heading(p, 4),\n h5: (p: Any) => heading(p, 5),\n h6: (p: Any) => heading(p, 6),\n pre: (p: Any) => {\n const c = createElement('code', p);\n\n if (p.className) {\n return createElement(\n Code,\n { lang: p.className.replace('language-', '').replace(/ .*$/, '') },\n c\n );\n }\n return c;\n },\n Box,\n Code,\n Snapshot,\n ...pkgs,\n ...mdxComponents,\n },\n path: key,\n },\n });\n });\n\n const allDemo = require.context('@pkg/', true, /\\/examples\\/(.+)\\.mdx$/);\n\n allDemo.keys()?.forEach((e: string) => {\n const k = e.substring(2),\n arr = k.split('/'),\n name = arr[0];\n\n if (!Array.isArray(myDemoKv[name])) {\n myDemoKv[name] = [];\n }\n\n myDemoKv[name].push({\n soucre: require('@pkg/' + k),\n title: arr.pop()?.replace(/\\.mdx$/, ''),\n });\n });\n}\n\nlet list: RouterProps[] = [];\n\ntry {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n list = require('@/router').default;\n} catch (error) {\n // eslint-disable-next-line no-console\n console.info('自定义路由请在 router 目录下新建 index.ts, 类型: RouterProps[]', error);\n}\nconst predixKey = (path?: string, prev?: string) =>\n // eslint-disable-next-line no-undefined\n [prev === '*' && path !== '*' ? undefined : prev, path].filter(Boolean).join('/');\n\nconst models = require.context('@/pages/', true, /\\.(t|j)sx$/, 'lazy');\n\nconst pathToTree = (input: string[]) => {\n const root: RouterProps[] = [];\n\n for (let i = 0; i < input.length; i++) {\n const chain = input[i].split('/').slice(0, -1);\n let curr = root;\n\n for (let j = 0; j < chain.length; j++) {\n let pathRule = chain[j];\n\n if (pathRule === '') continue;\n if (pathRule === '.') pathRule = '*';\n const lastHierarchy = curr;\n\n // 遍历root是否已有该层级\n if (Array.isArray(curr)) {\n for (let k = 0; k < curr.length; k++) {\n if (curr[k].path === pathRule) {\n curr = curr[k].children as RouterProps[];\n break;\n }\n }\n }\n\n if (lastHierarchy === curr) {\n let key: string = j === chain.length - 1 ? input[i] : chain.slice(0, j + 1).join('/') + '/';\n\n // 截取最后一个 / 前面的数据\n key = key.substring(2, key.lastIndexOf('/'));\n\n const node: RouterProps = {\n key: key,\n path: pathRule,\n i18n: 'route-' + key,\n children: [],\n alive: false,\n element: lazyImport(key) as unknown as ReactNode,\n hideMenu: key.includes(':'),\n props: { path: key },\n };\n\n // 文件,最后一个字符不是\"/“符号\n // if (j === chain.length - 1) delete node.children;\n if (Array.isArray(curr)) curr.push(node);\n curr = node.children as RouterProps[];\n }\n }\n }\n\n return root;\n};\nconst routers: RouterProps[] = pathToTree(\n models.keys().map((item: string) => item.replace(/\\$/g, ':'))\n);\n\nfunction merge(source: RouterProps[], child: RouterProps, prev?: string) {\n const _ = source.find((item) => item.path === child.path);\n\n if (!_) {\n source.push(child);\n } else {\n // 处理key\n _.key = predixKey(_.path, prev);\n if (typeof _.i18n === 'undefined') {\n _.i18n = 'route-' + _.key;\n }\n if (typeof _.alive === 'undefined') {\n _.alive = false;\n }\n if (typeof _.element === 'undefined' && child.element) {\n _.element = child.element;\n _.props = child.props;\n }\n if (typeof _.hideMenu === 'undefined') {\n _.hideMenu = _.path === '*' ? true : _.key.includes(':');\n }\n\n Object.assign(_, {\n ...child,\n ..._,\n });\n if (child.children) {\n if (!_.children && Array.isArray(child.children)) {\n _.children = child.children;\n }\n child.children?.forEach((childData) => {\n merge(_?.children as RouterProps[], childData, _?.key);\n });\n }\n }\n}\nconst findLogin = (rs: RouterProps[] = [], onlyLogin: boolean, prevKey?: string): RouterProps[] => {\n return rs\n .map((e) => {\n const _ = { ...e };\n\n if (typeof _.key === 'undefined') {\n _.key = predixKey(e.path, prevKey);\n }\n if (typeof _.i18n === 'undefined') {\n _.i18n = 'route-' + _.key;\n }\n if (typeof _.alive === 'undefined') {\n _.alive = false;\n }\n if (_.path === '*' && typeof _.hideMenu === 'undefined') {\n _.hideMenu = true;\n }\n if (Array.isArray(_.children)) {\n // eslint-disable-next-line no-undefined\n _.children = _.children.length ? findLogin(_.children, onlyLogin, _.key) : undefined;\n }\n if (!_.element) {\n _.element = lazyImport(_.key) as unknown as ReactNode;\n _.props = { path: _.key };\n }\n return !!_.onlyLogin === onlyLogin && !_.root ? null : _;\n })\n .filter(Boolean) as RouterProps[];\n};\nconst _router: RouterProps[] = [...list];\n\nrouters.forEach((item: RouterProps) => merge(_router, item));\n\n/* 登录前注册的路由 */\nexport const onlyLoginRouter = findLogin(_router, false);\n/* 登录后注册的路由 */\nexport const router = findLogin(_router, true);\n\nexport const matchUtil = (pathname: string) => {\n let p: RouterProps = { key: '' };\n const findPath = (rs: RouterProps[]): void => {\n rs.forEach((item) => {\n if (item.path && item.path !== '*' && item.key) {\n try {\n if (pathToRegexp(item.key).exec(pathname.substring(1) as string)) {\n p = item;\n return;\n }\n // eslint-disable-next-line no-empty\n } catch (error) {}\n }\n if (Array.isArray(item.children)) findPath(item.children);\n });\n };\n\n findPath(router);\n return p;\n};\n"],"names":["pathToRegexp","createElement","lazy","lazyImport","filePath","replace","myPkgs","myDemoKv","APPTYPE","models","allDemo","require","context","Code","default","Box","Snapshot","mdxComponents","error","pkgs","keys","forEach","item","key","substring","split","slice","join","basic","Child","heading","p","level","role","push","path","element","props","components","h1","h2","h3","h4","h5","h6","pre","c","className","lang","e","arr","k","name","Array","isArray","soucre","title","pop","list","console","info","predixKey","prev","undefined","filter","Boolean","pathToTree","input","root","i","length","chain","curr","j","pathRule","lastHierarchy","children","lastIndexOf","node","i18n","alive","hideMenu","includes","routers","map","merge","source","child","_","find","Object","assign","childData","findLogin","rs","onlyLogin","prevKey","_router","onlyLoginRouter","router","matchUtil","pathname","findPath","exec"],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ @keyframes avatar-in {
2
+ 0% {
3
+ transform: scale(30);
4
+ }
5
+
6
+ 20% {
7
+ transform: scale(30);
8
+ }
9
+
10
+ 100% {
11
+ transform: scale(1);
12
+ }
13
+ }
14
+
15
+ @keyframes route-in {
16
+ from {
17
+ transform: translate3d(0, 16px, 0);
18
+ opacity: 0;
19
+ }
20
+
21
+ to {
22
+ transform: translate3d(0, 0, 0);
23
+ opacity: 1;
24
+ }
25
+ }
26
+
27
+ @keyframes route-out {
28
+ from {
29
+ transform: translate3d(0, 0, 0);
30
+ opacity: 1;
31
+ }
32
+
33
+ to {
34
+ z-index: -1;
35
+ transform: translate3d(0, 1rem, 0);
36
+ opacity: 0;
37
+ }
38
+ }
39
+
40
+ @keyframes fade-in {
41
+ from {
42
+ opacity: 0;
43
+ }
44
+
45
+ to {
46
+ opacity: 1;
47
+ }
48
+ }
49
+
50
+ @keyframes fade-out {
51
+ from {
52
+ opacity: 1;
53
+ }
54
+
55
+ to {
56
+ opacity: 0;
57
+ }
58
+ }
@@ -1,17 +1,50 @@
1
- html {
2
- line-height: 1.15;
3
- /* stylelint-disable-next-line property-no-vendor-prefix */
4
- -webkit-text-size-adjust: 100%;
5
- }
1
+ @import url('tailwindcss/base');
2
+ @import url('tailwindcss/components');
3
+ @import url('tailwindcss/utilities');
4
+ @import url('./animation.css');
5
+ @import url('./variables.css');
6
6
 
7
+ html,
7
8
  body {
9
+ width: 100vw;
10
+ height: 100vh;
11
+ padding: 0;
12
+ overflow: hidden;
8
13
  margin: 0;
14
+ color: var(--text-color);
15
+ font-size: var(--font-size-base);
16
+ font-family: var(--font-family);
17
+ line-height: 1.8;
18
+ background-color: var(--body-background);
19
+ transition-duration: var(--transition-duration);
20
+ transition-property: background-color, color;
21
+ transition-timing-function: var(--transition-timing-function);
22
+ }
23
+
24
+ #root {
25
+ display: flex;
26
+ flex-direction: column;
27
+ width: 100%;
28
+ height: 100%;
29
+ -webkit-overflow-scrolling: touch;
9
30
  }
10
31
 
11
32
  main {
12
33
  display: block;
13
34
  }
14
35
 
36
+ #root > main {
37
+ flex: 1;
38
+ width: 100%;
39
+ overflow-y: auto;
40
+ animation: route-in var(--transition-duration);
41
+ }
42
+
43
+ input,
44
+ textarea {
45
+ caret-color: plum;
46
+ }
47
+
15
48
  h1 {
16
49
  font-size: 2em;
17
50
  margin: 0.67em 0;
@@ -78,7 +111,6 @@ img {
78
111
 
79
112
  img,
80
113
  button {
81
- /* 消除锯齿 */
82
114
  outline: 1px solid transparent;
83
115
  }
84
116
 
@@ -107,8 +139,7 @@ button,
107
139
  [type='button'],
108
140
  [type='reset'],
109
141
  [type='submit'] {
110
- /* stylelint-disable-next-line property-no-vendor-prefix */
111
- -webkit-appearance: button;
142
+ appearance: button;
112
143
  }
113
144
 
114
145
  button::-moz-focus-inner,
@@ -123,7 +154,7 @@ button:-moz-focusring,
123
154
  [type='button']:-moz-focusring,
124
155
  [type='reset']:-moz-focusring,
125
156
  [type='submit']:-moz-focusring {
126
- outline: 1px dotted ButtonText;
157
+ outline: 1px dotted var(--primary-color-outline);
127
158
  }
128
159
 
129
160
  fieldset {
@@ -147,6 +178,22 @@ textarea {
147
178
  overflow: auto;
148
179
  }
149
180
 
181
+ details {
182
+ display: block;
183
+ }
184
+
185
+ summary {
186
+ display: list-item;
187
+ }
188
+
189
+ template {
190
+ display: none;
191
+ }
192
+
193
+ [hidden] {
194
+ display: none;
195
+ }
196
+
150
197
  [type='checkbox'],
151
198
  [type='radio'] {
152
199
  box-sizing: border-box;
@@ -159,34 +206,58 @@ textarea {
159
206
  }
160
207
 
161
208
  [type='search'] {
162
- /* stylelint-disable-next-line property-no-vendor-prefix */
163
- -webkit-appearance: textfield;
209
+ appearance: textfield;
164
210
  outline-offset: -2px;
165
211
  }
166
212
 
167
213
  [type='search']::-webkit-search-decoration {
168
- /* stylelint-disable-next-line property-no-vendor-prefix */
169
- -webkit-appearance: none;
214
+ appearance: none;
170
215
  }
171
216
 
172
217
  ::-webkit-file-upload-button {
173
- /* stylelint-disable-next-line property-no-vendor-prefix */
174
- -webkit-appearance: button;
218
+ appearance: button;
175
219
  font: inherit;
176
220
  }
177
221
 
178
- details {
179
- display: block;
222
+ :-webkit-autofill,
223
+ :-webkit-autofill:hover,
224
+ :-webkit-autofill:focus {
225
+ font-weight: 400;
226
+ border: none;
227
+ border-radius: 5px;
228
+ box-shadow: 0 0 0 1000px transparent inset;
229
+ transition: background-color var(--transition-duration) var(--transition-timing-function);
230
+ -webkit-text-fill-color: var(--text-color);
231
+ caret-color: transparent;
180
232
  }
181
233
 
182
- summary {
183
- display: list-item;
234
+ ::-webkit-scrollbar {
235
+ width: 4px;
236
+ height: 4px;
237
+ opacity: 0;
184
238
  }
185
239
 
186
- template {
187
- display: none;
240
+ ::-webkit-scrollbar-track {
241
+ background-color: transparent;
188
242
  }
189
243
 
190
- [hidden] {
244
+ ::-webkit-scrollbar-thumb {
245
+ background-color: transparent;
246
+ border-radius: 5px;
247
+ }
248
+
249
+ :hover::-webkit-scrollbar-thumb {
250
+ background-color: rgba(78, 78, 78, 0.15);
251
+ }
252
+
253
+ ::-webkit-scrollbar-thumb:hover {
254
+ background-color: rgba(176, 139, 227, 0.5);
255
+ }
256
+
257
+ ::-webkit-scrollbar-thumb:active {
258
+ background-color: rgba(247, 138, 224, 0.5);
259
+ }
260
+
261
+ ::-webkit-scrollbar-button {
191
262
  display: none;
192
263
  }
@@ -0,0 +1,40 @@
1
+ :root {
2
+ --text-shadow-color: rgba(0, 0, 0, 0.1);
3
+ --font-size-base: 14px;
4
+ --border-color-base: #d9d9d9;
5
+ --border-radius-base: 8px;
6
+ --body-background: #f8f8f8;
7
+ --component-background: rgba(255, 255, 255, 0.8);
8
+ --table-header-bg: rgba(0, 0, 0, 0.02);
9
+ --text-color: rgba(0, 0, 0, 0.65);
10
+ --text-color-secondary: rgba(0, 0, 0, 0.45);
11
+ --heading-color: rgba(0, 0, 0, 0.85);
12
+ --text-selection-bg: var(--primary-color-deprecated-bg);
13
+ --box-shadow-small: 0 0 12px rgba(0, 0, 0, 0.1);
14
+ --box-shadow-base: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08),
15
+ 0 9px 28px 8px rgba(0, 0, 0, 0.05);
16
+ --font-family: -apple-system, 'BlinkMacSystemFont', 'Segoe UI', 'Roboto', 'Helvetica Neue', 'Arial',
17
+ 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
18
+ 'Noto Color Emoji', 'Helvetica', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans';
19
+ --transition-duration: 0.3s;
20
+ --transition-timing-function: cubic-bezier(0.94, -0.1, 0.1, 1.2);
21
+ --antd-wave-shadow-color: var(--primary-color-outline);
22
+ --disable-color: rgba(0, 0, 0, 0.25);
23
+ --btn-disable-bg: var(--disable-color);
24
+ --btn-disable-border: var(--disable-color);
25
+ --menu-dark-item-active-bg: #0e3ab3;
26
+ }
27
+
28
+ [data-theme='dark'] {
29
+ --text-selection-bg: var(--primary-color-deprecated-bg);
30
+ --text-color-secondary: rgba(255, 255, 255, 0.25);
31
+ --text-shadow-color: rgba(255, 255, 255, 0.1);
32
+ --header-shadow: rgba(255, 255, 255, 0.05);
33
+ --body-background: #000;
34
+ --component-background: rgba(20, 20, 20, 0.8);
35
+ --header-bg: rgba(20, 20, 20, 0.9);
36
+ --text-color: #ffffffd9;
37
+ --border-color-base: #303030;
38
+ --heading-color: rgba(255, 255, 255, 0.85);
39
+ --disabled-color: rgba(255, 255, 255, 0.3);
40
+ }
@@ -1,5 +1,4 @@
1
- export declare const translatFunction: (func: string, val?: number | string | any) => string;
2
- export declare type WatermarkParamsType = {
1
+ export type WatermarkParamsType = {
3
2
  text: string;
4
3
  x?: number;
5
4
  y?: number;
@@ -1,2 +1,2 @@
1
- export var translatFunction=function(func,val){try{if(typeof val!=="undefined"){return eval(func)}}catch(error){console.warn(error)}return func};export var watermark=function(param){var text=param.text,_param_x=param.x,x=_param_x===void 0?19.5:_param_x,_param_y=param.y,y=_param_y===void 0?55:_param_y,_param_width=param.width,width=_param_width===void 0?100:_param_width,_param_height=param.height,height=_param_height===void 0?100:_param_height,_param_fontSize=param.fontSize,fontSize=_param_fontSize===void 0?14:_param_fontSize,_param_angle=param.angle,angle=_param_angle===void 0?-45:_param_angle,_param_opacity=param.opacity,opacity=_param_opacity===void 0?.1:_param_opacity,_param_color=param.color,color=_param_color===void 0?"#000":_param_color;var svgStr='<svg xmlns="http://www.w3.org/2000/svg" width="'+width+'" height="'+height+'"><g><title>Layer 1</title><text x="'+x+'" y="'+y+'" textAnchor="middle" dominantBaseline="middle" stroke-opacity="'+opacity+'" stroke="'+color+'" fill="none" transform="rotate('+angle+" "+width/2+","+height/2+')" font-size="'+fontSize+'" font-family="-apple-system, BlinkMacSystemFont, '+"'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji', 'Helvetica', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans'"+'">'+text+"</text></g></svg>";return"data:image/svg+xml;base64,"+window.btoa(unescape(encodeURIComponent(svgStr)))};
1
+ export var watermark=function(param){var text=param.text,_param_x=param.x,x=_param_x===void 0?19.5:_param_x,_param_y=param.y,y=_param_y===void 0?55:_param_y,_param_width=param.width,width=_param_width===void 0?100:_param_width,_param_height=param.height,height=_param_height===void 0?100:_param_height,_param_fontSize=param.fontSize,fontSize=_param_fontSize===void 0?14:_param_fontSize,_param_angle=param.angle,angle=_param_angle===void 0?-45:_param_angle,_param_opacity=param.opacity,opacity=_param_opacity===void 0?.1:_param_opacity,_param_color=param.color,color=_param_color===void 0?"#000":_param_color;var svgStr='<svg xmlns="http://www.w3.org/2000/svg" width="'+width+'" height="'+height+'"><g><title>Layer 1</title><text x="'+x+'" y="'+y+'" textAnchor="middle" dominantBaseline="middle" stroke-opacity="'+opacity+'" stroke="'+color+'" fill="none" transform="rotate('+angle+" "+width/2+","+height/2+')" font-size="'+fontSize+'" font-family="-apple-system, BlinkMacSystemFont, '+"'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji', 'Helvetica', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans'"+'">'+text+"</text></g></svg>";return"data:image/svg+xml;base64,"+window.btoa(decodeURIComponent(encodeURIComponent(svgStr)))};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/index.ts"],"sourcesContent":["export const translatFunction = (func: string, val?: number | string | any): string => {\n try {\n if (typeof val !== 'undefined') {\n return eval(func);\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.warn(error);\n }\n return func;\n};\n\nexport type WatermarkParamsType = {\n text: string;\n x?: number;\n y?: number;\n width?: number;\n height?: number;\n fontSize?: number;\n angle?: number;\n opacity?: number;\n color?: string;\n};\n\nexport const watermark = ({\n text,\n x = 19.5,\n y = 55,\n width = 100,\n height = 100,\n fontSize = 14,\n angle = -45,\n opacity = 0.1,\n color = '#000',\n}: WatermarkParamsType): string => {\n const svgStr =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"' +\n width +\n '\" height=\"' +\n height +\n '\"><g><title>Layer 1</title><text x=\"' +\n x +\n '\" y=\"' +\n y +\n '\" textAnchor=\"middle\" dominantBaseline=\"middle\" stroke-opacity=\"' +\n opacity +\n '\" stroke=\"' +\n color +\n '\" fill=\"none\" transform=\"rotate(' +\n angle +\n ' ' +\n width / 2 +\n ',' +\n height / 2 +\n ')\" font-size=\"' +\n fontSize +\n '\" font-family=\"-apple-system, BlinkMacSystemFont, ' +\n \"'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji', 'Helvetica', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans'\" +\n '\">' +\n text +\n '</text></g></svg>';\n\n return 'data:image/svg+xml;base64,' + window.btoa(unescape(encodeURIComponent(svgStr)));\n};\n"],"names":["translatFunction","func","val","eval","error","console","warn","watermark","text","x","y","width","height","fontSize","angle","opacity","color","svgStr","window","btoa","unescape","encodeURIComponent"],"mappings":"AAAA,OAAO,IAAMA,iBAAmB,SAACC,KAAcC,IAAwC,CACrF,GAAI,CACF,GAAI,OAAOA,MAAQ,YAAa,CAC9B,OAAOC,KAAKF,KACd,CAAC,AACH,CAAE,MAAOG,MAAO,CAEdC,QAAQC,IAAI,CAACF,MACf,CACA,OAAOH,IACT,CAAE,AAcF,QAAO,IAAMM,UAAY,eAUU,KATjCC,WAAAA,oBACAC,EAAAA,oBAAI,6BACJC,EAAAA,oBAAI,+BACJC,MAAAA,4BAAQ,qCACRC,OAAAA,8BAAS,wCACTC,SAAAA,kCAAW,sCACXC,MAAAA,4BAAQ,CAAC,qCACTC,QAAAA,gCAAU,qCACVC,MAAAA,4BAAQ,oBAER,IAAMC,OACJ,kDACAN,MACA,aACAC,OACA,uCACAH,EACA,QACAC,EACA,mEACAK,QACA,aACAC,MACA,mCACAF,MACA,IACAH,MAAQ,EACR,IACAC,OAAS,EACT,iBACAC,SACA,qDACA,8NACA,KACAL,KACA,oBAEF,MAAO,6BAA+BU,OAAOC,IAAI,CAACC,SAASC,mBAAmBJ,SAChF,CAAE"}
1
+ {"version":3,"sources":["../../src/utils/index.ts"],"sourcesContent":["// export const translatFunction = (func: string, val?: number | string | any): string => {\n// try {\n// if (typeof val !== 'undefined') {\n// return eval(func);\n// }\n// } catch (error) {\n// // eslint-disable-next-line no-console\n// console.warn(error);\n// }\n// return func;\n// };\n\nexport type WatermarkParamsType = {\n text: string;\n x?: number;\n y?: number;\n width?: number;\n height?: number;\n fontSize?: number;\n angle?: number;\n opacity?: number;\n color?: string;\n};\n\nexport const watermark = ({\n text,\n x = 19.5,\n y = 55,\n width = 100,\n height = 100,\n fontSize = 14,\n angle = -45,\n opacity = 0.1,\n color = '#000',\n}: WatermarkParamsType): string => {\n const svgStr =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"' +\n width +\n '\" height=\"' +\n height +\n '\"><g><title>Layer 1</title><text x=\"' +\n x +\n '\" y=\"' +\n y +\n '\" textAnchor=\"middle\" dominantBaseline=\"middle\" stroke-opacity=\"' +\n opacity +\n '\" stroke=\"' +\n color +\n '\" fill=\"none\" transform=\"rotate(' +\n angle +\n ' ' +\n width / 2 +\n ',' +\n height / 2 +\n ')\" font-size=\"' +\n fontSize +\n '\" font-family=\"-apple-system, BlinkMacSystemFont, ' +\n \"'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji', 'Helvetica', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans'\" +\n '\">' +\n text +\n '</text></g></svg>';\n\n return 'data:image/svg+xml;base64,' + window.btoa(decodeURIComponent(encodeURIComponent(svgStr)));\n};\n"],"names":["watermark","text","x","y","width","height","fontSize","angle","opacity","color","svgStr","window","btoa","decodeURIComponent","encodeURIComponent"],"mappings":"AAwBA,OAAO,IAAMA,UAAY,eAUU,KATjCC,WAAAA,oBACAC,EAAAA,oBAAI,6BACJC,EAAAA,oBAAI,+BACJC,MAAAA,4BAAQ,qCACRC,OAAAA,8BAAS,wCACTC,SAAAA,kCAAW,sCACXC,MAAAA,4BAAQ,CAAC,qCACTC,QAAAA,gCAAU,qCACVC,MAAAA,4BAAQ,oBAER,IAAMC,OACJ,kDACAN,MACA,aACAC,OACA,uCACAH,EACA,QACAC,EACA,mEACAK,QACA,aACAC,MACA,mCACAF,MACA,IACAH,MAAQ,EACR,IACAC,OAAS,EACT,iBACAC,SACA,qDACA,8NACA,KACAL,KACA,oBAEF,MAAO,6BAA+BU,OAAOC,IAAI,CAACC,mBAAmBC,mBAAmBJ,SAC1F,CAAE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moneko/core",
3
- "version": "2.0.0-beta.8",
3
+ "version": "2.0.1",
4
4
  "description": "core",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -15,22 +15,20 @@
15
15
  "author": "moneko",
16
16
  "license": "MIT",
17
17
  "dependencies": {
18
- "@emotion/react": "11.10.5",
18
+ "@emotion/css": "11.10.5",
19
19
  "@mapbox/rehype-prism": "0.8.0",
20
- "@mdx-js/loader": "2.1.5",
21
- "@moneko/common": "1.0.5",
20
+ "@mdx-js/loader": "2.2.1",
21
+ "@moneko/common": "1.0.7",
22
22
  "@parcel/css": "1.14.0",
23
- "@pmmmwh/react-refresh-webpack-plugin": "0.5.8",
23
+ "@pmmmwh/react-refresh-webpack-plugin": "0.5.10",
24
24
  "@soda/friendly-errors-webpack-plugin": "1.8.1",
25
- "@swc/cli": "0.1.57",
26
- "@swc/core": "1.3.21",
25
+ "@swc/core": "1.3.34",
27
26
  "@swc/helpers": "0.4.14",
28
- "@swc/plugin-emotion": "2.5.21",
29
- "@swc/plugin-transform-imports": "1.5.21",
27
+ "@swc/plugin-transform-imports": "1.5.41",
30
28
  "add-asset-html-webpack-plugin": "5.0.2",
31
- "core-js": "3.26.0",
29
+ "core-js": "3.27.2",
32
30
  "cross-env": "7.0.3",
33
- "css-loader": "6.7.2",
31
+ "css-loader": "6.7.3",
34
32
  "css-minimizer-webpack-plugin": "4.2.2",
35
33
  "css-unicode-loader": "1.0.3",
36
34
  "external-remotes-plugin": "1.0.0",
@@ -44,7 +42,7 @@
44
42
  "mini-svg-data-uri": "1.4.4",
45
43
  "path-to-regexp": "6.2.1",
46
44
  "portfinder": "1.0.32",
47
- "react-activation": "0.12.0",
45
+ "react-activation": "0.12.2",
48
46
  "react-refresh": "0.14.0",
49
47
  "react-refresh-typescript": "2.0.7",
50
48
  "react-router": "6.4.2",
@@ -54,19 +52,21 @@
54
52
  "style-loader": "3.3.1",
55
53
  "style-resources-loader": "1.5.0",
56
54
  "swc-loader": "0.2.3",
57
- "tinycolor2": "1.4.2",
55
+ "tinycolor2": "1.6.0",
58
56
  "ts-import-plugin": "2.0.0",
59
- "ts-loader": "9.4.1",
60
- "typescript": "4.8.4",
57
+ "ts-loader": "9.4.2",
58
+ "typescript": "4.9.5",
61
59
  "webfontloader": "1.6.28",
62
- "webpack": "5.74.0",
63
- "webpack-cli": "4.10.0",
60
+ "webpack": "5.75.0",
61
+ "webpack-bundle-analyzer": "4.7.0",
62
+ "webpack-cli": "5.0.1",
64
63
  "webpack-dev-server": "4.11.1",
65
64
  "webpack-merge": "5.8.0",
66
65
  "webpackbar": "5.0.2",
67
66
  "xml2js": "0.4.23"
68
67
  },
69
68
  "devDependencies": {
69
+ "@swc/cli": "0.1.61",
70
70
  "@types/mini-css-extract-plugin": "^2.5.1",
71
71
  "@types/react": "^18.0.20",
72
72
  "@types/react-dom": "^18.0.6",
@@ -74,13 +74,13 @@
74
74
  "@types/shelljs": "^0.8.11",
75
75
  "@types/tinycolor2": "^1.4.3",
76
76
  "@types/webfontloader": "^1.6.34",
77
+ "@types/webpack-bundle-analyzer": "^4.6.0",
77
78
  "@types/webpack-env": "^1.18.0",
78
- "@types/xml2js": "^0.4.11",
79
- "antd": "^4.20.2",
80
- "eslint-config-neko": "^1.0.8",
79
+ "antd": "4.20.2",
80
+ "eslint-config-neko": "^1.0.15",
81
81
  "react": "^18.2.0",
82
82
  "shelljs": "^0.8.5",
83
- "stylelint-config-moneko": "^1.0.0"
83
+ "stylelint-config-moneko": "^1.0.4"
84
84
  },
85
85
  "files": [
86
86
  "lib",
@@ -1,25 +1,32 @@
1
1
  /* eslint-disable no-unused-vars */
2
2
  import type { Options } from 'ts-import-plugin';
3
- import type { RuleSetRule, WebpackPluginInstance, Configuration, CleanPlugin } from 'webpack';
3
+ import type { RuleSetRule, WebpackPluginInstance, Configuration } from 'webpack';
4
4
  import type { ProxyArray, ProxyConfigArray, ProxyConfigMap } from 'webpack-dev-server';
5
5
  import type { JsMinifyOptions } from '@swc/core';
6
6
  import type { MinifyOptions } from 'terser';
7
7
  import { Options as AssetHtmlOptions } from 'add-asset-html-webpack-plugin';
8
8
  import { Options as HtmlWebpackPluginOptions } from 'html-webpack-plugin';
9
+ import type { WebpackConfiguration } from 'webpack-dev-server';
10
+ import type { Config as SwcConfig } from '@swc/core';
11
+ import { BundleAnalyzerPlugin } from 'webpack-bundle-analyzer';
9
12
 
10
13
  export type MinifierType = 'swc' | 'terser';
11
- export declare type AppType = 'mobile' | 'site' | 'back-stage' | 'single-spa' | 'library';
14
+ export declare type AppType =
15
+ | 'single-component'
16
+ | 'mobile'
17
+ | 'site'
18
+ | 'back-stage'
19
+ | 'single-spa'
20
+ | 'library';
12
21
  export type TerserOptions = MinifyOptions;
13
22
  export type SwcOptions = JsMinifyOptions;
14
23
  export declare type ConfigType<T = 'tsc'> = {
15
- clean: boolean | CleanPlugin['options'];
16
24
  /** 渲染模式 */
17
25
  mode: 'ssr' | 'csr';
18
26
  /** 编译器 */
19
27
  compiler: 'tsc' | 'swc';
20
28
  /** swc 配置项,仅当编译器为 swc 时有效 */
21
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
22
- swcrc?: Record<string, any> | ((isDev: boolean) => Record<string, any>);
29
+ swcrc?: SwcConfig | ((isDev: boolean) => SwcConfig);
23
30
  /**
24
31
  * 自定义entry
25
32
  * 当你需要添加一些polyfill函数时可在这里添加
@@ -70,11 +77,6 @@ export declare type ConfigType<T = 'tsc'> = {
70
77
  fallbackCompPath?: string | null;
71
78
  /** less 全局变量 */
72
79
  modifyVars: Record<string, string>;
73
- /** antd 主题配置 */
74
- antdThemeVariables: {
75
- compact?: boolean;
76
- dark?: boolean;
77
- };
78
80
  /** 类名前缀 */
79
81
  prefixCls?: string;
80
82
  /** 左侧菜单栏, 不需要时设置为 false, 仅 type: back-stage 时有效 */
@@ -86,6 +88,23 @@ export declare type ConfigType<T = 'tsc'> = {
86
88
  };
87
89
  /** 自定义 webpack module rules */
88
90
  moduleRules: RuleSetRule[];
91
+ /** 解析js/ts前置的loader
92
+ * @example
93
+ * ```js
94
+ * const conf: PartialConfigType = {
95
+ * compiler: 'tsc',
96
+ * prefixJsLoader: [
97
+ * {
98
+ * loader: 'babel-loader',
99
+ * options: {
100
+ * presets: ['solid'],
101
+ * },
102
+ * },
103
+ * ],
104
+ * };
105
+ * ```
106
+ * */
107
+ prefixJsLoader: RuleSetRule['use'][];
89
108
  /** node_modules中, 需要开启 cssModules 的模块 */
90
109
  cssModules: string[];
91
110
  /** 按需引入 */
@@ -131,7 +150,7 @@ export declare type ConfigType<T = 'tsc'> = {
131
150
  /** 通过Web字体加载加载的字体 */
132
151
  webFontLoader: string[];
133
152
  /** 编译输出路径 */
134
- output: string;
153
+ output?: Omit<WebpackConfiguration['output'], 'publishPath'> | string;
135
154
  /** 模块联邦 */
136
155
  moduleFederation: ModuleFederationOption[];
137
156
  /** 跳过编译的模块 */
@@ -143,6 +162,7 @@ export declare type ConfigType<T = 'tsc'> = {
143
162
  media?: string[];
144
163
  fonts?: string[];
145
164
  };
165
+ bundleAnalyzer: BundleAnalyzerPlugin.Options;
146
166
  };
147
167
  export declare interface ModuleFederationOption {
148
168
  /** 模块名称,唯一性,不能重名 */
@@ -1,2 +0,0 @@
1
- export declare let HASANTD: boolean;
2
- export declare const antdThemeVariables: {};
package/build/has-antd.js DELETED
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:all[name]})}_export(exports,{HASANTD:function(){return HASANTD},antdThemeVariables:function(){return antdThemeVariables}});var _fs=_interopRequireDefault(require("fs"));var _path=_interopRequireDefault(require("path"));var _processEnv=require("./process-env");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var HASANTD=false;var antdThemeVariables={};try{var antdPath=_path.default.join(_processEnv.PROGRAMPATH,"./node_modules/antd/package.json");_fs.default.accessSync(antdPath,_fs.default.constants.R_OK);HASANTD=true}catch(error){HASANTD=false}
@@ -1,3 +0,0 @@
1
- import React from 'react';
2
- declare const Readme: React.FC<PureComponentProps>;
3
- export default Readme;
@@ -1,2 +0,0 @@
1
- function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr}function _iterableToArrayLimit(arr,i){var _i=arr==null?null:typeof Symbol!=="undefined"&&arr[Symbol.iterator]||arr["@@iterator"];if(_i==null)return;var _arr=[];var _n=true;var _d=false;var _s,_e;try{for(_i=_i.call(arr);!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i["return"]!=null)_i["return"]()}finally{if(_d)throw _e}}return _arr}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_unsupportedIterableToArray(arr,i)||_nonIterableRest()}function _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen)}import React,{useEffect,useState}from"react";import styles from"./index.less";var Readme=function(param){var path=param.path;var _useState=_slicedToArray(useState(""),2),doc=_useState[0],setDoc=_useState[1];useEffect(function(){try{var text=require("@pkg/"+path+"/README.mdx");setDoc(text.default)}catch(error){setDoc(JSON.stringify(error))}},[path]);return React.createElement("div",{className:"".concat(styles.prefixCls,"-markdown-box")},doc)};export default Readme;
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/readme/index.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport styles from './index.less';\n\nconst Readme: React.FC<PureComponentProps> = ({ path }) => {\n const [doc, setDoc] = useState<React.ReactElement | string>('');\n\n useEffect(() => {\n try {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const text = require('@pkg/' + path + '/README.mdx');\n\n setDoc(text.default);\n } catch (error) {\n setDoc(JSON.stringify(error));\n }\n }, [path]);\n\n return <div className={`${styles.prefixCls}-markdown-box`}>{doc}</div>;\n};\n\nexport default Readme;\n"],"names":["React","useEffect","useState","styles","Readme","path","doc","setDoc","text","require","default","error","JSON","stringify","div","className","prefixCls"],"mappings":"AAAA,2zCAAA,OAAOA,OAASC,SAAS,CAAEC,QAAQ,KAAQ,OAAQ,AACnD,QAAOC,WAAY,cAAe,CAElC,IAAMC,OAAuC,eAAc,KAAXC,WAAAA,KAC9C,IAAsBH,yBAAAA,SAAsC,OAArDI,IAAeJ,aAAVK,OAAUL,aAEtBD,UAAU,UAAM,CACd,GAAI,CAEF,IAAMO,KAAOC,QAAQ,QAAUJ,KAAO,eAEtCE,OAAOC,KAAKE,OAAO,CACrB,CAAE,MAAOC,MAAO,CACdJ,OAAOK,KAAKC,SAAS,CAACF,OACxB,CACF,EAAG,CAACN,KAAK,EAET,OAAO,oBAACS,OAAIC,UAAW,AAAC,GAAmB,OAAjBZ,OAAOa,SAAS,CAAC,kBAAiBV,IAC9D,CAEA,gBAAeF,MAAO"}
@@ -1,4 +0,0 @@
1
- :export {
2
- /* stylelint-disable-next-line property-no-unknown */
3
- prefixCls: @prefix-cls;
4
- }