@farris/cli 2.0.0-beta.7 → 2.0.0-beta.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 (149) hide show
  1. package/bin/index.js +2 -2
  2. package/lib/commands/build-components.js +21 -17
  3. package/lib/commands/build-components.js.map +1 -0
  4. package/lib/commands/build-css.js +30 -2
  5. package/lib/commands/build-css.js.map +1 -0
  6. package/lib/commands/build-lib.js +16 -6
  7. package/lib/commands/build-lib.js.map +1 -0
  8. package/lib/commands/build.js +11 -5
  9. package/lib/commands/build.js.map +1 -0
  10. package/lib/commands/create-app.js +2 -1
  11. package/lib/commands/create-app.js.map +1 -0
  12. package/lib/commands/dev-serve.js +3 -7
  13. package/lib/commands/dev-serve.js.map +1 -0
  14. package/lib/commands/preview-serve.js +1 -0
  15. package/lib/commands/preview-serve.js.map +1 -0
  16. package/lib/common/constant.js +1 -0
  17. package/lib/common/constant.js.map +1 -0
  18. package/lib/common/generate-app.js +1 -0
  19. package/lib/common/generate-app.js.map +1 -0
  20. package/lib/common/get-dependencies.js +1 -0
  21. package/lib/common/get-dependencies.js.map +1 -0
  22. package/lib/common/get-farris-config.js +3 -2
  23. package/lib/common/get-farris-config.js.map +1 -0
  24. package/lib/common/get-version.js +1 -0
  25. package/lib/common/get-version.js.map +1 -0
  26. package/lib/common/get-vite-config.js +16 -8
  27. package/lib/common/get-vite-config.js.map +1 -0
  28. package/lib/config/vite-app.js +10 -10
  29. package/lib/config/vite-app.js.map +1 -0
  30. package/lib/config/vite-common.js +21 -0
  31. package/lib/config/vite-common.js.map +1 -0
  32. package/lib/config/vite-component.js +30 -0
  33. package/lib/config/vite-component.js.map +1 -0
  34. package/lib/config/vite-lib.js +12 -20
  35. package/lib/config/vite-lib.js.map +1 -0
  36. package/lib/index.js +23 -1
  37. package/lib/index.js.map +1 -0
  38. package/lib/plugins/{gen-component-style.js → create-component-style.js} +6 -4
  39. package/lib/plugins/create-component-style.js.map +1 -0
  40. package/lib/plugins/create-package-json.js +34 -0
  41. package/lib/plugins/create-package-json.js.map +1 -0
  42. package/lib/plugins/dts.js +1 -0
  43. package/lib/plugins/dts.js.map +1 -0
  44. package/lib/plugins/html-system.js +1 -0
  45. package/lib/plugins/html-system.js.map +1 -0
  46. package/lib/plugins/replace.js +1 -0
  47. package/lib/plugins/replace.js.map +1 -0
  48. package/lib/plugins/systemjs-bundle.js +16 -0
  49. package/lib/plugins/systemjs-bundle.js.map +1 -0
  50. package/package.json +41 -38
  51. package/templates/lib/.eslintrc.cjs +15 -15
  52. package/templates/lib/.prettierrc.json +7 -7
  53. package/templates/lib/components/button/index.ts +7 -0
  54. package/templates/lib/components/button/src/button.component.tsx +84 -0
  55. package/templates/lib/components/button/src/button.props.ts +55 -0
  56. package/templates/lib/components/button/src/button.scss +179 -0
  57. package/templates/lib/components/common/index.ts +6 -0
  58. package/templates/lib/components/common/src/common.scss +4 -0
  59. package/templates/lib/components/common/src/compositions/index.ts +19 -0
  60. package/templates/lib/components/common/src/compositions/types.ts +6 -0
  61. package/templates/lib/components/common/src/compositions/use-bem/index.ts +46 -0
  62. package/templates/lib/components/common/src/compositions/use-click-away/index.ts +40 -0
  63. package/templates/lib/components/common/src/compositions/use-context/use-children-contexts.ts +40 -0
  64. package/templates/lib/components/common/src/compositions/use-context/use-parent-context.ts +24 -0
  65. package/templates/lib/components/common/src/compositions/use-event-listener/index.ts +45 -0
  66. package/templates/lib/components/common/src/compositions/use-expose/index.ts +9 -0
  67. package/templates/lib/components/common/src/compositions/use-lay-render/index.ts +17 -0
  68. package/templates/lib/components/common/src/compositions/use-link/index.ts +14 -0
  69. package/templates/lib/components/common/src/compositions/use-lock-scroll/index.ts +25 -0
  70. package/templates/lib/components/common/src/compositions/use-long-press/index.ts +141 -0
  71. package/templates/lib/components/common/src/compositions/use-momentum/index.ts +82 -0
  72. package/templates/lib/components/common/src/compositions/use-mount-component/index.ts +48 -0
  73. package/templates/lib/components/common/src/compositions/use-rect/index.ts +31 -0
  74. package/templates/lib/components/common/src/compositions/use-refs/index.ts +21 -0
  75. package/templates/lib/components/common/src/compositions/use-resize-observer/index.ts +85 -0
  76. package/templates/lib/components/common/src/compositions/use-resize-observer/utils.ts +37 -0
  77. package/templates/lib/components/common/src/compositions/use-scroll-parent/index.ts +42 -0
  78. package/templates/lib/components/common/src/compositions/use-touch/index.ts +82 -0
  79. package/templates/lib/components/common/src/compositions/use-touch-move/index.ts +120 -0
  80. package/templates/lib/components/common/src/entity/base-property.ts +129 -0
  81. package/templates/lib/components/common/src/entity/entity-schema.ts +274 -0
  82. package/templates/lib/components/common/src/entity/input-base-property.ts +285 -0
  83. package/templates/lib/components/common/src/style/animation/index.scss +150 -0
  84. package/templates/lib/components/common/src/style/base.scss +63 -0
  85. package/templates/lib/components/common/src/style/fonts/farris-mobile-icon.ttf +0 -0
  86. package/templates/lib/components/common/src/style/icon.scss +6 -0
  87. package/templates/lib/components/common/src/style/index.scss +4 -0
  88. package/templates/lib/components/common/src/style/mixins/bem.scss +204 -0
  89. package/templates/lib/components/common/src/style/mixins/border-radius.scss +13 -0
  90. package/templates/lib/components/common/src/style/mixins/ellipsis.scss +15 -0
  91. package/templates/lib/components/common/src/style/mixins/hairline.scss +113 -0
  92. package/templates/lib/components/common/src/style/mixins/index.scss +6 -0
  93. package/templates/lib/components/common/src/style/mixins/margin.scss +10 -0
  94. package/templates/lib/components/common/src/style/mixins/safe-area.scss +9 -0
  95. package/templates/lib/components/common/src/style/variables.scss +113 -0
  96. package/templates/lib/components/common/src/utils/index.ts +15 -0
  97. package/templates/lib/components/common/src/utils/src/common.ts +83 -0
  98. package/templates/lib/components/common/src/utils/src/date.ts +134 -0
  99. package/templates/lib/components/common/src/utils/src/dom/event.ts +37 -0
  100. package/templates/lib/components/common/src/utils/src/hook.ts +18 -0
  101. package/templates/lib/components/common/src/utils/src/number.ts +26 -0
  102. package/templates/lib/components/common/src/utils/src/query-filter.ts +40 -0
  103. package/templates/lib/components/common/src/utils/src/resove-asset.ts +33 -0
  104. package/templates/lib/components/common/src/utils/src/string.ts +18 -0
  105. package/templates/lib/components/common/src/utils/src/throttle.ts +41 -0
  106. package/templates/lib/components/common/src/utils/src/transition.ts +14 -0
  107. package/templates/lib/components/common/src/utils/src/type.ts +105 -0
  108. package/templates/lib/components/common/src/utils/src/use-appearance.ts +33 -0
  109. package/templates/lib/components/common/src/utils/src/with-install.ts +16 -0
  110. package/templates/lib/components/common/src/utils/src/with-register-designer.ts +16 -0
  111. package/templates/lib/components/common/src/utils/src/with-register.ts +16 -0
  112. package/templates/lib/components/common/types.ts +131 -0
  113. package/templates/lib/components/index.ts +0 -0
  114. package/templates/lib/farris.config.mjs +37 -16
  115. package/templates/lib/index.html +12 -12
  116. package/templates/lib/package.json +28 -28
  117. package/templates/lib/src/App.vue +80 -5
  118. package/templates/lib/src/components/TheButton.vue +3 -0
  119. package/templates/lib/src/main.ts +10 -9
  120. package/templates/lib/src/router/index.ts +23 -0
  121. package/templates/lib/src/views/AboutView.vue +15 -0
  122. package/templates/lib/src/views/HomeView.vue +9 -0
  123. package/templates/lib/tsconfig.json +19 -17
  124. package/templates/mobile/.eslintrc.cjs +15 -15
  125. package/templates/mobile/.prettierrc.json +7 -7
  126. package/templates/mobile/farris.config.mjs +1 -1
  127. package/templates/mobile/index.html +12 -12
  128. package/templates/mobile/package.json +28 -28
  129. package/templates/mobile/src/App.vue +80 -80
  130. package/templates/mobile/src/components/TheButton.vue +3 -3
  131. package/templates/mobile/src/main.ts +12 -12
  132. package/templates/mobile/src/router/index.ts +23 -23
  133. package/templates/mobile/src/views/AboutView.vue +15 -15
  134. package/templates/mobile/src/views/HomeView.vue +9 -9
  135. package/templates/mobile/tsconfig.json +17 -17
  136. package/templates/web/.eslintrc.cjs +15 -0
  137. package/templates/web/.prettierrc.json +8 -0
  138. package/templates/web/farris.config.mjs +24 -0
  139. package/templates/web/index.html +12 -0
  140. package/templates/web/package.json +29 -0
  141. package/templates/web/src/App.vue +80 -0
  142. package/templates/web/src/components/TheButton.vue +3 -0
  143. package/templates/web/src/main.ts +10 -0
  144. package/templates/web/src/router/index.ts +23 -0
  145. package/templates/web/src/views/AboutView.vue +15 -0
  146. package/templates/web/src/views/HomeView.vue +9 -0
  147. package/templates/web/tsconfig.json +18 -0
  148. package/templates/lib/packages/button/src/index.vue +0 -4
  149. package/templates/lib/packages/index.ts +0 -7
