@ray-js/ipc-player-integration 0.0.29-beta.5 → 0.0.29-beta.6

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 (57) hide show
  1. package/lib/ctx/ctx.composition.js +4 -1
  2. package/lib/ctx/ctx.js +1 -0
  3. package/lib/ctx/multiCameraCtx.d.ts +4 -4
  4. package/lib/ctx/multiCameraCtx.js +1 -0
  5. package/lib/hooks/index.d.ts +1 -0
  6. package/lib/hooks/index.js +1 -0
  7. package/lib/hooks/useSignal4G/index.d.ts +2 -0
  8. package/lib/hooks/useSignal4G/index.js +35 -0
  9. package/lib/ports.output.d.ts +4 -0
  10. package/lib/ports.output.js +3 -1
  11. package/lib/res/index.d.ts +1 -0
  12. package/lib/res/index.js +21 -1
  13. package/lib/res/svg/signalFour0.svg +1 -0
  14. package/lib/res/svg/signalFour1.svg +1 -0
  15. package/lib/res/svg/signalFour2.svg +1 -0
  16. package/lib/res/svg/signalFour3.svg +1 -0
  17. package/lib/res/svg/signalFour4.svg +1 -0
  18. package/lib/res/svg/signalThree0.svg +1 -0
  19. package/lib/res/svg/signalThree1.svg +1 -0
  20. package/lib/res/svg/signalThree2.svg +1 -0
  21. package/lib/res/svg/signalThree3.svg +1 -0
  22. package/lib/svg-module.d.ts +4 -0
  23. package/lib/ui/constant.d.ts +20 -0
  24. package/lib/ui/constant.js +21 -0
  25. package/lib/ui/index.d.ts +2 -0
  26. package/lib/ui/index.js +3 -1
  27. package/lib/ui/ui.d.ts +2 -0
  28. package/lib/ui/ui.js +5 -0
  29. package/lib/ui/widgetClick.d.ts +2 -0
  30. package/lib/ui/widgetClick.js +2 -0
  31. package/lib/utils/storage/index.js +1 -0
  32. package/lib/widgets/battery/battery.composition.d.ts +8 -8
  33. package/lib/widgets/fullScreen/fullScreen.js +4 -1
  34. package/lib/widgets/fullScreen/fullTravelRouteControl.js +4 -1
  35. package/lib/widgets/fullScreen/fullVoiceIntercom.js +4 -1
  36. package/lib/widgets/fullSmallIntercom/fullSmallIntercom.js +4 -1
  37. package/lib/widgets/index.d.ts +1 -0
  38. package/lib/widgets/index.js +1 -0
  39. package/lib/widgets/moveInteractiveControl/controlButton.js +4 -1
  40. package/lib/widgets/moveInteractiveControl/moveInteractiveControl.js +7 -1
  41. package/lib/widgets/multiCamera/moveablePtzControl.js +1 -0
  42. package/lib/widgets/muted/muted.js +12 -11
  43. package/lib/widgets/ptz/ptz.js +4 -1
  44. package/lib/widgets/ptzControlTip/ptzControlTip.js +4 -1
  45. package/lib/widgets/recordVideo/recordVideo.js +6 -1
  46. package/lib/widgets/resolution/fullResolutionControl.js +10 -2
  47. package/lib/widgets/resolution/resolution.js +4 -1
  48. package/lib/widgets/screenshot/screenshot.js +6 -1
  49. package/lib/widgets/signal4G/index.d.ts +1 -0
  50. package/lib/widgets/signal4G/index.js +1 -0
  51. package/lib/widgets/signal4G/signal4G.d.ts +8 -0
  52. package/lib/widgets/signal4G/signal4G.js +28 -0
  53. package/lib/widgets/signal4G/signal4G.less +15 -0
  54. package/lib/widgets/verticalSmallIntercom/verticalSmallIntercom.js +4 -1
  55. package/lib/widgets/voiceIntercom/voiceIntercom.d.ts +4 -4
  56. package/lib/widgets/voiceIntercom/voiceIntercom.js +6 -1
  57. package/package.json +5 -6
@@ -4,7 +4,7 @@ const _excluded = ["title", "duration"];
4
4
  import { getCameraConfigInfo } from '@ray-js/ray-ipc-utils';
5
5
  import { IntercomMode, MuteMode, ClarityType } from '@ray-js/ray-ipc-utils/lib/interface';
6
6
  import { createUseCtx } from './ctx';
7
- import { FullSmallIntercom, VerticalSmallIntercom, BatteryFull, Battery, Screenshot, TempHumidity, RecordVideo, FullScreen, VideoBitKBP, Muted, Resolution, Ptz } from '../widgets';
7
+ import { FullSmallIntercom, VerticalSmallIntercom, BatteryFull, Battery, Screenshot, TempHumidity, Signal4G, RecordVideo, FullScreen, VideoBitKBP, Muted, Resolution, Ptz } from '../widgets';
8
8
  import { authorizeStatus } from '../utils/authorize';
9
9
  const createPlayContext = ty.createIpcPlayerContext;
10
10
  // const createPlayContext = () => null;
