@cloud-app-dev/vidc 3.1.11 → 3.1.13

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.
@@ -227,6 +227,7 @@ var SinglePlayer = /*#__PURE__*/React.forwardRef(function (_a, ref) {
227
227
  hideTimeProgress: !!customTimeLine,
228
228
  oneFpsPlay: oneFpsPlay
229
229
  };
230
+ var hasApiEventInit = api && event;
230
231
  return /*#__PURE__*/React.createElement(Provider, {
231
232
  api: playApi,
232
233
  event: event,
@@ -243,20 +244,20 @@ var SinglePlayer = /*#__PURE__*/React.forwardRef(function (_a, ref) {
243
244
  objectFit: fit,
244
245
  visibility: state.isFpsPlay ? 'hidden' : 'unset'
245
246
  }
246
- })), api && event && hasLink && state.isFpsPlay ? /*#__PURE__*/React.createElement(FPSPlay, {
247
+ })), hasApiEventInit && hasLink && state.isFpsPlay ? /*#__PURE__*/React.createElement(FPSPlay, {
247
248
  fps: fps,
248
249
  event: event,
249
250
  api: playApi,
250
251
  fpsDelay: fpsDelay
251
- }) : /*#__PURE__*/React.createElement(Empty, null)), api && event && hasLink ? /*#__PURE__*/React.createElement(VideoMessage, {
252
+ }) : /*#__PURE__*/React.createElement(Empty, null)), hasApiEventInit && hasLink ? /*#__PURE__*/React.createElement(VideoMessage, {
252
253
  api: playApi,
253
254
  event: event
254
- }) : /*#__PURE__*/React.createElement(Empty, null), api && event && hasLink && !hideContrallerBar ? /*#__PURE__*/React.createElement(ContrallerEvent, {
255
+ }) : /*#__PURE__*/React.createElement(Empty, null), hasApiEventInit && hasLink && !hideContrallerBar ? /*#__PURE__*/React.createElement(ContrallerEvent, {
255
256
  children: /*#__PURE__*/React.createElement(ContrallerBar, Object.assign({}, contrallerProps))
256
- }) : /*#__PURE__*/React.createElement(Empty, null), customTimeLine ? customTimeLine : !hideContrallerBar ? /*#__PURE__*/React.createElement(Timeline, {
257
+ }) : /*#__PURE__*/React.createElement(Empty, null), hasApiEventInit ? customTimeLine ? customTimeLine : !hideContrallerBar ? /*#__PURE__*/React.createElement(Timeline, {
257
258
  api: playApi,
258
259
  event: event
259
- }) : /*#__PURE__*/React.createElement(Empty, null), children));
260
+ }) : /*#__PURE__*/React.createElement(Empty, null) : /*#__PURE__*/React.createElement(Empty, null), children));
260
261
  });
261
262
 
