@luxonis/depthai-viewer-common 3.5.1 → 3.7.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.
package/dist/index.css CHANGED
@@ -872,6 +872,12 @@
872
872
  border-bottom-style: var(--tw-border-style);
873
873
  border-bottom-width: 1px;
874
874
  }
875
+ .border-\[color-mix\(in_srgb\,var\(--lux-muted-foreground\)_65\%\,var\(--lux-background\)\)\] {
876
+ border-color: var(--lux-muted-foreground);
877
+ @supports (color: color-mix(in lab, red, red)) {
878
+ border-color: color-mix(in srgb,var(--lux-muted-foreground) 65%,var(--lux-background));
879
+ }
880
+ }
875
881
  .border-\[var\(--lux-intent-active-text\)\]\/30 {
876
882
  border-color: var(--lux-intent-active-text);
877
883
  @supports (color: color-mix(in lab, red, red)) {
@@ -899,6 +905,12 @@
899
905
  .bg-\[\#808080\] {
900
906
  background-color: #808080;
901
907
  }
908
+ .bg-\[color-mix\(in_srgb\,var\(--lux-muted-foreground\)_65\%\,var\(--lux-background\)\)\] {
909
+ background-color: var(--lux-muted-foreground);
910
+ @supports (color: color-mix(in lab, red, red)) {
911
+ background-color: color-mix(in srgb,var(--lux-muted-foreground) 65%,var(--lux-background));
912
+ }
913
+ }
902
914
  .bg-\[var\(--lux-intent-active-text\)\]\/10 {
903
915
  background-color: var(--lux-intent-active-text);
904
916
  @supports (color: color-mix(in lab, red, red)) {
@@ -1185,6 +1197,10 @@
1185
1197
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1186
1198
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1187
1199
  }
1200
+ .shadow-none {
1201
+ --tw-shadow: 0 0 #0000;
1202
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1203
+ }
1188
1204
  .shadow-sm {
1189
1205
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1190
1206
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
@@ -1306,6 +1322,14 @@
1306
1322
  }
1307
1323
  }
1308
1324
  }
1325
+ .hover\:ring-0 {
1326
+ &:hover {
1327
+ @media (hover: hover) {
1328
+ --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
1329
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1330
+ }
1331
+ }
1332
+ }
1309
1333
  .hover\:ring-4 {
1310
1334
  &:hover {
1311
1335
  @media (hover: hover) {
@@ -1,4 +1,16 @@
1
1
  export declare const DEBUG_LOGS_LOCAL_STORAGE_KEY: "viewer-debug-logs-enabled";
2
+ type ElectronLogLevel = 'TRACE' | 'DEBUG' | 'INFO' | 'WARN' | 'ERROR' | 'CRITICAL';
3
+ declare global {
4
+ interface Window {
5
+ viewerLogs?: {
6
+ append?: (entry: {
7
+ dt: string;
8
+ level: ElectronLogLevel;
9
+ message: string;
10
+ }) => Promise<unknown>;
11
+ };
12
+ }
13
+ }
2
14
  export declare class Logger {
3
15
  protected static instance: Logger | null;
4
16
  private static _debugLogsEnabled;
@@ -12,4 +24,5 @@ export declare class Logger {
12
24
  error(message?: any, ...optionalParams: any[]): void;
13
25
  static getLogger(): Logger;
14
26
  }
27
+ export {};
15
28
  //# sourceMappingURL=logger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,4BAA4B,EAAG,2BAAoC,CAAC;AAIjF,qBAAa,MAAM;IAClB,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAChD,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAwB;IAExD,SAAS;IAET,MAAM,KAAK,gBAAgB,IAAI,OAAO,CAOrC;IAED,MAAM,KAAK,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAGzC;IAGM,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAOlD,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAOnD,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAOpD,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAOnD,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;WAM7C,SAAS,IAAI,MAAM;CAOjC"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,4BAA4B,EAAG,2BAAoC,CAAC;AAEjF,KAAK,gBAAgB,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC;AAEnF,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf,UAAU,CAAC,EAAE;YACZ,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE;gBAChB,EAAE,EAAE,MAAM,CAAC;gBACX,KAAK,EAAE,gBAAgB,CAAC;gBACxB,OAAO,EAAE,MAAM,CAAC;aAChB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;SACvB,CAAC;KACF;CACD;AA6CD,qBAAa,MAAM;IAClB,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAChD,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAwB;IAExD,SAAS;IAET,MAAM,KAAK,gBAAgB,IAAI,OAAO,CAOrC;IAED,MAAM,KAAK,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAGzC;IAGM,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAQlD,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAQnD,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAQpD,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAQnD,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;WAO7C,SAAS,IAAI,MAAM;CAOjC"}
@@ -1,4 +1,39 @@
1
1
  export const DEBUG_LOGS_LOCAL_STORAGE_KEY = 'viewer-debug-logs-enabled';
2
+ function stringifyLogPart(value) {
3
+ if (typeof value === 'string') {
4
+ return value;
5
+ }
6
+ if (value instanceof Error) {
7
+ return value.stack ?? value.message;
8
+ }
9
+ try {
10
+ return JSON.stringify(value);
11
+ }
12
+ catch {
13
+ return String(value);
14
+ }
15
+ }
16
+ function formatLogMessage(message, optionalParams) {
17
+ return [message, ...optionalParams].map(stringifyLogPart).join(' ');
18
+ }
19
+ function forwardToElectron(level, message, optionalParams) {
20
+ try {
21
+ const append = typeof window !== 'undefined' ? window.viewerLogs?.append : undefined;
22
+ if (!append) {
23
+ return;
24
+ }
25
+ void Promise.resolve(append({
26
+ dt: new Date().toISOString(),
27
+ level,
28
+ message: formatLogMessage(message, optionalParams),
29
+ })).catch(() => {
30
+ // Electron log forwarding is best-effort.
31
+ });
32
+ }
33
+ catch {
34
+ // Electron log forwarding is best-effort and must never affect consumers.
35
+ }
36
+ }
2
37
  // Singleton class used for logging across our apps
3
38
  // Is controlled by DEBUG_LOGS_LOCAL_STORAGE_KEY key
4
39
  export class Logger {
@@ -20,30 +55,35 @@ export class Logger {
20
55
  log(message, ...optionalParams) {
21
56
  if (Logger.debugLogsEnabled) {
22
57
  console.log(message, ...optionalParams);
58
+ forwardToElectron('INFO', message, optionalParams);
23
59
  }
24
60
  }
25
61
  // biome-ignore lint/suspicious/noExplicitAny: <explanation>
26
62
  info(message, ...optionalParams) {
27
63
  if (Logger.debugLogsEnabled) {
28
64
  console.log(message, ...optionalParams);
65
+ forwardToElectron('INFO', message, optionalParams);
29
66
  }
30
67
  }
31
68
  // biome-ignore lint/suspicious/noExplicitAny: <explanation>
32
69
  debug(message, ...optionalParams) {
33
70
  if (Logger.debugLogsEnabled) {
34
71
  console.debug(message, ...optionalParams);
72
+ forwardToElectron('DEBUG', message, optionalParams);
35
73
  }
36
74
  }
37
75
  // biome-ignore lint/suspicious/noExplicitAny: <explanation>
38
76
  warn(message, ...optionalParams) {
39
77
  if (Logger.debugLogsEnabled) {
40
78
  console.warn(message, ...optionalParams);
79
+ forwardToElectron('WARN', message, optionalParams);
41
80
  }
42
81
  }
43
82
  // biome-ignore lint/suspicious/noExplicitAny: <explanation>
44
83
  error(message, ...optionalParams) {
45
84
  if (Logger.debugLogsEnabled) {
46
85
  console.error(message, ...optionalParams);
86
+ forwardToElectron('ERROR', message, optionalParams);
47
87
  }
48
88
  }
49
89
  static getLogger() {
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,4BAA4B,GAAG,2BAAoC,CAAC;AAEjF,mDAAmD;AACnD,oDAAoD;AACpD,MAAM,OAAO,MAAM;IACR,MAAM,CAAC,QAAQ,GAAkB,IAAI,CAAC;IACxC,MAAM,CAAC,iBAAiB,GAAmB,IAAI,CAAC;IAExD,gBAAyB,CAAC;IAE1B,MAAM,KAAK,gBAAgB;QAC1B,IAAI,MAAM,CAAC,iBAAiB,KAAK,IAAI,EAAE,CAAC;YACvC,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;YACvE,MAAM,CAAC,iBAAiB,GAAG,WAAW,KAAK,MAAM,CAAC;QACnD,CAAC;QAED,OAAO,MAAM,CAAC,iBAAiB,CAAC;IACjC,CAAC;IAED,MAAM,KAAK,gBAAgB,CAAC,KAAc;QACzC,MAAM,CAAC,iBAAiB,GAAG,KAAK,CAAC;QACjC,YAAY,CAAC,OAAO,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAC9E,CAAC;IAED,4DAA4D;IACrD,GAAG,CAAC,OAAa,EAAE,GAAG,cAAqB;QACjD,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,CAAC;QACzC,CAAC;IACF,CAAC;IAED,4DAA4D;IACrD,IAAI,CAAC,OAAa,EAAE,GAAG,cAAqB;QAClD,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,CAAC;QACzC,CAAC;IACF,CAAC;IAED,4DAA4D;IACrD,KAAK,CAAC,OAAa,EAAE,GAAG,cAAqB;QACnD,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAC7B,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,CAAC;QAC3C,CAAC;IACF,CAAC;IAED,4DAA4D;IACrD,IAAI,CAAC,OAAa,EAAE,GAAG,cAAqB;QAClD,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,CAAC;QAC1C,CAAC;IACF,CAAC;IAED,4DAA4D;IACrD,KAAK,CAAC,OAAa,EAAE,GAAG,cAAqB;QACnD,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAC7B,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,CAAC;QAC3C,CAAC;IACF,CAAC;IAEM,MAAM,CAAC,SAAS;QACtB,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACtB,MAAM,CAAC,QAAQ,GAAG,IAAI,MAAM,EAAE,CAAC;QAChC,CAAC;QAED,OAAO,MAAM,CAAC,QAAQ,CAAC;IACxB,CAAC"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luxonis/depthai-viewer-common",
3
- "version": "3.5.1",
3
+ "version": "3.7.0",
4
4
  "description": "Common utilities and components for building a frontend application for DepthAI projects",
5
5
  "license": "ISC",
6
6
  "author": "Luxonis Holding Corporation",
@@ -29,7 +29,7 @@
29
29
  "access": "public"
30
30
  },
31
31
  "dependencies": {
32
- "@luxonis/ui-components": "^1.3.0",
32
+ "@luxonis/ui-components": "^1.3.2",
33
33
  "@luxonis/ui-utils": "^1.0.4",
34
34
  "@luxonis/depthai-pipeline-lib": "*",
35
35
  "@luxonis/visualizer-protobuf": "*",