@luxonis/visualizer-protobuf 2.20.0 → 2.21.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 (32) hide show
  1. package/dist/{index-Eif4QzE4.js → index-2tz0Pa-6.js} +1 -1
  2. package/dist/{index-BYimCKrW.js → index-7jr063Di.js} +1 -1
  3. package/dist/{index-CZSuxibZ.js → index-BNlbvjCZ.js} +1 -1
  4. package/dist/{index-Bph0s4yC.js → index-BWlbwkHO.js} +1 -1
  5. package/dist/{index-B7_AQKK_.js → index-B_cKZllx.js} +1 -1
  6. package/dist/{index-CwDMLOCh.js → index-BhLfUoxN.js} +1 -1
  7. package/dist/{index-C4JrCXqa.js → index-C05r9Gk7.js} +276 -242
  8. package/dist/{index-DLQIVtvt.js → index-C5TmQKcg.js} +1 -1
  9. package/dist/{index-hDQVp6bN.js → index-C7mMy9Y-.js} +1 -1
  10. package/dist/{index-XP-Bj_XI.js → index-CtH73YZC.js} +1 -1
  11. package/dist/{index-Dr1IjG1N.js → index-Cx8N6SZ0.js} +1 -1
  12. package/dist/{index-BpeL_ibo.js → index-D1_PpZqZ.js} +1 -1
  13. package/dist/{index-BfRMsy3f.js → index-DAbMVrLS.js} +1 -1
  14. package/dist/{index-CmON-FIE.js → index-DV-ASUfa.js} +1 -1
  15. package/dist/{index-D6Dyzzev.js → index-DXdZ7iZZ.js} +1 -1
  16. package/dist/{index-B5bnTrz3.js → index-DeylskOS.js} +2 -2
  17. package/dist/{index-DNFBslJY.js → index-DimpbTOv.js} +1 -1
  18. package/dist/{index-DNybfi0p.js → index-MupjT9zz.js} +1 -1
  19. package/dist/{index-DklUsnK1.js → index-xoIc0nWR.js} +1 -1
  20. package/dist/index.js +1 -1
  21. package/dist/lib/src/components/PanelToolbar.d.ts +1 -0
  22. package/dist/lib/src/components/PanelToolbar.d.ts.map +1 -1
  23. package/dist/lib/src/components/PanelToolbar.js +28 -22
  24. package/dist/lib/src/components/PanelToolbar.js.map +1 -1
  25. package/dist/lib/src/index.d.ts +1 -0
  26. package/dist/lib/src/index.d.ts.map +1 -1
  27. package/dist/lib/src/index.js +1 -0
  28. package/dist/lib/src/index.js.map +1 -1
  29. package/dist/lib/src/output.css +219 -0
  30. package/dist/lib/src/utils/metrics-manager.js +1 -1
  31. package/dist/lib/src/utils/metrics-manager.js.map +1 -1
  32. package/package.json +5 -2
@@ -1,4 +1,4 @@
1
- import { U as ExternalTokenizer, N as styleTags, O as tags, V as LRParser, Q as LRLanguage, J as indentNodeProp, K as continuedIndent, $ as flatIndent, a0 as delimitedIndent, M as foldNodeProp, a1 as foldInside, T as LanguageSupport } from './index-C4JrCXqa.js';
1
+ import { U as ExternalTokenizer, N as styleTags, O as tags, V as LRParser, Q as LRLanguage, J as indentNodeProp, K as continuedIndent, $ as flatIndent, a0 as delimitedIndent, M as foldNodeProp, a1 as foldInside, T as LanguageSupport } from './index-C05r9Gk7.js';
2
2
  import './tslib.es6-C73eoP_E.js';
3
3
  import 'react';
4
4
  import 'react-mosaic-component';
@@ -1,4 +1,4 @@
1
- import { U as ExternalTokenizer, N as styleTags, O as tags, V as LRParser, Q as LRLanguage, J as indentNodeProp, K as continuedIndent, M as foldNodeProp, a1 as foldInside, T as LanguageSupport } from './index-C4JrCXqa.js';
1
+ import { U as ExternalTokenizer, N as styleTags, O as tags, V as LRParser, Q as LRLanguage, J as indentNodeProp, K as continuedIndent, M as foldNodeProp, a1 as foldInside, T as LanguageSupport } from './index-C05r9Gk7.js';
2
2
  import './tslib.es6-C73eoP_E.js';
3
3
  import 'react';
4
4
  import 'react-mosaic-component';
@@ -1,4 +1,4 @@
1
- import { U as ExternalTokenizer, a2 as ContextTracker, N as styleTags, O as tags, V as LRParser, Q as LRLanguage, M as foldNodeProp, a1 as foldInside, J as indentNodeProp, K as continuedIndent, a7 as defineCSSCompletionSource, T as LanguageSupport } from './index-C4JrCXqa.js';
1
+ import { U as ExternalTokenizer, a2 as ContextTracker, N as styleTags, O as tags, V as LRParser, Q as LRLanguage, M as foldNodeProp, a1 as foldInside, J as indentNodeProp, K as continuedIndent, a7 as defineCSSCompletionSource, T as LanguageSupport } from './index-C05r9Gk7.js';
2
2
  import './tslib.es6-C73eoP_E.js';
