@ray-js/ray-ipc-player 2.0.18-beta-3 → 2.0.18-beta-5
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.
- package/lib/index.js +27 -8
- package/lib/index.module.less +13 -0
- package/package.json +2 -2
package/lib/index.js
CHANGED
|
@@ -4,8 +4,8 @@ import "core-js/modules/web.dom-collections.iterator.js";
|
|
|
4
4
|
import React, { useEffect, useRef, useCallback } from 'react';
|
|
5
5
|
import { useImmer } from 'use-immer';
|
|
6
6
|
import { IpcPlayer, View, CoverView } from '@ray-js/components';
|
|
7
|
-
import
|
|
8
|
-
import
|
|
7
|
+
import { setPageOrientation, usePageEvent } from '@ray-js/ray';
|
|
8
|
+
import clsx from 'clsx';
|
|
9
9
|
import locals from './i18n';
|
|
10
10
|
import Styles from './index.module.less';
|
|
11
11
|
import { IpcFailCode } from './constant';
|
|
@@ -62,6 +62,7 @@ const Player = props => {
|
|
|
62
62
|
deviceOnlineState: true,
|
|
63
63
|
initLy: false
|
|
64
64
|
});
|
|
65
|
+
const [screenType, setScreenType] = useImmer('portrait');
|
|
65
66
|
const ipcCtx = useRef(null); // ipc实例
|
|
66
67
|
if (!ipcCtx.current) {
|
|
67
68
|
var _ty;
|
|
@@ -77,6 +78,12 @@ const Player = props => {
|
|
|
77
78
|
retry();
|
|
78
79
|
}
|
|
79
80
|
}, [playState.connectState, privateState, playState.initLy]));
|
|
81
|
+
usePageEvent('onResize', sizeData => {
|
|
82
|
+
const {
|
|
83
|
+
type
|
|
84
|
+
} = sizeData;
|
|
85
|
+
setScreenType(type);
|
|
86
|
+
});
|
|
80
87
|
usePageEvent('onHide', async () => {
|
|
81
88
|
setPlayState(d => {
|
|
82
89
|
d.loadingState = true;
|
|
@@ -309,6 +316,8 @@ const Player = props => {
|
|
|
309
316
|
|
|
310
317
|
// 关闭隐私模式,重新拉流
|
|
311
318
|
|
|
319
|
+
// 退出横屏
|
|
320
|
+
|
|
312
321
|
return /*#__PURE__*/React.createElement(View, {
|
|
313
322
|
className: Styles.ipc_player,
|
|
314
323
|
onClick: handlePlayerClick
|
|
@@ -369,7 +378,7 @@ const Player = props => {
|
|
|
369
378
|
style: {
|
|
370
379
|
borderRadius: "".concat(borderRadius)
|
|
371
380
|
},
|
|
372
|
-
className:
|
|
381
|
+
className: clsx(Styles.load_box, Styles.bg_center, !playState.loadingState && Styles.hide)
|
|
373
382
|
}, /*#__PURE__*/React.createElement(View, {
|
|
374
383
|
className: Styles.load_icon
|
|
375
384
|
}), /*#__PURE__*/React.createElement(View, {
|
|
@@ -378,7 +387,7 @@ const Player = props => {
|
|
|
378
387
|
style: {
|
|
379
388
|
borderRadius: "".concat(borderRadius)
|
|
380
389
|
},
|
|
381
|
-
className:
|
|
390
|
+
className: clsx(Styles.bg_center, Styles.state_label, !playState.errorState && Styles.hide)
|
|
382
391
|
}, privateState ? /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(View, {
|
|
383
392
|
className: Styles.device_sleep
|
|
384
393
|
}, locals.getLang('ipc_player_device_sleep')), /*#__PURE__*/React.createElement(View, {
|
|
@@ -396,16 +405,26 @@ const Player = props => {
|
|
|
396
405
|
textAlign: 'center'
|
|
397
406
|
}
|
|
398
407
|
}, /*#__PURE__*/React.createElement(View, {
|
|
399
|
-
className:
|
|
408
|
+
className: clsx(Styles.iconfont, Styles.icon_tishi, !playState.deviceOnlineState && Styles.hide)
|
|
400
409
|
}), /*#__PURE__*/React.createElement(View, {
|
|
401
410
|
className: Styles.err_msg
|
|
402
411
|
}, /*#__PURE__*/React.createElement(View, {
|
|
403
|
-
className:
|
|
412
|
+
className: clsx(Styles.msg, Styles.ellipsis)
|
|
404
413
|
}, playState.errorMsg), /*#__PURE__*/React.createElement(View
|
|
405
414
|
// @ts-ignore
|
|
406
415
|
, {
|
|
407
416
|
onClick: retry,
|
|
408
|
-
className:
|
|
409
|
-
}, locals.getLang('ipc_player_retry'))))))
|
|
417
|
+
className: clsx(Styles.retry, !playState.deviceOnlineState && Styles.hide)
|
|
418
|
+
}, locals.getLang('ipc_player_retry'))))), screenType === 'landscape' && (playState.loadingState || playState.errorState) && /*#__PURE__*/React.createElement(CoverView, {
|
|
419
|
+
className: clsx(Styles.load_full_back_container),
|
|
420
|
+
onClick: () => {
|
|
421
|
+
setPageOrientation({
|
|
422
|
+
pageOrientation: 'portrait',
|
|
423
|
+
success: () => {
|
|
424
|
+
setScreenType('portrait');
|
|
425
|
+
}
|
|
426
|
+
});
|
|
427
|
+
}
|
|
428
|
+
}));
|
|
410
429
|
};
|
|
411
430
|
export default Player;
|
package/lib/index.module.less
CHANGED
|
@@ -129,4 +129,17 @@
|
|
|
129
129
|
.err_msg {
|
|
130
130
|
text-align: center;
|
|
131
131
|
width: 100%;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
.load_full_back_container {
|
|
135
|
+
position: absolute;
|
|
136
|
+
left: 25px;
|
|
137
|
+
top: 16px;
|
|
138
|
+
width: 24px;
|
|
139
|
+
height: 24px;
|
|
140
|
+
z-index: 350;
|
|
141
|
+
background: #ffffff;
|
|
142
|
+
-webkit-mask-image: url('data:image/png;base64,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');
|
|
143
|
+
-webkit-mask-size: cover;
|
|
144
|
+
-webkit-mask-repeat: no-repeat;
|
|
132
145
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ray-js/ray-ipc-player",
|
|
3
|
-
"version": "2.0.18-beta-
|
|
3
|
+
"version": "2.0.18-beta-5",
|
|
4
4
|
"description": "ray小程序播放器",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"tuya-miniapp",
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
},
|
|
37
37
|
"peerDependencies": {},
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"
|
|
39
|
+
"clsx": "^1.2.1",
|
|
40
40
|
"immer": "^9.0.15",
|
|
41
41
|
"use-immer": "^0.5.1",
|
|
42
42
|
"@ray-js/panel-sdk": "^1.13.1"
|