262
263
  function Empty() {
@@ -15,6 +15,8 @@ import useBarStatus from './contraller_bar/useBarStatus';
15
15
  import { useVideoEvent } from './event';
16
16
  import "./style/timeline.css";
17
17
  export function useTimes(api, event, isFpsPlay) {
18
+ console.log(api, event);
19
+
18
20
  var _useState = useState({
19
21
  currentTime: 0,
20
22
  buffered: 0
@@ -8,6 +8,3 @@
8
8
  align-items: center;
9
9
  justify-content: center;
10
10
  }
11
- .lm-player-ext-layout .lm-player-iconfont {
12
- font-size: 66px;
13
- }
@@ -1,10 +1,8 @@
1
1
  /// <reference types="react" />
2
- import { ISegmentType } from '../Player/player';
3
2
  import './index.less';
4
3
  export declare type PlayModeType = 1 | 2;
5
4
  export interface IPluginProps {
6
5
  url?: string;
7
- segments?: ISegmentType[];
8
6
  children: JSX.Element;
9
7
  /**
10
8
  * @description 模式1浏览器模式,2插件模式
@@ -44,5 +42,5 @@ export declare function getLocalPlayPath(url: string, params?: string): string;
44
42
  export declare function usePlugin(mode: PlayModeType, key: any): {
45
43
  needInstall: boolean;
46
44
  };
47
- export declare function ExtModel({ url, children, mode, pluginDownloadUrl, segments, pluginParams, loading }: IPluginProps): JSX.Element;
45
+ export declare function ExtModel({ url, children, mode, pluginDownloadUrl, pluginParams, loading }: IPluginProps): JSX.Element;
48
46
  export { ExtModel as default };
@@ -73,14 +73,73 @@ export function usePlugin(mode, key) {
73
73
  }, [state.installed, mode])
74
74
  };
75
75
  }
76
- export function ExtModel(_ref) {
77
- var url = _ref.url,
78
- children = _ref.children,
79
- mode = _ref.mode,
80
- pluginDownloadUrl = _ref.pluginDownloadUrl,
81
- segments = _ref.segments,
82
- pluginParams = _ref.pluginParams,
83
- loading = _ref.loading;
76
+
77
+ function NeedInstallPlugin(_ref) {
78
+ var pluginDownloadUrl = _ref.pluginDownloadUrl,
79
+ retry = _ref.retry;
80
+ return /*#__PURE__*/React.createElement("div", {
81
+ className: "lm-player-ext-layout"
82
+ }, /*#__PURE__*/React.createElement("div", {
83
+ style: {
84
+ marginTop: -60,
85
+ textAlign: 'center'
86
+ }
87
+ }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(IconFont, {
88
+ type: "lm-player-PlaySource",
89
+ style: {
90
+ fontSize: 66
91
+ }
92
+ })), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("span", null, "\u8BF7", /*#__PURE__*/React.createElement("a", {
93
+ target: "_blank",
94
+ href: pluginDownloadUrl,
95
+ style: {
96
+ textDecoration: 'none',
97
+ padding: '0 4px'
98
+ },
99
+ download: "PlayerPlugin.exe",
100
+ rel: "noopener noreferrer"
101
+ }, "\u4E0B\u8F7D"), "\u64AD\u653E\u63D2\u4EF6\uFF0C"), /*#__PURE__*/React.createElement("span", null, "\u82E5\u5DF2\u5B89\u88C5\u8BF7\u70B9\u51FB", /*#__PURE__*/React.createElement("a", {
102
+ style: {
103
+ padding: '0 4px'
104
+ },
105
+ onClick: retry
106
+ }, "\u91CD\u8BD5")))));
107
+ }
108
+
109
+ function Loading() {
110
+ return /*#__PURE__*/React.createElement("div", {
111
+ className: "lm-player-ext-layout"
112
+ }, /*#__PURE__*/React.createElement("div", {
113
+ style: {
114
+ marginTop: -60,
115
+ textAlign: 'center'
116
+ }
117
+ }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(IconFont, {
118
+ type: "lm-player-PlaySource",
119
+ style: {
120
+ fontSize: 66
121
+ }
122
+ })), /*#__PURE__*/React.createElement("div", null, "\u6B63\u5728\u83B7\u53D6\u89C6\u9891\u6570\u636E\uFF0C\u8BF7\u7A0D\u7B49...")));
123
+ }
124
+
125
+ function Empty() {
126
+ return /*#__PURE__*/React.createElement("div", {
127
+ className: "lm-player-ext-layout"
128
+ }, /*#__PURE__*/React.createElement(IconFont, {
129
+ type: "lm-player-PlaySource",
130
+ style: {
131
+ fontSize: 66
132
+ }
133
+ }));
134
+ }
135
+
136
+ export function ExtModel(_ref2) {
137
+ var url = _ref2.url,
138
+ children = _ref2.children,
139
+ mode = _ref2.mode,
140
+ pluginDownloadUrl = _ref2.pluginDownloadUrl,
141
+ pluginParams = _ref2.pluginParams,
142
+ loading = _ref2.loading;
84
143
 
85
144
  var _useState3 = useState({
86
145
  forceKey: Date.now()
@@ -90,10 +149,8 @@ export function ExtModel(_ref) {
90
149
  setState = _useState4[1];
91
150
 
92
151
  var hasUrl = useMemo(function () {
93
- return !!url || Array.isArray(segments) && segments.find(function (v) {
94
- return v.url;
95
- });
96
- }, [url, segments]);
152
+ return !!url;
153
+ }, [url]);
97
154
 
98
155
  var _usePlugin = usePlugin(mode, state.forceKey),
99
156
  needInstall = _usePlugin.needInstall; // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -102,75 +159,32 @@ export function ExtModel(_ref) {
102
159
  var playUrl = useMemo(function () {
103
160
  return mode === 2 && url ? getLocalPlayPath(url, pluginParams) : url;
104
161
  }, [url, mode]);
105
- var playSegments = useMemo(function () {
106
- return mode === 2 && segments ? segments.map(function (v) {
107
- return Object.assign(Object.assign({}, v), {
108
- url: v.url ? getLocalPlayPath(v.url, pluginParams) : v.url
109
- });
110
- }) : segments;
111
- }, // eslint-disable-next-line react-hooks/exhaustive-deps
112
- [segments, mode]);
113
162
 
114
163
  if (needInstall) {
115
- return /*#__PURE__*/React.createElement("div", {
116
- className: "lm-player-ext-layout"
117
- }, /*#__PURE__*/React.createElement("div", {
118
- style: {
119
- marginTop: -60,
120
- textAlign: 'center'
121
- }
122
- }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(IconFont, {
123
- type: "lm-player-PlaySource"
124
- })), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("span", null, "\u8BF7", /*#__PURE__*/React.createElement("a", {
125
- target: "_blank",
126
- href: pluginDownloadUrl,
127
- style: {
128
- textDecoration: 'none',
129
- padding: '0 4px'
130
- },
131
- download: "PlayerPlugin.exe",
132
- rel: "noopener noreferrer"
133
- }, "\u4E0B\u8F7D"), "\u64AD\u653E\u63D2\u4EF6\uFF0C"), /*#__PURE__*/React.createElement("span", null, "\u82E5\u5DF2\u5B89\u88C5\u8BF7\u70B9\u51FB", /*#__PURE__*/React.createElement("a", {
134
- style: {
135
- padding: '0 4px'
136
- },
137
- onClick: function onClick() {
164
+ return /*#__PURE__*/React.createElement(NeedInstallPlugin, {
165
+ pluginDownloadUrl: pluginDownloadUrl,
166
+ retry: function retry() {
138
167
  return setState(function (old) {
139
168
  return Object.assign(Object.assign({}, old), {
140
169
  forceKey: Date.now()
141
170
  });
142
171
  });
143
172
  }
144
- }, "\u91CD\u8BD5")))));
173
+ });
145
174
  }
146
175
 
147
176
  if (loading) {
148
- return /*#__PURE__*/React.createElement("div", {
149
- className: "lm-player-ext-layout"
150
- }, /*#__PURE__*/React.createElement("div", {
151
- style: {
152
- marginTop: -60,
153
- textAlign: 'center'
154
- }
155
- }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(IconFont, {
156
- type: "lm-player-PlaySource"
157
- })), /*#__PURE__*/React.createElement("div", null, "\u6B63\u5728\u83B7\u53D6\u89C6\u9891\u6570\u636E\uFF0C\u8BF7\u7A0D\u7B49...")));
177
+ return /*#__PURE__*/React.createElement(Loading, null);
158
178
  }