3
3
  import 'react';
4
4
  import 'react-mosaic-component';
@@ -1,4 +1,4 @@
1
- import { U as ExternalTokenizer, N as styleTags, O as tags, V as LRParser, Q as LRLanguage, J as indentNodeProp, K as continuedIndent, a0 as delimitedIndent, M as foldNodeProp, a1 as foldInside, aa as html, T as LanguageSupport, ab as parseMixed } from './index-C4JrCXqa.js';
1
+ import { U as ExternalTokenizer, N as styleTags, O as tags, V as LRParser, Q as LRLanguage, J as indentNodeProp, K as continuedIndent, a0 as delimitedIndent, M as foldNodeProp, a1 as foldInside, aa as html, T as LanguageSupport, ab as parseMixed } from './index-C05r9Gk7.js';
2
2
  import './tslib.es6-C73eoP_E.js';
3
3
  import 'react';
4
4
  import 'react-mosaic-component';
@@ -1,4 +1,4 @@
1
- import { U as ExternalTokenizer, a2 as ContextTracker, N as styleTags, O as tags, V as LRParser, Z as syntaxTree, X as ifNotIn, Q as LRLanguage, J as indentNodeProp, a0 as delimitedIndent, M as foldNodeProp, a1 as foldInside, T as LanguageSupport, a5 as IterMode, Y as completeFromList, a6 as NodeWeakMap, a4 as snippetCompletion } from './index-C4JrCXqa.js';
1
+ import { U as ExternalTokenizer, a2 as ContextTracker, N as styleTags, O as tags, V as LRParser, Z as syntaxTree, X as ifNotIn, Q as LRLanguage, J as indentNodeProp, a0 as delimitedIndent, M as foldNodeProp, a1 as foldInside, T as LanguageSupport, a5 as IterMode, Y as completeFromList, a6 as NodeWeakMap, a4 as snippetCompletion } from './index-C05r9Gk7.js';
2
2
  import './tslib.es6-C73eoP_E.js';
3
3
  import 'react';
4
4
  import 'react-mosaic-component';
@@ -1,4 +1,4 @@
1
- import { N as styleTags, O as tags, Q as LRLanguage, T as LanguageSupport, V as LRParser, a3 as LocalTokenGroup, aa as html, ab as parseMixed, ad as javascriptLanguage } from './index-C4JrCXqa.js';
1
+ import { N as styleTags, O as tags, Q as LRLanguage, T as LanguageSupport, V as LRParser, a3 as LocalTokenGroup, aa as html, ab as parseMixed, ad as javascriptLanguage } from './index-C05r9Gk7.js';
2
2
  import './tslib.es6-C73eoP_E.js';
3
3
  import 'react';
4
4
  import 'react-mosaic-component';
