sh-view 1.5.2

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 (209) hide show
  1. package/.eslintrc.js +21 -0
  2. package/README.en.md +36 -0
  3. package/README.md +39 -0
  4. package/package.json +64 -0
  5. package/packages/assets/css/animated.scss +33 -0
  6. package/packages/assets/css/loader.scss +193 -0
  7. package/packages/assets/css/main.scss +235 -0
  8. package/packages/assets/css/theme.scss +52 -0
  9. package/packages/assets/icons/demo.css +539 -0
  10. package/packages/assets/icons/iconfont.css +415 -0
  11. package/packages/assets/icons/iconfont.js +1 -0
  12. package/packages/assets/icons/iconfont.json +709 -0
  13. package/packages/assets/icons/iconfont.ttf +0 -0
  14. package/packages/assets/icons/iconfont.woff +0 -0
  15. package/packages/assets/icons/iconfont.woff2 +0 -0
  16. package/packages/assets/img/image-error.png +0 -0
  17. package/packages/assets/img/square-image.png +0 -0
  18. package/packages/components/global-components/sh-card/index.vue +122 -0
  19. package/packages/components/global-components/sh-code-editor/index.vue +237 -0
  20. package/packages/components/global-components/sh-corner/index.vue +236 -0
  21. package/packages/components/global-components/sh-count-to/index.vue +46 -0
  22. package/packages/components/global-components/sh-empty/index.vue +43 -0
  23. package/packages/components/global-components/sh-header/index.vue +269 -0
  24. package/packages/components/global-components/sh-icon/icons.vue +32 -0
  25. package/packages/components/global-components/sh-icon/index.vue +27 -0
  26. package/packages/components/global-components/sh-iv-form/components/iv-group-item.vue +57 -0
  27. package/packages/components/global-components/sh-iv-form/components/iv-single-item.vue +76 -0
  28. package/packages/components/global-components/sh-iv-form/index.vue +255 -0
  29. package/packages/components/global-components/sh-layout/index.vue +142 -0
  30. package/packages/components/global-components/sh-loading/index.vue +42 -0
  31. package/packages/components/global-components/sh-noticebar/index.vue +201 -0
  32. package/packages/components/global-components/sh-preview/index.vue +62 -0
  33. package/packages/components/global-components/sh-pull-refresh/index.vue +290 -0
  34. package/packages/components/global-components/sh-result/index.vue +88 -0
  35. package/packages/components/global-components/sh-sheet/index.vue +173 -0
  36. package/packages/components/global-components/sh-upload/components/u-img.vue +63 -0
  37. package/packages/components/global-components/sh-upload/components/u-list.vue +100 -0
  38. package/packages/components/global-components/sh-upload/index.vue +418 -0
  39. package/packages/components/global-components/sh-vxe-form/components/form-item.vue +25 -0
  40. package/packages/components/global-components/sh-vxe-form/css/index.scss +55 -0
  41. package/packages/components/global-components/sh-vxe-form/index.vue +115 -0
  42. package/packages/components/global-components/sh-vxe-form/js/methods.js +170 -0
  43. package/packages/components/global-components/sh-vxe-form/js/props.js +63 -0
  44. package/packages/components/global-components/sh-vxe-form/mixin/defaultData.js +33 -0
  45. package/packages/components/global-components/sh-vxe-list/index.vue +129 -0
  46. package/packages/components/global-components/sh-vxe-modal/index.vue +209 -0
  47. package/packages/components/global-components/sh-vxe-query/index.vue +286 -0
  48. package/packages/components/global-components/sh-vxe-table/components/importModal.vue +377 -0
  49. package/packages/components/global-components/sh-vxe-table/css/index.scss +94 -0
  50. package/packages/components/global-components/sh-vxe-table/index.vue +350 -0
  51. package/packages/components/global-components/sh-vxe-table/js/excel_to_json.js +313 -0
  52. package/packages/components/global-components/sh-vxe-table/js/methods.js +614 -0
  53. package/packages/components/global-components/sh-vxe-table/js/props.js +311 -0
  54. package/packages/components/global-components/sh-vxe-table/mixin/defaultData.js +116 -0
  55. package/packages/components/global-components/sh-vxe-toolbar/index.vue +172 -0
  56. package/packages/components/global-components/sh-vxe-tree/components/table-tree.vue +251 -0
  57. package/packages/components/global-components/sh-vxe-tree/css/index.scss +20 -0
  58. package/packages/components/global-components/sh-vxe-tree/index.vue +85 -0
  59. package/packages/components/global-components/sh-vxe-tree/js/props.js +120 -0
  60. package/packages/components/global-components/sh-vxe-tree/js/treeMethods.js +171 -0
  61. package/packages/components/global-components/sh-vxe-tree/mixin/defaultData.js +48 -0
  62. package/packages/components/global-components/sh-vxe-tree/vxe-direct-tree.vue +202 -0
  63. package/packages/components/global-components/sh-vxe-tree/vxe-select-tree.vue +291 -0
  64. package/packages/components/global-components/sh-water-fall/index.vue +87 -0
  65. package/packages/components/global-components/sh-word/index.vue +110 -0
  66. package/packages/components/index.js +64 -0
  67. package/packages/components/other-components/sh-cron-modal/components/cron-content.vue +287 -0
  68. package/packages/components/other-components/sh-cron-modal/css/index.scss +45 -0
  69. package/packages/components/other-components/sh-cron-modal/index.vue +67 -0
  70. package/packages/components/other-components/sh-cron-modal/mixin/cron-box.js +169 -0
  71. package/packages/components/other-components/sh-cron-modal/tabs/cron-day-box.vue +92 -0
  72. package/packages/components/other-components/sh-cron-modal/tabs/cron-hour-box.vue +56 -0
  73. package/packages/components/other-components/sh-cron-modal/tabs/cron-minute-box.vue +56 -0
  74. package/packages/components/other-components/sh-cron-modal/tabs/cron-month-box.vue +56 -0
  75. package/packages/components/other-components/sh-cron-modal/tabs/cron-second-box.vue +56 -0
  76. package/packages/components/other-components/sh-cron-modal/tabs/cron-week-box.vue +115 -0
  77. package/packages/components/other-components/sh-cron-modal/tabs/cron-year-box.vue +46 -0
  78. package/packages/components/other-components/sh-cron-modal/utils/index.js +52 -0
  79. package/packages/components/other-components/sh-markdown/index.vue +170 -0
  80. package/packages/components/other-components/sh-markdown/tinymce/langs/ar.js +7 -0
  81. package/packages/components/other-components/sh-markdown/tinymce/langs/az.js +7 -0
  82. package/packages/components/other-components/sh-markdown/tinymce/langs/bg_BG.js +7 -0
  83. package/packages/components/other-components/sh-markdown/tinymce/langs/bn_BD.js +7 -0
  84. package/packages/components/other-components/sh-markdown/tinymce/langs/ca.js +7 -0
  85. package/packages/components/other-components/sh-markdown/tinymce/langs/cs.js +7 -0
  86. package/packages/components/other-components/sh-markdown/tinymce/langs/cy.js +7 -0
  87. package/packages/components/other-components/sh-markdown/tinymce/langs/da.js +7 -0
  88. package/packages/components/other-components/sh-markdown/tinymce/langs/de.js +7 -0
  89. package/packages/components/other-components/sh-markdown/tinymce/langs/dv.js +7 -0
  90. package/packages/components/other-components/sh-markdown/tinymce/langs/el.js +7 -0
  91. package/packages/components/other-components/sh-markdown/tinymce/langs/eo.js +7 -0
  92. package/packages/components/other-components/sh-markdown/tinymce/langs/es.js +7 -0
  93. package/packages/components/other-components/sh-markdown/tinymce/langs/es_MX.js +7 -0
  94. package/packages/components/other-components/sh-markdown/tinymce/langs/et.js +7 -0
  95. package/packages/components/other-components/sh-markdown/tinymce/langs/eu.js +7 -0
  96. package/packages/components/other-components/sh-markdown/tinymce/langs/fa.js +7 -0
  97. package/packages/components/other-components/sh-markdown/tinymce/langs/fi.js +7 -0
  98. package/packages/components/other-components/sh-markdown/tinymce/langs/fr_FR.js +7 -0
  99. package/packages/components/other-components/sh-markdown/tinymce/langs/ga.js +7 -0
  100. package/packages/components/other-components/sh-markdown/tinymce/langs/gl.js +7 -0
  101. package/packages/components/other-components/sh-markdown/tinymce/langs/he_IL.js +7 -0
  102. package/packages/components/other-components/sh-markdown/tinymce/langs/hi.js +7 -0
  103. package/packages/components/other-components/sh-markdown/tinymce/langs/hr.js +7 -0
  104. package/packages/components/other-components/sh-markdown/tinymce/langs/hu_HU.js +7 -0
  105. package/packages/components/other-components/sh-markdown/tinymce/langs/hy.js +7 -0
  106. package/packages/components/other-components/sh-markdown/tinymce/langs/id.js +7 -0
  107. package/packages/components/other-components/sh-markdown/tinymce/langs/is_IS.js +7 -0
  108. package/packages/components/other-components/sh-markdown/tinymce/langs/it.js +7 -0
  109. package/packages/components/other-components/sh-markdown/tinymce/langs/ja.js +7 -0
  110. package/packages/components/other-components/sh-markdown/tinymce/langs/kab.js +7 -0
  111. package/packages/components/other-components/sh-markdown/tinymce/langs/kk.js +7 -0
  112. package/packages/components/other-components/sh-markdown/tinymce/langs/ko_KR.js +7 -0
  113. package/packages/components/other-components/sh-markdown/tinymce/langs/ku.js +7 -0
  114. package/packages/components/other-components/sh-markdown/tinymce/langs/lt.js +7 -0
  115. package/packages/components/other-components/sh-markdown/tinymce/langs/lv.js +7 -0
  116. package/packages/components/other-components/sh-markdown/tinymce/langs/nb_NO.js +7 -0
  117. package/packages/components/other-components/sh-markdown/tinymce/langs/ne.js +7 -0
  118. package/packages/components/other-components/sh-markdown/tinymce/langs/nl.js +7 -0
  119. package/packages/components/other-components/sh-markdown/tinymce/langs/nl_BE.js +7 -0
  120. package/packages/components/other-components/sh-markdown/tinymce/langs/oc.js +7 -0
  121. package/packages/components/other-components/sh-markdown/tinymce/langs/pl.js +7 -0
  122. package/packages/components/other-components/sh-markdown/tinymce/langs/pt_BR.js +7 -0
  123. package/packages/components/other-components/sh-markdown/tinymce/langs/ro.js +7 -0
  124. package/packages/components/other-components/sh-markdown/tinymce/langs/ru.js +7 -0
  125. package/packages/components/other-components/sh-markdown/tinymce/langs/sk.js +7 -0
  126. package/packages/components/other-components/sh-markdown/tinymce/langs/sl_SI.js +7 -0
  127. package/packages/components/other-components/sh-markdown/tinymce/langs/sq.js +7 -0
  128. package/packages/components/other-components/sh-markdown/tinymce/langs/sr.js +7 -0
  129. package/packages/components/other-components/sh-markdown/tinymce/langs/sv_SE.js +7 -0
  130. package/packages/components/other-components/sh-markdown/tinymce/langs/ta.js +7 -0
  131. package/packages/components/other-components/sh-markdown/tinymce/langs/tg.js +7 -0
  132. package/packages/components/other-components/sh-markdown/tinymce/langs/th_TH.js +7 -0
  133. package/packages/components/other-components/sh-markdown/tinymce/langs/tr.js +7 -0
  134. package/packages/components/other-components/sh-markdown/tinymce/langs/ug.js +7 -0
  135. package/packages/components/other-components/sh-markdown/tinymce/langs/uk.js +7 -0
  136. package/packages/components/other-components/sh-markdown/tinymce/langs/vi.js +7 -0
  137. package/packages/components/other-components/sh-markdown/tinymce/langs/zh-Hans.js +7 -0
  138. package/packages/components/other-components/sh-markdown/tinymce/skins/content/dark/content.css +72 -0
  139. package/packages/components/other-components/sh-markdown/tinymce/skins/content/dark/content.min.css +7 -0
  140. package/packages/components/other-components/sh-markdown/tinymce/skins/content/default/content.css +67 -0
  141. package/packages/components/other-components/sh-markdown/tinymce/skins/content/default/content.min.css +7 -0
  142. package/packages/components/other-components/sh-markdown/tinymce/skins/content/document/content.css +72 -0
  143. package/packages/components/other-components/sh-markdown/tinymce/skins/content/document/content.min.css +7 -0
  144. package/packages/components/other-components/sh-markdown/tinymce/skins/content/writer/content.css +68 -0
  145. package/packages/components/other-components/sh-markdown/tinymce/skins/content/writer/content.min.css +7 -0
  146. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide/content.css +732 -0
  147. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide/content.inline.css +726 -0
  148. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide/content.inline.min.css +7 -0
  149. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide/content.min.css +7 -0
  150. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide/content.mobile.css +29 -0
  151. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide/content.mobile.min.css +7 -0
  152. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide/fonts/tinymce-mobile.woff +0 -0
  153. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide/skin.css +3047 -0
  154. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide/skin.min.css +7 -0
  155. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide/skin.mobile.css +673 -0
  156. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide/skin.mobile.min.css +7 -0
  157. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide/skin.shadowdom.css +37 -0
  158. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide/skin.shadowdom.min.css +7 -0
  159. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide-dark/content.css +714 -0
  160. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide-dark/content.inline.css +726 -0
  161. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide-dark/content.inline.min.css +7 -0
  162. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide-dark/content.min.css +7 -0
  163. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide-dark/content.mobile.css +29 -0
  164. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide-dark/content.mobile.min.css +7 -0
  165. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide-dark/fonts/tinymce-mobile.woff +0 -0
  166. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide-dark/skin.css +3047 -0
  167. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide-dark/skin.min.css +7 -0
  168. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide-dark/skin.mobile.css +673 -0
  169. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide-dark/skin.mobile.min.css +7 -0
  170. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide-dark/skin.shadowdom.css +37 -0
  171. package/packages/components/other-components/sh-markdown/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css +7 -0
  172. package/packages/components/other-components/sh-menu-card/index.vue +224 -0
  173. package/packages/components/other-components/sh-menu-card/menu-box.vue +68 -0
  174. package/packages/components/other-components/sh-system-tip/index.vue +113 -0
  175. package/packages/css/index.js +6 -0
  176. package/packages/directive/directives.js +27 -0
  177. package/packages/directive/index.js +19 -0
  178. package/packages/directive/module/draggable.js +42 -0
  179. package/packages/index.js +40 -0
  180. package/packages/iview/css/index.scss +32 -0
  181. package/packages/iview/index.js +24 -0
  182. package/packages/mixin/index.js +87 -0
  183. package/packages/vxeTable/css/index.scss +454 -0
  184. package/packages/vxeTable/css/variable.scss +256 -0
  185. package/packages/vxeTable/index.js +178 -0
  186. package/packages/vxeTable/render/cell/vxe-render-checkbox.vue +19 -0
  187. package/packages/vxeTable/render/cell/vxe-render-checkgroup.vue +36 -0
  188. package/packages/vxeTable/render/cell/vxe-render-code.vue +19 -0
  189. package/packages/vxeTable/render/cell/vxe-render-goption.vue +93 -0
  190. package/packages/vxeTable/render/cell/vxe-render-href.vue +11 -0
  191. package/packages/vxeTable/render/cell/vxe-render-img.vue +28 -0
  192. package/packages/vxeTable/render/cell/vxe-render-input.vue +51 -0
  193. package/packages/vxeTable/render/cell/vxe-render-money.vue +25 -0
  194. package/packages/vxeTable/render/cell/vxe-render-progress.vue +19 -0
  195. package/packages/vxeTable/render/cell/vxe-render-radio.vue +19 -0
  196. package/packages/vxeTable/render/cell/vxe-render-radiogroup.vue +36 -0
  197. package/packages/vxeTable/render/cell/vxe-render-select.vue +36 -0
  198. package/packages/vxeTable/render/cell/vxe-render-switch.vue +19 -0
  199. package/packages/vxeTable/render/cell/vxe-render-table.vue +78 -0
  200. package/packages/vxeTable/render/cell/vxe-render-textarea.vue +19 -0
  201. package/packages/vxeTable/render/cell/vxe-render-time.vue +34 -0
  202. package/packages/vxeTable/render/cell/vxe-render-tree.vue +59 -0
  203. package/packages/vxeTable/render/cell/vxe-render-upload.vue +24 -0
  204. package/packages/vxeTable/render/filters/vxe-filter-input.vue +43 -0
  205. package/packages/vxeTable/render/footer/vxe-footer-input.vue +13 -0
  206. package/packages/vxeTable/render/footer/vxe-footer-money.vue +20 -0
  207. package/packages/vxeTable/render/globalRenders.js +491 -0
  208. package/packages/vxeTable/render/header/vxe-header-money.vue +21 -0
  209. package/packages/vxeTable/render/mixin/cell-mixin.js +195 -0
