@luxonis/visualizer-protobuf 3.1.0 → 3.1.2

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/dist/{depth-BJ1GI-lD.js → depth-DlC6A3Te.js} +65 -1
  2. package/dist/{deserialization.worker-CpadaVUC.js → deserialization.worker-YKcSaSWH.js} +376 -309
  3. package/dist/{index-B0OcF19n.js → index-BMIqHWwd.js} +2 -2
  4. package/dist/{index-M2eVbe_0.js → index-BN2v1iMN.js} +2 -2
  5. package/dist/{index-TElhyLth.js → index-Bq4VaIv3.js} +3 -3
  6. package/dist/{index-lYAUlgOC.js → index-C53DG9uU.js} +2 -2
  7. package/dist/{index-D2XLTZD6.js → index-C77lunov.js} +2 -2
  8. package/dist/{index-DcciMCSs.js → index-C9_ELgH0.js} +2 -2
  9. package/dist/{index-ruqK13K_.js → index-CA-EmEAR.js} +2 -2
  10. package/dist/{index-kX1V6BdV.js → index-D1zXLkli.js} +2 -2
  11. package/dist/{index-DEAiAkuM.js → index-D89yfNy9.js} +2 -2
  12. package/dist/{index-BFuISzq9.js → index-DmP7sjUz.js} +2 -2
  13. package/dist/{index-JtoOqqNH.js → index-DoXJbu-D.js} +2 -2
  14. package/dist/{index-BimzNWm5.js → index-DpUuSNx-.js} +2 -2
  15. package/dist/{index-DnF6OLu4.js → index-Du4IzW8k.js} +2 -2
  16. package/dist/{index-D_329r0B.js → index-Duh8rNuw.js} +2 -2
  17. package/dist/{index-BoW57zty.js → index-Dx4uEaE6.js} +2 -2
  18. package/dist/{index-oMO5wzwz.js → index-Eu-m3JKy.js} +2 -2
  19. package/dist/{index-ByH52TmT.js → index-IGydAG_o.js} +2 -2
  20. package/dist/{index-POkmkil6.js → index-X7vcFOB2.js} +2 -2
  21. package/dist/{index-BQ8ArLBu.js → index-fnrBNnsp.js} +2 -2
  22. package/dist/{index-DQuS45dq.js → index-plyilw_0.js} +61 -28
  23. package/dist/index.js +2 -2
  24. package/dist/lib/src/components/Panel.d.ts.map +1 -1
  25. package/dist/lib/src/components/Panel.js +3 -1
  26. package/dist/lib/src/components/Panel.js.map +1 -1
  27. package/dist/lib/src/connection/connection.d.ts.map +1 -1
  28. package/dist/lib/src/connection/connection.js +7 -1
  29. package/dist/lib/src/connection/connection.js.map +1 -1
  30. package/dist/lib/src/connection/foxglove-connection.d.ts +6 -0
  31. package/dist/lib/src/connection/foxglove-connection.d.ts.map +1 -1
  32. package/dist/lib/src/connection/foxglove-connection.js +24 -3
  33. package/dist/lib/src/connection/foxglove-connection.js.map +1 -1
  34. package/dist/lib/src/context/VisualizerContext.d.ts +2 -0
  35. package/dist/lib/src/context/VisualizerContext.d.ts.map +1 -1
  36. package/dist/lib/src/context/VisualizerContext.js +7 -0
  37. package/dist/lib/src/context/VisualizerContext.js.map +1 -1
  38. package/dist/lib/src/messaging/deserialization/detections/detection.d.ts.map +1 -1
  39. package/dist/lib/src/messaging/deserialization/detections/detection.js +117 -96
  40. package/dist/lib/src/messaging/deserialization/detections/detection.js.map +1 -1
  41. package/dist/lib/src/messaging/deserialization/video/h264.d.ts +2 -1
  42. package/dist/lib/src/messaging/deserialization/video/h264.d.ts.map +1 -1
  43. package/dist/lib/src/messaging/deserialization/video/h264.js +142 -97
  44. package/dist/lib/src/messaging/deserialization/video/h264.js.map +1 -1
  45. package/dist/lib/src/messaging/deserialization/video/h265.d.ts +2 -1
  46. package/dist/lib/src/messaging/deserialization/video/h265.d.ts.map +1 -1
  47. package/dist/lib/src/messaging/deserialization/video/h265.js +57 -16
  48. package/dist/lib/src/messaging/deserialization/video/h265.js.map +1 -1
  49. package/dist/lib/src/messaging/deserialization.worker.d.ts +3 -1
  50. package/dist/lib/src/messaging/deserialization.worker.d.ts.map +1 -1
  51. package/dist/lib/src/messaging/deserialization.worker.js +28 -12
  52. package/dist/lib/src/messaging/deserialization.worker.js.map +1 -1
  53. package/dist/lib/src/utils/error.d.ts +17 -4
  54. package/dist/lib/src/utils/error.d.ts.map +1 -1
  55. package/dist/lib/src/utils/error.js +59 -6
  56. package/dist/lib/src/utils/error.js.map +1 -1
  57. package/package.json +1 -1
