@luxonis/visualizer-protobuf 2.16.2 → 2.18.0

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 (76) hide show
  1. package/dist/FoxgloveServer-C39Uooyk.js +1172 -0
  2. package/dist/{WorkerImageDecoder.worker-DCoSYoLL.js → WorkerImageDecoder.worker-tkX9-IYo.js} +3 -2
  3. package/dist/_commonjsHelpers-E-ZsRS8r.js +32 -0
  4. package/dist/{comlink-D0blLC4P.js → comlink-DHMAu6X7.js} +1 -1
  5. package/dist/{communicator-CkB-oBVq.js → communicator-D49kmBTQ.js} +1 -1
  6. package/dist/{decodeImage-NYPkamnK.js → decodeImage-C8kB6T3V.js} +1 -1
  7. package/dist/deserialization.worker-DsG76nP8.js +1326 -0
  8. package/dist/{foxglove-protocol-RZlF5fna.js → foxglove-protocol-CYoMweAY.js} +1 -1
  9. package/dist/{i18next-C5Qe4-E1.js → i18next-IYI3-Nuv.js} +1624 -3124
  10. package/dist/{i420ToRgbaToPoitcloud.worker-CQFm7P7B.js → i420ToRgbaToPoitcloud.worker-CzFC0VI1.js} +1 -1
  11. package/dist/{index-_CotNV5x.js → index-4PQpGzhb.js} +10 -8
  12. package/dist/{index-C8kEVNt8.js → index-BFMXTxLw.js} +10 -8
  13. package/dist/{index-D7BaFI3k.js → index-BQecGu9I.js} +10 -8
  14. package/dist/{index-BFmZhB_k.js → index-BT9CBn7l.js} +2663 -2658
  15. package/dist/{index-CGZy-t2h.js → index-BWittpbR.js} +10 -8
  16. package/dist/{index-BRyhvg1u.js → index-BeQ1w8aW.js} +10 -8
  17. package/dist/{index-B-NuHgKz.js → index-BomoqOv5.js} +10 -8
  18. package/dist/{index-qRQvVkdj.js → index-ByIsztCr.js} +10 -8
  19. package/dist/{index-C7bn4vhH.js → index-CJRhjhJ0.js} +10 -8
  20. package/dist/{index-De_-85Dx.js → index-CR6XGTJc.js} +26206 -31958
  21. package/dist/{index-BflsEH7y.js → index-CXIVXFcJ.js} +13 -10
  22. package/dist/{index-DeqZpaJF.js → index-CXThSQcL.js} +10 -8
  23. package/dist/{index-BA7oWwVg.js → index-CcIi7pJR.js} +10 -8
  24. package/dist/{index-BDNOxLbq.js → index-CcP1Qppv.js} +10 -8
  25. package/dist/{index-BsSLQ0Qh.js → index-Ci0X5xT3.js} +10 -8
  26. package/dist/{index-D_n427cy.js → index-CrtBH66u.js} +10 -8
  27. package/dist/{index--q0v8_7h.js → index-DUUnuN10.js} +10 -8
  28. package/dist/{index-C3EAt3Mi.js → index-DchGURxJ.js} +10 -8
  29. package/dist/{index-Cls5O6Ds.js → index-DdKOhCXT.js} +10 -8
  30. package/dist/index.js +10 -8
  31. package/dist/isArrayLikeObject-Bytw9p-q.js +1503 -0
  32. package/dist/lib/src/components/Panel.d.ts +1 -0
  33. package/dist/lib/src/components/Panel.d.ts.map +1 -1
  34. package/dist/lib/src/components/Panel.js +2 -2
  35. package/dist/lib/src/components/Panel.js.map +1 -1
  36. package/dist/lib/src/components/PanelToolbar.d.ts +1 -0
  37. package/dist/lib/src/components/PanelToolbar.d.ts.map +1 -1
  38. package/dist/lib/src/components/PanelToolbar.js +6 -3
  39. package/dist/lib/src/components/PanelToolbar.js.map +1 -1
  40. package/dist/lib/src/components/measure-render-delay.d.ts.map +1 -1
  41. package/dist/lib/src/components/measure-render-delay.js +5 -0
  42. package/dist/lib/src/components/measure-render-delay.js.map +1 -1
  43. package/dist/lib/src/messaging/{deserialization.d.ts → deserialization.worker.d.ts} +6 -2
  44. package/dist/lib/src/messaging/deserialization.worker.d.ts.map +1 -0
  45. package/dist/lib/src/messaging/{deserialization.js → deserialization.worker.js} +28 -3
  46. package/dist/lib/src/messaging/deserialization.worker.js.map +1 -0
  47. package/dist/lib/src/messaging/message-handler.d.ts.map +1 -1
  48. package/dist/lib/src/messaging/message-handler.js +14 -20
  49. package/dist/lib/src/messaging/message-handler.js.map +1 -1
  50. package/dist/lib/src/panels/ImagePanel.d.ts +3 -5
  51. package/dist/lib/src/panels/ImagePanel.d.ts.map +1 -1
  52. package/dist/lib/src/panels/ImagePanel.js +1 -0
  53. package/dist/lib/src/panels/ImagePanel.js.map +1 -1
  54. package/dist/lib/src/panels/PointCloudPanel.d.ts +2 -0
  55. package/dist/lib/src/panels/PointCloudPanel.d.ts.map +1 -1
  56. package/dist/lib/src/panels/PointCloudPanel.js +29 -4
  57. package/dist/lib/src/panels/PointCloudPanel.js.map +1 -1
  58. package/dist/lib/src/utils/poitcloud-sync.d.ts.map +1 -1
  59. package/dist/lib/src/utils/poitcloud-sync.js +5 -2
  60. package/dist/lib/src/utils/poitcloud-sync.js.map +1 -1
  61. package/dist/packages/studio-base/src/panels/ThreeDeeRender/ThreeDeeRender.d.ts.map +1 -1
  62. package/dist/packages/studio-base/src/panels/ThreeDeeRender/ThreeDeeRender.js +3 -0
  63. package/dist/packages/studio-base/src/panels/ThreeDeeRender/ThreeDeeRender.js.map +1 -1
  64. package/dist/packages/studio-base/src/panels/ThreeDeeRender/renderables/CameraStateSettings.js +2 -2
  65. package/dist/packages/studio-base/src/panels/ThreeDeeRender/renderables/CameraStateSettings.js.map +1 -1
  66. package/dist/packages/studio-base/src/panels/ThreeDeeRender/renderables/ImageMode/ImageMode.d.ts.map +1 -1
  67. package/dist/packages/studio-base/src/panels/ThreeDeeRender/renderables/ImageMode/ImageMode.js +0 -1
  68. package/dist/packages/studio-base/src/panels/ThreeDeeRender/renderables/ImageMode/ImageMode.js.map +1 -1
  69. package/dist/{FoxgloveServer-DiLI7KZU.js → protobuf-Cr0sn6Ua.js} +996 -2196
  70. package/dist/tslib.es6-D98N6tjc.js +4116 -0
  71. package/dist/useMessageReducer-Cg30zaG9.js +422 -0
  72. package/dist/{worker-CtuCYYTr.js → worker-B5OJw-Fq.js} +5 -3
  73. package/dist/{worker-Bd7K1fGT.js → worker-aVL4LGa3.js} +5 -3
  74. package/package.json +1 -1
  75. package/dist/lib/src/messaging/deserialization.d.ts.map +0 -1
  76. package/dist/lib/src/messaging/deserialization.js.map +0 -1