@@ -0,0 +1,256 @@
1
+ $theme-color: var(--theme-color);
2
+ $theme-weak-color: var(--theme-weak-color);
3
+
4
+ /*font*/
5
+ $vxe-font-family: -apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol !default;
6
+ $vxe-font-color: #606266 !default;
7
+ $vxe-font-size: 1rem !default;
8
+ $vxe-font-size-medium: 1rem !default;
9
+ $vxe-font-size-small: 0.9285rem !default;
10
+ $vxe-font-size-mini: 0.8571rem !default;
11
+
12
+ /*size*/
13
+ $vxe-border-radius: var(--border-radius) !default;
14
+
15
+ /*icon*/
16
+ $vxe-icon-font-family: Verdana,Arial,Tahoma !default;
17
+ $vxe-icon-background-color: var(--body-background) !default;
18
+
19
+ /*color*/
20
+ $vxe-primary-color: #409eff !default;
21
+ $vxe-success-color: #67c23a !default;
22
+ $vxe-info-color: #909399 !default;
23
+ $vxe-warning-color: #e6a23c !default;
24
+ $vxe-danger-color: #f56c6c !default;
25
+ $vxe-disabled-color: #BFBFBF !default;
26
+ $vxe-primary-disabled-color: #c0c4cc !default;
27
+
28
+ /*input/radio/checkbox*/
29
+ $vxe-input-border-color: var(--border-color) !default;
30
+ $vxe-input-disabled-color: var(--border-color) !default;
31
+ $vxe-input-disabled-background-color: #f3f3f3 !default;
32
+ $vxe-input-placeholder-color: #C0C4CC !default;
33
+
34
+ /*popup*/
35
+ $vxe-table-popup-border-color: var(--border-color) !default;
36
+
37
+ /*table*/
38
+ $vxe-table-font-color: $vxe-font-color !default;
39
+ $vxe-table-header-font-color: $vxe-font-color !default;
40
+ $vxe-table-footer-font-color: $vxe-font-color !default;
41
+ $vxe-table-border-radius: $vxe-border-radius !default;
42
+ $vxe-table-border-width: 1px !default;
43
+ $vxe-table-border-color: var(--border-color) !default;
44
+ $vxe-table-resizable-line-color: #D9DDDF !default;
45
+ $vxe-table-resizable-drag-line-color: $vxe-primary-color !default;
46
+ $vxe-table-header-background-color: #f8f8f9 !default;
47
+ $vxe-table-body-background-color: var(--body-background) !default;
48
+ $vxe-table-footer-background-color: var(--body-background) !default;
49
+ $vxe-table-tree-node-line-color:#909399 !default;
50
+ $vxe-table-tree-node-line-style: dotted !default;
51
+ $vxe-table-header-font-weight: 700 !default;
52
+
53
+ $vxe-table-row-height-default: 48px !default;
54
+ $vxe-table-row-height-medium: 44px !default;
55
+ $vxe-table-row-height-small: 40px !default;
56
+ $vxe-table-row-height-mini: 36px !default;
57
+ $vxe-table-row-line-height: 22px !default;
58
+ $vxe-table-row-hover-background-color: var(--hover-color) !default;
59
+ $vxe-table-row-striped-background-color: var(--stripe-color) !default;
60
+ $vxe-table-row-hover-striped-background-color: var(--hover-color) !default;
61
+ $vxe-table-row-radio-checked-background-color: #fff3e0 !default;
62
+ $vxe-table-row-hover-radio-checked-background-color: #ffebbc !default;
63
+ $vxe-table-row-checkbox-checked-background-color: #fff3e0 !default;
64
+ $vxe-table-row-hover-checkbox-checked-background-color: #ffebbc !default;
65
+ $vxe-table-row-current-background-color: #e6f7ff !default;
66
+ $vxe-table-row-hover-current-background-color: #d7effb !default;
67
+
68
+ $vxe-table-column-padding-default: 13px 0 !default;
69
+ $vxe-table-column-padding-medium: 11px 0 !default;
70
+ $vxe-table-column-padding-small: 9px 0 !default;
71
+ $vxe-table-column-padding-mini: 7px 0 !default;
72
+ $vxe-table-column-hover-background-color: #d7effb !default;
73
+ $vxe-table-column-current-background-color: #e6f7ff !default;
74
+ $vxe-table-column-icon-border-color: #c0c4cc !default;
75
+ $vxe-table-column-icon-border-hover-color: #515A6E !default;
76
+
77
+ $vxe-table-cell-placeholder-color: #C0C4CC !default;
78
+ $vxe-table-cell-padding-left: 10px !default;
79
+ $vxe-table-cell-padding-right: 10px !default;
80
+ $vxe-table-cell-input-height-default: $vxe-table-row-height-default - 6 !default;
81
+ $vxe-table-cell-input-height-medium: $vxe-table-row-height-medium - 6 !default;
82
+ $vxe-table-cell-input-height-small: $vxe-table-row-height-small - 6 !default;
83
+ $vxe-table-cell-input-height-mini: $vxe-table-row-height-mini - 6 !default;
84
+ $vxe-table-cell-dirty-width: 5px !default;
85
+ $vxe-table-cell-dirty-update-color: #f56c6c !default;
86
+ $vxe-table-cell-dirty-insert-color: #19A15F !default;
87
+ $vxe-table-cell-area-border-color: $vxe-primary-color !default;
88
+ $vxe-table-cell-area-border-width: 1px !default;
89
+ $vxe-table-cell-main-area-extension-border-color: var(--body-background);
90
+ $vxe-table-cell-main-area-extension-background-color: $vxe-primary-color !default;
91
+ $vxe-table-cell-extend-area-border-width: 2px !default;
92
+ $vxe-table-cell-copy-area-border-width: 3px !default;
93
+ $vxe-table-cell-active-area-border-width: 2px !default;
94
+ $vxe-table-cell-copy-area-border-color: $vxe-table-cell-area-border-color !default;
95
+ $vxe-table-cell-extend-area-border-color: $vxe-table-cell-area-border-color !default;
96
+ $vxe-table-cell-active-area-border-color: $vxe-table-cell-area-border-color !default;
97
+ $vxe-table-cell-area-background-color: rgba(64,158,255,0.2) !default;
98
+
99
+ $vxe-table-checkbox-range-border-width: 1px !default;
100
+ $vxe-table-checkbox-range-border-color: #006af1 !default;
101
+ $vxe-table-checkbox-range-background-color: rgba(50,128,252,0.2) !default;
102
+
103
+ $vxe-table-fixed-left-scrolling-box-shadow: 4px 3px 4px 0px rgba(0, 0, 0, 0.12) !default;
104
+ $vxe-table-fixed-right-scrolling-box-shadow: -4px 3px 4px 0px rgba(0, 0, 0, 0.12) !default;
105
+
106
+ /*filter*/
107
+ $vxe-table-filter-panel-background-color: var(--body-background) !default;
108
+
109
+ /*menu*/
110
+ $vxe-table-menu-item-width: 178px !default;
111
+ $vxe-table-menu-background-color: var(--body-background) !default;
112
+
113
+ /*loading*/
114
+ $vxe-loading-color: $theme-color !default;
115
+ $vxe-loading-background-color: rgba(255, 255, 255, 0.5) !default;
116
+ $vxe-loading-z-index: 999 !default;
117
+
118
+ /*validate*/
119
+ $vxe-table-validate-error-color: #f56c6c !default;
120
+ $vxe-table-validate-tooltip-error-color: var(--body-background) !default;
121
+ $vxe-table-validate-tooltip-error-background-color: $vxe-table-validate-error-color !default;
122
+
123
+ /*grid*/
124
+ $vxe-grid-maximize-background-color: var(--body-background) !default;
125
+
126
+ /*toolbar*/
127
+ $vxe-toolbar-background-color: var(--body-background) !default;
128
+ $vxe-toolbar-custom-active-background-color: #D9DADB !default;
129
+ $vxe-toolbar-panel-background-color: var(--body-background) !default;
130
+
131
+ /*tooltip*/
132
+ $vxe-tooltip-dark-color: #fff !default;
133
+ $vxe-tooltip-dark-background-color: #303133 !default;
134
+ $vxe-tooltip-light-background-color: #fff !default;
135
+ $vxe-tooltip-validate-error-color: #fff !default;
136
+ $vxe-tooltip-validate-error-background-color: #f56c6c !default;
137
+
138
+ /*pager*/
139
+ $vxe-pager-background-color: var(--body-background) !default;
140
+ $vxe-pager-perfect-background-color: var(--body-background) !default;
141
+ $vxe-pager-perfect-button-background-color: #f4f4f5 !default;
142
+
143
+ /*modal*/
144
+ $vxe-modal-header-background-color: #F8F8F8 !default;
145
+ $vxe-modal-body-background-color: var(--body-background) !default;
146
+ $vxe-modal-border-color: var(--border-color) !default;
147
+
148
+ /*checkbox*/
149
+ $vxe-checkbox-font-size-default: 15px !default;
150
+ $vxe-checkbox-font-size-medium: 14px !default;
151
+ $vxe-checkbox-font-size-small: 13px !default;
152
+ $vxe-checkbox-font-size-mini: 12px !default;
153
+ $vxe-checkbox-checked-width: 0.32em !default;
154
+ $vxe-checkbox-checked-height: 0.64em !default;
155
+ $vxe-checkbox-indeterminate-width: 0.6em !default;
156
+ $vxe-checkbox-indeterminate-height: 2px !default;
157
+ $vxe-checkbox-border-width: 2px !default;
158
+ $vxe-checkbox-border-radius: 2px !default;
159
+ $vxe-checkbox-icon-background-color: var(--body-background) !default;
160
+ $vxe-checkbox-checked-icon-border-color: var(--body-background) !default;
161
+ $vxe-checkbox-indeterminate-icon-background-color: var(--body-background) !default;
162
+
163
+ /*radio*/
164
+ $vxe-radio-font-size-default: $vxe-checkbox-font-size-default !default;
165
+ $vxe-radio-font-size-medium: $vxe-checkbox-font-size-medium !default;
166
+ $vxe-radio-font-size-small: $vxe-checkbox-font-size-small !default;
167
+ $vxe-radio-font-size-mini: $vxe-checkbox-font-size-mini !default;
168
+ $vxe-radio-border-width: $vxe-checkbox-border-width !default;
169
+ $vxe-radio-icon-background-color: var(--body-background) !default;
170
+ $vxe-radio-checked-icon-background-color: var(--body-background) !default;
171
+ $vxe-radio-indeterminate-icon-background-color: var(--body-background) !default;
172
+ $vxe-radio-button-default-background-color: var(--body-background) !default;
173
+
174
+ /*button*/
175
+ $vxe-button-max-width: 500px !default;
176
+ $vxe-button-default-background-color: #fff !default;
177
+ $vxe-button-dropdown-panel-background-color: #fff !default;
178
+ $vxe-button-height-default: 34px !default;
179
+ $vxe-button-height-medium: 32px !default;
180
+ $vxe-button-height-small: 30px !default;
181
+ $vxe-button-height-mini: 28px !default;
182
+ $vxe-button-round-border-radius-default: 17px !default;
183
+ $vxe-button-round-border-radius-medium: 16px !default;
184
+ $vxe-button-round-border-radius-small: 15px !default;
185
+ $vxe-button-round-border-radius-mini: 14px !default;
186
+
187
+ /*input*/
188
+ $vxe-input-background-color: var(--body-background) !default;
189
+ $vxe-input-panel-background-color: $vxe-input-background-color !default;
190
+ $vxe-input-number-disabled-color: #e4e7ed !default;
191
+ $vxe-input-date-festival-color: #999999 !default;
192
+ $vxe-input-date-festival-important-color: $vxe-primary-color !default;
193
+ $vxe-input-date-notice-background-color: #FF0000 !default;
194
+ $vxe-input-date-picker-hover-background-color: #f2f6fc !default;
195
+ $vxe-input-date-picker-selected-color: var(--body-background) !default;
196
+ $vxe-input-date-time-confirm-button-color: var(--body-background) !default;
197
+ $vxe-input-date-picker-festival-selected-color: $vxe-input-date-picker-selected-color !default;
198
+ $vxe-input-date-picker-notice-selected-background-color: $vxe-input-date-picker-selected-color !default;
199
+ $vxe-input-date-extra-color: #67c23a !default;
200
+ $vxe-input-date-extra-important-color: #fd2222 !default;
201
+ $vxe-input-date-title-height-default: 30px !default;
202
+ $vxe-input-date-title-height-medium: 29px !default;
203
+ $vxe-input-date-title-height-small: 28px !default;
204
+ $vxe-input-date-title-height-mini: 26px !default;
205
+ $vxe-input-date-time-week-row-height-default: 38px !default;
206
+ $vxe-input-date-time-week-row-height-medium: 36px !default;
207
+ $vxe-input-date-time-week-row-height-small: 34px !default;
208
+ $vxe-input-date-time-week-row-height-mini: 32px !default;
209
+ $vxe-input-date-month-year-row-height-default: 48px !default;
210
+ $vxe-input-date-month-year-row-height-medium: 46px !default;
211
+ $vxe-input-date-month-year-row-height-small: 44px !default;
212
+ $vxe-input-date-month-year-row-height-mini: 42px !default;
213
+ $vxe-input-date-quarter-row-height-default: 60px !default;
214
+ $vxe-input-date-quarter-row-height-medium: 58px !default;
215
+ $vxe-input-date-quarter-row-height-small: 56px !default;
216
+ $vxe-input-date-quarter-row-height-mini: 54px !default;
217
+ $vxe-input-height-default: $vxe-button-height-default !default;
218
+ $vxe-input-height-medium: $vxe-button-height-medium !default;
219
+ $vxe-input-height-small: $vxe-button-height-small !default;
220
+ $vxe-input-height-mini: $vxe-button-height-mini !default;
221
+
222
+ /*textarea*/
223
+ $vxe-textarea-line-height: 1.5715 !default;
224
+ $vxe-textarea-background-color: var(--body-background) !default;
225
+ $vxe-textarea-count-color: #999 !default;
226
+ $vxe-textarea-count-background-color: var(--body-background) !default;
227
+ $vxe-textarea-count-error-color: $vxe-table-validate-error-color !default;
228
+
229
+ /*form*/
230
+ $vxe-form-item-min-height-default: 36px !default;
231
+ $vxe-form-item-min-height-medium: 34px !default;
232
+ $vxe-form-item-min-height-small: 32px !default;
233
+ $vxe-form-item-min-height-mini: 30px !default;
234
+ $vxe-form-background-color: var(--body-background) !default;
235
+ $vxe-form-validate-error-color: $vxe-table-validate-error-color !default;
236
+ $vxe-form-validate-error-background-color: inherit !default;
237
+
238
+ /*select*/
239
+ $vxe-select-option-height-default: 30px !default;
240
+ $vxe-select-option-height-medium: 28px !default;
241
+ $vxe-select-option-height-small: 26px !default;
242
+ $vxe-select-option-height-mini: 24px !default;
243
+ $vxe-select-option-hover-background-color: #f5f7fa !default;
244
+ $vxe-select-panel-background-color: var(--body-background) !default;
245
+ $vxe-select-empty-color: #C0C4CC !default;
246
+ $vxe-optgroup-title-color:#909399 !default;
247
+
248
+ /*switch*/
249
+ $vxe-switch-font-color: #fff !default;
250
+ $vxe-switch-icon-background-color: #fff !default;
251
+ $vxe-switch-open-background-color: $vxe-primary-color !default;
252
+ $vxe-switch-close-background-color: rgba(0,0,0,0.35) !default;
253
+ $vxe-switch-disabled-background-color: rgba(0,0,0,0.15) !default;
254
+
255
+ /*pulldown*/
256
+ $vxe-pulldown-panel-background-color: var(--body-background) !default;
@@ -0,0 +1,178 @@
1
+ import VXETable from 'vxe-table'
2
+ import './css/index.scss'
3
+ import VXETablePluginExportXLSX from 'vxe-table-plugin-export-xlsx'
4
+ import VXETablePluginExportPDF from 'vxe-table-plugin-export-pdf'
5
+ import XEClipboard from 'xe-clipboard'
6
+ import { defaultPublicRenders, defaultExtraRenders, defaultFilterRenders, defaultPublicRendersNames } from './render/globalRenders'
7
+
8
+ let vxeOptions = {
9
+ zIndex: 599,
10
+ version: 0,
11
+ input: {
12
+ controls: false,
13
+ clearable: true
14
+ },
15
+ select: {
16
+ optionConfig: {
17
+ useKey: false,
18
+ keyField: 'value'
19
+ }
20
+ },
21
+ table: {
22
+ stripe: false,
23
+ border: 'full',
24
+ round: false,
25
+ keepSource: false,
26
+ rowConfig: {
27
+ useKey: false,
28
+ keyField: '_XID',
29
+ isCurrent: true,
30
+ isHover: true
31
+ },
32
+ sortConfig: {
33
+ multiple: false,
34
+ chronological: false,
35
+ trigger: 'cell'
36
+ },
37
+ radioConfig: {
38
+ strict: true,
39
+ highlight: true
40
+ },
41
+ checkboxConfig: {
42
+ checkStrictly: false,
43
+ highlight: true,
44
+ reserve: true,
45
+ checkAll: false
46
+ },
47
+ tooltipConfig: {
48
+ showAll: false,
49
+ theme: 'dark',
50
+ enterable: true
51
+ },
52
+ treeConfig: {
53
+ indent: 20,
54
+ line: false,
55
+ expandAll: false,
56
+ expandRowKeys: [],
57
+ accordion: true,
58
+ showIcon: true,
59
+ children: 'children',
60
+ // 若为平行数据结构不是嵌套结构则使用下面配置 transform 需要为true
61
+ transform: false,
62
+ parentField: 'parentId'
63
+ },
64
+ mouseConfig: {
65
+ selected: true
66
+ },
67
+ keyboardConfig: {
68
+ isArrow: true,
69
+ isEsc: true,
70
+ isDel: false,
71
+ isEnter: true,
72
+ isTab: true,
73
+ isEdit: true,
74
+ isChecked: true,
75
+ enterToTab: false
76
+ },
77
+ editConfig: {
78
+ enabled: true,
79
+ trigger: 'click',
80
+ mode: 'cell'
81
+ },
82
+ customConfig: {
83
+ storage: true
84
+ },
85
+ seqConfig: {
86
+ startIndex: 1,
87
+ seqMethod: obj => {
88
+ let { $table, seq, $seq, $$seq, $rowIndex } = obj
89
+ const grid = $table.xegrid || {}
90
+ const propsData = $table.props || {}
91
+ const { seqConfig, treeConfig } = propsData
92
+ const tablePage = grid.props.pagerConfig?.enabled
93
+ if ($$seq) {
94
+ return $$seq
95
+ } else if (tablePage) {
96
+ const { pagerConfig } = grid.props
97
+ const pageStart = seqConfig?.startIndex || (pagerConfig.pageSize > 0 ? pagerConfig.pageSize : 50) * ((pagerConfig.currentPage > 0 ? pagerConfig.currentPage : 1) - 1)
98
+ return !treeConfig || (treeConfig && ($seq === '' || $seq === undefined)) ? Number(pageStart) + seq : Number(pageStart) + Number($seq) + '.' + seq
99
+ } else if (!tablePage && treeConfig) {
100
+ return $seq === '' || $seq === undefined ? seq : $seq + '.' + seq
101
+ } else {
102
+ return seq === -1 ? $rowIndex + (seqConfig.startIndex || 1) : seq
103
+ }
104
+ }
105
+ },
106
+ resizeConfig: {
107
+ refreshDelay: 250
108
+ },
109
+ scrollX: {
110
+ enabled: true,
111
+ gt: 60,
112
+ oSize: 0
113
+ },
114
+ scrollY: {
115
+ enabled: true,
116
+ gt: 100,
117
+ oSize: 0
118
+ }
119
+ },
120
+ pager: {
121
+ currentPage: 1,
122
+ pageSize: 50,
123
+ total: 0,
124
+ layouts: ['Sizes', 'PrevJump', 'PrevPage', 'Number', 'NextPage', 'NextJump', 'FullJump', 'Total'],
125
+ pagerCount: 7,
126
+ pageSizes: [
127
+ { label: '50条', value: 50 },
128
+ { label: '100条', value: 100 },
129
+ { label: '500条', value: 500 },
130
+ { label: '1000条', value: 1000 },
131
+ { label: '10000条', value: 10000 },
132
+ { label: '10万条', value: 100000 }
133
+ ],
134
+ align: 'right',
135
+ border: true,
136
+ background: false,
137
+ perfect: true,
138
+ autoHidden: false,
139
+ enabled: true
140
+ },
141
+ form: {},
142
+ modal: {
143
+ lockView: true,
144
+ resize: true,
145
+ mask: true,
146
+ duration: 3000,
147
+ dblclickZoom: true,
148
+ showTitleOverflow: true
149
+ },
150
+ icon: {},
151
+ loading: {
152
+ icon: 'vxe-icon-spinner roll',
153
+ text: '加载中...'
154
+ }
155
+ }
156
+
157
+ VXETable.renderer.mixin(defaultPublicRenders)
158
+ VXETable.renderer.mixin(defaultExtraRenders)
159
+ VXETable.renderer.mixin(defaultFilterRenders)
160
+ VXETable.setup(vxeOptions)
161
+ VXETablePluginExportPDF.setup({
162
+ // 设置全局默认字体
163
+ fontName: 'SourceHanSans-Normal',
164
+ beforeMethod: ({ $pdf, options, columns, datas }) => {}
165
+ })
166
+ VXETable.use(VXETablePluginExportXLSX)
167
+ VXETable.use(VXETablePluginExportPDF)
168
+
169
+ const index = {
170
+ install: function (Vue) {
171
+ Vue.use(VXETable)
172
+ Vue.config.globalProperties.$vTable = VXETable
173
+ Vue.config.globalProperties.$vTableSetup = vxeOptions
174
+ Vue.config.globalProperties.$vxePluginNames = defaultPublicRendersNames
175
+ Vue.config.globalProperties.$vClipboard = XEClipboard
176
+ }
177
+ }
178
+ export default index
@@ -0,0 +1,19 @@
1
+ <template>
2
+ <span class="vxe-render--inner" :class="{ 'vxe-render--inner--readonly': !redit, 'form-render': rform, 'td-render': !rform }">
3
+ <template v-if="redit || isEditAll">
4
+ <vxe-checkbox v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeCheckCallBack" />
5
+ <span style="display: none" v-html="renderText"></span>
6
+ </template>
7
+ <template v-else>
8
+ <vxe-checkbox :model-value="renderText" :disabled="true" :size="rsize" v-bind="rprops" />
9
+ </template>
10
+ </span>
11
+ </template>
12
+
13
+ <script>
14
+ import mixin from '../mixin/cell-mixin'
15
+ export default {
16
+ name: 'VxeRenderCheckbox',
17
+ mixins: [mixin]
18
+ }
19
+ </script>
@@ -0,0 +1,36 @@
1
+ <template>
2
+ <span class="vxe-render--inner" :class="{ 'form-render': rform, 'td-render': !rform }">
3
+ <template v-if="redit || isEditAll">
4
+ <vxe-checkbox-group v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeCheckCallBack">
5
+ <vxe-checkbox v-for="checkitem in rprops.options" :key="checkitem.value" :label="checkitem.value" :content="checkitem.label" />
6
+ </vxe-checkbox-group>
7
+ <span style="display: none" v-html="renderText"></span>
8
+ </template>
9
+ <template v-else-if="!redit && showType">
10
+ <div v-for="roption in rprops.options" :key="roption">
11
+ <Tag v-if="roptionShow(roption)" :color="roption.tagColor || rprops.tagColor" :type="roption.tagType || rprops.tagType">{{ roption.label }}</Tag>
12
+ </div>
13
+ </template>
14
+ <template v-else>
15
+ <span v-html="renderText"></span>
16
+ </template>
17
+ </span>
18
+ </template>
19
+
20
+ <script>
21
+ import mixin from '../mixin/cell-mixin'
22
+ export default {
23
+ name: 'VxeRenderCheckgroup',
24
+ mixins: [mixin],
25
+ computed: {
26
+ showType() {
27
+ return this.rprops.showType === 'tag'
28
+ }
29
+ },
30
+ methods: {
31
+ roptionShow(roption) {
32
+ return this.renderText.split(this.rprops.split).includes(roption.label)
33
+ }
34
+ }
35
+ }
36
+ </script>
@@ -0,0 +1,19 @@
1
+ <template>
2
+ <span class="vxe-render--inner" :class="{ 'form-render': rform, 'td-render': !rform }">
3
+ <template v-if="redit || isEditAll">
4
+ <sh-code-editor v-model="renderValue" v-bind="rprops" @change="vxeInputChange" @blur="vxeBlurCallback"></sh-code-editor>
5
+ <span style="display: none" v-html="renderText"></span>
6
+ </template>
7
+ <template v-else>
8
+ <span>{{ renderText }}</span>
9
+ </template>
10
+ </span>
11
+ </template>
12
+
13
+ <script>
14
+ import mixin from '../mixin/cell-mixin'
15
+ export default {
16
+ name: 'VxeRenderCode',
17
+ mixins: [mixin]
18
+ }
19
+ </script>
@@ -0,0 +1,93 @@
1
+ <template>
2
+ <span class="vxe-render--inner">
3
+ <template v-for="renderBtn in renderBtns" :key="renderBtn.code">
4
+ <vxe-button
5
+ v-if="isBtnRender(renderBtn)"
6
+ :type="rprops.type"
7
+ :size="rsize"
8
+ :icon="getBtnContent(renderBtn).icon"
9
+ :status="getBtnContent(renderBtn).status"
10
+ @click="vxeBtnCallback($event, renderBtn)">
11
+ {{ getBtnContent(renderBtn).content }}
12
+ </vxe-button>
13
+ </template>
14
+ </span>
15
+ </template>
16
+
17
+ <script>
18
+ import mixin from '../mixin/cell-mixin'
19
+ export default {
20
+ name: 'VxeRenderGoption',
21
+ mixins: [mixin],
22
+ data() {
23
+ return {}
24
+ },
25
+ computed: {
26
+ renderBtns() {
27
+ let renderBtns = []
28
+ let { btnContain, btnsConfig } = this.rprops
29
+ if (btnsConfig && Array.isArray(btnsConfig)) {
30
+ renderBtns = btnsConfig
31
+ }
32
+ if (btnContain && Array.isArray(btnContain)) {
33
+ btnContain.forEach(item => {
34
+ if (!renderBtns.some(btn => btn.code === item)) {
35
+ renderBtns.push({ code: item })
36
+ }
37
+ })
38
+ }
39
+ return renderBtns
40
+ }
41
+ },
42
+ methods: {
43
+ // 按钮是否显示条件
44
+ isBtnRender(renderBtn) {
45
+ if (this.$vUtils.has(renderBtn, 'condition')) {
46
+ let condition = this.$vUtils.get(renderBtn, 'condition')
47
+ return this.$vUtils.calculate(condition, this.rdata)
48
+ }
49
+ return true
50
+ },
51
+ // 规定按钮文字
52
+ getBtnContent(renderBtn) {
53
+ let renderContent = ''
54
+ let renderStatus = ''
55
+ let renderIcon = ''
56
+ switch (renderBtn.code) {
57
+ case 'add':
58
+ renderContent = renderBtn.content || '新增'
59
+ renderStatus = renderBtn.status || 'primary'
60
+ renderIcon = renderBtn.icon || 'vxe-icon-add'
61
+ break
62
+ case 'edit':
63
+ renderContent = renderBtn.content || '编辑'
64
+ renderStatus = renderBtn.status || 'warning'
65
+ renderIcon = renderBtn.icon || 'vxe-icon-edit'
66
+ break
67
+ case 'delete':
68
+ renderContent = renderBtn.content || '删除'
69
+ renderStatus = renderBtn.status || 'danger'
70
+ renderIcon = renderBtn.icon || 'vxe-icon-delete'
71
+ break
72
+ case 'detail':
73
+ renderContent = renderBtn.content || '查看'
74
+ renderStatus = renderBtn.status || ''
75
+ renderIcon = renderBtn.icon || 'vxe-icon-information'
76
+ break
77
+ default:
78
+ renderContent = renderBtn.content
79
+ renderStatus = renderBtn.status
80
+ break
81
+ }
82
+ return { content: renderContent, status: renderStatus, icon: renderIcon }
83
+ },
84
+ // 按钮点击回调
85
+ vxeBtnCallback({ $event }, renderBtn) {
86
+ $event.stopPropagation()
87
+ let { $table } = this.rparams
88
+ let renderBtnObj = Object.assign({}, this.getBtnContent(renderBtn), renderBtn)
89
+ $table.xegrid.context.emit('option-click', renderBtnObj, this.rparams)
90
+ }
91
+ }
92
+ }
93
+ </script>
@@ -0,0 +1,11 @@
1
+ <template>
2
+ <a class="vxe-cell-href-a" :href="rdata[rkey]" :target="rprops.target" v-html="renderText"></a>
3
+ </template>
4
+
5
+ <script>
6
+ import mixin from '../mixin/cell-mixin'
7
+ export default {
8
+ name: 'VxeRenderImg',
9
+ mixins: [mixin]
10
+ }
11
+ </script>
@@ -0,0 +1,28 @@
1
+ <template>
2
+ <span class="vxe-render--inner">
3
+ <Image class="vxe-render--inner-img" :src="imgSrc" v-bind="rprops" :height="imgHeight">
4
+ <template #placeholder>
5
+ <img :src="rprops.placeholder" class="render-slot-img" :alt="rprops.alt" />
6
+ </template>
7
+ <template #error>
8
+ <img :src="rprops.error" class="render-slot-img" />
9
+ </template>
10
+ </Image>
11
+ </span>
12
+ </template>
13
+
14
+ <script>
15
+ import mixin from '../mixin/cell-mixin'
16
+ export default {
17
+ name: 'VxeRenderImg',
18
+ mixins: [mixin],
19
+ computed: {
20
+ imgSrc() {
21
+ return this.$vUtils.get(this.rdata, this.rkey)
22
+ },
23
+ imgHeight() {
24
+ return this.rprops.square ? this.rprops.width : this.rprops.height
25
+ }
26
+ }
27
+ }
28
+ </script>