create-bc-app 1.1.7 → 1.1.8

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 (40) hide show
  1. package/package.json +3 -2
  2. package/template-monorepo/.eslintrc.cjs +201 -0
  3. package/template-monorepo/.vscode/settings.json +23 -0
  4. package/template-monorepo/README.md +72 -0
  5. package/template-monorepo/apps/App-A/index.html +13 -0
  6. package/template-monorepo/apps/App-A/package.json +19 -0
  7. package/template-monorepo/apps/App-A/public/group.svg +3 -0
  8. package/template-monorepo/apps/App-A/src/App.vue +8 -0
  9. package/template-monorepo/apps/App-A/src/main.ts +12 -0
  10. package/template-monorepo/apps/App-A/tsconfig.json +22 -0
  11. package/template-monorepo/apps/App-A/tsconfig.node.json +11 -0
  12. package/template-monorepo/apps/App-A/vite.config.ts +48 -0
  13. package/template-monorepo/config/build.config.ts +22 -0
  14. package/template-monorepo/config/resolve.config.ts +12 -0
  15. package/template-monorepo/index.html +13 -0
  16. package/template-monorepo/package.json +48 -46
  17. package/template-monorepo/packages/PKG-A/index.ts +3 -0
  18. package/template-monorepo/packages/PKG-A/package.json +22 -0
  19. package/template-monorepo/packages/PKG-A/src/test.ts +1 -0
  20. package/template-monorepo/packages/PKG-A/tsconfig.json +15 -0
  21. package/template-monorepo/packages/PKG-A/vite.config.ts +22 -0
  22. package/template-monorepo/packages/PKG-B/index.ts +4 -0
  23. package/template-monorepo/packages/PKG-B/package.json +25 -0
  24. package/template-monorepo/packages/PKG-B/src/test.ts +1 -0
  25. package/template-monorepo/packages/PKG-B/tsconfig.json +15 -0
  26. package/template-monorepo/packages/PKG-B/vite.config.ts +22 -0
  27. package/template-monorepo/pnpm-workspace.yaml +4 -1
  28. package/template-monorepo/tsconfig.json +47 -0
  29. package/template-monorepo/tsconfig.node.json +11 -0
  30. package/template-monorepo/vite-env.d.ts +6 -0
  31. package/template-monorepo/vite.config.ts +0 -14
  32. package/template-monorepo/.changeset/README.md +0 -8
  33. package/template-monorepo/.changeset/config.json +0 -11
  34. package/template-monorepo/.husky/pre-commit +0 -1
  35. package/template-monorepo/node_modules/.pnpm/@esbuild+win32-x64@0.21.5/node_modules/@esbuild/win32-x64/esbuild.exe +0 -0
  36. package/template-monorepo/packages/a/package.json +0 -15
  37. package/template-monorepo/packages/b/index.ts +0 -0
  38. package/template-monorepo/packages/b/package.json +0 -15
  39. package/template-monorepo/pnpm-lock.yaml +0 -4522
  40. /package/template-monorepo/{packages/a/index.ts → apps/App-A/src/style.css} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-bc-app",
3
- "version": "1.1.7",
3
+ "version": "1.1.8",
4
4
  "description": "",
5
5
  "bin": "index.js",
6
6
  "type": "module",
@@ -17,6 +17,7 @@
17
17
  "kolorist": "^1.8.0",
18
18
  "minimist": "^1.2.8",
19
19
  "prompts": "^2.4.2",
20
+ "rimraf": "^5.0.10",
20
21
  "typescript": "^5.5.4",
21
22
  "unbuild": "^2.0.0"
22
23
  },
@@ -38,4 +39,4 @@
38
39
  "engines": {
39
40
  "node": "^18.0.0"
40
41
  }