package/bin/index.js CHANGED
@@ -1,2 +1,2 @@
1
- #!/usr/bin/env node
2
- import '../lib/index.js';
1
+ #!/usr/bin/env node
2
+ import '../lib/index.js';
@@ -1,36 +1,40 @@
1
- import { readdirSync, lstatSync } from "node:fs";
1
+ import { readdirSync, lstatSync, existsSync } from "node:fs";
2
2
  import { resolve } from "node:path";
3
+ import ora from 'ora';
3
4
  import { buildCommon } from "./build.js";
5
+ import { buildCss } from "./build-css.js";
4
6
  import { CWD } from "../common/constant.js";
5
- import { replace } from "../plugins/replace.js";
6
- import { genComponentStyle } from "../plugins/gen-component-style.js";
7
+ const excludeComponents = ['property-panel', 'dynamic-resolver', 'dynamic-view'];
8
+ const BaseEntry = './components';
9
+ const BaseOutDir = './package/components';
7
10
  export async function buildComponents(options) {
8
11
  const components = readdirSync("./components").filter((name) => {
9
12
  const componentDir = resolve(CWD, `./components`, name);
10
13
  const isDir = lstatSync(componentDir).isDirectory();
11
14
  return isDir && readdirSync(componentDir).includes("index.ts");
12
- });
15
+ }).filter(name => !excludeComponents.includes(name));
16
+ const spinner = ora(`build components begin`).start();
13
17
  components.forEach(async (component) => {
14
- const entry = resolve(CWD, `./components/${component}/index.ts`);
15
- const outDir = resolve(CWD, `./package/${component}`);
18
+ const entry = resolve(CWD, `${BaseEntry}/${component}/index.ts`);
19
+ const outDir = resolve(CWD, `${BaseOutDir}/${component}`);
16
20
  const config = {
17
- publicDir: false,
21
+ publicDir: '',
18
22
  build: {
19
23
  lib: {
20
24
  entry
21
25
  },
22
26
  outDir
23
- },
24
- plugins: [genComponentStyle(), replace((format, args) => `..${args[1]}/index.${format}.js`)]
27
+ }
25
28
  };
26
- console.log(`build ${component} begin`);
27
- await buildCommon({ ...options, config, type: 'lib' });
28
- console.log(`build ${component} success`);
29
- // const cssEntry = `./components/${component}/src/${component}.scss`;
30
- // if(!existsSync(cssEntry)) {
31
- // return;
32
- // }
33
- // await buildCss({...options,entry: cssEntry, outfile: `./package/${component}/index.css` });
29
+ spinner.text = `building ${component}`;
30
+ await buildCommon({ ...options, config, type: 'component' });
31
+ spinner.succeed(`build ${component} success`);
32
+ const cssEntry = `${BaseEntry}/${component}/src/${component}.scss`;
33
+ if (!existsSync(cssEntry)) {
34
+ return;
35
+ }
36
+ await buildCss({ ...options, entry: cssEntry, outfile: `${BaseOutDir}/${component}/index.css`, showSpinner: false });
34
37
  });
