@luxonis/depthai-viewer-common 3.8.2 → 3.9.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 (123) hide show
  1. package/README.md +104 -11
  2. package/dist/components/CTASubLabel.d.ts +10 -2
  3. package/dist/components/CTASubLabel.d.ts.map +1 -1
  4. package/dist/components/CTASubLabel.js +3 -0
  5. package/dist/components/CTASubLabel.js.map +1 -1
  6. package/dist/components/DepthAIContext.d.ts +25 -2
  7. package/dist/components/DepthAIContext.d.ts.map +1 -1
  8. package/dist/components/DepthAIContext.js +3 -0
  9. package/dist/components/DepthAIContext.js.map +1 -1
  10. package/dist/components/Pipeline.d.ts +19 -2
  11. package/dist/components/Pipeline.d.ts.map +1 -1
  12. package/dist/components/Pipeline.js +12 -0
  13. package/dist/components/Pipeline.js.map +1 -1
  14. package/dist/components/Resizable.d.ts +20 -0
  15. package/dist/components/Resizable.d.ts.map +1 -1
  16. package/dist/components/Resizable.js +8 -0
  17. package/dist/components/Resizable.js.map +1 -1
  18. package/dist/components/Streams.d.ts +98 -4
  19. package/dist/components/Streams.d.ts.map +1 -1
  20. package/dist/components/Streams.js +8 -0
  21. package/dist/components/Streams.js.map +1 -1
  22. package/dist/components/ThemeToggle.d.ts +8 -0
  23. package/dist/components/ThemeToggle.d.ts.map +1 -1
  24. package/dist/components/ThemeToggle.js +8 -0
  25. package/dist/components/ThemeToggle.js.map +1 -1
  26. package/dist/constants/connection.d.ts +28 -0
  27. package/dist/constants/connection.d.ts.map +1 -1
  28. package/dist/constants/connection.js +13 -0
  29. package/dist/constants/connection.js.map +1 -1
  30. package/dist/constants/streams.d.ts +9 -0
  31. package/dist/constants/streams.d.ts.map +1 -1
  32. package/dist/constants/streams.js +6 -0
  33. package/dist/constants/streams.js.map +1 -1
  34. package/dist/constants/url.d.ts +12 -0
  35. package/dist/constants/url.d.ts.map +1 -1
  36. package/dist/constants/url.js +12 -0
  37. package/dist/constants/url.js.map +1 -1
  38. package/dist/dai-connection/connection.d.ts +189 -2
  39. package/dist/dai-connection/connection.d.ts.map +1 -1
  40. package/dist/dai-connection/connection.js +121 -5
  41. package/dist/dai-connection/connection.js.map +1 -1
  42. package/dist/dai-connection/decoder.worker.d.ts +21 -0
  43. package/dist/dai-connection/decoder.worker.d.ts.map +1 -1
  44. package/dist/dai-connection/decoder.worker.js +6 -0
  45. package/dist/dai-connection/decoder.worker.js.map +1 -1
  46. package/dist/hooks/connection.d.ts +206 -0
  47. package/dist/hooks/connection.d.ts.map +1 -1
  48. package/dist/hooks/connection.js +22 -0
  49. package/dist/hooks/connection.js.map +1 -1
  50. package/dist/hooks/navigation.d.ts +5 -0
  51. package/dist/hooks/navigation.d.ts.map +1 -1
  52. package/dist/hooks/navigation.js +5 -0
  53. package/dist/hooks/navigation.js.map +1 -1
  54. package/dist/hooks/search.d.ts +12 -0
  55. package/dist/hooks/search.d.ts.map +1 -1
  56. package/dist/hooks/search.js +3 -0
  57. package/dist/hooks/search.js.map +1 -1
  58. package/dist/hooks/useFullScreen.d.ts +8 -0
  59. package/dist/hooks/useFullScreen.d.ts.map +1 -1
  60. package/dist/hooks/useFullScreen.js +8 -0
  61. package/dist/hooks/useFullScreen.js.map +1 -1
  62. package/dist/index.d.ts +5 -2
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +5 -2
  65. package/dist/index.js.map +1 -1
  66. package/dist/models/device-configuration.d.ts +69 -0
  67. package/dist/models/device-configuration.d.ts.map +1 -1
  68. package/dist/models/device-configuration.js +21 -0
  69. package/dist/models/device-configuration.js.map +1 -1
  70. package/dist/providers/ConnectionProvider.d.ts +56 -2
  71. package/dist/providers/ConnectionProvider.d.ts.map +1 -1
  72. package/dist/providers/ConnectionProvider.js +26 -0
  73. package/dist/providers/ConnectionProvider.js.map +1 -1
  74. package/dist/providers/DataProvider.d.ts +129 -0
  75. package/dist/providers/DataProvider.d.ts.map +1 -1
  76. package/dist/providers/DataProvider.js +21 -0
  77. package/dist/providers/DataProvider.js.map +1 -1
  78. package/dist/providers/ThemeProvider.d.ts +67 -7
  79. package/dist/providers/ThemeProvider.d.ts.map +1 -1
  80. package/dist/providers/ThemeProvider.js +39 -2
  81. package/dist/providers/ThemeProvider.js.map +1 -1
  82. package/dist/providers/VisualizerRuntimeConfigProvider.d.ts +43 -3
  83. package/dist/providers/VisualizerRuntimeConfigProvider.d.ts.map +1 -1
  84. package/dist/providers/VisualizerRuntimeConfigProvider.js +20 -3
  85. package/dist/providers/VisualizerRuntimeConfigProvider.js.map +1 -1
  86. package/dist/utils/arrays.d.ts +7 -0
  87. package/dist/utils/arrays.d.ts.map +1 -1
  88. package/dist/utils/arrays.js +7 -0
  89. package/dist/utils/arrays.js.map +1 -1
  90. package/dist/utils/functions.d.ts +3 -0
  91. package/dist/utils/functions.d.ts.map +1 -1
  92. package/dist/utils/functions.js +3 -0
  93. package/dist/utils/functions.js.map +1 -1
  94. package/dist/utils/local-storage.d.ts +20 -0
  95. package/dist/utils/local-storage.d.ts.map +1 -1
  96. package/dist/utils/local-storage.js +17 -0
  97. package/dist/utils/local-storage.js.map +1 -1
  98. package/dist/utils/logger.d.ts +31 -0
  99. package/dist/utils/logger.d.ts.map +1 -1
  100. package/dist/utils/logger.js +36 -7
  101. package/dist/utils/logger.js.map +1 -1
  102. package/dist/utils/sorting.d.ts +6 -0
  103. package/dist/utils/sorting.d.ts.map +1 -1
  104. package/dist/utils/sorting.js +6 -0
  105. package/dist/utils/sorting.js.map +1 -1
  106. package/dist/utils/topic.d.ts +6 -0
  107. package/dist/utils/topic.d.ts.map +1 -1
  108. package/dist/utils/topic.js +3 -0
  109. package/dist/utils/topic.js.map +1 -1
  110. package/dist/utils/units.d.ts +24 -0
  111. package/dist/utils/units.d.ts.map +1 -1
  112. package/dist/utils/units.js +24 -0
  113. package/dist/utils/units.js.map +1 -1
  114. package/dist/utils/url.d.ts +9 -0
  115. package/dist/utils/url.d.ts.map +1 -1
  116. package/dist/utils/url.js +10 -1
  117. package/dist/utils/url.js.map +1 -1
  118. package/dist/utils/vite-dev-fix.d.ts +13 -0
  119. package/dist/utils/vite-dev-fix.d.ts.map +1 -1
  120. package/dist/utils/vite-dev-fix.js +13 -0
  121. package/dist/utils/vite-dev-fix.js.map +1 -1
  122. package/package.json +2 -2
  123. package/protobuf-gen.sh +60 -3
