@varlet/cli 1.27.17-alpha.1656907860130 → 1.27.17

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 (208) 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/types/basicComponent.d.ts +7 -7
  15. package/generators/config/default/base/types/button.d.ts +12 -12
  16. package/generators/config/default/base/types/index.d.ts +6 -6
  17. package/generators/config/default/base/varlet.config.js +110 -110
  18. package/generators/config/default/sfc/src/button/Button.vue +30 -30
  19. package/generators/config/default/sfc/src/button/__tests__/index.spec.js +7 -7
  20. package/generators/config/default/sfc/src/button/button.less +14 -14
  21. package/generators/config/default/sfc/src/button/docs/zh-CN.md +47 -47
  22. package/generators/config/default/sfc/src/button/example/BasicUse.vue +7 -7
  23. package/generators/config/default/sfc/src/button/example/ModifyColor.vue +7 -7
  24. package/generators/config/default/sfc/src/button/example/index.vue +13 -13
  25. package/generators/config/default/sfc/src/button/index.ts +10 -10
  26. package/generators/config/default/tsx/src/button/Button.tsx +31 -31
  27. package/generators/config/default/tsx/src/button/__tests__/index.spec.js +7 -7
  28. package/generators/config/default/tsx/src/button/button.less +14 -14
  29. package/generators/config/default/tsx/src/button/docs/zh-CN.md +47 -47
  30. package/generators/config/default/tsx/src/button/example/BasicUse.vue +7 -7
  31. package/generators/config/default/tsx/src/button/example/ModifyColor.vue +7 -7
  32. package/generators/config/default/tsx/src/button/example/index.vue +13 -13
  33. package/generators/config/default/tsx/src/button/index.ts +10 -10
  34. package/generators/config/i18n/base/docs/home.en-US.md +11 -11
  35. package/generators/config/i18n/base/docs/home.zh-CN.md +10 -10
  36. package/generators/config/i18n/base/types/basicComponent.d.ts +7 -7
  37. package/generators/config/i18n/base/types/button.d.ts +12 -12
  38. package/generators/config/i18n/base/types/index.d.ts +7 -7
  39. package/generators/config/i18n/base/types/locale.d.ts +24 -24
  40. package/generators/config/i18n/base/varlet.config.js +122 -122
  41. package/generators/config/i18n/sfc/src/button/Button.vue +36 -36
  42. package/generators/config/i18n/sfc/src/button/__tests__/index.spec.js +7 -7
  43. package/generators/config/i18n/sfc/src/button/button.less +14 -14
  44. package/generators/config/i18n/sfc/src/button/docs/en-US.md +34 -34
  45. package/generators/config/i18n/sfc/src/button/docs/zh-CN.md +34 -34
  46. package/generators/config/i18n/sfc/src/button/example/BasicUse.vue +11 -11
  47. package/generators/config/i18n/sfc/src/button/example/ModifyColor.vue +11 -11
  48. package/generators/config/i18n/sfc/src/button/example/index.vue +13 -13
  49. package/generators/config/i18n/sfc/src/button/example/locale/en-US.ts +5 -5
  50. package/generators/config/i18n/sfc/src/button/example/locale/index.ts +23 -23
  51. package/generators/config/i18n/sfc/src/button/example/locale/zh-CN.ts +5 -5
  52. package/generators/config/i18n/sfc/src/button/index.ts +10 -10
  53. package/generators/config/i18n/sfc/src/locale/__tests__/index.spec.js +51 -51
  54. package/generators/config/i18n/sfc/src/locale/docs/en-US.md +26 -26
  55. package/generators/config/i18n/sfc/src/locale/docs/zh-CN.md +25 -25
  56. package/generators/config/i18n/sfc/src/locale/en-US.d.ts +5 -5
  57. package/generators/config/i18n/sfc/src/locale/en-US.ts +7 -7
  58. package/generators/config/i18n/sfc/src/locale/index.ts +67 -67
  59. package/generators/config/i18n/sfc/src/locale/zh-CN.d.ts +5 -5
  60. package/generators/config/i18n/sfc/src/locale/zh-CN.ts +7 -7
  61. package/generators/config/i18n/tsx/src/button/Button.tsx +35 -35
  62. package/generators/config/i18n/tsx/src/button/__tests__/index.spec.js +7 -7
  63. package/generators/config/i18n/tsx/src/button/button.less +14 -14
  64. package/generators/config/i18n/tsx/src/button/docs/en-US.md +34 -34
  65. package/generators/config/i18n/tsx/src/button/docs/zh-CN.md +34 -34
  66. package/generators/config/i18n/tsx/src/button/example/BasicUse.vue +11 -11
  67. package/generators/config/i18n/tsx/src/button/example/ModifyColor.vue +11 -11
  68. package/generators/config/i18n/tsx/src/button/example/index.vue +13 -13
  69. package/generators/config/i18n/tsx/src/button/example/locale/en-US.ts +5 -5
  70. package/generators/config/i18n/tsx/src/button/example/locale/index.ts +23 -23
  71. package/generators/config/i18n/tsx/src/button/example/locale/zh-CN.ts +5 -5
  72. package/generators/config/i18n/tsx/src/button/index.ts +10 -10
  73. package/generators/config/i18n/tsx/src/locale/__tests__/index.spec.js +51 -51
  74. package/generators/config/i18n/tsx/src/locale/docs/en-US.md +26 -26
  75. package/generators/config/i18n/tsx/src/locale/docs/zh-CN.md +25 -25
  76. package/generators/config/i18n/tsx/src/locale/en-US.d.ts +5 -5
  77. package/generators/config/i18n/tsx/src/locale/en-US.ts +7 -7
  78. package/generators/config/i18n/tsx/src/locale/index.ts +67 -67
  79. package/generators/config/i18n/tsx/src/locale/zh-CN.d.ts +5 -5
  80. package/generators/config/i18n/tsx/src/locale/zh-CN.ts +7 -7
  81. package/lib/commands/build.d.ts +1 -1
  82. package/lib/commands/build.js +67 -67
  83. package/lib/commands/changelog.d.ts +6 -6
  84. package/lib/commands/changelog.js +27 -27
  85. package/lib/commands/commitLint.d.ts +1 -1
  86. package/lib/commands/commitLint.js +21 -21
  87. package/lib/commands/compile.d.ts +5 -5
  88. package/lib/commands/compile.js +119 -119
  89. package/lib/commands/create.d.ts +3 -3
  90. package/lib/commands/create.js +132 -132
  91. package/lib/commands/dev.d.ts +3 -3
  92. package/lib/commands/dev.js +123 -123
  93. package/lib/commands/gen.d.ts +1 -1
  94. package/lib/commands/gen.js +112 -112
  95. package/lib/commands/jest.d.ts +8 -8
  96. package/lib/commands/jest.js +81 -81
  97. package/lib/commands/lint.d.ts +1 -1
  98. package/lib/commands/lint.js +123 -123
  99. package/lib/commands/preview.d.ts +1 -1
  100. package/lib/commands/preview.js +74 -74
  101. package/lib/commands/release.d.ts +3 -3
  102. package/lib/commands/release.js +269 -267
  103. package/lib/compiler/compileModule.d.ts +5 -5
  104. package/lib/compiler/compileModule.js +186 -186
  105. package/lib/compiler/compileSFC.d.ts +2 -2
  106. package/lib/compiler/compileSFC.js +132 -132
  107. package/lib/compiler/compileScript.d.ts +17 -17
  108. package/lib/compiler/compileScript.js +202 -202
  109. package/lib/compiler/compileSiteEntry.d.ts +13 -13
  110. package/lib/compiler/compileSiteEntry.js +237 -237
  111. package/lib/compiler/compileStyle.d.ts +11 -11
  112. package/lib/compiler/compileStyle.js +101 -101
  113. package/lib/compiler/compileTemplateHighlight.d.ts +10 -10
  114. package/lib/compiler/compileTemplateHighlight.js +193 -193
  115. package/lib/compiler/compileTypes.d.ts +2 -2
  116. package/lib/compiler/compileTypes.js +88 -88
  117. package/lib/config/babel.config.d.ts +2 -2
  118. package/lib/config/babel.config.js +31 -31
  119. package/lib/config/babel.sfc.transform.d.ts +1 -1
  120. package/lib/config/babel.sfc.transform.js +18 -18
  121. package/lib/config/jest.config.d.ts +1 -1
  122. package/lib/config/jest.config.js +36 -36
  123. package/lib/config/jest.media.mock.js +2 -2
  124. package/lib/config/jest.style.mock.js +2 -2
  125. package/lib/config/varlet.config.d.ts +1 -1
  126. package/lib/config/varlet.config.js +24 -24
  127. package/lib/config/vite.config.d.ts +5 -5
  128. package/lib/config/vite.config.js +162 -162
  129. package/lib/index.d.ts +2 -2
  130. package/lib/index.js +83 -83
  131. package/lib/shared/constant.d.ts +43 -43
  132. package/lib/shared/constant.js +50 -50
  133. package/lib/shared/fsUtils.d.ts +12 -12
  134. package/lib/shared/fsUtils.js +108 -108
  135. package/lib/shared/logger.d.ts +7 -7
  136. package/lib/shared/logger.js +20 -20
  137. package/package.json +8 -7
  138. package/preset.js +3 -3
  139. package/site/components/button/Button.vue +84 -84
  140. package/site/components/button/button.less +183 -183
  141. package/site/components/button/index.ts +10 -10
  142. package/site/components/button/props.ts +70 -70
  143. package/site/components/cell/Cell.vue +42 -42
  144. package/site/components/cell/cell.less +74 -74
  145. package/site/components/cell/index.ts +10 -10
  146. package/site/components/cell/props.ts +27 -27
  147. package/site/components/code-example/CodeExample.vue +143 -143
  148. package/site/components/code-example/codeExample.less +41 -41
  149. package/site/components/code-example/index.ts +10 -10
  150. package/site/components/context/index.ts +17 -17
  151. package/site/components/context/lock.ts +103 -103
  152. package/site/components/context/zIndex.ts +20 -20
  153. package/site/components/icon/Icon.vue +68 -68
  154. package/site/components/icon/icon.less +26 -26
  155. package/site/components/icon/index.ts +10 -10
  156. package/site/components/icon/props.ts +24 -24
  157. package/site/components/loading/Loading.vue +55 -55
  158. package/site/components/loading/index.ts +10 -10
  159. package/site/components/loading/loading.less +420 -420
  160. package/site/components/loading/props.ts +37 -37
  161. package/site/components/progress/Progress.vue +108 -108
  162. package/site/components/progress/index.ts +10 -10
  163. package/site/components/progress/progress.less +98 -98
  164. package/site/components/progress/props.ts +55 -55
  165. package/site/components/ripple/index.ts +167 -167
  166. package/site/components/ripple/ripple.less +17 -17
  167. package/site/components/snackbar/Snackbar.vue +38 -38
  168. package/site/components/snackbar/core.vue +117 -117
  169. package/site/components/snackbar/index.tsx +270 -270
  170. package/site/components/snackbar/props.ts +94 -94
  171. package/site/components/snackbar/snackbar.less +135 -135
  172. package/site/components/styles/common.less +64 -64
  173. package/site/components/styles/elevation.less +126 -126
  174. package/site/components/styles/var.less +27 -27
  175. package/site/components/utils/components.ts +69 -69
  176. package/site/components/utils/elements.ts +85 -85
  177. package/site/index.html +49 -49
  178. package/site/mobile/App.vue +291 -291
  179. package/site/mobile/components/AppHome.vue +134 -134
  180. package/site/mobile/components/AppType.vue +22 -22
  181. package/site/mobile/components/app-bar/AppBar.vue +69 -69
  182. package/site/mobile/components/app-bar/appBar.less +56 -56
  183. package/site/mobile/components/app-bar/index.ts +10 -10
  184. package/site/mobile/components/app-bar/props.ts +25 -25
  185. package/site/mobile/components/styles/common.less +64 -64
  186. package/site/mobile/components/styles/elevation.less +126 -126
  187. package/site/mobile/components/styles/var.less +27 -27
  188. package/site/mobile/main.ts +74 -74
  189. package/site/mobile.html +41 -41
  190. package/site/module.d.ts +5 -5
  191. package/site/pc/App.vue +43 -43
  192. package/site/pc/Layout.vue +397 -397
  193. package/site/pc/components/AnimationBox.vue +45 -45
  194. package/site/pc/components/AppHeader.vue +355 -355
  195. package/site/pc/components/AppMobile.vue +54 -54
  196. package/site/pc/components/AppSidebar.vue +134 -134
  197. package/site/pc/components/LogoAnimation.vue +119 -119
  198. package/site/pc/floating.ts +9 -9
  199. package/site/pc/main.ts +94 -94
  200. package/site/pc/pages/index/index.less +194 -194
  201. package/site/pc/pages/index/index.vue +145 -128
  202. package/site/pc/pages/index/locale/en-US.ts +5 -3
  203. package/site/pc/pages/index/locale/zh-CN.ts +5 -3
  204. package/site/tsconfig.json +11 -11
  205. package/site/useProgress.ts +75 -75
  206. package/site/utils.ts +153 -153
  207. package/tsconfig.json +14 -14
  208. package/varlet.default.config.js +145 -151