35
38
  }
36
39
  ;
40
+ //# sourceMappingURL=build-components.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-components.js","sourceRoot":"","sources":["../../src/commands/build-components.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAsB,WAAW,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,MAAM,iBAAiB,GAAG,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,cAAc,CAAC,CAAC;AAEjF,MAAM,SAAS,GAAG,cAAc,CAAC;AACjC,MAAM,UAAU,GAAG,sBAAsB,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAA2B;IAE/D,MAAM,UAAU,GAAG,WAAW,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QAC7D,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;QACxD,MAAM,KAAK,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;QAEpD,OAAO,KAAK,IAAI,WAAW,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAA,EAAE,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAEpD,MAAM,OAAO,GAAG,GAAG,CAAC,wBAAwB,CAAC,CAAC,KAAK,EAAE,CAAC;IAEtD,UAAU,CAAC,OAAO,CAAC,KAAK,EAAC,SAAS,EAAA,EAAE;QAClC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,SAAS,IAAI,SAAS,WAAW,CAAC,CAAC;QACjE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,UAAU,IAAI,SAAS,EAAE,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG;YACb,SAAS,EAAE,EAAE;YACb,KAAK,EAAE;gBACL,GAAG,EAAC;oBACF,KAAK;iBACN;gBACD,MAAM;aACP;SACF,CAAC;QAEF,OAAO,CAAC,IAAI,GAAG,YAAY,SAAS,EAAE,CAAC;QAEvC,MAAM,WAAW,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAG,CAAC,CAAC;QAE9D,OAAO,CAAC,OAAO,CAAC,SAAS,SAAS,UAAU,CAAC,CAAC;QAE9C,MAAM,QAAQ,GAAG,GAAG,SAAS,IAAI,SAAS,QAAQ,SAAS,OAAO,CAAC;QACnE,IAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;YACxB,OAAO;SACR;QACD,MAAM,QAAQ,CAAC,EAAC,GAAG,OAAO,EAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,UAAU,IAAI,SAAS,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;IACrH,CAAC,CAAC,CAAC;AAEL,CAAC;AAAA,CAAC"}
@@ -1,11 +1,39 @@
1
1
  import { build } from "esbuild";
2
2
  import { sassPlugin } from 'esbuild-sass-plugin';
3
+ import path from 'node:path';
4
+ import { CWD } from "../common/constant.js";
5
+ import ora from "ora";
6
+ const replaceUrl = (source, pathname, entry) => {
7
+ const basedir = path.dirname(pathname);
8
+ const entrydir = path.resolve(CWD, path.dirname(entry));
9
+ const relativedir = path.relative(entrydir, basedir);
10
+ const regExp = /(url\(['"]?)(\.\.?\/[^'")]+['"]?)(\))/g;
11
+ return source.replace(regExp, (substring, ...args) => `url(./${path.join(relativedir, args[1]).replaceAll('\\', '/')})`);
12
+ };
3
13
  export async function buildCss(options) {
4
- const { entry, outfile } = options;
14
+ const { entry, outfile, minify = false, showSpinner = true } = options;
15
+ const spinner = ora(`build css begin`).start();
16
+ spinner.text = `building css`;
17
+ if (!showSpinner) {
18
+ spinner.stop();
19
+ }
5
20
  await build({
6
21
  entryPoints: [entry],
7
22
  outfile,
23
+ minify,
8
24
  bundle: true,
9
- plugins: [sassPlugin()],
25
+ logLevel: 'error',
26
+ plugins: [sassPlugin({
27
+ precompile(source, pathname) {
28
+ return replaceUrl(source, pathname, entry);
29
+ }
30
+ })],
31
+ loader: {
32
+ '.ttf': 'dataurl'
33
+ }
10
34
  });
35
+ if (showSpinner) {
36
+ spinner.succeed(`build css success`);
37
+ }
11
38
  }
