@ray-js/ipc-player-integration 0.0.29-beta.7 → 0.0.29-beta.9

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/ui/ui.js CHANGED
@@ -297,7 +297,7 @@ export const IPCPlayerIntegration = /*#__PURE__*/React.memo(props => {
297
297
 
298
298
  // 横屏 ptz 靠右展示
299
299
  updatePlayerWidgetProps(instance, 'absolute', moveablePtzControlId, {
300
- positionLeft: systemInfo.current.screenHeight - 32 - 250
300
+ positionLeft: getSystemInfoSync().screenWidth - 100 - 250
301
301
  });
302
302
  break;
303
303
  default:
@@ -331,6 +331,9 @@ export const IPCPlayerIntegration = /*#__PURE__*/React.memo(props => {
331
331
  }, [instance, ptzStatus]);
332
332
  useEffect(() => {
333
333
  if (!instance.multiCameraCtx.isSupport) return;
334
+ if (!ptzStatus || screenMode !== MultiCameraScreenMode.full) {
335
+ instance.hideContent('absolute', ptzMoveableTipId);
336
+ }
334
337
 
335
338
  // ptz 激活状态下,需要根据组件隐藏状态来决定是否展示 moveablePtzControl
336
339
  if (ptzStatus) {
@@ -342,11 +345,11 @@ export const IPCPlayerIntegration = /*#__PURE__*/React.memo(props => {
342
345
 
343
346
  // ptz 提示
344
347
  const storage = new Storage(devId);
345
- if (!storage.getSync(ptzMoveableTipId) && selectedLenInfo.supportPTZ) {
348
+ if (!storage.getSync(ptzMoveableTipId) && selectedLenInfo.supportPTZ && screenMode === MultiCameraScreenMode.full) {
346
349
  instance.showContent('absolute', ptzMoveableTipId);
347
350
  }
348
351
  }
349
- }, [instance, ptzStatus, selectedLenInfo, componentHideState]);
352
+ }, [instance, ptzStatus, selectedLenInfo, componentHideState, screenMode]);
350
353
 
351
354
  /* ---------------------------------多目相关副作用统一处理结束----------------------------------------- */
352
355
 
@@ -805,7 +808,7 @@ export const IPCPlayerIntegration = /*#__PURE__*/React.memo(props => {
805
808
  style: {
806
809
  height: screenType === 'vertical' ? '48px' : '72px'
807
810
  }
808
- }, playerReady && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(BottomLeftContent, {
811
+ }, /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(BottomLeftContent, {
809
812
  ctx: instance
810
813
  }, renderBottomLeftContent), /*#__PURE__*/React.createElement(BottomRightContent, {
811
814
  ctx: instance
package/lib/ui/ui.less CHANGED
@@ -12,6 +12,7 @@
12
12
  height: 60px;
13
13
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%);
14
14
  }
15
+
15
16
  // 底部长条
16
17
  .ipc-player-bottom-content {
17
18
  position: absolute;
@@ -24,6 +25,21 @@
24
25
  background: linear-gradient(360deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%);
25
26
  }
26
27
 
28
+ .ipc-player-bottom-content-full {
29
+ @media (prefers-color-scheme: dark) {
30
+ background: #000;
31
+ }
32
+
33
+ @media (prefers-color-scheme: light) {
34
+ background: #fff;
35
+ --iconColor: #000;
36
+
37
+ .ipc-player-plugin-resolution {
38
+ background-color: rgba(0, 0, 0, 0.2);
39
+ }
40
+ }
41
+ }
42
+
27
43
  // 顶部整条内容隐藏
28
44
  .ipc-player-top-content-show {
29
45
  transform: translate(0, 0);
@@ -53,6 +69,7 @@
53
69
  top: 0;
54
70
  z-index: 100;
55
71
  }
72
+
56
73
  // 右上角容器样式
57
74
  .ipc-player-top-right-content-wrap {
58
75
  position: absolute;
@@ -60,6 +77,7 @@
60
77
  top: 0;
61
78
  z-index: 100;
62
79
  }
80
+
63
81
  // 左下角容器样式
64
82
  .ipc-player-bottom-left-content-wrap {
65
83
  position: absolute;
@@ -69,6 +87,7 @@
69
87
  display: flex;
70
88
  flex-direction: row;
71
89
  }
90
+
72
91
  // 右下角容器样式
73
92
  .ipc-player-bottom-right-content-wrap {
74
93
  position: absolute;
@@ -159,12 +178,15 @@
159
178
  .top-left-item-container {
160
179
  padding: 0 8px;
161
180
  }
181
+
162
182
  .top-left-item-container:first-of-type {
163
183
  padding: 0 8px 0 16px;
164
184
  }
185
+
165
186
  .top-left-item-container:last-of-type {
166
187
  padding: 0 0 0 8px;
167
188
  }
189
+
168
190
  .top-left-item-container:only-of-type {
169
191
  padding: 0 0 0 16px;
170
192
  }
@@ -173,12 +195,15 @@
173
195
  .top-right-item-container {
174
196
  padding: 0 8px;
175
197
  }
198
+
176
199
  .top-right-item-container:first-of-type {
177
200
  padding: 0 8px 0 0;
178
201
  }
202
+
179
203
  .top-right-item-container:last-of-type {
180
204
  padding: 0 16px 0 8px;
181
205
  }
206
+
182
207
  .top-right-item-container:only-of-type {
183
208
  padding: 0 16px 0 0;
184
209
  }
@@ -194,9 +219,11 @@
194
219
  .bottom-left-item-container:first-of-type {
195
220
  padding: 0 12px 0 16px;
196
221
  }
222
+
197
223
  .bottom-left-item-container:last-of-type {
198
224
  padding: 0 0 0 12px;
199
225
  }
226
+
200
227
  .bottom-left-item-container:only-of-type {
201
228
  padding: 0 0 0 16px;
202
229
  }
@@ -209,9 +236,11 @@
209
236
  .bottom-left-item-full-container:first-of-type {
210
237
  padding: 0 24px 0 16px !important;
211
238
  }
239
+
212
240
  .bottom-left-item-full-container:last-of-type {
213
241
  padding: 0 0 0 24px !important;
214
242
  }
243
+
215
244
  .bottom-left-item-full-container:only-of-type {
216
245
  padding: 0 0 0 16px !important;
217
246
  }
@@ -227,9 +256,11 @@
227
256
  .bottom-right-item-container:first-of-type {
228
257
  padding: 0 12px 0 0;
229
258
  }
259
+
230
260
  .bottom-right-item-container:last-of-type {
231
261
  padding: 0 16px 0 12px;
232
262
  }
263
+
233
264
  .bottom-right-item-container:only-of-type {
234
265
  padding: 0 16px 0 0;
235
266
  }
@@ -247,6 +278,7 @@
247
278
  from {
248
279
  transform: translate(calc(100vw), 0);
249
280
  }
281
+
250
282
  to {
251
283
  transform: translate(0, 0);
252
284
  }
@@ -259,13 +291,10 @@
259
291
  animation: absolute-move-in-right-animation @animation-time ease-in-out;
260
292
  transition: transform @animation-time ease-in, opacity @animation-time ease-in,
261
293
  width @animation-time ease-in;
294
+
262
295
  &.ipc-plugin-absolute-move-in-right-hide {
263
296
  transform: translate(var(--translate-length), 0);
264
297
  opacity: 0;
265
298
  width: 0;
266
299
  }
267
300
  }
268
-
269
- .ipc-player-bottom-content-full {
270
- background-color: #000 !important;
271
- }
@@ -74,7 +74,7 @@
74
74
 
75
75
  &.@{prefix}-step2 {
76
76
  right: 10px;
77
- bottom: 91px;
77
+ bottom: 57px;
78
78
  }
79
79
 
80
80
  &.@{prefix}-ptz-tip {
@@ -171,7 +171,7 @@
171
171
 
172
172
  &.@{prefix}-step2 {
173
173
  right: 130px;
174
- bottom: 110px;
174
+ bottom: 76px;
175
175
  }
176
176
 
177
177
  &.@{prefix}-ptz-tip {
@@ -198,7 +198,7 @@
198
198
 
199
199
  &.@{prefix}-step2 {
200
200
  right: 130px;
201
- bottom: 50px;
201
+ bottom: 16px;
202
202
  }
203
203
 
204
204
  &.@{prefix}-ptz-tip {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ray-js/ipc-player-integration",
3
- "version": "0.0.29-beta.7",
3
+ "version": "0.0.29-beta.9",
4
4
  "description": "IPC 融合播放器",
5
5
  "main": "lib/index",
6
6
  "files": [
@@ -37,7 +37,7 @@
37
37
  "dependencies": {
38
38
  "@ray-js/direction-control": "^0.0.8",
39
39
  "@ray-js/ipc-ptz-zoom": "0.0.3-beta-2",
40
- "@ray-js/ray-ipc-player": "2.1.0-beta.1",
40
+ "@ray-js/ray-ipc-player": "2.1.0-beta.2",
41
41
  "@ray-js/ray-ipc-utils": "1.1.13-beta.1",
42
42
  "@ray-js/svg": "0.2.0",
43
43
  "clsx": "^1.2.1",