@farris/cli 2.2.5 → 2.3.0
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.
- package/lib/commands/add-app.js +6 -0
- package/lib/commands/add-app.js.map +1 -0
- package/lib/commands/add-lib.js +6 -0
- package/lib/commands/add-lib.js.map +1 -0
- package/lib/commands/add-project.js +194 -0
- package/lib/commands/add-project.js.map +1 -0
- package/lib/commands/build-components.js +57 -50
- package/lib/commands/build-components.js.map +1 -1
- package/lib/commands/build-css.js +38 -38
- package/lib/commands/build-css.js.map +1 -1
- package/lib/commands/build-lib.js +30 -25
- package/lib/commands/build-lib.js.map +1 -1
- package/lib/commands/build.js +19 -14
- package/lib/commands/build.js.map +1 -1
- package/lib/commands/create-app-options.js +72 -74
- package/lib/commands/create-app-options.js.map +1 -1
- package/lib/commands/create-app.js +131 -126
- package/lib/commands/create-app.js.map +1 -1
- package/lib/commands/create-options.js +32 -29
- package/lib/commands/create-options.js.map +1 -1
- package/lib/commands/create.js +277 -224
- package/lib/commands/create.js.map +1 -1
- package/lib/commands/dev-serve.js +18 -18
- package/lib/commands/extract-i18n.js +74 -74
- package/lib/commands/extract-i18n.js.map +1 -1
- package/lib/commands/generate/api.js +124 -124
- package/lib/commands/generate/api.js.map +1 -1
- package/lib/commands/generate/common.js +101 -100
- package/lib/commands/generate/common.js.map +1 -1
- package/lib/commands/generate/component.js +156 -156
- package/lib/commands/generate/component.js.map +1 -1
- package/lib/commands/generate/view.js +168 -168
- package/lib/commands/generate/view.js.map +1 -1
- package/lib/commands/preview-serve.js +16 -16
- package/lib/commands/workspace/add-app.js +15 -180
- package/lib/commands/workspace/add-app.js.map +1 -1
- package/lib/commands/workspace/create.js +62 -379
- package/lib/commands/workspace/create.js.map +1 -1
- package/lib/commands/workspace/inspect.js +30 -30
- package/lib/commands/workspace/inspect.js.map +1 -1
- package/lib/commands/workspace/verify.js +38 -38
- package/lib/commands/workspace/verify.js.map +1 -1
- package/lib/common/agents-doc.js +34 -0
- package/lib/common/agents-doc.js.map +1 -0
- package/lib/common/apply-catalog-deps.js +15 -15
- package/lib/common/apply-catalog-deps.js.map +1 -1
- package/lib/common/component-file-name.js +3 -3
- package/lib/common/constant.js +64 -64
- package/lib/common/constant.js.map +1 -1
- package/lib/common/create-app-target.js +46 -46
- package/lib/common/create-app-target.js.map +1 -1
- package/lib/common/generate-app.js +109 -85
- package/lib/common/generate-app.js.map +1 -1
- package/lib/common/get-dependencies.js +9 -9
- package/lib/common/get-farris-config.js +25 -25
- package/lib/common/get-farris-config.js.map +1 -1
- package/lib/common/get-version.js +6 -6
- package/lib/common/get-vite-config.js +106 -106
- package/lib/common/get-vite-config.js.map +1 -1
- package/lib/common/lib-package-exports.js +24 -24
- package/lib/common/lib-package-exports.js.map +1 -1
- package/lib/common/list-lib-components.js +23 -23
- package/lib/common/list-lib-components.js.map +1 -1
- package/lib/common/output.js +164 -94
- package/lib/common/output.js.map +1 -1
- package/lib/common/project-layout.js +143 -0
- package/lib/common/project-layout.js.map +1 -0
- package/lib/common/safety.js +173 -171
- package/lib/common/safety.js.map +1 -1
- package/lib/common/template-manifest.js +14 -16
- package/lib/common/template-manifest.js.map +1 -1
- package/lib/common/template-renderer.js +114 -114
- package/lib/common/template-renderer.js.map +1 -1
- package/lib/common/transaction.js +83 -83
- package/lib/common/transaction.js.map +1 -1
- package/lib/common/verifier.js +194 -150
- package/lib/common/verifier.js.map +1 -1
- package/lib/common/workspace-contract.js +86 -0
- package/lib/common/workspace-contract.js.map +1 -0
- package/lib/config/vite-app.js +13 -13
- package/lib/config/vite-common.js +20 -20
- package/lib/config/vite-common.js.map +1 -1
- package/lib/config/vite-component.js +32 -32
- package/lib/config/vite-component.js.map +1 -1
- package/lib/config/vite-lib.js +26 -26
- package/lib/index.js +234 -205
- package/lib/index.js.map +1 -1
- package/lib/plugins/create-app-package-json.js +24 -0
- package/lib/plugins/create-app-package-json.js.map +1 -0
- package/lib/plugins/create-component-style.js +44 -44
- package/lib/plugins/create-package-json.js +48 -48
- package/lib/plugins/create-package-json.js.map +1 -1
- package/lib/plugins/dts.js +8 -8
- package/lib/plugins/html-system.js +9 -9
- package/lib/plugins/replace.js +17 -17
- package/lib/plugins/systemjs-bundle.js +15 -15
- package/lib/plugins/systemjs-bundle.js.map +1 -1
- package/package.json +53 -52
- package/templates/create/.gitignore.tpl +12 -0
- package/templates/create/.npmrc.tpl +1 -0
- package/templates/create/AGENTS.md +62 -0
- package/templates/create/CLAUDE.md +1 -0
- package/templates/create/README.md +14 -1
- package/templates/create/package.json +11 -3
- package/templates/create/pnpm-workspace.yaml +2 -1
- package/templates/lib/.eslintrc.cjs +15 -0
- package/templates/lib/.gitignore.tpl +3 -0
- package/templates/lib/.prettierrc.json +8 -0
- package/templates/lib/index.html +1 -1
- package/templates/lib/package.json +39 -4
- package/templates/lib/{components → test/components}/button/button.spec.ts +3 -2
- package/templates/lib/test/components/button/button.spec.tsx +11 -0
- package/templates/lib/tsconfig.json +5 -1
- package/templates/lib/vitest.config.ts +1 -1
- package/templates/mobile/.gitignore.tpl +31 -0
- package/templates/mobile/.gitlab-ci.yml +3 -9
- package/templates/mobile/index.html +1 -1
- package/templates/mobile/package.json +14 -10
- package/templates/mobile/src/main.ts +5 -4
- package/templates/mobile/src/router/index.ts +17 -17
- package/templates/mobile/test/src/components/TheButton.spec.ts +15 -0
- package/templates/mobile/test/src/components/TheButton.spec.tsx +15 -0
- package/templates/mobile/tsconfig.json +3 -2
- package/templates/mobile/vitest.config.ts +2 -1
- package/templates/web/.gitignore.tpl +31 -0
- package/templates/web/.gitlab-ci.yml +3 -9
- package/templates/web/index.html +1 -1
- package/templates/web/package.json +14 -10
- package/templates/web/src/locales/index.ts +5 -0
- package/templates/web/src/locales/zh-CN.json +1 -0
- package/templates/web/src/main.ts +5 -2
- package/templates/web/src/router/index.ts +17 -17
- package/templates/web/src/styles/index.css +0 -0
- package/templates/web/src/styles/index.scss +0 -0
- package/templates/web/test/src/components/TheButton.spec.ts +15 -0
- package/templates/web/test/src/components/TheButton.spec.tsx +15 -0
- package/templates/web/tsconfig.json +3 -2
- package/templates/web/vitest.config.ts +2 -1
- package/lib/common/project-package-name.js +0 -5
- package/lib/common/project-package-name.js.map +0 -1
- package/templates/mobile/.changeset/README.md +0 -4
- package/templates/mobile/.changeset/config.json +0 -11
- package/templates/mobile/project.json +0 -4
- package/templates/mobile/src/components/TheButton.spec.ts +0 -8
- package/templates/web/.changeset/README.md +0 -4
- package/templates/web/.changeset/config.json +0 -11
- package/templates/web/project.json +0 -4
- package/templates/web/src/components/TheButton.spec.ts +0 -8
- package/templates/workspace/app/farris.config.mjs +0 -13
- package/templates/workspace/app/index.html +0 -12
- package/templates/workspace/app/package.json +0 -22
- package/templates/workspace/app/src/App.tsx +0 -11
- package/templates/workspace/app/src/main.ts +0 -12
- package/templates/workspace/app/src/router/index.ts +0 -16
- package/templates/workspace/app/src/views/home/composables/use-home.ts +0 -7
- package/templates/workspace/app/src/views/home/home.component.tsx +0 -15
- package/templates/workspace/app/src/views/home/index.ts +0 -4
- package/templates/workspace/app/tsconfig.json +0 -21
- package/templates/workspace/root/README.md +0 -28
- package/templates/workspace/root/package.json +0 -13
- package/templates/workspace/root/pnpm-workspace.yaml +0 -12
- /package/templates/{workspace/app → mobile}/src/locales/index.ts +0 -0
- /package/templates/{workspace/app → mobile}/src/locales/zh-CN.json +0 -0
- /package/templates/{workspace/app → mobile}/src/styles/index.css +0 -0
- /package/templates/{workspace/app → mobile}/src/styles/index.scss +0 -0
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { readFileSync } from 'node:fs';
|
|
2
|
+
import { resolve } from 'node:path';
|
|
3
|
+
/**
|
|
4
|
+
* 为 app 生成发布清单到 dist/package.json(设计文档 §7.5)。
|
|
5
|
+
*
|
|
6
|
+
* 工程自身的 package.json 是 private 且含 devDependencies/scripts,不能直接发布;
|
|
7
|
+
* 这里只写可发布的最小信息:name 保留工程原值(含 scope,不做任何改写)、version 取工程 package.json。
|
|
8
|
+
*/
|
|
9
|
+
export const createAppPackageJson = () => ({
|
|
10
|
+
name: 'create-app-package-json',
|
|
11
|
+
generateBundle() {
|
|
12
|
+
const pkg = JSON.parse(readFileSync(resolve(process.cwd(), 'package.json'), 'utf-8'));
|
|
13
|
+
const result = {
|
|
14
|
+
name: pkg.name,
|
|
15
|
+
version: pkg.version
|
|
16
|
+
};
|
|
17
|
+
this.emitFile({
|
|
18
|
+
type: 'asset',
|
|
19
|
+
fileName: 'package.json',
|
|
20
|
+
source: JSON.stringify(result, null, 2)
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
//# sourceMappingURL=create-app-package-json.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-app-package-json.js","sourceRoot":"","sources":["../../src/plugins/create-app-package-json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAQ,EAAE,CAAC,CAAC;IAC9C,IAAI,EAAE,yBAAyB;IAC/B,cAAc;QACZ,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;QACtF,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO,EAAE,GAAG,CAAC,OAAO;SACrB,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC;YACZ,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,cAAc;YACxB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;SACxC,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
import { getPackageName } from "../common/constant.js";
|
|
2
|
-
const NotStyleComponents = ['designer-canvas', 'dynamic-view', 'dynamic-resolver', 'common'];
|
|
3
|
-
const getComponentStyle = (imports) => {
|
|
4
|
-
const components = imports
|
|
5
|
-
.filter(path => {
|
|
6
|
-
return path.startsWith(`${getPackageName()}/`) && !NotStyleComponents.find(notStylecomponent => path.includes(notStylecomponent));
|
|
7
|
-
})
|
|
8
|
-
.filter((item, index, array) => {
|
|
9
|
-
const targetIndex = array.filter(e => e !== item).findIndex(e => item.includes(e));
|
|
10
|
-
return targetIndex < 0;
|
|
11
|
-
})
|
|
12
|
-
.map(name => {
|
|
13
|
-
const component = name.split('/').pop();
|
|
14
|
-
return {
|
|
15
|
-
name: component,
|
|
16
|
-
path: `../${component}/style.js`
|
|
17
|
-
};
|
|
18
|
-
});
|
|
19
|
-
components.push({
|
|
20
|
-
name: 'components',
|
|
21
|
-
path: `./index.css`
|
|
22
|
-
});
|
|
23
|
-
const template = `${components.map(component => {
|
|
24
|
-
const { path } = component;
|
|
25
|
-
return `import '${path}';`;
|
|
1
|
+
import { getPackageName } from "../common/constant.js";
|
|
2
|
+
const NotStyleComponents = ['designer-canvas', 'dynamic-view', 'dynamic-resolver', 'common'];
|
|
3
|
+
const getComponentStyle = (imports) => {
|
|
4
|
+
const components = imports
|
|
5
|
+
.filter(path => {
|
|
6
|
+
return path.startsWith(`${getPackageName()}/`) && !NotStyleComponents.find(notStylecomponent => path.includes(notStylecomponent));
|
|
7
|
+
})
|
|
8
|
+
.filter((item, index, array) => {
|
|
9
|
+
const targetIndex = array.filter(e => e !== item).findIndex(e => item.includes(e));
|
|
10
|
+
return targetIndex < 0;
|
|
11
|
+
})
|
|
12
|
+
.map(name => {
|
|
13
|
+
const component = name.split('/').pop();
|
|
14
|
+
return {
|
|
15
|
+
name: component,
|
|
16
|
+
path: `../${component}/style.js`
|
|
17
|
+
};
|
|
18
|
+
});
|
|
19
|
+
components.push({
|
|
20
|
+
name: 'components',
|
|
21
|
+
path: `./index.css`
|
|
22
|
+
});
|
|
23
|
+
const template = `${components.map(component => {
|
|
24
|
+
const { path } = component;
|
|
25
|
+
return `import '${path}';`;
|
|
26
26
|
}).join('\n')}
|
|
27
|
-
`;
|
|
28
|
-
return template;
|
|
29
|
-
};
|
|
30
|
-
export function createComponentStyle() {
|
|
31
|
-
return {
|
|
32
|
-
name: 'farris-gen-component-style',
|
|
33
|
-
renderChunk(code, chunk) {
|
|
34
|
-
const { imports } = chunk;
|
|
35
|
-
const template = getComponentStyle(imports);
|
|
36
|
-
template && this.emitFile({
|
|
37
|
-
type: 'asset',
|
|
38
|
-
fileName: 'style.js',
|
|
39
|
-
source: template
|
|
40
|
-
});
|
|
41
|
-
return code;
|
|
42
|
-
}
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
;
|
|
27
|
+
`;
|
|
28
|
+
return template;
|
|
29
|
+
};
|
|
30
|
+
export function createComponentStyle() {
|
|
31
|
+
return {
|
|
32
|
+
name: 'farris-gen-component-style',
|
|
33
|
+
renderChunk(code, chunk) {
|
|
34
|
+
const { imports } = chunk;
|
|
35
|
+
const template = getComponentStyle(imports);
|
|
36
|
+
template && this.emitFile({
|
|
37
|
+
type: 'asset',
|
|
38
|
+
fileName: 'style.js',
|
|
39
|
+
source: template
|
|
40
|
+
});
|
|
41
|
+
return code;
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
;
|
|
46
46
|
//# sourceMappingURL=create-component-style.js.map
|
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
import { readFileSync } from 'node:fs';
|
|
2
|
-
import { resolve } from 'node:path';
|
|
3
|
-
import { CWD } from '../common/constant.js';
|
|
4
|
-
import { listLibComponents } from '../common/list-lib-components.js';
|
|
5
|
-
import { buildLibPackageExports } from '../common/lib-package-exports.js';
|
|
6
|
-
export const createPackageJson = () => {
|
|
7
|
-
const seen = new Set();
|
|
8
|
-
return {
|
|
9
|
-
name: 'create-package-json',
|
|
10
|
-
generateBundle(outputOptions) {
|
|
11
|
-
if (outputOptions.format) {
|
|
12
|
-
seen.add(outputOptions.format === 'es' ? 'es' : outputOptions.format);
|
|
13
|
-
}
|
|
14
|
-
const pkg = JSON.parse(readFileSync(resolve(CWD, 'package.json'), 'utf-8'));
|
|
15
|
-
const result = {
|
|
16
|
-
name: '',
|
|
17
|
-
version: '',
|
|
18
|
-
private: false,
|
|
19
|
-
types: './types/index.d.ts',
|
|
20
|
-
style: './index.css'
|
|
21
|
-
};
|
|
22
|
-
if (seen.has('es')) {
|
|
23
|
-
result.module = './index.esm.js';
|
|
24
|
-
result.main = './index.esm.js';
|
|
25
|
-
}
|
|
26
|
-
// main 是 require() 的入口。UMD 产物不能担任这个角色:它是 .js,在
|
|
27
|
-
// type: module 的包里按 ESM 解析后不会导出任何东西。
|
|
28
|
-
if (seen.has('cjs')) {
|
|
29
|
-
result.main = './index.cjs';
|
|
30
|
-
}
|
|
31
|
-
const exclude = ['scripts', 'devDependencies', 'private'];
|
|
32
|
-
Object.keys(pkg).forEach((key) => {
|
|
33
|
-
if (exclude.includes(key)) {
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
result[key] = pkg[key];
|
|
37
|
-
});
|
|
38
|
-
const extra = buildLibPackageExports(listLibComponents(process.cwd()), seen);
|
|
39
|
-
result.sideEffects = extra.sideEffects;
|
|
40
|
-
result.exports = extra.exports;
|
|
41
|
-
this.emitFile({
|
|
42
|
-
type: 'asset',
|
|
43
|
-
fileName: 'package.json',
|
|
44
|
-
source: JSON.stringify(result, null, 2)
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
};
|
|
1
|
+
import { readFileSync } from 'node:fs';
|
|
2
|
+
import { resolve } from 'node:path';
|
|
3
|
+
import { CWD } from '../common/constant.js';
|
|
4
|
+
import { listLibComponents } from '../common/list-lib-components.js';
|
|
5
|
+
import { buildLibPackageExports } from '../common/lib-package-exports.js';
|
|
6
|
+
export const createPackageJson = () => {
|
|
7
|
+
const seen = new Set();
|
|
8
|
+
return {
|
|
9
|
+
name: 'create-package-json',
|
|
10
|
+
generateBundle(outputOptions) {
|
|
11
|
+
if (outputOptions.format) {
|
|
12
|
+
seen.add(outputOptions.format === 'es' ? 'es' : outputOptions.format);
|
|
13
|
+
}
|
|
14
|
+
const pkg = JSON.parse(readFileSync(resolve(CWD, 'package.json'), 'utf-8'));
|
|
15
|
+
const result = {
|
|
16
|
+
name: '',
|
|
17
|
+
version: '',
|
|
18
|
+
private: false,
|
|
19
|
+
types: './types/index.d.ts',
|
|
20
|
+
style: './index.css'
|
|
21
|
+
};
|
|
22
|
+
if (seen.has('es')) {
|
|
23
|
+
result.module = './index.esm.js';
|
|
24
|
+
result.main = './index.esm.js';
|
|
25
|
+
}
|
|
26
|
+
// main 是 require() 的入口。UMD 产物不能担任这个角色:它是 .js,在
|
|
27
|
+
// type: module 的包里按 ESM 解析后不会导出任何东西。
|
|
28
|
+
if (seen.has('cjs')) {
|
|
29
|
+
result.main = './index.cjs';
|
|
30
|
+
}
|
|
31
|
+
const exclude = ['scripts', 'devDependencies', 'private'];
|
|
32
|
+
Object.keys(pkg).forEach((key) => {
|
|
33
|
+
if (exclude.includes(key)) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
result[key] = pkg[key];
|
|
37
|
+
});
|
|
38
|
+
const extra = buildLibPackageExports(listLibComponents(process.cwd()), seen);
|
|
39
|
+
result.sideEffects = extra.sideEffects;
|
|
40
|
+
result.exports = extra.exports;
|
|
41
|
+
this.emitFile({
|
|
42
|
+
type: 'asset',
|
|
43
|
+
fileName: 'package.json',
|
|
44
|
+
source: JSON.stringify(result, null, 2)
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
49
|
//# sourceMappingURL=create-package-json.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-package-json.js","sourceRoot":"","sources":["../../src/plugins/create-package-json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAE1E,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAQ,EAAE;IACzC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,OAAO;QACL,IAAI,EAAE,qBAAqB;QAC3B,cAAc,CAAC,aAAkC;YAC/C,IAAI,aAAa,CAAC,MAAM,EAAE
|
|
1
|
+
{"version":3,"file":"create-package-json.js","sourceRoot":"","sources":["../../src/plugins/create-package-json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAE1E,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAQ,EAAE;IACzC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,OAAO;QACL,IAAI,EAAE,qBAAqB;QAC3B,cAAc,CAAC,aAAkC;YAC/C,IAAI,aAAa,CAAC,MAAM,EAAE;gBACxB,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;aACvE;YACD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;YAC5E,MAAM,MAAM,GAAwB;gBAClC,IAAI,EAAE,EAAE;gBACR,OAAO,EAAE,EAAE;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,oBAAoB;gBAC3B,KAAK,EAAE,aAAa;aACrB,CAAC;YACF,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAClB,MAAM,CAAC,MAAM,GAAG,gBAAgB,CAAC;gBACjC,MAAM,CAAC,IAAI,GAAG,gBAAgB,CAAC;aAChC;YACD,+CAA+C;YAC/C,qCAAqC;YACrC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBACnB,MAAM,CAAC,IAAI,GAAG,aAAa,CAAC;aAC7B;YACD,MAAM,OAAO,GAAG,CAAC,SAAS,EAAE,iBAAiB,EAAE,SAAS,CAAC,CAAC;YAC1D,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC/B,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBACzB,OAAO;iBACR;gBACD,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC;YACH,MAAM,KAAK,GAAG,sBAAsB,CAAC,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;YAC7E,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;YACvC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC;gBACZ,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,cAAc;gBACxB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;aACxC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC,CAAC"}
|
package/lib/plugins/dts.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import dts from "vite-plugin-dts";
|
|
2
|
-
export function generateTypes(entry, outDir) {
|
|
3
|
-
return dts({
|
|
4
|
-
entryRoot: entry,
|
|
5
|
-
outDir
|
|
6
|
-
});
|
|
7
|
-
}
|
|
8
|
-
;
|
|
1
|
+
import dts from "vite-plugin-dts";
|
|
2
|
+
export function generateTypes(entry, outDir) {
|
|
3
|
+
return dts({
|
|
4
|
+
entryRoot: entry,
|
|
5
|
+
outDir
|
|
6
|
+
});
|
|
7
|
+
}
|
|
8
|
+
;
|
|
9
9
|
//# sourceMappingURL=dts.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
export const htmlSystemPlugin = () => {
|
|
2
|
-
return {
|
|
3
|
-
name: 'html-transform-system',
|
|
4
|
-
transformIndexHtml(html) {
|
|
5
|
-
const regexp = /<script.*type="module".*src="(.*?)"><\/script>/;
|
|
1
|
+
export const htmlSystemPlugin = () => {
|
|
2
|
+
return {
|
|
3
|
+
name: 'html-transform-system',
|
|
4
|
+
transformIndexHtml(html) {
|
|
5
|
+
const regexp = /<script.*type="module".*src="(.*?)"><\/script>/;
|
|
6
6
|
return html.replace(regexp, (str, p1) => `
|
|
7
7
|
<script src="https://cdn.bootcdn.net/ajax/libs/systemjs/6.15.1/system.js"></script>
|
|
8
|
-
<script >System.import("${p1}");</script>`);
|
|
9
|
-
}
|
|
10
|
-
};
|
|
11
|
-
};
|
|
8
|
+
<script >System.import("${p1}");</script>`);
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
12
|
//# sourceMappingURL=html-system.js.map
|
package/lib/plugins/replace.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { getPackageName } from '../common/constant.js';
|
|
2
|
-
export function replace(path) {
|
|
3
|
-
return {
|
|
4
|
-
name: 'farris-replace-path',
|
|
5
|
-
renderChunk(code, chunk) {
|
|
6
|
-
const fileNames = chunk.fileName.split('.');
|
|
7
|
-
const format = fileNames[fileNames.length - 2];
|
|
8
|
-
// const regExpress = new RegExp(/@farris\/mobile-ui-vue\/([\w-]+)/g);
|
|
9
|
-
const dynamicRegExp = new RegExp(`${getPackageName().replace(/\//g, '\\/')}\\/([\\w-]+)`, // 自动转义斜杠
|
|
10
|
-
'g');
|
|
11
|
-
return code.replace(dynamicRegExp, (match, captureGroup) => {
|
|
12
|
-
return path(format, [captureGroup]);
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
;
|
|
1
|
+
import { getPackageName } from '../common/constant.js';
|
|
2
|
+
export function replace(path) {
|
|
3
|
+
return {
|
|
4
|
+
name: 'farris-replace-path',
|
|
5
|
+
renderChunk(code, chunk) {
|
|
6
|
+
const fileNames = chunk.fileName.split('.');
|
|
7
|
+
const format = fileNames[fileNames.length - 2];
|
|
8
|
+
// const regExpress = new RegExp(/@farris\/mobile-ui-vue\/([\w-]+)/g);
|
|
9
|
+
const dynamicRegExp = new RegExp(`${getPackageName().replace(/\//g, '\\/')}\\/([\\w-]+)`, // 自动转义斜杠
|
|
10
|
+
'g');
|
|
11
|
+
return code.replace(dynamicRegExp, (match, captureGroup) => {
|
|
12
|
+
return path(format, [captureGroup]);
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
;
|
|
18
18
|
//# sourceMappingURL=replace.js.map
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
export function systemjsBundle() {
|
|
2
|
-
return {
|
|
3
|
-
name: 'systemjs-bundle',
|
|
4
|
-
outputOptions(options) {
|
|
5
|
-
if (options.format === 'systemjs') {
|
|
6
|
-
return {
|
|
7
|
-
...options,
|
|
8
|
-
name: undefined
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
return options;
|
|
12
|
-
}
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
;
|
|
1
|
+
export function systemjsBundle() {
|
|
2
|
+
return {
|
|
3
|
+
name: 'systemjs-bundle',
|
|
4
|
+
outputOptions(options) {
|
|
5
|
+
if (options.format === 'systemjs') {
|
|
6
|
+
return {
|
|
7
|
+
...options,
|
|
8
|
+
name: undefined
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
return options;
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
;
|
|
16
16
|
//# sourceMappingURL=systemjs-bundle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"systemjs-bundle.js","sourceRoot":"","sources":["../../src/plugins/systemjs-bundle.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,cAAc;IAC5B,OAAO;QACL,IAAI,EAAE,iBAAiB;QACvB,aAAa,CAAC,OAAY;YACxB,IAAG,OAAO,CAAC,MAAM,KAAK,UAAU,EAAE
|
|
1
|
+
{"version":3,"file":"systemjs-bundle.js","sourceRoot":"","sources":["../../src/plugins/systemjs-bundle.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,cAAc;IAC5B,OAAO;QACL,IAAI,EAAE,iBAAiB;QACvB,aAAa,CAAC,OAAY;YACxB,IAAG,OAAO,CAAC,MAAM,KAAK,UAAU,EAAE;gBAChC,OAAO;oBACL,GAAG,OAAO;oBACV,IAAI,EAAE,SAAS;iBAChB,CAAC;aACH;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;KACF,CAAC;AACJ,CAAC;AAAA,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,52 +1,53 @@
|
|
|
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
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@farris/cli",
|
|
3
|
+
"private": false,
|
|
4
|
+
"version": "2.3.0",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"typings": "lib/index.d.ts",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": {
|
|
9
|
+
"types": "./lib/commands/create.js",
|
|
10
|
+
"import": "./lib/commands/create.js"
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
"bin": {
|
|
14
|
+
"farris-cli": "./bin/index.js"
|
|
15
|
+
},
|
|
16
|
+
"engines": {
|
|
17
|
+
"node": "^18.0.0 || >=20.0.0",
|
|
18
|
+
"pnpm": ">=9.0.0"
|
|
19
|
+
},
|
|
20
|
+
"scripts": {
|
|
21
|
+
"build": "rimraf ./lib && tsc",
|
|
22
|
+
"test": "vitest run --config vitest.config.ts"
|
|
23
|
+
},
|
|
24
|
+
"files": [
|
|
25
|
+
"lib",
|
|
26
|
+
"templates",
|
|
27
|
+
"bin"
|
|
28
|
+
],
|
|
29
|
+
"license": "MIT",
|
|
30
|
+
"dependencies": {
|
|
31
|
+
"@vitejs/plugin-vue": "^5.2.4",
|
|
32
|
+
"@vitejs/plugin-vue-jsx": "^3.0.0",
|
|
33
|
+
"commander": "^9.4.0",
|
|
34
|
+
"esbuild": "^0.23.0",
|
|
35
|
+
"esbuild-sass-plugin": "^3.3.1",
|
|
36
|
+
"fs-extra": "^11.2.0",
|
|
37
|
+
"glob": "^10.4.5",
|
|
38
|
+
"inquirer": "^9.3.0",
|
|
39
|
+
"ora": "^8.0.1",
|
|
40
|
+
"typescript": "^5.7.3",
|
|
41
|
+
"vite": "^5.4.19",
|
|
42
|
+
"vite-plugin-css-injected-by-js": "^3.5.2",
|
|
43
|
+
"vite-plugin-dts": "^3.9.1"
|
|
44
|
+
},
|
|
45
|
+
"devDependencies": {
|
|
46
|
+
"@types/fs-extra": "^11.0.4",
|
|
47
|
+
"@types/inquirer": "^9.0.7",
|
|
48
|
+
"rimraf": "^5.0.7",
|
|
49
|
+
"vitest": "^1.6.1",
|
|
50
|
+
"vue": "^3.5.13",
|
|
51
|
+
"sass": "catalog:"
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
registry=https://repos.iec.io/repository/npm-igix/
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# <%= title %> — AI 协作契约
|
|
2
|
+
|
|
3
|
+
本文件是本 workspace 的**唯一真源**。子工程内不放任何 AI 配置文件;所有工具(Claude Code / Cursor / Windsurf / Copilot / Codex / Zed / VS Code …)都读这一份。
|
|
4
|
+
|
|
5
|
+
## 1. 全局契约
|
|
6
|
+
|
|
7
|
+
### 目录分层
|
|
8
|
+
|
|
9
|
+
| 目录 | 含义 | 构建产物 |
|
|
10
|
+
|---|---|---|
|
|
11
|
+
| `<%= appContainer %>/` | 应用,可部署 | `dist/` |
|
|
12
|
+
| `<%= libContainer %>/` | 组件库,可发布 | `lib/` |
|
|
13
|
+
|
|
14
|
+
### 命令契约
|
|
15
|
+
|
|
16
|
+
| 命令 | 作用 |
|
|
17
|
+
|---|---|
|
|
18
|
+
| `npm create farris [name]` / `farris-cli create [name]` | 新建 workspace(可同时创建一个工程) |
|
|
19
|
+
| `farris-cli add-app <name>` | 添加应用 |
|
|
20
|
+
| `farris-cli add-lib <name>` | 添加组件库 |
|
|
21
|
+
| `farris-cli create-app [name]` | 在当前位置就地创建独立工程(不要用于 workspace 内) |
|
|
22
|
+
| `farris-cli workspace create [target]` | workspace 初始化(等价于 create) |
|
|
23
|
+
| `farris-cli workspace verify` | 校验 workspace 规范 |
|
|
24
|
+
|
|
25
|
+
### 根脚本
|
|
26
|
+
|
|
27
|
+
<%= commandTable %>
|
|
28
|
+
|
|
29
|
+
### 依赖契约
|
|
30
|
+
|
|
31
|
+
- 依赖版本统一由根 `pnpm-workspace.yaml` 的 `catalog:` 提供;子工程里属于 catalog 的依赖一律写 `"catalog:"`。
|
|
32
|
+
- 禁止手工 `npm install` 单个子包;禁止手改 `pnpm-workspace.yaml` 的 `packages` glob 或 `catalog` 版本。
|
|
33
|
+
- 根脚本一律 `pnpm --recursive --if-present run <script>`。**根目录没有 `dev` / `preview` 是有意为之**:长驻服务不递归执行,避免多工程抢端口、日志交织。
|
|
34
|
+
|
|
35
|
+
## 2. 工程类型差异速查表
|
|
36
|
+
|
|
37
|
+
| 关注点 | 应用 `<%= appContainer %>/<name>` | 组件库 `<%= libContainer %>/<name>` |
|
|
38
|
+
|---|---|---|
|
|
39
|
+
| 源码位置 | `src/` | `components/` 是**发布物唯一入口**;`src/` 仅供本地演示 |
|
|
40
|
+
| 构建 | `farris-cli build` | `farris-cli build-lib -ep && farris-cli build-components` |
|
|
41
|
+
| 产物 | `dist/` | `lib/` |
|
|
42
|
+
| 发版 | 不单独发版(`private: true`) | `pnpm changeset` |
|
|
43
|
+
| 测试 | `test/` 镜像 `src/` 路径 | `test/` 镜像 `components/` 与 `src/` 路径 |
|
|
44
|
+
|
|
45
|
+
**高频陷阱:** 组件写在组件库的 `src/` 下等于「写了但发不出去」——`farris-cli build-components` 只扫 `components/`。
|
|
46
|
+
|
|
47
|
+
## 3. 测试约定
|
|
48
|
+
|
|
49
|
+
测试路径 = 被测文件相对工程根的路径,前缀 `test/`,扩展名换成 `.spec.ts` / `.spec.tsx`:
|
|
50
|
+
|
|
51
|
+
```text
|
|
52
|
+
<%= libContainer %>/button/components/button/src/button.vue
|
|
53
|
+
→ <%= libContainer %>/button/test/components/button/src/button.spec.ts
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
工程内 `pnpm test` 跑本工程测试;根目录 `pnpm test` 递归跑全部工程。
|
|
57
|
+
|
|
58
|
+
## 4. 子工程清单
|
|
59
|
+
|
|
60
|
+
<!-- projects:start -->
|
|
61
|
+
<%= projectList %>
|
|
62
|
+
<!-- projects:end -->
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@AGENTS.md
|
|
@@ -2,8 +2,21 @@
|
|
|
2
2
|
|
|
3
3
|
<%= readmeBody %>
|
|
4
4
|
|
|
5
|
+
## 目录结构
|
|
6
|
+
|
|
7
|
+
```text
|
|
8
|
+
├── <%= appContainer %>/ # 应用(可部署)
|
|
9
|
+
├── <%= libContainer %>/ # 组件库(可发布)
|
|
10
|
+
├── AGENTS.md # AI 协作契约(唯一真源)
|
|
11
|
+
├── pnpm-workspace.yaml # workspace 配置与 catalog 依赖版本
|
|
12
|
+
└── package.json # 根脚本
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## 快速上手
|
|
16
|
+
|
|
5
17
|
```bash
|
|
6
18
|
pnpm install
|
|
7
|
-
pnpm dev
|
|
19
|
+
pnpm --filter <pkg> dev # 启动某个工程的开发服务器(根目录不提供 dev)
|
|
8
20
|
pnpm build
|
|
21
|
+
pnpm verify
|
|
9
22
|
```
|
|
@@ -5,9 +5,17 @@
|
|
|
5
5
|
"node": "^18.0.0 || >=20.0.0",
|
|
6
6
|
"pnpm": ">=9.0.0 <10.0.0"
|
|
7
7
|
},
|
|
8
|
+
"devDependencies": {
|
|
9
|
+
"@farris/cli": "catalog:"
|
|
10
|
+
},
|
|
8
11
|
"scripts": {
|
|
9
|
-
"
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
+
"build": "pnpm --recursive --if-present run build",
|
|
13
|
+
"test": "pnpm --recursive --if-present run test",
|
|
14
|
+
"typecheck": "pnpm --recursive --if-present run typecheck",
|
|
15
|
+
"lint": "pnpm --recursive --if-present run lint",
|
|
16
|
+
"format": "pnpm --recursive --if-present run format",
|
|
17
|
+
"verify": "farris-cli workspace verify",
|
|
18
|
+
"add-app": "farris-cli add-app",
|
|
19
|
+
"add-lib": "farris-cli add-lib"
|
|
12
20
|
}
|
|
13
21
|
}
|