@@ -3,7 +3,7 @@ import React__default, { useReducer, useRef, useCallback, useLayoutEffect, Compo
3
3
  import ReactDOM__default from 'react-dom';
4
4
  import { S as isSymbol, U as toString, V as keys, W as getSymbols$1, X as stubArray, Y as arrayPush, Z as baseGetAllKeys, g as getTag, $ as getAllKeys, k as baseGet, c as baseIteratee, j as castPath, t as toKey, a0 as arrayMap$1, a1 as baseUniq, b as baseFlatten, a2 as useMustNotChange, a3 as useCurrentLayoutActions, a4 as useCurrentLayoutSelector, r as reportError, A as AppError, L as Logger, u as useGuaranteedContext, a5 as usePanelMosaicId, a6 as useSelectedPanels, a7 as PANEL_TITLE_CONFIG_KEY, a8 as noop$4, o as getPanelTypeFromId, M as useShallowMemo, T as TAB_PANEL_TYPE, J as filterMap, d as dist$3, a9 as useAppConfiguration, aa as useValueChangedDebugLog, ab as useJsonTreeTheme } from './tslib.es6-C73eoP_E.js';
5
5
  import { createStore, useStore } from 'zustand';
6
- import { g as generateUtilityClass, c as createAggregator, f as flatRest, b as baseSet, A as AnalyticsContext, P as PropTypes, E as ErrorDisplay, S as Stack$1, m as makeStyles$1, _ as _extends$1, W as WorkspaceContext, u as useAnalytics, a as AppEvent, L as LeftSidebarItemKeys, R as RightSidebarItemKeys, d as useTranslation, e as usePanelCatalog, h as EmptyState, i as isEmpty, j as PanelContext, k as PanelCatalogContext, l as usePanelStateStore, n as useDefaultPanelTitle, o as useWorkspaceStore, p as WorkspaceStoreSelectors, q as difference, r as usePanelContext, s as useMessagePipeline, v as v4, t as useHoverValue, w as useSetHoverValue, x as useClearHoverValue, y as useMessagePipelineGetter, z as usePanelSettingsTreeUpdate, B as PlayerCapabilities, C as assertNever, D as PlayerPresence, F as isEqual, G as isDesktopApp, H as createTheme, I as propTypesExports } from './index-C4JrCXqa.js';
6
+ import { g as generateUtilityClass, c as createAggregator, f as flatRest, b as baseSet, A as AnalyticsContext, P as PropTypes, E as ErrorDisplay, S as Stack$1, m as makeStyles$1, _ as _extends$1, W as WorkspaceContext, u as useAnalytics, a as AppEvent, L as LeftSidebarItemKeys, R as RightSidebarItemKeys, d as useTranslation, e as usePanelCatalog, h as EmptyState, i as isEmpty, j as PanelContext, k as PanelCatalogContext, l as usePanelStateStore, n as useDefaultPanelTitle, o as useWorkspaceStore, p as WorkspaceStoreSelectors, q as difference, r as usePanelContext, s as useMessagePipeline, v as v4, t as useHoverValue, w as useSetHoverValue, x as useClearHoverValue, y as useMessagePipelineGetter, z as usePanelSettingsTreeUpdate, B as PlayerCapabilities, C as assertNever, D as PlayerPresence, F as isEqual, G as isDesktopApp, H as createTheme, I as propTypesExports } from './index-C05r9Gk7.js';
7
7
  import { MosaicDragType, MosaicContext, MosaicWindowContext, getOtherBranch, getNodeAtPath } from 'react-mosaic-component';
8
8
  import { t as typescript } from './useMessageReducer-jNx5e6JW.js';
9
9
  import { g as getDefaultExportFromCjs, c as commonjsGlobal, a as getAugmentedNamespace } from './_commonjsHelpers-E-ZsRS8r.js';
@@ -1,4 +1,4 @@
1
- import { N as styleTags, O as tags, ad as javascriptLanguage, Q as LRLanguage, T as LanguageSupport, V as LRParser, aa as html, ab as parseMixed, U as ExternalTokenizer } from './index-C4JrCXqa.js';
1
+ import { N as styleTags, O as tags, ad as javascriptLanguage, Q as LRLanguage, T as LanguageSupport, V as LRParser, aa as html, ab as parseMixed, U as ExternalTokenizer } from './index-C05r9Gk7.js';
2
2
  import './tslib.es6-C73eoP_E.js';
3
3
  import 'react';
4
4
  import 'react-mosaic-component';
@@ -1,4 +1,4 @@
1
- import { ImagePanel } from './index-CmON-FIE.js';
1
+ import { ImagePanel } from './index-DV-ASUfa.js';
2
2
  import 'react';
3
3
  import 'react-dom';
4
4
  import './tslib.es6-C73eoP_E.js';
@@ -7,7 +7,7 @@ import './_commonjsHelpers-E-ZsRS8r.js';
7
7
  import '@mui/material';
8
8
  import './isArrayLikeObject-Bytw9p-q.js';
9
9
  import 'zustand';
10
- import './index-C4JrCXqa.js';
10
+ import './index-C05r9Gk7.js';
11
11
  import './utils-Cmsz3FxA.js';
12
12
  import './comlink-DHMAu6X7.js';
13
13
  import './FoxgloveServer-C39Uooyk.js';
@@ -1,4 +1,4 @@
1
- import { a2 as ContextTracker, U as ExternalTokenizer, N as styleTags, O as tags, V as LRParser, Q as LRLanguage, J as indentNodeProp, a0 as delimitedIndent, M as foldNodeProp, a1 as foldInside, T as LanguageSupport, ab as parseMixed } from './index-C4JrCXqa.js';
1
+ import { a2 as ContextTracker, U as ExternalTokenizer, N as styleTags, O as tags, V as LRParser, Q as LRLanguage, J as indentNodeProp, a0 as delimitedIndent, M as foldNodeProp, a1 as foldInside, T as LanguageSupport, ab as parseMixed } from './index-C05r9Gk7.js';
2
2
  import './tslib.es6-C73eoP_E.js';
3
3
  import 'react';
4
4
  import 'react-mosaic-component';
@@ -1,4 +1,4 @@
1
- import { N as styleTags, O as tags, V as LRParser, Q as LRLanguage, J as indentNodeProp, K as continuedIndent, M as foldNodeProp, a1 as foldInside, T as LanguageSupport } from './index-C4JrCXqa.js';
1
+ import { N as styleTags, O as tags, V as LRParser, Q as LRLanguage, J as indentNodeProp, K as continuedIndent, M as foldNodeProp, a1 as foldInside, T as LanguageSupport } from './index-C05r9Gk7.js';
2
2
  import './tslib.es6-C73eoP_E.js';
3
3
  import 'react';
4
4
  import 'react-mosaic-component';
@@ -1,4 +1,4 @@
1
- import { U as ExternalTokenizer, a2 as ContextTracker, N as styleTags, O as tags, V as LRParser, a3 as LocalTokenGroup, a4 as snippetCompletion, Z as syntaxTree, Q as LRLanguage, J as indentNodeProp, K as continuedIndent, $ as flatIndent, a0 as delimitedIndent, M as foldNodeProp, a1 as foldInside, T as LanguageSupport, X as ifNotIn, Y as completeFromList, a5 as IterMode, a6 as NodeWeakMap } from './index-C4JrCXqa.js';
1
+ import { U as ExternalTokenizer, a2 as ContextTracker, N as styleTags, O as tags, V as LRParser, a3 as LocalTokenGroup, a4 as snippetCompletion, Z as syntaxTree, Q as LRLanguage, J as indentNodeProp, K as continuedIndent, $ as flatIndent, a0 as delimitedIndent, M as foldNodeProp, a1 as foldInside, T as LanguageSupport, X as ifNotIn, Y as completeFromList, a5 as IterMode, a6 as NodeWeakMap } from './index-C05r9Gk7.js';
2
2
  import './tslib.es6-C73eoP_E.js';
3
3
  import 'react';
4
4
  import 'react-mosaic-component';
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { ah as ImagePanel, ag as PanelLayout, ai as PointCloudPanel, ae as VisualizerConnection, af as VisualizerContext } from './index-C4JrCXqa.js';
1
+ export { ah as ImagePanel, ag as PanelLayout, ai as PointCloudPanel, ae as VisualizerConnection, af as VisualizerContext } from './index-C05r9Gk7.js';
2
2
  import './tslib.es6-C73eoP_E.js';
3
3
  import 'react';
4
4
  import 'react-mosaic-component';
@@ -1,3 +1,4 @@
1
+ import "../output.css";
1
2
  import { type PanelTopic } from "./Panel.js";
2
3
  import type { ProtobufKind } from "../messaging/protobuf.js";
3
4
  import "@luxonis/common-fe-components/styles";
@@ -1 +1 @@
1
- {"version":3,"file":"PanelToolbar.d.ts","sourceRoot":"","sources":["../../../../src/components/PanelToolbar.tsx"],"names":[],"mappings":"AAyBA,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"}
1
+ {"version":3,"file":"PanelToolbar.d.ts","sourceRoot":"","sources":["../../../../src/components/PanelToolbar.tsx"],"names":[],"mappings":"AAGA,OAAO,eAAe,CAAC;AAuBvB,OAAO,EAAE,KAAK,UAAU,EAAiB,MAAM,YAAY,CAAC;AAG5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,sCAAsC,CAAC;AAqI9C,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,CA2KpD,CAAC"}
@@ -2,12 +2,29 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
2
2
  // This Source Code Form is subject to the terms of the Mozilla Public
3
3
  // License, v2.0. If a copy of the MPL was not distributed with this
4
4
  // file, You can obtain one at http://mozilla.org/MPL/2.0/
5
- import { ArrowDownIcon, ArrowUpIcon, Button, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, Flex, HelpIcon, Icon, Label, NormalText, SubHeader, Tooltip, CrossIcon } from "@luxonis/common-fe-components";
5
+ import "../output.css";
6
+ import { CiFilter } from "react-icons/ci";
7
+ import { ArrowDownIcon, ArrowUpIcon, Button, CrossIcon, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, Flex, HelpIcon, Icon, Label, NormalText, SubHeader, Tooltip } from "@luxonis/common-fe-components";
6
8
  import { ImCheckboxChecked, ImCheckboxUnchecked } from "react-icons/im";
7
9
  import { useDetections } from "./Panel.js";
8
10
  import { useConnections } from "../context/ConnectionsProvider.js";
9
11
  import "@luxonis/common-fe-components/styles";
10
12
  import { createEventLoopDelaySampler } from "./measure-event-loop-delay";
13
+ import { RiNumbersFill } from "react-icons/ri";
14
+ function PanelToolbarMetrics({ renderedFps, targetFps, metrics }) {
15
+ const [variant, setVariant] = React.useState("full");
16
+ const eventLoopDelay = createEventLoopDelaySampler();
17
+ const descriptionRef = React.useRef(null);
18
+ React.useEffect(() => {
19
+ if (descriptionRef.current && descriptionRef.current.offsetWidth < 800) {
20
+ setVariant("compact");
21
+ }
22
+ else {
23
+ setVariant("full");
24
+ }
25
+ }, [descriptionRef.current?.offsetWidth]);
26
+ return (_jsx(Flex, { direction: "row", gap: "sm", align: "start", justify: "end", ref: descriptionRef, width: "full", children: variant === "compact" ? (_jsx(Tooltip, { content: _jsxs("ul", { children: [_jsxs("li", { children: ["Camera: ", targetFps === 0 ? "-" : targetFps, " FPS"] }), _jsxs("li", { children: ["Network:", " ", !metrics || metrics?.incomingMessagesFps === 0 ? "-" : metrics.incomingMessagesFps, " ", "FPS"] }), _jsxs("li", { children: ["Decoding:", " ", !metrics || metrics?.decodedMessagesFps === 0 ? "-" : metrics.decodedMessagesFps, " ", "FPS"] }), _jsxs("li", { children: ["Throughput:", " ", !metrics || metrics?.messageThroughput === 0 ? "-" : metrics.messageThroughput, " ", "Mbps"] }), _jsxs("li", { children: ["Rendering: ", renderedFps === 0 ? "-" : renderedFps, " FPS"] }), _jsxs("li", { children: ["Frontend Delay: ", eventLoopDelay.toFixed(2), " ms"] })] }), direction: "bottom", className: "ml-auto", children: _jsx(Button, { icon: RiNumbersFill, variant: "outline", colorVariant: "white", size: "sm", className: "text-gray-700" }) })) : (_jsxs(_Fragment, { 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` })), metrics?.messageThroughput !== undefined && (_jsx(Label, { text: `Throughput: ${metrics.messageThroughput === 0 ? "-" : metrics.messageThroughput} MB` })), renderedFps !== undefined && (_jsx(Label, { text: `Rendering: ${renderedFps === 0 ? "-" : renderedFps} FPS` })), eventLoopDelay !== undefined && (_jsx(Label, { text: `Frontend Delay: ${Math.ceil(eventLoopDelay)} ms` }))] })) }));
27
+ }
11
28
  const PanelAnnotationButton = ({ topic, onClick }) => {
12
29
  const handleClick = React.useCallback((event) => {
13
30
  event.preventDefault();
@@ -15,11 +32,10 @@ const PanelAnnotationButton = ({ topic, onClick }) => {
15
32
  }, [onClick]);
16
33
  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
34
  };
18
- export const PanelToolbar = ({ topic, kind, setDetections, disableAnnotations = false, targetFps, triggerToast, renderedFps, toggleTopic, streamResolution }) => {
35
+ export const PanelToolbar = ({ topic, kind, setDetections, disableAnnotations = false, targetFps, triggerToast, renderedFps, toggleTopic, streamResolution, }) => {
19
36
  const [metrics, setMetrics] = React.useState();
20
37
  const { detections } = useDetections();
21
38
  const connections = useConnections();
22
- const eventLoopDelay = createEventLoopDelaySampler();
23
39
  React.useEffect(() => {
24
40
  const interval = setInterval(() => {
25
41
  setMetrics(connections[0]?.getTopicMetrics(topic));
@@ -29,7 +45,6 @@ export const PanelToolbar = ({ topic, kind, setDetections, disableAnnotations =
29
45
  };
30
46
  // eslint-disable-next-line react-hooks/exhaustive-deps
31
47
  }, []);
32
- const [annotationsOpened, setAnnotationsOpened] = React.useState(false);
33
48
  const hasExtra = React.useMemo(() => detections.some((detection) => detection.extra && !detection.enabled), [detections]);
34
49
  const [extraVisible, setExtraVisible] = React.useState(false);
35
50
  const onToggleTopic = React.useCallback((toggleTopicName) => {
@@ -44,9 +59,9 @@ export const PanelToolbar = ({ topic, kind, setDetections, disableAnnotations =
44
59
  const name = React.useMemo(() => {
45
60
  return topic;
46
61
  }, [topic]);
47
- const nameWithResolution = React.useMemo(() => {
48
- return streamResolution && streamResolution !== '-' ? `${name} (${streamResolution})` : name;
49
- }, [name, streamResolution]);
62
+ const resolution = React.useMemo(() => {
63
+ return streamResolution && streamResolution !== "-" ? `(${streamResolution})` : undefined;
64
+ }, [streamResolution]);
50
65
  React.useEffect(() => {
51
66
  if (targetFps && metrics?.incomingMessagesFps && targetFps > metrics.incomingMessagesFps) {
52
67
  const timeout = setTimeout(() => {
@@ -63,20 +78,11 @@ export const PanelToolbar = ({ topic, kind, setDetections, disableAnnotations =
63
78
  const makeDetection = React.useCallback((detection, { extra }) => (extra ? detection.extra && !detection.enabled : !detection.extra || detection.enabled) && (_jsx(PanelAnnotationButton, { topic: detection, onClick: () => {
64
79
  onToggleTopic(detection.name);
65
80
  } }, detection.name)), [onToggleTopic]);
66
- const descriptionRef = React.useRef(null);
67
- return (_jsxs(Flex, { direction: "row", gap: "sm", align: "center", justify: "space-between", style: {
68
- paddingLeft: 16,
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, { icon: CrossIcon, variant: "ghost", colorVariant: "white", size: "sm", onClick: () => toggleTopic?.(name) })] }), _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` })), metrics?.messageThroughput !== undefined && (_jsx(Label, { text: `Throughput: ${metrics.messageThroughput === 0 ? '-' : metrics.messageThroughput} MB` })), 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: {
70
- borderRadius: 0,
71
- borderTopRightRadius: 8,
72
- height: "100%",
73
- } }) }), _jsxs(DropdownMenuContent, { children: [detections.map((detection) => makeDetection(detection, { extra: false })), hasExtra && (_jsx(Button, { width: "full", paddingY: "xs", variant: "ghost", "aria-expanded": extraVisible ? "true" : undefined, onClick: () => {
74
- setExtraVisible((current) => !current);
75
- }, icon: extraVisible ? ArrowUpIcon : ArrowDownIcon, style: {
76
- borderRadius: 4,
77
- }, children: extraVisible ? "Less" : "More" })), extraVisible &&
78
- detections.map((detection) => makeDetection(detection, { extra: true }))] })] })), kind === "pointCloud" && (_jsx(Flex, { style: {
79
- paddingRight: 16,
80
- }, children: _jsx(Tooltip, { content: _jsxs(_Fragment, { children: [_jsx(Label, { text: "To move camera:" }), _jsxs("ul", { children: [_jsx("li", { children: "W - Move camera forward" }), _jsx("li", { children: "A - Move camera backward" }), _jsx("li", { children: "S - Move camera to the left" }), _jsx("li", { children: "D - Move camera to the right" }), _jsx("li", { children: "Scroll \u2013 Zoom in and out" }), _jsx("li", { children: "Drag \u2013 Move camera parallel to the ground" }), _jsx("li", { children: `Right-click + Drag horizontally – Rotate the camera around the world's z-axis` }), _jsx("li", { children: `Right-click + Drag vertically – Pan the camera around the world's x- and y- axes` })] })] }), children: _jsx(Icon, { icon: HelpIcon, size: "sm", color: "gray", cursor: "help" }) }) }))] }));
81
+ return (_jsx(Flex, { direction: "row", gap: "sm", align: "center", justify: "space-between", className: "px-4", children: _jsxs(Flex, { direction: "row", gap: "xs", align: "center", justify: "start", width: "full", paddingY: "xs", children: [_jsxs(Flex, { width: "fit", gap: "xxs", className: "flex-col xl:flex-row items-start xl:items-end", children: [_jsx(SubHeader, { text: name, className: "whitespace-nowrap" }), resolution && _jsx(Label, { text: resolution, className: "h-fit" })] }), _jsx(PanelToolbarMetrics, { renderedFps: renderedFps, targetFps: targetFps, metrics: metrics }), _jsxs(Flex, { direction: "row", gap: "xs", align: "center", justify: "start", marginLeft: "auto", width: "fit", children: [!disableAnnotations && kind === "image" && (_jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, disabled: detections.length === 0, children: _jsx(Button, { variant: "outline", colorVariant: "white", size: "sm", icon: CiFilter, disabled: detections.length === 0 }) }), _jsxs(DropdownMenuContent, { children: [detections.map((detection) => makeDetection(detection, { extra: false })), hasExtra && (_jsx(Button, { width: "full", paddingY: "xs", variant: "ghost", "aria-expanded": extraVisible ? "true" : undefined, onClick: () => {
82
+ setExtraVisible((current) => !current);
83
+ }, icon: extraVisible ? ArrowUpIcon : ArrowDownIcon, style: {
84
+ borderRadius: 4,
85
+ }, children: extraVisible ? "Less" : "More" })), extraVisible &&
86
+ detections.map((detection) => makeDetection(detection, { extra: true }))] })] })), kind === "pointCloud" && (_jsx(Flex, { children: _jsx(Tooltip, { content: _jsxs(_Fragment, { children: [_jsx(Label, { text: "To move camera:" }), _jsxs("ul", { children: [_jsx("li", { children: "W - Move camera forward" }), _jsx("li", { children: "A - Move camera backward" }), _jsx("li", { children: "S - Move camera to the left" }), _jsx("li", { children: "D - Move camera to the right" }), _jsx("li", { children: "Scroll \u2013 Zoom in and out" }), _jsx("li", { children: "Drag \u2013 Move camera parallel to the ground" }), _jsx("li", { children: `Right-click + Drag horizontally – Rotate the camera around the world's z-axis` }), _jsx("li", { children: `Right-click + Drag vertically – Pan the camera around the world's x- and y- axes` })] })] }), children: _jsx(Button, { icon: HelpIcon, variant: "outline", colorVariant: "white", size: "sm", className: "text-gray-700" }) }) })), _jsx(Button, { icon: CrossIcon, variant: "outline", colorVariant: "white", size: "sm", onClick: () => toggleTopic?.(name) })] })] }) }));
81
87
  };