@@ -1,4 +1,17 @@
1
1
  import type { Plugin } from 'vite';
2
+ /**
3
+ * Creates a Vite plugin that normalizes optimizeDeps settings for Viewer development.
4
+ *
5
+ * @param overrides - Additional dependency include and exclude entries.
6
+ * @returns Vite plugin that merges the shared dependency optimization defaults.
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * export default defineConfig({
11
+ * plugins: [viewerViteDevFixPlugin()],
12
+ * });
13
+ * ```
14
+ */
2
15
  export declare function viewerViteDevFixPlugin(overrides?: {
3
16
  include?: string[];
4
17
  exclude?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"vite-dev-fix.d.ts","sourceRoot":"","sources":["../../src/utils/vite-dev-fix.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,MAAM,CAAC;AAE/C,wBAAgB,sBAAsB,CACrC,SAAS,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CAAO,GACxD,MAAM,CA6DR"}
1
+ {"version":3,"file":"vite-dev-fix.d.ts","sourceRoot":"","sources":["../../src/utils/vite-dev-fix.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,MAAM,CAAC;AAE/C;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CACrC,SAAS,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CAAO,GACxD,MAAM,CA6DR"}
@@ -1,3 +1,16 @@
1
+ /**
2
+ * Creates a Vite plugin that normalizes optimizeDeps settings for Viewer development.
3
+ *
4
+ * @param overrides - Additional dependency include and exclude entries.
5
+ * @returns Vite plugin that merges the shared dependency optimization defaults.
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * export default defineConfig({
10
+ * plugins: [viewerViteDevFixPlugin()],
11
+ * });
12
+ * ```
13
+ */
1
14
  export function viewerViteDevFixPlugin(overrides = {}) {
2
15
  const baseInclude = [
3
16
  'fast-deep-equal',
@@ -1 +1 @@
1
- {"version":3,"file":"vite-dev-fix.js","sourceRoot":"","sources":["../../src/utils/vite-dev-fix.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,sBAAsB,CACrC,YAAwD,EAAE;IAE1D,MAAM,WAAW,GAAG;QACnB,iBAAiB;QACjB,yBAAyB;QACzB,eAAe;QACf,IAAI;QACJ,YAAY;QACZ,UAAU;QACV,8BAA8B;QAC9B,aAAa;QACb,eAAe;QACf,qBAAqB;QACrB,4BAA4B;QAC5B,kCAAkC;QAClC,+BAA+B;QAC/B,8BAA8B;QAC9B,4BAA4B;QAC5B,4BAA4B;QAC5B,8BAA8B;QAC9B,oCAAoC;QACpC,cAAc;QACd,SAAS;QACT,QAAQ;QACR,SAAS;QACT,0BAA0B;QAC1B,yBAAyB;QACzB,WAAW;QACX,WAAW;QACX,aAAa;QACb,wBAAwB;QACxB,OAAO;QACP,kBAAkB;QAClB,mBAAmB;QACnB,SAAS;QACT,gBAAgB;QAChB,iBAAiB;QACjB,OAAO;KACP,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAEvD,OAAO;QACN,IAAI,EAAE,sBAAsB;QAC5B,OAAO,EAAE,MAAM;QACf,MAAM,CAAC,UAAsB;YAC5B,MAAM,OAAO,GAAG,UAAU,CAAC,YAAY,IAAI,EAAE,CAAC;YAE9C,OAAO;gBACN,GAAG,UAAU;gBACb,YAAY,EAAE;oBACb,GAAG,OAAO;oBACV,OAAO,EAAE;wBACR,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;qBACtF;oBACD,OAAO,EAAE;wBACR,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;qBACtF;iBACD;aACD,CAAC;QACH,CAAC;KACD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"vite-dev-fix.js","sourceRoot":"","sources":["../../src/utils/vite-dev-fix.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,sBAAsB,CACrC,YAAwD,EAAE;IAE1D,MAAM,WAAW,GAAG;QACnB,iBAAiB;QACjB,yBAAyB;QACzB,eAAe;QACf,IAAI;QACJ,YAAY;QACZ,UAAU;QACV,8BAA8B;QAC9B,aAAa;QACb,eAAe;QACf,qBAAqB;QACrB,4BAA4B;QAC5B,kCAAkC;QAClC,+BAA+B;QAC/B,8BAA8B;QAC9B,4BAA4B;QAC5B,4BAA4B;QAC5B,8BAA8B;QAC9B,oCAAoC;QACpC,cAAc;QACd,SAAS;QACT,QAAQ;QACR,SAAS;QACT,0BAA0B;QAC1B,yBAAyB;QACzB,WAAW;QACX,WAAW;QACX,aAAa;QACb,wBAAwB;QACxB,OAAO;QACP,kBAAkB;QAClB,mBAAmB;QACnB,SAAS;QACT,gBAAgB;QAChB,iBAAiB;QACjB,OAAO;KACP,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAEvD,OAAO;QACN,IAAI,EAAE,sBAAsB;QAC5B,OAAO,EAAE,MAAM;QACf,MAAM,CAAC,UAAsB;YAC5B,MAAM,OAAO,GAAG,UAAU,CAAC,YAAY,IAAI,EAAE,CAAC;YAE9C,OAAO;gBACN,GAAG,UAAU;gBACb,YAAY,EAAE;oBACb,GAAG,OAAO;oBACV,OAAO,EAAE;wBACR,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;qBACtF;oBACD,OAAO,EAAE;wBACR,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;qBACtF;iBACD;aACD,CAAC;QACH,CAAC;KACD,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luxonis/depthai-viewer-common",
3
- "version": "3.8.2",
3
+ "version": "3.9.0",
4
4
  "description": "Common utilities and components for building a frontend application for DepthAI projects",
5
5
  "license": "Apache-2.0 AND MPL-2.0",
6
6
  "author": "Luxonis Holding Corporation",
@@ -39,7 +39,7 @@
39
39
  "@bufbuild/protobuf": "^2.12.0",
40
40
  "@luxonis/depthai-pipeline-lib": "*",
41
41
  "@luxonis/remote-connection": "3.0.0",
42
- "@luxonis/ui-components": "^1.3.7",
42
+ "@luxonis/ui-components": "^1.3.8",
43
43
  "@luxonis/ui-utils": "^1.0.4",
44
44
  "comlink": "^4.4.2",
45
45
  "extend": "3.0.2",
package/protobuf-gen.sh CHANGED
@@ -21,13 +21,50 @@ GH_BRANCH="develop"
21
21
  # TODO: Validate location
22
22
 
23
23
  start "Fetching protobuf definitions"
24
- FILES=$(curl -s "https://api.github.com/repos/$GH_REPO/contents/$GH_PATH?ref=$GH_BRANCH" | jq -r '.[] | select(.type=="file" and (.name | tostring | endswith(".proto"))) | .download_url')
25
24
  mkdir -p ./~proto
26
25
  pushd ./~proto >/dev/null
26
+ API_URL="https://api.github.com/repos/$GH_REPO/contents/$GH_PATH?ref=$GH_BRANCH"
27
+ REQUEST_HEADERS=(
28
+ -H "Accept: application/vnd.github+json"
29
+ -H "User-Agent: depthai-visualizer-protobuf-build"
30
+ )
31
+ API_RESPONSE=$(curl -fsSL "${REQUEST_HEADERS[@]}" "$API_URL" 2>/dev/null || true)
32
+ FILES=""
33
+
34
+ if [ -z "$API_RESPONSE" ]; then
35
+ echo "GitHub API returned an empty response."
36
+ else
37
+ API_ERROR=$(printf '%s' "$API_RESPONSE" | jq -r '
38
+ if type == "object" and has("message") then
39
+ .message
40
+ else
41
+ empty
42
+ end
43
+ ' 2>/dev/null || true)
44
+
45
+ if [ -n "$API_ERROR" ]; then
46
+ echo "GitHub API error: $API_ERROR"
47
+ else
48
+ FILES=$(printf '%s' "$API_RESPONSE" | jq -r '
49
+ if type == "array" then
50
+ .[]
51
+ | select((.type // "") == "file" and ((.name // "") | endswith(".proto")) and (.download_url? != null))
52
+ | .download_url
53
+ else
54
+ empty
55
+ end
56
+ ' 2>/dev/null || true)
57
+
58
+ if [ -z "$FILES" ]; then
59
+ echo "GitHub API returned no .proto files in the expected location."
60
+ fi
61
+ fi
62
+ fi
63
+
27
64
  for FILE_URL in $FILES; do
28
65
  FILE_NAME=$(basename "$FILE_URL")
29
66
  echo "- $FILE_NAME"
30
- curl -sO "$FILE_URL"
67
+ curl -fsSL "${REQUEST_HEADERS[@]}" -o "$FILE_NAME" "$FILE_URL"
31
68
  done
32
69
  finish
33
70
 
@@ -35,10 +72,30 @@ start "Compiling protobuf definitions"
35
72
  mkdir -p ../src/visualizer/protobuf.generated
36
73
  shopt -s nullglob
37
74
  PROTO_FILES=(./*.proto)
75
+ LOCAL_PROTO_FILES=(../src/visualizer/protobuf.generated/*.proto)
38
76
  shopt -u nullglob
39
77
 
40
78
  if [ ${#PROTO_FILES[@]} -eq 0 ]; then
41
- if find ../src/visualizer/protobuf.generated -maxdepth 1 -name '*.ts' | grep -q .; then
79
+ if [ ${#LOCAL_PROTO_FILES[@]} -gt 0 ]; then
80
+ echo "No protobuf definitions were downloaded, compiling local .proto files."
81
+
82
+ pushd ../src/visualizer/protobuf.generated >/dev/null
83
+ if [ ! -x "$TS_PROTO_PLUGIN" ]; then
84
+ echo "Missing ts-proto protoc plugin at $TS_PROTO_PLUGIN"
85
+ echo "Install dependencies before running protobuf generation."
86
+ exit 1
87
+ fi
88
+
89
+ protoc \
90
+ -I . \
91
+ --experimental_allow_proto3_optional \
92
+ --plugin="$TS_PROTO_PLUGIN" \
93
+ --ts_proto_opt=esModuleInterop=true \
94
+ --ts_proto_opt=importSuffix=.js \
95
+ --ts_proto_out=. \
96
+ ./*.proto
97
+ popd >/dev/null
98
+ elif find ../src/visualizer/protobuf.generated -maxdepth 1 -name '*.ts' | grep -q .; then
42
99
  echo "No protobuf definitions were downloaded, reusing existing generated sources."
43
100
  else
44
101
  echo "No protobuf definitions were downloaded and no generated sources are available."