@x-edu/live-player 0.0.21 → 0.0.23

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 (299) hide show
  1. package/.browserslistrc +10 -10
  2. package/.eslintignore +8 -8
  3. package/.eslintrc.js +26 -26
  4. package/.gem-mine +11 -11
  5. package/.postcssrc.js +6 -6
  6. package/README.md +145 -145
  7. package/babel.config.js +33 -33
  8. package/doc/develop.md +23 -23
  9. package/gem-mine.config.js +86 -86
  10. package/jest.config.js +9 -9
  11. package/jsconfig.json +15 -15
  12. package/mock/helper.js +8 -8
  13. package/mock/index.js +34 -34
  14. package/package.json +99 -99
  15. package/public/3rd/ali-player/alipayercomponents-1.0.8.min.js +26 -26
  16. package/public/3rd/ali-player/aliplayer-hls-min.js +27 -27
  17. package/public/3rd/ali-player/aliplayer-min.js +1 -1
  18. package/public/3rd/im-web-push/index.umd.js +14 -14
  19. package/public/JsBridge.js +1602 -1602
  20. package/public/fish/editor/themes/default/css/ueditor.css +1905 -1905
  21. package/public/fish/editor/third-party/codemirror/codemirror.css +104 -104
  22. package/public/fish/editor/third-party/codemirror/codemirror.js +3581 -3581
  23. package/public/fish/editor/third-party/zeroclipboard/ZeroClipboard.js +1255 -1255
  24. package/public/fish/editor/ueditor.all.min.js +16 -16
  25. package/public/fish/editor/ueditor.config.js +467 -467
  26. package/public/fish/icon/umd-4.1.2.js +1 -1
  27. package/public/fish/video/videoplayer.min.css +6 -6
  28. package/public/fish/video/videoplayer.min.js +31 -31
  29. package/public/fish/video/zh-CN.js +82 -82
  30. package/public/icon/demo.css +539 -539
  31. package/public/icon/demo_index.html +2189 -2189
  32. package/public/icon/iconfont.css +363 -363
  33. package/public/icon/iconfont.json +618 -618
  34. package/public/index.html +50 -50
  35. package/script/image/readme.md +77 -77
  36. package/script/postcss.js +48 -48
  37. package/src/App.jsx +24 -24
  38. package/src/asset/img/course/playing.svg +21 -21
  39. package/src/asset/img/icon-course-white.svg +3 -3
  40. package/src/asset/img/icon-course.svg +3 -3
  41. package/src/asset/img/icon-eye-white.svg +4 -4
  42. package/src/asset/img/icon-eye.svg +4 -4
  43. package/src/asset/img/icon-school-white.svg +3 -3
  44. package/src/asset/img/icon-school.svg +3 -3
  45. package/src/asset/img/loading.svg +52 -52
  46. package/src/asset/img/video-play.svg +6 -6
  47. package/src/asset/style/background.less +19 -19
  48. package/src/asset/style/banner.less +36 -36
  49. package/src/asset/style/base.less +74 -74
  50. package/src/asset/style/index.less +114 -114
  51. package/src/asset/style/reset-theme.less +141 -141
  52. package/src/asset/style/theme/index.less +55 -55
  53. package/src/asset/style/theme/party/global.less +20 -20
  54. package/src/asset/style/theme/party/override.less +57 -57
  55. package/src/asset/style/theme/test/global.less +18 -18
  56. package/src/asset/style/theme/test/override.less +45 -45
  57. package/src/asset/style/variable.less +12 -12
  58. package/src/component/AliPlayer/index.jsx +49 -49
  59. package/src/component/Avatar/index.jsx +50 -50
  60. package/src/component/Empty/index.jsx +34 -34
  61. package/src/component/Empty/index.module.less +37 -37
  62. package/src/component/IMChatroom/component/status/403.jsx +13 -13
  63. package/src/component/IMChatroom/component/status/404.jsx +13 -13
  64. package/src/component/IMChatroom/component/status/Error.jsx +23 -23
  65. package/src/component/IMChatroom/component/status/Loading.jsx +5 -5
  66. package/src/component/IMChatroom/config/app/config.js +118 -118
  67. package/src/component/IMChatroom/config/app/index.js +60 -60
  68. package/src/component/IMChatroom/config/env.js +5 -5
  69. package/src/component/IMChatroom/config/index.js +3 -3
  70. package/src/component/IMChatroom/config/request/config/base.js +124 -124
  71. package/src/component/IMChatroom/config/request/config/chatroom.js +26 -26
  72. package/src/component/IMChatroom/config/request/config/imCoreApi.js +21 -21
  73. package/src/component/IMChatroom/config/request/index.js +21 -21
  74. package/src/component/IMChatroom/config/request/proxy.js +39 -39
  75. package/src/component/IMChatroom/config/url.js +7 -7
  76. package/src/component/IMChatroom/constants/errorCode.js +9 -9
  77. package/src/component/IMChatroom/constants/index.js +84 -84
  78. package/src/component/IMChatroom/constants/origin.js +27 -27
  79. package/src/component/IMChatroom/context/chatroom.js +154 -154
  80. package/src/component/IMChatroom/context/connect.js +28 -28
  81. package/src/component/IMChatroom/i18n/en/index.json +73 -73
  82. package/src/component/IMChatroom/i18n/index.jsx +14 -14
  83. package/src/component/IMChatroom/i18n/language.js +9 -9
  84. package/src/component/IMChatroom/i18n/zh-CN/index.json +73 -73
  85. package/src/component/IMChatroom/index.jsx +49 -49
  86. package/src/component/IMChatroom/page/chat/index.jsx +27 -27
  87. package/src/component/IMChatroom/page/chat/messageEditor/index.jsx +375 -375
  88. package/src/component/IMChatroom/page/chat/messageList/index.jsx +354 -354
  89. package/src/component/IMChatroom/page/chat/stickedMessage/index.jsx +59 -59
  90. package/src/component/IMChatroom/page/chat/stickedMessage/style/index.module.less +7 -7
  91. package/src/component/IMChatroom/page/chat/style/index.module.less +51 -51
  92. package/src/component/IMChatroom/page/home/connect/index.jsx +188 -188
  93. package/src/component/IMChatroom/page/home/connect/status.jsx +124 -124
  94. package/src/component/IMChatroom/page/home/context/cmd.jsx +37 -37
  95. package/src/component/IMChatroom/page/home/context/index.jsx +67 -67
  96. package/src/component/IMChatroom/page/home/index.jsx +164 -164
  97. package/src/component/IMChatroom/page/home/notice/index.jsx +123 -123
  98. package/src/component/IMChatroom/page/home/notice/style/index.module.less +49 -49
  99. package/src/component/IMChatroom/page/home/style/index.module.less +110 -110
  100. package/src/component/IMChatroom/page/member/index.jsx +15 -15
  101. package/src/component/IMChatroom/page/member/memberCount/index.jsx +44 -44
  102. package/src/component/IMChatroom/page/member/memberList/index.jsx +121 -121
  103. package/src/component/IMChatroom/page/member/style/index.module.less +2 -2
  104. package/src/component/IMChatroom/sdk/bridge.js +39 -39
  105. package/src/component/IMChatroom/sdk/cs/constants.js +20 -20
  106. package/src/component/IMChatroom/sdk/cs/index.js +101 -101
  107. package/src/component/IMChatroom/sdk/imChatroom.js +15 -15
  108. package/src/component/IMChatroom/sdk/imcore/constants.js +128 -128
  109. package/src/component/IMChatroom/sdk/imcore/emitters/chatroomDestroyed.js +5 -5
  110. package/src/component/IMChatroom/sdk/imcore/emitters/chatroomInfoGetFail.js +5 -5
  111. package/src/component/IMChatroom/sdk/imcore/emitters/chatroomKickedByAdmin.js +5 -5
  112. package/src/component/IMChatroom/sdk/imcore/emitters/chatroomKickedBySelf.js +5 -5
  113. package/src/component/IMChatroom/sdk/imcore/emitters/chatroomLoginFail.js +5 -5
  114. package/src/component/IMChatroom/sdk/imcore/emitters/chatroomLoginSuccess.js +5 -5
  115. package/src/component/IMChatroom/sdk/imcore/emitters/chatroomMemberLogin.js +5 -5
  116. package/src/component/IMChatroom/sdk/imcore/emitters/chatroomMemberLogout.js +5 -5
  117. package/src/component/IMChatroom/sdk/imcore/emitters/connectionConnected.js +5 -5
  118. package/src/component/IMChatroom/sdk/imcore/emitters/connectionConnecting.js +5 -5
  119. package/src/component/IMChatroom/sdk/imcore/emitters/connectionDisconnect.js +5 -5
  120. package/src/component/IMChatroom/sdk/imcore/emitters/index.js +57 -57
  121. package/src/component/IMChatroom/sdk/imcore/emitters/messageReceive.js +36 -36
  122. package/src/component/IMChatroom/sdk/imcore/index.js +178 -178
  123. package/src/component/IMChatroom/sdk/imcore/interceptors/request.js +7 -7
  124. package/src/component/IMChatroom/sdk/imcore/interceptors/response.js +5 -5
  125. package/src/component/IMChatroom/sdk/imcore/plugins/getAuth.js +64 -64
  126. package/src/component/IMChatroom/sdk/imcore/plugins/getConversationId.js +20 -20
  127. package/src/component/IMChatroom/sdk/imcore/plugins/getExtInfo.js +10 -10
  128. package/src/component/IMChatroom/sdk/imcore/plugins/getLoginInfo.js +48 -48
  129. package/src/component/IMChatroom/sdk/imcore/plugins/getPlatformType.js +12 -12
  130. package/src/component/IMChatroom/sdk/imcore/plugins/index.js +22 -22
  131. package/src/component/IMChatroom/sdk/imcore/util/format.js +177 -177
  132. package/src/component/IMChatroom/sdk/imcore/util/parser.js +35 -35
  133. package/src/component/IMChatroom/sdk/oms.js +18 -18
  134. package/src/component/IMChatroom/sdk/uc.js +3 -3
  135. package/src/component/IMChatroom/subscription/channel/app.js +5 -5
  136. package/src/component/IMChatroom/subscription/channel/ctl.js +22 -22
  137. package/src/component/IMChatroom/subscription/channel/member.js +40 -40
  138. package/src/component/IMChatroom/subscription/channel/message.js +13 -13
  139. package/src/component/IMChatroom/subscription/channel/ntf.js +86 -86
  140. package/src/component/IMChatroom/subscription/channel/tel.js +5 -5
  141. package/src/component/IMChatroom/subscription/channel/websocket.js +5 -5
  142. package/src/component/IMChatroom/subscription/event.js +37 -37
  143. package/src/component/IMChatroom/subscription/index.js +19 -19
  144. package/src/component/IMChatroom/util/account.js +8 -8
  145. package/src/component/IMChatroom/util/chatroom.js +255 -255
  146. package/src/component/IMChatroom/util/jsonBigInt.js +5 -5
  147. package/src/component/IMChatroom/util/location.js +12 -12
  148. package/src/component/Icon/index.jsx +16 -16
  149. package/src/component/Icon/index.module.less +2 -2
  150. package/src/component/Pagination/LocalPagination.jsx +27 -27
  151. package/src/component/Pagination/RemotePagination.jsx +32 -32
  152. package/src/component/Pagination/index.jsx +32 -31
  153. package/src/component/Pagination/index.module.less +117 -110
  154. package/src/component/PlayerTip/index.jsx +34 -34
  155. package/src/component/VideoBase/index.jsx +242 -242
  156. package/src/component/VideoBase/style.less +65 -65
  157. package/src/component/VideoBase/utils.js +81 -81
  158. package/src/component/mixin.less +9 -9
  159. package/src/component/status/403.jsx +15 -15
  160. package/src/component/status/404/index.jsx +73 -73
  161. package/src/component/status/404/index.module.less +36 -36
  162. package/src/component/status/Error/error.module.less +13 -13
  163. package/src/component/status/Error/index.jsx +47 -47
  164. package/src/component/status/Loading/img/loading.svg +52 -52
  165. package/src/component/status/Loading/index.jsx +31 -31
  166. package/src/component/status/Loading/index.less +56 -56
  167. package/src/component/status/None/index.jsx +20 -20
  168. package/src/component/status/None/index.module.less +35 -35
  169. package/src/component/status/Status/index.jsx +26 -26
  170. package/src/component/status/Status/index.module.less +8 -8
  171. package/src/config/constant/commonUrl.js +2 -2
  172. package/src/config/constant/user.js +6 -6
  173. package/src/config/context/site-config.js +48 -48
  174. package/src/config/env/index.js +5 -5
  175. package/src/config/env/local/index.js +13 -13
  176. package/src/config/env/ncet-xedu/api.js +175 -175
  177. package/src/config/env/ncet-xedu/app.js +12 -12
  178. package/src/config/env/ncet-xedu/cs.js +8 -8
  179. package/src/config/env/ncet-xedu/index.js +14 -14
  180. package/src/config/env/ncet-xedu/push.js +5 -5
  181. package/src/config/env/preproduction/api.js +144 -144
  182. package/src/config/env/preproduction/app.js +12 -12
  183. package/src/config/env/preproduction/cs.js +8 -8
  184. package/src/config/env/preproduction/index.js +14 -14
  185. package/src/config/env/preproduction/push.js +5 -5
  186. package/src/config/env/product/api.js +113 -113
  187. package/src/config/env/product/app.js +12 -12
  188. package/src/config/env/product/cs.js +5 -5
  189. package/src/config/env/product/index.js +14 -14
  190. package/src/config/env/product/push.js +5 -5
  191. package/src/config/live.js +80 -80
  192. package/src/config/publicLive.js +53 -53
  193. package/src/config/request/assessments.js +24 -24
  194. package/src/config/request/config-center.js +8 -8
  195. package/src/config/request/helper.js +166 -166
  196. package/src/config/request/im-broadcasts.js +12 -12
  197. package/src/config/request/live-activity-gateway.js +8 -8
  198. package/src/config/request/live-activity.js +13 -13
  199. package/src/config/request/raw.js +6 -6
  200. package/src/config/request/x-cloud-web.js +13 -13
  201. package/src/config/request/x-proxy.js +34 -34
  202. package/src/demo/Detail.jsx +11 -11
  203. package/src/demo/List.jsx +66 -64
  204. package/src/demo/index.jsx +17 -17
  205. package/src/detail/LineSwitch/index.jsx +71 -71
  206. package/src/detail/LiveCountDown/index.jsx +44 -44
  207. package/src/detail/LiveCountDown/index.module.less +31 -31
  208. package/src/detail/LiveOnlineCount/img/icon.svg +15 -15
  209. package/src/detail/LiveOnlineCount/index.jsx +68 -68
  210. package/src/detail/LiveOnlineCount/index.module.less +34 -34
  211. package/src/detail/LiveOnlineCount/util.js +74 -74
  212. package/src/detail/LiveStatus/AnchorOnTheWay.jsx +88 -88
  213. package/src/detail/LiveStatus/index.jsx +202 -202
  214. package/src/detail/LiveStatus/index.module.less +192 -192
  215. package/src/detail/LiveVideo/config.js +37 -37
  216. package/src/detail/LiveVideo/index.jsx +188 -188
  217. package/src/detail/LiveVideo/index.module.less +41 -41
  218. package/src/detail/NotLoginChatroom/index.jsx +37 -37
  219. package/src/detail/NotLoginChatroom/index.module.less +46 -46
  220. package/src/detail/RecordVideo/index.jsx +150 -150
  221. package/src/detail/RecordVideo/index.module.less +31 -31
  222. package/src/detail/ReplayVideo/index.jsx +93 -93
  223. package/src/detail/ReplayVideo/index.module.less +65 -65
  224. package/src/detail/const.js +20 -20
  225. package/src/detail/hook/usePullSource.js +82 -82
  226. package/src/detail/hook/usePullState.js +51 -51
  227. package/src/detail/index.jsx +482 -482
  228. package/src/detail/index.module.less +188 -188
  229. package/src/hook/useAsync.js +84 -84
  230. package/src/hook/useGoToPage.js +83 -83
  231. package/src/hook/useInterval.js +28 -28
  232. package/src/hook/useIsMounted.js +17 -17
  233. package/src/hook/useModuleByRole.js +53 -53
  234. package/src/hook/usePageScrollable.js +52 -52
  235. package/src/hook/usePortal.js +83 -83
  236. package/src/hook/useScrollRestore/index.js +32 -32
  237. package/src/hook/useScrollRestore/scrollContext.js +20 -20
  238. package/src/hook/useTrackRef.js +11 -11
  239. package/src/hook/useWindowSize.js +28 -28
  240. package/src/hook/useZoom.js +47 -47
  241. package/src/index.js +10 -10
  242. package/src/lib/getLiveOnlineCount.js +10 -10
  243. package/src/lib/getServiceConfig.js +102 -102
  244. package/src/list/Empty/index.jsx +20 -20
  245. package/src/list/Empty/index.module.less +23 -23
  246. package/src/list/ListItem/Action/index.jsx +100 -98
  247. package/src/list/ListItem/Action/index.module.less +19 -21
  248. package/src/list/ListItem/img/play.svg +15 -15
  249. package/src/list/ListItem/img/video.svg +3 -0
  250. package/src/list/ListItem/index.jsx +46 -28
  251. package/src/list/ListItem/index.module.less +152 -146
  252. package/src/list/index.module.less +35 -35
  253. package/src/service/common.js +73 -73
  254. package/src/service/content-mgr.js +73 -73
  255. package/src/service/im-group.js +12 -12
  256. package/src/service/im.js +7 -7
  257. package/src/service/imBroadcasts.js +33 -33
  258. package/src/service/like.js +134 -134
  259. package/src/service/manageApi.js +7 -7
  260. package/src/service/managePortal.js +6 -6
  261. package/src/service/myStudyRecord.js +93 -93
  262. package/src/service/navigation.js +47 -47
  263. package/src/service/ndMeeting.js +10 -10
  264. package/src/service/ndr.js +122 -122
  265. package/src/service/news.js +93 -93
  266. package/src/service/personalCenter.js +270 -270
  267. package/src/service/qualityCourse.js +31 -31
  268. package/src/service/recommend.js +81 -81
  269. package/src/service/school.js +323 -323
  270. package/src/service/search.js +170 -170
  271. package/src/service/site-config.js +7 -7
  272. package/src/service/socialCensor.js +45 -45
  273. package/src/service/specialEdu.js +31 -31
  274. package/src/service/suggestion.js +85 -85
  275. package/src/service/syncClassroom.js +321 -321
  276. package/src/service/tCourse.js +204 -204
  277. package/src/service/tchTraining.js +37 -37
  278. package/src/service/uc.js +45 -45
  279. package/src/util/app.js +1 -1
  280. package/src/util/array.js +3 -3
  281. package/src/util/auth/func.js +57 -57
  282. package/src/util/date.js +53 -53
  283. package/src/util/env.js +9 -9
  284. package/src/util/getTimestamp.js +10 -10
  285. package/src/util/hof.js +105 -105
  286. package/src/util/live/index.js +42 -42
  287. package/src/util/netUrl.js +35 -35
  288. package/src/util/object.js +13 -13
  289. package/src/util/push/index.js +58 -58
  290. package/src/util/request.js +227 -227
  291. package/src/util/type.js +17 -17
  292. package/src/util/url.js +203 -203
  293. package/src/util/video.js +26 -26
  294. package/test/setup.js +21 -21
  295. package/test/unit/component/header/logo.spec.jsx +8 -8
  296. package/test/unit/helper.jsx +25 -25
  297. package/test/unit/util/date.spec.js +40 -40
  298. package/dist/XEduLivePlayer.common.js +0 -72605
  299. package/dist/XEduLivePlayerPre.common.js +0 -72625
