@farris/cli 2.1.8 → 2.2.0-beta.2

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 (64) hide show
  1. package/lib/commands/build-components.js +40 -31
  2. package/lib/commands/build-components.js.map +1 -1
  3. package/lib/commands/build-lib.js +7 -7
  4. package/lib/commands/build-lib.js.map +1 -1
  5. package/lib/commands/create-app-options.js +73 -0
  6. package/lib/commands/create-app-options.js.map +1 -0
  7. package/lib/commands/create-app.js +71 -40
  8. package/lib/commands/create-app.js.map +1 -1
  9. package/lib/common/component-file-name.js +4 -0
  10. package/lib/common/component-file-name.js.map +1 -0
  11. package/lib/common/constant.js +1 -1
  12. package/lib/common/constant.js.map +1 -1
  13. package/lib/common/generate-app.js +45 -36
  14. package/lib/common/generate-app.js.map +1 -1
  15. package/lib/common/get-farris-config.js +19 -5
  16. package/lib/common/get-farris-config.js.map +1 -1
  17. package/lib/common/get-vite-config.js +7 -6
  18. package/lib/common/get-vite-config.js.map +1 -1
  19. package/lib/common/lib-package-exports.js +21 -0
  20. package/lib/common/lib-package-exports.js.map +1 -0
  21. package/lib/common/list-lib-components.js +24 -0
  22. package/lib/common/list-lib-components.js.map +1 -0
  23. package/lib/common/project-package-name.js +5 -0
  24. package/lib/common/project-package-name.js.map +1 -0
  25. package/lib/common/template-manifest.js +17 -0
  26. package/lib/common/template-manifest.js.map +1 -0
  27. package/lib/config/vite-component.js +9 -7
  28. package/lib/config/vite-component.js.map +1 -1
  29. package/lib/index.js +14 -5
  30. package/lib/index.js.map +1 -1
  31. package/lib/plugins/create-package-json.js +26 -11
  32. package/lib/plugins/create-package-json.js.map +1 -1
  33. package/package.json +3 -2
  34. package/templates/lib/.changeset/README.md +1 -0
  35. package/templates/lib/.changeset/config.json +11 -0
  36. package/templates/lib/.gitlab-ci.yml +62 -0
  37. package/templates/lib/README.md +3 -0
  38. package/templates/lib/components/button/button.spec.ts +8 -0
  39. package/templates/lib/components/button/index.ts +7 -0
  40. package/templates/lib/components/button/src/button.scss +10 -0
  41. package/templates/lib/components/button/src/button.vue +12 -0
  42. package/templates/lib/components/common/with-install.ts +9 -0
  43. package/templates/lib/components/index.ts +10 -0
  44. package/templates/lib/farris.config.mjs +13 -0
  45. package/templates/lib/index.html +12 -0
  46. package/templates/lib/package.json +26 -0
  47. package/templates/lib/src/App.vue +7 -0
  48. package/templates/lib/src/main.ts +4 -0
  49. package/templates/lib/tsconfig.json +7 -0
  50. package/templates/lib/vitest.config.ts +9 -0
  51. package/templates/mobile/.changeset/README.md +4 -0
  52. package/templates/mobile/.changeset/config.json +11 -0
  53. package/templates/mobile/.gitlab-ci.yml +63 -0
  54. package/templates/mobile/package.json +9 -2
  55. package/templates/mobile/project.json +4 -0
  56. package/templates/mobile/src/components/TheButton.spec.ts +8 -0
  57. package/templates/mobile/vitest.config.ts +9 -0
  58. package/templates/web/.changeset/README.md +4 -0
  59. package/templates/web/.changeset/config.json +11 -0
  60. package/templates/web/.gitlab-ci.yml +63 -0
  61. package/templates/web/package.json +9 -2
  62. package/templates/web/project.json +4 -0
  63. package/templates/web/src/components/TheButton.spec.ts +8 -0
  64. package/templates/web/vitest.config.ts +9 -0