39
+ //# sourceMappingURL=build-css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-css.js","sourceRoot":"","sources":["../../src/commands/build-css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,QAAgB,EAAE,KAAa,EAAC,EAAE;IACpE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,wCAAwC,CAAC;IACxD,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,GAAG,IAAI,EAAC,EAAE,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;AAC1H,CAAC,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAAY;IACzC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,KAAK,EAAE,WAAW,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAEvE,MAAM,OAAO,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAC,KAAK,EAAE,CAAC;IAC/C,OAAO,CAAC,IAAI,GAAG,cAAc,CAAC;IAE9B,IAAG,CAAC,WAAW,EAAE;QACf,OAAO,CAAC,IAAI,EAAE,CAAC;KAChB;IAGD,MAAM,KAAK,CAAC;QACV,WAAW,EAAE,CAAC,KAAK,CAAC;QACpB,OAAO;QACP,MAAM;QACN,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,OAAO;QACjB,OAAO,EAAE,CAAC,UAAU,CAAC;gBACnB,UAAU,CAAC,MAAM,EAAE,QAAQ;oBACzB,OAAO,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;gBAC7C,CAAC;aACF,CAAC,CAAC;QACH,MAAM,EAAE;YACN,MAAM,EAAE,SAAS;SAClB;KACF,CAAC,CAAC;IAEH,IAAG,WAAW,EAAE;QACd,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;KACtC;AACH,CAAC"}
@@ -1,16 +1,26 @@
1
+ import ora from 'ora';
1
2
  import { buildCommon } from "./build.js";
2
3
  import { generateTypes } from "../plugins/dts.js";
4
+ // import { buildCss } from './build-css.js';
5
+ import { createPackageJson } from '../plugins/create-package-json.js';
3
6
  export async function buildLib(options) {
4
- const { dts = false } = options;
7
+ const { dts = true, emitPackage } = options;
5
8
  const config = {
6
- publicDir: false,
9
+ publicDir: '',
7
10
  plugins: [
8
- dts && generateTypes("./components", "./package/types")
11
+ dts && generateTypes("./components", "./package/types"),
12
+ emitPackage && createPackageJson()
9
13
  ]
10
14
  };
11
- console.log(`build lib begin`);
15
+ const spinner = ora(`build lib begin`).start();
16
+ spinner.text = `building lib`;
12
17
  await buildCommon({ ...options, config, type: 'lib' });
13
- console.log(`build lib success`);
14
- // await buildCss({...options, entry: "./components/index.scss", outfile: "./package/index.css"});
18
+ // const { css } = libConfig.build;
19
+ // if (existsSync(css.entry)) {
20
+ // spinner.text = `building css`;
21
+ // await buildCss({ entry: css.entry, outfile: css.outfile });
22
+ // }
23
+ spinner.succeed(`build lib success`);
15
24
  }
16
25
  ;
26
+ //# sourceMappingURL=build-lib.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-lib.js","sourceRoot":"","sources":["../../src/commands/build-lib.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,WAAW,EAAsB,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,6CAA6C;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAQtE,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAAwB;IAErD,MAAM,EAAE,GAAG,GAAG,IAAI,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAC5C,MAAM,MAAM,GAAG;QACb,SAAS,EAAE,EAAE;QACb,OAAO,EAAE;YACP,GAAG,IAAI,aAAa,CAAC,cAAc,EAAE,iBAAiB,CAAC;YACvD,WAAW,IAAI,iBAAiB,EAAE;SACnC;KACF,CAAC;IACF,MAAM,OAAO,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAC,KAAK,EAAE,CAAC;IAE/C,OAAO,CAAC,IAAI,GAAG,cAAc,CAAC;IAE9B,MAAM,WAAW,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAEvD,mCAAmC;IAEnC,+BAA+B;IAC/B,mCAAmC;IACnC,gEAAgE;IAChE,IAAI;IAEJ,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;AACvC,CAAC;AAAA,CAAC"}
@@ -1,10 +1,16 @@
1
1
  import { build, mergeConfig, loadConfigFromFile } from 'vite';
2
2
  import { getViteConfig } from '../common/get-vite-config.js';