82
88
  //# sourceMappingURL=PanelToolbar.js.map
@@ -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":"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"}
@@ -1,3 +1,4 @@
1
+ import './output.css';
1
2
  export type { PublicChannelData } from './connection/connection.js';
2
3
  export { VisualizerConnection } from './connection/connection.js';
3
4
  export type { WorkerOutputMessage as FoxgloveAdapterOutputMessage, WorkerInputMessage as FoxgloveAdapterInputMessage, FoxgloveMessage } from './connection/communicator.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,YAAY,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAEjE,YAAY,EAAE,mBAAmB,IAAI,4BAA4B,EAAE,kBAAkB,IAAI,2BAA2B,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE5K,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,cAAc,CAAC;AAEtB,YAAY,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAEjE,YAAY,EAAE,mBAAmB,IAAI,4BAA4B,EAAE,kBAAkB,IAAI,2BAA2B,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE5K,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC"}
@@ -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 './output.css';
4
5
  export { VisualizerConnection } from './connection/connection.js';
5
6
  export { VisualizerContext } from "./context/VisualizerContext";
6
7
  export { PanelLayout } from "./components/PanelLayout.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,oEAAoE;AACpE,0DAA0D;AAG1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAIjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,oEAAoE;AACpE,0DAA0D;AAE1D,OAAO,cAAc,CAAC;AAGtB,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAIjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,219 @@