@@ -16,14 +16,20 @@ import { parseMessage } from "./utils.js";
16
16
  import { Profile } from "../protobuf.generated/EncodedFrame.js";
17
17
  import { Type } from "../protobuf.generated/ImgFrame.js";
18
18
  import { isCapableOfEncodedStream } from "../utils/encoding";
19
- import { EncodedStreamNotSupportedError } from "../utils/error";
19
+ import { EncodedStreamNotSupportedError, NotInSecureContextError, UnsupportedTopicError, } from "../utils/error";
20
20
  import { Logger } from "../utils/logger";
21
21
  const logger = Logger.getLogger();
22
22
  export function errorInstanceToErrorCode(error) {
23
+ if (error instanceof UnsupportedTopicError) {
24
+ return "UnsupportedTopic";
25
+ }
26
+ if (error instanceof NotInSecureContextError) {
27
+ return "NotInSecureContext";
28
+ }
23
29
  if (error instanceof EncodedStreamNotSupportedError) {
24
30
  return "EncodedStreamNotSupported";
25
31
  }
26
- return "Error";
32
+ return "DecoderError";
27
33
  }
28
34
  const topicDecoders = new Map();
29
35
  const topicSizes = new Map();
@@ -31,6 +37,14 @@ let callback;
31
37
  function initCallback(cb) {
32
38
  callback = cb;
33
39
  }
40
+ function ensureEncodedStreamSupport(topic) {
41
+ if (!globalThis.isSecureContext) {
42
+ throw new NotInSecureContextError(topic);
43
+ }
44
+ if (!isCapableOfEncodedStream()) {
45
+ throw new EncodedStreamNotSupportedError(topic);
46
+ }
47
+ }
34
48
  function handleMessageToDecode({ schema, buffer, topic, stereoDepthMaxValue, }, configStore, errorCallback) {
35
49
  const handleDecodingError = (error) => {
36
50
  // TODO: Enable this log once we fix topic unsubscription not working
@@ -38,12 +52,14 @@ function handleMessageToDecode({ schema, buffer, topic, stereoDepthMaxValue, },
38
52
  // Type information about an error gets lost during transfer from worker to main thread
39
53
  // This means that we have to remap the errors based on type here to an 'error enum'
40
54
  // Which can then be parsed on the main thread
41
- errorCallback?.(errorInstanceToErrorCode(error), topic, {});
55
+ errorCallback?.(errorInstanceToErrorCode(error), topic, {
56
+ message: error.message,
57
+ });
42
58
  };
43
59
  const protobufSchema = protobufsBySchema[schema];
44
60
  if (!protobufSchema) {
45
61
  logger.warn(`Unsupported message schema "${schema}"`);
46
- handleDecodingError(new Error(`Unsupported message schema "${schema}"`));
62
+ handleDecodingError(new UnsupportedTopicError(topic, `Unsupported message schema "${schema}"`));
47
63
  return;
48
64
  }
49
65
  const bufferArray = new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
@@ -61,6 +77,7 @@ function handleMessageToDecode({ schema, buffer, topic, stereoDepthMaxValue, },
61
77
  callback,
62
78
  type: protobufSchema.type,
63
79
  maxSteroDepth: stereoDepthMaxValue,
80
+ onError: handleDecodingError,
64
81
  }).catch(handleDecodingError);
65
82
  }
