element-plus 结构和依赖

monorepositories

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
element-plus
├── CHANGELOG.en-US.md # Changelog
├── CODE_OF_CONDUCT.md # Contributor Covenant Code of Conduct
├── CONTRIBUTING.md # How To Contribute
├── LICENSE
├── README.md
├── breakings #
├── codecov.yml # https://docs.codecov.com/docs/codecov-yaml
├── commitlint.config.js #cz-git https://cz-git.qbb.sh/zh/cli/
├── commitlint.config.ts
├── docs
├── global.d.ts
├── internal #构建eslint相关
├── package.json
├── packages # 主体代码
├── play # 使用组件实现demo
├── pnpm-lock.yaml
├── pnpm-workspace.yaml #pnpm worksapce
├── scripts
├── ssr-testing
├── tsconfig.base.json # tsconfig.*.json extends
├── tsconfig.json # https://www.typescriptlang.org/tsconfig#extends
├── tsconfig.node.json # tsconfig.json references
├── tsconfig.play.json # tsconfig.json references
├── tsconfig.vite-config.json # tsconfig.json references
├── tsconfig.vitest.json # tsconfig.json references
├── tsconfig.web.json # tsconfig.json references
├── typings # ts 声明文件
├── vitest.config.ts # Vitest测试框架
└── vitest.setup.ts # Vitest测试框架

部分 packages.json

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
{
"peerDependencies": {
"vue": "^3.2.0"
},
"dependencies": {
"@element-plus/components": "workspace:*", // workspace:https://pnpm.io/workspaces
"@element-plus/constants": "workspace:*",
"@element-plus/directives": "workspace:*",
"@element-plus/hooks": "workspace:*",
"@element-plus/icons-vue": "^2.0.6",
"@element-plus/locale": "workspace:*",
"@element-plus/test-utils": "workspace:*",
"@element-plus/theme-chalk": "workspace:*",
"@element-plus/tokens": "workspace:*",
"@element-plus/utils": "workspace:*",
"@floating-ui/dom": "^1.0.1",
"@popperjs/core": "npm:@sxzz/popperjs-es@^2.11.7", //https://popper.js.org/ TOOLTIP & POPOVER POSITIONING ENGINE
"@types/lodash": "^4.14.182", //TypeScript definitions for Lo-Dash
"@types/lodash-es": "^4.17.6",
"@vueuse/core": "^9.1.0", //Collection of essential Vue Composition Utilities for Vue 2 and 3
"async-validator": "^4.2.5",
"dayjs": "^1.11.3",
"escape-html": "^1.0.3",
"lodash": "^4.17.21",
"lodash-es": "^4.17.21",
"lodash-unified": "^1.0.2",
"memoize-one": "^6.0.0", //A memoization library which only remembers the latest invocation
"normalize-wheel-es": "^1.2.0" //Mouse wheel normalization across multiple multiple browsers.
},
"devDependencies": {
"@commitlint/cli": "^17.0.3",
"@commitlint/config-conventional": "^17.0.3",
"@element-plus/build": "workspace:^0.0.1",
"@element-plus/build-utils": "workspace:^0.0.1",
"@element-plus/eslint-config": "workspace:*",
"@esbuild-kit/cjs-loader": "^2.2.1",
"@pnpm/find-workspace-packages": "^4.0.16",
"@pnpm/logger": "^4.0.0",
"@pnpm/types": "^8.4.0",
"@types/fs-extra": "^9.0.13",
"@types/gulp": "^4.0.9",
"@types/jsdom": "^16.2.14",
"@types/node": "*",
"@types/sass": "^1.43.1",
"@vitejs/plugin-vue": "^2.3.3",
"@vitejs/plugin-vue-jsx": "^1.3.10",
"@vitest/ui": "0.16.0",
"@vue/test-utils": "^2.0.0",
"@vue/tsconfig": "^0.1.3",
"c8": "^7.11.3", // 测试覆盖
"chalk": "^5.0.1", // console style
"concurrently": "^7.2.2", // 并发执行终端命令
"consola": "^2.15.3", //控制台优雅输出记录
"csstype": "^2.6.20", //css type检查
"cz-git": "^1.3.8",
"czg": "^1.3.8",
"eslint": "^8.18.0",
"eslint-define-config": "^1.5.1",
"expect-type": "^0.13.0", //Compile-time tests for types
"fast-glob": "^3.2.11", // 返回满足通配符和条件的文件
"husky": "^8.0.1",
"jsdom": "16.4.0", //nodejs下生成dom
"lint-staged": "^13.0.3", //commit 执行lint-staged
"npm-run-all": "^4.1.5", // 并行或顺序执行npm命令
"prettier": "^2.7.1",
"puppeteer": "^17.1.3", //headless chrome
"resize-observer-polyfill": "^1.5.1",
"rimraf": "^3.0.2", //A `rm -rf` util for nodejs
"sass": "^1.53.0",
"ts-morph": "^14.0.0", //AST
"tsx": "^3.6.0",
"type-fest": "^2.14.0", //A collection of essential TypeScript types
"typescript": "^4.7.4",
"unplugin-element-plus": "^0.4.0",
"unplugin-vue-macros": "^0.11.2",
"vitest": "0.12.6",
"vue": "^3.2.37",
"vue-router": "^4.0.16",
"vue-tsc": "^0.38.2"
}
}