@varlet/cli 1.27.16 → 1.27.17-alpha.1656907860130

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 (210) hide show
  1. package/LICENCE +21 -21
  2. package/README.en-US.md +401 -401
  3. package/README.md +396 -396
  4. package/generators/base/.prettierignore +9 -9
  5. package/generators/base/.prettierrc +5 -5
  6. package/generators/base/README.md +82 -82
  7. package/generators/base/babel.config.js +10 -10
  8. package/generators/base/public/highlight.css +1 -1
  9. package/generators/base/public/logo.svg +1 -1
  10. package/generators/base/shims/shims-md.d.ts +4 -4
  11. package/generators/base/shims/shims-vue.d.ts +6 -6
  12. package/generators/base/tsconfig.json +13 -13
  13. package/generators/config/default/base/docs/home.zh-CN.md +10 -10
  14. package/generators/config/default/base/package.json +1 -0
  15. package/generators/config/default/base/types/basicComponent.d.ts +7 -7
  16. package/generators/config/default/base/types/button.d.ts +12 -12
  17. package/generators/config/default/base/types/index.d.ts +6 -6
  18. package/generators/config/default/base/varlet.config.js +110 -110
  19. package/generators/config/default/sfc/src/button/Button.vue +30 -30
  20. package/generators/config/default/sfc/src/button/__tests__/index.spec.js +7 -7
  21. package/generators/config/default/sfc/src/button/button.less +14 -14
  22. package/generators/config/default/sfc/src/button/docs/zh-CN.md +47 -47
  23. package/generators/config/default/sfc/src/button/example/BasicUse.vue +7 -7
  24. package/generators/config/default/sfc/src/button/example/ModifyColor.vue +7 -7
  25. package/generators/config/default/sfc/src/button/example/index.vue +13 -13
  26. package/generators/config/default/sfc/src/button/index.ts +10 -10
  27. package/generators/config/default/tsx/src/button/Button.tsx +31 -31
  28. package/generators/config/default/tsx/src/button/__tests__/index.spec.js +7 -7
  29. package/generators/config/default/tsx/src/button/button.less +14 -14
  30. package/generators/config/default/tsx/src/button/docs/zh-CN.md +47 -47
  31. package/generators/config/default/tsx/src/button/example/BasicUse.vue +7 -7
  32. package/generators/config/default/tsx/src/button/example/ModifyColor.vue +7 -7
  33. package/generators/config/default/tsx/src/button/example/index.vue +13 -13
  34. package/generators/config/default/tsx/src/button/index.ts +10 -10
  35. package/generators/config/i18n/base/docs/home.en-US.md +11 -11
  36. package/generators/config/i18n/base/docs/home.zh-CN.md +10 -10
  37. package/generators/config/i18n/base/package.json +1 -0
  38. package/generators/config/i18n/base/types/basicComponent.d.ts +7 -7
  39. package/generators/config/i18n/base/types/button.d.ts +12 -12
  40. package/generators/config/i18n/base/types/index.d.ts +7 -7
  41. package/generators/config/i18n/base/types/locale.d.ts +24 -24
  42. package/generators/config/i18n/base/varlet.config.js +122 -122
  43. package/generators/config/i18n/sfc/src/button/Button.vue +36 -36
  44. package/generators/config/i18n/sfc/src/button/__tests__/index.spec.js +7 -7
  45. package/generators/config/i18n/sfc/src/button/button.less +14 -14
  46. package/generators/config/i18n/sfc/src/button/docs/en-US.md +34 -34
  47. package/generators/config/i18n/sfc/src/button/docs/zh-CN.md +34 -34
  48. package/generators/config/i18n/sfc/src/button/example/BasicUse.vue +11 -11
  49. package/generators/config/i18n/sfc/src/button/example/ModifyColor.vue +11 -11
  50. package/generators/config/i18n/sfc/src/button/example/index.vue +13 -13
  51. package/generators/config/i18n/sfc/src/button/example/locale/en-US.ts +5 -5
  52. package/generators/config/i18n/sfc/src/button/example/locale/index.ts +23 -23
  53. package/generators/config/i18n/sfc/src/button/example/locale/zh-CN.ts +5 -5
  54. package/generators/config/i18n/sfc/src/button/index.ts +10 -10
  55. package/generators/config/i18n/sfc/src/locale/__tests__/index.spec.js +51 -51
  56. package/generators/config/i18n/sfc/src/locale/docs/en-US.md +26 -26
  57. package/generators/config/i18n/sfc/src/locale/docs/zh-CN.md +25 -25
  58. package/generators/config/i18n/sfc/src/locale/en-US.d.ts +5 -5
  59. package/generators/config/i18n/sfc/src/locale/en-US.ts +7 -7
  60. package/generators/config/i18n/sfc/src/locale/index.ts +67 -67
  61. package/generators/config/i18n/sfc/src/locale/zh-CN.d.ts +5 -5
  62. package/generators/config/i18n/sfc/src/locale/zh-CN.ts +7 -7
  63. package/generators/config/i18n/tsx/src/button/Button.tsx +35 -35
  64. package/generators/config/i18n/tsx/src/button/__tests__/index.spec.js +7 -7
  65. package/generators/config/i18n/tsx/src/button/button.less +14 -14
  66. package/generators/config/i18n/tsx/src/button/docs/en-US.md +34 -34
  67. package/generators/config/i18n/tsx/src/button/docs/zh-CN.md +34 -34
  68. package/generators/config/i18n/tsx/src/button/example/BasicUse.vue +11 -11
  69. package/generators/config/i18n/tsx/src/button/example/ModifyColor.vue +11 -11
  70. package/generators/config/i18n/tsx/src/button/example/index.vue +13 -13
  71. package/generators/config/i18n/tsx/src/button/example/locale/en-US.ts +5 -5
  72. package/generators/config/i18n/tsx/src/button/example/locale/index.ts +23 -23
  73. package/generators/config/i18n/tsx/src/button/example/locale/zh-CN.ts +5 -5
  74. package/generators/config/i18n/tsx/src/button/index.ts +10 -10
  75. package/generators/config/i18n/tsx/src/locale/__tests__/index.spec.js +51 -51
  76. package/generators/config/i18n/tsx/src/locale/docs/en-US.md +26 -26
  77. package/generators/config/i18n/tsx/src/locale/docs/zh-CN.md +25 -25
  78. package/generators/config/i18n/tsx/src/locale/en-US.d.ts +5 -5
  79. package/generators/config/i18n/tsx/src/locale/en-US.ts +7 -7
  80. package/generators/config/i18n/tsx/src/locale/index.ts +67 -67
  81. package/generators/config/i18n/tsx/src/locale/zh-CN.d.ts +5 -5
  82. package/generators/config/i18n/tsx/src/locale/zh-CN.ts +7 -7
  83. package/lib/commands/build.d.ts +1 -1
  84. package/lib/commands/build.js +67 -67
  85. package/lib/commands/changelog.d.ts +6 -6
  86. package/lib/commands/changelog.js +27 -27
  87. package/lib/commands/commitLint.d.ts +1 -1
  88. package/lib/commands/commitLint.js +21 -21
  89. package/lib/commands/compile.d.ts +5 -5
  90. package/lib/commands/compile.js +119 -119
  91. package/lib/commands/create.d.ts +3 -3
  92. package/lib/commands/create.js +132 -132
  93. package/lib/commands/dev.d.ts +3 -3
  94. package/lib/commands/dev.js +123 -123
  95. package/lib/commands/gen.d.ts +1 -1
  96. package/lib/commands/gen.js +112 -112
  97. package/lib/commands/jest.d.ts +8 -8
  98. package/lib/commands/jest.js +81 -81
  99. package/lib/commands/lint.d.ts +1 -1
  100. package/lib/commands/lint.js +123 -123
  101. package/lib/commands/preview.d.ts +1 -1
  102. package/lib/commands/preview.js +74 -74
  103. package/lib/commands/release.d.ts +3 -3
  104. package/lib/commands/release.js +267 -269
  105. package/lib/compiler/compileModule.d.ts +5 -5
  106. package/lib/compiler/compileModule.js +186 -186
  107. package/lib/compiler/compileSFC.d.ts +2 -2
  108. package/lib/compiler/compileSFC.js +132 -132
  109. package/lib/compiler/compileScript.d.ts +17 -17
  110. package/lib/compiler/compileScript.js +202 -202
  111. package/lib/compiler/compileSiteEntry.d.ts +13 -13
  112. package/lib/compiler/compileSiteEntry.js +237 -237
  113. package/lib/compiler/compileStyle.d.ts +11 -11
  114. package/lib/compiler/compileStyle.js +101 -101
  115. package/lib/compiler/compileTemplateHighlight.d.ts +10 -10
  116. package/lib/compiler/compileTemplateHighlight.js +193 -193
  117. package/lib/compiler/compileTypes.d.ts +2 -2
  118. package/lib/compiler/compileTypes.js +88 -88
  119. package/lib/config/babel.config.d.ts +2 -2
  120. package/lib/config/babel.config.js +31 -31
  121. package/lib/config/babel.sfc.transform.d.ts +1 -1
  122. package/lib/config/babel.sfc.transform.js +18 -18
  123. package/lib/config/jest.config.d.ts +1 -1
  124. package/lib/config/jest.config.js +36 -36
  125. package/lib/config/jest.media.mock.js +2 -2
  126. package/lib/config/jest.style.mock.js +2 -2
  127. package/lib/config/varlet.config.d.ts +1 -1
  128. package/lib/config/varlet.config.js +24 -24
  129. package/lib/config/vite.config.d.ts +5 -5
  130. package/lib/config/vite.config.js +162 -162
  131. package/lib/index.d.ts +2 -2
  132. package/lib/index.js +83 -83
  133. package/lib/shared/constant.d.ts +43 -43
  134. package/lib/shared/constant.js +50 -50
  135. package/lib/shared/fsUtils.d.ts +12 -12
  136. package/lib/shared/fsUtils.js +108 -108
  137. package/lib/shared/logger.d.ts +7 -7
  138. package/lib/shared/logger.js +20 -20
  139. package/package.json +7 -8
  140. package/preset.js +3 -3
  141. package/site/components/button/Button.vue +84 -84
  142. package/site/components/button/button.less +183 -183
  143. package/site/components/button/index.ts +10 -10
  144. package/site/components/button/props.ts +70 -70
  145. package/site/components/cell/Cell.vue +42 -42
  146. package/site/components/cell/cell.less +74 -74
  147. package/site/components/cell/index.ts +10 -10
  148. package/site/components/cell/props.ts +27 -27
  149. package/site/components/code-example/CodeExample.vue +143 -143
  150. package/site/components/code-example/codeExample.less +41 -41
  151. package/site/components/code-example/index.ts +10 -10
  152. package/site/components/context/index.ts +17 -17
  153. package/site/components/context/lock.ts +103 -103
  154. package/site/components/context/zIndex.ts +20 -20
  155. package/site/components/icon/Icon.vue +68 -68
  156. package/site/components/icon/icon.less +26 -26
  157. package/site/components/icon/index.ts +10 -10
  158. package/site/components/icon/props.ts +24 -24
  159. package/site/components/loading/Loading.vue +55 -55
  160. package/site/components/loading/index.ts +10 -10
  161. package/site/components/loading/loading.less +420 -420
  162. package/site/components/loading/props.ts +37 -37
  163. package/site/components/progress/Progress.vue +108 -108
  164. package/site/components/progress/index.ts +10 -10
  165. package/site/components/progress/progress.less +98 -98
  166. package/site/components/progress/props.ts +55 -55
  167. package/site/components/ripple/index.ts +167 -167
  168. package/site/components/ripple/ripple.less +17 -17
  169. package/site/components/snackbar/Snackbar.vue +38 -38
  170. package/site/components/snackbar/core.vue +117 -117
  171. package/site/components/snackbar/index.tsx +270 -270
  172. package/site/components/snackbar/props.ts +94 -94
  173. package/site/components/snackbar/snackbar.less +135 -135
  174. package/site/components/styles/common.less +64 -64
  175. package/site/components/styles/elevation.less +126 -126
  176. package/site/components/styles/var.less +27 -27
  177. package/site/components/utils/components.ts +69 -69
  178. package/site/components/utils/elements.ts +85 -85
  179. package/site/index.html +49 -49
  180. package/site/mobile/App.vue +291 -291
  181. package/site/mobile/components/AppHome.vue +134 -134
  182. package/site/mobile/components/AppType.vue +22 -22
  183. package/site/mobile/components/app-bar/AppBar.vue +69 -69
  184. package/site/mobile/components/app-bar/appBar.less +56 -56
  185. package/site/mobile/components/app-bar/index.ts +10 -10
  186. package/site/mobile/components/app-bar/props.ts +25 -25
  187. package/site/mobile/components/styles/common.less +64 -64
  188. package/site/mobile/components/styles/elevation.less +126 -126
  189. package/site/mobile/components/styles/var.less +27 -27
  190. package/site/mobile/main.ts +74 -74
  191. package/site/mobile.html +41 -41
  192. package/site/module.d.ts +5 -5
  193. package/site/pc/App.vue +43 -43
  194. package/site/pc/Layout.vue +397 -397
  195. package/site/pc/components/AnimationBox.vue +45 -45
  196. package/site/pc/components/AppHeader.vue +355 -355
  197. package/site/pc/components/AppMobile.vue +54 -54
  198. package/site/pc/components/AppSidebar.vue +134 -134
  199. package/site/pc/components/LogoAnimation.vue +119 -119
  200. package/site/pc/floating.ts +9 -9
  201. package/site/pc/main.ts +94 -94
  202. package/site/pc/pages/index/index.less +194 -194
  203. package/site/pc/pages/index/index.vue +128 -125
  204. package/site/pc/pages/index/locale/en-US.ts +3 -5
  205. package/site/pc/pages/index/locale/zh-CN.ts +3 -5
  206. package/site/tsconfig.json +11 -11
  207. package/site/useProgress.ts +75 -75
  208. package/site/utils.ts +153 -153
  209. package/tsconfig.json +14 -14
  210. package/varlet.default.config.js +151 -145