@@ -16,6 +16,7 @@ export type PanelProps = React.PropsWithChildren<{
16
16
  renderedFps?: number;
17
17
  renderDelay?: number;
18
18
  toggleTopic?: (topic: string) => void;
19
+ streamResolution?: string;
19
20
  }>;
20
21
  export type PanelDetections = Record<string, boolean>;
21
22
  export type AllDetections = {
@@ -1 +1 @@
1
- {"version":3,"file":"Panel.d.ts","sourceRoot":"","sources":["../../../../src/components/Panel.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,oBAAoB,CAAC;AAE5B,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,YAAY,CAAC;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC,CAAC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEtD,MAAM,MAAM,aAAa,GAAG;IAC1B,UAAU,EAAE,UAAU,EAAE,CAAC;CAC1B,CAAC;AAIF,eAAO,MAAM,aAAa,QAAO,aAEhC,CAAC;AASF,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CA4DtC,CAAC"}
1
+ {"version":3,"file":"Panel.d.ts","sourceRoot":"","sources":["../../../../src/components/Panel.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,oBAAoB,CAAC;AAE5B,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,YAAY,CAAC;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEtD,MAAM,MAAM,aAAa,GAAG;IAC1B,UAAU,EAAE,UAAU,EAAE,CAAC;CAC1B,CAAC;AAIF,eAAO,MAAM,aAAa,QAAO,aAEhC,CAAC;AASF,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CA8DtC,CAAC"}
@@ -18,7 +18,7 @@ const rawToAnnotations = (rawAnnotations, kind, current) => rawAnnotations.map((
18
18
  extra: kind === 'extra',
19
19
  enabled: current.find(({ name }) => name === annotationTopic)?.enabled ?? kind === 'main'
20
20
  }));
21
- export const Panel = ({ children, kind, topic, disableAnnotations = false, annotationTopics = [], extraAnnotationTopics = [], targetFps, renderedFps, renderDelay, toggleTopic, triggerToast }) => {
21
+ export const Panel = ({ children, kind, topic, disableAnnotations = false, annotationTopics = [], extraAnnotationTopics = [], targetFps, renderedFps, renderDelay, toggleTopic, triggerToast, streamResolution, }) => {
22
22
  const [detections, setDetections] = React.useState([]);
23
23
  React.useEffect(() => {
24
24
  if (!disableAnnotations) {
@@ -29,6 +29,6 @@ export const Panel = ({ children, kind, topic, disableAnnotations = false, annot
29
29
  }
30
30
  // eslint-disable-next-line react-hooks/exhaustive-deps
31
31
  }, [JSON.stringify(annotationTopics), JSON.stringify(extraAnnotationTopics)]);
32
- return (_jsx(RemountOnValueChange, { value: "internal-player", children: _jsx(ErrorBoundary, { children: _jsx(DetectionContext.Provider, { value: { detections }, children: _jsxs(Stack, { flexGrow: 1, overflow: "hidden", border: "1px solid #d3d3d3d9", style: { borderRadius: "8px" }, children: [_jsx(PanelToolbar, { kind: kind, topic: topic, setDetections: setDetections, disableAnnotations: disableAnnotations, targetFps: targetFps, renderedFps: renderedFps, renderDelay: renderDelay, toggleTopic: toggleTopic, triggerToast: triggerToast }), _jsx(Suspense, { fallback: _jsx(EmptyState, { children: _jsx("div", { children: "Loading..." }) }), children: _jsx(RemountOnValueChange, { value: detections, children: children }) })] }) }) }) }));
32
+ return (_jsx(RemountOnValueChange, { value: "internal-player", children: _jsx(ErrorBoundary, { children: _jsx(DetectionContext.Provider, { value: { detections }, children: _jsxs(Stack, { flexGrow: 1, overflow: "hidden", border: "1px solid #d3d3d3d9", style: { borderRadius: "8px" }, children: [_jsx(PanelToolbar, { kind: kind, topic: topic, setDetections: setDetections, disableAnnotations: disableAnnotations, targetFps: targetFps, renderedFps: renderedFps, renderDelay: renderDelay, toggleTopic: toggleTopic, triggerToast: triggerToast, streamResolution: streamResolution }), _jsx(Suspense, { fallback: _jsx(EmptyState, { children: _jsx("div", { children: "Loading..." }) }), children: _jsx(RemountOnValueChange, { value: detections, children: children }) })] }) }) }) }));
33
33
  };
34
34
  //# sourceMappingURL=Panel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Panel.js","sourceRoot":"","sources":["../../../../src/components/Panel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Panel.js","sourceRoot":"","sources":["../../../../src/components/Panel.tsx"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ export type PanelToolbarProps = {
11
11
  renderDelay?: number;
12
12
  triggerToast?: () => void;
13
13
  toggleTopic?: (topic: string) => void;
14
+ streamResolution?: string;
14
15
  };
15
16
  export declare const PanelToolbar: React.FC<PanelToolbarProps>;
16
17
  //# sourceMappingURL=PanelToolbar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PanelToolbar.d.ts","sourceRoot":"","sources":["../../../../src/components/PanelToolbar.tsx"],"names":[],"mappings":"AAwBA,OAAO,EAAE,KAAK,UAAU,EAAiB,MAAM,YAAY,CAAC;AAG5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,sCAAsC,CAAC;AA4B9C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,YAAY,CAAC;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,UAAU,EAAE,KAAK,IAAI,CAAC;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAyMpD,CAAC"}
1
+ {"version":3,"file":"PanelToolbar.d.ts","sourceRoot":"","sources":["../../../../src/components/PanelToolbar.tsx"],"names":[],"mappings":"AAwBA,OAAO,EAAE,KAAK,UAAU,EAAiB,MAAM,YAAY,CAAC;AAG5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,sCAAsC,CAAC;AA4B9C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,YAAY,CAAC;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,UAAU,EAAE,KAAK,IAAI,CAAC;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAmNpD,CAAC"}
@@ -15,7 +15,7 @@ const PanelAnnotationButton = ({ topic, onClick }) => {
15
15
  }, [onClick]);
16
16
  return (_jsx(DropdownMenuItem, { onClick: handleClick, children: _jsxs(Flex, { align: "center", gap: "sm", children: [_jsx(Icon, { color: "active", icon: topic.enabled ? ImCheckboxChecked : ImCheckboxUnchecked }), _jsx(NormalText, { text: topic.name })] }) }));
17
17
  };
18
- export const PanelToolbar = ({ topic, kind, setDetections, disableAnnotations = false, targetFps, triggerToast, renderedFps, toggleTopic }) => {
18
+ export const PanelToolbar = ({ topic, kind, setDetections, disableAnnotations = false, targetFps, triggerToast, renderedFps, toggleTopic, streamResolution }) => {
19
19
  const [metrics, setMetrics] = React.useState();
20
20
  const { detections } = useDetections();
21
21
  const connections = useConnections();
@@ -44,6 +44,9 @@ export const PanelToolbar = ({ topic, kind, setDetections, disableAnnotations =
44
44
  const name = React.useMemo(() => {
45
45
  return topic;
46
46
  }, [topic]);
47
+ const nameWithResolution = React.useMemo(() => {
48
+ return streamResolution && streamResolution !== '-' ? `${name} (${streamResolution})` : name;
49
+ }, [name, streamResolution]);
47
50
  React.useEffect(() => {
48
51
  if (targetFps && metrics?.incomingMessagesFps && targetFps > metrics.incomingMessagesFps) {
49
52
  const timeout = setTimeout(() => {
@@ -63,9 +66,9 @@ export const PanelToolbar = ({ topic, kind, setDetections, disableAnnotations =
63
66
  const descriptionRef = React.useRef(null);
64
67
  return (_jsxs(Flex, { direction: "row", gap: "sm", align: "center", justify: "space-between", style: {
65
68
  paddingLeft: 16,
66
- }, children: [_jsxs(Flex, { direction: "column", gap: "xxs", align: "start", justify: "start", paddingY: "xs", children: [_jsxs(Flex, { direction: "row", gap: "sm", align: "center", justify: "start", children: [_jsx(SubHeader, { text: name }), _jsx(Button, { variant: "outline", colorVariant: "white", size: "xs", p: "2", icon: CloseIcon, onClick: () => {
69
+ }, children: [_jsxs(Flex, { direction: "column", gap: "xxs", align: "start", justify: "start", paddingY: "xs", children: [_jsxs(Flex, { direction: "row", gap: "sm", align: "center", justify: "start", children: [_jsx(SubHeader, { text: nameWithResolution }), _jsx(Button, { variant: "outline", colorVariant: "white", size: "xs", p: "2", icon: CloseIcon, onClick: () => {
67
70
  toggleTopic?.(name);
68
- } })] }), _jsx(Flex, { direction: "row", gap: "sm", align: "start", justify: "start", children: _jsxs(Flex, { direction: "row", gap: "sm", align: "start", justify: "start", ref: descriptionRef, children: [targetFps && (_jsx(Label, { text: `Camera: ${targetFps} FPS` })), metrics?.incomingMessagesFps && (_jsx(Label, { text: `Network: ${metrics.incomingMessagesFps} FPS` })), metrics?.decodedMessagesFps && (_jsx(Label, { text: `Decoding: ${metrics.decodedMessagesFps} FPS` })), renderedFps && (_jsx(Label, { text: `Rendering: ${renderedFps} FPS` })), eventLoopDelay && (_jsx(Label, { text: `Frontend Delay: ${Math.ceil(eventLoopDelay)} ms` }))] }) })] }), !disableAnnotations && kind === "image" && (_jsxs(DropdownMenu, { onOpenChange: setAnnotationsOpened, children: [_jsx(DropdownMenuTrigger, { asChild: true, disabled: detections.length === 0, children: _jsx(Button, { variant: "outline", label: "Annotations", "aria-controls": annotationsOpened ? "basic-menu" : undefined, "aria-haspopup": "true", "aria-expanded": annotationsOpened ? "true" : undefined, icon: annotationsOpened ? ArrowUpIcon : ArrowDownIcon, disabled: detections.length === 0, style: {
71
+ } })] }), _jsx(Flex, { direction: "row", gap: "sm", align: "start", justify: "start", children: _jsxs(Flex, { direction: "row", gap: "sm", align: "start", justify: "start", ref: descriptionRef, children: [targetFps !== undefined && (_jsx(Label, { text: `Camera: ${targetFps === 0 ? '-' : targetFps} FPS` })), metrics?.incomingMessagesFps !== undefined && (_jsx(Label, { text: `Network: ${metrics.incomingMessagesFps === 0 ? '-' : metrics.incomingMessagesFps} FPS` })), metrics?.decodedMessagesFps !== undefined && (_jsx(Label, { text: `Decoding: ${metrics.decodedMessagesFps === 0 ? '-' : metrics.decodedMessagesFps} FPS` })), renderedFps !== undefined && (_jsx(Label, { text: `Rendering: ${renderedFps === 0 ? '-' : renderedFps} FPS` })), eventLoopDelay !== undefined && (_jsx(Label, { text: `Frontend Delay: ${Math.ceil(eventLoopDelay)} ms` }))] }) })] }), !disableAnnotations && kind === "image" && (_jsxs(DropdownMenu, { onOpenChange: setAnnotationsOpened, children: [_jsx(DropdownMenuTrigger, { asChild: true, disabled: detections.length === 0, children: _jsx(Button, { variant: "outline", label: "Annotations", "aria-controls": annotationsOpened ? "basic-menu" : undefined, "aria-haspopup": "true", "aria-expanded": annotationsOpened ? "true" : undefined, icon: annotationsOpened ? ArrowUpIcon : ArrowDownIcon, disabled: detections.length === 0, style: {
69
72
  borderRadius: 0,
70
73
  borderTopRightRadius: 8,
71
74
  height: "100%",
@@ -1 +1 @@
1
- {"version":3,"file":"PanelToolbar.js","sourceRoot":"","sources":["../../../../src/components/PanelToolbar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PanelToolbar.js","sourceRoot":"","sources":["../../../../src/components/PanelToolbar.tsx"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,oEAAoE;AACpE,0DAA0D;AAE1D,OAAO,EACL,aAAa,EACb,WAAW,EACX,MAAM,EACN,SAAS,EACT,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,UAAU,EACV,SAAS,EACT,OAAO,GACR,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAExE,OAAO,EAAmB,aAAa,EAAE,MAAM,YAAY,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAEnE,OAAO,sCAAsC,CAAC;AAC9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AAQzE,MAAM,qBAAqB,GAAyC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;IACzF,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CACnC,CAAC,KAAK,EAAE,EAAE;QACR,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,OAAO,EAAE,CAAC;IACZ,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,OAAO,CACL,KAAC,gBAAgB,IAAC,OAAO,EAAE,WAAW,YACpC,MAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,GAAG,EAAC,IAAI,aAC3B,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,mBAAmB,GAAI,EACtF,KAAC,UAAU,IAAC,IAAI,EAAE,KAAK,CAAC,IAAI,GAAI,IAC3B,GACU,CACpB,CAAC;AACJ,CAAC,CAAC;AAeF,MAAM,CAAC,MAAM,YAAY,GAAgC,CAAC,EACxD,KAAK,EACL,IAAI,EACJ,aAAa,EACb,kBAAkB,GAAG,KAAK,EAC1B,SAAS,EACT,YAAY,EACZ,WAAW,EACX,WAAW,EACX,gBAAgB,EACjB,EAAE,EAAE;IACH,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAW,CAAC;IAExD,MAAM,EAAE,UAAU,EAAE,GAAG,aAAa,EAAE,CAAC;IACvC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,cAAc,GAAG,2BAA2B,EAAE,CAAC;IAErD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;QACrD,CAAC,EAAE,GAAG,CAAC,CAAC;QACR,OAAO,GAAG,EAAE;YACV,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC,CAAC;QACF,uDAAuD;IACzD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAC5B,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAC3E,CAAC,UAAU,CAAC,CACb,CAAC;IACF,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE9D,MAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CACrC,CAAC,eAAuB,EAAE,EAAE;QAC1B,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAC1B,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC1B,GAAG,SAAS;YACZ,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,IAAI,IAAI;gBACxC,OAAO,EAAE,CAAC,SAAS,CAAC,OAAO;aAC5B,CAAC;SACH,CAAC,CAAC,CACJ,CAAC;IACJ,CAAC,EACD,CAAC,aAAa,CAAC,CAChB,CAAC;IAEF,wCAAwC;IACxC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAC5C,OAAO,gBAAgB,IAAK,gBAAgB,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,gBAAgB,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAChG,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAE7B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,SAAS,IAAI,OAAO,EAAE,mBAAmB,IAAI,SAAS,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;YACzF,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC9B,IAAI,SAAS,GAAG,GAAG,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;oBAClD,YAAY,EAAE,EAAE,CAAC;gBACnB,CAAC;YACH,CAAC,EAAE,MAAM,CAAC,CAAC;YACX,OAAO,GAAG,EAAE;gBACV,YAAY,CAAC,OAAO,CAAC,CAAC;YACxB,CAAC,CAAC;QACJ,CAAC;QACD,OAAO;IACT,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,mBAAmB,EAAE,YAAY,CAAC,CAAC,CAAC;IAE5D,MAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CACrC,CAAC,SAAqB,EAAE,EAAE,KAAK,EAAsB,EAAE,EAAE,CACvD,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,OAAO,CAAC,IAAI,CACzF,KAAC,qBAAqB,IAEpB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,GAAG,EAAE;YACZ,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC,IAJI,SAAS,CAAC,IAAI,CAKnB,CACH,EACH,CAAC,aAAa,CAAC,CAChB,CAAC;IACF,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAiB,IAAI,CAAC,CAAC;IAE1D,OAAO,CACL,MAAC,IAAI,IACH,SAAS,EAAC,KAAK,EACf,GAAG,EAAC,IAAI,EACR,KAAK,EAAC,QAAQ,EACd,OAAO,EAAC,eAAe,EACvB,KAAK,EAAE;YACL,WAAW,EAAE,EAAE;SAChB,aAED,MAAC,IAAI,IAAC,SAAS,EAAC,QAAQ,EAAC,GAAG,EAAC,KAAK,EAAC,KAAK,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,IAAI,aAC5E,MAAC,IAAI,IAAC,SAAS,EAAC,KAAK,EAAC,GAAG,EAAC,IAAI,EAAC,KAAK,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,aAC3D,KAAC,SAAS,IAAC,IAAI,EAAE,kBAAkB,GAAI,EACvC,KAAC,MAAM,IACL,OAAO,EAAC,SAAS,EACjB,YAAY,EAAC,OAAO,EACpB,IAAI,EAAC,IAAI,EACT,CAAC,EAAC,GAAG,EACL,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,GAAG,EAAE;oCACZ,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC;gCAEtB,CAAC,GACD,IACG,EACP,KAAC,IAAI,IAAC,SAAS,EAAC,KAAK,EAAC,GAAG,EAAC,IAAI,EAAC,KAAK,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,YAC1D,MAAC,IAAI,IAAC,SAAS,EAAC,KAAK,EAAC,GAAG,EAAC,IAAI,EAAC,KAAK,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,GAAG,EAAE,cAAc,aAC7E,SAAS,KAAK,SAAS,IAAI,CAC1B,KAAC,KAAK,IAAC,IAAI,EAAE,WAAW,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,MAAM,GAAI,CACpE,EAEA,OAAO,EAAE,mBAAmB,KAAK,SAAS,IAAI,CAC7C,KAAC,KAAK,IAAC,IAAI,EAAE,YAAY,OAAO,CAAC,mBAAmB,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,MAAM,GAAI,CACzG,EAEA,OAAO,EAAE,kBAAkB,KAAK,SAAS,IAAI,CAC5C,KAAC,KAAK,IAAC,IAAI,EAAE,aAAa,OAAO,CAAC,kBAAkB,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,MAAM,GAAI,CACxG,EAEA,WAAW,KAAK,SAAS,IAAI,CAC5B,KAAC,KAAK,IAAC,IAAI,EAAE,cAAc,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,MAAM,GAAI,CAC3E,EAEA,cAAc,KAAK,SAAS,IAAI,CAC/B,KAAC,KAAK,IAAC,IAAI,EAAE,mBAAmB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,GAAI,CACnE,IAKI,GACF,IACF,EAEN,CAAC,kBAAkB,IAAI,IAAI,KAAK,OAAO,IAAI,CAC1C,MAAC,YAAY,IAAC,YAAY,EAAE,oBAAoB,aAC9C,KAAC,mBAAmB,IAAC,OAAO,QAAC,QAAQ,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC,YAC5D,KAAC,MAAM,IACL,OAAO,EAAC,SAAS,EACjB,KAAK,EAAC,aAAa,mBACJ,iBAAiB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,mBAC7C,MAAM,mBACL,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EACrD,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,EACrD,QAAQ,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC,EACjC,KAAK,EAAE;gCACL,YAAY,EAAE,CAAC;gCACf,oBAAoB,EAAE,CAAC;gCACvB,MAAM,EAAE,MAAM;6BACf,GACD,GACkB,EACtB,MAAC,mBAAmB,eACjB,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,EACzE,QAAQ,IAAI,CACX,KAAC,MAAM,IACL,KAAK,EAAC,MAAM,EACZ,QAAQ,EAAC,IAAI,EACb,OAAO,EAAC,OAAO,mBACA,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAChD,OAAO,EAAE,GAAG,EAAE;oCACZ,eAAe,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;gCACzC,CAAC,EACD,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,EAChD,KAAK,EAAE;oCACL,YAAY,EAAE,CAAC;iCAChB,YAEA,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GACxB,CACV,EACA,YAAY;gCACX,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IACtD,IACT,CAChB,EACA,IAAI,KAAK,YAAY,IAAI,CACxB,KAAC,IAAI,IACH,KAAK,EAAE;oBACL,YAAY,EAAE,EAAE;iBACjB,YAED,KAAC,OAAO,IACN,OAAO,EACL,8BACE,KAAC,KAAK,IAAC,IAAI,EAAC,iBAAiB,GAAG,EAChC,yBACE,mDAAgC,EAChC,oDAAiC,EACjC,uDAAoC,EACpC,wDAAqC,EACrC,yDAAiC,EACjC,0EAAkD,EAClD,uBAAK,+EAA+E,GAAM,EAC1F,uBAAK,kFAAkF,GAAM,IAC1F,IACJ,YAGL,KAAC,IAAI,IAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,GAAG,GACrD,GACL,CACR,IACI,CACR,CAAC;AACJ,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"measure-render-delay.d.ts","sourceRoot":"","sources":["../../../../src/components/measure-render-delay.tsx"],"names":[],"mappings":"AAEA,wBAAgB,wBAAwB;;8BAeL,MAAM;EAKxC"}
1
+ {"version":3,"file":"measure-render-delay.d.ts","sourceRoot":"","sources":["../../../../src/components/measure-render-delay.tsx"],"names":[],"mappings":"AAUA,wBAAgB,wBAAwB,IAAI;IAAE,iBAAiB,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,CAoBnH"}
@@ -1,3 +1,8 @@
1
+ // This Source Code Form is subject to the terms of the Mozilla Public
2
+ // License, v2.0. If a copy of the MPL was not distributed with this
3
+ // file, You can obtain one at http://mozilla.org/MPL/2.0/
4
+ /* eslint-disable react-hooks/rules-of-hooks */
5
+ import React from "react";
1
6
  const refreshInterval = 500;
2
7
  export function createRenderDelaySampler() {
3
8
  const [frameDelays, setFrameDelays] = React.useState([]);
@@ -1 +1 @@
1
- {"version":3,"file":"measure-render-delay.js","sourceRoot":"","sources":["../../../../src/components/measure-render-delay.tsx"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG,GAAY,CAAC;AAErC,MAAM,UAAU,wBAAwB;IACtC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAW,EAAE,CAAC,CAAC;IACnE,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAS,CAAC,CAAC,CAAC;IAE5E,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,oBAAoB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;YAClF,cAAc,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC,EAAE,eAAe,CAAC,CAAC;QAEpB,OAAO,GAAG,EAAE;YACV,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,YAAY,GAAG,CAAC,SAAiB,EAAE,EAAE;QACzC,cAAc,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,GAAG,kBAAkB,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC;IAC/F,CAAC,CAAC;IAEF,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,CAAC;AAC7C,CAAC"}
1
+ {"version":3,"file":"measure-render-delay.js","sourceRoot":"","sources":["../../../../src/components/measure-render-delay.tsx"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,oEAAoE;AACpE,0DAA0D;AAE1D,+CAA+C;AAE/C,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,eAAe,GAAG,GAAY,CAAC;AAErC,MAAM,UAAU,wBAAwB;IACtC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAW,EAAE,CAAC,CAAC;IACnE,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAS,CAAC,CAAC,CAAC;IAE5E,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,oBAAoB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;YAClF,cAAc,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC,EAAE,eAAe,CAAC,CAAC;QAEpB,OAAO,GAAG,EAAE;YACV,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,YAAY,GAAG,CAAC,SAAiB,EAAE,EAAE;QACzC,cAAc,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,GAAG,kBAAkB,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC;IAC/F,CAAC,CAAC;IAEF,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,CAAC;AAC7C,CAAC"}
@@ -7,6 +7,7 @@ import { ImgDetections } from "../protobuf.generated/ImgDetections.js";
7
7
  import { ImgFrame } from "../protobuf.generated/ImgFrame.js";
8
8
  import { PointCloudData } from "../protobuf.generated/PointCloudData.js";
9
9
  import { SpatialImgDetections } from "../protobuf.generated/SpatialImgDetections.js";
10
+ import { FoxgloveMessage } from "../connection/communicator";
10
11
  export type DeserializeDepthAiMessageArgs = {
11
12
  topic: string;
12
13
  topicDecoders: TopicDecoders;
@@ -31,5 +32,8 @@ export type DeserializeDepthAiMessageArgs = {
31
32
  type: "pointCloud";
32
33
  message: PointCloudData;
33
34
  });
34
- export declare function deserializeDepthAiMessage(args: DeserializeDepthAiMessageArgs): Promise<void>;
35
- //# sourceMappingURL=deserialization.d.ts.map
35
+ export type DeserializationWorkerApi = {
36
+ initCallback: (cb: (event: MessageEvent) => void) => void;
37
+ handleMessageToDecode: ({ schema, buffer, topic }: FoxgloveMessage) => void;
38
+ };
39
+ //# sourceMappingURL=deserialization.worker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deserialization.worker.d.ts","sourceRoot":"","sources":["../../../../src/messaging/deserialization.worker.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAGnE,OAAO,EAA4B,UAAU,EAAE,MAAM,2CAA2C,CAAC;AAIjG,OAAO,EAA+B,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAG7F,OAAO,EAAE,YAAY,EAAW,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAQ,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG7D,MAAM,MAAM,6BAA6B,GAAG;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,aAAa,CAAC;IAC7B,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;CACzC,GAAG,CACE;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,OAAO,EAAE,aAAa,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,GAC5D;IAAE,IAAI,EAAE,wBAAwB,CAAC;IAAC,OAAO,EAAE,oBAAoB,CAAA;CAAE,GACjE;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,cAAc,CAAA;CAAE,CAClD,CAAC;AAkGJ,MAAM,MAAM,wBAAwB,GAAG;IACrC,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,KAAK,IAAI,CAAC;IAC1D,qBAAqB,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAG,EAAE,eAAe,KAAK,IAAI,CAAC;CAC9E,CAAA"}
@@ -1,6 +1,7 @@
1
1
  // This Source Code Form is subject to the terms of the Mozilla Public
2
2
  // License, v2.0. If a copy of the MPL was not distributed with this
3
3
  // file, You can obtain one at http://mozilla.org/MPL/2.0/
4
+ import * as Comlink from "comlink";
4
5
  import { deserializeImgDetectionsCustom } from "./deserialization/detections/custom.js";
5
6
  import { deserializeImgDetections } from "./deserialization/detections/detection.js";
6
7
  import { deserializePointCloudData } from "./deserialization/pointcloud/point-cloud.js";
@@ -11,9 +12,32 @@ import { deserializeMJPEGFrame } from "./deserialization/video/mjpeg.js";
11
12
  import { parseMessage } from "./utils.js";
12
13
  import { Profile } from "../protobuf.generated/EncodedFrame.js";
13
14
  import { Type } from "../protobuf.generated/ImgFrame.js";
14
- export async function deserializeDepthAiMessage(args) {
15
+ import { protobufsBySchema } from "./protobuf";
16
+ const topicDecoders = new Map();
17
+ const topicSizes = new Map();
18
+ let callback;
19
+ function initCallback(cb) {
20
+ callback = cb;
21
+ }
22
+ function handleMessageToDecode({ schema, buffer, topic }) {
23
+ const protobufSchema = protobufsBySchema[schema];
24
+ if (!protobufSchema) {
25
+ console.warn(`Unsupported message schema "${schema}"`);
26
+ return;
27
+ }
28
+ const bufferArray = new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
29
+ const message = protobufSchema.decoder.decode(bufferArray);
30
+ void deserializeDepthAiMessage({
31
+ topic,
32
+ topicSizes,
33
+ topicDecoders,
34
+ message,
35
+ callback,
36
+ type: protobufSchema.type
37
+ });
38
+ }
39
+ async function deserializeDepthAiMessage(args) {
15
40
  const { topicDecoders, topicSizes, type, message, callback, topic } = args;
16
- //console.log(`Encoded "${type}" message at ${new Date().toLocaleString()}`, message);
17
41
  switch (type) {
18
42
  case "encodedFrame": {
19
43
  topicSizes.set(topic, { width: message.width, height: message.height });
@@ -77,4 +101,5 @@ export async function deserializeDepthAiMessage(args) {
77
101
  }
78
102
  }
79
103
  }
80
- //# sourceMappingURL=deserialization.js.map
104
+ Comlink.expose({ initCallback, handleMessageToDecode });
105
+ //# sourceMappingURL=deserialization.worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deserialization.worker.js","sourceRoot":"","sources":["../../../../src/messaging/deserialization.worker.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,oEAAoE;AACpE,0DAA0D;AAC1D,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAInC,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AACxF,OAAO,EAAE,wBAAwB,EAAc,MAAM,2CAA2C,CAAC;AACjG,OAAO,EAAE,yBAAyB,EAAE,MAAM,6CAA6C,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,2BAA2B,EAAiB,MAAM,iCAAiC,CAAC;AAC7F,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAgB,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAG9E,OAAO,EAAY,IAAI,EAAE,MAAM,mCAAmC,CAAC;AAInE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAgB/C,MAAM,aAAa,GAAkB,IAAI,GAAG,EAAE,CAAC;AAC/C,MAAM,UAAU,GAAe,IAAI,GAAG,EAAE,CAAC;AACzC,IAAI,QAAuC,CAAC;AAE5C,SAAS,YAAY,CAAC,EAAiC;IACrD,QAAQ,GAAG,EAAE,CAAC;AAChB,CAAC;AAED,SAAS,qBAAqB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAoB;IACxE,MAAM,cAAc,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAEjD,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,+BAA+B,MAAM,GAAG,CAAC,CAAC;QACvD,OAAO;IACT,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IACxF,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAE3D,KAAK,yBAAyB,CAAC;QAC7B,KAAK;QACL,UAAU;QACV,aAAa;QACb,OAAO;QACP,QAAQ;QACR,IAAI,EAAE,cAAc,CAAC,IAAI;KACO,CAAC,CAAC;AACtC,CAAC;AAED,KAAK,UAAU,yBAAyB,CACtC,IAAmC;IAEnC,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAE3E,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YACxE,IAAI,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC;gBACpC,MAAM,2BAA2B,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC,CAAC;YACjF,CAAC;iBAAM,IAAI,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;gBAC5C,MAAM,qBAAqB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC5D,CAAC;iBAAM,CAAC;gBACN,kCAAkC;YACpC,CAAC;YACD,MAAM;QACR,CAAC;QACD,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;YACnE,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACzC,QAAQ,WAAW,EAAE,CAAC;gBACpB,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;oBACpB,MAAM,2BAA2B,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC,CAAC;oBAC/E,MAAM;gBACR,CAAC;gBACD,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;oBAChB,MAAM,qBAAqB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;oBAC1D,MAAM;gBACR,CAAC;gBACD,OAAO,CAAC,CAAC,CAAC;oBACR,qBAAqB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YACD,MAAM;QACR,CAAC;QACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,wBAAwB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;YACnE,MAAM;QACR,CAAC;QACD,KAAK,uBAAuB,CAAC,CAAC,CAAC;YAC7B,8BAA8B,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;YACzE,MAAM;QACR,CAAC;QACD,KAAK,wBAAwB,CAAC,CAAC,CAAC;YAC9B,+CAA+C;YAC/C,wBAAwB,CAAC;gBACvB,KAAK;gBACL,UAAU;gBACV,OAAO,EAAE;oBACP,GAAG,OAAO;oBACV,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,SAAU,CAAC;iBAC1E;gBACD,QAAQ;aACT,CAAC,CAAC;YACH,MAAM;QACR,CAAC;QACD,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,yBAAyB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YACxD,MAAM;QACR,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,OAAO,CAAC,IAAI,CAAC,8CAA8C,IAAI,GAAG,CAAC,CAAC;YACpE,MAAM;QACR,CAAC;IACH,CAAC;AACH,CAAC;AAOD,OAAO,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,qBAAqB,EAAE,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"message-handler.d.ts","sourceRoot":"","sources":["../../../../src/messaging/message-handler.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAMnE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;CAC5C,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,cAAc,CAyB5F"}
1
+ {"version":3,"file":"message-handler.d.ts","sourceRoot":"","sources":["../../../../src/messaging/message-handler.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAKnE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;CAC5C,CAAC;AAYF,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,cAAc,CAgB5F"}
@@ -1,30 +1,24 @@
1
1
  // This Source Code Form is subject to the terms of the Mozilla Public
2
2
  // License, v2.0. If a copy of the MPL was not distributed with this
3
3
  // file, You can obtain one at http://mozilla.org/MPL/2.0/
4
- import { deserializeDepthAiMessage } from "./deserialization";
5
- import { protobufsBySchema } from "./protobuf.js";
4
+ import * as Comlink from "comlink";
5
+ function initWorker(callback) {
6
+ const workerWrap = Comlink.wrap(new Worker(new URL("./deserialization.worker", import.meta.url), { type: "module", name: `message-decoder` }));
7
+ workerWrap.initCallback(Comlink.proxy(callback));
8
+ return workerWrap;
9
+ }
6
10
  export function createMessageHandler(callback) {
7
- const topicDecoders = new Map();
8
- const topicSizes = new Map();
11
+ const workerPool = new Map();
9
12
  return {
10
13
  handle: (({ schema, buffer, topic }) => {
11
- const protobuf = protobufsBySchema[schema];
12
- if (protobuf) {
13
- const bufferArray = new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
14
- const message = protobuf.decoder.decode(bufferArray);
15
- void deserializeDepthAiMessage({
16
- topic,
17
- topicSizes,
18
- topicDecoders,
19
- message,
20
- callback,
21
- type: protobuf.type
22
- });
23
- }
24
- else {
25
- console.warn(`Unsupported message schema "${schema}"`);
14
+ let worker = workerPool.get(topic);
15
+ if (!worker) {
16
+ const newWorker = initWorker(callback);
17
+ worker = newWorker;
18
+ workerPool.set(topic, newWorker);
26
19
  }
27
- })
20
+ worker.handleMessageToDecode({ schema, buffer, topic });
21
+ }),
28
22
  };
29
23
  }
30
24
  //# sourceMappingURL=message-handler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"message-handler.js","sourceRoot":"","sources":["../../../../src/messaging/message-handler.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,oEAAoE;AACpE,0DAA0D;AAI1D,OAAO,EAAE,yBAAyB,EAAiC,MAAM,mBAAmB,CAAC;AAG7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAOlD,MAAM,UAAU,oBAAoB,CAAC,QAAuC;IAC1E,MAAM,aAAa,GAAkB,IAAI,GAAG,EAAE,CAAC;IAC/C,MAAM,UAAU,GAAe,IAAI,GAAG,EAAE,CAAC;IAEzC,OAAO;QACL,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;YACrC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAE3C,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,WAAW,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;gBACxF,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBAErD,KAAK,yBAAyB,CAAC;oBAC7B,KAAK;oBACL,UAAU;oBACV,aAAa;oBACb,OAAO;oBACP,QAAQ;oBACR,IAAI,EAAE,QAAQ,CAAC,IAAI;iBACa,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,+BAA+B,MAAM,GAAG,CAAC,CAAC;YACzD,CAAC;QACH,CAAC,CAA6B;KAC/B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"message-handler.js","sourceRoot":"","sources":["../../../../src/messaging/message-handler.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,oEAAoE;AACpE,0DAA0D;AAE1D,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAYnC,SAAS,UAAU,CAAC,QAAuC;IACzD,MAAM,UAAU,GAA6B,OAAO,CAAC,IAAI,CACvD,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,0BAA0B,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAC9G,CAAC;IAEF,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEjD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,QAAuC;IAC1E,MAAM,UAAU,GAA0C,IAAI,GAAG,EAAE,CAAC;IAEpE,OAAO;QACL,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;YACrC,IAAI,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAEnC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACvC,MAAM,GAAG,SAAS,CAAC;gBACnB,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YACnC,CAAC;YAED,MAAO,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3D,CAAC,CAA6B;KAC/B,CAAC;AACJ,CAAC"}
@@ -6,12 +6,10 @@ type ImagePanelBodyProps = {
6
6
  };
7
7
  export type ImagePanelProps = Omit<PanelProps, 'kind' | 'metrics'> & ImagePanelBodyProps & {
8
8
  toggleTopic?: (topic: string) => void;
9
- };
10
- export declare const ImagePanel: React.NamedExoticComponent<Omit<PanelProps, "kind" | "metrics"> & ImagePanelBodyProps & {
11
- toggleTopic?: (topic: string) => void;
12
- } & {
9
+ streamResolution: string;
13
10
  targetFps?: number;
14
11
  triggerToast?: () => void;
15
- }>;
12
+ };
13
+ export declare const ImagePanel: React.NamedExoticComponent<ImagePanelProps>;
16
14
  export {};
17
15
  //# sourceMappingURL=ImagePanel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ImagePanel.d.ts","sourceRoot":"","sources":["../../../../src/panels/ImagePanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAS,KAAK,UAAU,EAAiB,MAAM,wBAAwB,CAAC;AAQ/E,KAAK,mBAAmB,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;CACpD,CAAC;AAyBF,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,mBAAmB,GAAG;IAAE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,CAAC;AAErI,eAAO,MAAM,UAAU;kBAFoF,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;;gBAElC,MAAM;mBAAiB,MAAM,IAAI;EAmC/H,CAAC"}
1
+ {"version":3,"file":"ImagePanel.d.ts","sourceRoot":"","sources":["../../../../src/panels/ImagePanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAS,KAAK,UAAU,EAAiB,MAAM,wBAAwB,CAAC;AAQ/E,KAAK,mBAAmB,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;CACpD,CAAC;AAyBF,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,mBAAmB,GAAG;IAAE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC;AAE9M,eAAO,MAAM,UAAU,6CAoCrB,CAAC"}
@@ -29,6 +29,7 @@ export const ImagePanel = React.memo(function ImagePanel(props) {
29
29
  React.useEffect(() => {
30
30
  renderedFpsMetricsManagerRef.current = new MetricsManager();
31
31
  }, []);
32
+ // biome-ignore lint/correctness/useExhaustiveDependencies: <explanation>
32
33
  React.useEffect(() => {
33
34
  const interval = setInterval(() => {
34
35
  if (!renderedFpsMetricsManagerRef.current) {
@@ -1 +1 @@
1
- {"version":3,"file":"ImagePanel.js","sourceRoot":"","sources":["../../../../src/panels/ImagePanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ImagePanel.js","sourceRoot":"","sources":["../../../../src/panels/ImagePanel.tsx"],"names":[],"mappings":"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"}
@@ -4,5 +4,7 @@ export type PointCloudPanelProps = {
4
4
  };
5
5
  export declare const PointCloudPanel: React.NamedExoticComponent<PointCloudPanelProps & {
6
6
  toggleTopic?: (topic: string) => void;
7
+ streamResolution?: string;
8
+ targetFps?: number;
7
9
  }>;
8
10
  //# sourceMappingURL=PointCloudPanel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PointCloudPanel.d.ts","sourceRoot":"","sources":["../../../../src/panels/PointCloudPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAyCF,eAAO,MAAM,eAAe;kBAGc,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;EAM/D,CAAC"}
1
+ {"version":3,"file":"PointCloudPanel.d.ts","sourceRoot":"","sources":["../../../../src/panels/PointCloudPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAyCF,eAAO,MAAM,eAAe;kBAKc,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;uBAAqB,MAAM;gBAAa,MAAM;EAsC7G,CAAC"}
@@ -4,8 +4,10 @@ import { jsx as _jsx } from "react/jsx-runtime";
4
4
  // file, You can obtain one at http://mozilla.org/MPL/2.0/
5
5
  import React from "react";
6
6
  import { Panel } from "../components/Panel.js";
7
+ import { createRenderDelaySampler } from "../components/measure-render-delay.js";
8
+ import { MetricsManager } from "../utils/metrics-manager.js";
7
9
  const ThreeDeeRenderComponent = React.lazy(async () => await import("@foxglove/studio-base/panels/ThreeDeeRender"));
8
- const PointCloudPanelBody = ({ topic }) => {
10
+ const PointCloudPanelBody = ({ topic, frameRenderedEvent }) => {
9
11
  const neuralCameraIntrinsics = JSON.parse(localStorage.getItem("neuralCameraIntrinsics") ?? "{}");
10
12
  const fovy = 2 * Math.atan((neuralCameraIntrinsics.right.principalPoint.y) / (neuralCameraIntrinsics.right.focalLenght.y)) * (180 / Math.PI);
11
13
  const defaultConfig = React.useMemo(() => ({
@@ -35,9 +37,32 @@ const PointCloudPanelBody = ({ topic }) => {
35
37
  colorMode: "rgba-fields"
36
38
  }
37
39
  }), [fovy, topic]);
38
- return _jsx(ThreeDeeRenderComponent, { overrideConfig: defaultConfig });
40
+ return _jsx(ThreeDeeRenderComponent, { overrideConfig: defaultConfig, frameRenderedEvent: frameRenderedEvent });
39
41
  };
40
- export const PointCloudPanel = React.memo(function PointCloudPanel({ topic, toggleTopic }) {
41
- return (_jsx(Panel, { kind: "pointCloud", topic: topic, toggleTopic: toggleTopic, disableAnnotations: true, children: _jsx(PointCloudPanelBody, { topic: topic }) }));
42
+ export const PointCloudPanel = React.memo(function PointCloudPanel({ topic, toggleTopic, streamResolution, targetFps }) {
43
+ const renderedFpsMetricsManagerRef = React.useRef(null);
44
+ const [renderedFps, setRenderedFps] = React.useState(undefined);
45
+ const { averageFrameDelay, addFrameTime } = createRenderDelaySampler();
46
+ React.useEffect(() => {
47
+ renderedFpsMetricsManagerRef.current = new MetricsManager();
48
+ }, []);
49
+ // biome-ignore lint/correctness/useExhaustiveDependencies: <explanation>
50
+ React.useEffect(() => {
51
+ const interval = setInterval(() => {
52
+ if (!renderedFpsMetricsManagerRef.current) {
53
+ console.warn('renderedFpsMetricsManagerRef is null');
54
+ return;
55
+ }
56
+ setRenderedFps(renderedFpsMetricsManagerRef.current.calculate('render-pt'));
57
+ }, 500);
58
+ return () => {
59
+ clearInterval(interval);
60
+ };
61
+ }, [renderedFpsMetricsManagerRef]);
62
+ const handleFrameRendered = React.useCallback((frameTime) => {
63
+ renderedFpsMetricsManagerRef.current?.registerEvent('render-pt');
64
+ addFrameTime(frameTime);
65
+ }, [addFrameTime]);
66
+ return (_jsx(Panel, { kind: "pointCloud", topic: topic, toggleTopic: toggleTopic, renderedFps: renderedFps, renderDelay: averageFrameDelay, streamResolution: streamResolution, disableAnnotations: true, targetFps: targetFps, children: _jsx(PointCloudPanelBody, { topic: topic, frameRenderedEvent: handleFrameRendered }) }));
42
67
  });
43
68
  //# sourceMappingURL=PointCloudPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PointCloudPanel.js","sourceRoot":"","sources":["../../../../src/panels/PointCloudPanel.tsx"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,oEAAoE;AACpE,0DAA0D;AAE1D,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAG/C,MAAM,uBAAuB,GAAG,KAAK,CAAC,IAAI,CACxC,KAAK,IAAI,EAAE,CAAC,MAAM,MAAM,CAAC,6CAA6C,CAAC,CACxE,CAAC;AAMF,MAAM,mBAAmB,GAAmC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;IACxE,MAAM,sBAAsB,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,wBAAwB,CAAC,IAAI,IAAI,CAA2B,CAAC;IAC5H,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CACxB,CAAC,sBAAsB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAC/F,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;IACpB,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CACjC,GAAG,EAAE,CAAC,CAAC;QACL,MAAM,EAAE;YACN,CAAC,KAAK,CAAC,EAAE;gBACP,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,CAAC;gBACX,SAAS,EAAE,CAAC;gBACZ,UAAU,EAAE,QAAQ;gBACpB,OAAO,EAAE,IAAI;aACd;SACF;QACD,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC,IAAI;YACf,WAAW,EAAE,IAAI;YACjB,GAAG,EAAE,CAAC;YACN,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACjB,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACvB,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC/B,WAAW,EAAE,CAAC;YACd,uEAAuE;YACvE,IAAI,EAAE,IAAI,IAAI,EAAE;YAChB,IAAI,EAAE,GAAG;YACT,GAAG,EAAE,KAAK;SACX;QACD,SAAS,EAAE;YACT,SAAS,EAAE,aAAsB;SAClC;KACF,CAAC,EACF,CAAC,IAAI,EAAE,KAAK,CAAC,CACd,CAAC;IAEF,OAAO,KAAC,uBAAuB,IAAC,cAAc,EAAE,aAAa,GAAI,CAAC;AACpE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,eAAe,CAAC,EACjE,KAAK,EACL,WAAW,EACsD;IACjE,OAAO,CACL,KAAC,KAAK,IAAC,IAAI,EAAC,YAAY,EAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,kBACjF,KAAC,mBAAmB,IAAC,KAAK,EAAE,KAAK,GAAI,GAC/B,CACT,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"PointCloudPanel.js","sourceRoot":"","sources":["../../../../src/panels/PointCloudPanel.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"poitcloud-sync.d.ts","sourceRoot":"","sources":["../../../../src/utils/poitcloud-sync.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AAEzF,qBAAa,sBAAsB;;IA4B1B,YAAY,EAAE,wBAAwB,EAAE,CAAM;IAE9C,QAAQ,CAAC,IAAI,EAAC,MAAM,GAAG,wBAAwB,GAAG,IAAI;IAatD,QAAQ,CAAC,KAAK,EAAE,wBAAwB,GAAG,IAAI;CAOvD"}
1
+ {"version":3,"file":"poitcloud-sync.d.ts","sourceRoot":"","sources":["../../../../src/utils/poitcloud-sync.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AAEzF,qBAAa,sBAAsB;;IA+B1B,YAAY,EAAE,wBAAwB,EAAE,CAAM;IAE9C,QAAQ,CAAC,IAAI,EAAC,MAAM,GAAG,wBAAwB,GAAG,IAAI;IAatD,QAAQ,CAAC,KAAK,EAAE,wBAAwB,GAAG,IAAI;CAOvD"}
@@ -3,8 +3,11 @@ export class PoitCloudSyncFramework {
3
3
  let left = 0;
4
4
  let right = arr.length;
5
5
  let bestMatch = null;
6
- // biome-ignore lint/style/noNonNullAssertion: <explanation>
7
- if (arr[arr.length - 1].timestamp.nsec < targetKey) {
6
+ const element = arr[arr.length - 1];
7
+ if (!element) {
8
+ return { res: null, index: 0 };
9
+ }
10
+ if (element.timestamp.nsec < targetKey) {
8
11
  return { res: arr[arr.length - 1], index: arr.length };
9
12
  }
10
13
  while (left <= right) {
@@ -1 +1 @@
1
- {"version":3,"file":"poitcloud-sync.js","sourceRoot":"","sources":["../../../../src/utils/poitcloud-sync.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,sBAAsB;IACjC,aAAa,CAAC,GAA+B,EAAE,SAAiB;QAC9D,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC;QACvB,IAAI,SAAS,GAAG,IAAI,CAAC;QACrB,4DAA4D;QAC5D,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,SAAS,CAAC,IAAI,GAAG,SAAS,EAAE,CAAC;YACpD,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;QACzD,CAAC;QAED,OAAO,IAAI,IAAI,KAAK,EAAE,CAAC;YACrB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3C,+CAA+C;YAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAE,CAAC,SAAS,CAAC,IAAI,CAAC;YAExC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YACzC,CAAC;YACD,IAAI,MAAM,GAAG,SAAS,EAAE,CAAC;gBACvB,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;gBACrB,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,GAAG,GAAG,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzC,CAAC;IACM,YAAY,GAA+B,EAAE,CAAC;IACrD,kBAAkB,GAAG,EAAE,CAAC;IACjB,QAAQ,CAAC,IAAW;QACzB,MAAM,EAAE,GAAG,EAAE,KAAK,GAAC,CAAC,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QACrE,mBAAmB;QACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,GAAG,EAAE,CAAC;YACR,OAAO,GAAG,CAAC;QACb,CAAC;QACD,yEAAyE;QACzE,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,EAAG,CAAC;IAClC,CAAC;IACM,QAAQ,CAAC,KAA+B;QAC7C,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACpE,OAAO;QACT,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;CAEF"}
1
+ {"version":3,"file":"poitcloud-sync.js","sourceRoot":"","sources":["../../../../src/utils/poitcloud-sync.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,sBAAsB;IACjC,aAAa,CAAC,GAA+B,EAAE,SAAiB;QAC9D,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC;QACvB,IAAI,SAAS,GAAG,IAAI,CAAC;QACrB,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QACjC,CAAC;QACD,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,GAAG,SAAS,EAAE,CAAC;YACvC,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;QACzD,CAAC;QAED,OAAO,IAAI,IAAI,KAAK,EAAE,CAAC;YACrB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3C,+CAA+C;YAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAE,CAAC,SAAS,CAAC,IAAI,CAAC;YAExC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YACzC,CAAC;YACD,IAAI,MAAM,GAAG,SAAS,EAAE,CAAC;gBACvB,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;gBACrB,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,GAAG,GAAG,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzC,CAAC;IACM,YAAY,GAA+B,EAAE,CAAC;IACrD,kBAAkB,GAAG,EAAE,CAAC;IACjB,QAAQ,CAAC,IAAW;QACzB,MAAM,EAAE,GAAG,EAAE,KAAK,GAAC,CAAC,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QACrE,mBAAmB;QACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,GAAG,EAAE,CAAC;YACR,OAAO,GAAG,CAAC;QACb,CAAC;QACD,yEAAyE;QACzE,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,EAAG,CAAC;IAClC,CAAC;IACM,QAAQ,CAAC,KAA+B;QAC7C,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACpE,OAAO;QACT,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;CAEF"}
@@ -1 +1 @@
1
- {"version":3,"file":"ThreeDeeRender.d.ts","sourceRoot":"","sources":["../../../../../../../packages/studio-base/src/panels/ThreeDeeRender/ThreeDeeRender.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAiBjD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,wDAAwD,CAAC;AAE3G,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,kEAAkE,CAAC;AAG1E,OAAO,KAAK,EAMV,WAAW,EACZ,MAAM,aAAa,CAAC;AAiBrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAiB7C;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,OAAO,EAAE,4BAA4B,CAAC;IACtC,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,EAAE,WAAW,CAAC;IACzB,mFAAmF;IACnF,qBAAqB,CAAC,EAAE,WAAW,CAAC,oBAAoB,CAAC,CAAC;IAC1D,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;CACjC,GAAG,GAAG,CAAC,OAAO,CA8tBd"}
1
+ {"version":3,"file":"ThreeDeeRender.d.ts","sourceRoot":"","sources":["../../../../../../../packages/studio-base/src/panels/ThreeDeeRender/ThreeDeeRender.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAiBjD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,wDAAwD,CAAC;AAE3G,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,kEAAkE,CAAC;AAG1E,OAAO,KAAK,EAMV,WAAW,EACZ,MAAM,aAAa,CAAC;AAiBrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAiB7C;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,OAAO,EAAE,4BAA4B,CAAC;IACtC,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,EAAE,WAAW,CAAC;IACzB,mFAAmF;IACnF,qBAAqB,CAAC,EAAE,WAAW,CAAC,oBAAoB,CAAC,CAAC;IAC1D,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;CACjC,GAAG,GAAG,CAAC,OAAO,CAkuBd"}
@@ -263,6 +263,9 @@ export function ThreeDeeRender(props) {
263
263
  setCurrentFrameMessages(renderState.currentFrame);
264
264
  // allFrames has messages on preloaded topics across all frames (as they are loaded)
265
265
  setAllFrames(renderState.allFrames);
266
+ if (props.frameRenderedEvent !== undefined && renderState.currentFrame?.find(m => m.schemaName === "foxglove.PointCloud")) {
267
+ props.frameRenderedEvent();
268
+ }
266
269
  });
267
270
  };
268
271
  context.watch("allFrames");