3
- export async function buildCommon(options) {
4
- const { configFile, config, type } = options;
5
- const viteConfig = await loadConfigFromFile({ command: 'build', mode: 'production' }, configFile);
6
- const defaultConfig = await getViteConfig(type);
7
- const libConfig = mergeConfig(mergeConfig(defaultConfig, viteConfig ? viteConfig.config : {}), config);
3
+ export async function buildCommon(options, loadFile = true) {
4
+ const { configFile, viteConfigFile, config = {}, type } = options;
5
+ if (!loadFile) {
6
+ await build(config);
7
+ return config;
8
+ }
9
+ const viteConfig = await loadConfigFromFile({ command: 'build', mode: 'production' }, viteConfigFile);
10
+ const defaultConfig = await getViteConfig(type, configFile);
11
+ const libConfig = mergeConfig(mergeConfig(defaultConfig, viteConfigFile && viteConfig?.config ? viteConfig.config : {}), config);
8
12
  await build(libConfig);
13
+ return libConfig;
9
14
  }
10
15
  ;
16
+ //# sourceMappingURL=build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAc,MAAM,MAAM,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAS7D,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAA2B,EAAE,QAAQ,GAAG,IAAI;IAC5E,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,GAAG,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAElE,IAAG,CAAC,QAAQ,EAAE;QACZ,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;QACpB,OAAO,MAAM,CAAC;KACf;IAED,MAAM,UAAU,GAAG,MAAM,kBAAkB,CAAC,EAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAC,EAAE,cAAc,CAAC,CAAC;IAEpG,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAE5D,MAAM,SAAS,GAAE,WAAW,CAAC,WAAW,CAAC,aAAa,EAAE,cAAc,IAAI,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAEhI,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;IAEvB,OAAO,SAAS,CAAC;AACnB,CAAC;AAAA,CAAC"}
@@ -18,7 +18,7 @@ const questions = [
18
18
  type: "list",
19
19
  name: "platform",
20
20
  message: "What platform of project is this?",
21
- choices: ["pc", "mobile"],
21
+ choices: ["web", "mobile"],
22
22
  when: (response) => {
23
23
  const { type } = response;
24
24
  return type === 'app';
@@ -52,3 +52,4 @@ export async function createApp() {
52
52
  generateApp(response);
53
53
  }
54
54
  ;
55
+ //# sourceMappingURL=create-app.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-app.js","sourceRoot":"","sources":["../../src/commands/create-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,MAAM,MAAM,GAAG,QAAQ,CAAC,kBAAkB,EAAE,CAAC;AAE7C,MAAM,SAAS,GAAG;IAChB;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,4BAA4B;QACrC,OAAO,EAAE,YAAY;KACtB;IACD;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,+BAA+B;QACxC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;KACxB;IACD;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,mCAAmC;QAC5C,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC;QAC1B,IAAI,EAAE,CAAC,QAAa,EAAE,EAAE;YACtB,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;YAC1B,OAAO,IAAI,KAAK,KAAK,CAAC;QACxB,CAAC;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,wCAAwC;QACjD,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC;QAClC,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QACtB,IAAI,EAAE,CAAC,QAAa,EAAE,EAAE;YACtB,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;YAC1B,OAAO,IAAI,KAAK,KAAK,CAAC;QACxB,CAAC;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,wCAAwC;QACjD,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC;QAClC,OAAO,EAAE,CAAC,IAAI,CAAC;QACf,IAAI,EAAE,CAAC,QAAa,EAAE,EAAE;YACtB,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;YAC1B,OAAO,IAAI,KAAK,KAAK,CAAC;QACxB,CAAC;KACF;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;IAEzC,WAAW,CAAC,QAAQ,CAAC,CAAC;AACxB,CAAC;AAAA,CAAC"}
@@ -3,21 +3,17 @@ import { getViteConfig } from '../common/get-vite-config.js';
3
3
  export const devServe = async (options) => {
4
4
  const { port = 1337, host = true } = options;
5
5
  const config = await getViteConfig();
6
- const devConfig = mergeConfig({
6
+ const devConfig = mergeConfig(config, {
7
7
  configFile: false,
8
8
  mode: 'dev',
9
- define: {
10
- __VUE_OPTIONS_API__: 'true',
11
- __VUE_PROD_DEVTOOLS__: 'true',
12
- __VUE_PROD_HYDRATION_MISMATCH_DETAILS__: 'true'
13
- },
14
9
  server: {
15
10
  port,
16
11
  host,
17
12
  hmr: true
18
13
  }
19
- }, config);
14
+ });
20
15
  const server = await createServer(devConfig);
21
16
  await server.listen();
22
17
  server.printUrls();
23
18
  };
19
+ //# sourceMappingURL=dev-serve.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-serve.js","sourceRoot":"","sources":["../../src/commands/dev-serve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAO7D,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAAE,OAAqB,EAAE,EAAE;IACtD,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAE7C,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC;IAErC,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,EAAE;QACpC,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE,KAAK;QACX,MAAM,EAAE;YACN,IAAI;YACJ,IAAI;YACJ,GAAG,EAAE,IAAI;SACV;KACF,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,CAAC;IAC7C,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;IAEtB,MAAM,CAAC,SAAS,EAAE,CAAC;AACrB,CAAC,CAAC"}
@@ -14,3 +14,4 @@ export const previewServe = async (options) => {
14
14
  const server = await preview(previewConfig);
15
15
  server.printUrls();
16
16
  };
17
+ //# sourceMappingURL=preview-serve.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview-serve.js","sourceRoot":"","sources":["../../src/commands/preview-serve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAO7D,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,OAAuB,EAAE,EAAE;IAC5D,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAE7C,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC;IACrC,MAAM,aAAa,GAAG,WAAW,CAAC;QAChC,UAAU,EAAE,KAAK;QACjB,OAAO,EAAE;YACP,IAAI;YACJ,IAAI;YACJ,IAAI,EAAE,IAAI;SACX;KACF,EAAE,MAAM,CAAC,CAAC;IAEX,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;IAE5C,MAAM,CAAC,SAAS,EAAE,CAAC;AACrB,CAAC,CAAC"}
@@ -16,3 +16,4 @@ export const getDirname = (url) => fileURLToPath(new URL('.', url));
16
16
  export const CWD = process.cwd();
17
17
  export const ROOT = findRootDir(CWD);
18
18
  export const FAARIS_CONFIG_FILE = join(CWD, 'farris.config.mjs');
19
+ //# sourceMappingURL=constant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constant.js","sourceRoot":"","sources":["../../src/common/constant.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAE1C,SAAS,WAAW,CAAC,GAAW;IAC9B,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,EAAE;QAC7C,OAAO,GAAG,CAAC;KACZ;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC/B,IAAI,GAAG,KAAK,SAAS,EAAE;QACrB,OAAO,GAAG,CAAC;KACZ;IAED,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;AAChC,CAAC;AACD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAW,EAAC,EAAE,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAE3E,aAAa;AAEb,MAAM,CAAC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AACjC,MAAM,CAAC,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;AACrC,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC"}
@@ -42,3 +42,4 @@ export const generateApp = (options) => {
42
42
  console.log(`cd ${name}`);
43
43
  console.log(`npm install or yarn`);
44
44
  };
45
+ //# sourceMappingURL=generate-app.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-app.js","sourceRoot":"","sources":["../../src/common/generate-app.ts"],"names":[],"mappings":"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"}
@@ -7,3 +7,4 @@ export const getDependencies = () => {
7
7
  const { dependencies, peerDependencies } = packageJson;
8
8
  return [...Object.keys(dependencies || {}), ...Object.keys(peerDependencies || {})];
9
9
  };
10
+ //# sourceMappingURL=get-dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-dependencies.js","sourceRoot":"","sources":["../../src/common/get-dependencies.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,eAAe,GAAG,GAAG,EAAE;IAClC,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC;IAChE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACpC,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,GAAG,WAAW,CAAC;IAEvD,OAAO,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC,CAAC;AACtF,CAAC,CAAC"}
@@ -1,11 +1,12 @@
1
1
  import { pathToFileURL } from 'node:url';
2
2
  import { FAARIS_CONFIG_FILE } from './constant.js';
3
- async function getFarrisConfigAsync() {
3
+ async function getFarrisConfigAsync(configFile = FAARIS_CONFIG_FILE) {
4
4
  try {
5
- return (await import(pathToFileURL(FAARIS_CONFIG_FILE).href)).default;
5
+ return (await import(pathToFileURL(configFile).href)).default;
6
6
  }
7
7
  catch (err) {
8
8
  return {};
9
9
  }
10
10
  }
11
11
  export { getFarrisConfigAsync };
12
+ //# sourceMappingURL=get-farris-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-farris-config.js","sourceRoot":"","sources":["../../src/common/get-farris-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,KAAK,UAAU,oBAAoB,CAAC,UAAU,GAAE,kBAAkB;IAChE,IAAI;QACF,OAAO,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;KAC/D;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,EAAE,CAAC;KACX;AACH,CAAC;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
@@ -4,3 +4,4 @@ const packageJson = require('../../package.json');
4
4
  export const getVersion = () => {
5
5
  return packageJson.version;
6
6
  };
7
+ //# sourceMappingURL=get-version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-version.js","sourceRoot":"","sources":["../../src/common/get-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE/C,MAAM,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAElD,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE;IAC7B,OAAO,WAAW,CAAC,OAAO,CAAC;AAC7B,CAAC,CAAC"}
@@ -1,23 +1,30 @@
1
1
  import { mergeConfig } from 'vite';
2
2
  import { getFarrisConfigAsync } from './get-farris-config.js';
3
3
  import { getDependencies } from '../common/get-dependencies.js';
4
+ import cssInjectedByJsPlugin from 'vite-plugin-css-injected-by-js';
4
5
  const formatFarrisConfig = (farrisConfig, type) => {
5
- const { lib, format, minify = true, externals = { include: [], exclude: [] }, externalDependencies, plugins, alias } = farrisConfig;
6
+ const { lib, format, target, minify = true, outDir, externals = { include: [], exclude: [] }, externalDependencies, plugins = [], alias, server, cssInjected } = farrisConfig;
6
7
  const dependencies = externalDependencies ? getDependencies() : [];
7
8
  let external = externals.include ? [...externals.include, ...dependencies] : dependencies;
8
- external = external.filter(item => !externals.exclude?.includes(item));
9
+ external = external.filter((item) => !externals.exclude?.includes(item));
9
10
  format && (process.env.FARRIS_FORMAT = format);
11
+ if (cssInjected) {
12
+ plugins.push(cssInjectedByJsPlugin());
13
+ }
10
14
  const viteConfig = {
11
15
  build: {
16
+ target,
12
17
  minify,
13
18
  lib: type === 'lib' ? lib : undefined,
14
19
  rollupOptions: {
15
20
  output: {
16
21
  format
17
22
  },
18
- external
19
- }
23
+ external: externals.filter ? externals.filter(external) : external
24
+ },
25
+ outDir
20
26
  },
27
+ server,
21
28
  plugins,
22
29
  resolve: {
23
30
  alias
@@ -25,14 +32,15 @@ const formatFarrisConfig = (farrisConfig, type) => {
25
32
  };
26
33
  return viteConfig;
27
34
  };
28
- const formatViteConfig = async (type) => {
29
- const { viteConfig = {}, ...farrisConfig } = await getFarrisConfigAsync();
35
+ const formatViteConfig = async (type, configFile) => {
36
+ const { viteConfig = {}, ...farrisConfig } = await getFarrisConfigAsync(configFile);
30
37
  const customViteConfig = formatFarrisConfig(farrisConfig, type);
31
38
  return mergeConfig(customViteConfig, viteConfig);
32
39
  };
33
- const getViteConfig = async (type = 'app') => {
34
- const viteConfig = await formatViteConfig(type);
40
+ const getViteConfig = async (type = 'app', configFile) => {
41
+ const viteConfig = await formatViteConfig(type, configFile);
35
42
  const { default: defaultViteConfig } = await import(`../config/vite-${type}.js`);
36
43
  return mergeConfig(defaultViteConfig, viteConfig);
37
44
  };
38
45
  export { getViteConfig };
46
+ //# sourceMappingURL=get-vite-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-vite-config.js","sourceRoot":"","sources":["../../src/common/get-vite-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8C,WAAW,EAAiB,MAAM,MAAM,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,qBAAqB,MAAM,gCAAgC,CAAC;AAgBnE,MAAM,kBAAkB,GAAG,CAAC,YAA0B,EAAE,IAAY,EAAE,EAAE;IACtE,MAAM,EACJ,GAAG,EACH,MAAM,EACN,MAAM,EACN,MAAM,GAAG,IAAI,EACb,MAAM,EACN,SAAS,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EACxC,oBAAoB,EACpB,OAAO,GAAG,EAAE,EACZ,KAAK,EACL,MAAM,EACN,WAAW,EACZ,GAAG,YAAY,CAAC;IAEjB,MAAM,YAAY,GAAG,oBAAoB,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEnE,IAAI,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,OAAO,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;IAE1F,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAEzE,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,MAAM,CAAC,CAAC;IAE/C,IAAG,WAAW,EAAC;QACb,OAAO,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC;KACvC;IAED,MAAM,UAAU,GAAG;QACjB,KAAK,EAAE;YACL,MAAM;YACN,MAAM;YACN,GAAG,EAAE,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;YACrC,aAAa,EAAE;gBACb,MAAM,EAAE;oBACN,MAAM;iBACP;gBACD,QAAQ,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ;aACnE;YACD,MAAM;SACP;QACD,MAAM;QACN,OAAO;QACP,OAAO,EAAE;YACP,KAAK;SACN;KACF,CAAC;IACF,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,KAAK,EAAE,IAAY,EAAE,UAAmB,EAAE,EAAE;IACnE,MAAM,EAAE,UAAU,GAAG,EAAE,EAAE,GAAG,YAAY,EAAE,GAAG,MAAM,oBAAoB,CAAC,UAAU,CAAC,CAAC;IACpF,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAEhE,OAAO,WAAW,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,KAAK,EAAE,IAAI,GAAG,KAAK,EAAE,UAAmB,EAAE,EAAE;IAChE,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC5D,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,IAAI,KAAK,CAAC,CAAC;IAEjF,OAAO,WAAW,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF,OAAO,EAAE,aAAa,EAAE,CAAC"}
@@ -1,14 +1,14 @@
1
- import vue from '@vitejs/plugin-vue';
2
- import vueJsx from '@vitejs/plugin-vue-jsx';
3
- import { CWD } from '../common/constant.js';
1
+ import { mergeConfig } from 'vite';
4
2
  import { htmlSystemPlugin } from '../plugins/html-system.js';
5
- export default {
6
- root: CWD,
7
- base: './',
8
- // logLevel: 'silent',
3
+ import CommonConfig from "./vite-common.js";
4
+ export default mergeConfig(CommonConfig, {
5
+ define: {
6
+ __VUE_OPTIONS_API__: 'true',
7
+ __VUE_PROD_DEVTOOLS__: 'true',
8
+ __VUE_PROD_HYDRATION_MISMATCH_DETAILS__: 'true'
9
+ },
9
10
  plugins: [
10
- vue(),
11
- vueJsx(),
12
11
  process.env.FARRIS_FORMAT === 'systemjs' && htmlSystemPlugin()
13
12
  ]
14
- };
13
+ });
14
+ //# sourceMappingURL=vite-app.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite-app.js","sourceRoot":"","sources":["../../src/config/vite-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,YAAY,MAAM,kBAAkB,CAAC;AAE5C,eAAe,WAAW,CAAC,YAAY,EAAE;IACvC,MAAM,EAAE;QACN,mBAAmB,EAAE,MAAM;QAC3B,qBAAqB,EAAE,MAAM;QAC7B,uCAAuC,EAAE,MAAM;KAChD;IACD,OAAO,EAAE;QACP,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,UAAU,IAAI,gBAAgB,EAAE;KAC/D;CACF,CAAC,CAAC"}
@@ -0,0 +1,21 @@
1
+ import vue from '@vitejs/plugin-vue';
2
+ import vueJsx from '@vitejs/plugin-vue-jsx';
3
+ import { CWD } from '../common/constant.js';
4
+ export default {
5
+ root: CWD,
6
+ base: './',
7
+ plugins: [
8
+ vue(),
9
+ vueJsx()
10
+ ],
11
+ configFile: false,
12
+ css: {
13
+ preprocessorOptions: {
14
+ scss: {
15
+ api: 'modern-compiler',
16
+ silenceDeprecations: ['global-builtin', 'legacy-js-api']
17
+ },
18
+ }
19
+ }
20
+ };
21
+ //# sourceMappingURL=vite-common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite-common.js","sourceRoot":"","sources":["../../src/config/vite-common.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,oBAAoB,CAAC;AACrC,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,eAAe;IACb,IAAI,EAAE,GAAG;IACT,IAAI,EAAE,IAAI;IACV,OAAO,EAAE;QACP,GAAG,EAAE;QACL,MAAM,EAAE;KACT;IACD,UAAU,EAAE,KAAK;IACjB,GAAG,EAAE;QACH,mBAAmB,EAAE;YACnB,IAAI,EAAE;gBACJ,GAAG,EAAE,iBAAiB;gBACtB,mBAAmB,EAAE,CAAC,gBAAgB,EAAE,eAAe,CAAC;aACzD;SACF;KACF;CACF,CAAC"}
@@ -0,0 +1,30 @@
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";
5
+ export default mergeConfig(CommonConfig, {
6
+ logLevel: 'silent',
7
+ plugins: [createComponentStyle(), replace((format, args) => `..${args[1]}/index.${format}.js`)],
8
+ build: {
9
+ lib: {
10
+ fileName: "index",
11
+ formats: ["esm"],
12
+ },
13
+ rollupOptions: {
14
+ output: {
15
+ exports: "named",
16
+ globals: (id) => {
17
+ if (id.includes('@components')) {
18
+ const name = id.split('/').pop() || '';
19
+ return name.slice(0, 1).toUpperCase() + name.slice(1);
20
+ }
21
+ const map = {
22
+ vue: "Vue"
23
+ };
24
+ return map[id];
25
+ }
26
+ }
27
+ }
28
+ }
29
+ });
30
+ //# sourceMappingURL=vite-component.js.map
@@ -0,0 +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;AAE5E,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,KAAK,IAAI,CAAC,CAAC,CAAC,UAAU,MAAM,KAAK,CAAC,CAAC;IAC9F,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,aAAa,CAAC,EAAE;wBAC7B,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;qBACtD;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,35 +1,27 @@
1
- import vue from '@vitejs/plugin-vue';
2
- import vueJsx from '@vitejs/plugin-vue-jsx';
3
- import { CWD } from '../common/constant.js';
1
+ import { mergeConfig } from 'vite';
4
2
  import { resolve } from "node:path";
5
- export default {
6
- root: CWD,
7
- base: './',
3
+ import { CWD } from '../common/constant.js';
4
+ import { systemjsBundle } from '../plugins/systemjs-bundle.js';
5
+ import CommonConfig from "./vite-common.js";
6
+ export default mergeConfig(CommonConfig, {
8
7
  logLevel: 'silent',
9
- plugins: [vue(), vueJsx()],
8
+ plugins: [systemjsBundle()],
10
9
  build: {
11
10
  lib: {
12
11
  entry: resolve(CWD, `./src/main.ts`),
13
12
  fileName: "index",
14
- formats: ["es", "systemjs"],
15
13
  },
14
+ target: 'es2019',
16
15
  outDir: resolve(CWD, `./lib`),
17
16
  rollupOptions: {
18
- external: [],
19
17
  output: {
20
18
  exports: "named",
21
- globals: (id) => {
22
- if (id.includes('@components')) {
23
- const name = id.split('/').pop() || '';
24
- return name.slice(0, 1).toUpperCase() + name.slice(1);
25
- }
26
- const map = {
27
- vue: "Vue",
28
- '@farris/mobile-ui-vue': 'FarrisVue'
29
- };
30
- return map[id];
19
+ globals: {
20
+ vue: "Vue",
21
+ '@farris/mobile-ui-vue': 'FarrisVue'
31
22
  }
32
23
  }
33
24
  },
34
25
  }
35
- };
26
+ });
27
+ //# sourceMappingURL=vite-lib.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite-lib.js","sourceRoot":"","sources":["../../src/config/vite-lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,YAAY,MAAM,kBAAkB,CAAC;AAE5C,eAAe,WAAW,CAAC,YAAY,EAAE;IACvC,QAAQ,EAAE,QAAQ;IAClB,OAAO,EAAE,CAAC,cAAc,EAAE,CAAC;IAC3B,KAAK,EAAC;QACJ,GAAG,EAAE;YACH,KAAK,EAAE,OAAO,CAAC,GAAG,EAAE,eAAe,CAAC;YACpC,QAAQ,EAAE,OAAO;SAClB;QACD,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC;QAC7B,aAAa,EAAE;YACb,MAAM,EAAE;gBACN,OAAO,EAAE,OAAO;gBAChB,OAAO,EAAE;oBACP,GAAG,EAAE,KAAK;oBACV,uBAAuB,EAAE,WAAW;iBACrC;aACF;SACF;KACF;CACF,CAAC,CAAC"}
package/lib/index.js CHANGED
@@ -7,16 +7,22 @@ program
7
7
  .command('build')
8
8
  .description('构建')
9
9
  .option('-c --configFile [configFile]', 'config file path')
10
+ .option('-vc --viteConfigFile [viteConfigFile]', 'vite config file path')
10
11
  .action(async (options) => {
12
+ process.env.BUILD_TYPE = 'app';
11
13
  const { buildCommon } = await import('./commands/build.js');
12
- return buildCommon(options);
14
+ buildCommon(options);
13
15
  });
14
16
  program
15
17
  .command('build-lib')
16
18
  .description('构建')
17
19
  .option('-c --configFile [configFile]', 'config file path')
20
+ .option('-vc --viteConfigFile [viteConfigFile]', 'vite config file path')
21
+ .option('-f --format [format]', 'lib format')
18
22
  .option('-d --dts', 'dts')
23
+ .option('-ep --emitPackage', 'createPackage')
19
24
  .action(async (options) => {
25
+ process.env.BUILD_TYPE = 'lib';
20
26
  const { buildLib } = await import('./commands/build-lib.js');
21
27
  return buildLib(options);
22
28
  });
@@ -24,10 +30,23 @@ program
24
30
  .command('build-components')
25
31
  .description('构建')
26
32
  .option('-c --configFile [configFile]', 'config file path')
33
+ .option('-vc --viteConfigFile [viteConfigFile]', 'vite config file path')
27
34
  .action(async (options) => {
35
+ process.env.BUILD_TYPE = 'components';
28
36
  const { buildComponents } = await import('./commands/build-components.js');
29
37
  return buildComponents(options);
30
38
  });
39
+ program
40
+ .command('build-css')
41
+ .description('构建')
42
+ .option('-e --entry [entry]', 'entry file')
43
+ .option('-o --outfile [outfile]', 'outfile')
44
+ .option('-m --minify [minify]', 'minify')
45
+ .action(async (options) => {
46
+ process.env.BUILD_TYPE = 'css';
47
+ const { buildCss } = await import('./commands/build-css.js');
48
+ return buildCss(options);
49
+ });
31
50
  program
32
51
  .command('create-app')
33
52
  .description('新建 App 模板')
@@ -40,6 +59,7 @@ program
40
59
  .description('创建 Dev Server')
41
60
  .option('-p --port [port]', 'Server Port')
42
61
  .action(async (options) => {
62
+ process.env.BUILD_TYPE = 'app';
43
63
  const { devServe } = await import('./commands/dev-serve.js');
44
64
  return devServe(options);
45
65
  });
@@ -48,7 +68,9 @@ program
48
68
  .description('创建 Preview Server')
49
69
  .option('-p --port [port]', 'Server Port')
50
70
  .action(async (options) => {
71
+ process.env.BUILD_TYPE = 'app';
51
72
  const { previewServe } = await import('./commands/preview-serve.js');
52
73
  return previewServe(options);
53
74
  });
54
75
  program.parse();
76
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}