@@ -1,50 +1,50 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.JEST_STYLE_MOCK = exports.JEST_MEDIA_MOCK = exports.JEST_CONFIG = exports.HL_WEB_TYPES_JSON = exports.HL_ATTRIBUTES_JSON = exports.HL_TAGS_JSON = exports.HL_DIR = exports.HL_MD = exports.HL_TITLE_SLOTS_RE = exports.HL_TITLE_EVENTS_RE = exports.HL_TITLE_ATTRIBUTES_RE = exports.HL_API_RE = exports.HL_COMPONENT_NAME_RE = exports.SITE_CONFIG = exports.SITE_MOBILE_ROUTES = exports.SITE_PC_ROUTES = exports.SITE_PC_DIR = exports.SITE_DIR = exports.SITE_PUBLIC_PATH = exports.SITE_OUTPUT_PATH = exports.SITE = exports.CLI_PACKAGE_JSON = exports.UI_PACKAGE_JSON = exports.GENERATORS_DIR = exports.TESTS_DIR_NAME = exports.DIR_INDEX = exports.DOCS_DIR_NAME = exports.LOCALE_DIR_NAME = exports.EXAMPLE_DIR_NAME = exports.STYLE_DIR_NAME = exports.PUBLIC_DIR_INDEXES = exports.SCRIPTS_EXTENSIONS = exports.VITE_RESOLVE_EXTENSIONS = exports.ESLINT_EXTENSIONS = exports.ROOT_PAGES_DIR = exports.ROOT_DOCS_DIR = exports.TYPES_DIR = exports.UMD_DIR = exports.LIB_DIR = exports.ES_DIR = exports.SRC_DIR = exports.VARLET_CONFIG = exports.CWD = void 0;
4
- var path_1 = require("path");
5
- exports.CWD = process.cwd();
6
- exports.VARLET_CONFIG = (0, path_1.resolve)(exports.CWD, 'varlet.config.js');
7
- exports.SRC_DIR = (0, path_1.resolve)(exports.CWD, 'src');
8
- exports.ES_DIR = (0, path_1.resolve)(exports.CWD, 'es');
9
- exports.LIB_DIR = (0, path_1.resolve)(exports.CWD, 'lib');
10
- exports.UMD_DIR = (0, path_1.resolve)(exports.CWD, 'umd');
11
- exports.TYPES_DIR = (0, path_1.resolve)(exports.CWD, 'types');
12
- exports.ROOT_DOCS_DIR = (0, path_1.resolve)(exports.CWD, 'docs');
13
- exports.ROOT_PAGES_DIR = (0, path_1.resolve)(exports.CWD, 'pages');
14
- exports.ESLINT_EXTENSIONS = ['.vue', '.ts', '.js', '.mjs', '.tsx', '.jsx'];
15
- exports.VITE_RESOLVE_EXTENSIONS = ['.vue', '.tsx', '.ts', '.jsx', '.js', '.less', '.css'];
16
- exports.SCRIPTS_EXTENSIONS = ['.tsx', '.ts', '.jsx', '.js'];
17
- exports.PUBLIC_DIR_INDEXES = ['index.vue', 'index.tsx', 'index.ts', 'index.jsx', 'index.js'];
18
- exports.STYLE_DIR_NAME = 'style';
19
- exports.EXAMPLE_DIR_NAME = 'example';
20
- exports.LOCALE_DIR_NAME = 'locale';
21
- exports.DOCS_DIR_NAME = 'docs';
22
- exports.DIR_INDEX = 'index.vue';
23
- exports.TESTS_DIR_NAME = '__tests__';
24
- exports.GENERATORS_DIR = (0, path_1.resolve)(__dirname, '../../generators');
25
- exports.UI_PACKAGE_JSON = (0, path_1.resolve)(exports.CWD, 'package.json');
26
- exports.CLI_PACKAGE_JSON = (0, path_1.resolve)(__dirname, '../../package.json');
27
- // site
28
- exports.SITE = (0, path_1.resolve)(__dirname, '../../site');
29
- exports.SITE_OUTPUT_PATH = (0, path_1.resolve)(exports.CWD, 'site');
30
- exports.SITE_PUBLIC_PATH = (0, path_1.resolve)(exports.CWD, 'public');
31
- exports.SITE_DIR = (0, path_1.resolve)(exports.CWD, '.varlet/site');
32
- exports.SITE_PC_DIR = (0, path_1.resolve)(exports.CWD, '.varlet/site/pc');
33
- exports.SITE_PC_ROUTES = (0, path_1.resolve)(exports.CWD, '.varlet/pc.routes.ts');
34
- exports.SITE_MOBILE_ROUTES = (0, path_1.resolve)(exports.CWD, '.varlet/mobile.routes.ts');
35
- exports.SITE_CONFIG = (0, path_1.resolve)(exports.CWD, '.varlet/site.config.json');
36
- // template highlight
37
- exports.HL_COMPONENT_NAME_RE = /.*(\/|\\)(.+)(\/|\\)docs(\/|\\)/;
38
- exports.HL_API_RE = /##\s*API\n+/;
39
- exports.HL_TITLE_ATTRIBUTES_RE = /###\s*属性\s*\n+/;
40
- exports.HL_TITLE_EVENTS_RE = /###\s*事件\s*\n+/;
41
- exports.HL_TITLE_SLOTS_RE = /###\s*插槽\s*\n+/;
42
- exports.HL_MD = 'zh-CN.md';
43
- exports.HL_DIR = (0, path_1.resolve)(exports.CWD, 'highlight');
44
- exports.HL_TAGS_JSON = (0, path_1.resolve)(exports.HL_DIR, 'tags.json');
45
- exports.HL_ATTRIBUTES_JSON = (0, path_1.resolve)(exports.HL_DIR, 'attributes.json');
46
- exports.HL_WEB_TYPES_JSON = (0, path_1.resolve)(exports.HL_DIR, 'web-types.json');
47
- // jest
48
- exports.JEST_CONFIG = (0, path_1.resolve)(__dirname, '../config/jest.config.js');
49
- exports.JEST_MEDIA_MOCK = (0, path_1.resolve)(__dirname, '../config/jest.media.mock.js');
50
- exports.JEST_STYLE_MOCK = (0, path_1.resolve)(__dirname, '../config/jest.style.mock.js');
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JEST_STYLE_MOCK = exports.JEST_MEDIA_MOCK = exports.JEST_CONFIG = exports.HL_WEB_TYPES_JSON = exports.HL_ATTRIBUTES_JSON = exports.HL_TAGS_JSON = exports.HL_DIR = exports.HL_MD = exports.HL_TITLE_SLOTS_RE = exports.HL_TITLE_EVENTS_RE = exports.HL_TITLE_ATTRIBUTES_RE = exports.HL_API_RE = exports.HL_COMPONENT_NAME_RE = exports.SITE_CONFIG = exports.SITE_MOBILE_ROUTES = exports.SITE_PC_ROUTES = exports.SITE_PC_DIR = exports.SITE_DIR = exports.SITE_PUBLIC_PATH = exports.SITE_OUTPUT_PATH = exports.SITE = exports.CLI_PACKAGE_JSON = exports.UI_PACKAGE_JSON = exports.GENERATORS_DIR = exports.TESTS_DIR_NAME = exports.DIR_INDEX = exports.DOCS_DIR_NAME = exports.LOCALE_DIR_NAME = exports.EXAMPLE_DIR_NAME = exports.STYLE_DIR_NAME = exports.PUBLIC_DIR_INDEXES = exports.SCRIPTS_EXTENSIONS = exports.VITE_RESOLVE_EXTENSIONS = exports.ESLINT_EXTENSIONS = exports.ROOT_PAGES_DIR = exports.ROOT_DOCS_DIR = exports.TYPES_DIR = exports.UMD_DIR = exports.LIB_DIR = exports.ES_DIR = exports.SRC_DIR = exports.VARLET_CONFIG = exports.CWD = void 0;
4
+ var path_1 = require("path");
5
+ exports.CWD = process.cwd();
6
+ exports.VARLET_CONFIG = (0, path_1.resolve)(exports.CWD, 'varlet.config.js');
7
+ exports.SRC_DIR = (0, path_1.resolve)(exports.CWD, 'src');
8
+ exports.ES_DIR = (0, path_1.resolve)(exports.CWD, 'es');
9
+ exports.LIB_DIR = (0, path_1.resolve)(exports.CWD, 'lib');
10
+ exports.UMD_DIR = (0, path_1.resolve)(exports.CWD, 'umd');
11
+ exports.TYPES_DIR = (0, path_1.resolve)(exports.CWD, 'types');
12
+ exports.ROOT_DOCS_DIR = (0, path_1.resolve)(exports.CWD, 'docs');
13
+ exports.ROOT_PAGES_DIR = (0, path_1.resolve)(exports.CWD, 'pages');
14
+ exports.ESLINT_EXTENSIONS = ['.vue', '.ts', '.js', '.mjs', '.tsx', '.jsx'];
15
+ exports.VITE_RESOLVE_EXTENSIONS = ['.vue', '.tsx', '.ts', '.jsx', '.js', '.less', '.css'];
16
+ exports.SCRIPTS_EXTENSIONS = ['.tsx', '.ts', '.jsx', '.js'];
17
+ exports.PUBLIC_DIR_INDEXES = ['index.vue', 'index.tsx', 'index.ts', 'index.jsx', 'index.js'];
18
+ exports.STYLE_DIR_NAME = 'style';
19
+ exports.EXAMPLE_DIR_NAME = 'example';
20
+ exports.LOCALE_DIR_NAME = 'locale';
21
+ exports.DOCS_DIR_NAME = 'docs';
22
+ exports.DIR_INDEX = 'index.vue';
23
+ exports.TESTS_DIR_NAME = '__tests__';
24
+ exports.GENERATORS_DIR = (0, path_1.resolve)(__dirname, '../../generators');
25
+ exports.UI_PACKAGE_JSON = (0, path_1.resolve)(exports.CWD, 'package.json');
26
+ exports.CLI_PACKAGE_JSON = (0, path_1.resolve)(__dirname, '../../package.json');
27
+ // site
28
+ exports.SITE = (0, path_1.resolve)(__dirname, '../../site');
29
+ exports.SITE_OUTPUT_PATH = (0, path_1.resolve)(exports.CWD, 'site');
30
+ exports.SITE_PUBLIC_PATH = (0, path_1.resolve)(exports.CWD, 'public');
31
+ exports.SITE_DIR = (0, path_1.resolve)(exports.CWD, '.varlet/site');
32
+ exports.SITE_PC_DIR = (0, path_1.resolve)(exports.CWD, '.varlet/site/pc');
33
+ exports.SITE_PC_ROUTES = (0, path_1.resolve)(exports.CWD, '.varlet/pc.routes.ts');
34
+ exports.SITE_MOBILE_ROUTES = (0, path_1.resolve)(exports.CWD, '.varlet/mobile.routes.ts');
35
+ exports.SITE_CONFIG = (0, path_1.resolve)(exports.CWD, '.varlet/site.config.json');
36
+ // template highlight
37
+ exports.HL_COMPONENT_NAME_RE = /.*(\/|\\)(.+)(\/|\\)docs(\/|\\)/;
38
+ exports.HL_API_RE = /##\s*API\n+/;
39
+ exports.HL_TITLE_ATTRIBUTES_RE = /###\s*属性\s*\n+/;
40
+ exports.HL_TITLE_EVENTS_RE = /###\s*事件\s*\n+/;
41
+ exports.HL_TITLE_SLOTS_RE = /###\s*插槽\s*\n+/;
42
+ exports.HL_MD = 'zh-CN.md';
43
+ exports.HL_DIR = (0, path_1.resolve)(exports.CWD, 'highlight');
44
+ exports.HL_TAGS_JSON = (0, path_1.resolve)(exports.HL_DIR, 'tags.json');
45
+ exports.HL_ATTRIBUTES_JSON = (0, path_1.resolve)(exports.HL_DIR, 'attributes.json');
46
+ exports.HL_WEB_TYPES_JSON = (0, path_1.resolve)(exports.HL_DIR, 'web-types.json');
47
+ // jest
48
+ exports.JEST_CONFIG = (0, path_1.resolve)(__dirname, '../config/jest.config.js');
49
+ exports.JEST_MEDIA_MOCK = (0, path_1.resolve)(__dirname, '../config/jest.media.mock.js');
50
+ exports.JEST_STYLE_MOCK = (0, path_1.resolve)(__dirname, '../config/jest.style.mock.js');
@@ -1,12 +1,12 @@
1
- export declare function getPublicDirs(): Promise<string[]>;
2
- export declare const isMD: (file: string) => boolean;
3
- export declare const isDir: (file: string) => boolean;
4
- export declare const isSFC: (file: string) => boolean;
5
- export declare const isDTS: (file: string) => boolean;
6
- export declare const isScript: (file: string) => boolean;
7
- export declare const isLess: (file: string) => boolean;
8
- export declare const isPublicDir: (dir: string) => boolean;
9
- export declare const replaceExt: (file: string, ext: string) => string;
10
- export declare function smartAppendFileSync(file: string, code: string): void;
11
- export declare function outputFileSyncOnChange(path: string, code: string): void;
12
- export declare function glob(pattern: string): Promise<string[]>;
1
+ export declare function getPublicDirs(): Promise<string[]>;
2
+ export declare const isMD: (file: string) => boolean;
3
+ export declare const isDir: (file: string) => boolean;
4
+ export declare const isSFC: (file: string) => boolean;
5
+ export declare const isDTS: (file: string) => boolean;
6
+ export declare const isScript: (file: string) => boolean;
7
+ export declare const isLess: (file: string) => boolean;
8
+ export declare const isPublicDir: (dir: string) => boolean;
9
+ export declare const replaceExt: (file: string, ext: string) => string;
10
+ export declare function smartAppendFileSync(file: string, code: string): void;
11
+ export declare function outputFileSyncOnChange(path: string, code: string): void;
12
+ export declare function glob(pattern: string): Promise<string[]>;
@@ -1,108 +1,108 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
- var __importDefault = (this && this.__importDefault) || function (mod) {
39
- return (mod && mod.__esModule) ? mod : { "default": mod };
40
- };
41
- Object.defineProperty(exports, "__esModule", { value: true });
42
- exports.glob = exports.outputFileSyncOnChange = exports.smartAppendFileSync = exports.replaceExt = exports.isPublicDir = exports.isLess = exports.isScript = exports.isDTS = exports.isSFC = exports.isDir = exports.isMD = exports.getPublicDirs = void 0;
43
- var path_1 = require("path");
44
- var fs_extra_1 = require("fs-extra");
45
- var constant_1 = require("./constant");
46
- var glob_1 = __importDefault(require("glob"));
47
- function getPublicDirs() {
48
- return __awaiter(this, void 0, void 0, function () {
49
- var srcDir;
50
- return __generator(this, function (_a) {
51
- switch (_a.label) {
52
- case 0: return [4 /*yield*/, (0, fs_extra_1.readdir)(constant_1.SRC_DIR)];
53
- case 1:
54
- srcDir = _a.sent();
55
- return [2 /*return*/, srcDir.filter(function (filename) { return (0, exports.isPublicDir)((0, path_1.resolve)(constant_1.SRC_DIR, filename)); })];
56
- }
57
- });
58
- });
59
- }
60
- exports.getPublicDirs = getPublicDirs;
61
- var isMD = function (file) { return (0, fs_extra_1.pathExistsSync)(file) && (0, path_1.extname)(file) === '.md'; };
62
- exports.isMD = isMD;
63
- var isDir = function (file) { return (0, fs_extra_1.pathExistsSync)(file) && (0, fs_extra_1.lstatSync)(file).isDirectory(); };
64
- exports.isDir = isDir;
65
- var isSFC = function (file) { return (0, fs_extra_1.pathExistsSync)(file) && (0, path_1.extname)(file) === '.vue'; };
66
- exports.isSFC = isSFC;
67
- var isDTS = function (file) { return (0, fs_extra_1.pathExistsSync)(file) && file.endsWith('.d.ts'); };
68
- exports.isDTS = isDTS;
69
- var isScript = function (file) { return (0, fs_extra_1.pathExistsSync)(file) && constant_1.SCRIPTS_EXTENSIONS.includes((0, path_1.extname)(file)); };
70
- exports.isScript = isScript;
71
- var isLess = function (file) { return (0, fs_extra_1.pathExistsSync)(file) && (0, path_1.extname)(file) === '.less'; };
72
- exports.isLess = isLess;
73
- var isPublicDir = function (dir) {
74
- return constant_1.PUBLIC_DIR_INDEXES.some(function (index) { return (0, fs_extra_1.pathExistsSync)((0, path_1.resolve)(dir, index)); });
75
- };
76
- exports.isPublicDir = isPublicDir;
77
- var replaceExt = function (file, ext) { return file.replace((0, path_1.extname)(file), ext); };
78
- exports.replaceExt = replaceExt;
79
- function smartAppendFileSync(file, code) {
80
- if ((0, fs_extra_1.pathExistsSync)(file)) {
81
- var content = (0, fs_extra_1.readFileSync)(file, 'utf-8');
82
- if (!content.includes(code)) {
83
- (0, fs_extra_1.appendFileSync)(file, code);
84
- }
85
- }
86
- }
87
- exports.smartAppendFileSync = smartAppendFileSync;
88
- function outputFileSyncOnChange(path, code) {
89
- (0, fs_extra_1.ensureFileSync)(path);
90
- var content = (0, fs_extra_1.readFileSync)(path, 'utf-8');
91
- if (content !== code) {
92
- (0, fs_extra_1.outputFileSync)(path, code);
93
- }
94
- }
95
- exports.outputFileSyncOnChange = outputFileSyncOnChange;
96
- function glob(pattern) {
97
- return new Promise(function (resolve, reject) {
98
- (0, glob_1.default)(pattern, function (err, files) {
99
- if (err) {
100
- reject(err);
101
- }
102
- else {
103
- resolve(files);
104
- }
105
- });
106
- });
107
- }
108
- exports.glob = glob;
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.glob = exports.outputFileSyncOnChange = exports.smartAppendFileSync = exports.replaceExt = exports.isPublicDir = exports.isLess = exports.isScript = exports.isDTS = exports.isSFC = exports.isDir = exports.isMD = exports.getPublicDirs = void 0;
43
+ var path_1 = require("path");
44
+ var fs_extra_1 = require("fs-extra");
45
+ var constant_1 = require("./constant");
46
+ var glob_1 = __importDefault(require("glob"));
47
+ function getPublicDirs() {
48
+ return __awaiter(this, void 0, void 0, function () {
49
+ var srcDir;
50
+ return __generator(this, function (_a) {
51
+ switch (_a.label) {
52
+ case 0: return [4 /*yield*/, (0, fs_extra_1.readdir)(constant_1.SRC_DIR)];
53
+ case 1:
54
+ srcDir = _a.sent();
55
+ return [2 /*return*/, srcDir.filter(function (filename) { return (0, exports.isPublicDir)((0, path_1.resolve)(constant_1.SRC_DIR, filename)); })];
56
+ }
57
+ });
58
+ });
59
+ }
60
+ exports.getPublicDirs = getPublicDirs;
61
+ var isMD = function (file) { return (0, fs_extra_1.pathExistsSync)(file) && (0, path_1.extname)(file) === '.md'; };
62
+ exports.isMD = isMD;
63
+ var isDir = function (file) { return (0, fs_extra_1.pathExistsSync)(file) && (0, fs_extra_1.lstatSync)(file).isDirectory(); };
64
+ exports.isDir = isDir;
65
+ var isSFC = function (file) { return (0, fs_extra_1.pathExistsSync)(file) && (0, path_1.extname)(file) === '.vue'; };
66
+ exports.isSFC = isSFC;
67
+ var isDTS = function (file) { return (0, fs_extra_1.pathExistsSync)(file) && file.endsWith('.d.ts'); };
68
+ exports.isDTS = isDTS;
69
+ var isScript = function (file) { return (0, fs_extra_1.pathExistsSync)(file) && constant_1.SCRIPTS_EXTENSIONS.includes((0, path_1.extname)(file)); };
70
+ exports.isScript = isScript;
71
+ var isLess = function (file) { return (0, fs_extra_1.pathExistsSync)(file) && (0, path_1.extname)(file) === '.less'; };
72
+ exports.isLess = isLess;
73
+ var isPublicDir = function (dir) {
74
+ return constant_1.PUBLIC_DIR_INDEXES.some(function (index) { return (0, fs_extra_1.pathExistsSync)((0, path_1.resolve)(dir, index)); });
75
+ };
76
+ exports.isPublicDir = isPublicDir;
77
+ var replaceExt = function (file, ext) { return file.replace((0, path_1.extname)(file), ext); };
78
+ exports.replaceExt = replaceExt;
79
+ function smartAppendFileSync(file, code) {
80
+ if ((0, fs_extra_1.pathExistsSync)(file)) {
81
+ var content = (0, fs_extra_1.readFileSync)(file, 'utf-8');
82
+ if (!content.includes(code)) {
83
+ (0, fs_extra_1.appendFileSync)(file, code);
84
+ }
85
+ }
86
+ }
87
+ exports.smartAppendFileSync = smartAppendFileSync;
88
+ function outputFileSyncOnChange(path, code) {
89
+ (0, fs_extra_1.ensureFileSync)(path);
90
+ var content = (0, fs_extra_1.readFileSync)(path, 'utf-8');
91
+ if (content !== code) {
92
+ (0, fs_extra_1.outputFileSync)(path, code);
93
+ }
94
+ }
95
+ exports.outputFileSyncOnChange = outputFileSyncOnChange;
96
+ function glob(pattern) {
97
+ return new Promise(function (resolve, reject) {
98
+ (0, glob_1.default)(pattern, function (err, files) {
99
+ if (err) {
100
+ reject(err);
101
+ }
102
+ else {
103
+ resolve(files);
104
+ }
105
+ });
106
+ });
107
+ }
108
+ exports.glob = glob;
@@ -1,7 +1,7 @@
1
- declare const _default: {
2
- info(text: string): void;
3
- success(text: string): void;
4
- warning(text: string): void;
5
- error(text: string): void;
6
- };
7
- export default _default;
1
+ declare const _default: {
2
+ info(text: string): void;
3
+ success(text: string): void;
4
+ warning(text: string): void;
5
+ error(text: string): void;
6
+ };
7
+ export default _default;
@@ -1,20 +1,20 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- var chalk_1 = __importDefault(require("chalk"));
7
- exports.default = {
8
- info: function (text) {
9
- console.log(text);
10
- },
11
- success: function (text) {
12
- console.log(chalk_1.default.hex('#00c48f')(text));
13
- },
14
- warning: function (text) {
15
- console.log(chalk_1.default.hex('#ff9800')(text));
16
- },
17
- error: function (text) {
18
- console.log(chalk_1.default.hex('#f44336')(text));
19
- },
20
- };
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var chalk_1 = __importDefault(require("chalk"));
7
+ exports.default = {
8
+ info: function (text) {
9
+ console.log(text);
10
+ },
11
+ success: function (text) {
12
+ console.log(chalk_1.default.hex('#00c48f')(text));
13
+ },
14
+ warning: function (text) {
15
+ console.log(chalk_1.default.hex('#ff9800')(text));
16
+ },
17
+ error: function (text) {
18
+ console.log(chalk_1.default.hex('#f44336')(text));
19
+ },
20
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@varlet/cli",
3
- "version": "1.27.16",
3
+ "version": "1.27.17-alpha.1656907860130",
4
4
  "description": "cli of varlet",
5
5
  "bin": {
6
6
  "varlet-cli": "./lib/index.js"
@@ -28,10 +28,10 @@
28
28
  "url": "https://github.com/varletjs/varlet/issues"
29
29
  },
30
30
  "dependencies": {
31
- "@varlet/icons": "1.27.16",
32
- "@varlet/shared": "1.27.16",
33
- "@varlet/markdown-vite-plugin": "1.27.16",
34
- "@varlet/touch-emulator": "1.27.16",
31
+ "@varlet/icons": "1.27.17-alpha.1656907860130",
32
+ "@varlet/shared": "1.27.17-alpha.1656907860130",
33
+ "@varlet/markdown-vite-plugin": "1.27.17-alpha.1656907860130",
34
+ "@varlet/touch-emulator": "1.27.17-alpha.1656907860130",
35
35
  "@babel/core": "^7.14.8",
36
36
  "@babel/helper-plugin-utils": "^7.14.5",
37
37
  "@babel/preset-env": "^7.14.8",
@@ -76,7 +76,7 @@
76
76
  "@types/semver": "^7.3.9"
77
77
  },
78
78
  "peerDependencies": {
79
- "@varlet/touch-emulator": "1.27.16",
79
+ "@varlet/touch-emulator": "1.27.17-alpha.1656907860130",
80
80
  "@vue/test-utils": "^2.0.0-rc.6",
81
81
  "clipboard": "^2.0.6",
82
82
  "live-server": "^1.2.1",
@@ -88,6 +88,5 @@
88
88
  "scripts": {
89
89
  "dev": "tsc --watch",
90
90
  "build": "tsc"
91
- },
92
- "readme": "# @varlet/cli\n\n开箱即用的 `Vue3组件库` 快速成型工具,提供了一系列命令和工具去解决组件库开发上的问题\n\n### 特性\n\n- 1.开箱即用的组件库开发环境\n- 2.开箱即用的组件库编译工具,支持导出 `esm` 和 `umd` 两种模块代码\n- 3.基于配置文件的组件库文档站点,支持百度统计和主题定制\n- 4.支持 `单文件组件(sfc)` 和 `tsx,jsx` 两种风格的组件库编写风格\n- 5.开箱即用的代码检查工具\n- 6.开箱即用的单元测试工具\n- 7.开箱即用的代码发布工具,发布到 npm 和 github, 并自动生成更新日志\n- 8.支持 `Typescript`\n- 9.支持 `暗黑模式`\n- 10.基于 `pnpm`\n\n### 快速开始\n\n`@varlet/cli` 内置了 `单文件组件(sfc)` 和 `tsx, jsx` 两种风格的组件库项目模板,可以通过 `gen` 命令直接生成。\n帮助用户直接进入组件本身的开发,推荐使用 `pnpm` 作为包管理工具。\n\n```shell\n# 安装命令行工具\npnpm add @varlet/cli -g\n# 使用 gen 命令生成项目\nvarlet-cli gen 项目名\ncd 项目名\npnpm install\npnpm dev\n```\n\n然后通过简单修改一些组件库模板的基础信息,就可以开始组件库的开发了\n\n## 高级定制\n\n### 配置文件\n\n项目根目录下的 `varlet.config.js` 用来管理整个组件库项目的具体细节\n\n| 参数 | 说明 | 类型 | 默认值 |\n| ----- | -------------- | -------- | ---------- |\n| `host` | 开发服务器主机 | _number_ | `localhost` |\n| `port` | 开发服务器端口 | _number_ | `8080` |\n| `name` | 组件库全名\t| _string_ | `Varlet` |\n| `namespace` | 组件库命名空间, 会作为组件前缀 | _string_ | `var` |\n| `title` | 文档中组件库的标题 | _string_ | `VARLET` |\n| `logo` | 文档中组件库的logo | _string_ | `-` |\n| `defaultLanguage` | 文档默认语言 | _string_ | `zh-CN` |\n| `useMobile` | 是否显示右侧手机预览 | _boolean_ | `false` |\n| `themes` | 文档主题 | _SiteThemes_ | `-` |\n| `darkThemes` | 暗黑模式文档主题 | _SiteThemes_ | `-` |\n| `highlight` | 文档代码片段样式相关 | _SiteHighlight_ | `-` |\n| `analysis` | 文档统计相关 | _SiteAnalysis_ | `-` |\n| `pc` | pc端文档结构配置 | _SitePC_ | `-` |\n| `mobile` | mobile端文档结构配置 | _SiteMobile_ | `-` |\n| `moduleCompatible` | 模块兼容配置 | _Record<string, string>_ | `-` |\n\n#### 模块适配对象\n\n一些外部依赖可能需要进行模块语法的适配,以达到可以正确编译到 `commonjs` 和 `esmodule` 的目的,例如 `dayjs` 的 `esmodule` 写法是\n\n```js\nimport dayjs from 'dayjs/esm'\n```\n\n而为了构建 `commonjs` 时的写法是\n\n```js\nimport * as dayjs from 'dayjs'\n```\n\n在项目中我们拥抱 `esmodule` 模块使用第一种写法,并做如下配置进行适配\n\n```js\n// varlet.config.js\nmodule.exports = {\n moduleCompatible: {\n \"import dayjs from 'dayjs/esm'\\n\": \"import * as dayjs from 'dayjs'\\n\"\n }\n}\n```\n\n#### SiteThemes\n\n主题变量相关,由于默认的主题变量可能时常修改,以 `varlet` 官方文档的主题为准\n\n| 参数 |\n| ----- |\n| `color-body` |\n| `color-bar` |\n| `color-sub-bar` |\n| `color-text` |\n| `color-sub-text` |\n| `color-border` |\n| `color-shadow` |\n| `color-introduce-border` |\n| `color-primary` |\n| `color-link` |\n| `color-type` |\n| `color-progress` |\n| `color-progress-track` |\n| `color-side-bar` |\n| `color-side-bar-active-background` |\n| `color-app-bar` |\n| `color-nav-button-hover-background` |\n| `color-mobile-cell-hover` |\n| `color-pc-language-active` |\n| `color-pc-language-active-background` |\n| `color-mobile-language-active` |\n| `color-mobile-language-active-background` |\n| `color-hl-background` |\n| `color-hl-code` |\n| `color-hl-border` |\n| `color-hl-group-a` |\n| `color-hl-group-b` |\n| `color-hl-group-c` |\n| `color-hl-group-d` |\n| `color-hl-group-e` |\n| `color-hl-group-f` |\n| `color-hl-group-g` |\n| `color-hl-group-h` |\n| `color-hl-group-i` |\n\n#### SiteHighlight\n\n代码片段高亮,基于[highlight.js](https://highlightjs.org/)\n\n| 参数 | 说明 | 类型 | 默认值 |\n| ----- | -------------- | -------- | ---------- |\n| `style` | highlight的css地址 | _string_ | `-` |\n\n#### SiteAnalysis\n\n统计埋点相关\n\n| 参数 | 说明 | 类型 | 默认值 |\n| ----- | -------------- | -------- | ---------- |\n| `baidu` | 百度统计脚本地址 | _string_ | `-` |\n\n#### SitePC, SiteMobile\n\n文档结构部分相关,示例配置如下\n\n```js\nmodule.exports = {\n pc: {\n redirect: '/home',\n title: {\n 'zh-CN': '一个组件库',\n },\n header: {\n darkMode: null,\n i18n: null,\n github: 'https://github.com/varletjs/varlet',\n },\n menu: [\n {\n text: {\n 'zh-CN': '开发指南',\n },\n // 侧边栏菜单目录\n type: 1,\n },\n {\n text: {\n 'zh-CN': '基本介绍',\n },\n doc: 'home',\n // 索引项目根目录下的md文档\n type: 3,\n },\n {\n text: {\n 'zh-CN': '基础组件',\n },\n type: 1,\n },\n {\n text: {\n 'zh-CN': 'Button 按钮',\n },\n doc: 'button',\n // 索引组件根目录下的md文档\n type: 2,\n },\n ],\n },\n mobile: {\n redirect: '/home',\n title: {\n 'zh-CN': '一个组件库',\n },\n header: {\n darkMode: null,\n i18n: null,\n playground: null,\n github: 'https://github.com/varletjs/varlet',\n },\n },\n}\n```\n\n### 命令相关\n\n#### 启动开发服务器\n\n```shell\nvarlet-cli dev\n```\n\n#### 构建文档站点\n\n```shell\nvarlet-cli build\n```\n\n#### 预览文档站点\n\n```shell\nvarlet-cli preview\n```\n\n#### 构建组件库代码\n\n```shell\nvarlet-cli compile\n```\n\n#### 执行所有的单元测试\n\n```shell\nvarlet-cli test\n```\n\n#### 以 watch 模式执行单元测试\n\n```shell\nvarlet-cli test -w\nor\nvarlet-cli test -wa\n```\n\n#### 检查代码\n\n```shell\nvarlet-cli lint\n```\n\n#### 校验提交信息\n\n```shell\nvarlet-cli commit-lint\n```\n\n#### 生成更新日志\n\n```shell\nvarlet-cli changelog\n```\n\n#### 发布组件库\n\n```shell\nvarlet-cli release\n```\n\n#### 生成一个项目模板\n```shell\nvarlet-cli gen <projectName>\n```\n\n### babel\n\n对 `babel` 进行配置,首先在 `package.json` 中指定目标浏览器\n\n```json\n{\n \"browserslist\": [\n \"Chrome >= 51\",\n \"iOS >= 10\"\n ]\n}\n```\n\n创建 `babel.config,js`\n\n```js\n// babel.config.js\nmodule.exports = {\n presets: [\n [\n '@varlet/cli/preset',\n {\n loose: process.env.NODE_ENV === 'compile',\n },\n ],\n ],\n}\n```\n\n### git 和 npm\n\n#### git-hook\n\n`simple-git-hooks`,`lint-staged` 配合 `eslint`,`stylelint`,`varlet-cli commit-lint` 做commit前的检查,`package.json` 配置如下\n\n```json\n{\n \"simple-git-hooks\": {\n \"pre-commit\": \"pnpm exec lint-staged --allow-empty --concurrent false\",\n \"commit-msg\": \"npx --no-install varlet-cli commit-lint $1\"\n },\n \"lint-staged\": {\n \"*.{ts,tsx,js,vue,less}\": \"prettier --write\",\n \"*.{ts,tsx,js,vue}\": \"eslint --fix\",\n \"*.{vue,css,less}\": \"stylelint --fix\"\n },\n \"eslintConfig\": {\n \"root\": true,\n \"ignorePatterns\": [\n \"es/**\",\n \"umd/**\",\n \"site/**\",\n \"public/**\",\n \"src/*/__tests__/**\",\n \".varlet/**\"\n ],\n \"extends\": [\n \"@varlet\"\n ]\n },\n \"stylelint\": {\n \"extends\": [\n \"@varlet/stylelint-config\"\n ],\n \"ignoreFiles\": [\n \"es/**\",\n \"umd/**\",\n \"site/**\",\n \"coverage/**\",\n \"public/**\",\n \"highlight/**\"\n ]\n }\n}\n```\n\n挂载钩子\n\n```shell\nnpx simple-git-hooks\n```\n\n创建 `.prettierignore`\n\n```text\n// .prettierignore\ncoverage/**\nes/**\numd/**\nsite/**\npublic/**\nsrc/*/__tests__/**\n*.md\n```\n\n### typescript\n\n创建 `tsconfig.json`\n\n```json\n{\n \"compilerOptions\": {\n \"strict\": true,\n \"downlevelIteration\": true,\n \"declaration\": true,\n \"skipLibCheck\": true,\n \"esModuleInterop\": true,\n \"allowJs\": true,\n \"lib\": [\"esnext\", \"dom\"],\n \"allowSyntheticDefaultImports\": true,\n \"jsx\": \"preserve\"\n }\n}\n```\n\n#### 发布前注意\n\n1. `npm` 的仓库源必须指向 `npm` 官方镜像\n2. 执行 `npm login` 进行登录\n\n### Contributors\n\n<a href=\"https://github.com/varletjs/varlet/graphs/contributors\">\n <img src=\"https://contrib.rocks/image?repo=haoziqaq/varlet\" />\n</a>"
91
+ }
93
92
  }