1
+ /*! tailwindcss v4.0.17 | MIT License | https://tailwindcss.com */
2
+ @layer theme, base, components, utilities;
3
+ @layer theme {
4
+ :root, :host {
5
+ --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
6
+ "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
7
+ --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
8
+ "Courier New", monospace;
9
+ --color-gray-700: oklch(0.373 0.034 259.733);
10
+ --spacing: 0.25rem;
11
+ --default-font-family: var(--font-sans);
12
+ --default-mono-font-family: var(--font-mono);
13
+ }
14
+ }
15
+ @layer base {
16
+ *, ::after, ::before, ::backdrop, ::file-selector-button {
17
+ box-sizing: border-box;
18
+ margin: 0;
19
+ padding: 0;
20
+ border: 0 solid;
21
+ }
22
+ html, :host {
23
+ line-height: 1.5;
24
+ -webkit-text-size-adjust: 100%;
25
+ tab-size: 4;
26
+ font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
27
+ font-feature-settings: var(--default-font-feature-settings, normal);
28
+ font-variation-settings: var(--default-font-variation-settings, normal);
29
+ -webkit-tap-highlight-color: transparent;
30
+ }
31
+ hr {
32
+ height: 0;
33
+ color: inherit;
34
+ border-top-width: 1px;
35
+ }
36
+ abbr:where([title]) {
37
+ -webkit-text-decoration: underline dotted;
38
+ text-decoration: underline dotted;
39
+ }
40
+ h1, h2, h3, h4, h5, h6 {
41
+ font-size: inherit;
42
+ font-weight: inherit;
43
+ }
44
+ a {
45
+ color: inherit;
46
+ -webkit-text-decoration: inherit;
47
+ text-decoration: inherit;
48
+ }
49
+ b, strong {
50
+ font-weight: bolder;
51
+ }
52
+ code, kbd, samp, pre {
53
+ font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
54
+ font-feature-settings: var(--default-mono-font-feature-settings, normal);
55
+ font-variation-settings: var(--default-mono-font-variation-settings, normal);
56
+ font-size: 1em;
57
+ }
58
+ small {
59
+ font-size: 80%;
60
+ }
61
+ sub, sup {
62
+ font-size: 75%;
63
+ line-height: 0;
64
+ position: relative;
65
+ vertical-align: baseline;
66
+ }
67
+ sub {
68
+ bottom: -0.25em;
69
+ }
70
+ sup {
71
+ top: -0.5em;
72
+ }
73
+ table {
74
+ text-indent: 0;
75
+ border-color: inherit;
76
+ border-collapse: collapse;
77
+ }
78
+ :-moz-focusring {
79
+ outline: auto;
80
+ }
81
+ progress {
82
+ vertical-align: baseline;
83
+ }
84
+ summary {
85
+ display: list-item;
86
+ }
87
+ ol, ul, menu {
88
+ list-style: none;
89
+ }
90
+ img, svg, video, canvas, audio, iframe, embed, object {
91
+ display: block;
92
+ vertical-align: middle;
93
+ }
94
+ img, video {
95
+ max-width: 100%;
96
+ height: auto;
97
+ }
98
+ button, input, select, optgroup, textarea, ::file-selector-button {
99
+ font: inherit;
100
+ font-feature-settings: inherit;
101
+ font-variation-settings: inherit;
102
+ letter-spacing: inherit;
103
+ color: inherit;
104
+ border-radius: 0;
105
+ background-color: transparent;
106
+ opacity: 1;
107
+ }
108
+ :where(select:is([multiple], [size])) optgroup {
109
+ font-weight: bolder;
110
+ }
111
+ :where(select:is([multiple], [size])) optgroup option {
112
+ padding-inline-start: 20px;
113
+ }
114
+ ::file-selector-button {
115
+ margin-inline-end: 4px;
116
+ }
117
+ ::placeholder {
118
+ opacity: 1;
119
+ }
120
+ @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
121
+ ::placeholder {
122
+ color: color-mix(in oklab, currentColor 50%, transparent);
123
+ }
124
+ }
125
+ textarea {
126
+ resize: vertical;
127
+ }
128
+ ::-webkit-search-decoration {
129
+ -webkit-appearance: none;
130
+ }
131
+ ::-webkit-date-and-time-value {
132
+ min-height: 1lh;
133
+ text-align: inherit;
134
+ }
135
+ ::-webkit-datetime-edit {
136
+ display: inline-flex;
137
+ }
138
+ ::-webkit-datetime-edit-fields-wrapper {
139
+ padding: 0;
140
+ }
141
+ ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
142
+ padding-block: 0;
143
+ }
144
+ :-moz-ui-invalid {
145
+ box-shadow: none;
146
+ }
147
+ button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
148
+ appearance: button;
149
+ }
150
+ ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
151
+ height: auto;
152
+ }
153
+ [hidden]:where(:not([hidden="until-found"])) {
154
+ display: none !important;
155
+ }
156
+ }
157
+ @layer utilities {
158
+ .visible {
159
+ visibility: visible;
160
+ }
161
+ .fixed {
162
+ position: fixed;
163
+ }
164
+ .ml-auto {
165
+ margin-left: auto;
166
+ }
167
+ .hidden {
168
+ display: none;
169
+ }
170
+ .h-fit {
171
+ height: fit-content;
172
+ }
173
+ .flex-col {
174
+ flex-direction: column;
175
+ }
176
+ .items-start {
177
+ align-items: flex-start;
178
+ }
179
+ .rounded {
180
+ border-radius: 0.25rem;
181
+ }
182
+ .border {
183
+ border-style: var(--tw-border-style);
184
+ border-width: 1px;
185
+ }
186
+ .px-4 {
187
+ padding-inline: calc(var(--spacing) * 4);
188
+ }
189
+ .whitespace-nowrap {
190
+ white-space: nowrap;
191
+ }
192
+ .text-gray-700 {
193
+ color: var(--color-gray-700);
194
+ }
195
+ .outline {
196
+ outline-style: var(--tw-outline-style);
197
+ outline-width: 1px;
198
+ }
199
+ .xl\:flex-row {
200
+ @media (width >= 80rem) {
201
+ flex-direction: row;
202
+ }
203
+ }
204
+ .xl\:items-end {
205
+ @media (width >= 80rem) {
206
+ align-items: flex-end;
207
+ }
208
+ }
209
+ }
210
+ @property --tw-border-style {
211
+ syntax: "*";
212
+ inherits: false;
213
+ initial-value: solid;
214
+ }
215
+ @property --tw-outline-style {
216
+ syntax: "*";
217
+ inherits: false;
218
+ initial-value: solid;
219
+ }
@@ -44,7 +44,7 @@ export class ThroughputMetricsManager {
44
44
  return 0;
45
45
  }
