@aochuang/client-sdk 1.0.278

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 (366) hide show
  1. package/README.md +93 -0
  2. package/common/avatar/avatar.vue +86 -0
  3. package/common/avatar/index.js +3 -0
  4. package/common/badge/badge.vue +105 -0
  5. package/common/badge/index.js +3 -0
  6. package/common/context-menu/context-menu-box.vue +61 -0
  7. package/common/context-menu/context-menu-group.vue +162 -0
  8. package/common/context-menu/context-menu-item.vue +179 -0
  9. package/common/context-menu/context-menu.vue +201 -0
  10. package/common/context-menu/index.js +3 -0
  11. package/common/context-menu/utils.js +138 -0
  12. package/common/friend-avatar/default.svg +1 -0
  13. package/common/friend-avatar/friend-avatar.vue +29 -0
  14. package/common/friend-avatar/index.js +3 -0
  15. package/common/image/index.js +3 -0
  16. package/common/index.js +17 -0
  17. package/common/room-avatar/default.svg +6 -0
  18. package/common/room-avatar/index.js +3 -0
  19. package/common/room-avatar/room-avatar.vue +29 -0
  20. package/common/scroll-load-more/index.js +3 -0
  21. package/common/scroll-load-more/scroll-load-more.vue +195 -0
  22. package/common/user-avatar/default.svg +1 -0
  23. package/common/user-avatar/index.js +3 -0
  24. package/common/user-avatar/user-avatar.vue +29 -0
  25. package/components/account-select/account-select-skeleton.vue +56 -0
  26. package/components/account-select/account-select.vue +205 -0
  27. package/components/account-select/all.svg +1 -0
  28. package/components/account-select/index.js +3 -0
  29. package/components/chat-editor/MENTION_TOKEN_SUMMARY.md +74 -0
  30. package/components/chat-editor/chat-editor-button/chat-editor-button.vue +78 -0
  31. package/components/chat-editor/chat-editor-suggestions/chat-editor-suggestions.vue +329 -0
  32. package/components/chat-editor/chat-editor-toolbar/chat-editor-toolbar-item.vue +28 -0
  33. package/components/chat-editor/chat-editor-toolbar/chat-editor-toolbar.vue +17 -0
  34. package/components/chat-editor/chat-editor.vue +933 -0
  35. package/components/chat-editor/index.js +12 -0
  36. package/components/chat-editor/utils.js +189 -0
  37. package/components/chat-friend-profile/chat-friend-profile.vue +118 -0
  38. package/components/chat-friend-profile/index.js +3 -0
  39. package/components/chat-layout/chat-layout.vue +71 -0
  40. package/components/chat-layout/index.js +3 -0
  41. package/components/chat-panel/chat-panel-box.vue +350 -0
  42. package/components/chat-panel/chat-panel-chat.vue +121 -0
  43. package/components/chat-panel/chat-panel-chats.vue +674 -0
  44. package/components/chat-panel/chat-panel-empty.vue +32 -0
  45. package/components/chat-panel/chat-panel-increment.vue +80 -0
  46. package/components/chat-panel/chat-panel-inner-msg.vue +25 -0
  47. package/components/chat-panel/chat-panel-loading.vue +29 -0
  48. package/components/chat-panel/chat-panel-nearest.vue +136 -0
  49. package/components/chat-panel/chat-panel.vue +292 -0
  50. package/components/chat-panel/index.js +3 -0
  51. package/components/chat-panel/util.js +83 -0
  52. package/components/chat-room-profile/chat-room-profile.vue +103 -0
  53. package/components/chat-room-profile/index.js +3 -0
  54. package/components/contacts-friend-select/contacts-friend-select-skeleton.vue +41 -0
  55. package/components/contacts-friend-select/contacts-friend-select.vue +204 -0
  56. package/components/contacts-friend-select/index.js +3 -0
  57. package/components/contacts-group-select/contacts-group-select-item.vue +98 -0
  58. package/components/contacts-group-select/contacts-group-select-skeleton.vue +81 -0
  59. package/components/contacts-group-select/contacts-group-select.vue +396 -0
  60. package/components/contacts-group-select/index.js +3 -0
  61. package/components/contacts-room-select/contacts-room-select-skeleton.vue +41 -0
  62. package/components/contacts-room-select/contacts-room-select.vue +208 -0
  63. package/components/contacts-room-select/index.js +3 -0
  64. package/components/index.js +43 -0
  65. package/components/layout/index.js +3 -0
  66. package/components/layout/layout.vue +70 -0
  67. package/components/session-select/index.js +11 -0
  68. package/components/session-select/session-select-item-skeleton.vue +59 -0
  69. package/components/session-select/session-select-item.vue +190 -0
  70. package/components/session-select/session-select.vue +386 -0
  71. package/components/wechat-chat-control/calling/calling.vue +227 -0
  72. package/components/wechat-chat-control/calling/phone-fill.svg +1 -0
  73. package/components/wechat-chat-control/calling/vidicon-fill.svg +1 -0
  74. package/components/wechat-chat-control/channel-live/channel-live.vue +198 -0
  75. package/components/wechat-chat-control/channel-live/quote-icon.svg +1 -0
  76. package/components/wechat-chat-control/channel-video/channel-video.vue +180 -0
  77. package/components/wechat-chat-control/channel-video/quote-icon.svg +1 -0
  78. package/components/wechat-chat-control/channel-video-card/channel-video-card.vue +139 -0
  79. package/components/wechat-chat-control/channel-video-card/quote-icon.svg +1 -0
  80. package/components/wechat-chat-control/company-card/company-card.vue +136 -0
  81. package/components/wechat-chat-control/company-card/quote-icon.svg +1 -0
  82. package/components/wechat-chat-control/custom-expression/custom-expression.vue +45 -0
  83. package/components/wechat-chat-control/empty/empty.vue +27 -0
  84. package/components/wechat-chat-control/file-url/file-url.vue +307 -0
  85. package/components/wechat-chat-control/file-url/icons/file-excel-line.svg +1 -0
  86. package/components/wechat-chat-control/file-url/icons/file-info-line.svg +1 -0
  87. package/components/wechat-chat-control/file-url/icons/file-music-line.svg +1 -0
  88. package/components/wechat-chat-control/file-url/icons/file-pdf-line.svg +1 -0
  89. package/components/wechat-chat-control/file-url/icons/file-ppt-line.svg +1 -0
  90. package/components/wechat-chat-control/file-url/icons/file-settings-line.svg +1 -0
  91. package/components/wechat-chat-control/file-url/icons/file-text-line.svg +1 -0
  92. package/components/wechat-chat-control/file-url/icons/file-unknow-line.svg +1 -0
  93. package/components/wechat-chat-control/file-url/icons/file-word-line.svg +1 -0
  94. package/components/wechat-chat-control/file-url/icons/file-zip-line.svg +1 -0
  95. package/components/wechat-chat-control/file-url/icons/index.js +24 -0
  96. package/components/wechat-chat-control/image/image.vue +344 -0
  97. package/components/wechat-chat-control/image/index.js +1 -0
  98. package/components/wechat-chat-control/image/util.js +29 -0
  99. package/components/wechat-chat-control/index.js +104 -0
  100. package/components/wechat-chat-control/jx-sys-text/jx-sys-text.vue +28 -0
  101. package/components/wechat-chat-control/location/location.vue +179 -0
  102. package/components/wechat-chat-control/location/offline-bg.png +0 -0
  103. package/components/wechat-chat-control/member-change/member-change.vue +37 -0
  104. package/components/wechat-chat-control/music/icons/163.png +0 -0
  105. package/components/wechat-chat-control/music/icons/163.svg +12 -0
  106. package/components/wechat-chat-control/music/icons/default.png +0 -0
  107. package/components/wechat-chat-control/music/icons/default.svg +1 -0
  108. package/components/wechat-chat-control/music/icons/kuwo.png +0 -0
  109. package/components/wechat-chat-control/music/icons/qq.png +0 -0
  110. package/components/wechat-chat-control/music/icons/qq.svg +1 -0
  111. package/components/wechat-chat-control/music/music.vue +156 -0
  112. package/components/wechat-chat-control/music/utils.js +30 -0
  113. package/components/wechat-chat-control/quote-message/quote-message.vue +257 -0
  114. package/components/wechat-chat-control/real-time-position/icon.svg +1 -0
  115. package/components/wechat-chat-control/real-time-position/real-time-position.vue +57 -0
  116. package/components/wechat-chat-control/red-envelopes/quote-icon.svg +1 -0
  117. package/components/wechat-chat-control/red-envelopes/red-envelope.svg +1 -0
  118. package/components/wechat-chat-control/red-envelopes/red-envelopes.vue +168 -0
  119. package/components/wechat-chat-control/revoke-me-message/revoke-me-message.vue +41 -0
  120. package/components/wechat-chat-control/revoke-other-message/revoke-other-message.vue +41 -0
  121. package/components/wechat-chat-control/revoke-you-message/revoke-you-message.vue +41 -0
  122. package/components/wechat-chat-control/room-calling/phone-fill.svg +1 -0
  123. package/components/wechat-chat-control/room-calling/room-calling.vue +52 -0
  124. package/components/wechat-chat-control/room-calling/vidicon-fill.svg +1 -0
  125. package/components/wechat-chat-control/share-card/quote-icon.svg +1 -0
  126. package/components/wechat-chat-control/share-card/share-card.vue +140 -0
  127. package/components/wechat-chat-control/system/system.vue +122 -0
  128. package/components/wechat-chat-control/system-batch-message/system-batch-message.vue +28 -0
  129. package/components/wechat-chat-control/system-money/system-money.vue +39 -0
  130. package/components/wechat-chat-control/text/icons/icon.svg +6 -0
  131. package/components/wechat-chat-control/text/text.vue +164 -0
  132. package/components/wechat-chat-control/text-with-at/text-with-at.vue +88 -0
  133. package/components/wechat-chat-control/transfer/collection.svg +1 -0
  134. package/components/wechat-chat-control/transfer/quote-icon.svg +1 -0
  135. package/components/wechat-chat-control/transfer/red-transfer.svg +1 -0
  136. package/components/wechat-chat-control/transfer/refund.svg +1 -0
  137. package/components/wechat-chat-control/transfer/transfer.svg +1 -0
  138. package/components/wechat-chat-control/transfer/transfer.vue +263 -0
  139. package/components/wechat-chat-control/unknow/unknow.vue +21 -0
  140. package/components/wechat-chat-control/url/icons/link.svg +1 -0
  141. package/components/wechat-chat-control/url/icons/video.svg +6 -0
  142. package/components/wechat-chat-control/url/miniprogram.svg +1 -0
  143. package/components/wechat-chat-control/url/url-file.vue +47 -0
  144. package/components/wechat-chat-control/url/url-link.vue +169 -0
  145. package/components/wechat-chat-control/url/url-merge.vue +164 -0
  146. package/components/wechat-chat-control/url/url-miniprogram.vue +259 -0
  147. package/components/wechat-chat-control/url/url.vue +116 -0
  148. package/components/wechat-chat-control/util.js +234 -0
  149. package/components/wechat-chat-control/video/icons/video.svg +1 -0
  150. package/components/wechat-chat-control/video/video.vue +304 -0
  151. package/components/wechat-chat-control/voice/icons/voice.svg +1 -0
  152. package/components/wechat-chat-control/voice/voice.vue +464 -0
  153. package/components/wechat-chat-control/wechat-chat-control-config-item.vue +24 -0
  154. package/components/wechat-chat-control/wechat-chat-control-config-msg.vue +21 -0
  155. package/components/wechat-chat-control/wechat-chat-control-config.vue +57 -0
  156. package/components/wechat-chat-panel/chat-panel-chat-status/chat-panel-chat-status.vue +69 -0
  157. package/components/wechat-chat-panel/chat-panel-item.vue +695 -0
  158. package/components/wechat-chat-panel/chat-panel.vue +257 -0
  159. package/components/wechat-chat-panel/index.js +3 -0
  160. package/components/wework-chat-control/calling/calling.vue +223 -0
  161. package/components/wework-chat-control/calling/phone-fill.svg +1 -0
  162. package/components/wework-chat-control/calling/vidicon-fill.svg +1 -0
  163. package/components/wework-chat-control/channel-live/channel-live.vue +198 -0
  164. package/components/wework-chat-control/channel-live/quote-icon.svg +1 -0
  165. package/components/wework-chat-control/channel-video/channel-video.vue +180 -0
  166. package/components/wework-chat-control/channel-video/quote-icon.svg +1 -0
  167. package/components/wework-chat-control/company-card/company-card.vue +136 -0
  168. package/components/wework-chat-control/company-card/quote-icon.svg +1 -0
  169. package/components/wework-chat-control/custom-expression/custom-expression.vue +34 -0
  170. package/components/wework-chat-control/empty/empty.vue +27 -0
  171. package/components/wework-chat-control/expression/expression.vue +53 -0
  172. package/components/wework-chat-control/file-url/file-url.vue +247 -0
  173. package/components/wework-chat-control/file-url/icons/file-excel-line.svg +1 -0
  174. package/components/wework-chat-control/file-url/icons/file-info-line.svg +1 -0
  175. package/components/wework-chat-control/file-url/icons/file-music-line.svg +1 -0
  176. package/components/wework-chat-control/file-url/icons/file-pdf-line.svg +1 -0
  177. package/components/wework-chat-control/file-url/icons/file-ppt-line.svg +1 -0
  178. package/components/wework-chat-control/file-url/icons/file-settings-line.svg +1 -0
  179. package/components/wework-chat-control/file-url/icons/file-text-line.svg +1 -0
  180. package/components/wework-chat-control/file-url/icons/file-unknow-line.svg +1 -0
  181. package/components/wework-chat-control/file-url/icons/file-word-line.svg +1 -0
  182. package/components/wework-chat-control/file-url/icons/file-zip-line.svg +1 -0
  183. package/components/wework-chat-control/file-url/icons/index.js +24 -0
  184. package/components/wework-chat-control/image/image.vue +296 -0
  185. package/components/wework-chat-control/image/index.js +1 -0
  186. package/components/wework-chat-control/image/util.js +21 -0
  187. package/components/wework-chat-control/index.js +105 -0
  188. package/components/wework-chat-control/jx-sys-text/jx-sys-text.vue +28 -0
  189. package/components/wework-chat-control/link/link.vue +100 -0
  190. package/components/wework-chat-control/location/location.vue +181 -0
  191. package/components/wework-chat-control/location/offline-bg.png +0 -0
  192. package/components/wework-chat-control/red-envelopes/quote-icon.svg +1 -0
  193. package/components/wework-chat-control/red-envelopes/red-envelope.svg +1 -0
  194. package/components/wework-chat-control/red-envelopes/red-envelopes.vue +168 -0
  195. package/components/wework-chat-control/share-card/quote-icon.svg +1 -0
  196. package/components/wework-chat-control/share-card/share-card.vue +140 -0
  197. package/components/wework-chat-control/text/icons/icon.svg +6 -0
  198. package/components/wework-chat-control/text/text.vue +157 -0
  199. package/components/wework-chat-control/unknow/unknow.vue +21 -0
  200. package/components/wework-chat-control/url/icons/link.svg +1 -0
  201. package/components/wework-chat-control/url/icons/video.svg +6 -0
  202. package/components/wework-chat-control/url/miniprogram.svg +1 -0
  203. package/components/wework-chat-control/url/url-file.vue +37 -0
  204. package/components/wework-chat-control/url/url-link.vue +169 -0
  205. package/components/wework-chat-control/url/url-merge.vue +164 -0
  206. package/components/wework-chat-control/url/url-miniprogram.vue +248 -0
  207. package/components/wework-chat-control/url/url.vue +103 -0
  208. package/components/wework-chat-control/util.js +223 -0
  209. package/components/wework-chat-control/video/icons/video.svg +1 -0
  210. package/components/wework-chat-control/video/video.vue +304 -0
  211. package/components/wework-chat-control/voice/icons/voice.svg +1 -0
  212. package/components/wework-chat-control/voice/voice.vue +464 -0
  213. package/components/wework-chat-panel/chat-panel-controls/company-card/company-card.vue +35 -0
  214. package/components/wework-chat-panel/chat-panel-controls/expression/expression.vue +36 -0
  215. package/components/wework-chat-panel/chat-panel-controls/file-url/file-url.vue +35 -0
  216. package/components/wework-chat-panel/chat-panel-controls/image/image.vue +36 -0
  217. package/components/wework-chat-panel/chat-panel-controls/index.js +35 -0
  218. package/components/wework-chat-panel/chat-panel-controls/jx-sys-text/jx-sys-text.vue +28 -0
  219. package/components/wework-chat-panel/chat-panel-controls/link/link.vue +35 -0
  220. package/components/wework-chat-panel/chat-panel-controls/location/location.vue +35 -0
  221. package/components/wework-chat-panel/chat-panel-controls/text/text.vue +43 -0
  222. package/components/wework-chat-panel/chat-panel-controls/unkonw/unkonw.vue +39 -0
  223. package/components/wework-chat-panel/chat-panel-controls/video/video.vue +37 -0
  224. package/components/wework-chat-panel/chat-panel-controls/voice/voice.vue +35 -0
  225. package/components/wework-chat-panel/chat-panel-item.vue +650 -0
  226. package/components/wework-chat-panel/chat-panel.vue +163 -0
  227. package/components/wework-chat-panel/index.js +3 -0
  228. package/package.json +23 -0
  229. package/services/client-chat/client-chat-wechat/client-chat-account.js +426 -0
  230. package/services/client-chat/client-chat-wechat/client-chat-concats.js +1029 -0
  231. package/services/client-chat/client-chat-wechat/client-chat-draft.js +92 -0
  232. package/services/client-chat/client-chat-wechat/client-chat-message.js +588 -0
  233. package/services/client-chat/client-chat-wechat/client-chat-session-manage.js +67 -0
  234. package/services/client-chat/client-chat-wechat/client-chat-session.js +1048 -0
  235. package/services/client-chat/client-chat-wechat/client-chat-socket.js +215 -0
  236. package/services/client-chat/client-chat-wechat/client-chat.js +1065 -0
  237. package/services/client-chat/client-chat-wechat/index.js +3 -0
  238. package/services/client-chat/client-chat-wechat/utils.js +82 -0
  239. package/services/client-chat/client-chat-wework/client-chat-account.js +310 -0
  240. package/services/client-chat/client-chat-wework/client-chat-concats.js +772 -0
  241. package/services/client-chat/client-chat-wework/client-chat-message.js +278 -0
  242. package/services/client-chat/client-chat-wework/client-chat-session.js +929 -0
  243. package/services/client-chat/client-chat-wework/client-chat-socket.js +64 -0
  244. package/services/client-chat/client-chat-wework/client-chat.js +330 -0
  245. package/services/client-chat/client-chat-wework/index.js +3 -0
  246. package/services/client-chat/client-chat-wework/utils.js +82 -0
  247. package/services/index.js +10 -0
  248. package/services/socket/index.js +5 -0
  249. package/services/socket/socket.js +797 -0
  250. package/services/socket/utils.js +7 -0
  251. package/uni-common/account-portray/account-portray.vue +51 -0
  252. package/uni-common/account-select/account-select-item.vue +172 -0
  253. package/uni-common/account-select/account-select.vue +252 -0
  254. package/uni-common/all-friend-avatar/all-friend-avatar.vue +49 -0
  255. package/uni-common/friend-avatar/default.svg +1 -0
  256. package/uni-common/friend-avatar/friend-avatar.vue +27 -0
  257. package/uni-common/friend-avatar/index.js +3 -0
  258. package/uni-common/friend-loader/friend-loader.vue +53 -0
  259. package/uni-common/friend-portray/friend-portray.vue +56 -0
  260. package/uni-common/group-avatar/default.svg +1 -0
  261. package/uni-common/group-avatar/group-avatar.vue +18 -0
  262. package/uni-common/group-avatar/index.js +3 -0
  263. package/uni-common/room-avatar/default.svg +6 -0
  264. package/uni-common/room-avatar/index.js +3 -0
  265. package/uni-common/room-avatar/room-avatar.vue +27 -0
  266. package/uni-common/room-loader/room-loader.vue +53 -0
  267. package/uni-common/room-portray/room-portray.vue +56 -0
  268. package/uni-components/chat-control/calling/calling.vue +91 -0
  269. package/uni-components/chat-control/calling/phone-fill.svg +1 -0
  270. package/uni-components/chat-control/calling/vidicon-fill.svg +1 -0
  271. package/uni-components/chat-control/channel-video/channel-video.vue +89 -0
  272. package/uni-components/chat-control/channel-video-card/channel-video-card.vue +105 -0
  273. package/uni-components/chat-control/channel-video-live/channel-video-live.vue +92 -0
  274. package/uni-components/chat-control/chat-control-config-item/chat-control-config-item.vue +20 -0
  275. package/uni-components/chat-control/chat-control-config-item/index.js +3 -0
  276. package/uni-components/chat-control/chat-control-config-msg/chat-control-config-msg-app.vue +25 -0
  277. package/uni-components/chat-control/chat-control-config-msg/chat-control-config-msg-h5.vue +21 -0
  278. package/uni-components/chat-control/chat-control-config.vue +59 -0
  279. package/uni-components/chat-control/chat-control.vue +218 -0
  280. package/uni-components/chat-control/company-card/company-card.vue +123 -0
  281. package/uni-components/chat-control/const.js +28 -0
  282. package/uni-components/chat-control/expression/expression.vue +41 -0
  283. package/uni-components/chat-control/image/image.vue +68 -0
  284. package/uni-components/chat-control/index.js +89 -0
  285. package/uni-components/chat-control/location/location.vue +110 -0
  286. package/uni-components/chat-control/member-change/member-change.vue +32 -0
  287. package/uni-components/chat-control/quote-message/quote-message.vue +216 -0
  288. package/uni-components/chat-control/real-time-position/real-time-position.vue +62 -0
  289. package/uni-components/chat-control/redpacket/red-envelope.svg +1 -0
  290. package/uni-components/chat-control/redpacket/redpacket.vue +75 -0
  291. package/uni-components/chat-control/share-card/share-card.vue +101 -0
  292. package/uni-components/chat-control/system/system.vue +69 -0
  293. package/uni-components/chat-control/system-batch-message/system-batch-message.vue +30 -0
  294. package/uni-components/chat-control/system-text/system-text.vue +32 -0
  295. package/uni-components/chat-control/text/text.vue +67 -0
  296. package/uni-components/chat-control/text-with-at/text-with-at.vue +51 -0
  297. package/uni-components/chat-control/transfer/red-transfer.svg +1 -0
  298. package/uni-components/chat-control/transfer/transfer.vue +80 -0
  299. package/uni-components/chat-control/unkonw/unkonw.vue +37 -0
  300. package/uni-components/chat-control/url/icons/file-excel-line.svg +1 -0
  301. package/uni-components/chat-control/url/icons/file-info-line.svg +1 -0
  302. package/uni-components/chat-control/url/icons/file-music-line.svg +1 -0
  303. package/uni-components/chat-control/url/icons/file-pdf-line.svg +1 -0
  304. package/uni-components/chat-control/url/icons/file-ppt-line.svg +1 -0
  305. package/uni-components/chat-control/url/icons/file-settings-line.svg +1 -0
  306. package/uni-components/chat-control/url/icons/file-text-line.svg +1 -0
  307. package/uni-components/chat-control/url/icons/file-unknow-line.svg +1 -0
  308. package/uni-components/chat-control/url/icons/file-word-line.svg +1 -0
  309. package/uni-components/chat-control/url/icons/file-zip-line.svg +1 -0
  310. package/uni-components/chat-control/url/icons/index.js +24 -0
  311. package/uni-components/chat-control/url/miniprogram.svg +1 -0
  312. package/uni-components/chat-control/url/url-miniprogram.vue +116 -0
  313. package/uni-components/chat-control/url/url.vue +306 -0
  314. package/uni-components/chat-control/url-new/icons/file-excel-line.svg +1 -0
  315. package/uni-components/chat-control/url-new/icons/file-info-line.svg +1 -0
  316. package/uni-components/chat-control/url-new/icons/file-music-line.svg +1 -0
  317. package/uni-components/chat-control/url-new/icons/file-pdf-line.svg +1 -0
  318. package/uni-components/chat-control/url-new/icons/file-ppt-line.svg +1 -0
  319. package/uni-components/chat-control/url-new/icons/file-settings-line.svg +1 -0
  320. package/uni-components/chat-control/url-new/icons/file-text-line.svg +1 -0
  321. package/uni-components/chat-control/url-new/icons/file-unknow-line.svg +1 -0
  322. package/uni-components/chat-control/url-new/icons/file-word-line.svg +1 -0
  323. package/uni-components/chat-control/url-new/icons/file-zip-line.svg +1 -0
  324. package/uni-components/chat-control/url-new/icons/index.js +24 -0
  325. package/uni-components/chat-control/url-new/url-new.vue +110 -0
  326. package/uni-components/chat-control/utils.js +12 -0
  327. package/uni-components/chat-control/video/video.vue +156 -0
  328. package/uni-components/chat-control/voice/voice.vue +166 -0
  329. package/uni-components/chat-editor/chat-editor-chartlet/chat-editor-chartlet-collect.vue +84 -0
  330. package/uni-components/chat-editor/chat-editor-chartlet/chat-editor-chartlet-system.vue +28 -0
  331. package/uni-components/chat-editor/chat-editor-chartlet/chat-editor-chartlet.vue +85 -0
  332. package/uni-components/chat-editor/chat-editor-func/chat-editor-func.vue +157 -0
  333. package/uni-components/chat-editor/chat-editor-func-at/chat-editor-func-at-panel.vue +158 -0
  334. package/uni-components/chat-editor/chat-editor-func-at/chat-editor-func-at.vue +61 -0
  335. package/uni-components/chat-editor/chat-editor-func-button/chat-editor-func-button.vue +58 -0
  336. package/uni-components/chat-editor/chat-editor-func-file/chat-editor-func-file.vue +54 -0
  337. package/uni-components/chat-editor/chat-editor-func-image/chat-editor-func-image.vue +42 -0
  338. package/uni-components/chat-editor/chat-editor-func-video/chat-editor-func-video.vue +42 -0
  339. package/uni-components/chat-editor/chat-editor-func-voice/chat-editor-func-voice.vue +25 -0
  340. package/uni-components/chat-editor/chat-editor-message-send/chat-editor-message-send.vue +158 -0
  341. package/uni-components/chat-editor/chat-editor-quote/chat-editor-quote.vue +75 -0
  342. package/uni-components/chat-editor/chat-editor.vue +257 -0
  343. package/uni-components/chat-editor/index.js +10 -0
  344. package/uni-components/chat-editor/util.js +65 -0
  345. package/uni-components/chat-panel/chat-panel-chats-box.vue +238 -0
  346. package/uni-components/chat-panel/chat-panel-chats-forward/chat-panel-chats-forward.vue +273 -0
  347. package/uni-components/chat-panel/chat-panel-chats-item.vue +578 -0
  348. package/uni-components/chat-panel/chat-panel-chats-status/chat-panel-chats-status.vue +71 -0
  349. package/uni-components/chat-panel/chat-panel-chats.vue +368 -0
  350. package/uni-components/chat-panel/chat-panel.vue +227 -0
  351. package/uni-components/contacts-group-select/contacts-group-select-item.vue +85 -0
  352. package/uni-components/contacts-group-select/contacts-group-select-panel.vue +119 -0
  353. package/uni-components/contacts-group-select/contacts-group-select.vue +150 -0
  354. package/utils/color.js +178 -0
  355. package/utils/data.js +11 -0
  356. package/utils/date.js +107 -0
  357. package/utils/event.js +3 -0
  358. package/utils/file.js +26 -0
  359. package/utils/index.js +5 -0
  360. package/utils/json.js +40 -0
  361. package/utils/log.js +243 -0
  362. package/utils/queue.js +97 -0
  363. package/utils/regexp.js +9 -0
  364. package/utils/string.js +66 -0
  365. package/utils/url.js +48 -0
  366. package/utils/util.js +130 -0