@@ -1,128 +1,145 @@
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
+ <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, computed } 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, ComputedRef } 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 language: Ref<string> = ref(get(config, 'defaultLanguage'))
28
+ const languages: Ref<Record<string, string>> = ref(get(config, 'pc.header.i18n'))
29
+ const pack: Ref<Record<string, string>> = ref({})
30
+
31
+ const description: ComputedRef<string> = computed(() => {
32
+ const { indexPage = {} } = get(config, 'pc')
33
+
34
+ return indexPage?.description?.[language.value] || pack.value.description
35
+ })
36
+
37
+ const started: ComputedRef<string> = computed(() => {
38
+ const { indexPage = {} } = get(config, 'pc')
39
+
40
+ return indexPage?.started?.[language.value] || pack.value.started
41
+ })
42
+
43
+ const goGithub = () => {
44
+ window.open(github)
45
+ }
46
+
47
+ const getStar = () => {
48
+ router.push(`/${language.value}/home`)
49
+ }
50
+
51
+ const getThemesMessage = () => ({ action: 'themesChange', from: 'pc', data: currentThemes.value })
52
+
53
+ const setCurrentThemes = (themes: 'themes' | 'darkThemes') => {
54
+ currentThemes.value = themes
55
+ setThemes(config, currentThemes.value)
56
+ window.localStorage.setItem(themesKey, currentThemes.value)
57
+ }
58
+
59
+ const toggleTheme = () => {
60
+ setCurrentThemes(currentThemes.value === 'darkThemes' ? 'themes' : 'darkThemes')
61
+ window.postMessage(getThemesMessage(), '*')
62
+ ; (document.getElementById('mobile') as HTMLIFrameElement)?.contentWindow!.postMessage(getThemesMessage(), '*')
63
+ }
64
+
65
+ const setLocale = () => {
66
+ const { language: lang } = getPCLocationInfo()
67
+ if (!lang) return
68
+
69
+ language.value = lang
70
+ pack.value = packs[lang]
71
+ document.title = get(config, 'pc.title')[lang] as string
72
+ }
73
+
74
+ const toggleLanguages = () => {
75
+ const { language: lang } = getPCLocationInfo()
76
+
77
+ const { menuName } = getPCLocationInfo()
78
+ const replaceStr = `/${lang === 'zh-CN' ? 'en-US' : 'zh-CN'}/${menuName}`
79
+
80
+ language.value = lang
81
+ router.replace(replaceStr)
82
+ }
83
+
84
+ setThemes(config, currentThemes.value)
85
+
86
+ window.postMessage(getThemesMessage(), '*')
87
+
88
+ watchThemes((themes, from) => {
89
+ from === 'mobile' && setCurrentThemes(themes)
90
+ })
91
+
92
+ watch(() => route.path, setLocale, { immediate: true })
93
+ </script>
94
+
95
+ <template>
96
+ <div class="home-page">
97
+ <div class="slash-box box-1"></div>
98
+ <div class="slash-box box-2"></div>
99
+ <div class="slash-box box-3"></div>
100
+ <div class="slash-box box-4"></div>
101
+ <div class="slash-box box-5"></div>
102
+ <div class="profile-container">
103
+ <div class="container-box">
104
+ <div class="description-container">
105
+ <animation-box class="logo" />
106
+ <div class="base-title">{{ title }}</div>
107
+ </div>
108
+ <div class="base-description">{{ description }}</div>
109
+
110
+ <div class="button-group">
111
+ <var-site-button class="common-button github-button" block @click="goGithub">
112
+ <div class="block-button-content">
113
+ <span>GITHUB</span>
114
+ <var-site-icon style="margin-left: 10px" name="github" size="24px" />
115
+ </div>
116
+ </var-site-button>
117
+ <var-site-button class="common-button extra-button margin-left" text v-if="darkMode" @click="toggleTheme">
118
+ <var-site-icon size="24px" :name="currentThemes === 'themes' ? 'white-balance-sunny' : 'weather-night'" />
119
+ </var-site-button>
120
+ </div>
121
+
122
+ <div class="button-group">
123
+ <var-site-button type="primary" class="common-button primary-button" block @click="getStar">
124
+ <div class="block-button-content">
125
+ <span>{{ started }}</span>
126
+ <var-site-icon style="margin-left: 10px; transform: rotate(-90deg)" name="arrow-down" size="24px" />
127
+ </div>
128
+ </var-site-button>
129
+ <var-site-button
130
+ class="common-button extra-button margin-left"
131
+ text
132
+ v-if="languages"
133
+ @click="toggleLanguages"
134
+ >
135
+ <var-site-icon name="translate" size="24px" />
136
+ </var-site-button>
137
+ </div>
138
+ </div>
139
+ </div>
140
+ </div>
141
+ </template>
142
+
143
+ <style lang="less" scoped>
144
+ @import './index';
145
+ </style>
@@ -1,3 +1,5 @@
1
- export default {
2
- started: 'GET STARTED'
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,3 +1,5 @@
1
- export default {
2
- started: '起步'
3
- }
1
+ export default {
2
+ started: '起步',
3
+ description: 'Varlet 是一个基于 Vue3 开发的 Material 风格移动端组件库,' +
4
+ '全面拥抱 Vue3 生态,由社区团队维护。支持 Typescript、按需引入、暗黑模式、主题定制、国际化,并提供 VSCode 插件保障良好的开发体验',
5
+ }
@@ -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
+ }