package/.browserslistrc CHANGED
@@ -1,10 +1,10 @@
1
- [development]
2
- last 2 chrome versions
3
-
4
- [production]
5
- chrome >= 63
6
- ie >= 11
7
- edge > 18
8
- Safari >= 13
9
- last 2 firefox versions
10
- last 2 Opera versions
1
+ [development]
2
+ last 2 chrome versions
3
+
4
+ [production]
5
+ chrome >= 63
6
+ ie >= 11
7
+ edge > 18
8
+ Safari >= 13
9
+ last 2 firefox versions
10
+ last 2 Opera versions
package/.eslintignore CHANGED
@@ -1,8 +1,8 @@
1
- /dist
2
- /node_modules
3
- /public
4
- /src/vendor
5
- /src/page/tchTraining/Honour/Detail/const/introduction.js
6
- /src/page/teacherStudio/data
7
- /src/page/teacherStudioAdmin/subPage/resource/subPage/edit/lib/
8
- /src/page/recommend/legacy
1
+ /dist
2
+ /node_modules
3
+ /public
4
+ /src/vendor
5
+ /src/page/tchTraining/Honour/Detail/const/introduction.js
6
+ /src/page/teacherStudio/data
7
+ /src/page/teacherStudioAdmin/subPage/resource/subPage/edit/lib/
8
+ /src/page/recommend/legacy
package/.eslintrc.js CHANGED
@@ -1,26 +1,26 @@
1
- module.exports = {
2
- extends: ['@gem-mine/recommend'],
3
- rules: {
4
- 'global-require': 0,
5
- 'import/prefer-default-export': 'off',
6
- // 禁止不必要的尾逗号
7
- 'comma-dangle': ['error', 'never'],
8
- // 行最大宽度
9
- 'max-len': ['error', {
10
- tabWidth: 2,
11
- code: 256
12
- }],
13
- 'object-curly-newline': ['error', {
14
- // 对象字面量,非空对象时必须换行
15
- ObjectExpression: {
16
- minProperties: 1
17
- }
18
- }],
19
- // 对象字面量属性必须换行编写
20
- 'object-property-newline': ['error', {
21
- allowAllPropertiesOnSameLine: false
22
- }],
23
- // 允许使用 | & ~ 运算符
24
- 'no-bitwise': 0
25
- }
26
- }
1
+ module.exports = {
2
+ extends: ['@gem-mine/recommend'],
3
+ rules: {
4
+ 'global-require': 0,
5
+ 'import/prefer-default-export': 'off',
6
+ // 禁止不必要的尾逗号
7
+ 'comma-dangle': ['error', 'never'],
8
+ // 行最大宽度
9
+ 'max-len': ['error', {
10
+ tabWidth: 2,
11
+ code: 256
12
+ }],
13
+ 'object-curly-newline': ['error', {
14
+ // 对象字面量,非空对象时必须换行
15
+ ObjectExpression: {
16
+ minProperties: 1
17
+ }
18
+ }],
19
+ // 对象字面量属性必须换行编写
20
+ 'object-property-newline': ['error', {
21
+ allowAllPropertiesOnSameLine: false
22
+ }],
23
+ // 允许使用 | & ~ 运算符
24
+ 'no-bitwise': 0
25
+ }
26
+ }
package/.gem-mine CHANGED
@@ -1,11 +1,11 @@
1
- {
2
- "version": "3.2.7",
3
- "template_id": "base",
4
- "name": "base-template",
5
- "path": "/Users/tomhome/nd/x/base-template",
6
- "env": "{\"cli_version\":\"2.23.1\",\"npm_version\":\"6.14.14\",\"node_version\":\"v14.17.5\"}",
7
- "user": "caolvchong",
8
- "email": "caolvchong@gmail.com",
9
- "choice": "{\"templateId\":\"base\",\"packageManager\":\"yarn\",\"registry\":\"http://registry.npm.sdp.nd/\",\"features\":[\"lintBeforeCommit\",\"jest\"],\"sass\":false,\"ui\":\"fish\"}",
10
- "project_id": "78a4f120-1b72-11ec-9202-83aa72107762_1632293900594"
11
- }
1
+ {
2
+ "version": "3.2.7",
3
+ "template_id": "base",
4
+ "name": "base-template",
5
+ "path": "/Users/tomhome/nd/x/base-template",
6
+ "env": "{\"cli_version\":\"2.23.1\",\"npm_version\":\"6.14.14\",\"node_version\":\"v14.17.5\"}",
7
+ "user": "caolvchong",
8
+ "email": "caolvchong@gmail.com",
9
+ "choice": "{\"templateId\":\"base\",\"packageManager\":\"yarn\",\"registry\":\"http://registry.npm.sdp.nd/\",\"features\":[\"lintBeforeCommit\",\"jest\"],\"sass\":false,\"ui\":\"fish\"}",
10
+ "project_id": "78a4f120-1b72-11ec-9202-83aa72107762_1632293900594"
11
+ }
package/.postcssrc.js CHANGED
@@ -1,6 +1,6 @@
1
- module.exports = {
2
- plugins: [
3
- require('./script/postcss'),
4
- require('autoprefixer')
5
- ]
6
- }
1
+ module.exports = {
2
+ plugins: [
3
+ require('./script/postcss'),
4
+ require('autoprefixer')
5
+ ]
6
+ }
package/README.md CHANGED
@@ -1,146 +1,146 @@
1
- # 直播播放器
2
-
3
- 初版,API可能后续会大幅调整
4
-
5
- ## Demo
6
- ### PublicLiveDetail 直播详情页
7
-
8
- ```jsx
9
- import { PublicLiveDetail, getLiveOnlineCount } from '@x-edu/live-player'
10
- import React, { useContext } from 'react'
11
- import style from './style.module.less'
12
- import { getLoginUrl, uc } from '@/util/auth/func'
13
- import UserContext from '@/component/Login/UserContext'
14
- import { sensorsTrack } from '@/util/sensorsTracking'
15
-
16
- export default function LiveTest() {
17
- const loginInfo = useContext(UserContext)
18
-
19
- // 获取直播人数请在直播开始之后调用并显示
20
- // 直播结束之后也不应显示
21
- useEffect(() => {
22
- const test = async () => {
23
- const count = await getLiveOnlineCount('13aafbce-8ca2-4587-bc6e-eab183c9d5b6')
24
- console.log(count)
25
- }
26
- test()
27
- }, [])
28
-
29
- // 部分直播需要登录后才可以播放,这是要求登录的回调
30
- const handleLogin = () => {
31
- window.location.href = getLoginUrl()
32
- }
33
- // 直播人数获取后调用,注意直播开始后才有本数据
34
- const handleoOnlineCountChange = (currentCount) => {
35
- console.log(currentCount)
36
- }
37
- // 直播状态发生变化后触发本事件
38
- const handleStateChange = (liveInfo) => {
39
- console.log(liveInfo)
40
- }
41
-
42
- // 登录后上报强师额外上报信息
43
- const handleReportProgress = () => {}
44
- // 登录且播放后上报强师额外上报信息
45
- const handleReportTeacherTrain = () => {}
46
-
47
- const handleSensors = (sensorInfo) => {
48
- sensorsTrack(sensorInfo)
49
- }
50
-
51
- return (
52
- <div
53
- style={{
54
- height: '800px',
55
- width: '1200px'
56
- }}
57
- >
58
- <PublicLiveDetail
59
- className={style.live}
60
- containerClassName={style.container}
61
- infoClassName={style.info}
62
- playerClassName={style.player}
63
- descriptionClassName={style.desc}
64
- liveId="13aafbce-8ca2-4587-bc6e-eab183c9d5b6"
65
- appId="e5649925-441d-4a53-b525-51a2f1c4e0a8"
66
- uc={uc}
67
- loginInfo={loginInfo}
68
- handleLogin={handleLogin}
69
- onOnlineCountChange={handleoOnlineCountChange}
70
- onStateChange={handleStateChange}
71
- onReportProgress={handleReportProgress}
72
- onReportTeacherTrain={handleReportTeacherTrain}
73
- onSendSensors={handleSensors}
74
- />
75
- </div>
76
- )
77
- }
78
- ```
79
-
80
- ```less
81
- .container {
82
- width: 100%;
83
- height: 100%
84
- }
85
-
86
- .live {
87
- padding: 0 !important;
88
- margin: 0;
89
- }
90
-
91
- .info {
92
- display: none;
93
- }
94
-
95
- .desc {
96
- display: none;
97
- }
98
- ```
99
-
100
- ### 直播列表页
101
- ```jsx
102
- import { PublicLiveList } from '@x-edu/live-player'
103
- import React, { useContext } from 'react'
104
- import style from './style.module.less'
105
- import { getLoginUrl, uc } from '@/util/auth/func'
106
- import UserContext from '@/component/Login/UserContext'
107
-
108
- export default function LiveTest() {
109
- const loginInfo = useContext(UserContext)
110
-
111
- // 部分直播需要登录后才可以播放,这是要求登录的回调
112
- const handleLogin = (item) => {
113
- // 处理必须登陆的情况
114
- window.location.href = getLoginUrl()
115
- }
116
-
117
- const handleDetailClick = (item) => {
118
- // 根据 item 决定怎么跳转详情页
119
- // 默认跳转中小学直播详情 window.open(`https://basic.smartedu.cn/publicLive/${liveId}}`)
120
- }
121
-
122
- return (
123
- <div>
124
- <PublicLiveList
125
- scopeType='e_teacher_studio' // 适用范围,如名师工作室:e_teacher_studio 机构工作室:e_inst_studio 专家工作室:e_expert_studio 精准匹配
126
- scopeId='xxx' // 适用id,如专家工作室id 精准匹配,必须有scope_type才生效
127
- containerClassName={style.container} // 容器样式
128
- uc={uc} // 登陆状态下必填
129
- loginInfo={loginInfo} // 登陆状态下必填,特别的里面的 userInfo
130
- handleLogin={handleLogin} // 用于需要强制登陆的回调,会传传入当前直播作为参数
131
- onDetailClick={handleDetailClick}
132
- />
133
- </div>
134
- )
135
- }
136
- ```
137
-
138
- ## 预生产
139
-
140
- ```js
141
- import {
142
- PublicLiveDetail,
143
- getLiveOnlineCount,
144
- PublicLiveList
145
- } from '@x-edu/live-player/dist/XEduLivePlayerPre.common'
1
+ # 直播播放器
2
+
3
+ 初版,API可能后续会大幅调整
4
+
5
+ ## Demo
6
+ ### PublicLiveDetail 直播详情页
7
+
8
+ ```jsx
9
+ import { PublicLiveDetail, getLiveOnlineCount } from '@x-edu/live-player'
10
+ import React, { useContext } from 'react'
11
+ import style from './style.module.less'
12
+ import { getLoginUrl, uc } from '@/util/auth/func'
13
+ import UserContext from '@/component/Login/UserContext'
14
+ import { sensorsTrack } from '@/util/sensorsTracking'
15
+
16
+ export default function LiveTest() {
17
+ const loginInfo = useContext(UserContext)
18
+
19
+ // 获取直播人数请在直播开始之后调用并显示
20
+ // 直播结束之后也不应显示
21
+ useEffect(() => {
22
+ const test = async () => {
23
+ const count = await getLiveOnlineCount('13aafbce-8ca2-4587-bc6e-eab183c9d5b6')
24
+ console.log(count)
25
+ }
26
+ test()
27
+ }, [])
28
+
29
+ // 部分直播需要登录后才可以播放,这是要求登录的回调
30
+ const handleLogin = () => {
31
+ window.location.href = getLoginUrl()
32
+ }
33
+ // 直播人数获取后调用,注意直播开始后才有本数据
34
+ const handleoOnlineCountChange = (currentCount) => {
35
+ console.log(currentCount)
36
+ }
37
+ // 直播状态发生变化后触发本事件
38
+ const handleStateChange = (liveInfo) => {
39
+ console.log(liveInfo)
40
+ }
41
+
42
+ // 登录后上报强师额外上报信息
43
+ const handleReportProgress = () => {}
44
+ // 登录且播放后上报强师额外上报信息
45
+ const handleReportTeacherTrain = () => {}
46
+
47
+ const handleSensors = (sensorInfo) => {
48
+ sensorsTrack(sensorInfo)
49
+ }
50
+
51
+ return (
52
+ <div
53
+ style={{
54
+ height: '800px',
55
+ width: '1200px'
56
+ }}
57
+ >
58
+ <PublicLiveDetail
59
+ className={style.live}
60
+ containerClassName={style.container}
61
+ infoClassName={style.info}
62
+ playerClassName={style.player}
63
+ descriptionClassName={style.desc}
64
+ liveId="13aafbce-8ca2-4587-bc6e-eab183c9d5b6"
65
+ appId="e5649925-441d-4a53-b525-51a2f1c4e0a8"
66
+ uc={uc}
67
+ loginInfo={loginInfo}
68
+ handleLogin={handleLogin}
69
+ onOnlineCountChange={handleoOnlineCountChange}
70
+ onStateChange={handleStateChange}
71
+ onReportProgress={handleReportProgress}
72
+ onReportTeacherTrain={handleReportTeacherTrain}
73
+ onSendSensors={handleSensors}
74
+ />
75
+ </div>
76
+ )
77
+ }
78
+ ```
79
+
80
+ ```less
81
+ .container {
82
+ width: 100%;
83
+ height: 100%
84
+ }
85
+
86
+ .live {
87
+ padding: 0 !important;
88
+ margin: 0;
89
+ }
90
+
91
+ .info {
92
+ display: none;
93
+ }
94
+
95
+ .desc {
96
+ display: none;
97
+ }
98
+ ```
99
+
100
+ ### 直播列表页
101
+ ```jsx
102
+ import { PublicLiveList } from '@x-edu/live-player'
103
+ import React, { useContext } from 'react'
104
+ import style from './style.module.less'
105
+ import { getLoginUrl, uc } from '@/util/auth/func'
106
+ import UserContext from '@/component/Login/UserContext'
107
+
108
+ export default function LiveTest() {
109
+ const loginInfo = useContext(UserContext)
110
+
111
+ // 部分直播需要登录后才可以播放,这是要求登录的回调
112
+ const handleLogin = (item) => {
113
+ // 处理必须登陆的情况
114
+ window.location.href = getLoginUrl()
115
+ }
116
+
117
+ const handleDetailClick = (item) => {
118
+ // 根据 item 决定怎么跳转详情页
119
+ // 默认跳转中小学直播详情 window.open(`https://basic.smartedu.cn/publicLive/${liveId}}`)
120
+ }
121
+
122
+ return (
123
+ <div>
124
+ <PublicLiveList
125
+ scopeType='e_teacher_studio' // 适用范围,如名师工作室:e_teacher_studio 机构工作室:e_inst_studio 专家工作室:e_expert_studio 精准匹配
126
+ scopeId='xxx' // 适用id,如专家工作室id 精准匹配,必须有scope_type才生效
127
+ containerClassName={style.container} // 容器样式
128
+ uc={uc} // 登陆状态下必填
129
+ loginInfo={loginInfo} // 登陆状态下必填,特别的里面的 userInfo
130
+ handleLogin={handleLogin} // 用于需要强制登陆的回调,会传传入当前直播作为参数
131
+ onDetailClick={handleDetailClick}
132
+ />
133
+ </div>
134
+ )
135
+ }
136
+ ```
137
+
138
+ ## 预生产
139
+
140
+ ```js
141
+ import {
142
+ PublicLiveDetail,
143
+ getLiveOnlineCount,
144
+ PublicLiveList
145
+ } from '@x-edu/live-player/dist/XEduLivePlayerPre.common'
146
146
  ```
package/babel.config.js CHANGED
@@ -1,33 +1,33 @@
1
- const config = {
2
- presets: [
3
- '@gem-mine/app'
4
- ],
5
- plugins: [
6
- '@babel/plugin-proposal-private-methods'
7
- ],
8
- ignore: [
9
- './src/page/teacherStudioAdmin/subPage/resource/subPage/edit/lib/aws-sdk-2.832.0.js',
10
- './src/vendor/fp.esm.js'
11
- ]
12
- }
13
-
14
- if (!process.env.USE_JEST) {
15
- config.plugins.push(['import', {
16
- libraryName: 'fish',
17
- libraryDirectory: 'es',
18
- style: true
19
- }, 'fish'])
20
- config.plugins.push(['import', {
21
- libraryName: '@sdp.nd/elearning-general-module',
22
- libraryDirectory: 'lib',
23
- style: true
24
- }, 'elearning-general-module'])
25
- config.plugins.push(['import', {
26
- libraryName: 'ahooks',
27
- libraryDirectory: 'es',
28
- camel2DashComponentName: false,
29
- style: false
30
- }, 'ahook'])
31
- }
32
-
33
- module.exports = config
1
+ const config = {
2
+ presets: [
3
+ '@gem-mine/app'
4
+ ],
5
+ plugins: [
6
+ '@babel/plugin-proposal-private-methods'
7
+ ],
8
+ ignore: [
9
+ './src/page/teacherStudioAdmin/subPage/resource/subPage/edit/lib/aws-sdk-2.832.0.js',
10
+ './src/vendor/fp.esm.js'
11
+ ]
12
+ }
13
+
14
+ if (!process.env.USE_JEST) {
15
+ config.plugins.push(['import', {
16
+ libraryName: 'fish',
17
+ libraryDirectory: 'es',
18
+ style: true
19
+ }, 'fish'])
20
+ config.plugins.push(['import', {
21
+ libraryName: '@sdp.nd/elearning-general-module',
22
+ libraryDirectory: 'lib',
23
+ style: true
24
+ }, 'elearning-general-module'])
25
+ config.plugins.push(['import', {
26
+ libraryName: 'ahooks',
27
+ libraryDirectory: 'es',
28
+ camel2DashComponentName: false,
29
+ style: false
30
+ }, 'ahook'])
31
+ }
32
+
33
+ module.exports = config
package/doc/develop.md CHANGED
@@ -1,24 +1,24 @@
1
- # 开发指南
2
-
3
- ## 发布
4
-
5
- 发布到 npm 官方 registry 上,注意不要发到 npm.sdp.nd 上
6
-
7
- ```bash
8
- npm publish
9
- ```
10
-
11
- 发布后需要同步版本,依次访问如下地址,进行同步
12
-
13
- - https://npmmirror.com/sync/@x-edu/live-player
14
- - http://npm.sdp.nd/sync/@x-edu/live-player
15
-
16
- 访问 https://npmmirror.com/package/%40x-edu%2Flive-player 查看版本是否正确
17
-
18
- ## 开发
19
-
20
- 代码都是由 x-edu-web 项目下的 `src\page\publicLive\detail`
21
-
22
- 直播相关逻辑代码因为是复用公开直播的,不要轻易更改,只更改强师方面外围接入的的需求
23
-
1
+ # 开发指南
2
+
3
+ ## 发布
4
+
5
+ 发布到 npm 官方 registry 上,注意不要发到 npm.sdp.nd 上
6
+
7
+ ```bash
8
+ npm publish
9
+ ```
10
+
11
+ 发布后需要同步版本,依次访问如下地址,进行同步
12
+
13
+ - https://npmmirror.com/sync/@x-edu/live-player
14
+ - http://npm.sdp.nd/sync/@x-edu/live-player
15
+
16
+ 访问 https://npmmirror.com/package/%40x-edu%2Flive-player 查看版本是否正确
17
+
18
+ ## 开发
19
+
20
+ 代码都是由 x-edu-web 项目下的 `src\page\publicLive\detail`
21
+
22
+ 直播相关逻辑代码因为是复用公开直播的,不要轻易更改,只更改强师方面外围接入的的需求
23
+
24
24
  对接人:孙仙钟