@cloudbase/weda-ui 0.2.9 → 0.2.10

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 (219) hide show
  1. package/package.json +1 -1
  2. package/src/web/components/link/test/__snapshots__/storybook.test.js.snap +754 -0
  3. package/src/web/components/modal/index.jsx +3 -2
  4. package/src/web/wedatheme/.code.yml +16 -0
  5. package/src/web/wedatheme/.editorconfig +9 -0
  6. package/src/web/wedatheme/.eslintrc +20 -0
  7. package/src/web/wedatheme/.orange-ci.yml +55 -0
  8. package/src/web/wedatheme/.vscode/extensions.json +3 -0
  9. package/src/web/wedatheme/.vscode/settings.json +11 -0
  10. package/src/web/wedatheme/README.md +50 -0
  11. package/src/web/wedatheme/i18n/README.md +4 -0
  12. package/src/web/wedatheme/i18n/translation/index.js +10 -0
  13. package/src/web/wedatheme/i18n/translation/zh.js +15 -0
  14. package/src/web/wedatheme/jsconfig.json +15 -0
  15. package/src/web/wedatheme/mock/app.js +42 -0
  16. package/src/web/wedatheme/mock/history-context.js +8 -0
  17. package/src/web/wedatheme/mock/index.js +3 -0
  18. package/src/web/wedatheme/mock/layout/AppLayout.jsx +28 -0
  19. package/src/web/wedatheme/mock/layout/MenuWithRouter.jsx +50 -0
  20. package/src/web/wedatheme/mock/layout/index.js +1 -0
  21. package/src/web/wedatheme/package.json +61 -0
  22. package/src/web/wedatheme/public/index.html +19 -0
  23. package/src/web/wedatheme/src/app.js +22 -0
  24. package/src/web/wedatheme/src/components/README.md +4 -0
  25. package/src/web/wedatheme/src/configs/menu.js +9 -0
  26. package/src/web/wedatheme/src/routes/wedatheme-index/Component.jsx +402 -0
  27. package/src/web/wedatheme/src/routes/wedatheme-index/Form.jsx +729 -0
  28. package/src/web/wedatheme/src/routes/wedatheme-index/FormItem.jsx +18 -0
  29. package/src/web/wedatheme/src/routes/wedatheme-index/WedathemeIndex.jsx +1276 -0
  30. package/src/web/wedatheme/src/routes/wedatheme-index/index.js +1 -0
  31. package/src/web/wedatheme/src/routes/weui2td/WEUI2TD.jsx +3 -0
  32. package/src/web/wedatheme/src/routes/weui2td/index.js +1 -0
  33. package/src/web/wedatheme/src/styles/_btn.scss +24 -0
  34. package/src/web/wedatheme/src/styles/_icon.scss +653 -0
  35. package/src/web/wedatheme/src/styles/_map.scss +12 -0
  36. package/src/web/wedatheme/src/styles/_middle.scss +340 -0
  37. package/src/web/wedatheme/src/styles/_upload.scss +47 -0
  38. package/src/web/wedatheme/src/styles/assets/alert-close.svg +3 -0
  39. package/src/web/wedatheme/src/styles/assets/and.svg +12 -0
  40. package/src/web/wedatheme/src/styles/assets/arrowdown--line.svg +12 -0
  41. package/src/web/wedatheme/src/styles/assets/arrowdown.svg +12 -0
  42. package/src/web/wedatheme/src/styles/assets/arrowleft--line.svg +12 -0
  43. package/src/web/wedatheme/src/styles/assets/arrowleft.svg +12 -0
  44. package/src/web/wedatheme/src/styles/assets/arrowright--line.svg +12 -0
  45. package/src/web/wedatheme/src/styles/assets/arrowright-blue--line.svg +12 -0
  46. package/src/web/wedatheme/src/styles/assets/arrowright.svg +12 -0
  47. package/src/web/wedatheme/src/styles/assets/arrowup--line.svg +12 -0
  48. package/src/web/wedatheme/src/styles/assets/arrowup.svg +12 -0
  49. package/src/web/wedatheme/src/styles/assets/bell-warning.svg +3 -0
  50. package/src/web/wedatheme/src/styles/assets/btnback.svg +12 -0
  51. package/src/web/wedatheme/src/styles/assets/calendar.svg +12 -0
  52. package/src/web/wedatheme/src/styles/assets/chartcolumn-1.svg +12 -0
  53. package/src/web/wedatheme/src/styles/assets/chartcolumn.svg +12 -0
  54. package/src/web/wedatheme/src/styles/assets/chartline-1.svg +9 -0
  55. package/src/web/wedatheme/src/styles/assets/chartline.svg +9 -0
  56. package/src/web/wedatheme/src/styles/assets/chartpie-1.svg +12 -0
  57. package/src/web/wedatheme/src/styles/assets/chartpie.svg +12 -0
  58. package/src/web/wedatheme/src/styles/assets/check-1.svg +8 -0
  59. package/src/web/wedatheme/src/styles/assets/check-2.svg +1 -0
  60. package/src/web/wedatheme/src/styles/assets/check.svg +8 -0
  61. package/src/web/wedatheme/src/styles/assets/close-1.svg +8 -0
  62. package/src/web/wedatheme/src/styles/assets/close.svg +8 -0
  63. package/src/web/wedatheme/src/styles/assets/consult.svg +8 -0
  64. package/src/web/wedatheme/src/styles/assets/convertip--blue.svg +12 -0
  65. package/src/web/wedatheme/src/styles/assets/convertip.svg +12 -0
  66. package/src/web/wedatheme/src/styles/assets/copy.svg +12 -0
  67. package/src/web/wedatheme/src/styles/assets/cur-active.svg +12 -0
  68. package/src/web/wedatheme/src/styles/assets/cur.svg +12 -0
  69. package/src/web/wedatheme/src/styles/assets/daily.svg +13 -0
  70. package/src/web/wedatheme/src/styles/assets/database.svg +12 -0
  71. package/src/web/wedatheme/src/styles/assets/datasheet.svg +12 -0
  72. package/src/web/wedatheme/src/styles/assets/delete-white.svg +8 -0
  73. package/src/web/wedatheme/src/styles/assets/delete.svg +8 -0
  74. package/src/web/wedatheme/src/styles/assets/detail.svg +13 -0
  75. package/src/web/wedatheme/src/styles/assets/dismiss.svg +8 -0
  76. package/src/web/wedatheme/src/styles/assets/download.svg +12 -0
  77. package/src/web/wedatheme/src/styles/assets/drop.svg +15 -0
  78. package/src/web/wedatheme/src/styles/assets/email-error.svg +14 -0
  79. package/src/web/wedatheme/src/styles/assets/email-warning.svg +12 -0
  80. package/src/web/wedatheme/src/styles/assets/email.svg +14 -0
  81. package/src/web/wedatheme/src/styles/assets/emailv.svg +12 -0
  82. package/src/web/wedatheme/src/styles/assets/error-1.svg +8 -0
  83. package/src/web/wedatheme/src/styles/assets/error-filled.svg +3 -0
  84. package/src/web/wedatheme/src/styles/assets/error.svg +8 -0
  85. package/src/web/wedatheme/src/styles/assets/externallink.svg +12 -0
  86. package/src/web/wedatheme/src/styles/assets/favorable.svg +9 -0
  87. package/src/web/wedatheme/src/styles/assets/filter.svg +12 -0
  88. package/src/web/wedatheme/src/styles/assets/firstpage.svg +13 -0
  89. package/src/web/wedatheme/src/styles/assets/folderclose.svg +8 -0
  90. package/src/web/wedatheme/src/styles/assets/folderopen.svg +8 -0
  91. package/src/web/wedatheme/src/styles/assets/fullscreenquit.svg +12 -0
  92. package/src/web/wedatheme/src/styles/assets/fullsreen.svg +12 -0
  93. package/src/web/wedatheme/src/styles/assets/globe-gray.svg +12 -0
  94. package/src/web/wedatheme/src/styles/assets/guide.svg +9 -0
  95. package/src/web/wedatheme/src/styles/assets/help.svg +8 -0
  96. package/src/web/wedatheme/src/styles/assets/hide.svg +8 -0
  97. package/src/web/wedatheme/src/styles/assets/info.svg +8 -0
  98. package/src/web/wedatheme/src/styles/assets/infoblue-1.svg +8 -0
  99. package/src/web/wedatheme/src/styles/assets/infoblue-filled.svg +3 -0
  100. package/src/web/wedatheme/src/styles/assets/infoblue.svg +8 -0
  101. package/src/web/wedatheme/src/styles/assets/jump-black.svg +12 -0
  102. package/src/web/wedatheme/src/styles/assets/jump.svg +12 -0
  103. package/src/web/wedatheme/src/styles/assets/lastpage.svg +13 -0
  104. package/src/web/wedatheme/src/styles/assets/loading.svg +12 -0
  105. package/src/web/wedatheme/src/styles/assets/local.svg +10 -0
  106. package/src/web/wedatheme/src/styles/assets/menu-fold-white.svg +6 -0
  107. package/src/web/wedatheme/src/styles/assets/menu-fold.svg +6 -0
  108. package/src/web/wedatheme/src/styles/assets/minus.svg +12 -0
  109. package/src/web/wedatheme/src/styles/assets/monitor.svg +12 -0
  110. package/src/web/wedatheme/src/styles/assets/more.svg +8 -0
  111. package/src/web/wedatheme/src/styles/assets/multi-line.svg +12 -0
  112. package/src/web/wedatheme/src/styles/assets/news.svg +3 -0
  113. package/src/web/wedatheme/src/styles/assets/not.svg +12 -0
  114. package/src/web/wedatheme/src/styles/assets/notice.svg +8 -0
  115. package/src/web/wedatheme/src/styles/assets/pencil.svg +12 -0
  116. package/src/web/wedatheme/src/styles/assets/pending-1.svg +8 -0
  117. package/src/web/wedatheme/src/styles/assets/pending-gray.svg +8 -0
  118. package/src/web/wedatheme/src/styles/assets/pending.svg +8 -0
  119. package/src/web/wedatheme/src/styles/assets/percent-blue.svg +16 -0
  120. package/src/web/wedatheme/src/styles/assets/percent.svg +16 -0
  121. package/src/web/wedatheme/src/styles/assets/phone-error.svg +11 -0
  122. package/src/web/wedatheme/src/styles/assets/phone-warning.svg +9 -0
  123. package/src/web/wedatheme/src/styles/assets/phone.svg +12 -0
  124. package/src/web/wedatheme/src/styles/assets/phonev.svg +9 -0
  125. package/src/web/wedatheme/src/styles/assets/plus.svg +12 -0
  126. package/src/web/wedatheme/src/styles/assets/qq.svg +11 -0
  127. package/src/web/wedatheme/src/styles/assets/realname.svg +8 -0
  128. package/src/web/wedatheme/src/styles/assets/realnamev.svg +9 -0
  129. package/src/web/wedatheme/src/styles/assets/refresh-blue.svg +12 -0
  130. package/src/web/wedatheme/src/styles/assets/refresh.svg +12 -0
  131. package/src/web/wedatheme/src/styles/assets/relationship-1.svg +12 -0
  132. package/src/web/wedatheme/src/styles/assets/relationship.svg +12 -0
  133. package/src/web/wedatheme/src/styles/assets/remind.svg +8 -0
  134. package/src/web/wedatheme/src/styles/assets/search.svg +8 -0
  135. package/src/web/wedatheme/src/styles/assets/setting.svg +12 -0
  136. package/src/web/wedatheme/src/styles/assets/shopcart.svg +8 -0
  137. package/src/web/wedatheme/src/styles/assets/show.svg +8 -0
  138. package/src/web/wedatheme/src/styles/assets/sort.svg +12 -0
  139. package/src/web/wedatheme/src/styles/assets/sortdown.svg +12 -0
  140. package/src/web/wedatheme/src/styles/assets/sortup.svg +12 -0
  141. package/src/web/wedatheme/src/styles/assets/success-1.svg +8 -0
  142. package/src/web/wedatheme/src/styles/assets/success-filled.svg +3 -0
  143. package/src/web/wedatheme/src/styles/assets/success.svg +8 -0
  144. package/src/web/wedatheme/src/styles/assets/table-1.svg +12 -0
  145. package/src/web/wedatheme/src/styles/assets/table.svg +12 -0
  146. package/src/web/wedatheme/src/styles/assets/tag.svg +12 -0
  147. package/src/web/wedatheme/src/styles/assets/time.svg +12 -0
  148. package/src/web/wedatheme/src/styles/assets/transfer.svg +8 -0
  149. package/src/web/wedatheme/src/styles/assets/trenddown.svg +12 -0
  150. package/src/web/wedatheme/src/styles/assets/trendup.svg +12 -0
  151. package/src/web/wedatheme/src/styles/assets/viewgrid.svg +12 -0
  152. package/src/web/wedatheme/src/styles/assets/viewlist.svg +12 -0
  153. package/src/web/wedatheme/src/styles/assets/warning-1.svg +8 -0
  154. package/src/web/wedatheme/src/styles/assets/warning-filled.svg +3 -0
  155. package/src/web/wedatheme/src/styles/assets/warning.svg +8 -0
  156. package/src/web/wedatheme/src/styles/assets/wechat-error.svg +14 -0
  157. package/src/web/wedatheme/src/styles/assets/wechat-warning.svg +12 -0
  158. package/src/web/wedatheme/src/styles/assets/wechat.svg +12 -0
  159. package/src/web/wedatheme/src/styles/assets/wechatv.svg +12 -0
  160. package/src/web/wedatheme/src/styles/assets/zoom-in-white.svg +4 -0
  161. package/src/web/wedatheme/src/styles/assets/zoom-in.svg +4 -0
  162. package/src/web/wedatheme/src/styles/assets/zoom-out-white.svg +4 -0
  163. package/src/web/wedatheme/src/styles/assets/zoom-out.svg +4 -0
  164. package/src/web/wedatheme/src/styles/index.scss +18 -0
  165. package/src/web/wedatheme/src/styles/main.css +166 -0
  166. package/src/web/wedatheme/src/styles/theme/_alert.scss +73 -0
  167. package/src/web/wedatheme/src/styles/theme/_badge.scss +38 -0
  168. package/src/web/wedatheme/src/styles/theme/_blank-page-v2.scss +7 -0
  169. package/src/web/wedatheme/src/styles/theme/_breadcrumb.scss +8 -0
  170. package/src/web/wedatheme/src/styles/theme/_bubble.scss +24 -0
  171. package/src/web/wedatheme/src/styles/theme/_button.scss +212 -0
  172. package/src/web/wedatheme/src/styles/theme/_card.scss +12 -0
  173. package/src/web/wedatheme/src/styles/theme/_cascader.scss +43 -0
  174. package/src/web/wedatheme/src/styles/theme/_checkbox&radio.scss +83 -0
  175. package/src/web/wedatheme/src/styles/theme/_datepicker.scss +36 -0
  176. package/src/web/wedatheme/src/styles/theme/_dialog.scss +39 -0
  177. package/src/web/wedatheme/src/styles/theme/_divider.scss +1 -0
  178. package/src/web/wedatheme/src/styles/theme/_drawer.scss +15 -0
  179. package/src/web/wedatheme/src/styles/theme/_dropdown.scss +53 -0
  180. package/src/web/wedatheme/src/styles/theme/_form.scss +38 -0
  181. package/src/web/wedatheme/src/styles/theme/_icon.scss +0 -0
  182. package/src/web/wedatheme/src/styles/theme/_input&textarea&select.scss +85 -0
  183. package/src/web/wedatheme/src/styles/theme/_inputnumber.scss +16 -0
  184. package/src/web/wedatheme/src/styles/theme/_link.scss +14 -0
  185. package/src/web/wedatheme/src/styles/theme/_list.scss +41 -0
  186. package/src/web/wedatheme/src/styles/theme/_metrics-board.scss +14 -0
  187. package/src/web/wedatheme/src/styles/theme/_notification.scss +27 -0
  188. package/src/web/wedatheme/src/styles/theme/_pagination.scss +22 -0
  189. package/src/web/wedatheme/src/styles/theme/_popconfirm.scss +4 -0
  190. package/src/web/wedatheme/src/styles/theme/_progress.scss +28 -0
  191. package/src/web/wedatheme/src/styles/theme/_region-select.scss +17 -0
  192. package/src/web/wedatheme/src/styles/theme/_search.scss +18 -0
  193. package/src/web/wedatheme/src/styles/theme/_segment.scss +69 -0
  194. package/src/web/wedatheme/src/styles/theme/_slider.scss +18 -0
  195. package/src/web/wedatheme/src/styles/theme/_status.scss +4 -0
  196. package/src/web/wedatheme/src/styles/theme/_steps.scss +68 -0
  197. package/src/web/wedatheme/src/styles/theme/_switch.scss +11 -0
  198. package/src/web/wedatheme/src/styles/theme/_table.scss +44 -0
  199. package/src/web/wedatheme/src/styles/theme/_tabs.scss +44 -0
  200. package/src/web/wedatheme/src/styles/theme/_tag-search.scss +9 -0
  201. package/src/web/wedatheme/src/styles/theme/_tag.scss +48 -0
  202. package/src/web/wedatheme/src/styles/theme/_timeline.scss +0 -0
  203. package/src/web/wedatheme/src/styles/theme/_toast.scss +3 -0
  204. package/src/web/wedatheme/src/styles/theme/_transfer.scss +9 -0
  205. package/src/web/wedatheme/src/styles/theme/_tree.scss +11 -0
  206. package/src/web/wedatheme/src/styles/theme/_upload.scss +14 -0
  207. package/src/web/wedatheme/src/styles/theme/_variables.scss +140 -0
  208. package/src/web/wedatheme/src/styles/theme/index.scss +91 -0
  209. package/src/web/wedatheme/style-package/README.md +31 -0
  210. package/src/web/wedatheme/style-package/ef6fa527e24e354765d806b826b41391.svg +627 -0
  211. package/src/web/wedatheme/style-package/index.css +3 -0
  212. package/src/web/wedatheme/style-package/package.json +15 -0
  213. package/src/web/wedatheme/tea.config.js +66 -0
  214. package/src/web/wedatheme/webpack/css.config.js +114 -0
  215. package/src/web/wedatheme/webpack/plugins/css-package-plugin.js +23 -0
  216. package/src/web/wedatheme/webpack/plugins/inject-assets-plugin.js +32 -0
  217. package/src/web/wedatheme/webpack/plugins/package-json-plugin.js +66 -0
  218. package/CHANGELOG.md +0 -240
  219. package/src/mp/.gitignore +0 -10