package/preset.js CHANGED
@@ -1,3 +1,3 @@
1
- const babelConfig = require('./lib/config/babel.config')
2
-
3
- module.exports = (api, options) => babelConfig(api, options)
1
+ const babelConfig = require('./lib/config/babel.config')
2
+
3
+ module.exports = (api, options) => babelConfig(api, options)
@@ -1,84 +1,84 @@
1
- <template>
2
- <button
3
- v-ripple="{ disabled: disabled || !ripple }"
4
- class="var-site-button var-site--box"
5
- :class="[
6
- `var-site-button--${size}`,
7
- block ? 'var-site--flex var-site-button--block' : 'var-site--inline-flex',
8
- disabled ? 'var-site-button--disabled' : null,
9
- text ? `var-site-button--text-${type}` : `var-site-button--${type}`,
10
- text ? 'var-site-button--text' : 'var-site-elevation--1',
11
- text && disabled ? 'var-site-button--text-disabled' : null,
12
- round ? 'var-site-button--round' : null,
13
- outline ? 'var-site-button--outline' : null,
14
- ]"
15
- :style="{
16
- color: textColor,
17
- background: color,
18
- }"
19
- :disabled="disabled"
20
- @click="handleClick"
21
- @touchstart="handleTouchstart"
22
- >
23
- <var-site-loading
24
- class="var-site-button__loading"
25
- :type="loadingType"
26
- :size="loadingSize"
27
- :radius="loadingRadius"
28
- v-if="loading"
29
- />
30
- <div class="var-site-button__content" :class="[loading ? 'var-site-button--hidden' : null]">
31
- <slot />
32
- </div>
33
- </button>
34
- </template>
35
-
36
- <script lang="ts">
37
- import Ripple from '../ripple'
38
- import Loading from '../loading'
39
- import { defineComponent } from 'vue'
40
- import { props } from './props'
41
-
42
- export default defineComponent({
43
- name: 'VarSiteButton',
44
- components: {
45
- [Loading.name]: Loading,
46
- },
47
- directives: { Ripple },
48
- props,
49
- setup(props) {
50
- const handleClick = (e: Event) => {
51
- const { loading, disabled, onClick } = props
52
-
53
- if (loading || disabled) {
54
- return
55
- }
56
-
57
- onClick?.(e)
58
- }
59
-
60
- const handleTouchstart = (e: Event) => {
61
- const { loading, disabled, onTouchstart } = props
62
-
63
- if (loading || disabled) {
64
- return
65
- }
66
-
67
- onTouchstart?.(e)
68
- }
69
-
70
- return {
71
- handleClick,
72
- handleTouchstart,
73
- }
74
- },
75
- })
76
- </script>
77
-
78
- <style lang="less">
79
- @import '../styles/common';
80
- @import '../styles/elevation';
81
- @import '../ripple/ripple';
82
- @import '../loading/loading';
83
- @import './button';
84
- </style>
1
+ <template>
2
+ <button
3
+ v-ripple="{ disabled: disabled || !ripple }"
4
+ class="var-site-button var-site--box"
5
+ :class="[
6
+ `var-site-button--${size}`,
7
+ block ? 'var-site--flex var-site-button--block' : 'var-site--inline-flex',
8
+ disabled ? 'var-site-button--disabled' : null,
9
+ text ? `var-site-button--text-${type}` : `var-site-button--${type}`,
10
+ text ? 'var-site-button--text' : 'var-site-elevation--1',
11
+ text && disabled ? 'var-site-button--text-disabled' : null,
12
+ round ? 'var-site-button--round' : null,
13
+ outline ? 'var-site-button--outline' : null,
14
+ ]"
15
+ :style="{
16
+ color: textColor,
17
+ background: color,
18
+ }"
19
+ :disabled="disabled"
20
+ @click="handleClick"
21
+ @touchstart="handleTouchstart"
22
+ >
23
+ <var-site-loading
24
+ class="var-site-button__loading"
25
+ :type="loadingType"
26
+ :size="loadingSize"
27
+ :radius="loadingRadius"
28
+ v-if="loading"
29
+ />
30
+ <div class="var-site-button__content" :class="[loading ? 'var-site-button--hidden' : null]">
31
+ <slot />
32
+ </div>
33
+ </button>
34
+ </template>
35
+
36
+ <script lang="ts">
37
+ import Ripple from '../ripple'
38
+ import Loading from '../loading'
39
+ import { defineComponent } from 'vue'
40
+ import { props } from './props'
41
+
42
+ export default defineComponent({
43
+ name: 'VarSiteButton',
44
+ components: {
45
+ [Loading.name]: Loading,
46
+ },
47
+ directives: { Ripple },
48
+ props,
49
+ setup(props) {
50
+ const handleClick = (e: Event) => {
51
+ const { loading, disabled, onClick } = props
52
+
53
+ if (loading || disabled) {
54
+ return
55
+ }
56
+
57
+ onClick?.(e)
58
+ }
59
+
60
+ const handleTouchstart = (e: Event) => {
61
+ const { loading, disabled, onTouchstart } = props
62
+
63
+ if (loading || disabled) {
64
+ return
65
+ }
66
+
67
+ onTouchstart?.(e)
68
+ }
69
+
70
+ return {
71
+ handleClick,
72
+ handleTouchstart,
73
+ }
74
+ },
75
+ })
76
+ </script>
77
+
78
+ <style lang="less">
79
+ @import '../styles/common';
80
+ @import '../styles/elevation';
81
+ @import '../ripple/ripple';
82
+ @import '../loading/loading';
83
+ @import './button';
84
+ </style>