159
179
 
160
180
  if (!hasUrl) {
161
- return /*#__PURE__*/React.createElement("div", {
162
- className: "lm-player-ext-layout"
163
- }, /*#__PURE__*/React.createElement(IconFont, {
164
- type: "lm-player-PlaySource"
165
- }));
181
+ return /*#__PURE__*/React.createElement(Empty, null);
166
182
  }
167
183
 
168
184
  return /*#__PURE__*/React.createElement("div", {
169
185
  className: "lm-player-ext-layout"
170
- }, /*#__PURE__*/React.cloneElement(children, url ? {
186
+ }, /*#__PURE__*/React.cloneElement(children, {
171
187
  url: playUrl
172
- } : {
173
- segments: playSegments
174
188
  }));
175
189
  }
176
190
  export { ExtModel as default };
@@ -100,8 +100,7 @@ export function SegmentPlayerWithExt(_a) {
100
100
  onClick: onClick,
101
101
  onDoubleClick: toggleFullscreen
102
102
  }, /*#__PURE__*/React.createElement(ExtModel, {
103
- segments: segments,
104
- mode: mode,
103
+ mode: 1,
105
104
  loading: httpLoading
106
105
  }, /*#__PURE__*/React.createElement(SegmentPlayer, Object.assign({}, props, {
107
106
  segments: segments,
@@ -144,10 +143,18 @@ export function FrontendPlayerWithExt(_ref) {
144
143
  return undefined;
145
144
  }
146
145
 
147
- var _ref2 = [segments[0].beginTime, segments[segments.length - 1].endTime],
146
+ var index = segments.findIndex(function (v) {
147
+ return !!v.url;
148
+ });
149
+
150
+ if (index === -1) {
151
+ return undefined;
152
+ }
153
+
154
+ var _ref2 = [segments[index].beginTime, segments[segments.length - 1].endTime],
148
155
  begin = _ref2[0],
149
156
  end = _ref2[1];
150
- var videoUrl = new URL(segments[0].url);
157
+ var videoUrl = new URL(segments[index].url);
151
158
  var url;
152
159
 
153
160
  if (getLocalRecordUrl) {
@@ -227,7 +234,7 @@ export function FrontendPlayerWithExt(_ref) {
227
234
  onClick: onClick,
228
235
  onDoubleClick: toggleFullscreen
229
236
  }, /*#__PURE__*/React.createElement(ExtModel, {
230
- segments: segments,
237
+ url: state.url,
231
238
  mode: mode,
232
239
  pluginDownloadUrl: pluginDownloadUrl,
233
240
  loading: httpLoading
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "private": false,
3
3
  "name": "@cloud-app-dev/vidc",
4
4
  "description": "Video Image Data Componennts",
5
- "version": "3.1.11",
5
+ "version": "3.1.13",
6
6
  "scripts": {
7
7
  "start": "dumi dev",
8
8
  "docs:build": "dumi build",