66
83
  catch (error) {
@@ -69,21 +86,19 @@ function handleMessageToDecode({ schema, buffer, topic, stereoDepthMaxValue, },
69
86
  }
70
87
  async function deserializeDepthAiMessage(args) {
71
88
  // eslint-disable-next-line @typescript-eslint/no-shadow
72
- const { topicDecoders, topicSizes, type, message, callback, topic, maxSteroDepth } = args;
89
+ const { topicDecoders, topicSizes, type, message, callback, topic, maxSteroDepth, onError } = args;
73
90
  switch (type) {
74
91
  case "encodedFrame": {
75
- if (!isCapableOfEncodedStream()) {
76
- throw new EncodedStreamNotSupportedError(topic);
77
- }
92
+ ensureEncodedStreamSupport(topic);
78
93
  topicSizes.set(topic, { width: message.width, height: message.height });
79
94
  if (message.profile === Profile.AVC) {
80
- await deserializeEncodedFrameH264({ topic, message, topicDecoders, callback });
95
+ await deserializeEncodedFrameH264({ topic, message, topicDecoders, callback, onError });
81
96
  }
82
97
  else if (message.profile === Profile.JPEG) {
83
98
  await deserializeMJPEGFrame({ topic, message, callback });
84
99
  }
85
100
  else if (message.profile === Profile.HEVC) {
86
- await deserializeEncodedFrameH265({ topic, message, topicDecoders, callback });
101
+ await deserializeEncodedFrameH265({ topic, message, topicDecoders, callback, onError });
87
102
  }
88
103
  else {
89
104
  // TODO: Handle UNRECOGNIZED
@@ -95,7 +110,8 @@ async function deserializeDepthAiMessage(args) {
95
110
  topicSizes.set(topic, { width, height });
96
111
  switch (messageType) {
97
112
  case Type.BITSTREAM: {
98
- await deserializeEncodedFrameH264({ topic, message, topicDecoders, callback });
113
+ ensureEncodedStreamSupport(topic);
114
+ await deserializeEncodedFrameH264({ topic, message, topicDecoders, callback, onError });
99
115
  break;
100
116
  }
101
117
  case Type.RAW16: {
@@ -153,7 +169,7 @@ async function deserializeDepthAiMessage(args) {
153
169
  }
154
170
  default: {
155
171
  logger.warn(`Message decoding failed: unsupported type "${type}"`);
156
- break;
172
+ throw new UnsupportedTopicError(topic, `Unsupported message type "${type}"`);
157
173
  }
158
174
  }
159
175
  }
@@ -1 +1 @@
1
- {"version":3,"file":"deserialization.worker.js","sourceRoot":"","sources":["../../../../src/messaging/deserialization.worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deserialization.worker.js","sourceRoot":"","sources":["../../../../src/messaging/deserialization.worker.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,20 @@
1
- export declare class EncodedStreamNotSupportedError extends Error {
2
- topicName: string;
3
- readonly name = "EncodedStreamNotSupportedError";
4
- readonly errorType = "EncodedStreamNotSupportedError";
1
+ export type DecodingErrorCode = "UnsupportedTopic" | "NotInSecureContext" | "EncodedStreamNotSupported" | "DecoderError";
2
+ export declare class DecodingError extends Error {
3
+ readonly topicName: string;
4
+ readonly code: DecodingErrorCode;
5
+ constructor(code: DecodingErrorCode, topicName: string, message?: string);
6
+ }
7
+ export declare class UnsupportedTopicError extends DecodingError {
8
+ constructor(topicName: string, message?: string);
9
+ }
10
+ export declare class NotInSecureContextError extends DecodingError {
5
11
  constructor(topicName: string);
6
12
  }
13
+ export declare class EncodedStreamNotSupportedError extends DecodingError {
14
+ constructor(topicName: string);
15
+ }
16
+ export declare class DecoderRuntimeError extends DecodingError {
17
+ constructor(topicName: string, message?: string);
18
+ }
19
+ export declare function createDecodingError(code: DecodingErrorCode, topicName: string, message?: string): DecodingError;
7
20
  //# sourceMappingURL=error.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../src/utils/error.ts"],"names":[],"mappings":"AAAA,qBAAa,8BAA+B,SAAQ,KAAK;IAChD,SAAS,EAAE,MAAM,CAAC;IACzB,SAAkB,IAAI,oCAAoC;IAC1D,QAAQ,CAAC,SAAS,oCAAoC;gBAE1C,SAAS,EAAE,MAAM;CAK9B"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../src/utils/error.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GACzB,kBAAkB,GAClB,oBAAoB,GACpB,2BAA2B,GAC3B,cAAc,CAAC;AAqBnB,qBAAa,aAAc,SAAQ,KAAK;IACtC,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,IAAI,EAAE,iBAAiB,CAAC;gBAErB,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAOhF;AAED,qBAAa,qBAAsB,SAAQ,aAAa;gBACnC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAIvD;AAED,qBAAa,uBAAwB,SAAQ,aAAa;gBACrC,SAAS,EAAE,MAAM;CAIrC;AAED,qBAAa,8BAA+B,SAAQ,aAAa;gBAC5C,SAAS,EAAE,MAAM;CAIrC;AAED,qBAAa,mBAAoB,SAAQ,aAAa;gBACjC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAIvD;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,GACf,aAAa,CAgBf"}
@@ -1,11 +1,64 @@
1
- export class EncodedStreamNotSupportedError extends Error {
1
+ const decodingErrorDefinitions = {
2
+ UnsupportedTopic: {
3
+ message: "This topic is not supported by the current decoder.",
4
+ },
5
+ NotInSecureContext: {
6
+ message: "This stream requires a secure context such as HTTPS or localhost.",
7
+ },
8
+ EncodedStreamNotSupported: {
9
+ message: "Encoded stream decoding is not supported in this browser.",
10
+ },
11
+ DecoderError: {
12
+ message: "The stream could not be decoded.",
13
+ },
14
+ };
15
+ export class DecodingError extends Error {
2
16
  topicName;
3
- name = "EncodedStreamNotSupportedError";
4
- errorType = "EncodedStreamNotSupportedError";
5
- constructor(topicName) {
6
- super("Encoded stream not supported on this platform");
17
+ code;
18
+ constructor(code, topicName, message) {
19
+ super(message ?? decodingErrorDefinitions[code].message);
20
+ this.name = "DecodingError";
21
+ this.code = code;
7
22
  this.topicName = topicName;
8
- Object.setPrototypeOf(this, EncodedStreamNotSupportedError.prototype);
23
+ Object.setPrototypeOf(this, new.target.prototype);
24
+ }
25
+ }
26
+ export class UnsupportedTopicError extends DecodingError {
27
+ constructor(topicName, message) {
28
+ super("UnsupportedTopic", topicName, message);
29
+ this.name = "UnsupportedTopicError";
30
+ }
31
+ }
32
+ export class NotInSecureContextError extends DecodingError {
33
+ constructor(topicName) {
34
+ super("NotInSecureContext", topicName);
35
+ this.name = "NotInSecureContextError";
36
+ }
37
+ }
38
+ export class EncodedStreamNotSupportedError extends DecodingError {
39
+ constructor(topicName) {
40
+ super("EncodedStreamNotSupported", topicName);
41
+ this.name = "EncodedStreamNotSupportedError";
42
+ }
43
+ }
44
+ export class DecoderRuntimeError extends DecodingError {
45
+ constructor(topicName, message) {
46
+ super("DecoderError", topicName, message);
47
+ this.name = "DecoderRuntimeError";
48
+ }
49
+ }
50
+ export function createDecodingError(code, topicName, message) {
51
+ switch (code) {
52
+ case "UnsupportedTopic":
53
+ return new UnsupportedTopicError(topicName, message);
54
+ case "NotInSecureContext":
55
+ return new NotInSecureContextError(topicName);
56
+ case "EncodedStreamNotSupported":
57
+ return new EncodedStreamNotSupportedError(topicName);
58
+ case "DecoderError":
59
+ return new DecoderRuntimeError(topicName, message);
60
+ default:
61
+ return new DecoderRuntimeError(topicName, message ?? `Unexpected decoding error code: ${String(code)}`);
9
62
  }
10
63
  }
11
64
  //# sourceMappingURL=error.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../src/utils/error.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,8BAA+B,SAAQ,KAAK;IAChD,SAAS,CAAS;IACP,IAAI,GAAG,gCAAgC,CAAC;IACjD,SAAS,GAAG,gCAAgC,CAAC;IAEtD,YAAY,SAAiB;QAC3B,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACvD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,8BAA8B,CAAC,SAAS,CAAC,CAAC;IACxE,CAAC;CACF"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../src/utils/error.ts"],"names":[],"mappings":"AAUA,MAAM,wBAAwB,GAAuD;IACnF,gBAAgB,EAAE;QAChB,OAAO,EAAE,qDAAqD;KAC/D;IACD,kBAAkB,EAAE;QAClB,OAAO,EAAE,mEAAmE;KAC7E;IACD,yBAAyB,EAAE;QACzB,OAAO,EAAE,2DAA2D;KACrE;IACD,YAAY,EAAE;QACZ,OAAO,EAAE,kCAAkC;KAC5C;CACF,CAAC;AAEF,MAAM,OAAO,aAAc,SAAQ,KAAK;IACtB,SAAS,CAAS;IAClB,IAAI,CAAoB;IAExC,YAAmB,IAAuB,EAAE,SAAiB,EAAE,OAAgB;QAC7E,KAAK,CAAC,OAAO,IAAI,wBAAwB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,aAAa;IACtD,YAAmB,SAAiB,EAAE,OAAgB;QACpD,KAAK,CAAC,kBAAkB,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AAED,MAAM,OAAO,uBAAwB,SAAQ,aAAa;IACxD,YAAmB,SAAiB;QAClC,KAAK,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF;AAED,MAAM,OAAO,8BAA+B,SAAQ,aAAa;IAC/D,YAAmB,SAAiB;QAClC,KAAK,CAAC,2BAA2B,EAAE,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAC;IAC/C,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,aAAa;IACpD,YAAmB,SAAiB,EAAE,OAAgB;QACpD,KAAK,CAAC,cAAc,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AAED,MAAM,UAAU,mBAAmB,CACjC,IAAuB,EACvB,SAAiB,EACjB,OAAgB;IAEhB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,kBAAkB;YACrB,OAAO,IAAI,qBAAqB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACvD,KAAK,oBAAoB;YACvB,OAAO,IAAI,uBAAuB,CAAC,SAAS,CAAC,CAAC;QAChD,KAAK,2BAA2B;YAC9B,OAAO,IAAI,8BAA8B,CAAC,SAAS,CAAC,CAAC;QACvD,KAAK,cAAc;YACjB,OAAO,IAAI,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACrD;YACE,OAAO,IAAI,mBAAmB,CAC5B,SAAS,EACT,OAAO,IAAI,mCAAmC,MAAM,CAAC,IAAI,CAAC,EAAE,CAC7D,CAAC;IACN,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luxonis/visualizer-protobuf",
3
- "version": "3.1.0",
3
+ "version": "3.1.2",
4
4
  "type": "module",
5
5
  "description": "RobotHub Visualizer Library",
6
6
  "author": "Luxonis Corp",