model-action 2.2.4 → 2.2.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.
@@ -8,9 +8,11 @@ export interface SendParam {
8
8
  }
9
9
  export declare class Action {
10
10
  private static pendingRequests;
11
+ private static onLog?;
11
12
  /** 正在组装的分包(同一时间仅处理一条分包流;并行多条需三维在每段携带 requestId,见 tryExtractRequestId) */
12
13
  private static chunkAssembly;
13
14
  private static defaultTimeout;
15
+ static setOnLog(onLog?: (...args: any[]) => void): void;
14
16
  /**
15
17
  * 生成唯一请求ID
16
18
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Action.d.ts","sourceRoot":"","sources":["../../src/modules/Action.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAEnF,MAAM,WAAW,SAAS;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE;QACF,MAAM,EAAE,MAAM,CAAC;QACf,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACtB,CAAC;CACL;AAeD,qBAAa,MAAM;IAEf,OAAO,CAAC,MAAM,CAAC,eAAe,CAAqC;IAEnE,yEAAyE;IACzE,OAAO,CAAC,MAAM,CAAC,aAAa,CAA8B;IAG1D,OAAO,CAAC,MAAM,CAAC,cAAc,CAAS;IAEtC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAIhC;;;;OAIG;IACH;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAKlC;;;;OAIG;IACH,MAAM,CAAC,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI;IAkErF,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,GAAG;IAgBvC;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,SAAS,EAChC,KAAK,EAAE,CAAC,EACR,GAAG,GAAE,MAAW,EAChB,OAAO,GAAE,MAA4B,GACtC,OAAO,CAAC,GAAG,CAAC;CAoClB"}
1
+ {"version":3,"file":"Action.d.ts","sourceRoot":"","sources":["../../src/modules/Action.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAEnF,MAAM,WAAW,SAAS;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE;QACF,MAAM,EAAE,MAAM,CAAC;QACf,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACtB,CAAC;CACL;AAeD,qBAAa,MAAM;IAEf,OAAO,CAAC,MAAM,CAAC,eAAe,CAAqC;IACnE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAA2B;IAEhD,yEAAyE;IACzE,OAAO,CAAC,MAAM,CAAC,aAAa,CAA8B;IAG1D,OAAO,CAAC,MAAM,CAAC,cAAc,CAAS;IAEtC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI;IAIhD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAIhC;;;;OAIG;IACH;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAKlC;;;;OAIG;IACH,MAAM,CAAC,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI;IA8FrF,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,GAAG;IAgBvC;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,SAAS,EAChC,KAAK,EAAE,CAAC,EACR,GAAG,GAAE,MAAW,EAChB,OAAO,GAAE,MAA4B,GACtC,OAAO,CAAC,GAAG,CAAC;CAwClB"}
@@ -1,4 +1,7 @@
1
1
  export class Action {
2
+ static setOnLog(onLog) {
3
+ this.onLog = onLog;
4
+ }
2
5
  /**
3
6
  * 生成唯一请求ID
4
7
  */
@@ -23,6 +26,7 @@ export class Action {
23
26
  * @param onMessage 与 Init 中一致的业务回调(收到完整一条 JSON 后调用一次)
24
27
  */
25
28
  static handleIncomingRawMessage(raw, onMessage) {
29
+ var _a, _b, _c, _d, _e, _f, _g;
26
30
  if (typeof raw !== 'string') {
27
31
  const data = raw;
28
32
  this.handleResponse(data);
@@ -37,10 +41,18 @@ export class Action {
37
41
  }
38
42
  catch (e) {
39
43
  console.error('解析消息失败:', e);
44
+ (_a = this.onLog) === null || _a === void 0 ? void 0 : _a.call(this, {
45
+ content: `解析消息失败: ${e}`,
46
+ operTime: +new Date().getTime(),
47
+ });
40
48
  return;
41
49
  }
42
50
  this.handleResponse(data);
43
51
  onMessage === null || onMessage === void 0 ? void 0 : onMessage(data);
52
+ (_b = this.onLog) === null || _b === void 0 ? void 0 : _b.call(this, {
53
+ content: `收到三维消息: ${JSON.stringify(data)}`,
54
+ operTime: +new Date().getTime(),
55
+ });
44
56
  return;
45
57
  }
46
58
  const tag = raw.slice(0, 2);
@@ -48,6 +60,10 @@ export class Action {
48
60
  if (tag === '-S') {
49
61
  if (this.chunkAssembly) {
50
62
  console.warn('分包消息: 收到新的 -S,丢弃未拼完的上一包');
63
+ (_c = this.onLog) === null || _c === void 0 ? void 0 : _c.call(this, {
64
+ content: `分包消息: 收到新的 -S,丢弃未拼完的上一包`,
65
+ operTime: +new Date().getTime(),
66
+ });
51
67
  }
52
68
  this.chunkAssembly = { buffer: body, requestId: this.tryExtractRequestId(body) };
53
69
  return;
@@ -55,6 +71,10 @@ export class Action {
55
71
  if (tag === '-I') {
56
72
  if (!this.chunkAssembly) {
57
73
  console.error('分包消息: 收到 -I 但缺少前置 -S');
74
+ (_d = this.onLog) === null || _d === void 0 ? void 0 : _d.call(this, {
75
+ content: `分包消息: 收到 -I 但缺少前置 -S`,
76
+ operTime: +new Date().getTime(),
77
+ });
58
78
  return;
59
79
  }
60
80
  this.chunkAssembly.buffer += body;
@@ -66,6 +86,10 @@ export class Action {
66
86
  if (tag === '-E') {
67
87
  if (!this.chunkAssembly) {
68
88
  console.error('分包消息: 收到 -E 但缺少前置 -S');
89
+ (_e = this.onLog) === null || _e === void 0 ? void 0 : _e.call(this, {
90
+ content: `分包消息: 收到 -E 但缺少前置 -S`,
91
+ operTime: +new Date().getTime(),
92
+ });
69
93
  return;
70
94
  }
71
95
  this.chunkAssembly.buffer += body;
@@ -77,10 +101,18 @@ export class Action {
77
101
  }
78
102
  catch (e) {
79
103
  console.error('分包消息 JSON 解析失败:', e);
104
+ (_f = this.onLog) === null || _f === void 0 ? void 0 : _f.call(this, {
105
+ content: `分包消息 JSON 解析失败: ${e}`,
106
+ operTime: +new Date().getTime(),
107
+ });
80
108
  return;
81
109
  }
82
110
  this.handleResponse(data);
83
111
  onMessage === null || onMessage === void 0 ? void 0 : onMessage(data);
112
+ (_g = this.onLog) === null || _g === void 0 ? void 0 : _g.call(this, {
113
+ content: `收到三维分包消息: ${JSON.stringify(data)}`,
114
+ operTime: +new Date().getTime(),
115
+ });
84
116
  }
85
117
  }
86
118
  static handleResponse(responseData) {
@@ -107,12 +139,16 @@ export class Action {
107
139
  */
108
140
  static sendParam(param, msg = '', timeout = this.defaultTimeout) {
109
141
  return new Promise((resolve, reject) => {
110
- var _a;
142
+ var _a, _b;
111
143
  // 生成唯一请求ID
112
144
  const requestId = this.generateRequestId();
113
145
  // 在请求参数中添加 requestId
114
146
  const paramWithId = Object.assign(Object.assign({}, param), { requestId });
115
147
  console.log(`发送给三维|${msg}`, JSON.stringify(paramWithId));
148
+ (_a = this.onLog) === null || _a === void 0 ? void 0 : _a.call(this, {
149
+ content: `发送给三维|${msg} : ${JSON.stringify(paramWithId)}`,
150
+ operTime: +new Date().getTime(),
151
+ });
116
152
  const timeoutHandle = setTimeout(() => {
117
153
  this.pendingRequests.delete(requestId);
118
154
  reject(new Error(`请求等待超时(三维可能不返回): ${msg} [requestId=${requestId}]`));
@@ -125,7 +161,7 @@ export class Action {
125
161
  });
126
162
  //peer-stream 中已经把ps挂到window上了,为了不改peer-stream的代码,这里直接使用window.ps
127
163
  try {
128
- (_a = window.ps) === null || _a === void 0 ? void 0 : _a.emitMessage(JSON.stringify(paramWithId));
164
+ (_b = window.ps) === null || _b === void 0 ? void 0 : _b.emitMessage(JSON.stringify(paramWithId));
129
165
  }
130
166
  catch (error) {
131
167
  clearTimeout(timeoutHandle);
@@ -1 +1 @@
1
- {"version":3,"file":"Action.js","sourceRoot":"","sources":["../../src/modules/Action.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Action.js","sourceRoot":"","sources":["../../src/modules/Action.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,8 @@ export interface InitVideoOptions {
16
16
  onQueueChange?: (seq: number) => void;
17
17
  /** 视频元数据加载完成回调函数 */
18
18
  onLoadedMetadata?: () => void;
19
+ /** 日志记录回调 **/
20
+ onLog?: (data: any) => void;
19
21
  }
20
22
  export declare class InitAction extends Action {
21
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Init.d.ts","sourceRoot":"","sources":["../../src/modules/Init.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,mBAAmB,CAAC;AAE3B,MAAM,WAAW,gBAAgB;IAC7B,wBAAwB;IACxB,SAAS,EAAE,WAAW,CAAC;IACvB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa;IACb,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAChC,eAAe;IACf,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,iBAAiB;IACjB,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,oBAAoB;IACpB,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;CACjC;AAED,qBAAa,UAAW,SAAQ,MAAM;IAClC;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,gBAAgB;CAsEhE"}
1
+ {"version":3,"file":"Init.d.ts","sourceRoot":"","sources":["../../src/modules/Init.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,mBAAmB,CAAC;AAE3B,MAAM,WAAW,gBAAgB;IAC7B,wBAAwB;IACxB,SAAS,EAAE,WAAW,CAAC;IACvB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa;IACb,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAChC,eAAe;IACf,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,iBAAiB;IACjB,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,oBAAoB;IACpB,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,cAAc;IACd,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CAC/B;AAED,qBAAa,UAAW,SAAQ,MAAM;IAClC;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,gBAAgB;CAuEhE"}
@@ -11,6 +11,7 @@ export class InitAction extends Action {
11
11
  * @returns HTMLVideoElement 返回创建的video元素
12
12
  */
13
13
  static initVideo(options) {
14
+ Action.setOnLog(options.onLog);
14
15
  // 创建 peer-stream video 元素
15
16
  const ps = document.createElement("video", { is: "peer-stream" });
16
17
  // 设置样式
@@ -1 +1 @@
1
- {"version":3,"file":"Init.js","sourceRoot":"","sources":["../../src/modules/Init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Init.js","sourceRoot":"","sources":["../../src/modules/Init.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "model-action",
3
- "version": "2.2.4",
3
+ "version": "2.2.6",
4
4
  "description": "与三维交互api",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -15,6 +15,9 @@
15
15
  "index.d.js"
16
16
  ],
17
17
  "author": "andm31",
18
+ "publishConfig": {
19
+ "registry": "https://registry.npmjs.org"
20
+ },
18
21
  "license": "ISC",
19
22
  "devDependencies": {
20
23
  "typescript": "^5.8.3"
@@ -24,6 +24,7 @@ interface ChunkAssembly {
24
24
  export class Action {
25
25
  // 存储待处理的请求,key 为 requestId
26
26
  private static pendingRequests = new Map<string, PendingRequest>();
27
+ private static onLog?: (...args: any[]) => void;
27
28
 
28
29
  /** 正在组装的分包(同一时间仅处理一条分包流;并行多条需三维在每段携带 requestId,见 tryExtractRequestId) */
29
30
  private static chunkAssembly: ChunkAssembly | null = null;
@@ -31,6 +32,10 @@ export class Action {
31
32
  // 默认超时时间(毫秒)
32
33
  private static defaultTimeout = 10000;
33
34
 
35
+ static setOnLog(onLog?: (...args: any[]) => void) {
36
+ this.onLog = onLog;
37
+ }
38
+
34
39
  /**
35
40
  * 生成唯一请求ID
36
41
  */
@@ -71,10 +76,18 @@ export class Action {
71
76
  data = JSON.parse(raw);
72
77
  } catch (e) {
73
78
  console.error('解析消息失败:', e);
79
+ this.onLog?.({
80
+ content: `解析消息失败: ${e}`,
81
+ operTime: +new Date().getTime(),
82
+ });
74
83
  return;
75
84
  }
76
85
  this.handleResponse(data);
77
86
  onMessage?.(data);
87
+ this.onLog?.({
88
+ content: `收到三维消息: ${JSON.stringify(data)}`,
89
+ operTime: +new Date().getTime(),
90
+ });
78
91
  return;
79
92
  }
80
93
 
@@ -84,6 +97,10 @@ export class Action {
84
97
  if (tag === '-S') {
85
98
  if (this.chunkAssembly) {
86
99
  console.warn('分包消息: 收到新的 -S,丢弃未拼完的上一包');
100
+ this.onLog?.({
101
+ content: `分包消息: 收到新的 -S,丢弃未拼完的上一包`,
102
+ operTime: +new Date().getTime(),
103
+ });
87
104
  }
88
105
  this.chunkAssembly = { buffer: body, requestId: this.tryExtractRequestId(body) };
89
106
  return;
@@ -92,6 +109,10 @@ export class Action {
92
109
  if (tag === '-I') {
93
110
  if (!this.chunkAssembly) {
94
111
  console.error('分包消息: 收到 -I 但缺少前置 -S');
112
+ this.onLog?.({
113
+ content: `分包消息: 收到 -I 但缺少前置 -S`,
114
+ operTime: +new Date().getTime(),
115
+ });
95
116
  return;
96
117
  }
97
118
  this.chunkAssembly.buffer += body;
@@ -104,6 +125,10 @@ export class Action {
104
125
  if (tag === '-E') {
105
126
  if (!this.chunkAssembly) {
106
127
  console.error('分包消息: 收到 -E 但缺少前置 -S');
128
+ this.onLog?.({
129
+ content: `分包消息: 收到 -E 但缺少前置 -S`,
130
+ operTime: +new Date().getTime(),
131
+ });
107
132
  return;
108
133
  }
109
134
  this.chunkAssembly.buffer += body;
@@ -115,10 +140,18 @@ export class Action {
115
140
  data = JSON.parse(fullJson);
116
141
  } catch (e) {
117
142
  console.error('分包消息 JSON 解析失败:', e);
143
+ this.onLog?.({
144
+ content: `分包消息 JSON 解析失败: ${e}`,
145
+ operTime: +new Date().getTime(),
146
+ });
118
147
  return;
119
148
  }
120
149
  this.handleResponse(data);
121
150
  onMessage?.(data);
151
+ this.onLog?.({
152
+ content: `收到三维分包消息: ${JSON.stringify(data)}`,
153
+ operTime: +new Date().getTime(),
154
+ });
122
155
  }
123
156
  }
124
157
 
@@ -128,7 +161,7 @@ export class Action {
128
161
  const request = this.pendingRequests.get(responseData.requestId)!;
129
162
  clearTimeout(request.timeout);
130
163
  this.pendingRequests.delete(responseData.requestId);
131
-
164
+
132
165
  // 根据响应状态决定 resolve 或 reject
133
166
  if (responseData.code === '0' || responseData.code === 0) {
134
167
  request.resolve(responseData);
@@ -161,6 +194,10 @@ export class Action {
161
194
  };
162
195
 
163
196
  console.log(`发送给三维|${msg}`, JSON.stringify(paramWithId));
197
+ this.onLog?.({
198
+ content: `发送给三维|${msg} : ${JSON.stringify(paramWithId)}`,
199
+ operTime: +new Date().getTime(),
200
+ });
164
201
 
165
202
  const timeoutHandle = setTimeout(() => {
166
203
  this.pendingRequests.delete(requestId);
@@ -18,6 +18,8 @@ export interface InitVideoOptions {
18
18
  onQueueChange?: (seq: number) => void;
19
19
  /** 视频元数据加载完成回调函数 */
20
20
  onLoadedMetadata?: () => void;
21
+ /** 日志记录回调 **/
22
+ onLog?: (data: any) => void;
21
23
  }
22
24
 
23
25
  export class InitAction extends Action {
@@ -27,6 +29,7 @@ export class InitAction extends Action {
27
29
  * @returns HTMLVideoElement 返回创建的video元素
28
30
  */
29
31
  static initVideo(options: InitVideoOptions): HTMLVideoElement {
32
+ Action.setOnLog(options.onLog);
30
33
  // 创建 peer-stream video 元素
31
34
  const ps = document.createElement("video", { is: "peer-stream" }) as any;
32
35