@varlet/cli 1.27.14 → 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 (211) 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 -201
  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 -16
  136. package/lib/shared/fsUtils.js +108 -116
  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 -162
  209. package/tsconfig.json +14 -14
  210. package/varlet.default.config.js +151 -145
  211. package/site/components/utils/shared.ts +0 -29
@@ -1,125 +1,128 @@
1
- <script setup lang="ts">
2
- import AnimationBox from '../../components/AnimationBox.vue'
3
- import config from '@config'
4
- import VarSiteButton from '../../../components/button'
5
- import VarSiteIcon from '../../../components/icon'
6
- import { get } from 'lodash-es'
7
- import { ref, watch } from 'vue'
8
- import { useRoute, useRouter } from 'vue-router'
9
- import { getBrowserThemes, setThemes } from '../../../utils'
10
- import { getPCLocationInfo, watchThemes } from '@varlet/cli/site/utils'
11
- import en_US from './locale/en-US'
12
- import zh_CN from './locale/zh-CN'
13
- import type { Ref } from 'vue'
14
-
15
- const route = useRoute()
16
- const router = useRouter()
17
- const packs = {
18
- 'zh-CN': zh_CN,
19
- 'en-US': en_US
20
- } as any
21
-
22
- const github = get(config, 'pc.header.github')
23
- const themesKey = get(config, 'themesKey')
24
- const currentThemes = ref(getBrowserThemes(themesKey))
25
- const darkMode: Ref<boolean> = ref(get(config, 'pc.header.darkMode'))
26
- const title: Ref<string> = ref(get(config, 'title'))
27
- const languages: Ref<Record<string, string>> = ref(get(config, 'pc.header.i18n'))
28
- const pack: Ref<Record<string, string>> = ref({})
29
-
30
- const goGithub = () => {
31
- window.open(github)
32
- }
33
-
34
- const getStar = () => {
35
- const { language: lang } = getPCLocationInfo()
36
- router.push(`/${lang}/home`)
37
- }
38
-
39
- const getThemesMessage = () => ({ action: 'themesChange', from: 'pc', data: currentThemes.value })
40
-
41
- const setCurrentThemes = (themes: 'themes' | 'darkThemes') => {
42
- currentThemes.value = themes
43
- setThemes(config, currentThemes.value)
44
- window.localStorage.setItem(themesKey, currentThemes.value)
45
- }
46
-
47
- const toggleTheme = () => {
48
- setCurrentThemes(currentThemes.value === 'darkThemes' ? 'themes' : 'darkThemes')
49
- window.postMessage(getThemesMessage(), '*')
50
- ; (document.getElementById('mobile') as HTMLIFrameElement)?.contentWindow!.postMessage(getThemesMessage(), '*')
51
- }
52
-
53
- const setLocale = () => {
54
- const { language: lang } = getPCLocationInfo()
55
- if (!lang) return
56
-
57
- pack.value = packs[lang]
58
- document.title = get(config, 'pc.title')[lang] as string
59
- }
60
-
61
- const toggleLanguages = () => {
62
- const { language: lang } = getPCLocationInfo()
63
-
64
- const { menuName } = getPCLocationInfo()
65
- const replaceStr = `/${lang === 'zh-CN' ? 'en-US' : 'zh-CN'}/${menuName}`
66
- router.replace(replaceStr)
67
- }
68
-
69
- setThemes(config, currentThemes.value)
70
-
71
- window.postMessage(getThemesMessage(), '*')
72
-
73
- watchThemes((themes, from) => {
74
- from === 'mobile' && setCurrentThemes(themes)
75
- })
76
-
77
- watch(() => route.path, setLocale, { immediate: true })
78
- </script>
79
-
80
- <template>
81
- <div class="home-page">
82
- <div class="slash-box box-1"></div>
83
- <div class="slash-box box-2"></div>
84
- <div class="slash-box box-3"></div>
85
- <div class="slash-box box-4"></div>
86
- <div class="slash-box box-5"></div>
87
- <div class="profile-container">
88
- <div class="container-box">
89
- <div class="description-container">
90
- <animation-box class="logo" />
91
- <div class="base-title">{{ title }}</div>
92
- </div>
93
- <div class="base-description">{{ pack.description }}</div>
94
-
95
- <div class="button-group">
96
- <var-site-button class="common-button github-button" block @click="goGithub">
97
- <div class="block-button-content">
98
- <span>GITHUB</span>
99
- <var-site-icon style="margin-left: 10px;" name="github" size="24px" />
100
- </div>
101
- </var-site-button>
102
- <var-site-button class="common-button extra-button margin-left" text v-if="darkMode" @click="toggleTheme">
103
- <var-site-icon size="24px" :name="currentThemes === 'themes' ? 'white-balance-sunny' : 'weather-night'" />
104
- </var-site-button>
105
- </div>
106
-
107
- <div class="button-group">
108
- <var-site-button type="primary" class="common-button primary-button" block @click="getStar">
109
- <div class="block-button-content">
110
- <span>{{ pack.started }}</span>
111
- <var-site-icon style="margin-left: 10px; transform: rotate(-90deg)" name="arrow-down" size="24px" />
112
- </div>
113
- </var-site-button>
114
- <var-site-button class="common-button extra-button margin-left" text v-if="languages" @click="toggleLanguages">
115
- <var-site-icon name="translate" size="24px" />
116
- </var-site-button>
117
- </div>
118
- </div>
119
- </div>
120
- </div>
121
- </template>
122
-
123
- <style lang="less" scoped>
124
- @import "./index";
125
- </style>
1
+ <script setup lang="ts">
2
+ import AnimationBox from '../../components/AnimationBox.vue'
3
+ import config from '@config'
4
+ import VarSiteButton from '../../../components/button'
5
+ import VarSiteIcon from '../../../components/icon'
6
+ import { get } from 'lodash-es'
7
+ import { ref, watch } from 'vue'
8
+ import { useRoute, useRouter } from 'vue-router'
9
+ import { getBrowserThemes, setThemes } from '../../../utils'
10
+ import { getPCLocationInfo, watchThemes } from '@varlet/cli/site/utils'
11
+ import en_US from './locale/en-US'
12
+ import zh_CN from './locale/zh-CN'
13
+ import type { Ref } from 'vue'
14
+
15
+ const route = useRoute()
16
+ const router = useRouter()
17
+ const packs = {
18
+ 'zh-CN': zh_CN,
19
+ 'en-US': en_US
20
+ } as any
21
+
22
+ const github = get(config, 'pc.header.github')
23
+ const themesKey = get(config, 'themesKey')
24
+ const currentThemes = ref(getBrowserThemes(themesKey))
25
+ const darkMode: Ref<boolean> = ref(get(config, 'pc.header.darkMode'))
26
+ const title: Ref<string> = ref(get(config, 'title'))
27
+ const languages: Ref<Record<string, string>> = ref(get(config, 'pc.header.i18n'))
28
+ const pack: Ref<Record<string, string>> = ref({})
29
+ const description:Ref<string> = ref('')
30
+
31
+ const goGithub = () => {
32
+ window.open(github)
33
+ }
34
+
35
+ const getStar = () => {
36
+ const { language: lang } = getPCLocationInfo()
37
+
38
+ router.push(`/${lang}/home`)
39
+ }
40
+
41
+ const getThemesMessage = () => ({ action: 'themesChange', from: 'pc', data: currentThemes.value })
42
+
43
+ const setCurrentThemes = (themes: 'themes' | 'darkThemes') => {
44
+ currentThemes.value = themes
45
+ setThemes(config, currentThemes.value)
46
+ window.localStorage.setItem(themesKey, currentThemes.value)
47
+ }
48
+
49
+ const toggleTheme = () => {
50
+ setCurrentThemes(currentThemes.value === 'darkThemes' ? 'themes' : 'darkThemes')
51
+ window.postMessage(getThemesMessage(), '*')
52
+ ; (document.getElementById('mobile') as HTMLIFrameElement)?.contentWindow!.postMessage(getThemesMessage(), '*')
53
+ }
54
+
55
+ const setLocale = () => {
56
+ const { language: lang } = getPCLocationInfo()
57
+ if (!lang) return
58
+
59
+ description.value = get(config, 'pc.description')[lang] as string
60
+ pack.value = packs[lang]
61
+ document.title = get(config, 'pc.title')[lang] as string
62
+ }
63
+
64
+ const toggleLanguages = () => {
65
+ const { language: lang } = getPCLocationInfo()
66
+
67
+ const { menuName } = getPCLocationInfo()
68
+ const replaceStr = `/${lang === 'zh-CN' ? 'en-US' : 'zh-CN'}/${menuName}`
69
+ router.replace(replaceStr)
70
+ }
71
+
72
+ setThemes(config, currentThemes.value)
73
+
74
+ window.postMessage(getThemesMessage(), '*')
75
+
76
+ watchThemes((themes, from) => {
77
+ from === 'mobile' && setCurrentThemes(themes)
78
+ })
79
+
80
+ watch(() => route.path, setLocale, { immediate: true })
81
+ </script>
82
+
83
+ <template>
84
+ <div class="home-page">
85
+ <div class="slash-box box-1"></div>
86
+ <div class="slash-box box-2"></div>
87
+ <div class="slash-box box-3"></div>
88
+ <div class="slash-box box-4"></div>
89
+ <div class="slash-box box-5"></div>
90
+ <div class="profile-container">
91
+ <div class="container-box">
92
+ <div class="description-container">
93
+ <animation-box class="logo" />
94
+ <div class="base-title">{{ title }}</div>
95
+ </div>
96
+ <div class="base-description">{{ description }}</div>
97
+
98
+ <div class="button-group">
99
+ <var-site-button class="common-button github-button" block @click="goGithub">
100
+ <div class="block-button-content">
101
+ <span>GITHUB</span>
102
+ <var-site-icon style="margin-left: 10px;" name="github" size="24px" />
103
+ </div>
104
+ </var-site-button>
105
+ <var-site-button class="common-button extra-button margin-left" text v-if="darkMode" @click="toggleTheme">
106
+ <var-site-icon size="24px" :name="currentThemes === 'themes' ? 'white-balance-sunny' : 'weather-night'" />
107
+ </var-site-button>
108
+ </div>
109
+
110
+ <div class="button-group">
111
+ <var-site-button type="primary" class="common-button primary-button" block @click="getStar">
112
+ <div class="block-button-content">
113
+ <span>{{ pack.started }}</span>
114
+ <var-site-icon style="margin-left: 10px; transform: rotate(-90deg)" name="arrow-down" size="24px" />
115
+ </div>
116
+ </var-site-button>
117
+ <var-site-button class="common-button extra-button margin-left" text v-if="languages" @click="toggleLanguages">
118
+ <var-site-icon name="translate" size="24px" />
119
+ </var-site-button>
120
+ </div>
121
+ </div>
122
+ </div>
123
+ </div>
124
+ </template>
125
+
126
+ <style lang="less" scoped>
127
+ @import "./index";
128
+ </style>
@@ -1,5 +1,3 @@
1
- export default {
2
- started: 'GET STARTED',
3
- description: 'Varlet is a Material design mobile component library developed based on Vue3, developed and maintained by partners in the community. ' +
4
- 'Support Typescript, import on demand, dark mode, theme customization, internationalization, and provide VSCode plugin to ensure a good development experience',
5
- }
1
+ export default {
2
+ started: 'GET STARTED'
3
+ }
@@ -1,5 +1,3 @@
1
- export default {
2
- started: '起步',
3
- description: 'Varlet 是一个基于 Vue3 开发的 Material 风格移动端组件库,' +
4
- '全面拥抱 Vue3 生态,由社区团队维护。支持 Typescript、按需引入、暗黑模式、主题定制、国际化,并提供 VSCode 插件保障良好的开发体验',
5
- }
1
+ export default {
2
+ started: '起步'
3
+ }
@@ -1,11 +1,11 @@
1
- {
2
- "compilerOptions": {
3
- "target": "es5",
4
- "strict": true,
5
- "downlevelIteration": true,
6
- "skipLibCheck": true,
7
- "esModuleInterop": true,
8
- "jsx": "preserve",
9
- "lib": ["esnext", "dom"]
10
- }
11
- }
1
+ {
2
+ "compilerOptions": {
3
+ "target": "es5",
4
+ "strict": true,
5
+ "downlevelIteration": true,
6
+ "skipLibCheck": true,
7
+ "esModuleInterop": true,
8
+ "jsx": "preserve",
9
+ "lib": ["esnext", "dom"]
10
+ }
11
+ }
@@ -1,75 +1,75 @@
1
- import Progress from './components/progress'
2
- import { reactive } from 'vue'
3
- import config from '@config'
4
- import { getBrowserThemes, mountInstance, watchThemes } from './utils'
5
- import { get } from 'lodash-es'
6
-
7
- function getColor(themes?: 'themes' | 'darkThemes') {
8
- const themesKey = get(config, 'themesKey')
9
-
10
- return get(config, `${themes ?? getBrowserThemes(themesKey)}.color-progress`)
11
- }
12
-
13
- function getTrackColor(themes?: 'themes' | 'darkThemes') {
14
- const themesKey = get(config, 'themesKey')
15
-
16
- return get(config, `${themes ?? getBrowserThemes(themesKey)}.color-progress-track`)
17
- }
18
-
19
- export function useProgress() {
20
- let timer: number
21
- let currentThemes: 'themes' | 'darkThemes'
22
- const trackColor = getTrackColor()
23
- const color = getColor()
24
-
25
- const props = reactive({
26
- style: {
27
- position: 'fixed',
28
- width: '100%',
29
- left: 0,
30
- top: 0,
31
- zIndex: 10086,
32
- },
33
- trackColor,
34
- color,
35
- lineWidth: 3,
36
- value: 0,
37
- })
38
-
39
- watchThemes((themes) => {
40
- currentThemes = themes
41
- props.trackColor = getTrackColor(themes)
42
- props.color = props.value === 100 ? getTrackColor(themes) : getColor(themes)
43
- }, false)
44
-
45
- const changeValue = () => {
46
- timer = window.setTimeout(() => {
47
- if (props.value >= 95) return
48
- let num = Math.random()
49
-
50
- if (props.value < 70) num = Math.round(5 * Math.random())
51
-
52
- props.value += num
53
- changeValue()
54
- }, 200)
55
- }
56
-
57
- const start = () => {
58
- props.value = 0
59
- setTimeout(() => (props.color = getColor(currentThemes)), 200)
60
- changeValue()
61
- }
62
-
63
- const end = () => {
64
- props.value = 100
65
- setTimeout(() => (props.color = getTrackColor(currentThemes)), 300)
66
- window.clearTimeout(timer)
67
- }
68
-
69
- mountInstance(Progress, props)
70
-
71
- return {
72
- start,
73
- end,
74
- }
75
- }
1
+ import Progress from './components/progress'
2
+ import { reactive } from 'vue'
3
+ import config from '@config'
4
+ import { getBrowserThemes, mountInstance, watchThemes } from './utils'
5
+ import { get } from 'lodash-es'
6
+
7
+ function getColor(themes?: 'themes' | 'darkThemes') {
8
+ const themesKey = get(config, 'themesKey')
9
+
10
+ return get(config, `${themes ?? getBrowserThemes(themesKey)}.color-progress`)
11
+ }
12
+
13
+ function getTrackColor(themes?: 'themes' | 'darkThemes') {
14
+ const themesKey = get(config, 'themesKey')
15
+
16
+ return get(config, `${themes ?? getBrowserThemes(themesKey)}.color-progress-track`)
17
+ }
18
+
19
+ export function useProgress() {
20
+ let timer: number
21
+ let currentThemes: 'themes' | 'darkThemes'
22
+ const trackColor = getTrackColor()
23
+ const color = getColor()
24
+
25
+ const props = reactive({
26
+ style: {
27
+ position: 'fixed',
28
+ width: '100%',
29
+ left: 0,
30
+ top: 0,
31
+ zIndex: 10086,
32
+ },
33
+ trackColor,
34
+ color,
35
+ lineWidth: 3,
36
+ value: 0,
37
+ })
38
+
39
+ watchThemes((themes) => {
40
+ currentThemes = themes
41
+ props.trackColor = getTrackColor(themes)
42
+ props.color = props.value === 100 ? getTrackColor(themes) : getColor(themes)
43
+ }, false)
44
+
45
+ const changeValue = () => {
46
+ timer = window.setTimeout(() => {
47
+ if (props.value >= 95) return
48
+ let num = Math.random()
49
+
50
+ if (props.value < 70) num = Math.round(5 * Math.random())
51
+
52
+ props.value += num
53
+ changeValue()
54
+ }, 200)
55
+ }
56
+
57
+ const start = () => {
58
+ props.value = 0
59
+ setTimeout(() => (props.color = getColor(currentThemes)), 200)
60
+ changeValue()
61
+ }
62
+
63
+ const end = () => {
64
+ props.value = 100
65
+ setTimeout(() => (props.color = getTrackColor(currentThemes)), 300)
66
+ window.clearTimeout(timer)
67
+ }
68
+
69
+ mountInstance(Progress, props)
70
+
71
+ return {
72
+ start,
73
+ end,
74
+ }
75
+ }