41
- }
42
+ }
@@ -0,0 +1,201 @@
1
+ /* eslint-env node */
2
+ require('@rushstack/eslint-patch/modern-module-resolution')
3
+
4
+ module.exports = {
5
+ root: true,
6
+ extends: [
7
+ 'plugin:vue/recommended',
8
+ 'plugin:vue/vue3-essential',
9
+ 'plugin:vue/vue3-strongly-recommended',
10
+ 'plugin:@typescript-eslint/recommended',
11
+ 'eslint:recommended'
12
+ ],
13
+ globals: {
14
+ 'process': true
15
+ },
16
+ parser: 'vue-eslint-parser',
17
+ parserOptions: {
18
+ ecmaVersion: 'latest',
19
+ parser: '@typescript-eslint/parser'
20
+ },
21
+ rules: {
22
+ '@typescript-eslint/no-unused-vars': 'error',
23
+ '@typescript-eslint/no-explicit-any': 'off',
24
+ '@typescript-eslint/ban-ts-comment': 'off',
25
+ 'vue/multi-word-component-names': ['off'],
26
+ 'vue/no-v-for-template-key': 'off',
27
+ 'vue/no-multiple-template-root': 'off',
28
+ 'vue/no-v-model-argument': 'off',
29
+ 'vue/max-attributes-per-line': ['error', {
30
+ 'singleline': {
31
+ 'max': 3
32
+ },
33
+ 'multiline': {
34
+ 'max': 3
35
+ }
36
+ }],
37
+ 'accessor-pairs': 2,
38
+ 'arrow-spacing': [2, {
39
+ 'before': true,
40
+ 'after': true
41
+ }],
42
+ 'block-spacing': [2, 'always'],
43
+ 'brace-style': [2, '1tbs', {
44
+ 'allowSingleLine': true
45
+ }],
46
+ 'camelcase': [2, {
47
+ 'properties': 'always'
48
+ }],
49
+ 'comma-dangle': [2, 'never'],
50
+ 'comma-spacing': [2, {
51
+ 'before': false,
52
+ 'after': true
53
+ }],
54
+ 'comma-style': [2, 'last'],
55
+ 'constructor-super': 2,
56
+ 'curly': [2, 'multi-line'],
57
+ 'dot-location': [2, 'property'],
58
+ 'eol-last': 2,
59
+ 'eqeqeq': [2, 'allow-null'],
60
+ 'generator-star-spacing': [2, {
61
+ 'before': true,
62
+ 'after': true
63
+ }],
64
+ 'handle-callback-err': [2, '^(err|error)$'],
65
+ 'indent': [1, 2, {
66
+ 'SwitchCase': 1
67
+ }],
68
+ 'jsx-quotes': [2, 'prefer-single'],
69
+ 'key-spacing': [2, {
70
+ 'beforeColon': false,
71
+ 'afterColon': true
72
+ }],
73
+ 'keyword-spacing': [2, {
74
+ 'before': true,
75
+ 'after': true
76
+ }],
77
+ 'new-cap': [2, {
78
+ 'newIsCap': true,
79
+ 'capIsNew': false
80
+ }],
81
+ 'new-parens': 2,
82
+ 'no-array-constructor': 2,
83
+ 'no-caller': 2,
84
+ 'no-console': process.env.NODE_ENV === 'production' ? 2 : 0,
85
+ 'no-class-assign': 2,
86
+ 'no-cond-assign': 2,
87
+ 'no-const-assign': 2,
88
+ 'no-control-regex': 0,
89
+ 'no-delete-var': 2,
90
+ 'no-dupe-args': 2,
91
+ 'no-dupe-class-members': 2,
92
+ 'no-dupe-keys': 2,
93
+ 'no-duplicate-case': 2,
94
+ 'no-empty-character-class': 2,
95
+ 'no-empty-pattern': 2,
96
+ 'no-eval': 2,
97
+ 'no-ex-assign': 2,
98
+ 'no-extend-native': 2,
99
+ 'no-extra-bind': 2,
100
+ 'no-extra-boolean-cast': 2,
101
+ 'no-extra-parens': [2, 'functions'],
102
+ 'no-fallthrough': 2,
103
+ 'no-floating-decimal': 2,
104
+ 'no-func-assign': 2,
105
+ 'no-implied-eval': 2,
106
+ 'no-inner-declarations': [2, 'functions'],
107
+ 'no-invalid-regexp': 2,
108
+ 'no-irregular-whitespace': 2,
109
+ 'no-iterator': 2,
110
+ 'no-label-var': 2,
111
+ 'no-labels': [2, {
112
+ 'allowLoop': false,
113
+ 'allowSwitch': false
114
+ }],
115
+ 'no-lone-blocks': 2,
116
+ 'no-mixed-spaces-and-tabs': 2,
117
+ 'no-multi-spaces': 2,
118
+ 'no-multi-str': 2,
119
+ 'no-multiple-empty-lines': [2, {
120
+ 'max': 1
121
+ }],
122
+ 'no-native-reassign': 2,
123
+ 'no-negated-in-lhs': 2,
124
+ 'no-new-object': 2,
125
+ 'no-new-require': 2,
126
+ 'no-new-symbol': 2,
127
+ 'no-new-wrappers': 2,
128
+ 'no-obj-calls': 2,
129
+ 'no-octal': 2,
130
+ 'no-octal-escape': 2,
131
+ 'no-path-concat': 2,
132
+ 'no-proto': 2,
133
+ 'no-redeclare': 2,
134
+ 'no-regex-spaces': 2,
135
+ 'no-return-assign': [2, 'except-parens'],
136
+ 'no-self-assign': 2,
137
+ 'no-self-compare': 2,
138
+ 'no-sequences': 2,
139
+ 'no-shadow-restricted-names': 2,
140
+ 'no-spaced-func': 2,
141
+ 'no-sparse-arrays': 2,
142
+ 'no-this-before-super': 2,
143
+ 'no-throw-literal': 2,
144
+ 'no-trailing-spaces': 2,
145
+ 'no-undef': 2,
146
+ 'no-undef-init': 2,
147
+ 'no-unexpected-multiline': 2,
148
+ 'no-unmodified-loop-condition': 2,
149
+ 'no-unneeded-ternary': [2, {
150
+ 'defaultAssignment': false
151
+ }],
152
+ 'no-unreachable': 2,
153
+ 'no-unsafe-finally': 2,
154
+ 'no-unused-vars': 'off',
155
+ 'no-useless-call': 2,
156
+ 'no-useless-computed-key': 2,
157
+ 'no-useless-constructor': 2,
158
+ 'no-useless-escape': 1,
159
+ 'no-whitespace-before-property': 2,
160
+ 'no-with': 2,
161
+ 'one-var': [2, {
162
+ 'initialized': 'never'
163
+ }],
164
+ 'operator-linebreak': [2, 'after', {
165
+ 'overrides': {
166
+ '?': 'before',
167
+ ':': 'before'
168
+ }
169
+ }],
170
+ 'padded-blocks': [2, 'never'],
171
+ 'quotes': [1, 'single', {
172
+ 'avoidEscape': true,
173
+ 'allowTemplateLiterals': true
174
+ }],
175
+ 'semi': [2, 'never'],
176
+ 'semi-spacing': [2, {
177
+ 'before': false,
178
+ 'after': true
179
+ }],
180
+ 'space-before-blocks': [2, 'always'],
181
+ 'space-in-parens': [2, 'never'],
182
+ 'space-infix-ops': 2,
183
+ 'space-unary-ops': [2, {
184
+ 'words': true,
185
+ 'nonwords': false
186
+ }],
187
+ 'spaced-comment': ['error', 'always', { 'markers': ['/'] }],
188
+ 'template-curly-spacing': [2, 'never'],
189
+ 'use-isnan': 2,
190
+ 'valid-typeof': 2,
191
+ 'wrap-iife': [2, 'any'],
192
+ 'yield-star-spacing': [2, 'both'],
193
+ 'yoda': [2, 'never'],
194
+ 'prefer-const': 0,
195
+ 'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0,
196
+ 'object-curly-spacing': [2, 'always', {
197
+ objectsInObjects: false
198
+ }],
199
+ 'array-bracket-spacing': [2, 'never']
200
+ }
201
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "editor.codeActionsOnSave": {
3
+ "source.fixAll.eslint": "always"
4
+ },
5
+ "i18n-ally.localesPaths": [],
6
+ "typescript.tsdk": "node_modules\\typescript\\lib",
7
+ "typescript.tsserver.experimental.enableProjectDiagnostics": false,
8
+ "typescript.tsserver.maxTsServerMemory": 8192,
9
+ "javascript.suggestionActions.enabled": false,
10
+ "files.watcherExclude": {
11
+ "**/.git/objects/**": true,
12
+ "**/.git/subtree-cache/**": true,
13
+ "**/.hg/store/**": true,
14
+ "**/dist/**": true,
15
+ "**/lib/**": true,
16
+ "**/node_modules/**": true
17
+ },
18
+ "cSpell.words": [
19
+ "bochui",
20
+ "cadview",
21
+ "webcad"
22
+ ]
23
+ }
@@ -0,0 +1,72 @@
1
+ # MONOREPO Template
2
+
3
+ monorepo库项目通用配置模板
4
+
5
+ ## 项目结构
6
+
7
+ - APP层分包:独立的项目
8
+ - App-A
9
+ - App-B
10
+ - PKG层分包:通用模块
11
+ - PKG-A
12
+ - PKG-B
13
+
14
+ ## 构建模式
15
+
16
+ - 开发环境:development,可以包含sourcemap
17
+ - 测试环境:test,项目主线
18
+ - 生产环境:prod,发布版
19
+
20
+ ## 打包构建
21
+
22
+ ### 依赖管理
23
+
24
+ 该项目使用pnpm管理依赖,需要提前全局安装pnpm
25
+
26
+ ```bash
27
+ npm install pnpm -g
28
+ ```
29
+
30
+ ```bash
31
+ # 初始化项目时,使用pnpm递归安装各个子包依赖
32
+ pnpm install -r
33
+
34
+ # 使用-w参数安装一个全局依赖到工作区目录,确保各个子包不需要再次安装就能引用
35
+ pnpm install pkgName -w
36
+
37
+ # 进入到对应子包,为子包单独安装依赖
38
+ cd ./packages/pkgName
39
+ pnpm install
40
+ ```
41
+
42
+ ### 构建指定子包
43
+
44
+ ```bash
45
+ # 以构建apps/reverse-modeling子包为例,目录名后跟的命令为所在包的package.json配置的scripts。
46
+
47
+ ## 开发环境调试
48
+ pnpm --filter ./apps/App-A dev
49
+ ## 测试环境构建
50
+ pnpm --filter ./apps/App-A build:test
51
+ ## 生产环境构建
52
+ pnpm --filter ./apps/App-A build:prod
53
+ ```
54
+
55
+ ## 项目使用
56
+
57
+ 项目使用需要修改包名,修改包名后需要同步修改以下配置
58
+
59
+ ### 修改pkg配置
60
+
61
+ 1. 进入./packages/{{ pkgName }}目录,修改其下的package.json内的`name`字段
62
+ 2. 进入引用该子包的packages.json文件,修改其包名
63
+ 3. 进入vite.config.ts文件,确定包名的别名(resolve.alias)(可选)
64
+ 4. 若修改了包的别名,需要同步修改tsconfig.json里的别名(paths)
65
+
66
+ ### 修改ts配置
67
+
68
+ 打开项目根目录`tsconfig.json`,修改其中的`references`字段,确保**包含packages和apps目录下的各个带package.json的子项目**都被包含在内,否则可能会出现VSCode的语言服务器频繁崩溃问题!!!
69
+
70
+ ### 依赖缓存问题
71
+
72
+ 在dev模式运行时,可能会出现子包里的内容修改了但是vite的dev服务器并没有触发热更新情况,此时需要修改vite.config.ts里的`optimizeDeps`字段,加入对应的包名以告知vite优化依赖关系
@@ -0,0 +1,13 @@
1
+ <!doctype html>
2
+ <html lang="zh">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <link rel="icon" type="image/svg+xml" href="/group.svg" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <title>示例工程</title>
8
+ </head>
9
+ <body>
10
+ <div id="app"></div>
11
+ <script type="module" src="/src/main.ts"></script>
12
+ </body>
13
+ </html>
@@ -0,0 +1,19 @@
1
+ {
2
+ "name": "app-a",
3
+ "private": true,
4
+ "version": "0.0.0",
5
+ "type": "module",
6
+ "scripts": {
7
+ "dev": "vite --host",
8
+ "build:test": "vite build --mode test --emptyOutDir",
9
+ "build:prod": "vite build --mode prod --emptyOutDir",
10
+ "preview": "vite preview",
11
+ "lint": "eslint . --ext .vue,.js,.ts,.jsx,.cjs,.mjs --ignore-path .gitignore",
12
+ "test": "vitest",
13
+ "test:ui": "vitest --ui"
14
+ },
15
+ "devDependencies": {
16
+ "@fsdev/pkg-a": "workspace:^",
17
+ "@fsdev/pkg-b": "workspace:^"
18
+ }
19
+ }
@@ -0,0 +1,3 @@
1
+ <svg width="279" height="279" viewBox="0 0 279 279" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M139.498 0C62.5761 0 0 62.5761 0 139.498C0 216.42 62.5761 278.996 139.498 278.996C216.42 278.996 278.996 216.42 278.996 139.498C278.996 62.5761 216.42 0 139.498 0ZM30.1684 194.987C49.5097 191.592 78.7184 189.352 118.336 212.68C148.529 227.936 174.416 233.793 191.665 234.605C201.385 235.048 210.515 234.507 218.709 233.03C197.325 251.166 169.691 262.141 139.498 262.141C91.8341 262.141 50.4694 234.777 30.1684 194.987ZM255.866 178.156C242.873 191.567 225.746 196.858 206.381 200.057C180.199 204.387 145.576 199.786 118.065 192.084C100.127 187.064 83.6153 183.102 63.9295 180.937C46.9505 179.067 31.9648 178.55 23.2292 178.427C19.1198 166.172 16.8559 153.081 16.8559 139.474C16.8559 71.853 71.8776 16.8313 139.498 16.8313C142.008 16.8313 144.518 16.9297 146.979 17.0774C142.082 22.8847 133.396 33.3427 126.235 42.9888C115.432 57.5562 102.317 72.7881 102.341 96.0665C102.366 109.699 113.292 126.235 124.709 136.472C133.248 144.149 135.069 151.113 132.067 159.652C130.467 164.204 121.535 178.008 110.437 183.668L131.673 189.082C131.673 189.082 147.594 179.263 157.732 164.081C167.92 148.8 164.745 129.434 150.744 116.614C137.111 104.138 125.275 90.8744 126.358 80.0472C127.465 69.22 130.787 59.6971 143.165 41.783C150.941 30.5129 156.871 22.4664 159.824 18.5292C217.798 28.2491 262.14 78.743 262.14 139.449C262.14 153.008 259.901 166 255.866 178.156Z" fill="#1D46CC"/>
3
+ </svg>
@@ -0,0 +1,8 @@
1
+ <template>
2
+ <FsButton title="测试" />
3
+ </template>
4
+
5
+ <script setup lang="ts">
6
+ import { VERSION } from '@fsdev/pkg-a'
7
+ console.log('VERSION', VERSION)
8
+ </script>
@@ -0,0 +1,12 @@
1
+ import { createApp } from 'vue'
2
+ import App from './App.vue'
3
+ import ElementPlus from '@fs/element-plus'
4
+ import '@fs/element-plus/dist/index.css'
5
+ import BochUI from '@fs/bochui'
6
+ import '@fs/bochui/lib/style.css'
7
+ import './style.css'
8
+
9
+ createApp(App)
10
+ .use(ElementPlus)
11
+ .use(BochUI)
12
+ .mount('#app')
@@ -0,0 +1,22 @@
1
+ {
2
+ "extends": ["../../tsconfig.json"],
3
+ "compilerOptions": {
4
+ "composite": true,
5
+ "noEmit": false,
6
+ "emitDeclarationOnly": true,
7
+ "baseUrl": ".",
8
+ "outDir": "./dist",
9
+ "rootDir": "../../",
10
+ "paths": {
11
+ "@/*":["src/*"],
12
+ "@fs/utils": ["../../node_modules/@fscut/fs-utils"],
13
+ "@fs/bochui": ["../../node_modules/@fscut/bochui"],
14
+ "@fs/element-plus": ["../../node_modules/@fscut/element-plus"]
15
+ },
16
+ },
17
+
18
+ "include": ["src", "src/i18n/locales/**.json"],
19
+ "references": [
20
+ { "path": "./tsconfig.node.json" }
21
+ ]
22
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "compilerOptions": {
3
+ "composite": true,
4
+ "skipLibCheck": true,
5
+ "module": "ESNext",
6
+ "moduleResolution": "bundler",
7
+ "allowSyntheticDefaultImports": true,
8
+ "strict": true
9
+ },
10
+ "include": ["vite.config.ts"]
11
+ }
@@ -0,0 +1,48 @@
1
+ /// <reference types="vitest" />
2
+ import { defineConfig } from 'vite'
3
+ import { fileURLToPath, URL } from 'node:url'
4
+ import vue from '@vitejs/plugin-vue'
5
+
6
+ // https://vitejs.dev/config/
7
+ // @ts-ignore
8
+ export default defineConfig(({ mode }) => {
9
+ console.log('Build Mode:', mode)
10
+ return {
11
+ plugins: [
12
+ vue()
13
+ ],
14
+ optimizeDeps: {
15
+ include: ['@fsdev/pkg-a', '@fsdev/pkg-b']
16
+ },
17
+ css: {
18
+ preprocessorOptions: {
19
+ less: {
20
+ charset: false,
21
+ additionalData: '@import "./src/assets/style/index.less";'
22
+ }
23
+ }
24
+ },
25
+ build: {
26
+ rollupOptions: {
27
+ output: {
28
+ chunkFileNames: 'chunk/[name].js',
29
+ entryFileNames: 'entry/[name].js'
30
+ }
31
+ },
32
+ sourcemap: mode === 'development' ? 'inline' : false,
33
+ outDir: 'dist'
34
+ },
35
+ esbuild: {
36
+ drop: mode === 'production' ? ['console', 'debugger'] : []
37
+ },
38
+ resolve: {
39
+ alias: {
40
+ '@': fileURLToPath(new URL('./src', import.meta.url)),
41
+ '@fs/element-plus': fileURLToPath(new URL('../../node_modules/@fscut/element-plus', import.meta.url)),
42
+ '@fs/bochui': fileURLToPath(new URL('../../node_modules/@fscut/bochui', import.meta.url)),
43
+ '@fs/utils': fileURLToPath(new URL('../../node_modules/@fscut/fs-utils', import.meta.url))
44
+ }
45
+ }
46
+ }
47
+ })
48
+
@@ -0,0 +1,22 @@
1
+ export default {
2
+ rollupOptions: {
3
+ // 确保外部化处理那些你不想打包进库的依赖
4
+ external: [
5
+ '@fs/utils',
6
+ '@fs/fscadweb',
7
+ '@fs/sandbox',
8
+ '@fs/bochui',
9
+ '@fs/sandbox/assets',
10
+ '@fs/webcad-platform',
11
+ '@fs/element-plus',
12
+ '@fscut/crepes-base',
13
+ 'vue',
14
+ 'vue-i18n',
15
+ 'uuid'
16
+ ]
17
+ },
18
+ sourcemap: false,
19
+ minify: 'esbuild',
20
+ outDir: 'lib',
21
+ reportCompressedSize: false
22
+ }
@@ -0,0 +1,12 @@
1
+ import { fileURLToPath, URL } from 'node:url'
2
+
3
+ export default (pkg: string) => {
4
+ console.log(pkg)
5
+ return {
6
+ alias: {
7
+ '@': fileURLToPath(new URL('./src', import.meta.url)),
8
+ '@fs/element-plus': fileURLToPath(new URL('node_modules/@fscut/element-plus', import.meta.url)),
9
+ '@fs/bochui': fileURLToPath(new URL('node_modules/@fscut/bochui', import.meta.url))
10
+ }
11
+ }
12
+ }
@@ -0,0 +1,13 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <link rel="icon" type="image/svg+xml" href="/vite.svg" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <title>Vite + TS</title>
8
+ </head>
9
+ <body>
10
+ <div id="app"></div>
11
+ <script type="module" src="/src/main.ts"></script>
12
+ </body>
13
+ </html>
@@ -1,46 +1,48 @@
1
- {
2
- "name": "monorepo",
3
- "private": true,
4
- "version": "0.0.0",
5
- "type": "module",
6
- "scripts": {
7
- "dev": "vite",
8
- "build:test": "vue-tsc && vite build --mode test",
9
- "build:prod": "vue-tsc && vite build --mode prod",
10
- "preview": "vite preview",
11
- "lint": "eslint . --ext .vue,.js,.ts,.jsx,.cjs,.mjs --ignore-path .gitignore",
12
- "test": "vitest",
13
- "check-changeset": "git show --name-only --oneline HEAD | findstr /R \\.changeset/ || (echo 'Error: No changeset detected!' && exit 1)",
14
- "test:ui": "vitest --ui",
15
- "commit": "git-cz",
16
- "prepare": "husky"
17
- },
18
- "dependencies": {
19
- "vue": "^3.5.12"
20
- },
21
- "devDependencies": {
22
- "@babel/preset-typescript": "^7.26.0",
23
- "@changesets/cli": "^2.27.9",
24
- "@rushstack/eslint-patch": "^1.10.4",
25
- "@typescript-eslint/parser": "^7.18.0",
26
- "@vitejs/plugin-vue": "^5.1.4",
27
- "@vitest/ui": "^1.6.0",
28
- "@vue/test-utils": "^2.4.6",
29
- "commitizen": "^4.3.1",
30
- "cz-conventional-changelog": "^3.3.0",
31
- "eslint": "^9.14.0",
32
- "eslint-plugin-vue": "^9.30.0",
33
- "happy-dom": "^14.12.3",
34
- "husky": "^9.1.6",
35
- "less": "^4.2.0",
36
- "typescript": "^5.6.3",
37
- "vite": "^5.4.10",
38
- "vitest": "^1.6.0",
39
- "vue-tsc": "^2.1.10"
40
- },
41
- "config": {
42
- "commitizen": {
43
- "path": "cz-conventional-changelog"
44
- }
45
- }
46
- }
1
+ {
2
+ "name": "template-monorepo",
3
+ "private": true,
4
+ "version": "0.0.0",
5
+ "type": "module",
6
+ "scripts": {
7
+ "lint": "eslint . --ext .vue,.js,.ts,.jsx,.cjs,.mjs --ignore-path .gitignore --fix",
8
+ "test": "vitest"
9
+ },
10
+ "dependencies": {
11
+ "@fscut/bochui": "^0.2.4",
12
+ "@fscut/crepes-base": "^1.1.16",
13
+ "@fscut/crepes-model": "^1.1.5",
14
+ "@fscut/element-plus": "^2.7.3",
15
+ "@fscut/fs-utils": "^1.2.5",
16
+ "vue": "3.4.29",
17
+ "vue-i18n": "10.0.4"
18
+ },
19
+ "devDependencies": {
20
+ "@babel/preset-typescript": "^7.24.7",
21
+ "@rushstack/eslint-patch": "^1.5.1",
22
+ "@types/node": "^22.13.4",
23
+ "@typescript-eslint/eslint-plugin": "^7.15.0",
24
+ "@typescript-eslint/parser": "^7.15.0",
25
+ "@vitejs/plugin-vue": "^5.0.5",
26
+ "@vitest/ui": "^1.6.0",
27
+ "@vue/test-utils": "^2.4.6",
28
+ "eslint": "^8.57.0",
29
+ "eslint-plugin-vue": "^9.26.0",
30
+ "happy-dom": "^14.12.3",
31
+ "less": "^4.2.0",
32
+ "rollup-plugin-sourcemaps": "^0.6.3",
33
+ "typescript": "^5.8.2",
34
+ "vite": "^5.3.1",
35
+ "vite-plugin-dts": "^3.6.3",
36
+ "vite-plugin-static-copy": "^2.2.0",
37
+ "vitest": "^1.6.0",
38
+ "vue-tsc": "^2.0.21"
39
+ },
40
+ "files": [
41
+ "lib",
42
+ "types",
43
+ "README.md"
44
+ ],
45
+ "publishConfig": {
46
+ "registry": "http://nexus.fscut.com/repository/npm-dev/"
47
+ }
48
+ }
@@ -0,0 +1,3 @@
1
+ import { VERSION } from './src/test'
2
+
3
+ export { VERSION }
@@ -0,0 +1,22 @@
1
+ {
2
+ "name": "@fsdev/pkg-a",
3
+ "version": "0.0.0",
4
+ "description": "",
5
+ "private": false,
6
+ "main": "index.ts",
7
+ "publishConfig": {
8
+ "main": "lib/index.mjs",
9
+ "types": "lib/index.d.ts",
10
+ "registry": "https://nexus.fscut.com/repository/npm-dev/"
11
+ },
12
+ "scripts": {
13
+ "test": "vitest",
14
+ "build:test": "vite build --emptyOutDir --mode test",
15
+ "build:prod": "vite build --emptyOutDir --mode prod"
16
+ },
17
+ "author": "zhouxinmeng",
18
+ "license": "ISC",
19
+ "files": [
20
+ "lib"
21
+ ]
22
+ }
@@ -0,0 +1 @@
1
+ export const VERSION = '0.0.0'
@@ -0,0 +1,15 @@
1
+ {
2
+ "extends": ["../../tsconfig.json"],
3
+ "compilerOptions": {
4
+ "composite": true,
5
+ "noEmit": false,
6
+ "emitDeclarationOnly": true,
7
+ "rootDir": "../../",
8
+ "outDir": "./lib",
9
+ "baseUrl": ".",
10
+ "paths": {
11
+ "@fs/utils": ["../../node_modules/@fscut/fs-utils"]
12
+ }
13
+ },
14
+ "include": ["src"],
15
+ }