@@ -11,6 +11,7 @@ export default function WeDaModal(_props) {
11
11
  customContent,
12
12
  isDefaultButton,
13
13
  emit,
14
+ events,
14
15
  ...props
15
16
  } = _props;
16
17
 
@@ -19,7 +20,7 @@ export default function WeDaModal(_props) {
19
20
  className={classNames('weda-ui', 'lcap-modal', 'container', className)}
20
21
  visible={visible}
21
22
  onClose={() => {
22
- emit('close');
23
+ emit('close', {});
23
24
  }}
24
25
  {...props}
25
26
  >
@@ -29,7 +30,7 @@ export default function WeDaModal(_props) {
29
30
  <Button
30
31
  type="primary"
31
32
  onClick={() => {
32
- emit('confirm');
33
+ emit('confirm', {});
33
34
  // events.confirm();
34
35
  }}
35
36
  >
@@ -0,0 +1,16 @@
1
+ source:
2
+ # 文件或目录使用绝对路径,绝对路径按代码库根目录计算,以/开头。
3
+ # 提供产品代码库中编写的测试代码存放目录或文件名格式,以便代码检查时进行排除处理
4
+ # 不要使用.*/等正则表达式屏蔽掉所有代码,会使得代码存在风险,还会导致Coverity扫不到任何代码而失败
5
+ test_source:
6
+ #用于匹配文件; 匹配方式为正则表达式,例如[".*/java/test/.*", ".*/test.java"]
7
+ filepath_regex:
8
+ # 提供产品代码库中工具或框架自动生成的且在代码库中的代码,没有可为空。以便代码检查时进行排除处理。
9
+ auto_generate_source:
10
+ # 自动生成代码文件的正则表达式,若无统一标识格式,可以指定具体目录,样例可参考test_source举例
11
+ filepath_regex: ["/style-package/*.*"]
12
+ # 提供产品代码库中直接以源码形式存在的第三方代码目录或代码文件名的正则表达。
13
+ # 此处备注的第三方代码将在代码检查时进行排除,若代码库中不存在需要排除的第三方代码,该项配置标识可为空
14
+ third_party_source:
15
+ #第三方代码文件的正则表达式,若无统一标识格式,可以指定具体目录,样例可参考test_source举例
16
+ filepath_regex:
@@ -0,0 +1,9 @@
1
+ root = true
2
+
3
+ [*]
4
+ indent_style = space
5
+ indent_size = 2
6
+ charset = utf-8
7
+ trim_trailing_whitespace = false
8
+ insert_final_newline = false
9
+ end_of_line = lf
@@ -0,0 +1,20 @@
1
+ {
2
+ "env": {
3
+ "browser": true,
4
+ "es6": true
5
+ },
6
+ "settings": {
7
+ "react": {
8
+ "version": "detect"
9
+ }
10
+ },
11
+ "parser": "babel-eslint",
12
+ "parserOptions": {
13
+ "ecmaVersion": 6,
14
+ "sourceType": "module",
15
+ "ecmaFeatures": {
16
+ "jsx": true
17
+ }
18
+ },
19
+ "extends": ["@tencent/eslint-config-tencent", "plugin:react/recommended"]
20
+ }
@@ -0,0 +1,55 @@
1
+ ### 该配置文件用于自动发布tnpm包,tnpm相关配置从git地址获取 ###
2
+ master:
3
+ push:
4
+ -
5
+ stages:
6
+ - name: 发布 npm 包
7
+ image: plugins/npm
8
+ envFrom: https://git.code.oa.com/tc-console/public-key/blob/master/tnpm.text
9
+ settings:
10
+ username: $TNPM_USER
11
+ password: $TNPM_PWD
12
+ email: $TNPM_EMAIL
13
+ registry: https://mirrors.tencent.com/npm/
14
+ folder: ./style-package/
15
+ - name: 获取包名
16
+ type: orange-ci:readFile
17
+ options:
18
+ filePath: ./style-package/package.json
19
+ envExport:
20
+ name: PACKAGE_NAME
21
+ - name: make message
22
+ script: echo '[http://mirrors.tencent.com/#/private/npm/detail?project_name=$PACKAGE_NAME](http://mirrors.tencent.com/#/private/npm/detail?project_name=$PACKAGE_NAME)' > message.txt
23
+ - name: send message
24
+ type: wework:message
25
+ options:
26
+ fromFile: message.txt
27
+ ### 该配置文件用于自动构建并部署文件到服务器,通过企业微信返回内网预览地址 ###
28
+ ### 接入配置可参考:http://km.oa.com/articles/show/422133 有疑问可联系youngerwang ###
29
+ dev:
30
+ push:
31
+ - docker:
32
+ image: node:10
33
+ env:
34
+ ORANGE_W_BUILD_SUCCESS_MSG: 预览地址:http://9.134.68.199/$ORANGE_REPO_SLUG/dist/index.html
35
+ stages:
36
+ ### 需要每次都安装一次,后续下放到开发机器
37
+ - name: 安装 tnpm
38
+ script: npm install @tencent/tnpm -g --registry=https://mirrors.tencent.com/npm/
39
+ - name: 安装 tea-cli
40
+ script: tnpm i @tencent/tea-cli -g
41
+ - name: 安装依赖
42
+ script: tnpm install && tnpm i @tencent/tea-component
43
+ - name: 构建
44
+ script: tea login qaayH8xL2ATXSkWS8ahBB7IEYXMECyaKSAlbkDzX && tea build -l zh
45
+ - name: 预览地址
46
+ type: wework:message
47
+ options:
48
+ message: '[http://9.134.68.199/$ORANGE_REPO_SLUG/dist/index.html](http://9.134.68.199/$ORANGE_REPO_SLUG/dist/index.html)'
49
+ - name: 拷贝文件
50
+ type: orange-ci:transfer
51
+ options:
52
+ dist: '/'
53
+ to: /usr/share/nginx/html/$ORANGE_REPO_SLUG
54
+ ips:
55
+ - 9.134.68.199
@@ -0,0 +1,3 @@
1
+ {
2
+ "recommendations": ["dbaeumer.vscode-eslint"]
3
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "eslint.validate": [
3
+ "javascript",
4
+ "javascriptreact",
5
+ "typescript",
6
+ "typescriptreact"
7
+ ],
8
+ "editor.codeActionsOnSave": {
9
+ "source.fixAll.eslint": true
10
+ }
11
+ }
@@ -0,0 +1,50 @@
1
+ 腾讯云 WEDATHEME 控制台前端项目
2
+ ======================
3
+
4
+ <!-- 识别每类内容的标题是否具备,同时判断页面内容字数;
5
+ 具备内容类别数,字数大于等于类别数*200字,得到该类别的总分数 -->
6
+
7
+ ## 项目介绍
8
+ <!-- 本组织/项目的整体说明概览 -->
9
+ 介绍:
10
+ 控制台地址:
11
+
12
+
13
+ ## 快速上手
14
+ <!-- 使用者如何快速上手使用本组织/项目,如下载,安装,启动,运行,教程。 -->
15
+ - `src/app.js` 入口文件,主要进行业务路由定义
16
+ - `src/routes` 存放业务路由实现
17
+ - `src/configs` 存放 CSS 和菜单配置
18
+ - `src/components` 存放公共业务组件
19
+ - `src/utils` 存放公共工具方法
20
+
21
+
22
+ ## 常见问题
23
+ <!-- 本组织/项目的常见通用问题和官方解答 -->
24
+ - master:默认为主干分支,用于发包
25
+ - dev:默认开发分支
26
+
27
+
28
+ ## 行为准则
29
+ <!-- 本组织/项目在代码协作方面需遵循的责任、范围、软件许可证、冲突解决等章程 -->
30
+
31
+
32
+ ## 如何加入
33
+ <!-- 本组织/项目有明确的如何加入和贡献的文字说明 -->
34
+
35
+
36
+ ## 团队介绍
37
+ <!-- 本组织/项目的角色分工、人名和联络方式、官方交流/沟通渠道 -->
38
+ 产品经理:<!-- 姓名 -->
39
+
40
+ 交互设计:<!-- 姓名 -->
41
+
42
+ 视觉设计师:<!-- 姓名 -->
43
+
44
+ 前端开发:<!-- 姓名 -->
45
+
46
+ 仓库地址:<!-- 姓名 -->
47
+
48
+
49
+ ## 其他说明
50
+ <!-- 其他需要补充的内容 -->
@@ -0,0 +1,4 @@
1
+ i18n 目录说明
2
+ ============
3
+
4
+ 这里存放翻译的词条文件。
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @fileoverview
3
+ *
4
+ * 开发环境默认导出中文词条(无任何翻译)
5
+ *
6
+ * - 如果要查看某个语言包的开发环境效果,使用命令 `tea dev --lang=en`
7
+ * - 正式编译时,`@i18n/translation` 模块会重定向到相应的词条文件
8
+ */
9
+
10
+ export { translation } from './zh';
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @fileoverview
3
+ *
4
+ * 本文件词条由 `tea scan` 命令扫描生成,可提交给翻译团队进行翻译。
5
+ * 具体使用方法,请参考 http://tapd.oa.com/QCloud_2015/markdown_wikis/view/#1010103951008365523
6
+ */
7
+
8
+ /**
9
+ * @type {import('@tencent/tea-app').I18NTranslation}
10
+ */
11
+ const translation = {
12
+ // 使用 `tea scan` 命令扫描词条
13
+ };
14
+
15
+ module.exports = { translation };
@@ -0,0 +1,15 @@
1
+ {
2
+ "compilerOptions": {
3
+ "lib": ["es2017", "dom"],
4
+ "baseUrl": ".",
5
+ "paths": {
6
+ "@tea/app": ["./mock"],
7
+ "@tea/app/*": ["./mock/*"],
8
+ "@src/*": ["./src/*"]
9
+ },
10
+ "checkJs": true,
11
+ "jsx": "preserve",
12
+ "noImplicitAny": false
13
+ },
14
+ "exclude": ["dist"]
15
+ }
@@ -0,0 +1,42 @@
1
+ import React from 'react';
2
+ import ReactDOM from 'react-dom';
3
+ import { Router, Route, Redirect, Switch } from 'react-router-dom';
4
+ import { createHashHistory } from 'history';
5
+ import { AppLayout } from './layout';
6
+ import { HistoryContext } from './history-context';
7
+ import { ConfigProvider } from '@tencent/tea-component';
8
+
9
+ // 菜单配置
10
+ import { menu } from '../src/configs/menu';
11
+
12
+ const history = createHashHistory();
13
+
14
+ const App = ({ routes }) => (
15
+ <ConfigProvider classPrefix='wedatea2td'>
16
+ <Router history={history}>
17
+ <HistoryContext.Provider value={{ history }}>
18
+ <AppLayout menu={menu}>
19
+ <Switch>
20
+ {Object.entries(routes).map(([path, route]) => (route.render ? (
21
+ <Route key={path} path={`/${path}`} render={route.render} />
22
+ ) : (
23
+ <Route key={path} path={`/${path}`} component={route} />
24
+ )))}
25
+ <Route
26
+ render={() => (
27
+ <Redirect to={`/${(Object.entries(routes)[0] || [])[0]}`} />
28
+ )}
29
+ />
30
+ </Switch>
31
+ </AppLayout>
32
+ </HistoryContext.Provider>
33
+ </Router>
34
+ </ConfigProvider>
35
+ );
36
+
37
+ /**
38
+ * @param {import('@tencent/tea-app').AppRouteMap} appRoutes
39
+ */
40
+ export async function routes(appRoutes) {
41
+ ReactDOM.render(<App routes={appRoutes} />, document.querySelector('#root'));
42
+ }
@@ -0,0 +1,8 @@
1
+ import React, { useContext } from 'react';
2
+
3
+ export const HistoryContext = React.createContext(null);
4
+
5
+ export const useHistory = () => {
6
+ const { history } = useContext(HistoryContext);
7
+ return history;
8
+ };
@@ -0,0 +1,3 @@
1
+ import * as app from './app';
2
+ export * from './history-context';
3
+ export { app };
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import { Layout, NavMenu } from '@tencent/tea-component';
3
+ import { MenuWithRouter } from './MenuWithRouter';
4
+
5
+ const { Header, Body, Sider } = Layout;
6
+
7
+ export function AppLayout({ menu, children }) {
8
+ return (
9
+ <Layout>
10
+ <Header>
11
+ <NavMenu
12
+ left={
13
+ <NavMenu.Item type="logo">
14
+ <img
15
+ src="https://imgcache.qq.com/qcloud/app/resource/ac/favicon.ico"
16
+ alt="logo"
17
+ />
18
+ </NavMenu.Item>
19
+ }
20
+ />
21
+ </Header>
22
+ <Body>
23
+ <Sider>{menu && <MenuWithRouter menu={menu} />}</Sider>
24
+ {children}
25
+ </Body>
26
+ </Layout>
27
+ );
28
+ }
@@ -0,0 +1,50 @@
1
+ import React from 'react';
2
+ import { Link, withRouter } from 'react-router-dom';
3
+ import { Menu } from '@tencent/tea-component';
4
+
5
+ export const MenuWithRouter = withRouter(
6
+ /**
7
+ * @param {any} props
8
+ */
9
+ ({ location, menu }) => {
10
+ const { pathname } = location;
11
+ return (
12
+ <Menu
13
+ theme="dark"
14
+ title={menu.title}
15
+ icon={menu.icon}
16
+ collapsable={!!menu.icon}
17
+ >
18
+ {menu.items.map(({ label, items, title, route, icon }, index) => {
19
+ if (label) {
20
+ return <Menu.Group key={index} title={label} />;
21
+ }
22
+ if (items) {
23
+ return (
24
+ <Menu.SubMenu defaultOpened key={index} title={title} icon={icon}>
25
+ {items.map((subItem, index) => (
26
+ <Menu.Item
27
+ key={index}
28
+ title={subItem.title}
29
+ selected={pathname.includes(subItem.route.replace('#', ''))}
30
+ render={children => (
31
+ <Link to={subItem.route}>{children}</Link>
32
+ )}
33
+ />
34
+ ))}
35
+ </Menu.SubMenu>
36
+ );
37
+ }
38
+ return (
39
+ <Menu.Item
40
+ key={index}
41
+ title={title}
42
+ icon={icon}
43
+ selected={pathname.includes(route.replace('#', ''))}
44
+ render={children => <Link to={route}>{children}</Link>}
45
+ />
46
+ );
47
+ })}
48
+ </Menu>
49
+ );
50
+ });
@@ -0,0 +1 @@
1
+ export * from './AppLayout';
@@ -0,0 +1,61 @@
1
+ {
2
+ "name": "@tencent/tea-app-wedatheme",
3
+ "version": "1.0.0",
4
+ "description": "The wedatheme tea app for qcloud console",
5
+ "main": "src/app.js",
6
+ "scripts": {
7
+ "lint": "npx eslint --quiet --ext jsx,.js src",
8
+ "dev": "tea dev",
9
+ "scan": "tea scan",
10
+ "build": "tea build",
11
+ "build-css": "npx webpack --config webpack/css.config.js",
12
+ "publish": "npm run build-css && node ./scripts/publish.js"
13
+ },
14
+ "keywords": [
15
+ "tea",
16
+ "app",
17
+ "wedatheme"
18
+ ],
19
+ "engines": {},
20
+ "license": "UNLICENSED",
21
+ "dependencies": {
22
+ "@tencent/tea-app": "^2.0.0",
23
+ "@tencent/tea-component": "^2.0.0",
24
+ "history": "^4.9.0",
25
+ "moment": "^2.24.0",
26
+ "postcss": "^8.3.6",
27
+ "postcss-css-variables": "^0.16.0",
28
+ "react": "^16.10.0",
29
+ "react-dom": "^16.10.0",
30
+ "react-router-dom": "^4.3.1",
31
+ "resolve-url-loader": "^4.0.0",
32
+ "svg-url-loader": "^7.1.1",
33
+ "svgo-loader": "^3.0.0"
34
+ },
35
+ "devDependencies": {
36
+ "@tencent/eslint-config-tencent": "^0.12.2",
37
+ "@tencent/tea-scripts": "^2.0.0",
38
+ "@types/react": "^16.8.4",
39
+ "@types/react-dom": "^16.8.2",
40
+ "@types/react-router-dom": "^4.3.1",
41
+ "@types/webpack": "^4.4.32",
42
+ "autoprefixer": "^9.5.1",
43
+ "babel-eslint": "^10.0.2",
44
+ "clean-webpack-plugin": "^3.0.0",
45
+ "css-loader": "^2.1.1",
46
+ "cssnano": "^4.1.10",
47
+ "eslint": "^7.0.0",
48
+ "eslint-plugin-react": "^7.21.5",
49
+ "file-loader": "^4.2.0",
50
+ "html-webpack-plugin": "^3.2.0",
51
+ "less-loader": "^5.0.0",
52
+ "mini-css-extract-plugin": "^0.7.0",
53
+ "node-sass": "^4.12.0",
54
+ "postcss-loader": "^3.0.0",
55
+ "sass-loader": "^10.1.1",
56
+ "svg-transform-loader": "^2.0.13",
57
+ "webpack": "^4.32.2",
58
+ "webpack-cli": "^3.3.9",
59
+ "webpack-hot-middleware": "^2.25.0"
60
+ }
61
+ }
@@ -0,0 +1,19 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <meta name="theme-color" content="#000000" />
7
+ <title>WEDATHEME</title>
8
+ <link href="http://imgcache.qq.com/qcloud/app/resource/ac/favicon.ico" rel="icon" type="image/x-icon">
9
+ <link rel="stylesheet" href="http://assets.woa.com/open_proj/proj_qcloud_v2/mc_2014/global/css/v2/global.css"></link>
10
+ <link rel="stylesheet" href="https://user-source-1303824488.cos.ap-shanghai.myqcloud.com/materials/gsd-h5-react@0.0.70/gsd-h5-react.main.css"></link>
11
+ <!-- <link rel="stylesheet" href="https://user-source-1303824488.cos.ap-shanghai.myqcloud.com/materials/gsd-h5-react@0.0.70/gsd-h5-react.main.css"></link> -->
12
+ </head>
13
+ <body data-weui-theme="light">
14
+ <div id="root" style="height: 100%"></div>
15
+ <script src="http://imgcache.qq.com/qcloud/main/scripts/release/common/vendors/babel/polyfill.6.26.min.js"></script>
16
+ <script src="http://imgcache.qq.com/qcloud/vendors/react/react16.development.js"></script>
17
+ <script src="http://imgcache.qq.com/qcloud/vendors/moment/moment-2.24.0.js"></script>
18
+ </body>
19
+ </html>
@@ -0,0 +1,22 @@
1
+ // 导入样式
2
+ // import '@tencent/tea-component/lib/tea.css';
3
+ import '@tencent/tea-component/dist/style/index.scss';
4
+
5
+
6
+ import '@src/styles/index.scss';
7
+
8
+ // 导入依赖
9
+ import { app } from '@tea/app';
10
+
11
+ // 导入组件
12
+ import { WedathemeIndex } from '@src/routes/wedatheme-index';
13
+
14
+ // 路由表,一个路由对应一个组件
15
+ // prettier-ignore
16
+ const routes = {
17
+ 'wedatheme/index': WedathemeIndex,
18
+ };
19
+
20
+ // 注册路由表
21
+ // 左侧菜单请在 `configs/menus.js` 配置
22
+ app.routes(routes);
@@ -0,0 +1,4 @@
1
+ 腾讯云 WEDATHEME 控制台前端项目 - 公共组件
2
+ ================================
3
+
4
+ 此目录存放公共业务组件。
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 定义业务导航菜单
3
+ *
4
+ * 控制台业务请移至 http://yehe.isd.com/buffet 配置
5
+ */
6
+ export const menu = {
7
+ title: 'WEDATHEME',
8
+ items: [{ route: '/wedatheme/index', title: 'WEDATHEME 主页' }],
9
+ };