@aochuang/common 1.0.0 → 1.0.126

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 (417) hide show
  1. package/common/index.js +13 -0
  2. package/common/loading/index.js +7 -0
  3. package/common/loading/loading.vue +71 -0
  4. package/common/resizable/index.js +3 -0
  5. package/common/resizable/resizable.vue +260 -0
  6. package/common/scroll-load-more/index.js +3 -0
  7. package/common/scroll-load-more/scroll-load-more.vue +397 -0
  8. package/common/static-map/index.js +3 -0
  9. package/common/static-map/static-map.vue +87 -0
  10. package/common/tips/index.js +7 -0
  11. package/common/tips/tips.vue +82 -0
  12. package/common/tooltip/index.js +7 -0
  13. package/common/tooltip/popper.js +18 -0
  14. package/common/tooltip/tooltip.vue +75 -0
  15. package/common/viewer/index.js +4 -0
  16. package/common/viewer/util.js +40 -0
  17. package/common/viewer/viewer.vue +607 -0
  18. package/common/viewer-pedestal/index.js +3 -0
  19. package/common/viewer-pedestal/viewer-pedestal.vue +70 -0
  20. package/common/voice/index.js +21 -0
  21. package/common/voice/util.js +18 -0
  22. package/common/voice/voice-player-aac.js +584 -0
  23. package/common/voice/voice-player-audio.js +159 -0
  24. package/common/voice/voice-player.js +309 -0
  25. package/common/voice/voice.vue +274 -0
  26. package/common/voice-player/index.js +3 -0
  27. package/common/voice-player/voice-player.vue +785 -0
  28. package/common/waterfall/index.js +3 -0
  29. package/common/waterfall/waterfall.vue +169 -0
  30. package/common/wechat-emoji/emoji/666.png +0 -0
  31. package/common/wechat-emoji/emoji/Emm.png +0 -0
  32. package/common/wechat-emoji/emoji/OK.png +0 -0
  33. package/common/wechat-emoji/emoji//344/272/262/344/272/262.png +0 -0
  34. package/common/wechat-emoji/emoji//344/276/277/344/276/277.png +0 -0
  35. package/common/wechat-emoji/emoji//345/201/267/347/254/221.png +0 -0
  36. package/common/wechat-emoji/emoji//345/202/262/346/205/242.png +0 -0
  37. package/common/wechat-emoji/emoji//345/206/215/350/247/201.png +0 -0
  38. package/common/wechat-emoji/emoji//345/207/213/350/260/242.png +0 -0
  39. package/common/wechat-emoji/emoji//345/210/240/351/231/244.png +0 -0
  40. package/common/wechat-emoji/emoji//345/212/240/346/262/271.png +0 -0
  41. package/common/wechat-emoji/emoji//345/213/276/345/274/225.png +0 -0
  42. package/common/wechat-emoji/emoji//345/217/221/345/221/206.png +0 -0
  43. package/common/wechat-emoji/emoji//345/217/221/346/200/222.png +0 -0
  44. package/common/wechat-emoji/emoji//345/217/221/346/212/226.png +0 -0
  45. package/common/wechat-emoji/emoji//345/217/257/346/200/234.png +0 -0
  46. package/common/wechat-emoji/emoji//345/217/263/345/223/274/345/223/274.png +0 -0
  47. package/common/wechat-emoji/emoji//345/217/271/346/260/224.png +0 -0
  48. package/common/wechat-emoji/emoji//345/220/203/347/223/234.png +0 -0
  49. package/common/wechat-emoji/emoji//345/220/210/345/215/201.png +0 -0
  50. package/common/wechat-emoji/emoji//345/220/220.png +0 -0
  51. package/common/wechat-emoji/emoji//345/220/220/350/210/214/345/244/264.png +0 -0
  52. package/common/wechat-emoji/emoji//345/221/262/347/211/231.png +0 -0
  53. package/common/wechat-emoji/emoji//345/222/222/351/252/202.png +0 -0
  54. package/common/wechat-emoji/emoji//345/222/226/345/225/241.png +0 -0
  55. package/common/wechat-emoji/emoji//345/223/207.png +0 -0
  56. package/common/wechat-emoji/emoji//345/223/210/346/254/240.png +0 -0
  57. package/common/wechat-emoji/emoji//345/225/244/351/205/222.png +0 -0
  58. package/common/wechat-emoji/emoji//345/230/230.png +0 -0
  59. package/common/wechat-emoji/emoji//345/230/264/345/224/207.png +0 -0
  60. package/common/wechat-emoji/emoji//345/230/277/345/223/210.png +0 -0
  61. package/common/wechat-emoji/emoji//345/233/247.png +0 -0
  62. package/common/wechat-emoji/emoji//345/233/260.png +0 -0
  63. package/common/wechat-emoji/emoji//345/235/217/347/254/221.png +0 -0
  64. package/common/wechat-emoji/emoji//345/244/247/345/223/255.png +0 -0
  65. package/common/wechat-emoji/emoji//345/244/251/345/225/212.png +0 -0
  66. package/common/wechat-emoji/emoji//345/244/252/351/230/263.png +0 -0
  67. package/common/wechat-emoji/emoji//345/244/261/346/234/233.png +0 -0
  68. package/common/wechat-emoji/emoji//345/245/213/346/226/227.png +0 -0
  69. package/common/wechat-emoji/emoji//345/245/270/347/254/221.png +0 -0
  70. package/common/wechat-emoji/emoji//345/245/275/347/232/204.png +0 -0
  71. package/common/wechat-emoji/emoji//345/247/224/345/261/210.png +0 -0
  72. package/common/wechat-emoji/emoji//345/256/263/347/276/236.png +0 -0
  73. package/common/wechat-emoji/emoji//345/260/264/345/260/254.png +0 -0
  74. package/common/wechat-emoji/emoji//345/267/246/345/223/274/345/223/274.png +0 -0
  75. package/common/wechat-emoji/emoji//345/272/206/347/245/235.png +0 -0
  76. package/common/wechat-emoji/emoji//345/274/261.png +0 -0
  77. package/common/wechat-emoji/emoji//345/274/272.png +0 -0
  78. package/common/wechat-emoji/emoji//345/276/227/346/204/217.png +0 -0
  79. package/common/wechat-emoji/emoji//345/276/256/347/254/221.png +0 -0
  80. package/common/wechat-emoji/emoji//345/277/203/347/242/216.png +0 -0
  81. package/common/wechat-emoji/emoji//345/277/253/345/223/255/344/272/206.png +0 -0
  82. package/common/wechat-emoji/emoji//346/200/204/347/201/253.png +0 -0
  83. package/common/wechat-emoji/emoji//346/201/220/346/203/247.png +0 -0
  84. package/common/wechat-emoji/emoji//346/202/240/351/227/262.png +0 -0
  85. package/common/wechat-emoji/emoji//346/203/212/346/201/220.png +0 -0
  86. package/common/wechat-emoji/emoji//346/203/212/350/256/266.png +0 -0
  87. package/common/wechat-emoji/emoji//346/204/211/345/277/253.png +0 -0
  88. package/common/wechat-emoji/emoji//346/206/250/347/254/221.png +0 -0
  89. package/common/wechat-emoji/emoji//346/211/223/350/204/270.png +0 -0
  90. package/common/wechat-emoji/emoji//346/212/223/347/213/202.png +0 -0
  91. package/common/wechat-emoji/emoji//346/212/240/351/274/273.png +0 -0
  92. package/common/wechat-emoji/emoji//346/212/261/346/213/263.png +0 -0
  93. package/common/wechat-emoji/emoji//346/213/245/346/212/261.png +0 -0
  94. package/common/wechat-emoji/emoji//346/213/263/345/244/264.png +0 -0
  95. package/common/wechat-emoji/emoji//346/215/202/350/204/270.png +0 -0
  96. package/common/wechat-emoji/emoji//346/217/241/346/211/213.png +0 -0
  97. package/common/wechat-emoji/emoji//346/222/207/345/230/264.png +0 -0
  98. package/common/wechat-emoji/emoji//346/223/246/346/261/227.png +0 -0
  99. package/common/wechat-emoji/emoji//346/225/262/346/211/223.png +0 -0
  100. package/common/wechat-emoji/emoji//346/227/240/350/257/255.png +0 -0
  101. package/common/wechat-emoji/emoji//346/227/272/346/237/264.png +0 -0
  102. package/common/wechat-emoji/emoji//346/231/225.png +0 -0
  103. package/common/wechat-emoji/emoji//346/234/210/344/272/256.png +0 -0
  104. package/common/wechat-emoji/emoji//346/234/272/346/231/272.png +0 -0
  105. package/common/wechat-emoji/emoji//346/261/227.png +0 -0
  106. package/common/wechat-emoji/emoji//346/265/201/346/261/227.png +0 -0
  107. package/common/wechat-emoji/emoji//346/265/201/346/263/252.png +0 -0
  108. package/common/wechat-emoji/emoji//347/202/270/345/274/271.png +0 -0
  109. package/common/wechat-emoji/emoji//347/203/237/350/212/261.png +0 -0
  110. package/common/wechat-emoji/emoji//347/210/206/347/253/271.png +0 -0
  111. package/common/wechat-emoji/emoji//347/210/261/345/277/203.png +0 -0
  112. package/common/wechat-emoji/emoji//347/214/252/345/244/264.png +0 -0
  113. package/common/wechat-emoji/emoji//347/216/253/347/221/260.png +0 -0
  114. package/common/wechat-emoji/emoji//347/224/237/347/227/205.png +0 -0
  115. package/common/wechat-emoji/emoji//347/226/221/351/227/256.png +0 -0
  116. package/common/wechat-emoji/emoji//347/231/274.png +0 -0
  117. package/common/wechat-emoji/emoji//347/231/275/347/234/274.png +0 -0
  118. package/common/wechat-emoji/emoji//347/232/261/347/234/211.png +0 -0
  119. package/common/wechat-emoji/emoji//347/235/241.png +0 -0
  120. package/common/wechat-emoji/emoji//347/240/264/346/266/225/344/270/272/347/254/221.png +0 -0
  121. package/common/wechat-emoji/emoji//347/244/274/347/211/251.png +0 -0
  122. package/common/wechat-emoji/emoji//347/244/276/344/274/232/347/244/276/344/274/232.png +0 -0
  123. package/common/wechat-emoji/emoji//347/246/217.png +0 -0
  124. package/common/wechat-emoji/emoji//347/254/221/350/204/270.png +0 -0
  125. package/common/wechat-emoji/emoji//347/272/242/345/214/205.png +0 -0
  126. package/common/wechat-emoji/emoji//347/277/273/347/231/275/347/234/274.png +0 -0
  127. package/common/wechat-emoji/emoji//350/200/266.png +0 -0
  128. package/common/wechat-emoji/emoji//350/203/234/345/210/251.png +0 -0
  129. package/common/wechat-emoji/emoji//350/204/270/347/272/242.png +0 -0
  130. package/common/wechat-emoji/emoji//350/211/262.png +0 -0
  131. package/common/wechat-emoji/emoji//350/213/246/346/266/251.png +0 -0
  132. package/common/wechat-emoji/emoji//350/217/234/345/210/200.png +0 -0
  133. package/common/wechat-emoji/emoji//350/233/213/347/263/225.png +0 -0
  134. package/common/wechat-emoji/emoji//350/241/260.png +0 -0
  135. package/common/wechat-emoji/emoji//350/243/202/345/274/200.png +0 -0
  136. package/common/wechat-emoji/emoji//350/245/277/347/223/234.png +0 -0
  137. package/common/wechat-emoji/emoji//350/256/251/346/210/221/347/234/213/347/234/213.png +0 -0
  138. package/common/wechat-emoji/emoji//350/260/203/347/232/256.png +0 -0
  139. package/common/wechat-emoji/emoji//350/267/263/350/267/263.png +0 -0
  140. package/common/wechat-emoji/emoji//350/275/254/345/234/210.png +0 -0
  141. package/common/wechat-emoji/emoji//351/204/231/350/247/206.png +0 -0
  142. package/common/wechat-emoji/emoji//351/227/255/345/230/264.png +0 -0
  143. package/common/wechat-emoji/emoji//351/230/264/351/231/251.png +0 -0
  144. package/common/wechat-emoji/emoji//351/232/276/350/277/207.png +0 -0
  145. package/common/wechat-emoji/emoji//351/252/267/351/253/205.png +0 -0
  146. package/common/wechat-emoji/emoji//351/254/274/350/204/270.png +0 -0
  147. package/common/wechat-emoji/emoji//351/270/241.png +0 -0
  148. package/common/wechat-emoji/emoji//351/274/223/346/216/214.png +0 -0
  149. package/common/wechat-emoji/index.js +14 -0
  150. package/common/wechat-emoji/order.json +111 -0
  151. package/common/wechat-emoji/utils.js +52 -0
  152. package/common/wechat-emoji/wechat-emoji.vue +74 -0
  153. package/common/wechat-emoji-select/index.js +3 -0
  154. package/common/wechat-emoji-select/wechat-emoji-select.vue +67 -0
  155. package/components/advanced-filter/advanced-filter-condition-item/advanced-filter-condition-item-boolean.vue +33 -0
  156. package/components/advanced-filter/advanced-filter-condition-item/advanced-filter-condition-item-date-range.vue +30 -0
  157. package/components/advanced-filter/advanced-filter-condition-item/advanced-filter-condition-item-date.vue +41 -0
  158. package/components/advanced-filter/advanced-filter-condition-item/advanced-filter-condition-item-datetime-range.vue +34 -0
  159. package/components/advanced-filter/advanced-filter-condition-item/advanced-filter-condition-item-datetime.vue +41 -0
  160. package/components/advanced-filter/advanced-filter-condition-item/advanced-filter-condition-item-number-range.vue +67 -0
  161. package/components/advanced-filter/advanced-filter-condition-item/advanced-filter-condition-item-number.vue +35 -0
  162. package/components/advanced-filter/advanced-filter-condition-item/advanced-filter-condition-item-string.vue +41 -0
  163. package/components/advanced-filter/advanced-filter-condition-item/advanced-filter-condition-item-value.vue +73 -0
  164. package/components/advanced-filter/advanced-filter-condition-item/advanced-filter-condition-item.vue +226 -0
  165. package/components/advanced-filter/advanced-filter-condition-toggle.vue +112 -0
  166. package/components/advanced-filter/advanced-filter-condition.vue +352 -0
  167. package/components/advanced-filter/advanced-filter-permanent-item.vue +10 -0
  168. package/components/advanced-filter/advanced-filter-permanent.vue +10 -0
  169. package/components/advanced-filter/advanced-filter-scene-form.vue +95 -0
  170. package/components/advanced-filter/advanced-filter-scene-item.vue +64 -0
  171. package/components/advanced-filter/advanced-filter-scene-manage.vue +264 -0
  172. package/components/advanced-filter/advanced-filter-scene-transfer.vue +283 -0
  173. package/components/advanced-filter/advanced-filter-scene.vue +199 -0
  174. package/components/advanced-filter/advanced-filter.vue +119 -0
  175. package/components/advanced-filter/index.js +35 -0
  176. package/components/advanced-filter/utils.js +132 -0
  177. package/components/autocomplete/autocomplete.vue +121 -0
  178. package/components/autocomplete/index.js +7 -0
  179. package/components/avatar/avatar.png +0 -0
  180. package/components/avatar/avatar.vue +216 -0
  181. package/components/avatar/index.js +7 -0
  182. package/components/brick-wall/brick-wall-skeleton.vue +125 -0
  183. package/components/brick-wall/brick-wall.vue +293 -0
  184. package/components/brick-wall/index.js +7 -0
  185. package/components/button/button.vue +550 -0
  186. package/components/button/index.js +7 -0
  187. package/components/button/utils.js +20 -0
  188. package/components/cascader/cascader.vue +184 -0
  189. package/components/cascader/index.js +7 -0
  190. package/components/cascader/util.js +50 -0
  191. package/components/checkbox/checkbox.vue +114 -0
  192. package/components/checkbox/index.js +7 -0
  193. package/components/checkbox-button/index.js +8 -0
  194. package/components/checkbox-group/checkbox-group.vue +11 -0
  195. package/components/checkbox-group/index.js +7 -0
  196. package/components/date-picker/date-picker.vue +307 -0
  197. package/components/date-picker/index.js +7 -0
  198. package/components/dialog/dialog.vue +187 -0
  199. package/components/dialog/index.js +14 -0
  200. package/components/dialog/utils.js +20 -0
  201. package/components/drawer/drawer.vue +186 -0
  202. package/components/drawer/index.js +14 -0
  203. package/components/drawer/utils.js +36 -0
  204. package/components/dropdown/dropdown-item.vue +71 -0
  205. package/components/dropdown/dropdown.vue +326 -0
  206. package/components/dropdown/index.js +16 -0
  207. package/components/empty/empty.vue +89 -0
  208. package/components/empty/index.js +7 -0
  209. package/components/filter/filter-group.vue +44 -0
  210. package/components/filter/filter-item.vue +122 -0
  211. package/components/filter/filter-more.vue +114 -0
  212. package/components/filter/filter.vue +407 -0
  213. package/components/filter/index.js +20 -0
  214. package/components/filter/refresh-line.svg +1 -0
  215. package/components/filter/util.js +5 -0
  216. package/components/form/form-cell.vue +231 -0
  217. package/components/form/form-group.vue +147 -0
  218. package/components/form/form-row.vue +51 -0
  219. package/components/form/form.vue +287 -0
  220. package/components/form/index.js +24 -0
  221. package/components/grid/grid-card-view/grid-card-view.vue +157 -0
  222. package/components/grid/grid-column.vue +137 -0
  223. package/components/grid/grid-filter/grid-filter-group.vue +41 -0
  224. package/components/grid/grid-filter/grid-filter-item.vue +68 -0
  225. package/components/grid/grid-filter/grid-filter.vue +115 -0
  226. package/components/grid/grid-filter/util.js +7 -0
  227. package/components/grid/grid-filter-operate/grid-filter-operate-item.vue +55 -0
  228. package/components/grid/grid-filter-operate/grid-filter-operate.vue +46 -0
  229. package/components/grid/grid-sort/grid-sort-proxy.js +27 -0
  230. package/components/grid/grid-sort/grid-sort.vue +205 -0
  231. package/components/grid/grid-sort/icons/asc.png +0 -0
  232. package/components/grid/grid-sort/icons/desc.png +0 -0
  233. package/components/grid/grid-sort/index.js +7 -0
  234. package/components/grid/grid-table-view/grid-table-view.vue +178 -0
  235. package/components/grid/grid-table.vue +549 -0
  236. package/components/grid/grid-toolbar/grid-batch-toolbar-proxy.js +21 -0
  237. package/components/grid/grid-toolbar/grid-batch-toolbar.vue +129 -0
  238. package/components/grid/grid-toolbar/grid-global-toolbar-proxy.js +21 -0
  239. package/components/grid/grid-toolbar/grid-global-toolbar.vue +37 -0
  240. package/components/grid/grid-toolbar/grid-more-toolbar-proxy.js +21 -0
  241. package/components/grid/grid-toolbar/grid-more-toolbar.vue +138 -0
  242. package/components/grid/grid-toolbar/grid-row-toolbar.vue +279 -0
  243. package/components/grid/grid-view-select.vue +78 -0
  244. package/components/grid/grid.vue +1114 -0
  245. package/components/grid/icons/more-line.svg +1 -0
  246. package/components/grid/icons/refresh.svg +14 -0
  247. package/components/grid/index.js +60 -0
  248. package/components/grid/util.js +31 -0
  249. package/components/icon/demo.css +539 -0
  250. package/components/icon/demo_index.html +9112 -0
  251. package/components/icon/icon.vue +96 -0
  252. package/components/icon/iconfont.css +1567 -0
  253. package/components/icon/iconfont.eot +0 -0
  254. package/components/icon/iconfont.js +1 -0
  255. package/components/icon/iconfont.json +2725 -0
  256. package/components/icon/iconfont.svg +455 -0
  257. package/components/icon/iconfont.ttf +0 -0
  258. package/components/icon/iconfont.woff +0 -0
  259. package/components/icon/iconfont.woff2 +0 -0
  260. package/components/icon/index.js +7 -0
  261. package/components/image/image.vue +377 -0
  262. package/components/image/index.js +14 -0
  263. package/components/image/util.js +107 -0
  264. package/components/index.js +157 -0
  265. package/components/loading/index.js +7 -0
  266. package/components/loading/loading.vue +130 -0
  267. package/components/menu/index.js +20 -0
  268. package/components/menu/menu-group.vue +245 -0
  269. package/components/menu/menu-item.vue +269 -0
  270. package/components/menu/menu.vue +64 -0
  271. package/components/message/index.js +19 -0
  272. package/components/message/message.js +31 -0
  273. package/components/message/message.less +6 -0
  274. package/components/message-box/index.js +14 -0
  275. package/components/message-box/message-box.js +140 -0
  276. package/components/message-box/message-box.less +5 -0
  277. package/components/pagination/index.js +7 -0
  278. package/components/pagination/pagination.vue +197 -0
  279. package/components/panel/index.js +7 -0
  280. package/components/panel/panel.vue +44 -0
  281. package/components/popover/index.js +7 -0
  282. package/components/popover/popover.vue +163 -0
  283. package/components/popup-select/index.js +7 -0
  284. package/components/popup-select/popup-select.vue +114 -0
  285. package/components/radio/index.js +7 -0
  286. package/components/radio/radio.vue +92 -0
  287. package/components/radio-button/index.js +7 -0
  288. package/components/radio-button/radio-button.vue +20 -0
  289. package/components/radio-group/index.js +7 -0
  290. package/components/radio-group/radio-group.vue +22 -0
  291. package/components/searchbox/index.js +7 -0
  292. package/components/searchbox/searchbox.vue +272 -0
  293. package/components/select/index.js +11 -0
  294. package/components/select/select-load-more.vue +53 -0
  295. package/components/select/select.vue +578 -0
  296. package/components/skeleton/index.js +16 -0
  297. package/components/skeleton/skeleton-rows.vue +52 -0
  298. package/components/skeleton/skeleton.vue +72 -0
  299. package/components/sortable/index.js +11 -0
  300. package/components/sortable/sortable-item.vue +77 -0
  301. package/components/sortable/sortable.vue +67 -0
  302. package/components/spinner/index.js +7 -0
  303. package/components/spinner/spinner.vue +121 -0
  304. package/components/spinner-range/index.js +7 -0
  305. package/components/spinner-range/spinner-range.vue +97 -0
  306. package/components/spinner-textarea/index.js +7 -0
  307. package/components/spinner-textarea/spinner-textarea.vue +65 -0
  308. package/components/switch/index.js +7 -0
  309. package/components/switch/switch.vue +105 -0
  310. package/components/tabbar/index.js +9 -0
  311. package/components/tabbar/tabbar-item.vue +162 -0
  312. package/components/tabbar/tabbar.vue +49 -0
  313. package/components/tabs/index.js +12 -0
  314. package/components/tabs/tabs.vue +120 -0
  315. package/components/tag/index.js +9 -0
  316. package/components/tag/tag.less +39 -0
  317. package/components/text/index.js +7 -0
  318. package/components/text/text.vue +69 -0
  319. package/components/textarea/index.js +7 -0
  320. package/components/textarea/textarea.vue +245 -0
  321. package/components/textbox/index.js +7 -0
  322. package/components/textbox/textbox.vue +275 -0
  323. package/components/time-picker/index.js +7 -0
  324. package/components/time-picker/time-picker.vue +84 -0
  325. package/components/toolbar/index.js +16 -0
  326. package/components/toolbar/toolbar-item.vue +43 -0
  327. package/components/toolbar/toolbar.vue +81 -0
  328. package/components/tooltip/index.js +9 -0
  329. package/components/tooltip/tooltip.vue +86 -0
  330. package/components/transfer/index.js +7 -0
  331. package/components/transfer/transfer-element.vue +109 -0
  332. package/components/transfer/transfer-load-more.vue +53 -0
  333. package/components/transfer/transfer.vue +260 -0
  334. package/components/tree/index.js +7 -0
  335. package/components/tree/tree.vue +485 -0
  336. package/components/tree/utils.js +122 -0
  337. package/components/video/index.js +7 -0
  338. package/components/video/video.vue +101 -0
  339. package/package.json +15 -1
  340. package/uni-common/more-button/more-button.vue +23 -0
  341. package/uni-common/popup-select/popup-select.vue +217 -0
  342. package/uni-common/portray/portray.vue +54 -0
  343. package/uni-common/refresh-view/refresh-view.vue +94 -0
  344. package/uni-common/scroll-load-more/scroll-load-more.vue +201 -0
  345. package/uni-common/tree-popup-select/index.js +3 -0
  346. package/uni-common/tree-popup-select/tree-popup-select-panel.vue +92 -0
  347. package/uni-common/tree-popup-select/tree-popup-select.vue +124 -0
  348. package/uni-common/tree-popup-select/util.js +19 -0
  349. package/uni-common/wechat-emoji/index.js +13 -0
  350. package/uni-common/wechat-emoji/order.json +438 -0
  351. package/uni-common/wechat-emoji/utils.js +52 -0
  352. package/uni-common/wechat-emoji/wechat-emoji.vue +74 -0
  353. package/uni-components/avatar/avatar.vue +81 -0
  354. package/uni-components/badge/badge.vue +57 -0
  355. package/uni-components/empty/empty.vue +27 -0
  356. package/uni-components/exception/exception.vue +47 -0
  357. package/uni-components/icon/demo.css +539 -0
  358. package/uni-components/icon/demo_index.html +1591 -0
  359. package/uni-components/icon/icon.vue +48 -0
  360. package/uni-components/icon/iconfont.css +259 -0
  361. package/uni-components/icon/iconfont.js +1 -0
  362. package/uni-components/icon/iconfont.json +436 -0
  363. package/uni-components/icon/iconfont.ttf +0 -0
  364. package/uni-components/icon/iconfont.woff +0 -0
  365. package/uni-components/icon/iconfont.woff2 +0 -0
  366. package/uni-components/icon/index.js +3 -0
  367. package/uni-components/image/image.vue +38 -0
  368. package/uni-components/image/index.js +3 -0
  369. package/uni-components/loading/index.js +3 -0
  370. package/uni-components/loading/loading.vue +30 -0
  371. package/uni-components/message/message-item.vue +29 -0
  372. package/uni-components/message/message.js +80 -0
  373. package/uni-components/message/message.vue +30 -0
  374. package/uni-components/message-box/message-box-item.vue +54 -0
  375. package/uni-components/message-box/message-box.js +91 -0
  376. package/uni-components/message-box/message-box.vue +52 -0
  377. package/uni-components/picker/picker.vue +270 -0
  378. package/uni-components/popup/index.js +3 -0
  379. package/uni-components/popup/popup.vue +143 -0
  380. package/uni-components/search/index.js +3 -0
  381. package/uni-components/search/search.vue +86 -0
  382. package/uni-components/skeleton/skeleton-chat.vue +85 -0
  383. package/uni-components/skeleton/skeleton-contact.vue +84 -0
  384. package/uni-components/skeleton/skeleton-detail.vue +84 -0
  385. package/uni-components/skeleton/skeleton.vue +32 -0
  386. package/uni-components/tabbar/tabbar-item.vue +33 -0
  387. package/uni-components/tabbar/tabbar.vue +87 -0
  388. package/uni-components/tree/index.js +3 -0
  389. package/uni-components/tree/tree-select-loading.vue +48 -0
  390. package/uni-components/tree/tree-select-node.vue +202 -0
  391. package/uni-components/tree/tree-select-store.js +520 -0
  392. package/uni-components/tree/tree-select.vue +210 -0
  393. package/uni-components/tree/utils.js +33 -0
  394. package/uni-components/video/index.js +3 -0
  395. package/uni-components/video/video.vue +29 -0
  396. package/uni-components/voice/index.js +3 -0
  397. package/uni-components/voice/voice.vue +24 -0
  398. package/uni-components/waterfall/index.js +3 -0
  399. package/uni-components/waterfall/util.js +72 -0
  400. package/uni-components/waterfall/waterfall.vue +147 -0
  401. package/utils/data.js +128 -0
  402. package/utils/date.js +495 -0
  403. package/utils/dom.js +37 -0
  404. package/utils/emitter.js +3 -0
  405. package/utils/event.js +92 -0
  406. package/utils/file.js +76 -0
  407. package/utils/json.js +40 -0
  408. package/utils/network-detector.js +258 -0
  409. package/utils/oss.js +11 -0
  410. package/utils/resize-event.js +35 -0
  411. package/utils/share-message.js +81 -0
  412. package/utils/share-websocket.js +127 -0
  413. package/utils/string.js +59 -0
  414. package/utils/time-task.js +60 -0
  415. package/utils/url.js +46 -0
  416. package/utils/util.js +427 -0
  417. package/utils/utils.js +0 -0