@@ -0,0 +1,21 @@
1
+ export function buildLibPackageExports(componentNames, seen) {
2
+ const requirePath = seen.has('umd') ? './index.umd.js' : './index.esm.js';
3
+ const exports = {
4
+ '.': {
5
+ types: './types/index.d.ts',
6
+ import: './index.esm.js',
7
+ require: requirePath
8
+ },
9
+ './style.css': './index.css',
10
+ './index.css': './index.css'
11
+ };
12
+ componentNames.forEach((name) => {
13
+ exports[`./${name}`] = {
14
+ types: `./types/${name}/index.d.ts`,
15
+ import: `./components/${name}/index.esm.js`
16
+ };
17
+ exports[`./${name}/style.css`] = `./components/${name}/index.css`;
18
+ });
19
+ return { sideEffects: ['**/*.css'], exports };
20
+ }
21
+ //# sourceMappingURL=lib-package-exports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lib-package-exports.js","sourceRoot":"","sources":["../../src/common/lib-package-exports.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,sBAAsB,CACpC,cAAwB,EACxB,IAAiB;IAKjB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAC1E,MAAM,OAAO,GAAiF;QAC5F,GAAG,EAAE;YACH,KAAK,EAAE,oBAAoB;YAC3B,MAAM,EAAE,gBAAgB;YACxB,OAAO,EAAE,WAAW;SACrB;QACD,aAAa,EAAE,aAAa;QAC5B,aAAa,EAAE,aAAa;KAC7B,CAAC;IACF,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC9B,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG;YACrB,KAAK,EAAE,WAAW,IAAI,aAAa;YACnC,MAAM,EAAE,gBAAgB,IAAI,eAAe;SAC5C,CAAC;QACF,OAAO,CAAC,KAAK,IAAI,YAAY,CAAC,GAAG,gBAAgB,IAAI,YAAY,CAAC;IACpE,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,WAAW,EAAE,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC;AAChD,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { existsSync, lstatSync, readdirSync } from 'node:fs';
2
+ import { join } from 'node:path';
3
+ export const DEFAULT_EXCLUDE_COMPONENTS = [
4
+ 'property-panel',
5
+ 'dynamic-resolver',
6
+ 'dynamic-view'
7
+ ];
8
+ export function listLibComponents(rootDir, exclude = DEFAULT_EXCLUDE_COMPONENTS) {
9
+ const componentsDir = join(rootDir, 'components');
10
+ if (!existsSync(componentsDir) || !lstatSync(componentsDir).isDirectory()) {
11
+ return [];
12
+ }
13
+ const skip = new Set(exclude);
14
+ return readdirSync(componentsDir)
15
+ .filter((name) => {
16
+ if (skip.has(name)) {
17
+ return false;
18
+ }
19
+ const dir = join(componentsDir, name);
20
+ return lstatSync(dir).isDirectory() && existsSync(join(dir, 'index.ts'));
21
+ })
22
+ .sort();
23
+ }
24
+ //# sourceMappingURL=list-lib-components.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-lib-components.js","sourceRoot":"","sources":["../../src/common/list-lib-components.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,gBAAgB;IAChB,kBAAkB;IAClB,cAAc;CACf,CAAC;AAEF,MAAM,UAAU,iBAAiB,CAC/B,OAAe,EACf,UAAoB,0BAA0B;IAE9C,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAClD,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;QAC1E,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IAC9B,OAAO,WAAW,CAAC,aAAa,CAAC;SAC9B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACf,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACnB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QACtC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;IAC3E,CAAC,CAAC;SACD,IAAI,EAAE,CAAC;AACZ,CAAC"}
@@ -0,0 +1,5 @@
1
+ export function toProjectPackageName(name) {
2
+ const unscoped = name.replace(/^@[^/]+\//, '');
3
+ return `@farris/project-${unscoped}`;
4
+ }
5
+ //# sourceMappingURL=project-package-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-package-name.js","sourceRoot":"","sources":["../../src/common/project-package-name.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC/C,OAAO,mBAAmB,QAAQ,EAAE,CAAC;AACvC,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { resolve } from 'node:path';
2
+ import { getDirname } from './constant.js';
3
+ const APP_REPLACE_FILES = ['package.json', 'farris.config.mjs', 'index.html', 'project.json'];
4
+ const LIB_REPLACE_FILES = ['package.json', 'farris.config.mjs', 'README.md'];
5
+ export function resolveTemplate(input) {
6
+ if (input.type === 'lib') {
7
+ return { id: 'lib', replaceFiles: [...LIB_REPLACE_FILES] };
8
+ }
9
+ if (!input.platform) {
10
+ throw new Error('platform is required when type is app');
11
+ }
12
+ return { id: input.platform, replaceFiles: [...APP_REPLACE_FILES] };
13
+ }
14
+ export function getTemplateDir(id) {
15
+ return resolve(getDirname(import.meta.url), '../../templates', id);
16
+ }
17
+ //# sourceMappingURL=template-manifest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template-manifest.js","sourceRoot":"","sources":["../../src/common/template-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAS3C,MAAM,iBAAiB,GAAG,CAAC,cAAc,EAAE,mBAAmB,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;AAC9F,MAAM,iBAAiB,GAAG,CAAC,cAAc,EAAE,mBAAmB,EAAE,WAAW,CAAC,CAAC;AAE7E,MAAM,UAAU,eAAe,CAAC,KAG/B;IACC,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACzB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,GAAG,iBAAiB,CAAC,EAAE,CAAC;IAC7D,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC,GAAG,iBAAiB,CAAC,EAAE,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,EAAc;IAC3C,OAAO,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,iBAAiB,EAAE,EAAE,CAAC,CAAC;AACrE,CAAC"}
@@ -1,26 +1,28 @@
1
1
  import { mergeConfig } from 'vite';
2
- import CommonConfig from "./vite-common.js";
3
- import { replace } from "../plugins/replace.js";
4
- import { createComponentStyle } from "../plugins/create-component-style.js";
2
+ import CommonConfig from './vite-common.js';
3
+ import { replace } from '../plugins/replace.js';
4
+ import { createComponentStyle } from '../plugins/create-component-style.js';
5
5
  import { getPackageName } from '../common/constant.js';
6
+ import { componentFileName } from '../common/component-file-name.js';
6
7
  export default mergeConfig(CommonConfig, {
7
8
  logLevel: 'silent',
8
9
  plugins: [createComponentStyle(), replace((format, args) => `../${args[0]}/index.${format}.js`)],
9
10
  build: {
11
+ emptyOutDir: false,
10
12
  lib: {
11
- fileName: "index",
12
- formats: ["esm"],
13
+ fileName: (format, entryName) => componentFileName(format, entryName),
14
+ formats: ['es']
13
15
  },
14
16
  rollupOptions: {
15
17
  output: {
16
- exports: "named",
18
+ exports: 'named',
17
19
  globals: (id) => {
18
20
  if (id.includes(getPackageName())) {
19
21
  const name = id.split('/').pop() || '';
20
22
  return name.slice(0, 1).toUpperCase() + name.slice(1);
21
23
  }
22
24
  const map = {
23
- vue: "Vue"
25
+ vue: 'Vue'
24
26
  };
25
27
  return map[id];
26
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"vite-component.js","sourceRoot":"","sources":["../../src/config/vite-component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,YAAY,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,eAAe,WAAW,CAAC,YAAY,EAAE;IACvC,QAAQ,EAAE,QAAQ;IAClB,OAAO,EAAE,CAAC,oBAAoB,EAAE,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE,IAAI,EAAC,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,UAAU,MAAM,KAAK,CAAC,CAAC;IAC/F,KAAK,EAAC;QACJ,GAAG,EAAE;YACH,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,CAAC,KAAK,CAAC;SACjB;QACD,aAAa,EAAE;YACb,MAAM,EAAE;gBACN,OAAO,EAAE,OAAO;gBAChB,OAAO,EAAE,CAAC,EAAU,EAAC,EAAE;oBACrB,IAAG,EAAE,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,EAAE,CAAC;wBACjC,MAAM,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;wBACvC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACvD,CAAC;oBACD,MAAM,GAAG,GAA2B;wBAClC,GAAG,EAAE,KAAK;qBACX,CAAC;oBACF,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;aACF;SACF;KACF;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"vite-component.js","sourceRoot":"","sources":["../../src/config/vite-component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,YAAY,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE,eAAe,WAAW,CAAC,YAAY,EAAE;IACvC,QAAQ,EAAE,QAAQ;IAClB,OAAO,EAAE,CAAC,oBAAoB,EAAE,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,UAAU,MAAM,KAAK,CAAC,CAAC;IAChG,KAAK,EAAE;QACL,WAAW,EAAE,KAAK;QAClB,GAAG,EAAE;YACH,QAAQ,EAAE,CAAC,MAAc,EAAE,SAAiB,EAAE,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,SAAS,CAAC;YACrF,OAAO,EAAE,CAAC,IAAI,CAAC;SAChB;QACD,aAAa,EAAE;YACb,MAAM,EAAE;gBACN,OAAO,EAAE,OAAO;gBAChB,OAAO,EAAE,CAAC,EAAU,EAAE,EAAE;oBACtB,IAAI,EAAE,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,EAAE,CAAC;wBAClC,MAAM,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;wBACvC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACxD,CAAC;oBACD,MAAM,GAAG,GAA2B;wBAClC,GAAG,EAAE,KAAK;qBACX,CAAC;oBACF,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;aACF;SACF;KACF;CACF,CAAC,CAAC"}
package/lib/index.js CHANGED
@@ -52,11 +52,16 @@ program
52
52
  await buildCss(options);
53
53
  });
54
54
  program
55
- .command('create-app')
56
- .description('新建 App 模板 (旧版单体模板向后兼容)')
57
- .action(async () => {
55
+ .command('create-app [name]')
56
+ .description('新建 App / Lib 模板')
57
+ .option('--type <type>', '工程类型 (app | lib)')
58
+ .option('--platform <platform>', '应用平台 (web | mobile)')
59
+ .option('--formats <formats>', 'lib 产物格式,逗号分隔 (es,umd,systemjs)')
60
+ .option('--format <format>', 'app 产物格式 (es | umd | systemjs)')
61
+ .option('-y, --yes', '使用默认值,跳过问答')
62
+ .action(async (name, options) => {
58
63
  const { createApp } = await import('./commands/create-app.js');
59
- await createApp();
64
+ await createApp(name, options);
60
65
  });
61
66
  program
62
67
  .command('dev')
@@ -172,5 +177,9 @@ generateCmd
172
177
  const { generateApi } = await import('./commands/generate/api.js');
173
178
  await generateApi(name, options);
174
179
  });
175
- program.parse();
180
+ program.parseAsync(process.argv).catch((err) => {
181
+ const message = err instanceof Error ? err.message : String(err);
182
+ console.error(message);
183
+ process.exit(1);
184
+ });
176
185
  //# sourceMappingURL=index.js.map
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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"}
@@ -1,28 +1,43 @@
1
- import { readFileSync } from "node:fs";
2
- import { resolve } from "node:path";
3
- import { CWD } from "../common/constant.js";
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';
4
6
  export const createPackageJson = () => {
7
+ const seen = new Set();
5
8
  return {
6
9
  name: 'create-package-json',
7
- generateBundle() {
8
- const pkg = readFileSync(resolve(CWD, 'package.json'), 'utf-8');
9
- const packageJson = JSON.parse(pkg);
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'));
10
15
  const result = {
11
16
  name: '',
12
17
  version: '',
13
18
  private: false,
14
- main: './index.umd.js',
15
- module: './index.esm.js',
16
19
  types: './types/index.d.ts',
17
- style: './index.css',
20
+ style: './index.css'
18
21
  };
22
+ if (seen.has('es')) {
23
+ result.module = './index.esm.js';
24
+ if (!seen.has('umd')) {
25
+ result.main = './index.esm.js';
26
+ }
27
+ }
28
+ if (seen.has('umd')) {
29
+ result.main = './index.umd.js';
30
+ }
19
31
  const exclude = ['scripts', 'devDependencies', 'private'];
20
- Object.keys(packageJson).forEach(key => {
32
+ Object.keys(pkg).forEach((key) => {
21
33
  if (exclude.includes(key)) {
22
34
  return;
23
35
  }
24
- result[key] = packageJson[key];
36
+ result[key] = pkg[key];
25
37
  });
38
+ const extra = buildLibPackageExports(listLibComponents(process.cwd()), seen);
39
+ result.sideEffects = extra.sideEffects;
40
+ result.exports = extra.exports;
26
41
  this.emitFile({
27
42
  type: 'asset',
28
43
  fileName: 'package.json',
@@ -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;AAE5C,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAQ,EAAE;IACzC,OAAO;QACL,IAAI,EAAE,qBAAqB;QAC3B,cAAc;YACZ,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC;YAChE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACpC,MAAM,MAAM,GAAwB;gBAClC,IAAI,EAAE,EAAE;gBACR,OAAO,EAAE,EAAE;gBACX,OAAO,EAAE,KAAK;gBACd,IAAI,EAAE,gBAAgB;gBACtB,MAAM,EAAE,gBAAgB;gBACxB,KAAK,EAAE,oBAAoB;gBAC3B,KAAK,EAAE,aAAa;aACrB,CAAC;YACF,MAAM,OAAO,GAAG,CAAC,SAAS,EAAE,iBAAiB,EAAE,SAAS,CAAC,CAAC;YAC1D,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBACrC,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC1B,OAAO;gBACT,CAAC;gBACD,MAAM,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YACjC,CAAC,CAAC,CAAC;YAEH,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"}
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,CAAC;gBACzB,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YACxE,CAAC;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,CAAC;gBACnB,MAAM,CAAC,MAAM,GAAG,gBAAgB,CAAC;gBACjC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;oBACrB,MAAM,CAAC,IAAI,GAAG,gBAAgB,CAAC;gBACjC,CAAC;YACH,CAAC;YACD,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpB,MAAM,CAAC,IAAI,GAAG,gBAAgB,CAAC;YACjC,CAAC;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,CAAC;oBAC1B,OAAO;gBACT,CAAC;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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@farris/cli",
3
3
  "private": false,
4
- "version": "2.1.8",
4
+ "version": "2.2.0-beta.2",
5
5
  "type": "module",
6
6
  "typings": "lib/index.d.ts",
7
7
  "bin": {
@@ -41,6 +41,7 @@
41
41
  "@types/fs-extra": "^11.0.4",
42
42
  "@types/inquirer": "^9.0.7",
43
43
  "rimraf": "^5.0.7",
44
+ "vitest": "^1.6.1",
44
45
  "vue": "^3.5.13"
45
46
  }
46
- }
47
+ }
@@ -0,0 +1 @@
1
+ Use `npm run changeset` then `npm run version`.
@@ -0,0 +1,11 @@
1
+ {
2
+ "$schema": "https://unpkg.com/@changesets/config@3.0.2/schema.json",
3
+ "changelog": "@changesets/cli/changelog",
4
+ "commit": false,
5
+ "fixed": [],
6
+ "linked": [],
7
+ "access": "public",
8
+ "baseBranch": "main",
9
+ "updateInternalDependencies": "patch",
10
+ "ignore": []
11
+ }
@@ -0,0 +1,62 @@
1
+ image: node:20
2
+
3
+ variables:
4
+ PROJECT_ROOT: "."
5
+
6
+ stages:
7
+ - pre
8
+ - build
9
+ - publish
10
+ - publishproject
11
+
12
+ pre-job:
13
+ stage: pre
14
+ tags:
15
+ - environment:cloud
16
+ script:
17
+ - export commit_author=$(git log -1 --pretty=format:%an)
18
+ - export commit_email=$(git log -1 --pretty=format:%ce)
19
+
20
+ build-job:
21
+ stage: build
22
+ tags:
23
+ - environment:cloud
24
+ script:
25
+ - npm config set registry https://repos.iec.io/repository/npm-igix/
26
+ - npm config set _auth=$(echo -n $ARTIFACTS_REPO_USERNAME:$ARTIFACTS_REPO_PASSWORD | base64)
27
+ - npm i
28
+ - npm test
29
+ - npm run build
30
+ artifacts:
31
+ expire_in: '5days'
32
+ name: 'dist'
33
+ paths:
34
+ - $CI_PROJECT_DIR/lib
35
+
36
+ publish-one:
37
+ stage: publish
38
+ tags:
39
+ - environment:cloud
40
+ only:
41
+ refs:
42
+ - cicd
43
+ changes:
44
+ - package.json
45
+ script:
46
+ - npm config set registry https://repos.iec.io/repository/npm-igix-release/
47
+ - npm config set _auth=$(echo -n $ARTIFACTS_REPO_USERNAME:$ARTIFACTS_REPO_PASSWORD | base64)
48
+ - cd lib && npm publish
49
+
50
+ publish-project:
51
+ stage: publishproject
52
+ tags:
53
+ - environment:cloud
54
+ only:
55
+ refs:
56
+ - cicd
57
+ changes:
58
+ - project.json
59
+ script:
60
+ - npm config set registry https://repos.iec.io/repository/npm-igix-release/
61
+ - npm config set _auth=$(echo -n $ARTIFACTS_REPO_USERNAME:$ARTIFACTS_REPO_PASSWORD | base64)
62
+ - echo "skip publishproject: lib has no project.json"
@@ -0,0 +1,3 @@
1
+ # <%= name %>
2
+
3
+ `src/` 是本地演示应用,执行 `npm run dev` 启动。发布到 npm 的组件源码在 `components/`,执行 `npm run build` 打包。
@@ -0,0 +1,8 @@
1
+ import { describe, expect, it } from 'vitest';
2
+ import { Button } from './index';
3
+
4
+ describe('Button', () => {
5
+ it('exports a component', () => {
6
+ expect(Button).toBeTruthy();
7
+ });
8
+ });
@@ -0,0 +1,7 @@
1
+ import Button from './src/button.vue';
2
+ import { withInstall } from '../common/with-install';
3
+
4
+ const FButton = withInstall(Button);
5
+
6
+ export { FButton as Button };
7
+ export default FButton;
@@ -0,0 +1,10 @@
1
+ .f-button {
2
+ display: inline-flex;
3
+ align-items: center;
4
+ padding: 4px 12px;
5
+ }
6
+
7
+ .f-button--primary {
8
+ color: #fff;
9
+ background: #2e77e5;
10
+ }
@@ -0,0 +1,12 @@
1
+ <script setup lang="ts">
2
+ defineOptions({ name: 'Button' });
3
+ defineProps<{
4
+ type?: 'primary' | 'default';
5
+ }>();
6
+ </script>
7
+
8
+ <template>
9
+ <button class="f-button" :class="{ 'f-button--primary': type === 'primary' }">
10
+ <slot />
11
+ </button>
12
+ </template>
@@ -0,0 +1,9 @@
1
+ import type { App, Component } from 'vue';
2
+
3
+ export function withInstall<T extends Component>(component: T) {
4
+ const c = component as T & { install(app: App): void };
5
+ c.install = function (app: App) {
6
+ app.component(c.name as string, component);
7
+ };
8
+ return c;
9
+ }
@@ -0,0 +1,10 @@
1
+ import type { App } from 'vue';
2
+ import { Button } from './button';
3
+
4
+ export { Button };
5
+
6
+ export default {
7
+ install(app: App) {
8
+ app.use(Button);
9
+ }
10
+ };
@@ -0,0 +1,13 @@
1
+ export default {
2
+ packageName: '<%= name %>',
3
+ lib: {
4
+ entry: './components/index.ts',
5
+ name: '<%= libName %>',
6
+ formats: <%= formats %>,
7
+ fileName: (format) => (format === 'es' ? 'index.esm.js' : `index.${format}.js`)
8
+ },
9
+ outDir: './lib',
10
+ componentOutDir: './lib/components',
11
+ externalDependencies: true,
12
+ minify: true
13
+ };
@@ -0,0 +1,12 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Lib Demo</title>
7
+ </head>
8
+ <body>
9
+ <div id="app"></div>
10
+ <script type="module" src="/src/main.ts"></script>
11
+ </body>
12
+ </html>
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "<%= name %>",
3
+ "version": "0.0.0",
4
+ "private": false,
5
+ "type": "module",
6
+ "scripts": {
7
+ "dev": "farris-cli dev",
8
+ "build": "farris-cli build-lib -ep && farris-cli build-components",
9
+ "test": "vitest run",
10
+ "test:watch": "vitest",
11
+ "changeset": "changeset",
12
+ "version": "changeset version"
13
+ },
14
+ "peerDependencies": {
15
+ "vue": "^3.4.29"
16
+ },
17
+ "devDependencies": {
18
+ "@changesets/cli": "^2.29.5",
19
+ "@farris/cli": "<%= cliVersion %>",
20
+ "@vue/tsconfig": "^0.5.1",
21
+ "@vitejs/plugin-vue": "^4.0.0",
22
+ "typescript": "~5.4.0",
23
+ "vue": "^3.4.29",
24
+ "vitest": "^1.6.1"
25
+ }
26
+ }
@@ -0,0 +1,7 @@
1
+ <script setup lang="ts">
2
+ import { Button } from '../components';
3
+ </script>
4
+
5
+ <template>
6
+ <Button type="primary">Lib demo</Button>
7
+ </template>
@@ -0,0 +1,4 @@
1
+ import { createApp } from 'vue';
2
+ import App from './App.vue';
3
+
4
+ createApp(App).mount('#app');
@@ -0,0 +1,7 @@
1
+ {
2
+ "extends": "@vue/tsconfig/tsconfig.dom.json",
3
+ "include": ["components/**/*"],
4
+ "compilerOptions": {
5
+ "strict": true
6
+ }
7
+ }
@@ -0,0 +1,9 @@
1
+ import vue from '@vitejs/plugin-vue';
2
+ import { defineConfig } from 'vitest/config';
3
+
4
+ export default defineConfig({
5
+ plugins: [vue()],
6
+ test: {
7
+ include: ['components/**/*.spec.ts']
8
+ }
9
+ });
@@ -0,0 +1,4 @@
1
+ Use `npm run changeset` then `npm run version` to write CHANGELOG.md.
2
+
3
+ This app template is `private` and is not meant for `npm publish`.
4
+ If the default branch is not `main`, edit `baseBranch` in `config.json`.
@@ -0,0 +1,11 @@
1
+ {
2
+ "$schema": "https://unpkg.com/@changesets/config@3.0.2/schema.json",
3
+ "changelog": "@changesets/cli/changelog",
4
+ "commit": false,
5
+ "fixed": [],
6
+ "linked": [],
7
+ "access": "restricted",
8
+ "baseBranch": "main",
9
+ "updateInternalDependencies": "patch",
10
+ "ignore": []
11
+ }
@@ -0,0 +1,63 @@
1
+ image: node:20
2
+
3
+ variables:
4
+ PROJECT_ROOT: "."
5
+
6
+ stages:
7
+ - pre
8
+ - build
9
+ - publish
10
+ - publishproject
11
+
12
+ pre-job:
13
+ stage: pre
14
+ tags:
15
+ - environment:cloud
16
+ script:
17
+ - export commit_author=$(git log -1 --pretty=format:%an)
18
+ - export commit_email=$(git log -1 --pretty=format:%ce)
19
+
20
+ build-job:
21
+ stage: build
22
+ tags:
23
+ - environment:cloud
24
+ script:
25
+ - npm config set registry https://repos.iec.io/repository/npm-igix/
26
+ - npm config set _auth=$(echo -n $ARTIFACTS_REPO_USERNAME:$ARTIFACTS_REPO_PASSWORD | base64)
27
+ - npm i
28
+ - npm test
29
+ - npm run build
30
+ artifacts:
31
+ expire_in: '5days'
32
+ name: 'dist'
33
+ paths:
34
+ - $CI_PROJECT_DIR/dist
35
+
36
+ publish-one:
37
+ stage: publish
38
+ tags:
39
+ - environment:cloud
40
+ only:
41
+ refs:
42
+ - cicd
43
+ changes:
44
+ - packages/**/package.json
45
+ script:
46
+ - echo "skip publish-one: app package is private"
47
+
48
+ publish-project:
49
+ stage: publishproject
50
+ tags:
51
+ - environment:cloud
52
+ only:
53
+ refs:
54
+ - cicd
55
+ changes:
56
+ - project.json
57
+ script:
58
+ - npm config set registry https://repos.iec.io/repository/npm-igix-release/
59
+ - npm config set _auth=$(echo -n $ARTIFACTS_REPO_USERNAME:$ARTIFACTS_REPO_PASSWORD | base64)
60
+ - cp ./project.json ./dist
61
+ - cd ./dist
62
+ - mv ./project.json ./package.json
63
+ - npm publish
@@ -8,7 +8,11 @@
8
8
  "build": "farris-cli build",
9
9
  "preview": "farris-cli preview",
10
10
  "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore",
11
- "format": "prettier --write src/"
11
+ "format": "prettier --write src/",
12
+ "test": "vitest run",
13
+ "test:watch": "vitest",
14
+ "changeset": "changeset",
15
+ "version": "changeset version"
12
16
  },
13
17
  "dependencies": {
14
18
  "@farris/mobile-ui-vue": "latest",
@@ -16,14 +20,17 @@
16
20
  "vue-router": "^4.3.0"
17
21
  },
18
22
  "devDependencies": {
23
+ "@changesets/cli": "^2.29.5",
19
24
  "@farris/cli": "<%= cliVersion %>",
20
25
  "@rushstack/eslint-patch": "^1.8.0",
21
26
  "@vue/eslint-config-prettier": "^9.0.0",
22
27
  "@vue/eslint-config-typescript": "^13.0.0",
23
28
  "@vue/tsconfig": "^0.5.1",
29
+ "@vitejs/plugin-vue": "^4.0.0",
24
30
  "eslint": "^8.57.0",
25
31
  "eslint-plugin-vue": "^9.23.0",
26
32
  "prettier": "^3.2.5",
27
- "typescript": "~5.4.0"
33
+ "typescript": "~5.4.0",
34
+ "vitest": "^1.6.1"
28
35
  }
29
36
  }