@@ -0,0 +1,257 @@
1
+ <template>
2
+ <sdk-chat-panel
3
+ class="sdk-wechat-chat-panel"
4
+ ref="panel"
5
+ v-bind="props"
6
+ :is-sender-method="handleIsSenderMethod"
7
+ msg-time-field="wechatTime"
8
+ :enable-default-date-range="enableDefaultDateRange"
9
+ :chat-class-method="handleChatClassMethod"
10
+ @initloaded="handleChatsInitLoaded"
11
+ @chat-contextmenu="handleChatContext"
12
+ @view-context="handleChatViewContext"
13
+ >
14
+ <template slot="filter">
15
+ <slot name="filter"></slot>
16
+ </template>
17
+ <template slot="chat" slot-scope="{ item, dir }">
18
+ <chat-panel-item
19
+ :item="item"
20
+ :dir="dir"
21
+ :fetch-user-method="fetchUserMethod"
22
+ :config="config"
23
+ @user-avatar-click="handleUserAvatarClick"
24
+ @user-avatar-contextmenu="handleUserAvatarContextmenu"
25
+ >
26
+ <template slot="box-append" slots-scope="{}">
27
+ <slot name="box-append" :item="item"></slot>
28
+ </template>
29
+ <template slot="chat-append" slot-scope="{ item, updateProp }">
30
+ <chat-panel-chat-status
31
+ :data="item"
32
+ :update-chat-box-prop="updateProp"
33
+ ></chat-panel-chat-status>
34
+ </template>
35
+ <template slot="chat-prefix" slot-scope="{ item }">
36
+ <template v-if="selectable && handleFilterSelectMessageMethod(item)">
37
+ <div class="sdk-wechat-chat-panel__checkbox">
38
+ <ui-checkbox :value="!!checkMsgMap[item[keyField]]" @input="handleMsgCheckboxChange(item, $event)"></ui-checkbox>
39
+ </div>
40
+ </template>
41
+ </template>
42
+ <template slot="quote-message-append" slot-scope="{ item, quoteMessageData }">
43
+ <slot name="chat-quote-message-append" :item="item" :quote-message-data="quoteMessageData"></slot>
44
+ </template>
45
+ </chat-panel-item>
46
+ </template>
47
+ <template slot="main">
48
+ <slot name="main"></slot>
49
+ <template v-if="selectable">
50
+ <slot name="selection" :total="checkTotal"></slot>
51
+ </template>
52
+ </template>
53
+ </sdk-chat-panel>
54
+ </template>
55
+ <script>
56
+ import SdkChatPanel from '../chat-panel'
57
+ import ChatPanelItem from './chat-panel-item.vue'
58
+ import ChatPanelChatStatus from './chat-panel-chat-status/chat-panel-chat-status.vue'
59
+
60
+ export default {
61
+ name: 'SdkWechatChatPanel',
62
+ components: {
63
+ ChatPanelItem,
64
+ SdkChatPanel,
65
+ ChatPanelChatStatus
66
+ },
67
+ props: {
68
+ mode: {
69
+ type: String,
70
+ default: 'default',
71
+ validator (value) {
72
+ return ['default', 'filter'].includes(value)
73
+ }
74
+ },
75
+ keyField: {
76
+ type: String,
77
+ default: 'id'
78
+ },
79
+ startDate: {
80
+ type: [String, Number]
81
+ },
82
+ endDate: {
83
+ type: [String, Number]
84
+ },
85
+ data: {
86
+ type: [Array,Object]
87
+ },
88
+ // 没有pageSize的时候证明不需要分页加载
89
+ pageSize: {
90
+ type: Number,
91
+ default: 20
92
+ },
93
+ contextChatId: {
94
+ type: String
95
+ },
96
+ fetchDataMethod: {
97
+ type: Function
98
+ },
99
+ fetchUserMethod: {
100
+ type: Function
101
+ },
102
+ config: {
103
+ type: Function
104
+ },
105
+ selectable: {
106
+ type: Boolean,
107
+ default: false
108
+ },
109
+ filterSelectMessageMethod: {
110
+ type: Function
111
+ },
112
+ enableDefaultDateRange: {
113
+ type: Boolean,
114
+ default: true
115
+ },
116
+ onBeforeSelectionChange: {
117
+ type: Function
118
+ }
119
+ },
120
+ data () {
121
+ return {
122
+ checkMsgMap: {}
123
+ }
124
+ },
125
+ computed: {
126
+ props () {
127
+ const { config, ...nextProps } = this.$props
128
+ return nextProps
129
+ },
130
+ checkTotal () {
131
+ return Object.keys(this.checkMsgMap).length
132
+ }
133
+ },
134
+ watch: {
135
+ selectable () {
136
+ if (!this.selectable) {
137
+ this.checkMsgMap = {}
138
+ }
139
+ }
140
+ },
141
+ methods: {
142
+ handleChatClassMethod () {
143
+ return {
144
+ 'is-selectable': this.selectable
145
+ }
146
+ },
147
+ handleFilterSelectMessageMethod (msg) {
148
+ if (!this.filterSelectMessageMethod) {
149
+ return true
150
+ }
151
+ return this.filterSelectMessageMethod({
152
+ item: msg
153
+ })
154
+ },
155
+ handleMsgCheckboxChange (msg, value) {
156
+ if (value) {
157
+ this.selectChat(msg)
158
+ } else {
159
+ this.unselectChat(msg)
160
+ }
161
+ },
162
+ handleUserAvatarClick ({ item }, evt) {
163
+ this.$emit('chat-user-click', {
164
+ item
165
+ }, evt)
166
+ },
167
+ handleUserAvatarContextmenu ({ item }, evt) {
168
+ this.$emit('chat-user-contextmenu', {
169
+ item
170
+ }, evt)
171
+ },
172
+ handleIsSenderMethod ({ item }) {
173
+ return !!item.isSend
174
+ },
175
+ handleChatsInitLoaded () {
176
+ this.$emit('initloaded')
177
+ },
178
+ scrollTo (msgId) {
179
+ this.$refs.panel && this.$refs.panel.scrollTo(msgId)
180
+ },
181
+ scrollToBottom () {
182
+ this.$refs.panel && this.$refs.panel.scrollToBottom()
183
+ },
184
+ reload () {
185
+ this.currentContextChat = null
186
+ return this.$refs.panel && this.$refs.panel.reload()
187
+ },
188
+ selectChat (chat) {
189
+ if (!chat) {
190
+ return
191
+ }
192
+ if (!this.selectable) {
193
+ console.warn('未开启选择')
194
+ return
195
+ }
196
+ if (this.onBeforeSelectionChange && this.onBeforeSelectionChange({
197
+ chat,
198
+ value: true
199
+ }) === false) {
200
+ return
201
+ }
202
+ this.$set(this.checkMsgMap, chat[this.keyField], chat)
203
+ },
204
+ unselectChat (chat) {
205
+ if (!chat) {
206
+ return
207
+ }
208
+ if (!this.selectable) {
209
+ console.warn('未开启选择')
210
+ return
211
+ }
212
+ if (this.onBeforeSelectionChange && this.onBeforeSelectionChange({
213
+ chat,
214
+ value: false
215
+ }) === false) {
216
+ return
217
+ }
218
+ this.$delete(this.checkMsgMap, chat[this.keyField])
219
+ },
220
+ unselectAllChat () {
221
+ return Object.keys(this.checkMsgMap).map(key => {
222
+ return this.unselectChat(this.checkMsgMap[key])
223
+ })
224
+ },
225
+ getSelectChats () {
226
+ return Object.keys(this.checkMsgMap).map(key => {
227
+ return this.checkMsgMap[key]
228
+ })
229
+ },
230
+ handleChatContext (item, evt) {
231
+ this.$emit('chat-contextmenu', {
232
+ item
233
+ }, evt)
234
+ },
235
+ handleChatViewContext ({ item }) {
236
+ this.$emit('chat-view-context', {
237
+ item
238
+ })
239
+ }
240
+ }
241
+ }
242
+ </script>
243
+ <style lang="less">
244
+ .sdk-wechat-chat-panel{
245
+ .sdk-chat-panel-chat.is-selectable{
246
+ padding-left: 40px;
247
+ position: relative;
248
+ }
249
+ }
250
+ .sdk-wechat-chat-panel__checkbox{
251
+ position: absolute;
252
+ left: 12px;
253
+ top: 50%;
254
+ z-index: 10;
255
+ transform: translateY(-50%);
256
+ }
257
+ </style>
@@ -0,0 +1,3 @@
1
+ import ChatPanel from './chat-panel.vue'
2
+
3
+ export default ChatPanel
@@ -0,0 +1,223 @@
1
+ <template>
2
+ <div
3
+ class="sdk-chat-wework-control-calling"
4
+ :class="['is-' + type]"
5
+ >
6
+ <div class="sdk-chat-wework-control-calling__main">
7
+ <div class="sdk-chat-wework-control-calling__handle">
8
+ <div class="sdk-chat-wework-control-calling__control">
9
+ <template v-if="duration">
10
+ {{ durationText }}
11
+ </template>
12
+ <template v-else>
13
+ {{ contentText }}
14
+ </template>
15
+ <template v-if="src && !['已取消', '对方已拒绝'].includes(contentText)">
16
+ ,<span
17
+ class="sdk-chat-wework-control-calling__toggle"
18
+ @click="handlePlayVoiceToggle"
19
+ >{{ openPlayer ? '收起录音' : '打开录音' }}</span>
20
+ </template>
21
+ <template v-if="addonEditControl">
22
+ ,<component :is="addonEditControl"></component>
23
+ </template>
24
+ </div>
25
+ </div>
26
+ <div class="sdk-chat-wework-control-calling__voice" v-if="openPlayer">
27
+ <base-voice v-bind="$props" :duration="duration" :content="voiceContent">
28
+ <template v-if="toolbarEditControl" slot="toolbar">
29
+ <component :is="toolbarEditControl"></component>
30
+ </template>
31
+ </base-voice>
32
+ </div>
33
+ </div>
34
+ </div>
35
+ </template>
36
+ <script>
37
+ import { parse } from '../../../utils/json'
38
+ import { unique } from '../../../utils/string'
39
+ import { timeToHHmmss } from '../../../utils/date'
40
+ import BaseVoice from '../voice/voice.vue'
41
+
42
+ export default {
43
+ name: 'SdkChatControlCalling',
44
+ components: {
45
+ BaseVoice
46
+ },
47
+ props: {
48
+ id: {
49
+ type: String
50
+ },
51
+ content: {
52
+ type: [String, Object]
53
+ },
54
+ /**
55
+ * 支持两种方式,第一种纯文本,第二种数组,如
56
+ * [{
57
+ * end: 0,
58
+ * spk: 0,
59
+ * start: 0,
60
+ * text: '一段话'
61
+ * }]
62
+ */
63
+ convertContent: {
64
+ type: [String, Array]
65
+ },
66
+ convertStatus: {
67
+ type: Number
68
+ },
69
+ formatter: {
70
+ type: Function
71
+ },
72
+ allowDownload: {
73
+ type: Boolean,
74
+ default: true
75
+ },
76
+ transformVoiceToTextEnable: {
77
+ type: Boolean,
78
+ default: false
79
+ },
80
+ transformVoiceToTextMethod: {
81
+ type: Function
82
+ },
83
+ getVoiceToTextResultMethod: {
84
+ type: Function
85
+ },
86
+ enableConvertToWav: {
87
+ type: Boolean,
88
+ default: true
89
+ },
90
+ updateWavMethod: {
91
+ type: Function
92
+ },
93
+ editable: {
94
+ type: Boolean,
95
+ default: false
96
+ },
97
+ renderEditControlMethod: {
98
+ type: Function
99
+ }
100
+ },
101
+ data () {
102
+ return {
103
+ openPlayer: false
104
+ }
105
+ },
106
+ computed: {
107
+ nextContent () {
108
+ return parse(this.content) || {}
109
+ },
110
+ contentText () {
111
+ return this.nextContent.content || ''
112
+ },
113
+ nextId () {
114
+ return this.id || unique()
115
+ },
116
+ type () {
117
+ return this.nextContent.type
118
+ },
119
+ src () {
120
+ return this.nextContent.audioUrl
121
+ },
122
+ duration () {
123
+ const duration = this.nextContent.duration
124
+ if (!duration) {
125
+ return
126
+ }
127
+ return duration
128
+ },
129
+ durationText () {
130
+ return this.nextContent.content || ''
131
+ },
132
+ voiceContent () {
133
+ return {
134
+ url: this.src,
135
+ durationMs: this.duration
136
+ }
137
+ },
138
+ addonEditControl () {
139
+ if (!this.editable) {
140
+ return null
141
+ }
142
+ const control = this.renderEditControlMethod({
143
+ position: 'voice-addon',
144
+ content: this.nextContent
145
+ })
146
+ return control
147
+ },
148
+ toolbarEditControl () {
149
+ if (!this.editable) {
150
+ return null
151
+ }
152
+ const control = this.renderEditControlMethod({
153
+ position: 'voice-toolbar',
154
+ content: this.nextContent
155
+ })
156
+ return control
157
+ }
158
+ },
159
+ methods: {
160
+ handlePlayVoiceToggle () {
161
+ this.openPlayer = !this.openPlayer
162
+ }
163
+ }
164
+ }
165
+ </script>
166
+ <style lang="less">
167
+ .sdk-chat-wework-control-calling{
168
+ &.is-dir-left,:not(.is-dir-right){
169
+ .sdk-chat-wework-control-calling__handle{
170
+ flex-direction: row-reverse;
171
+ &:after {
172
+ margin-right: 6px;
173
+ }
174
+ }
175
+ }
176
+ &.is-dir-right {
177
+ .sdk-chat-wework-control-calling__handle{
178
+ flex-direction: row;
179
+ &:after {
180
+ margin-left: 6px;
181
+ }
182
+ }
183
+ }
184
+ &.is-video{
185
+ .sdk-chat-wework-control-calling__handle{
186
+ &:after {
187
+ background-image: url('./vidicon-fill.svg');
188
+ }
189
+ }
190
+ }
191
+ &.is-voice{
192
+ .sdk-chat-wework-control-calling__handle{
193
+ &:after {
194
+ background-image: url('./phone-fill.svg');
195
+ transform: rotate(135deg);
196
+ }
197
+ }
198
+ }
199
+ }
200
+ .sdk-chat-wework-control-calling__handle{
201
+ padding: 8px 12px;
202
+ display: flex;
203
+ align-items: center;
204
+ &:after {
205
+ content: '';
206
+ display: inline-block;
207
+ width: 20px;
208
+ height: 20px;
209
+ background-size: 100%;
210
+ opacity: .3;
211
+ background-repeat: no-repeat;
212
+ background-position: 50% 50%;
213
+ }
214
+ }
215
+ .sdk-chat-wework-control-calling__voice{
216
+ padding: 8px 12px;
217
+ border-top: 1px solid rgba(0,0,0,.06);
218
+ }
219
+ .sdk-chat-wework-control-calling__toggle{
220
+ color: #0052CC;
221
+ cursor: pointer;
222
+ }
223
+ </style>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1670299071263" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="60143" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M896 700.586667v150.869333a42.666667 42.666667 0 0 1-39.68 42.581333c-18.645333 1.28-33.877333 1.962667-45.653333 1.962667-377.045333 0-682.666667-305.621333-682.666667-682.666667 0-11.776 0.64-27.008 1.962667-45.653333A42.666667 42.666667 0 0 1 172.544 128H323.413333a21.333333 21.333333 0 0 1 21.248 19.2c0.981333 9.813333 1.877333 17.621333 2.730667 23.552A593.109333 593.109333 0 0 0 398.933333 341.461333c4.053333 8.533333 1.408 18.730667-6.272 24.192l-92.074666 65.792a556.672 556.672 0 0 0 292.010666 292.010667l65.706667-91.904a19.712 19.712 0 0 1 24.448-6.357333 593.109333 593.109333 0 0 0 170.666667 51.413333c5.930667 0.853333 13.738667 1.792 23.466666 2.730667a21.333333 21.333333 0 0 1 19.157334 21.248z" p-id="60144"></path></svg>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1670298983364" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="26050" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M725.333333 392.533333l222.421334-155.733333a21.333333 21.333333 0 0 1 33.578666 17.493333v515.413334a21.333333 21.333333 0 0 1-33.578666 17.493333L725.333333 631.466667V810.666667a42.666667 42.666667 0 0 1-42.666666 42.666666H85.333333a42.666667 42.666667 0 0 1-42.666666-42.666666V213.333333a42.666667 42.666667 0 0 1 42.666666-42.666666h597.333334a42.666667 42.666667 0 0 1 42.666666 42.666666v179.2zM213.333333 341.333333v85.333334h85.333334V341.333333H213.333333z" p-id="26051"></path></svg>
@@ -0,0 +1,198 @@
1
+ <template>
2
+ <div class="sdk-chat-wework-panel-control-channel-live" :class="['sdk-chat-wework-panel-control-channel-live--' + type, {'is-border': border}]">
3
+ <template v-if="type === 'default' || type === 'thumb'">
4
+ <div class="sdk-chat-wework-panel-control-channel-live__cover">
5
+ <ui-image :src="cover" width="100%" height="100%" fit="cover" :radius="0"></ui-image>
6
+ </div>
7
+ <div class="sdk-chat-wework-panel-control-channel-live__main">
8
+ <div class="sdk-chat-wework-panel-control-channel-live__rows">
9
+ <div class="sdk-chat-wework-panel-control-channel-live__row">
10
+ <ui-avatar :src="avatar" :name="nickname"></ui-avatar>
11
+ </div>
12
+ <div class="sdk-chat-wework-panel-control-channel-live__row">
13
+ <div class="sdk-chat-wework-panel-control-channel-live__description">{{ desc }}</div>
14
+ </div>
15
+ </div>
16
+ <div class="sdk-chat-wework-panel-control-channel-live__other">视频号直播</div>
17
+ </div>
18
+ </template>
19
+ <template v-else-if="type === 'quote'">
20
+ <div class="sdk-chat-wework-panel-control-channel-live__icon"></div>
21
+ <div class="sdk-chat-wework-panel-control-channel-live__title">{{ desc }}</div>
22
+ <div class="sdk-chat-wework-panel-control-channel-live__cover">
23
+ <ui-image :src="cover" width="100%" height="100%" fit="cover" :radius="0"></ui-image>
24
+ </div>
25
+ </template>
26
+ </div>
27
+ </template>
28
+ <script>
29
+ import { parse, parseXml } from '../../../utils/json'
30
+ import { formatOssPath } from '@aochuang/common/utils/oss'
31
+
32
+ export default {
33
+ name: 'SdkChatControlChannelLive',
34
+ props: {
35
+ id: {
36
+ type: String
37
+ },
38
+ content: {
39
+ type: [String, Object]
40
+ },
41
+ type: {
42
+ type: String,
43
+ default: 'default',
44
+ validator (value) {
45
+ return ['quote', 'default', 'thumb'].includes(value)
46
+ }
47
+ }
48
+ },
49
+ inject: {
50
+ SdkChatPanelBox: {
51
+ default: null
52
+ }
53
+ },
54
+ computed: {
55
+ nextContent () {
56
+ let content = this.content
57
+ if (!content) {
58
+ return {}
59
+ }
60
+ if (typeof content === 'string') {
61
+ content = parse(content) || {}
62
+ if (typeof content === 'string') {
63
+ const xmlData = parseXml(content)
64
+ const appMsg = xmlData && xmlData.msg && xmlData.msg.appmsg ? xmlData.msg.appmsg : {}
65
+ const finderLive = appMsg.finderLive || {}
66
+ content = {
67
+ url: finderLive.url,
68
+ headUrl: finderLive.avatar,
69
+ coverUrl: finderLive.media ? finderLive.media.coverUrl : null,
70
+ nickname: finderLive.nickname,
71
+ desc: finderLive.desc
72
+ }
73
+ }
74
+ }
75
+ return content
76
+ },
77
+ cover () {
78
+ return formatOssPath(this.nextContent.coverUrl)
79
+ },
80
+ avatar () {
81
+ return formatOssPath(this.nextContent.avatar)
82
+ },
83
+ nickname () {
84
+ return this.nextContent.nickname
85
+ },
86
+ desc () {
87
+ return this.nextContent.desc
88
+ },
89
+ border () {
90
+ if (this.type === 'quote') {
91
+ return false
92
+ }
93
+ return !this.SdkChatPanelBox
94
+ }
95
+ }
96
+ }
97
+ </script>
98
+ <style lang="less">
99
+ .sdk-chat-wework-panel-control-channel-live{
100
+ display: inline-block;
101
+ max-width: 100%;
102
+ &.is-border {
103
+ border: 1px solid #eee;
104
+ border-radius: 4px;
105
+ }
106
+ }
107
+ .sdk-chat-wework-panel-control-channel-live--default,
108
+ .sdk-chat-wework-panel-control-channel-live--thumb {
109
+ max-width: 280px;
110
+ .sdk-chat-wework-panel-control-channel-live{
111
+ text-align: left;
112
+ color: #172b4d;
113
+ }
114
+ .sdk-chat-wework-panel-control-channel-live__cover{
115
+ height: 200px;
116
+ background-color: #eee;
117
+ }
118
+ .sdk-chat-wework-panel-control-channel-live__row{
119
+ line-height: 1.5em;
120
+ padding: 3px 12px;
121
+ }
122
+ .sdk-chat-wework-panel-control-channel-live__main{
123
+ padding: 6px 0 0;
124
+ }
125
+ .sdk-chat-wework-panel-control-channel-live__other {
126
+ font-size: 12px;
127
+ color: #999;
128
+ border-top: 1px solid #eee;
129
+ padding: 0 12px;
130
+ height: 24px;
131
+ line-height: 24px;
132
+ margin-top: 6px;
133
+ background-color: #fff;
134
+ border-bottom-left-radius: 3px;
135
+ border-bottom-right-radius: 3px;
136
+ }
137
+ .sdk-chat-wework-panel-control-channel-live__description{
138
+ display: -webkit-box;
139
+ overflow: hidden;
140
+ text-overflow: ellipsis;
141
+ -webkit-line-clamp: 3;
142
+ -webkit-box-orient: vertical;
143
+ }
144
+ }
145
+ .sdk-chat-wework-panel-control-channel-live--thumb{
146
+ border: 1px solid #eee;
147
+ background-color: #fff;
148
+ border-radius: 4px;
149
+ overflow: hidden;
150
+ position: relative;
151
+ .sdk-chat-wework-panel-control-channel-live__cover{
152
+ position: absolute;
153
+ left: 0;
154
+ right: 0;
155
+ top: 0;
156
+ bottom: 0;
157
+ &:before {
158
+ content: '';
159
+ position: absolute;
160
+ left: 0;
161
+ top: 0;
162
+ right: 0;
163
+ bottom: 0;
164
+ z-index: 3;
165
+ background: linear-gradient(180deg,#fff 0,hsla(0,0%,100%,.8) 48%,hsla(0,0%,100%,.4) 79%,hsla(0,0%,100%,0));
166
+ }
167
+ }
168
+ .sdk-chat-wework-panel-control-channel-live__main {
169
+ position: relative;
170
+ z-index: 5;
171
+ }
172
+ }
173
+ .sdk-chat-wework-panel-control-channel-live--quote {
174
+ display: flex;
175
+ flex-direction: row;
176
+ max-width: 360px;
177
+ .sdk-chat-wework-panel-control-channel-live__icon {
178
+ display: inline-block;
179
+ width: 18px;
180
+ height: 18px;
181
+ margin-right: 4px;
182
+ min-width: 18px;
183
+ vertical-align: top;
184
+ margin-top: 2px;
185
+ color: #999;
186
+ background: url('./quote-icon.svg') no-repeat 50% 50%;
187
+ background-size: cover;
188
+ }
189
+ .sdk-chat-wework-panel-control-channel-live__cover {
190
+ width: 52px;
191
+ height: 52px;
192
+ min-width: 52px;
193
+ }
194
+ .sdk-chat-wework-panel-control-channel-live__title{
195
+ margin-right: 6px;
196
+ }
197
+ }
198
+ </style>
@@ -0,0 +1 @@
1
+ <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1752135256842" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3545" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M205.312 157.013333c37.319111 0.512 92.245333 26.510222 214.044444 207.587556a2954.723556 2954.723556 0 0 1 83.143112 131.697778 2964.707556 2964.707556 0 0 1 83.171555-131.697778c121.799111-181.077333 176.696889-207.075556 214.044445-207.559111l1.024-0.028445h1.080888c9.216 0 41.301333 2.56 66.702223 35.982223 47.104 61.895111 42.581333 190.976-13.795556 394.666666l-0.227555 0.796445a1318.684444 1318.684444 0 0 1-41.955556 116.764444c-40.391111 96.426667-75.804444 137.557333-118.328889 137.557333-38.855111 0-83.626667-30.037333-133.034667-89.315555a625.038222 625.038222 0 0 1-58.652444-83.996445 625.038222 625.038222 0 0 1-58.680889 83.996445c-49.408 59.278222-94.151111 89.315556-133.006222 89.315555-42.552889 0-77.937778-41.130667-118.357333-137.557333-24.177778-57.685333-41.244444-114.346667-41.955556-116.764444l-0.227556-0.796445C93.923556 384 89.429333 254.862222 136.533333 192.995556c24.177778-31.829333 54.442667-35.697778 65.251556-35.982223h3.555555z m-0.881778 81.351111c-3.84 2.702222-12.117333 13.624889-16.384 41.813334-6.257778 41.244444-4.380444 124.302222 40.192 285.411555 1.365333 4.465778 14.904889 48.753778 33.735111 95.573334 27.676444 68.949333 45.880889 92.16 53.048889 99.328 10.439111-4.266667 34.56-19.882667 68.721778-61.44 29.923556-36.380444 56.718222-79.758222 73.870222-119.182223-17.351111-30.151111-56.376889-96.568889-100.977778-163.413333-102.001778-152.832-144.042667-175.018667-152.206222-178.062222z m596.195556 0c-8.163556 3.072-50.232889 25.258667-152.206222 178.090667a3080.931556 3080.931556 0 0 0-101.006223 163.384889c17.180444 39.452444 43.975111 82.830222 73.870223 119.210667 34.161778 41.557333 58.311111 57.173333 68.750222 61.44 7.139556-7.168 25.429333-30.492444 53.248-99.84a1277.155556 1277.155556 0 0 0 33.507555-95.061334c44.572444-161.109333 46.449778-244.138667 40.192-285.44-4.266667-28.16-12.515556-39.082667-16.355555-41.756444z" fill="#999" p-id="3546"></path></svg>