@@ -0,0 +1,485 @@
1
+ <template>
2
+ <div class="ui-tree" :class="{'has-border': border}" :style="{height: height, width: width}">
3
+ <el-tree
4
+ class="ui-tree__control"
5
+ :class="{'is-hide-root-check': hideRootCheck}"
6
+ ref="tree"
7
+ :data="innerData"
8
+ :default-expanded-keys="defaultExpandedKeys"
9
+ :default-checked-keys="checkedKeys"
10
+ :node-key="idField"
11
+ :show-checkbox="multiple"
12
+ :highlight-current="highlightCurrent"
13
+ :expand-on-click-node="expandOnClickNode"
14
+ :current-node-key="current"
15
+ :lazy="lazy"
16
+ :load="lazyLoadMethod"
17
+ :props="treeProps"
18
+ @current-change="handleCurrentChange"
19
+ :filter-node-method="handleFilterNode"
20
+ :check-strictly="checkStrictly"
21
+ :default-expand-all="defaultExpandAll"
22
+ :allow-drop="allowDrop"
23
+ v-on="bindEvents"
24
+ @check="handleNodeCheck"
25
+ >
26
+ <div class="ui-tree__node" slot-scope="{ node, data }" :style="{'height': itemHeight, 'line-height': itemHeight}">
27
+ <slot name="node" :data="data">
28
+ <component
29
+ :is="handleRenderLevelIcon(node)"
30
+ ></component>
31
+ <slot name="node" :data="data">
32
+ <span
33
+ :title="data[textField]"
34
+ class="ui-tree__node-text"
35
+ >{{ data[textField] }}</span>
36
+ </slot>
37
+ <span class="ui-tree__node-tool" v-if="$slots['node-toolbar']">
38
+ <slot name="node-toolbar" :data="data"></slot>
39
+ </span>
40
+ <slot name="node-append" :current="node.isCurrent"></slot>
41
+ </slot>
42
+ </div>
43
+ </el-tree>
44
+ <div class="ui-tree__loading" v-if="loading">
45
+ <ui-loading></ui-loading>
46
+ </div>
47
+ </div>
48
+ </template>
49
+ <script>
50
+ import ElTree from 'element-ui/lib/tree'
51
+ import 'element-ui/lib/theme-chalk/tree.css'
52
+ import UiIcon from '../icon'
53
+ import UiLoading from '../loading'
54
+ import { getNodesByLevel, getCheckLeastFatherNodes } from './utils'
55
+
56
+ export default {
57
+ name: 'UiTree',
58
+ components: {
59
+ ElTree,
60
+ UiIcon,
61
+ UiLoading
62
+ },
63
+ props: {
64
+ height: {
65
+ type: String
66
+ },
67
+ width: {
68
+ type: String
69
+ },
70
+ border: {
71
+ type: Boolean
72
+ },
73
+ queryMethod: {
74
+ type: Function
75
+ },
76
+ lazy: {
77
+ type: Boolean,
78
+ default: false
79
+ },
80
+ defaultExpandAll: {
81
+ type: Boolean,
82
+ default: false
83
+ },
84
+ checkStrictly: {
85
+ type: Boolean,
86
+ default: false
87
+ },
88
+ checkLeastFather: {
89
+ type: Boolean,
90
+ default: false
91
+ },
92
+ multiple: {
93
+ type: Boolean,
94
+ default: false
95
+ },
96
+ hideRootCheck: {
97
+ type: Boolean,
98
+ default: false
99
+ },
100
+ current: {
101
+ type: [String, Number]
102
+ },
103
+ data: {
104
+ type: Array,
105
+ default: () => []
106
+ },
107
+ idField: {
108
+ type: String
109
+ },
110
+ highlightCurrent: {
111
+ type: Boolean,
112
+ default: false
113
+ },
114
+ showLevelIcon: {
115
+ type: Boolean,
116
+ default: false
117
+ },
118
+ textField: {
119
+ type: String,
120
+ default: 'label'
121
+ },
122
+ levelIcons: {
123
+ type: Array,
124
+ default: () => []
125
+ },
126
+ checkedKeys: {
127
+ type: Array,
128
+ default: () => []
129
+ },
130
+ defaultExpandedLevel: {
131
+ type: Number
132
+ },
133
+ draggable: {
134
+ type: Boolean,
135
+ default: false
136
+ },
137
+ filterKeyword: {
138
+ type: String
139
+ },
140
+ filterMethod: {
141
+ type: Function
142
+ },
143
+ expandOnClickNode: {
144
+ type: Boolean,
145
+ default: false
146
+ },
147
+ allowDrop: {
148
+ type: Function
149
+ },
150
+ isLeaf: {
151
+ type: [Function]
152
+ },
153
+ itemHeight: {
154
+ type: String,
155
+ default: '32px'
156
+ },
157
+ bindContextMenuEvent: {
158
+ type: Boolean
159
+ }
160
+ },
161
+ data () {
162
+ return {
163
+ loading: false,
164
+ innerData: this.data
165
+ }
166
+ },
167
+ computed: {
168
+ bindEvents () {
169
+ const events = {}
170
+ if (this.bindContextMenuEvent) {
171
+ events['node-contextmenu'] = this.handleNodeContextMenu
172
+ }
173
+ return events
174
+ },
175
+ levelIconsMap () {
176
+ const map = {}
177
+ if (this.levelIcons && this.levelIcons.length) {
178
+ this.levelIcons.forEach((v, i) => {
179
+ if (v.level) {
180
+ map[v.level] = v
181
+ } else {
182
+ map[i + 1] = v
183
+ }
184
+ })
185
+ }
186
+ return map
187
+ },
188
+ defaultExpandedKeys () {
189
+ return getNodesByLevel(this.innerData, this.defaultExpandedLevel).map(v => {
190
+ return v[this.idField]
191
+ })
192
+ },
193
+ treeProps () {
194
+ return {
195
+ isLeaf: this.isLeaf
196
+ }
197
+ },
198
+ lazyLoadMethod () {
199
+ if (!this.lazy || !this.queryMethod) {
200
+ return
201
+ }
202
+ return (parentNode, resolveData) => {
203
+ const rs = this.queryMethod({
204
+ parentNode: !parentNode || !parentNode.parent ? null : parentNode
205
+ })
206
+ if (rs && rs.then) {
207
+ rs.then((rs) => {
208
+ resolveData(rs)
209
+ }, () => {
210
+ resolveData([])
211
+ })
212
+ } else {
213
+ resolveData(rs || [])
214
+ }
215
+ }
216
+ }
217
+ },
218
+ watch: {
219
+ data () {
220
+ this.innerData = this.data
221
+ },
222
+ current (val) {
223
+ this.$nextTick(() => {
224
+ this.$refs.tree.setCurrentKey(val)
225
+ })
226
+ },
227
+ filterKeyword (val) {
228
+ this.$refs.tree && this.$refs.tree.filter(val)
229
+ },
230
+ checkedKeys () {
231
+ this.$nextTick(() => {
232
+ this.$refs.tree.setCheckedKeys(this.checkedKeys)
233
+ })
234
+ }
235
+ },
236
+ created () {
237
+ if (!this.lazy) {
238
+ if (this.queryMethod) {
239
+ this.loading = true
240
+ this.queryMethod().then(rs => {
241
+ this.innerData = rs || []
242
+ }).finally(() => {
243
+ this.loading = false
244
+ })
245
+ }
246
+ }
247
+ },
248
+ mounted () {
249
+ this.$refs.tree.filter(this.filterKeyword)
250
+ },
251
+ methods: {
252
+ handleNodeContextMenu (evt, data, node) {
253
+ this.$emit('node-contextmenu', {
254
+ event: evt,
255
+ data,
256
+ node
257
+ })
258
+ },
259
+ handleRenderLevelIcon (node) {
260
+ if (!this.showLevelIcon || !node.level) {
261
+ return
262
+ }
263
+ if (!this.levelIcons) {
264
+ return
265
+ }
266
+ const index = node.level
267
+ let item = this.levelIconsMap[index]
268
+ if (!item) {
269
+ item = this.levelIconsMap['*']
270
+ }
271
+ if (!item || !item.icon) {
272
+ return
273
+ }
274
+ return {
275
+ render: (h) => {
276
+ return h(UiIcon, {
277
+ class: ['ui-tree__node-icon'],
278
+ props: {
279
+ size: 14,
280
+ name: item.icon,
281
+ title: item.label
282
+ }
283
+ })
284
+ }
285
+ }
286
+ },
287
+ handleCurrentChange (item) {
288
+ this.$emit('current-change', {
289
+ item
290
+ })
291
+ },
292
+ handleFilterNode (value, data) {
293
+ if (this.filterMethod) {
294
+ return this.filterMethod({
295
+ keyword: value,
296
+ data
297
+ })
298
+ } else {
299
+ if (typeof this.filterKeyword === 'undefined' || this.filterKeyword === null || this.filterKeyword === '') {
300
+ return true
301
+ }
302
+ return (data[this.textField] || '').toString().toLowerCase().indexOf(value) >= 0
303
+ }
304
+ },
305
+ handleNodeCheck (data, check) {
306
+ let checkedKeys = check.checkedKeys
307
+ if (this.checkLeastFather) {
308
+ const node = this.$refs.tree.getNode(data)
309
+ checkedKeys = getCheckLeastFatherNodes(node, check.checkedKeys, this.data, this.idField)
310
+ this.$refs.tree.setCheckedKeys(checkedKeys)
311
+ }
312
+ this.$emit('check-change', {
313
+ data,
314
+ checkedKeys
315
+ })
316
+ },
317
+ setCurrentKeyFn (val) {
318
+ this.$nextTick(() => {
319
+ this.$refs.tree.setCurrentKey(val)
320
+ })
321
+ },
322
+ filter (keyword) {
323
+ this.$refs.tree.filter(keyword)
324
+ },
325
+ reloadNode (node) {
326
+ return new Promise((resolve, reject) => {
327
+ if (this.lazy) {
328
+ node = this.getNode(node) || this.$refs.tree.root
329
+ if (!node) {
330
+ return reject(new Error('未找到节点'))
331
+ }
332
+ node.loaded = false
333
+ node.loadData(() => {
334
+ resolve()
335
+ })
336
+ } else {
337
+ if (this.queryMethod) {
338
+ this.loading = true
339
+ this.queryMethod().then(rs => {
340
+ this.innerData = rs || []
341
+ resolve(this.innerData)
342
+ }, err => {
343
+ reject(err)
344
+ }).finally(() => {
345
+ this.loading = false
346
+ })
347
+ }
348
+ }
349
+ })
350
+ },
351
+ expandNode (node) {
352
+ node = this.getNode(node)
353
+ if (!node) {
354
+ return
355
+ }
356
+ if (node.isLeaf) {
357
+ return
358
+ }
359
+ node.expand()
360
+ },
361
+ getNode (node) {
362
+ let result = null
363
+ let nodeId = typeof node === 'object' ? node[this.idField] : node
364
+ const loop = (nodes) => {
365
+ if (!nodes || !nodes.length) {
366
+ return
367
+ }
368
+ return nodes.some(node => {
369
+ if (node.data[this.idField] === nodeId) {
370
+ result = node
371
+ return true
372
+ } else {
373
+ return loop(node.childNodes)
374
+ }
375
+ })
376
+ }
377
+ loop(this.$refs.tree.root.childNodes)
378
+ return result
379
+ },
380
+ remove (node) {
381
+ node = this.getNode(node)
382
+ if (!node) {
383
+ return
384
+ }
385
+ return this.$refs.tree.remove(node)
386
+ },
387
+ append (data, parentNode) {
388
+ return this.$refs.tree.append(data, this.getNode(parentNode))
389
+ },
390
+ update (node, props) {
391
+ node = this.getNode(node)
392
+ if (!node) {
393
+ return
394
+ }
395
+ if (!props) {
396
+ return
397
+ }
398
+ Object.keys(props).forEach(key => {
399
+ this.$set(node.data, key, props[key])
400
+ })
401
+ },
402
+ getData () {
403
+ if (!this.$refs.tree || !this.$refs.tree.store) {
404
+ return []
405
+ }
406
+ return this.$refs.tree.store.root.data
407
+ }
408
+ }
409
+ }
410
+ </script>
411
+ <style lang="less">
412
+ .ui-tree {
413
+ display: flex;
414
+ flex-direction: column;
415
+ position: relative;
416
+ &.has-border {
417
+ border: 1px solid #ddd;
418
+ border-radius: 3px;
419
+ }
420
+ .el-tree-node:focus>.el-tree-node__content{
421
+ transition: all .25s;
422
+ }
423
+ .el-tree-node__content{
424
+ height: auto;
425
+ &:hover{
426
+ color: #404040;
427
+ background-color: transparent;
428
+ }
429
+ }
430
+ &.is-hide-root-check{
431
+ > .el-tree-node{
432
+ > .el-tree-node__content{
433
+ .el-checkbox{
434
+ display: none;
435
+ }
436
+ }
437
+ }
438
+ }
439
+ &.el-tree--highlight-current{
440
+ .el-tree-node .is-current{
441
+ > .el-tree-node__content{
442
+ background-color: #f6f7fa!important;
443
+ color: #4d9fe7;
444
+ font-weight: bold;
445
+ }
446
+ }
447
+ }
448
+ }
449
+ .ui-tree__control {
450
+ flex: 1;
451
+ min-height: 0;
452
+ overflow: auto;
453
+ }
454
+ .ui-tree__node{
455
+ flex: 1;
456
+ display: flex;
457
+ flex-direction: row;
458
+ align-items: center;
459
+ min-width: 0;
460
+ }
461
+ .ui-tree__node-text{
462
+ flex: 1;
463
+ display: inline-block;
464
+ text-overflow: ellipsis;
465
+ overflow: hidden;
466
+ white-space: nowrap;
467
+ min-width: 0;
468
+ }
469
+ .ui-tree__node-icon{
470
+ margin-right: 6px;
471
+ display: inline-block;
472
+ }
473
+ .ui-tree__loading{
474
+ position: absolute;
475
+ left: 1px;
476
+ top: 1px;
477
+ bottom: 1px;
478
+ right: 1px;
479
+ display: flex;
480
+ flex-direction: column;
481
+ justify-content: center;
482
+ align-items: center;
483
+ background-color: #fff;
484
+ }
485
+ </style>
@@ -0,0 +1,122 @@
1
+ export function getNodesByLevel (treeData, level) {
2
+ const nodes = []
3
+ if (!treeData || !treeData.length || !level) {
4
+ return nodes
5
+ }
6
+ const loop = (data, lv) => {
7
+ if (lv >= level) {
8
+ return
9
+ }
10
+ if (!data) {
11
+ return
12
+ }
13
+ data.forEach(v => {
14
+ nodes.push(v)
15
+ if (v.children) {
16
+ loop(v.children, lv + 1)
17
+ }
18
+ })
19
+ }
20
+ loop(treeData, 0)
21
+ return nodes
22
+ }
23
+
24
+ export function getParentsNode (key, data, idField) {
25
+ const rs = []
26
+ if (!key || !data) {
27
+ return rs
28
+ }
29
+ const loop = (data) => {
30
+ if (!data || !data.length) {
31
+ return
32
+ }
33
+ return data.some(v => {
34
+ if (v[idField] === key) {
35
+ return true
36
+ } else if (v.children) {
37
+ if (loop(v.children)) {
38
+ rs.push(v)
39
+ return true
40
+ }
41
+ }
42
+ })
43
+ }
44
+ loop(data)
45
+ return rs
46
+ }
47
+
48
+ export function findNode (key, data, idField) {
49
+ let rs = null
50
+ if (!key || !data) {
51
+ return rs
52
+ }
53
+ const loop = (data) => {
54
+ if (!data || !data.length) {
55
+ return
56
+ }
57
+ return data.some(v => {
58
+ if (v[idField] === key) {
59
+ rs = v
60
+ return true
61
+ } else if (v.children) {
62
+ return loop(v.children)
63
+ }
64
+ })
65
+ }
66
+ loop(data)
67
+ return rs
68
+ }
69
+
70
+ export function getChildrensNode (key, data, idField) {
71
+ if (!key || !data) {
72
+ return []
73
+ }
74
+ const node = findNode(key, data, idField)
75
+ if (!node) {
76
+ return []
77
+ }
78
+ const loop = (nodes) => {
79
+ let rs = []
80
+ if (nodes && nodes.length) {
81
+ nodes.forEach(v => {
82
+ rs.push(v)
83
+ rs = rs.concat(loop(v.children))
84
+ })
85
+ }
86
+ return rs
87
+ }
88
+ return loop(node.children)
89
+ }
90
+
91
+ /**
92
+ * 获取保留父级节点后的节点集合
93
+ */
94
+ export function getCheckLeastFatherNodes (node, checkedList, data, idField) {
95
+ if (!node) {
96
+ return
97
+ }
98
+ const checkedMap = (checkedList || []).reduce((rs, v) => {
99
+ rs[v] = true
100
+ return rs
101
+ }, {})
102
+ const childrens = getChildrensNode(node.data[idField], data, idField)
103
+ childrens.forEach(v => {
104
+ if (node.checked) {
105
+ checkedMap[v[idField]] = true
106
+ } else {
107
+ checkedMap[v[idField]] = false
108
+ }
109
+ })
110
+ const parents = getParentsNode(node.data[idField], data, idField)
111
+ parents.forEach(v => {
112
+ if (!v[idField]) {
113
+ return
114
+ }
115
+ if (v.children.some(vv => checkedMap[vv[idField]])) {
116
+ checkedMap[v[idField]] = true
117
+ } else {
118
+ // checkedMap[v[idField]] = false
119
+ }
120
+ })
121
+ return Object.keys(checkedMap).filter(v => checkedMap[v])
122
+ }
@@ -0,0 +1,7 @@
1
+ import Video from './video'
2
+
3
+ Video.install = (Vue) => {
4
+ Vue.component(Video.name, Video)
5
+ }
6
+
7
+ export default Video
@@ -0,0 +1,101 @@
1
+ <template>
2
+ <video
3
+ class="ui-video"
4
+ :autoplay="autoplay"
5
+ :width="width"
6
+ :poster="poster"
7
+ :preload="preload"
8
+ :height="height"
9
+ :controls="controls"
10
+ @error="handleError"
11
+ >
12
+ <source :src="innerSrc">
13
+ 您的浏览器不支持 video 标签。
14
+ </video>
15
+ </template>
16
+ <script>
17
+ import { formatOssPath } from '../../utils/oss'
18
+
19
+ export default {
20
+ name: 'UiVideo',
21
+ props: {
22
+ width: {
23
+ type: String
24
+ },
25
+ height: {
26
+ type: String
27
+ },
28
+ poster: {
29
+ type: String
30
+ },
31
+ preload: {
32
+ type: String
33
+ },
34
+ controls: {
35
+ type: Boolean,
36
+ default: true
37
+ },
38
+ autoplay: {
39
+ type: Boolean,
40
+ default: false
41
+ },
42
+ src: {
43
+ type: String
44
+ }
45
+ },
46
+ computed: {
47
+ style () {
48
+ return {
49
+ width: this.width,
50
+ height: this.height
51
+ }
52
+ },
53
+ innerSrc () {
54
+ return formatOssPath(this.src)
55
+ }
56
+ },
57
+ data () {
58
+ return {
59
+ isError: false
60
+ }
61
+ },
62
+ watch: {
63
+ src () {
64
+ this.isError = false
65
+ }
66
+ },
67
+ mounted () {
68
+ this.loopCheckError()
69
+ },
70
+ methods: {
71
+ loopCheckError () {
72
+ if (this.isError) {
73
+ return
74
+ }
75
+ this._checkErrorTimer = setTimeout(() => {
76
+ // 0:没有关于媒体资源的可用信息,或者媒体资源尚未加载。
77
+ // 3: 媒体元素尝试加载资源,但没有找到有效的媒体源(可能是资源 URL 错误、403/404 等网络错误,或所有<source>标签指定的资源都无法加载)。
78
+ if (this.$el.readyState === 0 && this.$el.networkState === 3) {
79
+ this.isError = true
80
+ this.$emit('error')
81
+ } else {
82
+ this.loopCheckError()
83
+ }
84
+ }, 1000)
85
+ },
86
+ handleError () {
87
+ this.isError = true
88
+ this.$emit('error')
89
+ }
90
+ },
91
+ beforeDestroy () {
92
+ clearTimeout(this._checkErrorTimer)
93
+ }
94
+ }
95
+ </script>
96
+ <style lang="less">
97
+ .ui-video {
98
+ background-color: #000;
99
+ object-fit: contain;
100
+ }
101
+ </style>