46
46
  // Get time span in seconds
47
- const timeSpanMs = topicMetrics[0].timestamp - topicMetrics[topicMetrics.length - 1].timestamp;
47
+ const timeSpanMs = topicMetrics.at(0)?.timestamp ?? 0 - (topicMetrics.at(-1)?.timestamp ?? 0);
48
48
  const timeSpanSec = timeSpanMs / 1000;
49
49
  if (timeSpanSec === 0) {
50
50
  return 0;
@@ -1 +1 @@
1
- {"version":3,"file":"metrics-manager.js","sourceRoot":"","sources":["../../../../src/utils/metrics-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metrics-manager.js","sourceRoot":"","sources":["../../../../src/utils/metrics-manager.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luxonis/visualizer-protobuf",
3
- "version": "2.20.0",
3
+ "version": "2.21.0",
4
4
  "type": "module",
5
5
  "description": "RobotHub Visualizer Library",
6
6
  "author": "Luxonis Corp",
@@ -8,7 +8,8 @@
8
8
  "types": "./dist/lib/src/index.js",
9
9
  "license": "UNLICENSED",
10
10
  "scripts": {
11
- "build": "rm -rf dist && tsc && rollup -c && cp -r ./src/fonts dist/src",
11
+ "build": "npm run tailwind && rm -rf dist && tsc && rollup -c && cp -r ./src/fonts dist/src && cp ./src/output.css dist/lib/src",
12
+ "tailwind": "npx @tailwindcss/cli -i ./src/index.css -o ./src/output.css",
12
13
  "lint": "npx eslint . --fix",
13
14
  "gen:proto": "bash ./protobuf-gen.sh"
14
15
  },
@@ -20,6 +21,7 @@
20
21
  "@luxonis/remote-connection": "2.5.2",
21
22
  "@mui/icons-material": "5.15.5",
22
23
  "@mui/material": "5.15.6",
24
+ "@tailwindcss/cli": "4.0.17",
23
25
  "color": "^4.2.3",
24
26
  "lodash.curry": "^4.1.1",
25
27
  "nearley": "2.20.1",
@@ -28,6 +30,7 @@
28
30
  "react-dnd-html5-backend": "16.0.1",
29
31
  "react-icons": "5.2.1",
30
32
  "react-mosaic-component": "6.1.0",
33
+ "tailwindcss": "4.0.17",
31
34
  "ts-proto": "1.181.1",
32
35
  "uuidv7": "^1.0.2",
33
36
  "zustand": "4.5.0"