@@ -16,6 +16,9 @@ export const defaultTopLeftContent = [{
16
16
  export const defaultTopRightContent = [{
17
17
  id: 'BatteryFull',
18
18
  content: BatteryFull
19
+ }, {
20
+ id: 'Signal4G',
21
+ content: Signal4G
19
22
  }, {
20
23
  id: 'TempHumidity',
21
24
  content: TempHumidity
package/lib/ctx/ctx.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
+ import "core-js/modules/es.json.stringify.js";
2
3
  import "core-js/modules/esnext.iterator.constructor.js";
3
4
  import "core-js/modules/esnext.iterator.filter.js";
4
5
  import "core-js/modules/esnext.iterator.find.js";
@@ -53,11 +53,11 @@ export declare const useMultiCameraCtx: (props: Props) => {
53
53
  /**
54
54
  * 设置布局样式
55
55
  */
56
- setLayoutStyle: (style: MultiCameraLayoutStyle) => void;
56
+ setLayoutStyle: (this: unknown, style: MultiCameraLayoutStyle) => void;
57
57
  /**
58
58
  * 设置屏幕模式
59
59
  */
60
- setScreenMode: (mode: MultiCameraScreenMode) => void;
60
+ setScreenMode: (this: unknown, mode: MultiCameraScreenMode) => void;
61
61
  /**
62
62
  * 设置ptz状态
63
63
  */
@@ -65,7 +65,7 @@ export declare const useMultiCameraCtx: (props: Props) => {
65
65
  /**
66
66
  * 显示/隐藏镜头名称
67
67
  */
68
- showLenNames: (value: boolean) => void;
68
+ showLenNames: (this: unknown, value: boolean) => void;
69
69
  /**
70
70
  * 设置下一个布局样式
71
71
  */
@@ -73,6 +73,6 @@ export declare const useMultiCameraCtx: (props: Props) => {
73
73
  /**
74
74
  * 获取下一个布局样式
75
75
  */
76
- getNextLayoutStyle: () => Promise<MultiCameraLayoutStyle>;
76
+ getNextLayoutStyle: (this: unknown) => Promise<MultiCameraLayoutStyle>;
77
77
  };
78
78
  export {};
@@ -1,3 +1,4 @@
1
+ import "core-js/modules/es.json.stringify.js";
1
2
  import { getDpIdByCode, publishDps } from '@ray-js/ray-ipc-utils';
2
3
  import { useMemoizedFn } from 'ahooks';
3
4
  import { useMemo, useRef } from 'react';
@@ -1,6 +1,7 @@
1
1
  export * from './useBattery';
2
2
  export * from './useHumidity';
3
3
  export * from './useTemperature';
4
+ export * from './useSignal4G';
4
5
  export * from './useDpState';
5
6
  export * from './useMemoizedFn';
6
7
  export * from './usePtz';
@@ -1,6 +1,7 @@
1
1
  export * from './useBattery';
2
2
  export * from './useHumidity';
3
3
  export * from './useTemperature';
4
+ export * from './useSignal4G';
4
5
  export * from './useDpState';
5
6
  export * from './useMemoizedFn';
6
7
  export * from './usePtz';
@@ -0,0 +1,2 @@
1
+ import type { UseSignal4G } from '../../ports.output';
2
+ export declare const useSignal4G: UseSignal4G;
@@ -0,0 +1,35 @@
1
+ import { useCallback, useMemo } from 'react';
2
+ import { useDpState } from '../useDpState';
3
+ const CELLULAR_SIGNAL_DP_CODE = 'ipc_cellular_signal';
4
+ export const useSignal4G = devId => {
5
+ const [dpState, dpSchema] = useDpState({
6
+ devId,
7
+ dpCodes: [CELLULAR_SIGNAL_DP_CODE]
8
+ });
9
+
10
+ /**
11
+ * 获取信号图片key
12
+ */
13
+
14
+ const getSignalKey = useCallback(dpValue => {
15
+ var _dpSchema$CELLULAR_SI;
16
+ const range = (_dpSchema$CELLULAR_SI = dpSchema[CELLULAR_SIGNAL_DP_CODE]) === null || _dpSchema$CELLULAR_SI === void 0 || (_dpSchema$CELLULAR_SI = _dpSchema$CELLULAR_SI.property) === null || _dpSchema$CELLULAR_SI === void 0 ? void 0 : _dpSchema$CELLULAR_SI.range;
17
+ if (range.length <= 4) {
18
+ return `signalThree${dpValue}`;
19
+ }
20
+ return `signalFour${dpValue}`;
21
+ }, [dpSchema]);
22
+ const signalInfo = useMemo(() => {
23
+ if (dpState[CELLULAR_SIGNAL_DP_CODE] !== undefined) {
24
+ return {
25
+ dpValue: dpState[CELLULAR_SIGNAL_DP_CODE],
26
+ signalKey: getSignalKey(dpState[CELLULAR_SIGNAL_DP_CODE])
27
+ };
28
+ }
29
+ return {
30
+ dpValue: '',
31
+ signalKey: ''
32
+ };
33
+ }, [dpState]);
34
+ return signalInfo;
35
+ };
@@ -6,6 +6,10 @@ export type UseBattery = (devId: string) => {
6
6
  export type UsePtz = (devId: string) => boolean;
7
7
  export type UseTemperature = (devId: string) => number;
8
8
  export type UseHumidity = () => number;
9
+ export type UseSignal4G = (devId: string) => {
10
+ dpValue: string;
11
+ signalKey: string;
12
+ };
9
13
  export type Toast = (options: {
10
14
  title: string;
11
15
  duration?: number;
@@ -6,4 +6,6 @@ export { IntercomMode } from '@ray-js/ray-ipc-utils/lib/interface';
6
6
 
7
7
  // plugin 获取温度
8
8
 
9
- // plugin 获取湿度
9
+ // plugin 获取湿度
10
+
11
+ // plugin 获取信号强度
@@ -1,2 +1,3 @@
1
1
  import playerPtzControlTip from './player_ptz_control_tip.png';
2
2
  export { playerPtzControlTip };
3
+ export declare const signalSvgMap: Record<string, string>;
package/lib/res/index.js CHANGED
@@ -1,2 +1,22 @@
1
1
  import playerPtzControlTip from './player_ptz_control_tip.png';
2
- export { playerPtzControlTip };
2
+ import signalFour0 from './svg/signalFour0.svg';
3
+ import signalFour1 from './svg/signalFour1.svg';
4
+ import signalFour2 from './svg/signalFour2.svg';
5
+ import signalFour3 from './svg/signalFour3.svg';
6
+ import signalFour4 from './svg/signalFour4.svg';
7
+ import signalThree0 from './svg/signalThree0.svg';
8
+ import signalThree1 from './svg/signalThree1.svg';
9
+ import signalThree2 from './svg/signalThree2.svg';
10
+ import signalThree3 from './svg/signalThree3.svg';
11
+ export { playerPtzControlTip };
12
+ export const signalSvgMap = {
13
+ signalFour0,
14
+ signalFour1,
15
+ signalFour2,
16
+ signalFour3,
17
+ signalFour4,
18
+ signalThree0,
19
+ signalThree1,
20
+ signalThree2,
21
+ signalThree3
22
+ };
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="20" height="20" viewBox="0 0 20 20"><g><g></g><g><path d="M5,14.50000006L5,15.5C5,15.7761424,4.7761423999999995,16,4.5,16L3.5,16C3.22385764,16,3,15.7761424,3,15.5L3,14.5C3,14.22385764,3.22385764,14,3.50000006,14L4.5,14C4.7761423999999995,14,5,14.22385764,5,14.50000006" fill-rule="evenodd" fill="#FFFFFF" fill-opacity="0.30000001192092896"/></g><g><path d="M9,11.50000006L9,15.5C9,15.7761426,8.7761424,16,8.5,16L7.5,16C7.22385764,16,7,15.7761426,7,15.5L7,11.50000012C7,11.22385764,7.22385764,11,7.50000006,11L8.5,11C8.7761424,11,9,11.22385764,9,11.50000006" fill-rule="evenodd" fill="#FFFFFF" fill-opacity="0.30000001192092896"/></g><g><path d="M13,7.50000006L13,15.5C13,15.7761421,12.7761424,16,12.5,16L11.5,16C11.22385764,16,11,15.7761421,11,15.5L11,7.50000024C11,7.22385764,11.22385764,7,11.50000006,7L12.5,7C12.7761424,7,13,7.22385764,13,7.50000006" fill-rule="evenodd" fill="#FFFFFF" fill-opacity="0.30000001192092896"/></g><g><path d="M17,4.50000006L17,15.5C17,15.776142,16.7761424,16,16.5,16L15.5,16C15.22385764,16,15,15.776142,15,15.5L15,4.50000024C15,4.22385764,15.22385764,4,15.50000006,4L16.5,4C16.7761424,4,17,4.22385764,17,4.50000006" fill-rule="evenodd" fill="#FFFFFF" fill-opacity="0.30000001192092896"/></g><g><path d="M4.6215529,4.2073684L3.5606198,3.14643526C3.3653573999999997,2.951172829,3.0487751999999997,2.951173306,2.85351324,3.14643526L2.14640617,3.85354209C1.951144218,4.0488043000000005,1.951143742,4.3653865,2.14640617,4.5606489L3.2073393,5.621582L2.14661515,6.6823063000000005C1.951352954,6.877568699999999,1.951352954,7.1941509,2.14661515,7.3894129L2.85372198,8.0965199C3.0489842,8.2917819,3.3655666,8.2917819,3.5608288999999997,8.0965195L4.6215527000000005,7.0357957L5.6819401,8.096182800000001C5.8772023,8.2914448,6.1937847,8.2914448,6.3890467,8.096182800000001L7.0961537,7.3890758C7.2914157,7.1938138,7.2914157,6.8772310999999995,7.0961533,6.6819689L6.0357661,5.6215817999999995L7.0963621,4.5609856C7.2916245,4.3657231,7.2916245,4.0491409,7.0963626,3.8538789700000002L6.3892555,3.14677238C6.1939936,2.951509953,5.8774109,2.951509476,5.6821487,3.14677238L4.6215529,4.2073684Z" fill-rule="evenodd" fill="#FFFFFF" fill-opacity="0.30000001192092896"/></g></g></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="20" height="20" viewBox="0 0 20 20"><g><g></g><g><path d="M5,14.50000006L5,15.5C5,15.7761424,4.7761423999999995,16,4.5,16L3.5,16C3.22385764,16,3,15.7761424,3,15.5L3,14.5C3,14.22385764,3.22385764,14,3.50000006,14L4.5,14C4.7761423999999995,14,5,14.22385764,5,14.50000006" fill-rule="evenodd" fill="#F04C4C" fill-opacity="1"/></g><g><path d="M9,11.50000006L9,15.5C9,15.7761426,8.7761424,16,8.5,16L7.5,16C7.22385764,16,7,15.7761426,7,15.5L7,11.50000012C7,11.22385764,7.22385764,11,7.50000006,11L8.5,11C8.7761424,11,9,11.22385764,9,11.50000006" fill-rule="evenodd" fill="#F04C4C" fill-opacity="0.30000001192092896"/></g><g><path d="M13,7.50000006L13,15.5C13,15.7761421,12.7761424,16,12.5,16L11.5,16C11.22385764,16,11,15.7761421,11,15.5L11,7.50000024C11,7.22385764,11.22385764,7,11.50000006,7L12.5,7C12.7761424,7,13,7.22385764,13,7.50000006" fill-rule="evenodd" fill="#F04C4C" fill-opacity="0.30000001192092896"/></g><g><path d="M17,4.50000006L17,15.5C17,15.776142,16.7761424,16,16.5,16L15.5,16C15.22385764,16,15,15.776142,15,15.5L15,4.50000024C15,4.22385764,15.22385764,4,15.50000006,4L16.5,4C16.7761424,4,17,4.22385764,17,4.50000006" fill-rule="evenodd" fill="#F04C4C" fill-opacity="0.30000001192092896"/></g><g><g><path d="M6.676171770367432,7.75C6.449505070367431,7.75,6.233671770367431,7.71,6.028671770367431,7.6300001C5.823671700367432,7.548333400000001,5.642005200367432,7.4283333,5.4836719003674315,7.27C5.3270052403674315,7.1116667,5.202838630367432,6.9158337,5.1111719603674315,6.6825004C5.021171949367432,6.449167,4.976171970367432,6.1799998,4.976171970367432,5.8749999C4.976171970367432,5.4766665,5.052005261367432,5.1383333,5.203671930367432,4.86000001C5.357005300367431,4.58000004,5.562005040367431,4.36666667,5.818671700367432,4.21999991C6.077005170367432,4.073333338,6.362838470367432,4,6.676171770367432,4C7.139505170367432,4,7.503671870367432,4.10749996,7.768671970367432,4.32249987C8.033672070367432,4.53749996,8.211172070367432,4.84166682,8.30117227036743,5.235C8.30117227036743,5.235,7.606172070367432,5.3349999,7.606172070367432,5.3349999C7.541172070367431,5.125,7.434505270367431,4.95749992,7.286171870367432,4.83249986C7.139505170367432,4.70583326,6.951171870367432,4.64166647,6.7211718703674315,4.63999975C6.492838670367432,4.63666648,6.302838770367432,4.68583316,6.151172170367431,4.78749979C5.999505470367431,4.88916641,5.885338600367431,5.0333331999999995,5.808671950367431,5.2199998999999995C5.733671960367432,5.4066665,5.696172000367431,5.6249998,5.696172000367431,5.8749999C5.696172000367431,6.124999799999999,5.733671960367432,6.3416667,5.808671950367431,6.5250001C5.885338600367431,6.7083335,5.999505470367431,6.8508337,6.151172170367431,6.9525003000000005C6.302838770367432,7.054167,6.492838670367432,7.1066668,6.7211718703674315,7.110000100000001C6.876171870367432,7.1133334999999995,7.016171970367432,7.0866668,7.141171970367432,7.0300002C7.267838670367432,6.9733336,7.374505470367431,6.884167,7.461172070367432,6.7625003C7.547838970367431,6.640833600000001,7.609505370367431,6.485000100000001,7.646172070367432,6.2950001C7.646172070367432,6.2950001,7.076171870367432,6.2950001,7.076171870367432,6.2950001C7.076171870367432,6.2950001,7.076171870367432,5.7700001,7.076171870367432,5.7700001C7.076171870367432,5.7700001,8.371171970367431,5.7700001,8.371171970367431,5.7700001C8.374505270367433,5.7916667,8.377005370367431,5.8300002,8.378672170367432,5.8850001C8.380338670367433,5.9400001,8.381172170367432,5.9716666,8.381172170367432,5.9799999C8.381172170367432,6.3249998000000005,8.311171970367432,6.6308334,8.17117217036743,6.8975C8.031172270367431,7.1641667,7.833672070367432,7.3733335,7.578671970367432,7.5250001C7.323671770367431,7.6750001999999995,7.022838570367432,7.75,6.676171770367432,7.75Z" fill="#F04C4C" fill-opacity="1"/></g><g><path d="M3.5650001,7.675000147683716C3.5650001,7.675000147683716,3.5650001,7.1150002476837155,3.5650001,7.1150002476837155C3.5650001,7.1150002476837155,2,7.1150002476837155,2,7.1150002476837155C2,7.1150002476837155,2,6.480000247683716,2,6.480000247683716C2,6.480000247683716,3.135,4.075000047683716,3.135,4.075000047683716C3.135,4.075000047683716,3.9150001999999997,4.075000047683716,3.9150001999999997,4.075000047683716C3.9150001999999997,4.075000047683716,2.78000009,6.480000247683716,2.78000009,6.480000247683716C2.78000009,6.480000247683716,3.5650001,6.480000247683716,3.5650001,6.480000247683716C3.5650001,6.480000247683716,3.5650001,5.579999947683715,3.5650001,5.579999947683715C3.5650001,5.579999947683715,4.2550001,5.579999947683715,4.2550001,5.579999947683715C4.2550001,5.579999947683715,4.2550001,6.480000247683716,4.2550001,6.480000247683716C4.2550001,6.480000247683716,4.575,6.480000247683716,4.575,6.480000247683716C4.575,6.480000247683716,4.575,7.1150002476837155,4.575,7.1150002476837155C4.575,7.1150002476837155,4.2550001,7.1150002476837155,4.2550001,7.1150002476837155C4.2550001,7.1150002476837155,4.2550001,7.675000147683716,4.2550001,7.675000147683716C4.2550001,7.675000147683716,3.5650001,7.675000147683716,3.5650001,7.675000147683716Z" fill="#F04C4C" fill-opacity="1"/></g></g></g></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="20" height="20" viewBox="0 0 20 20"><g><g></g><g><path d="M5,14.50000006L5,15.5C5,15.7761424,4.7761423999999995,16,4.5,16L3.5,16C3.22385764,16,3,15.7761424,3,15.5L3,14.5C3,14.22385764,3.22385764,14,3.50000006,14L4.5,14C4.7761423999999995,14,5,14.22385764,5,14.50000006" fill-rule="evenodd" fill="#FFA000" fill-opacity="1"/></g><g><path d="M9,11.50000006L9,15.5C9,15.7761426,8.7761424,16,8.5,16L7.5,16C7.22385764,16,7,15.7761426,7,15.5L7,11.50000012C7,11.22385764,7.22385764,11,7.50000006,11L8.5,11C8.7761424,11,9,11.22385764,9,11.50000006" fill-rule="evenodd" fill="#FFA000" fill-opacity="1"/></g><g><path d="M13,7.50000006L13,15.5C13,15.7761421,12.7761424,16,12.5,16L11.5,16C11.22385764,16,11,15.7761421,11,15.5L11,7.50000024C11,7.22385764,11.22385764,7,11.50000006,7L12.5,7C12.7761424,7,13,7.22385764,13,7.50000006" fill-rule="evenodd" fill="#FFA000" fill-opacity="0.30000001192092896"/></g><g><path d="M17,4.50000006L17,15.5C17,15.776142,16.7761424,16,16.5,16L15.5,16C15.22385764,16,15,15.776142,15,15.5L15,4.50000024C15,4.22385764,15.22385764,4,15.50000006,4L16.5,4C16.7761424,4,17,4.22385764,17,4.50000006" fill-rule="evenodd" fill="#FFA000" fill-opacity="0.30000001192092896"/></g><g><g><path d="M6.676171770367432,7.75C6.449505070367431,7.75,6.233671770367431,7.71,6.028671770367431,7.6300001C5.823671700367432,7.548333400000001,5.642005200367432,7.4283333,5.4836719003674315,7.27C5.3270052403674315,7.1116667,5.202838630367432,6.9158337,5.1111719603674315,6.6825004C5.021171949367432,6.449167,4.976171970367432,6.1799998,4.976171970367432,5.8749999C4.976171970367432,5.4766665,5.052005261367432,5.1383333,5.203671930367432,4.86000001C5.357005300367431,4.58000004,5.562005040367431,4.36666667,5.818671700367432,4.21999991C6.077005170367432,4.073333338,6.362838470367432,4,6.676171770367432,4C7.139505170367432,4,7.503671870367432,4.10749996,7.768671970367432,4.32249987C8.033672070367432,4.53749996,8.211172070367432,4.84166682,8.30117227036743,5.235C8.30117227036743,5.235,7.606172070367432,5.3349999,7.606172070367432,5.3349999C7.541172070367431,5.125,7.434505270367431,4.95749992,7.286171870367432,4.83249986C7.139505170367432,4.70583326,6.951171870367432,4.64166647,6.7211718703674315,4.63999975C6.492838670367432,4.63666648,6.302838770367432,4.68583316,6.151172170367431,4.78749979C5.999505470367431,4.88916641,5.885338600367431,5.0333331999999995,5.808671950367431,5.2199998999999995C5.733671960367432,5.4066665,5.696172000367431,5.6249998,5.696172000367431,5.8749999C5.696172000367431,6.124999799999999,5.733671960367432,6.3416667,5.808671950367431,6.5250001C5.885338600367431,6.7083335,5.999505470367431,6.8508337,6.151172170367431,6.9525003000000005C6.302838770367432,7.054167,6.492838670367432,7.1066668,6.7211718703674315,7.110000100000001C6.876171870367432,7.1133334999999995,7.016171970367432,7.0866668,7.141171970367432,7.0300002C7.267838670367432,6.9733336,7.374505470367431,6.884167,7.461172070367432,6.7625003C7.547838970367431,6.640833600000001,7.609505370367431,6.485000100000001,7.646172070367432,6.2950001C7.646172070367432,6.2950001,7.076171870367432,6.2950001,7.076171870367432,6.2950001C7.076171870367432,6.2950001,7.076171870367432,5.7700001,7.076171870367432,5.7700001C7.076171870367432,5.7700001,8.371171970367431,5.7700001,8.371171970367431,5.7700001C8.374505270367433,5.7916667,8.377005370367431,5.8300002,8.378672170367432,5.8850001C8.380338670367433,5.9400001,8.381172170367432,5.9716666,8.381172170367432,5.9799999C8.381172170367432,6.3249998000000005,8.311171970367432,6.6308334,8.17117217036743,6.8975C8.031172270367431,7.1641667,7.833672070367432,7.3733335,7.578671970367432,7.5250001C7.323671770367431,7.6750001999999995,7.022838570367432,7.75,6.676171770367432,7.75Z" fill="#FFA000" fill-opacity="1"/></g><g><path d="M3.5650001,7.675000147683716C3.5650001,7.675000147683716,3.5650001,7.1150002476837155,3.5650001,7.1150002476837155C3.5650001,7.1150002476837155,2,7.1150002476837155,2,7.1150002476837155C2,7.1150002476837155,2,6.480000247683716,2,6.480000247683716C2,6.480000247683716,3.135,4.075000047683716,3.135,4.075000047683716C3.135,4.075000047683716,3.9150001999999997,4.075000047683716,3.9150001999999997,4.075000047683716C3.9150001999999997,4.075000047683716,2.78000009,6.480000247683716,2.78000009,6.480000247683716C2.78000009,6.480000247683716,3.5650001,6.480000247683716,3.5650001,6.480000247683716C3.5650001,6.480000247683716,3.5650001,5.579999947683715,3.5650001,5.579999947683715C3.5650001,5.579999947683715,4.2550001,5.579999947683715,4.2550001,5.579999947683715C4.2550001,5.579999947683715,4.2550001,6.480000247683716,4.2550001,6.480000247683716C4.2550001,6.480000247683716,4.575,6.480000247683716,4.575,6.480000247683716C4.575,6.480000247683716,4.575,7.1150002476837155,4.575,7.1150002476837155C4.575,7.1150002476837155,4.2550001,7.1150002476837155,4.2550001,7.1150002476837155C4.2550001,7.1150002476837155,4.2550001,7.675000147683716,4.2550001,7.675000147683716C4.2550001,7.675000147683716,3.5650001,7.675000147683716,3.5650001,7.675000147683716Z" fill="#FFA000" fill-opacity="1"/></g></g></g></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="20" height="20" viewBox="0 0 20 20"><g><g></g><g><path d="M5,14.50000006L5,15.5C5,15.7761424,4.7761423999999995,16,4.5,16L3.5,16C3.22385764,16,3,15.7761424,3,15.5L3,14.5C3,14.22385764,3.22385764,14,3.50000006,14L4.5,14C4.7761423999999995,14,5,14.22385764,5,14.50000006" fill-rule="evenodd" fill="#2DDA86" fill-opacity="1"/></g><g><path d="M9,11.50000006L9,15.5C9,15.7761426,8.7761424,16,8.5,16L7.5,16C7.22385764,16,7,15.7761426,7,15.5L7,11.50000012C7,11.22385764,7.22385764,11,7.50000006,11L8.5,11C8.7761424,11,9,11.22385764,9,11.50000006" fill-rule="evenodd" fill="#2DDA86" fill-opacity="1"/></g><g><path d="M13,7.50000006L13,15.5C13,15.7761421,12.7761424,16,12.5,16L11.5,16C11.22385764,16,11,15.7761421,11,15.5L11,7.50000024C11,7.22385764,11.22385764,7,11.50000006,7L12.5,7C12.7761424,7,13,7.22385764,13,7.50000006" fill-rule="evenodd" fill="#2DDA86" fill-opacity="1"/></g><g><path d="M17,4.50000006L17,15.5C17,15.776142,16.7761424,16,16.5,16L15.5,16C15.22385764,16,15,15.776142,15,15.5L15,4.50000024C15,4.22385764,15.22385764,4,15.50000006,4L16.5,4C16.7761424,4,17,4.22385764,17,4.50000006" fill-rule="evenodd" fill="#2DDA86" fill-opacity="0.30000001192092896"/></g><g><g><path d="M6.676171770367432,7.75C6.449505070367431,7.75,6.233671770367431,7.71,6.028671770367431,7.6300001C5.823671700367432,7.548333400000001,5.642005200367432,7.4283333,5.4836719003674315,7.27C5.3270052403674315,7.1116667,5.202838630367432,6.9158337,5.1111719603674315,6.6825004C5.021171949367432,6.449167,4.976171970367432,6.1799998,4.976171970367432,5.8749999C4.976171970367432,5.4766665,5.052005261367432,5.1383333,5.203671930367432,4.86000001C5.357005300367431,4.58000004,5.562005040367431,4.36666667,5.818671700367432,4.21999991C6.077005170367432,4.073333338,6.362838470367432,4,6.676171770367432,4C7.139505170367432,4,7.503671870367432,4.10749996,7.768671970367432,4.32249987C8.033672070367432,4.53749996,8.211172070367432,4.84166682,8.30117227036743,5.235C8.30117227036743,5.235,7.606172070367432,5.3349999,7.606172070367432,5.3349999C7.541172070367431,5.125,7.434505270367431,4.95749992,7.286171870367432,4.83249986C7.139505170367432,4.70583326,6.951171870367432,4.64166647,6.7211718703674315,4.63999975C6.492838670367432,4.63666648,6.302838770367432,4.68583316,6.151172170367431,4.78749979C5.999505470367431,4.88916641,5.885338600367431,5.0333331999999995,5.808671950367431,5.2199998999999995C5.733671960367432,5.4066665,5.696172000367431,5.6249998,5.696172000367431,5.8749999C5.696172000367431,6.124999799999999,5.733671960367432,6.3416667,5.808671950367431,6.5250001C5.885338600367431,6.7083335,5.999505470367431,6.8508337,6.151172170367431,6.9525003000000005C6.302838770367432,7.054167,6.492838670367432,7.1066668,6.7211718703674315,7.110000100000001C6.876171870367432,7.1133334999999995,7.016171970367432,7.0866668,7.141171970367432,7.0300002C7.267838670367432,6.9733336,7.374505470367431,6.884167,7.461172070367432,6.7625003C7.547838970367431,6.640833600000001,7.609505370367431,6.485000100000001,7.646172070367432,6.2950001C7.646172070367432,6.2950001,7.076171870367432,6.2950001,7.076171870367432,6.2950001C7.076171870367432,6.2950001,7.076171870367432,5.7700001,7.076171870367432,5.7700001C7.076171870367432,5.7700001,8.371171970367431,5.7700001,8.371171970367431,5.7700001C8.374505270367433,5.7916667,8.377005370367431,5.8300002,8.378672170367432,5.8850001C8.380338670367433,5.9400001,8.381172170367432,5.9716666,8.381172170367432,5.9799999C8.381172170367432,6.3249998000000005,8.311171970367432,6.6308334,8.17117217036743,6.8975C8.031172270367431,7.1641667,7.833672070367432,7.3733335,7.578671970367432,7.5250001C7.323671770367431,7.6750001999999995,7.022838570367432,7.75,6.676171770367432,7.75Z" fill="#2DDA86" fill-opacity="1"/></g><g><path d="M3.5650001,7.675000147683716C3.5650001,7.675000147683716,3.5650001,7.1150002476837155,3.5650001,7.1150002476837155C3.5650001,7.1150002476837155,2,7.1150002476837155,2,7.1150002476837155C2,7.1150002476837155,2,6.480000247683716,2,6.480000247683716C2,6.480000247683716,3.135,4.075000047683716,3.135,4.075000047683716C3.135,4.075000047683716,3.9150001999999997,4.075000047683716,3.9150001999999997,4.075000047683716C3.9150001999999997,4.075000047683716,2.78000009,6.480000247683716,2.78000009,6.480000247683716C2.78000009,6.480000247683716,3.5650001,6.480000247683716,3.5650001,6.480000247683716C3.5650001,6.480000247683716,3.5650001,5.579999947683715,3.5650001,5.579999947683715C3.5650001,5.579999947683715,4.2550001,5.579999947683715,4.2550001,5.579999947683715C4.2550001,5.579999947683715,4.2550001,6.480000247683716,4.2550001,6.480000247683716C4.2550001,6.480000247683716,4.575,6.480000247683716,4.575,6.480000247683716C4.575,6.480000247683716,4.575,7.1150002476837155,4.575,7.1150002476837155C4.575,7.1150002476837155,4.2550001,7.1150002476837155,4.2550001,7.1150002476837155C4.2550001,7.1150002476837155,4.2550001,7.675000147683716,4.2550001,7.675000147683716C4.2550001,7.675000147683716,3.5650001,7.675000147683716,3.5650001,7.675000147683716Z" fill="#2DDA86" fill-opacity="1"/></g></g></g></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="20" height="20" viewBox="0 0 20 20"><g><g></g><g><path d="M5,14.50000006L5,15.5C5,15.7761424,4.7761423999999995,16,4.5,16L3.5,16C3.22385764,16,3,15.7761424,3,15.5L3,14.5C3,14.22385764,3.22385764,14,3.50000006,14L4.5,14C4.7761423999999995,14,5,14.22385764,5,14.50000006" fill-rule="evenodd" fill="#2DDA86" fill-opacity="1"/></g><g><path d="M9,11.50000006L9,15.5C9,15.7761426,8.7761424,16,8.5,16L7.5,16C7.22385764,16,7,15.7761426,7,15.5L7,11.50000012C7,11.22385764,7.22385764,11,7.50000006,11L8.5,11C8.7761424,11,9,11.22385764,9,11.50000006" fill-rule="evenodd" fill="#2DDA86" fill-opacity="1"/></g><g><path d="M13,7.50000006L13,15.5C13,15.7761421,12.7761424,16,12.5,16L11.5,16C11.22385764,16,11,15.7761421,11,15.5L11,7.50000024C11,7.22385764,11.22385764,7,11.50000006,7L12.5,7C12.7761424,7,13,7.22385764,13,7.50000006" fill-rule="evenodd" fill="#2DDA86" fill-opacity="1"/></g><g><path d="M17,4.50000006L17,15.5C17,15.776142,16.7761424,16,16.5,16L15.5,16C15.22385764,16,15,15.776142,15,15.5L15,4.50000024C15,4.22385764,15.22385764,4,15.50000006,4L16.5,4C16.7761424,4,17,4.22385764,17,4.50000006" fill-rule="evenodd" fill="#2DDA86" fill-opacity="1"/></g><g><g><path d="M6.676171770367432,7.75C6.449505070367431,7.75,6.233671770367431,7.71,6.028671770367431,7.6300001C5.823671700367432,7.548333400000001,5.642005200367432,7.4283333,5.4836719003674315,7.27C5.3270052403674315,7.1116667,5.202838630367432,6.9158337,5.1111719603674315,6.6825004C5.021171949367432,6.449167,4.976171970367432,6.1799998,4.976171970367432,5.8749999C4.976171970367432,5.4766665,5.052005261367432,5.1383333,5.203671930367432,4.86000001C5.357005300367431,4.58000004,5.562005040367431,4.36666667,5.818671700367432,4.21999991C6.077005170367432,4.073333338,6.362838470367432,4,6.676171770367432,4C7.139505170367432,4,7.503671870367432,4.10749996,7.768671970367432,4.32249987C8.033672070367432,4.53749996,8.211172070367432,4.84166682,8.30117227036743,5.235C8.30117227036743,5.235,7.606172070367432,5.3349999,7.606172070367432,5.3349999C7.541172070367431,5.125,7.434505270367431,4.95749992,7.286171870367432,4.83249986C7.139505170367432,4.70583326,6.951171870367432,4.64166647,6.7211718703674315,4.63999975C6.492838670367432,4.63666648,6.302838770367432,4.68583316,6.151172170367431,4.78749979C5.999505470367431,4.88916641,5.885338600367431,5.0333331999999995,5.808671950367431,5.2199998999999995C5.733671960367432,5.4066665,5.696172000367431,5.6249998,5.696172000367431,5.8749999C5.696172000367431,6.124999799999999,5.733671960367432,6.3416667,5.808671950367431,6.5250001C5.885338600367431,6.7083335,5.999505470367431,6.8508337,6.151172170367431,6.9525003000000005C6.302838770367432,7.054167,6.492838670367432,7.1066668,6.7211718703674315,7.110000100000001C6.876171870367432,7.1133334999999995,7.016171970367432,7.0866668,7.141171970367432,7.0300002C7.267838670367432,6.9733336,7.374505470367431,6.884167,7.461172070367432,6.7625003C7.547838970367431,6.640833600000001,7.609505370367431,6.485000100000001,7.646172070367432,6.2950001C7.646172070367432,6.2950001,7.076171870367432,6.2950001,7.076171870367432,6.2950001C7.076171870367432,6.2950001,7.076171870367432,5.7700001,7.076171870367432,5.7700001C7.076171870367432,5.7700001,8.371171970367431,5.7700001,8.371171970367431,5.7700001C8.374505270367433,5.7916667,8.377005370367431,5.8300002,8.378672170367432,5.8850001C8.380338670367433,5.9400001,8.381172170367432,5.9716666,8.381172170367432,5.9799999C8.381172170367432,6.3249998000000005,8.311171970367432,6.6308334,8.17117217036743,6.8975C8.031172270367431,7.1641667,7.833672070367432,7.3733335,7.578671970367432,7.5250001C7.323671770367431,7.6750001999999995,7.022838570367432,7.75,6.676171770367432,7.75Z" fill="#2DDA86" fill-opacity="1"/></g><g><path d="M3.5650001,7.675000147683716C3.5650001,7.675000147683716,3.5650001,7.1150002476837155,3.5650001,7.1150002476837155C3.5650001,7.1150002476837155,2,7.1150002476837155,2,7.1150002476837155C2,7.1150002476837155,2,6.480000247683716,2,6.480000247683716C2,6.480000247683716,3.135,4.075000047683716,3.135,4.075000047683716C3.135,4.075000047683716,3.9150001999999997,4.075000047683716,3.9150001999999997,4.075000047683716C3.9150001999999997,4.075000047683716,2.78000009,6.480000247683716,2.78000009,6.480000247683716C2.78000009,6.480000247683716,3.5650001,6.480000247683716,3.5650001,6.480000247683716C3.5650001,6.480000247683716,3.5650001,5.579999947683715,3.5650001,5.579999947683715C3.5650001,5.579999947683715,4.2550001,5.579999947683715,4.2550001,5.579999947683715C4.2550001,5.579999947683715,4.2550001,6.480000247683716,4.2550001,6.480000247683716C4.2550001,6.480000247683716,4.575,6.480000247683716,4.575,6.480000247683716C4.575,6.480000247683716,4.575,7.1150002476837155,4.575,7.1150002476837155C4.575,7.1150002476837155,4.2550001,7.1150002476837155,4.2550001,7.1150002476837155C4.2550001,7.1150002476837155,4.2550001,7.675000147683716,4.2550001,7.675000147683716C4.2550001,7.675000147683716,3.5650001,7.675000147683716,3.5650001,7.675000147683716Z" fill="#2DDA86" fill-opacity="1"/></g></g></g></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="20" height="20" viewBox="0 0 20 20"><g><g></g><g><path d="M14.000031244415283,4.500025035532227L14.000031244415283,15.500024795532227C14.000031244415283,15.776166795532227,14.223889244415282,16.000024795532227,14.500031244415283,16.000024795532227L15.500031244415283,16.000024795532227C15.776173244415283,16.000024795532227,16.000031244415283,15.776166795532227,16.000031244415283,15.500024795532227L16.000031244415283,4.500024855532226C16.000031244415283,4.223882435532227,15.776173244415283,4.000024795532227,15.500031244415283,4.000024795532227L14.500031244415283,4.000024795532227C14.223889244415282,4.000024795532227,14.000031244415283,4.223882435532227,14.000031244415283,4.500025035532227ZM4.767682044415283,4.353613375532227L5.828615144415283,5.4145464955322264L6.889210944415283,4.353950495532226C7.084473144415283,4.158687595532227,7.401055844415283,4.1586880655322265,7.596317744415283,4.353950495532226L8.303424844415282,5.0610570955322265C8.498686744415284,5.256319095532227,8.498686744415284,5.572901295532226,8.303424344415284,5.768163695532227L7.242828344415283,6.828759895532226L8.303215544415284,7.889146995532227C8.498477944415283,8.084409195532228,8.498477944415283,8.400991895532226,8.303215944415284,8.596253895532227L7.596108944415283,9.303360895532226C7.400846944415283,9.498622895532225,7.084264544415284,9.498622895532225,6.8890023444152835,9.303360895532226L5.828614944415284,8.242973795532226L4.767891144415283,9.303697595532228C4.572628844415283,9.498959995532227,4.256046444415283,9.498959995532227,4.060784224415283,9.303698095532226L3.3536773944152833,8.596590995532226C3.158415198415283,8.401328995532227,3.158415198415283,8.084746795532226,3.3536773944152833,7.889484395532227L4.414401544415283,6.828760195532226L3.3534684144152833,5.767826995532227C3.1582059864152834,5.572564595532226,3.1582064624152832,5.255982395532227,3.3534684144152833,5.060720195532227L4.060575484415283,4.353613375532227C4.255837444415283,4.158351425532227,4.572419644415283,4.158350945532226,4.767682044415283,4.353613375532227ZM9.000031044415284,9.500024795532227L9.000031044415284,15.500024795532227C9.000031044415284,15.776166795532227,9.223888844415283,16.000024795532227,9.500031044415284,16.000024795532227L10.500031044415284,16.000024795532227C10.776173144415283,16.000024795532227,11.000031044415284,15.776166795532227,11.000031044415284,15.500024795532227L11.000031044415284,9.500024795532227C11.000031044415284,9.223882695532225,10.776173144415283,9.000024795532227,10.500031044415284,9.000024795532227L9.500031044415284,9.000024795532227C9.223888844415283,9.000024795532227,9.000031044415284,9.223882695532225,9.000031044415284,9.500024795532227ZM4.000030994415283,13.500024795532227L4.000030994415283,15.500024795532227C4.000030994415283,15.776166795532227,4.2238886444152834,16.000024795532227,4.500031044415283,16.000024795532227L5.500031044415284,16.000024795532227C5.776173344415284,16.000024795532227,6.000031044415284,15.776166795532227,6.000031044415284,15.500024795532227L6.000031044415284,13.500024795532227C6.000031044415284,13.223882695532227,5.776173344415284,13.000024795532227,5.500031044415284,13.000024795532227L4.500031044415283,13.000024795532227C4.2238886444152834,13.000024795532227,4.000030994415283,13.223882695532227,4.000030994415283,13.500024795532227Z" fill-rule="evenodd" fill="#FFFFFF" fill-opacity="0.30000001192092896"/></g></g></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="20" height="20" viewBox="0 0 20 20"><g><g></g><g><path d="M14,15.5L14,4.50000024C14,4.22385764,14.22385764,4,14.50000006,4L15.5,4C15.7761424,4,16,4.22385764,16,4.50000006L16,15.5C16,15.776142,15.7761424,16,15.5,16L14.5,16C14.22385764,16,14,15.776142,14,15.5" fill-rule="evenodd" fill="#F04C4C" fill-opacity="0.30000001192092896"/></g><g><path d="M9,15.5L9,9.50000018C9,9.22385764,9.22385764,9,9.50000006,9L10.5,9C10.7761424,9,11,9.22385764,11,9.50000006L11,15.5C11,15.7761426,10.7761424,16,10.5,16L9.5,16C9.22385764,16,9,15.7761426,9,15.5" fill-rule="evenodd" fill="#F04C4C" fill-opacity="0.30000001192092896"/></g><g><path d="M4,15.5L4,13.50000006C4,13.22385764,4.22385764,13,4.50000006,13L5.5,13C5.7761423999999995,13,6,13.22385764,6,13.50000006L6,15.5C6,15.7761424,5.7761423999999995,16,5.5,16L4.5,16C4.22385764,16,4,15.7761424,4,15.5" fill-rule="evenodd" fill="#F04C4C" fill-opacity="1"/></g><g><g><path d="M6.676171770367432,7.75C6.449505070367431,7.75,6.233671770367431,7.71,6.028671770367431,7.6300001C5.823671700367432,7.548333400000001,5.642005200367432,7.4283333,5.4836719003674315,7.27C5.3270052403674315,7.1116667,5.202838630367432,6.9158337,5.1111719603674315,6.6825004C5.021171949367432,6.449167,4.976171970367432,6.1799998,4.976171970367432,5.8749999C4.976171970367432,5.4766665,5.052005261367432,5.1383333,5.203671930367432,4.86000001C5.357005300367431,4.58000004,5.562005040367431,4.36666667,5.818671700367432,4.21999991C6.077005170367432,4.073333338,6.362838470367432,4,6.676171770367432,4C7.139505170367432,4,7.503671870367432,4.10749996,7.768671970367432,4.32249987C8.033672070367432,4.53749996,8.211172070367432,4.84166682,8.30117227036743,5.235C8.30117227036743,5.235,7.606172070367432,5.3349999,7.606172070367432,5.3349999C7.541172070367431,5.125,7.434505270367431,4.95749992,7.286171870367432,4.83249986C7.139505170367432,4.70583326,6.951171870367432,4.64166647,6.7211718703674315,4.63999975C6.492838670367432,4.63666648,6.302838770367432,4.68583316,6.151172170367431,4.78749979C5.999505470367431,4.88916641,5.885338600367431,5.0333331999999995,5.808671950367431,5.2199998999999995C5.733671960367432,5.4066665,5.696172000367431,5.6249998,5.696172000367431,5.8749999C5.696172000367431,6.124999799999999,5.733671960367432,6.3416667,5.808671950367431,6.5250001C5.885338600367431,6.7083335,5.999505470367431,6.8508337,6.151172170367431,6.9525003000000005C6.302838770367432,7.054167,6.492838670367432,7.1066668,6.7211718703674315,7.110000100000001C6.876171870367432,7.1133334999999995,7.016171970367432,7.0866668,7.141171970367432,7.0300002C7.267838670367432,6.9733336,7.374505470367431,6.884167,7.461172070367432,6.7625003C7.547838970367431,6.640833600000001,7.609505370367431,6.485000100000001,7.646172070367432,6.2950001C7.646172070367432,6.2950001,7.076171870367432,6.2950001,7.076171870367432,6.2950001C7.076171870367432,6.2950001,7.076171870367432,5.7700001,7.076171870367432,5.7700001C7.076171870367432,5.7700001,8.371171970367431,5.7700001,8.371171970367431,5.7700001C8.374505270367433,5.7916667,8.377005370367431,5.8300002,8.378672170367432,5.8850001C8.380338670367433,5.9400001,8.381172170367432,5.9716666,8.381172170367432,5.9799999C8.381172170367432,6.3249998000000005,8.311171970367432,6.6308334,8.17117217036743,6.8975C8.031172270367431,7.1641667,7.833672070367432,7.3733335,7.578671970367432,7.5250001C7.323671770367431,7.6750001999999995,7.022838570367432,7.75,6.676171770367432,7.75Z" fill="#F04C4C" fill-opacity="1"/></g><g><path d="M3.5650001,7.675000147683716C3.5650001,7.675000147683716,3.5650001,7.1150002476837155,3.5650001,7.1150002476837155C3.5650001,7.1150002476837155,2,7.1150002476837155,2,7.1150002476837155C2,7.1150002476837155,2,6.480000247683716,2,6.480000247683716C2,6.480000247683716,3.135,4.075000047683716,3.135,4.075000047683716C3.135,4.075000047683716,3.9150001999999997,4.075000047683716,3.9150001999999997,4.075000047683716C3.9150001999999997,4.075000047683716,2.78000009,6.480000247683716,2.78000009,6.480000247683716C2.78000009,6.480000247683716,3.5650001,6.480000247683716,3.5650001,6.480000247683716C3.5650001,6.480000247683716,3.5650001,5.579999947683715,3.5650001,5.579999947683715C3.5650001,5.579999947683715,4.2550001,5.579999947683715,4.2550001,5.579999947683715C4.2550001,5.579999947683715,4.2550001,6.480000247683716,4.2550001,6.480000247683716C4.2550001,6.480000247683716,4.575,6.480000247683716,4.575,6.480000247683716C4.575,6.480000247683716,4.575,7.1150002476837155,4.575,7.1150002476837155C4.575,7.1150002476837155,4.2550001,7.1150002476837155,4.2550001,7.1150002476837155C4.2550001,7.1150002476837155,4.2550001,7.675000147683716,4.2550001,7.675000147683716C4.2550001,7.675000147683716,3.5650001,7.675000147683716,3.5650001,7.675000147683716Z" fill="#F04C4C" fill-opacity="1"/></g></g></g></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="20" height="20" viewBox="0 0 20 20"><g><g></g><g><path d="M14,15.5L14,4.50000024C14,4.22385764,14.22385764,4,14.50000006,4L15.5,4C15.7761424,4,16,4.22385764,16,4.50000006L16,15.5C16,15.776142,15.7761424,16,15.5,16L14.5,16C14.22385764,16,14,15.776142,14,15.5" fill-rule="evenodd" fill="#FFA000" fill-opacity="0.30000001192092896"/></g><g><path d="M9,15.5L9,9.50000018C9,9.22385764,9.22385764,9,9.50000006,9L10.5,9C10.7761424,9,11,9.22385764,11,9.50000006L11,15.5C11,15.7761426,10.7761424,16,10.5,16L9.5,16C9.22385764,16,9,15.7761426,9,15.5" fill-rule="evenodd" fill="#FFA000" fill-opacity="1"/></g><g><path d="M4,15.5L4,13.50000006C4,13.22385764,4.22385764,13,4.50000006,13L5.5,13C5.7761423999999995,13,6,13.22385764,6,13.50000006L6,15.5C6,15.7761424,5.7761423999999995,16,5.5,16L4.5,16C4.22385764,16,4,15.7761424,4,15.5" fill-rule="evenodd" fill="#FFA000" fill-opacity="1"/></g><g><g><path d="M6.676171770367432,7.75C6.449505070367431,7.75,6.233671770367431,7.71,6.028671770367431,7.6300001C5.823671700367432,7.548333400000001,5.642005200367432,7.4283333,5.4836719003674315,7.27C5.3270052403674315,7.1116667,5.202838630367432,6.9158337,5.1111719603674315,6.6825004C5.021171949367432,6.449167,4.976171970367432,6.1799998,4.976171970367432,5.8749999C4.976171970367432,5.4766665,5.052005261367432,5.1383333,5.203671930367432,4.86000001C5.357005300367431,4.58000004,5.562005040367431,4.36666667,5.818671700367432,4.21999991C6.077005170367432,4.073333338,6.362838470367432,4,6.676171770367432,4C7.139505170367432,4,7.503671870367432,4.10749996,7.768671970367432,4.32249987C8.033672070367432,4.53749996,8.211172070367432,4.84166682,8.30117227036743,5.235C8.30117227036743,5.235,7.606172070367432,5.3349999,7.606172070367432,5.3349999C7.541172070367431,5.125,7.434505270367431,4.95749992,7.286171870367432,4.83249986C7.139505170367432,4.70583326,6.951171870367432,4.64166647,6.7211718703674315,4.63999975C6.492838670367432,4.63666648,6.302838770367432,4.68583316,6.151172170367431,4.78749979C5.999505470367431,4.88916641,5.885338600367431,5.0333331999999995,5.808671950367431,5.2199998999999995C5.733671960367432,5.4066665,5.696172000367431,5.6249998,5.696172000367431,5.8749999C5.696172000367431,6.124999799999999,5.733671960367432,6.3416667,5.808671950367431,6.5250001C5.885338600367431,6.7083335,5.999505470367431,6.8508337,6.151172170367431,6.9525003000000005C6.302838770367432,7.054167,6.492838670367432,7.1066668,6.7211718703674315,7.110000100000001C6.876171870367432,7.1133334999999995,7.016171970367432,7.0866668,7.141171970367432,7.0300002C7.267838670367432,6.9733336,7.374505470367431,6.884167,7.461172070367432,6.7625003C7.547838970367431,6.640833600000001,7.609505370367431,6.485000100000001,7.646172070367432,6.2950001C7.646172070367432,6.2950001,7.076171870367432,6.2950001,7.076171870367432,6.2950001C7.076171870367432,6.2950001,7.076171870367432,5.7700001,7.076171870367432,5.7700001C7.076171870367432,5.7700001,8.371171970367431,5.7700001,8.371171970367431,5.7700001C8.374505270367433,5.7916667,8.377005370367431,5.8300002,8.378672170367432,5.8850001C8.380338670367433,5.9400001,8.381172170367432,5.9716666,8.381172170367432,5.9799999C8.381172170367432,6.3249998000000005,8.311171970367432,6.6308334,8.17117217036743,6.8975C8.031172270367431,7.1641667,7.833672070367432,7.3733335,7.578671970367432,7.5250001C7.323671770367431,7.6750001999999995,7.022838570367432,7.75,6.676171770367432,7.75Z" fill="#FFA000" fill-opacity="1"/></g><g><path d="M3.5650001,7.675000147683716C3.5650001,7.675000147683716,3.5650001,7.1150002476837155,3.5650001,7.1150002476837155C3.5650001,7.1150002476837155,2,7.1150002476837155,2,7.1150002476837155C2,7.1150002476837155,2,6.480000247683716,2,6.480000247683716C2,6.480000247683716,3.135,4.075000047683716,3.135,4.075000047683716C3.135,4.075000047683716,3.9150001999999997,4.075000047683716,3.9150001999999997,4.075000047683716C3.9150001999999997,4.075000047683716,2.78000009,6.480000247683716,2.78000009,6.480000247683716C2.78000009,6.480000247683716,3.5650001,6.480000247683716,3.5650001,6.480000247683716C3.5650001,6.480000247683716,3.5650001,5.579999947683715,3.5650001,5.579999947683715C3.5650001,5.579999947683715,4.2550001,5.579999947683715,4.2550001,5.579999947683715C4.2550001,5.579999947683715,4.2550001,6.480000247683716,4.2550001,6.480000247683716C4.2550001,6.480000247683716,4.575,6.480000247683716,4.575,6.480000247683716C4.575,6.480000247683716,4.575,7.1150002476837155,4.575,7.1150002476837155C4.575,7.1150002476837155,4.2550001,7.1150002476837155,4.2550001,7.1150002476837155C4.2550001,7.1150002476837155,4.2550001,7.675000147683716,4.2550001,7.675000147683716C4.2550001,7.675000147683716,3.5650001,7.675000147683716,3.5650001,7.675000147683716Z" fill="#FFA000" fill-opacity="1"/></g></g></g></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="20" height="20" viewBox="0 0 20 20"><g><g></g><g><path d="M14,15.5L14,4.50000024C14,4.22385764,14.22385764,4,14.50000006,4L15.5,4C15.7761424,4,16,4.22385764,16,4.50000006L16,15.5C16,15.776142,15.7761424,16,15.5,16L14.5,16C14.22385764,16,14,15.776142,14,15.5" fill-rule="evenodd" fill="#2DDA86" fill-opacity="1"/></g><g><path d="M9,15.5L9,9.50000018C9,9.22385764,9.22385764,9,9.50000006,9L10.5,9C10.7761424,9,11,9.22385764,11,9.50000006L11,15.5C11,15.7761426,10.7761424,16,10.5,16L9.5,16C9.22385764,16,9,15.7761426,9,15.5" fill-rule="evenodd" fill="#2DDA86" fill-opacity="1"/></g><g><path d="M4,15.5L4,13.50000006C4,13.22385764,4.22385764,13,4.50000006,13L5.5,13C5.7761423999999995,13,6,13.22385764,6,13.50000006L6,15.5C6,15.7761424,5.7761423999999995,16,5.5,16L4.5,16C4.22385764,16,4,15.7761424,4,15.5" fill-rule="evenodd" fill="#2DDA86" fill-opacity="1"/></g><g><g><path d="M6.676171770367432,7.75C6.449505070367431,7.75,6.233671770367431,7.71,6.028671770367431,7.6300001C5.823671700367432,7.548333400000001,5.642005200367432,7.4283333,5.4836719003674315,7.27C5.3270052403674315,7.1116667,5.202838630367432,6.9158337,5.1111719603674315,6.6825004C5.021171949367432,6.449167,4.976171970367432,6.1799998,4.976171970367432,5.8749999C4.976171970367432,5.4766665,5.052005261367432,5.1383333,5.203671930367432,4.86000001C5.357005300367431,4.58000004,5.562005040367431,4.36666667,5.818671700367432,4.21999991C6.077005170367432,4.073333338,6.362838470367432,4,6.676171770367432,4C7.139505170367432,4,7.503671870367432,4.10749996,7.768671970367432,4.32249987C8.033672070367432,4.53749996,8.211172070367432,4.84166682,8.30117227036743,5.235C8.30117227036743,5.235,7.606172070367432,5.3349999,7.606172070367432,5.3349999C7.541172070367431,5.125,7.434505270367431,4.95749992,7.286171870367432,4.83249986C7.139505170367432,4.70583326,6.951171870367432,4.64166647,6.7211718703674315,4.63999975C6.492838670367432,4.63666648,6.302838770367432,4.68583316,6.151172170367431,4.78749979C5.999505470367431,4.88916641,5.885338600367431,5.0333331999999995,5.808671950367431,5.2199998999999995C5.733671960367432,5.4066665,5.696172000367431,5.6249998,5.696172000367431,5.8749999C5.696172000367431,6.124999799999999,5.733671960367432,6.3416667,5.808671950367431,6.5250001C5.885338600367431,6.7083335,5.999505470367431,6.8508337,6.151172170367431,6.9525003000000005C6.302838770367432,7.054167,6.492838670367432,7.1066668,6.7211718703674315,7.110000100000001C6.876171870367432,7.1133334999999995,7.016171970367432,7.0866668,7.141171970367432,7.0300002C7.267838670367432,6.9733336,7.374505470367431,6.884167,7.461172070367432,6.7625003C7.547838970367431,6.640833600000001,7.609505370367431,6.485000100000001,7.646172070367432,6.2950001C7.646172070367432,6.2950001,7.076171870367432,6.2950001,7.076171870367432,6.2950001C7.076171870367432,6.2950001,7.076171870367432,5.7700001,7.076171870367432,5.7700001C7.076171870367432,5.7700001,8.371171970367431,5.7700001,8.371171970367431,5.7700001C8.374505270367433,5.7916667,8.377005370367431,5.8300002,8.378672170367432,5.8850001C8.380338670367433,5.9400001,8.381172170367432,5.9716666,8.381172170367432,5.9799999C8.381172170367432,6.3249998000000005,8.311171970367432,6.6308334,8.17117217036743,6.8975C8.031172270367431,7.1641667,7.833672070367432,7.3733335,7.578671970367432,7.5250001C7.323671770367431,7.6750001999999995,7.022838570367432,7.75,6.676171770367432,7.75Z" fill="#2DDA86" fill-opacity="1"/></g><g><path d="M3.5650001,7.675000147683716C3.5650001,7.675000147683716,3.5650001,7.1150002476837155,3.5650001,7.1150002476837155C3.5650001,7.1150002476837155,2,7.1150002476837155,2,7.1150002476837155C2,7.1150002476837155,2,6.480000247683716,2,6.480000247683716C2,6.480000247683716,3.135,4.075000047683716,3.135,4.075000047683716C3.135,4.075000047683716,3.9150001999999997,4.075000047683716,3.9150001999999997,4.075000047683716C3.9150001999999997,4.075000047683716,2.78000009,6.480000247683716,2.78000009,6.480000247683716C2.78000009,6.480000247683716,3.5650001,6.480000247683716,3.5650001,6.480000247683716C3.5650001,6.480000247683716,3.5650001,5.579999947683715,3.5650001,5.579999947683715C3.5650001,5.579999947683715,4.2550001,5.579999947683715,4.2550001,5.579999947683715C4.2550001,5.579999947683715,4.2550001,6.480000247683716,4.2550001,6.480000247683716C4.2550001,6.480000247683716,4.575,6.480000247683716,4.575,6.480000247683716C4.575,6.480000247683716,4.575,7.1150002476837155,4.575,7.1150002476837155C4.575,7.1150002476837155,4.2550001,7.1150002476837155,4.2550001,7.1150002476837155C4.2550001,7.1150002476837155,4.2550001,7.675000147683716,4.2550001,7.675000147683716C4.2550001,7.675000147683716,3.5650001,7.675000147683716,3.5650001,7.675000147683716Z" fill="#2DDA86" fill-opacity="1"/></g></g></g></svg>
@@ -0,0 +1,4 @@
1
+ declare module '*.svg' {
2
+ const src: string;
3
+ export default src;
4
+ }
@@ -18,6 +18,26 @@ export declare const tileTipId = "tileTipId";
18
18
  export declare const ptzMoveableTipId = "ptzMoveableTipId";
19
19
  export declare const landscapeTipId = "landscapeTipId";
20
20
  export declare const multiPtzId = "multiPtzId";
21
+ /** 控件点击统一事件:任意播放器内控件被点击时触发,可用于埋点或统一处理 */
22
+ export declare const widgetClick = "widgetClick";
23
+ /** 控件点击事件用的 widgetId,统一在此维护 */
24
+ export declare const widgetLabs: {
25
+ readonly SCREENSHOT: "Screenshot";
26
+ readonly RECORD_VIDEO: "RecordVideo";
27
+ readonly RESOLUTION: "Resolution";
28
+ readonly FULL_RESOLUTION_CONTROL: "FullResolutionControl";
29
+ readonly MUTED: "Muted";
30
+ readonly PTZ: "Ptz";
31
+ readonly PTZ_CONTROL_TIP: "PtzControlTip";
32
+ readonly MOVE_INTERACTIVE_CONTROL: "MoveInteractiveControl";
33
+ readonly VERTICAL_SMALL_INTERCOM: "VerticalSmallIntercom";
34
+ readonly FULL_SMALL_INTERCOM: "FullSmallIntercom";
35
+ readonly VOICE_INTERCOM: "VoiceIntercom";
36
+ readonly FULL_VOICE_INTERCOM: "FullVoiceIntercom";
37
+ readonly FULL_TRAVEL_ROUTE_CONTROL: "FullTravelRouteControl";
38
+ readonly FULL_SCREEN: "FullScreen";
39
+ readonly VERTICAL_SCREEN: "VerticalScreen";
40
+ };
21
41
  export declare const decodeClarityDic: {
22
42
  SS: string;
23
43
  SD: string;
@@ -18,6 +18,27 @@ export const tileTipId = 'tileTipId';
18
18
  export const ptzMoveableTipId = 'ptzMoveableTipId';
19
19
  export const landscapeTipId = 'landscapeTipId';
20
20
  export const multiPtzId = 'multiPtzId';
21
+ /** 控件点击统一事件:任意播放器内控件被点击时触发,可用于埋点或统一处理 */
22
+ export const widgetClick = 'widgetClick';
23
+
24
+ /** 控件点击事件用的 widgetId,统一在此维护 */
25
+ export const widgetLabs = {
26
+ SCREENSHOT: 'Screenshot',
27
+ RECORD_VIDEO: 'RecordVideo',
28
+ RESOLUTION: 'Resolution',
29
+ FULL_RESOLUTION_CONTROL: 'FullResolutionControl',
30
+ MUTED: 'Muted',
31
+ PTZ: 'Ptz',
32
+ PTZ_CONTROL_TIP: 'PtzControlTip',
33
+ MOVE_INTERACTIVE_CONTROL: 'MoveInteractiveControl',
34
+ VERTICAL_SMALL_INTERCOM: 'VerticalSmallIntercom',
35
+ FULL_SMALL_INTERCOM: 'FullSmallIntercom',
36
+ VOICE_INTERCOM: 'VoiceIntercom',
37
+ FULL_VOICE_INTERCOM: 'FullVoiceIntercom',
38
+ FULL_TRAVEL_ROUTE_CONTROL: 'FullTravelRouteControl',
39
+ FULL_SCREEN: 'FullScreen',
40
+ VERTICAL_SCREEN: 'VerticalScreen'
41
+ };
21
42
  export const decodeClarityDic = {
22
43
  SS: 'ss',
23
44
  // 省流量
package/lib/ui/index.d.ts CHANGED
@@ -2,3 +2,5 @@ export * from './ui';
2
2
  export * from './hooks';
3
3
  export * from './context';
4
4
  export type * from './event';
5
+ export { widgetClick } from './widgetClick';
6
+ export { widgetLabs } from './constant';
package/lib/ui/index.js CHANGED
@@ -1,3 +1,5 @@
1
1
  export * from './ui';
2
2
  export * from './hooks';
3
- export * from './context';
3
+ export * from './context';
4
+ export { widgetClick } from './widgetClick';
5
+ export { widgetLabs } from './constant';
package/lib/ui/ui.d.ts CHANGED
@@ -32,6 +32,8 @@ type Props = {
32
32
  awakeStatus?: boolean | undefined;
33
33
  eventRef?: React.RefObject<EventInstance>;
34
34
  onPlayerTap?: (data: any) => void;
35
+ defaultAutoPlay?: boolean;
36
+ limitFlow?: boolean;
35
37
  extend?: Record<string, any>;
36
38
  };
37
39
  export declare const IPCPlayerIntegration: React.MemoExoticComponent<(props: Props) => React.JSX.Element>;
package/lib/ui/ui.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
+ import "core-js/modules/es.json.stringify.js";
2
3
  import "core-js/modules/esnext.iterator.constructor.js";
3
4
  import "core-js/modules/esnext.iterator.map.js";
4
5
  import React, { useContext, useState, useRef, useMemo, useEffect, useImperativeHandle } from 'react';
@@ -61,6 +62,8 @@ export const IPCPlayerIntegration = /*#__PURE__*/React.memo(props => {
61
62
  awakeStatus = undefined,
62
63
  onPlayerTap,
63
64
  playerRoute = 'pages/home/index',
65
+ defaultAutoPlay = true,
66
+ limitFlow = false,
64
67
  extend = {}
65
68
  } = props;
66
69
  const {
@@ -775,6 +778,8 @@ export const IPCPlayerIntegration = /*#__PURE__*/React.memo(props => {
775
778
  ,
776
779
  brandColor: brandColor,
777
780
  playerRoute: playerRoute,
781
+ defaultAutoPlay: defaultAutoPlay,
782
+ limitFlow: limitFlow,
778
783
  extend: _objectSpread(_objectSpread({}, instance.multiCameraCtx.extendProps), extend)
779
784
  })), showTopContent && /*#__PURE__*/React.createElement(View, {
780
785
  className: clsx('ipc-player-top-content', {
@@ -0,0 +1,2 @@
1
+ /** 仅导出事件名,触发时使用 ctx.event / UIEventContext 的 event,即 eventRef.current.emit(widgetClick, payload) */
2
+ export { widgetClick } from './constant';
@@ -0,0 +1,2 @@
1
+ /** 仅导出事件名,触发时使用 ctx.event / UIEventContext 的 event,即 eventRef.current.emit(widgetClick, payload) */
2
+ export { widgetClick } from './constant';
@@ -1,3 +1,4 @@
1
+ import "core-js/modules/es.json.stringify.js";
1
2
  import { getStorage, setStorage, removeStorage, getLaunchOptionsSync, getStorageSync } from '@ray-js/ray';
2
3
  import { promisify } from '..';
3
4
  export class Storage {
@@ -68,12 +68,12 @@ export declare const Battery: import("react").FunctionComponent<{
68
68
  onLocalizerViewLocated: (this: any, event: any) => Promise<void>;
69
69
  onSwipeAtVideoIndex: (this: any, event: any) => Promise<void>;
70
70
  };
71
- setLayoutStyle: (style: import("../..").MultiCameraLayoutStyle) => void;
72
- setScreenMode: (mode: import("../..").MultiCameraScreenMode) => void;
71
+ setLayoutStyle: (this: unknown, style: import("../..").MultiCameraLayoutStyle) => void;
72
+ setScreenMode: (this: unknown, mode: import("../..").MultiCameraScreenMode) => void;
73
73
  setPtzStatus: (value: boolean | ((prevValue: boolean) => boolean)) => void;
74
- showLenNames: (value: boolean) => void;
74
+ showLenNames: (this: unknown, value: boolean) => void;
75
75
  setNextLayoutStyle: (value: import("../..").MultiCameraLayoutStyle | ((prevValue: import("../..").MultiCameraLayoutStyle) => import("../..").MultiCameraLayoutStyle)) => void;
76
- getNextLayoutStyle: () => Promise<import("../..").MultiCameraLayoutStyle>;
76
+ getNextLayoutStyle: (this: unknown) => Promise<import("../..").MultiCameraLayoutStyle>;
77
77
  };
78
78
  } & {
79
79
  className?: string | undefined;
@@ -147,12 +147,12 @@ export declare const BatteryFull: import("react").FunctionComponent<{
147
147
  onLocalizerViewLocated: (this: any, event: any) => Promise<void>;
148
148
  onSwipeAtVideoIndex: (this: any, event: any) => Promise<void>;
149
149
  };
150
- setLayoutStyle: (style: import("../..").MultiCameraLayoutStyle) => void;
151
- setScreenMode: (mode: import("../..").MultiCameraScreenMode) => void;
150
+ setLayoutStyle: (this: unknown, style: import("../..").MultiCameraLayoutStyle) => void;
151
+ setScreenMode: (this: unknown, mode: import("../..").MultiCameraScreenMode) => void;
152
152
  setPtzStatus: (value: boolean | ((prevValue: boolean) => boolean)) => void;
153
- showLenNames: (value: boolean) => void;
153
+ showLenNames: (this: unknown, value: boolean) => void;
154
154
  setNextLayoutStyle: (value: import("../..").MultiCameraLayoutStyle | ((prevValue: import("../..").MultiCameraLayoutStyle) => import("../..").MultiCameraLayoutStyle)) => void;
155
- getNextLayoutStyle: () => Promise<import("../..").MultiCameraLayoutStyle>;
155
+ getNextLayoutStyle: (this: unknown) => Promise<import("../..").MultiCameraLayoutStyle>;
156
156
  };
157
157
  } & {
158
158
  className?: string | undefined;
@@ -5,7 +5,7 @@ import { useUpdateEffect } from 'ahooks';
5
5
  import clsx from 'clsx';
6
6
  import { unstable_batchedUpdates as batchedUpdates } from '@ray-core/ray';
7
7
  import { UIEventContext } from '../../ui/context';
8
- import { showAllComponent, voiceIntercomId, verticalScreenId, fullTravelRouteControlId, ptzControlId, fullResolutionId, fullSmallIntercomId, pauseTimeToHideAllComponent } from '../../ui/constant';
8
+ import { showAllComponent, voiceIntercomId, verticalScreenId, fullTravelRouteControlId, ptzControlId, fullResolutionId, fullSmallIntercomId, pauseTimeToHideAllComponent, widgetLabs, widgetClick } from '../../ui/constant';
9
9
  import { useStore } from '../../ctx/store';
10
10
  import { VerticalScreen } from './verticalScreen';
11
11
  import { FullVoiceIntercom } from './fullVoiceIntercom';
@@ -125,6 +125,9 @@ export function FullScreen(props) {
125
125
 
126
126
  // 点击事件处理函数
127
127
  const handClick = target => {
128
+ event.emit(widgetClick, {
129
+ widgetId: target === 'full' ? widgetLabs.FULL_SCREEN : widgetLabs.VERTICAL_SCREEN
130
+ });
128
131
  // 根据target的值设置pageOrientation的值
129
132
  const pageOrientation = target === 'vertical' ? 'portrait' : 'landscape';
130
133
  // 发射事件
@@ -11,7 +11,7 @@ import { useMemoizedFn } from 'ahooks';
11
11
  import { UIEventContext } from '../../ui/context';
12
12
  import { useDpState } from '../../hooks';
13
13
  import { useComponentHideState } from '../../ui/hooks';
14
- import { pauseTimeToHideAllComponent, startTimeToHideAllComponent } from '../../ui/constant';
14
+ import { pauseTimeToHideAllComponent, startTimeToHideAllComponent, widgetLabs, widgetClick } from '../../ui/constant';
15
15
  import { DIRECTION_CONTROL_DP_CODE } from './constant';
16
16
  import { useStore } from '../../ctx/store';
17
17
  export function FullTravelRouteControl(props) {
@@ -80,6 +80,9 @@ export function FullTravelRouteControl(props) {
80
80
  }, directionControlProps, {
81
81
  onTouchStart: value => {
82
82
  var _directionControlProp2;
83
+ event.emit(widgetClick, {
84
+ widgetId: widgetLabs.FULL_TRAVEL_ROUTE_CONTROL
85
+ });
83
86
  pauseTimeToHideAllComponentFn();
84
87
  sendDpValueFn(String(value));
85
88
  // @ts-ignore
@@ -9,7 +9,7 @@ import { VoiceIntercom } from '../voiceIntercom';
9
9
  import { useComponentHideState } from '../../ui/hooks';
10
10
  import { useMemoizedFn } from '../../hooks';
11
11
  import { UIEventContext } from '../../ui/context';
12
- import { pauseTimeToHideAllComponent } from '../../ui/constant';
12
+ import { pauseTimeToHideAllComponent, widgetLabs, widgetClick } from '../../ui/constant';
13
13
  import { useStore } from '../../ctx/store';
14
14
  export function FullVoiceIntercom(props) {
15
15
  const [shouldHide] = useComponentHideState();
@@ -50,6 +50,9 @@ export function FullVoiceIntercom(props) {
50
50
  scale: 0.14,
51
51
  mode: "circle",
52
52
  onTouchStart: () => {
53
+ event.emit(widgetClick, {
54
+ widgetId: widgetLabs.FULL_VOICE_INTERCOM
55
+ });
53
56
  event.emit(pauseTimeToHideAllComponent);
54
57
  },
55
58
  onTouchEnd: () => {
@@ -3,7 +3,7 @@ import React, { useContext } from 'react';
3
3
  import { View } from '@ray-js/ray';
4
4
  import clsx from 'clsx';
5
5
  import { useStore } from '../../ctx/store';
6
- import { pauseTimeToHideAllComponent } from '../../ui/constant';
6
+ import { pauseTimeToHideAllComponent, widgetLabs, widgetClick } from '../../ui/constant';
7
7
  import { UIEventContext } from '../../ui/context';
8
8
  import { VoiceIntercom } from '../voiceIntercom';
9
9
  import './fullSmallIntercom.less';
@@ -27,6 +27,9 @@ export function FullSmallIntercom(props) {
27
27
  return null;
28
28
  }
29
29
  const onTouchStart = () => {
30
+ event.emit(widgetClick, {
31
+ widgetId: widgetLabs.FULL_SMALL_INTERCOM
32
+ });
30
33
  event.emit(pauseTimeToHideAllComponent);
31
34
  };
32
35
  const onTouchEnd = () => {
@@ -1,4 +1,5 @@
1
1
  export * from './battery';
2
+ export * from './signal4G';
2
3
  export * from './battery/batteryFull';
3
4
  export * from './screenshot';
4
5
  export * from './tempHumidity';
@@ -1,4 +1,5 @@
1
1
  export * from './battery';
2
+ export * from './signal4G';
2
3
  export * from './battery/batteryFull';
3
4
  export * from './screenshot';
4
5
  export * from './tempHumidity';
@@ -3,7 +3,7 @@ import { View, Text } from '@ray-js/ray';
3
3
  import clsx from 'clsx';
4
4
  import { useStore } from '../../ctx/store';
5
5
  import { UIEventContext } from '../../ui/context';
6
- import { hideAllComponent } from '../../ui/constant';
6
+ import { hideAllComponent, widgetLabs, widgetClick } from '../../ui/constant';
7
7
  import { MoveInteractiveControl } from './moveInteractiveControl';
8
8
  import './controlButton.less';
9
9
  const ID = 'MoveInteractiveControl';
@@ -26,6 +26,9 @@ export function MoveInteractiveControlButton(props) {
26
26
  if (screenType === 'vertical') return null;
27
27
  return /*#__PURE__*/React.createElement(View, {
28
28
  onClick: () => {
29
+ event.emit(widgetClick, {
30
+ widgetId: widgetLabs.MOVE_INTERACTIVE_CONTROL
31
+ });
29
32
  event.emit(hideAllComponent);
30
33
  if (hasContent('absolute', ID)) {
31
34
  event.emit('showMoveInteractiveControl');
@@ -3,7 +3,7 @@ import "core-js/modules/esnext.iterator.map.js";
3
3
  import React, { useCallback, useContext, useEffect, useState, useRef, useMemo } from 'react';
4
4
  import clsx from 'clsx';
5
5
  import { MoveInterActiveControlUI } from './moveInteractiveControlUI';
6
- import { playerTap, showAllComponent } from '../../ui/constant';
6
+ import { playerTap, showAllComponent, widgetLabs, widgetClick } from '../../ui/constant';
7
7
  import { useDpState, useSchemaInfo } from '../../hooks';
8
8
  import { UIEventContext } from '../../ui/context';
9
9
  import { useStore } from '../../ctx/store';
@@ -80,6 +80,12 @@ export function MoveInteractiveControl(props) {
80
80
  }),
81
81
  menu: menu,
82
82
  onClick: value => {
83
+ event.emit(widgetClick, {
84
+ widgetId: widgetLabs.MOVE_INTERACTIVE_CONTROL,
85
+ extra: {
86
+ key: value
87
+ }
88
+ });
83
89
  sendDp({
84
90
  [TYPE_CODE]: value
85
91
  });
@@ -1,5 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
+ import "core-js/modules/es.json.stringify.js";
3
4
  import { CoverView, View } from '@ray-js/ray';
4
5
  import { getDpIdByCode, publishDps } from '@ray-js/ray-ipc-utils';
5
6
  import _find from 'lodash/find';
@@ -1,14 +1,21 @@
1
1
  import { View, Text } from '@ray-js/ray';
2
- import React from 'react';
2
+ import React, { useContext } from 'react';
3
3
  import clsx from 'clsx';
4
4
  import { useStore } from '../../ctx/store';
5
+ import { UIEventContext } from '../../ui/context';
6
+ import { widgetLabs, widgetClick } from '../../ui/constant';
5
7
  import './muted.less';
6
8
  export const Muted = props => {
7
9
  const {
8
10
  mute,
9
11
  setMute,
10
- className
12
+ className,
13
+ event: propsEvent
11
14
  } = props;
15
+ const {
16
+ event: ctxEvent
17
+ } = useContext(UIEventContext);
18
+ const event = propsEvent !== null && propsEvent !== void 0 ? propsEvent : ctxEvent;
12
19
  const {
13
20
  isMuted
14
21
  } = useStore({
@@ -17,15 +24,9 @@ export const Muted = props => {
17
24
  return /*#__PURE__*/React.createElement(View, {
18
25
  className: clsx(className),
19
26
  onClick: () => {
20
- // IPCPlayerContext.setMuted({
21
- // mute: !isMuted,
22
- // success: res => {
23
- // setIsMuted(!isMuted);
24
- // },
25
- // fail: res => {
26
- // console.log('res===setMuted err', res);
27
- // },
28
- // });
27
+ event.emit(widgetClick, {
28
+ widgetId: widgetLabs.MUTED
29
+ });
29
30
  setMute(!isMuted);
30
31
  }
31
32
  }, isMuted ? /*#__PURE__*/React.createElement(Text, {
@@ -6,7 +6,7 @@ import { useMemoizedFn } from 'ahooks';
6
6
  import { UIEventContext } from '../../ui/context';
7
7
  import { usePtz } from '../../hooks';
8
8
  import { useStore } from '../../ctx/store';
9
- import { ptzControlId } from '../../ui/constant';
9
+ import { ptzControlId, widgetLabs, widgetClick } from '../../ui/constant';
10
10
  import './ptz.less';
11
11
  import { PtzControl } from './ptzControl';
12
12
  export const Ptz = props => {
@@ -40,6 +40,9 @@ export const Ptz = props => {
40
40
  }
41
41
  }, [screenType]);
42
42
  const onPtz = useMemoizedFn(() => {
43
+ event.emit(widgetClick, {
44
+ widgetId: widgetLabs.PTZ
45
+ });
43
46
  if (!isPtzActive) {
44
47
  showContent('bottomLeft', 'FullSmallIntercom');
45
48
  if (!hasContent('absolute', ptzControlId)) {
@@ -2,7 +2,7 @@ import React, { useState } from 'react';
2
2
  import { View, Image, CoverView, Text, setStorage } from '@ray-js/ray';
3
3
  import clsx from 'clsx';
4
4
  import { useStore } from '../../ctx/store';
5
- import { ptzControlTipId } from '../../ui/constant';
5
+ import { ptzControlTipId, widgetLabs, widgetClick } from '../../ui/constant';
6
6
  import { PlayState } from '../../interface';
7
7
  import './ptzControlTip.less';
8
8
  import { playerPtzControlTip } from '../../res';
@@ -20,6 +20,9 @@ export const PtzControlTip = props => {
20
20
  });
21
21
  // 获取缓存状态
22
22
  const changeShowTipModal = () => {
23
+ props.event.emit(widgetClick, {
24
+ widgetId: widgetLabs.PTZ_CONTROL_TIP
25
+ });
23
26
  setShowTipModal(false);
24
27
  deleteContent('absolute', ptzControlTipId);
25
28
  setStorage({
@@ -6,7 +6,7 @@ import { goToIpcPageNativeRoute } from '@ray-js/ray-ipc-utils';
6
6
  import Strings from '../../i18n';
7
7
  import { PlayState } from '../../interface';
8
8
  import { UIEventContext } from '../../ui/context';
9
- import { pauseTimeToHideAllComponent, changeIgnoreHideStopPreview } from '../../ui/constant';
9
+ import { pauseTimeToHideAllComponent, changeIgnoreHideStopPreview, widgetLabs, widgetClick } from '../../ui/constant';
10
10
  import { useStore, getDefaultStore } from '../../ctx/store';
11
11
  import './recordVideo.less';
12
12
  const CLOSE_TIME = 5000;
@@ -230,6 +230,11 @@ export function RecordVideo(props) {
230
230
  });
231
231
  };
232
232
  const handRecordVideo = async () => {
233
+ var _props$event, _props$event2;
234
+ (_props$event = props.event) !== null && _props$event !== void 0 ? _props$event : event;
235
+ ((_props$event2 = props.event) !== null && _props$event2 !== void 0 ? _props$event2 : event).emit(widgetClick, {
236
+ widgetId: widgetLabs.RECORD_VIDEO
237
+ });
233
238
  event.emit(pauseTimeToHideAllComponent);
234
239
  const store = getDefaultStore();
235
240
  const _recording = store.get(recordingAtom);
@@ -7,7 +7,7 @@ import Strings from '../../i18n';
7
7
  import { useMemoizedFn } from '../../hooks';
8
8
  import { useStore } from '../../ctx/store';
9
9
  import { UIEventContext } from '../../ui/context';
10
- import { playerTap, showAllComponent, pauseTimeToHideAllComponent } from '../../ui/constant';
10
+ import { playerTap, showAllComponent, pauseTimeToHideAllComponent, widgetLabs, widgetClick } from '../../ui/constant';
11
11
  import './resolution.less';
12
12
  export const FullResolutionControl = props => {
13
13
  const {
@@ -69,7 +69,15 @@ export const FullResolutionControl = props => {
69
69
  'ipc-plugin-absolute-move-in-right-hide': hide
70
70
  })
71
71
  }, resolutionList.map(item => /*#__PURE__*/React.createElement(Text, {
72
- onClick: () => changeResolution(item),
72
+ onClick: () => {
73
+ event.emit(widgetClick, {
74
+ widgetId: widgetLabs.FULL_RESOLUTION_CONTROL,
75
+ extra: {
76
+ resolution: item
77
+ }
78
+ });
79
+ changeResolution(item);
80
+ },
73
81
  key: item,
74
82
  className: clsx('ipc-player-plugin-full-resolution-control-text'),
75
83
  style: item === resolution && {
@@ -5,7 +5,7 @@ import React, { useContext } from 'react';
5
5
  import { useMemoizedFn } from 'ahooks';
6
6
  import Strings from '../../i18n';
7
7
  import { FullResolutionControl } from './fullResolutionControl';
8
- import { fullResolutionId, pauseTimeToHideAllComponent, hideAllComponent } from '../../ui/constant';
8
+ import { fullResolutionId, pauseTimeToHideAllComponent, hideAllComponent, widgetLabs, widgetClick } from '../../ui/constant';
9
9
  import { UIEventContext } from '../../ui/context';
10
10
  import { useStore } from '../../ctx/store';
11
11
  import './resolution.less';
@@ -30,6 +30,9 @@ export const Resolution = props => {
30
30
  event
31
31
  } = useContext(UIEventContext);
32
32
  const onResolution = useMemoizedFn(() => {
33
+ event.emit(widgetClick, {
34
+ widgetId: widgetLabs.RESOLUTION
35
+ });
33
36
  event.emit('resolutionBtnControlClick');
34
37
  console.log(`screenType: ${screenType}`);
35
38
  if (screenType === 'full') {
@@ -6,7 +6,7 @@ import { goToIpcPageNativeRoute } from '@ray-js/ray-ipc-utils';
6
6
  import Strings from '../../i18n';
7
7
  import { useStore } from '../../ctx/store';
8
8
  import { UIEventContext } from '../../ui/context';
9
- import { pauseTimeToHideAllComponent, changeIgnoreHideStopPreview } from '../../ui/constant';
9
+ import { pauseTimeToHideAllComponent, changeIgnoreHideStopPreview, widgetLabs, widgetClick } from '../../ui/constant';
10
10
  import './screenshot.less';
11
11
  const CLOSE_TIME = 5000;
12
12
  export function Screenshot(props) {
@@ -102,6 +102,11 @@ export function Screenshot(props) {
102
102
  timeToCloseToast();
103
103
  };
104
104
  const handClick = useMemoizedFn(() => {
105
+ var _props$event, _props$event2;
106
+ (_props$event = props.event) !== null && _props$event !== void 0 ? _props$event : event;
107
+ ((_props$event2 = props.event) !== null && _props$event2 !== void 0 ? _props$event2 : event).emit(widgetClick, {
108
+ widgetId: widgetLabs.SCREENSHOT
109
+ });
105
110
  console.log('截屏!!!');
106
111
  setState({
107
112
  showShot: false
@@ -0,0 +1 @@
1
+ export * from './signal4G';
@@ -0,0 +1 @@
1
+ export * from './signal4G';
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { ComponentConfigProps } from '../../interface';
3
+ import './signal4G.less';
4
+ interface IProp extends ComponentConfigProps {
5
+ className?: string;
6
+ }
7
+ export declare const Signal4G: (props: IProp) => React.JSX.Element | null;
8
+ export {};
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import { View, Image } from '@ray-js/ray';
3
+ import clsx from 'clsx';
4
+ import { useSignal4G } from '../../hooks';
5
+ import { signalSvgMap } from '../../res';
6
+ import './signal4G.less';
7
+ export const Signal4G = props => {
8
+ const {
9
+ className,
10
+ devId
11
+ } = props;
12
+ const {
13
+ dpValue,
14
+ signalKey
15
+ } = useSignal4G(devId);
16
+ if (dpValue === '' || !signalSvgMap[signalKey]) {
17
+ return null;
18
+ }
19
+ return /*#__PURE__*/React.createElement(View, {
20
+ className: clsx(className)
21
+ }, /*#__PURE__*/React.createElement(View, {
22
+ className: clsx('ipc-player-plugin-signal4g')
23
+ }, /*#__PURE__*/React.createElement(Image, {
24
+ className: clsx('ipc-player-plugin-signal4g-icon'),
25
+ src: signalSvgMap[signalKey],
26
+ mode: "aspectFit"
27
+ })));
28
+ };
@@ -0,0 +1,15 @@
1
+ .ipc-player-plugin-signal4g {
2
+ display: flex;
3
+ align-items: center;
4
+ height: calc(24px * var(--ipc-player-size-scale, 1));
5
+ padding: 0 calc(12px * var(--ipc-player-size-scale, 1));
6
+ border-radius: calc(24px * var(--ipc-player-size-scale, 1));
7
+ color: var(--iconColor);
8
+ font-size: calc(12px * var(--ipc-player-size-scale, 1));
9
+ background-color: rgba(255, 255, 255, 0.2);
10
+ box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
11
+ }
12
+ .ipc-player-plugin-signal4g-icon {
13
+ width: calc(20px * var(--ipc-player-size-scale, 1));
14
+ height: calc(20px * var(--ipc-player-size-scale, 1));
15
+ }
@@ -3,7 +3,7 @@ import React, { useContext } from 'react';
3
3
  import { View } from '@ray-js/ray';
4
4
  import clsx from 'clsx';
5
5
  import { useStore } from '../../ctx/store';
6
- import { pauseTimeToHideAllComponent } from '../../ui/constant';
6
+ import { pauseTimeToHideAllComponent, widgetLabs, widgetClick } from '../../ui/constant';
7
7
  import { UIEventContext } from '../../ui/context';
8
8
  import { VoiceIntercom } from '../voiceIntercom';
9
9
  import './verticalSmallIntercom.less';
@@ -27,6 +27,9 @@ export function VerticalSmallIntercom(props) {
27
27
  event
28
28
  } = useContext(UIEventContext);
29
29
  const onTouchStart = () => {
30
+ event.emit(widgetClick, {
31
+ widgetId: widgetLabs.VERTICAL_SMALL_INTERCOM
32
+ });
30
33
  event.emit(pauseTimeToHideAllComponent);
31
34
  };
32
35
  const onTouchEnd = () => {
@@ -71,12 +71,12 @@ export declare const VoiceIntercom: React.ForwardRefExoticComponent<{
71
71
  onLocalizerViewLocated: (this: any, event: any) => Promise<void>;
72
72
  onSwipeAtVideoIndex: (this: any, event: any) => Promise<void>;
73
73
  };
74
- setLayoutStyle: (style: import("../../interface").MultiCameraLayoutStyle) => void;
75
- setScreenMode: (mode: import("../../interface").MultiCameraScreenMode) => void;
74
+ setLayoutStyle: (this: unknown, style: import("../../interface").MultiCameraLayoutStyle) => void;
75
+ setScreenMode: (this: unknown, mode: import("../../interface").MultiCameraScreenMode) => void;
76
76
  setPtzStatus: (value: boolean | ((prevValue: boolean) => boolean)) => void;
77
- showLenNames: (value: boolean) => void;
77
+ showLenNames: (this: unknown, value: boolean) => void;
78
78
  setNextLayoutStyle: (value: import("../../interface").MultiCameraLayoutStyle | ((prevValue: import("../../interface").MultiCameraLayoutStyle) => import("../../interface").MultiCameraLayoutStyle)) => void;
79
- getNextLayoutStyle: () => Promise<import("../../interface").MultiCameraLayoutStyle>;
79
+ getNextLayoutStyle: (this: unknown) => Promise<import("../../interface").MultiCameraLayoutStyle>;
80
80
  };
81
81
  } & {
82
82
  style?: React.CSSProperties | undefined;
@@ -8,7 +8,7 @@ import './voiceIntercom.less';
8
8
  import { PlayerStreamStatus, IntercomMode, PlayState } from '../../interface';
9
9
  import { UIEventContext } from '../../ui/context';
10
10
  import { radialGradient } from '../../utils';
11
- import { startTimeToHideAllComponent, pauseTimeToHideAllComponent, changeIgnoreHideStopPreview } from '../../ui/constant';
11
+ import { startTimeToHideAllComponent, pauseTimeToHideAllComponent, changeIgnoreHideStopPreview, widgetLabs, widgetClick } from '../../ui/constant';
12
12
  const NILL = () => null;
13
13
  export const VoiceIntercom = /*#__PURE__*/forwardRef((props, ref) => {
14
14
  const {
@@ -106,7 +106,12 @@ export const VoiceIntercom = /*#__PURE__*/forwardRef((props, ref) => {
106
106
  event.emit(startTimeToHideAllComponent);
107
107
  };
108
108
  const handTouchStart = async e => {
109
+ var _props$event, _props$event2;
109
110
  if (disabled) return;
111
+ (_props$event = props.event) !== null && _props$event !== void 0 ? _props$event : event;
112
+ ((_props$event2 = props.event) !== null && _props$event2 !== void 0 ? _props$event2 : event).emit(widgetClick, {
113
+ widgetId: widgetLabs.VOICE_INTERCOM
114
+ });
110
115
  onTouchStart(e);
111
116
  getDefaultStore();
112
117
  if (loading.current) return;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ray-js/ipc-player-integration",
3
- "version": "0.0.29-beta.5",
3
+ "version": "0.0.29-beta.6",
4
4
  "description": "IPC 融合播放器",
5
5
  "main": "lib/index",
6
6
  "files": [
@@ -37,9 +37,8 @@
37
37
  "dependencies": {
38
38
  "@ray-js/direction-control": "^0.0.8",
39
39
  "@ray-js/ipc-ptz-zoom": "0.0.3-beta-1",
40
- "@ray-js/panel-sdk": "^1.13.1",
41
- "@ray-js/ray-ipc-player": "^2.0.31",
42
- "@ray-js/ray-ipc-utils": "^1.1.10",
40
+ "@ray-js/ray-ipc-player": "2.1.0-beta.1",
41
+ "@ray-js/ray-ipc-utils": "1.1.13-beta.1",
43
42
  "@ray-js/svg": "0.2.0",
44
43
  "clsx": "^1.2.1",
45
44
  "color": "^5.0.2",
@@ -48,8 +47,8 @@
48
47
  "devDependencies": {
49
48
  "@commitlint/cli": "^7.2.1",
50
49
  "@commitlint/config-conventional": "^9.0.1",
51
- "@ray-js/cli": "^1.7.53",
52
- "@ray-js/ray": "^1.7.53",
50
+ "@ray-js/cli": "^1.7.14",
51
+ "@ray-js/ray": "^1.7.60",
53
52
  "@testing-library/react-hooks": "^8.0.1",
54
53
  "@types/jest": "^29.5.14",
55
54
  "ahooks": "^3.8.4",