@64mb/freelens-power 1.6.1 → 2.1.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 (85) hide show
  1. package/README.md +1 -1
  2. package/out/main/common/power-logs.js.map +1 -1
  3. package/out/main/common/resource-search-kind-priority.js +23 -0
  4. package/out/main/common/resource-search-kind-priority.js.map +1 -0
  5. package/out/main/common/store/logs-preferences-store.js +5 -0
  6. package/out/main/common/store/logs-preferences-store.js.map +1 -1
  7. package/out/main/dashboard-views.js +26 -0
  8. package/out/main/dashboard-views.js.map +1 -1
  9. package/out/main/power-logs-database.js +5 -0
  10. package/out/main/power-logs-database.js.map +1 -1
  11. package/out/main/power-logs-ipc.js +8 -0
  12. package/out/main/power-logs-ipc.js.map +1 -1
  13. package/out/main/power-logs-query.js +1 -0
  14. package/out/main/power-logs-query.js.map +1 -1
  15. package/out/main/resource-search-database.js +7 -2
  16. package/out/main/resource-search-database.js.map +1 -1
  17. package/out/main/resource-search-worker.js +6 -2
  18. package/out/main/resource-search-worker.js.map +1 -1
  19. package/out/renderer/_virtual/_global-external_react.js +2 -1
  20. package/out/renderer/ai-diagnostic-handoff.js +1 -0
  21. package/out/renderer/ai-diagnostic-handoff.js.map +1 -1
  22. package/out/renderer/ai-extras.js +7 -2
  23. package/out/renderer/ai-extras.js.map +1 -1
  24. package/out/renderer/ai.js +1 -1
  25. package/out/renderer/ai.js.map +1 -1
  26. package/out/renderer/appearance.js +2 -0
  27. package/out/renderer/appearance.js.map +1 -1
  28. package/out/renderer/dashboard.js +35 -8
  29. package/out/renderer/dashboard.js.map +1 -1
  30. package/out/renderer/index.js +2 -1
  31. package/out/renderer/index.js.map +1 -1
  32. package/out/renderer/power-log-json-cell.js +82 -0
  33. package/out/renderer/power-log-json-cell.js.map +1 -0
  34. package/out/renderer/power-log-json-fields.js +144 -0
  35. package/out/renderer/power-log-json-fields.js.map +1 -0
  36. package/out/renderer/power-log-json.js +223 -20
  37. package/out/renderer/power-log-json.js.map +1 -1
  38. package/out/renderer/power-log-message-tokens.js +60 -0
  39. package/out/renderer/power-log-message-tokens.js.map +1 -0
  40. package/out/renderer/power-log-message.js +26 -0
  41. package/out/renderer/power-log-message.js.map +1 -0
  42. package/out/renderer/power-log-sql-editor.js +91 -0
  43. package/out/renderer/power-log-sql-editor.js.map +1 -0
  44. package/out/renderer/power-logs-client.js +4 -0
  45. package/out/renderer/power-logs-client.js.map +1 -1
  46. package/out/renderer/power-logs-sql-drafts.js +76 -0
  47. package/out/renderer/power-logs-sql-drafts.js.map +1 -0
  48. package/out/renderer/power-logs-sql-row.js +5 -13
  49. package/out/renderer/power-logs-sql-row.js.map +1 -1
  50. package/out/renderer/power-logs.css.js +39 -6
  51. package/out/renderer/power-logs.css.js.map +1 -1
  52. package/out/renderer/power-logs.js +372 -135
  53. package/out/renderer/power-logs.js.map +1 -1
  54. package/out/renderer/preferences/logs-preferences.js +159 -38
  55. package/out/renderer/preferences/logs-preferences.js.map +1 -1
  56. package/out/renderer/preferences/preferences.js +2 -9
  57. package/out/renderer/preferences/preferences.js.map +1 -1
  58. package/out/renderer/preferences/section-navigation.js +44 -0
  59. package/out/renderer/preferences/section-navigation.js.map +1 -0
  60. package/out/renderer/resource-search-model.js +2 -1
  61. package/out/renderer/resource-search-model.js.map +1 -1
  62. package/out/renderer/resource-search-sync.js +1 -1
  63. package/out/renderer/resource-search-sync.js.map +1 -1
  64. package/out/renderer/resource-search.js +84 -81
  65. package/out/renderer/resource-search.js.map +1 -1
  66. package/out/renderer/src/common/power-log-field-filters.js +92 -0
  67. package/out/renderer/src/common/power-log-field-filters.js.map +1 -0
  68. package/out/renderer/src/common/power-log-json-filter-sql.js +106 -0
  69. package/out/renderer/src/common/power-log-json-filter-sql.js.map +1 -0
  70. package/out/renderer/src/common/power-log-json-preset.js +34 -0
  71. package/out/renderer/src/common/power-log-json-preset.js.map +1 -0
  72. package/out/renderer/src/common/power-log-level.js +171 -0
  73. package/out/renderer/src/common/power-log-level.js.map +1 -0
  74. package/out/renderer/src/common/power-log-parser.js +7 -29
  75. package/out/renderer/src/common/power-log-parser.js.map +1 -1
  76. package/out/renderer/src/common/power-log-sql-level.js +25 -0
  77. package/out/renderer/src/common/power-log-sql-level.js.map +1 -0
  78. package/out/renderer/src/common/power-logs-ai.js +4 -0
  79. package/out/renderer/src/common/power-logs-ai.js.map +1 -1
  80. package/out/renderer/src/common/power-logs.js.map +1 -1
  81. package/out/renderer/src/common/resource-search-kind-priority.js +28 -0
  82. package/out/renderer/src/common/resource-search-kind-priority.js.map +1 -0
  83. package/out/renderer/src/common/store/logs-preferences-store.js +5 -0
  84. package/out/renderer/src/common/store/logs-preferences-store.js.map +1 -1
  85. package/package.json +1 -1
@@ -1,13 +1,5 @@
1
+ const require_power_log_sql_level = require("./src/common/power-log-sql-level.js");
1
2
  //#region src/renderer/power-logs-sql-row.ts
2
- var levels = /* @__PURE__ */ new Set([
3
- "trace",
4
- "debug",
5
- "info",
6
- "warn",
7
- "error",
8
- "fatal",
9
- "unknown"
10
- ]);
11
3
  function sqlRowDetails(columns, row) {
12
4
  const cells = new Map(columns.map((column, index) => [column, row[index]]));
13
5
  const stringCell = (name) => typeof cells.get(name) === "string" ? cells.get(name) : "";
@@ -30,7 +22,7 @@ function sqlRowDetails(columns, row) {
30
22
  } catch {}
31
23
  });
32
24
  const timestamp = cells.get("timestamp");
33
- const level = stringCell("level");
25
+ const level = columns.map((column, index) => require_power_log_sql_level.sqlCellLevel(column, row[index])).find((level) => level !== "unknown") ?? "unknown";
34
26
  const previous = cells.get("previous");
35
27
  return {
36
28
  record: {
@@ -38,9 +30,9 @@ function sqlRowDetails(columns, row) {
38
30
  pod: stringCell("pod"),
39
31
  podUid: stringCell("podUid"),
40
32
  container: stringCell("container"),
41
- level: levels.has(level) ? level : "unknown",
42
- message: fieldsJson === null ? JSON.stringify(Object.fromEntries(columns.map((column, index) => [column, row[index] ?? null])), null, 2) : stringCell("message"),
43
- fieldsJson,
33
+ level,
34
+ message: fieldsJson === null ? "" : stringCell("message"),
35
+ fieldsJson: fieldsJson ?? JSON.stringify(Object.fromEntries(columns.map((column, index) => [column, row[index] ?? null]))),
44
36
  previous: previous === true || previous === 1
45
37
  },
46
38
  ...jsonColumn === void 0 ? {} : { jsonColumn }
@@ -1 +1 @@
1
- {"version":3,"file":"power-logs-sql-row.js","names":[],"sources":["../../src/renderer/power-logs-sql-row.ts"],"sourcesContent":["import type { LogCell, LogLevel, LogRecord } from \"../common/power-logs\";\n\nconst levels = new Set<LogLevel>([\"trace\", \"debug\", \"info\", \"warn\", \"error\", \"fatal\", \"unknown\"]);\n\nexport function sqlRowDetails(columns: string[], row: LogCell[]): { record: LogRecord; jsonColumn?: string } {\n const cells = new Map(columns.map((column, index) => [column, row[index]]));\n const stringCell = (name: string) => (typeof cells.get(name) === \"string\" ? (cells.get(name) as string) : \"\");\n let fieldsJson: string | null = null;\n let jsonColumn: string | undefined;\n let largestBytes = -1;\n const encoder = new TextEncoder();\n columns.forEach((column, index) => {\n const value = row[index];\n if (typeof value !== \"string\") return;\n try {\n const parsed: unknown = JSON.parse(value);\n if (parsed === null || typeof parsed !== \"object\") return;\n const bytes = encoder.encode(value).byteLength;\n if (bytes > largestBytes) {\n largestBytes = bytes;\n fieldsJson = value;\n jsonColumn = column;\n }\n } catch {\n // malformed JSON remains available in the row fallback\n }\n });\n const timestamp = cells.get(\"timestamp\");\n const level = stringCell(\"level\");\n const previous = cells.get(\"previous\");\n return {\n record: {\n timestamp: typeof timestamp === \"number\" && Number.isFinite(timestamp) ? timestamp : null,\n pod: stringCell(\"pod\"),\n podUid: stringCell(\"podUid\"),\n container: stringCell(\"container\"),\n level: levels.has(level as LogLevel) ? (level as LogLevel) : \"unknown\",\n message:\n fieldsJson === null\n ? JSON.stringify(Object.fromEntries(columns.map((column, index) => [column, row[index] ?? null])), null, 2)\n : stringCell(\"message\"),\n fieldsJson,\n previous: previous === true || previous === 1,\n },\n ...(jsonColumn === undefined ? {} : { jsonColumn }),\n };\n}\n"],"mappings":";AAEA,IAAM,yBAAS,IAAI,IAAc;CAAC;CAAS;CAAS;CAAQ;CAAQ;CAAS;CAAS;AAAS,CAAC;AAEhG,SAAgB,cAAc,SAAmB,KAA4D;CAC3G,MAAM,QAAQ,IAAI,IAAI,QAAQ,KAAK,QAAQ,UAAU,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC;CAC1E,MAAM,cAAc,SAAkB,OAAO,MAAM,IAAI,IAAI,MAAM,WAAY,MAAM,IAAI,IAAI,IAAe;CAC1G,IAAI,aAA4B;CAChC,IAAI;CACJ,IAAI,eAAe;CACnB,MAAM,UAAU,IAAI,YAAY;CAChC,QAAQ,SAAS,QAAQ,UAAU;EACjC,MAAM,QAAQ,IAAI;EAClB,IAAI,OAAO,UAAU,UAAU;EAC/B,IAAI;GACF,MAAM,SAAkB,KAAK,MAAM,KAAK;GACxC,IAAI,WAAW,QAAQ,OAAO,WAAW,UAAU;GACnD,MAAM,QAAQ,QAAQ,OAAO,KAAK,CAAC,CAAC;GACpC,IAAI,QAAQ,cAAc;IACxB,eAAe;IACf,aAAa;IACb,aAAa;GACf;EACF,QAAQ,CAER;CACF,CAAC;CACD,MAAM,YAAY,MAAM,IAAI,WAAW;CACvC,MAAM,QAAQ,WAAW,OAAO;CAChC,MAAM,WAAW,MAAM,IAAI,UAAU;CACrC,OAAO;EACL,QAAQ;GACN,WAAW,OAAO,cAAc,YAAY,OAAO,SAAS,SAAS,IAAI,YAAY;GACrF,KAAK,WAAW,KAAK;GACrB,QAAQ,WAAW,QAAQ;GAC3B,WAAW,WAAW,WAAW;GACjC,OAAO,OAAO,IAAI,KAAiB,IAAK,QAAqB;GAC7D,SACE,eAAe,OACX,KAAK,UAAU,OAAO,YAAY,QAAQ,KAAK,QAAQ,UAAU,CAAC,QAAQ,IAAI,UAAU,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,IACxG,WAAW,SAAS;GAC1B;GACA,UAAU,aAAa,QAAQ,aAAa;EAC9C;EACA,GAAI,eAAe,KAAA,IAAY,CAAC,IAAI,EAAE,WAAW;CACnD;AACF"}
1
+ {"version":3,"file":"power-logs-sql-row.js","names":[],"sources":["../../src/renderer/power-logs-sql-row.ts"],"sourcesContent":["import { sqlCellLevel } from \"../common/power-log-sql-level\";\n\nimport type { LogCell, LogRecord } from \"../common/power-logs\";\n\nexport function sqlRowDetails(columns: string[], row: LogCell[]): { record: LogRecord; jsonColumn?: string } {\n const cells = new Map(columns.map((column, index) => [column, row[index]]));\n const stringCell = (name: string) => (typeof cells.get(name) === \"string\" ? (cells.get(name) as string) : \"\");\n let fieldsJson: string | null = null;\n let jsonColumn: string | undefined;\n let largestBytes = -1;\n const encoder = new TextEncoder();\n columns.forEach((column, index) => {\n const value = row[index];\n if (typeof value !== \"string\") return;\n try {\n const parsed: unknown = JSON.parse(value);\n if (parsed === null || typeof parsed !== \"object\") return;\n const bytes = encoder.encode(value).byteLength;\n if (bytes > largestBytes) {\n largestBytes = bytes;\n fieldsJson = value;\n jsonColumn = column;\n }\n } catch {\n // malformed JSON remains available in the row fallback\n }\n });\n const timestamp = cells.get(\"timestamp\");\n const level =\n columns.map((column, index) => sqlCellLevel(column, row[index])).find((level) => level !== \"unknown\") ?? \"unknown\";\n const previous = cells.get(\"previous\");\n return {\n record: {\n timestamp: typeof timestamp === \"number\" && Number.isFinite(timestamp) ? timestamp : null,\n pod: stringCell(\"pod\"),\n podUid: stringCell(\"podUid\"),\n container: stringCell(\"container\"),\n level,\n message: fieldsJson === null ? \"\" : stringCell(\"message\"),\n fieldsJson:\n fieldsJson ?? JSON.stringify(Object.fromEntries(columns.map((column, index) => [column, row[index] ?? null]))),\n previous: previous === true || previous === 1,\n },\n ...(jsonColumn === undefined ? {} : { jsonColumn }),\n };\n}\n"],"mappings":";;AAIA,SAAgB,cAAc,SAAmB,KAA4D;CAC3G,MAAM,QAAQ,IAAI,IAAI,QAAQ,KAAK,QAAQ,UAAU,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC;CAC1E,MAAM,cAAc,SAAkB,OAAO,MAAM,IAAI,IAAI,MAAM,WAAY,MAAM,IAAI,IAAI,IAAe;CAC1G,IAAI,aAA4B;CAChC,IAAI;CACJ,IAAI,eAAe;CACnB,MAAM,UAAU,IAAI,YAAY;CAChC,QAAQ,SAAS,QAAQ,UAAU;EACjC,MAAM,QAAQ,IAAI;EAClB,IAAI,OAAO,UAAU,UAAU;EAC/B,IAAI;GACF,MAAM,SAAkB,KAAK,MAAM,KAAK;GACxC,IAAI,WAAW,QAAQ,OAAO,WAAW,UAAU;GACnD,MAAM,QAAQ,QAAQ,OAAO,KAAK,CAAC,CAAC;GACpC,IAAI,QAAQ,cAAc;IACxB,eAAe;IACf,aAAa;IACb,aAAa;GACf;EACF,QAAQ,CAER;CACF,CAAC;CACD,MAAM,YAAY,MAAM,IAAI,WAAW;CACvC,MAAM,QACJ,QAAQ,KAAK,QAAQ,UAAU,4BAAA,aAAa,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,UAAU,UAAU,SAAS,KAAK;CAC3G,MAAM,WAAW,MAAM,IAAI,UAAU;CACrC,OAAO;EACL,QAAQ;GACN,WAAW,OAAO,cAAc,YAAY,OAAO,SAAS,SAAS,IAAI,YAAY;GACrF,KAAK,WAAW,KAAK;GACrB,QAAQ,WAAW,QAAQ;GAC3B,WAAW,WAAW,WAAW;GACjC;GACA,SAAS,eAAe,OAAO,KAAK,WAAW,SAAS;GACxD,YACE,cAAc,KAAK,UAAU,OAAO,YAAY,QAAQ,KAAK,QAAQ,UAAU,CAAC,QAAQ,IAAI,UAAU,IAAI,CAAC,CAAC,CAAC;GAC/G,UAAU,aAAa,QAAQ,aAAa;EAC9C;EACA,GAAI,eAAe,KAAA,IAAY,CAAC,IAAI,EAAE,WAAW;CACnD;AACF"}
@@ -43,10 +43,15 @@ body:has(.power-logs[data-testid="power-logs-page"]) .power-ai-launcher { displa
43
43
  .power-logs-workspace { position:relative; display:flex; flex:1; min-height:0; }
44
44
  .power-logs-viewer { display:flex; flex-direction:column; flex:1; min-width:0; min-height:0; gap:4px; }
45
45
  .power-logs-stream { position:relative; flex:1; min-height:0; min-width:0; overflow:auto; border:1px solid var(--borderColor); border-radius:6px; background:var(--contentColor); }
46
- .power-log-row { min-height:0!important; position:absolute; left:0; right:0; width:100%; display:grid!important; grid-template-columns:95px 48px minmax(100px,180px) minmax(0,1fr); align-items:center; gap:10px!important; padding:0 12px!important; border:0!important; border-left:3px solid var(--textColorSecondary)!important; border-bottom:1px solid var(--borderFaintColor)!important; border-radius:0!important; text-align:left; background:transparent!important; font-family:var(--font-monospace,monospace)!important; font-size:12px!important; }
47
- .power-logs[data-compact=true] .power-log-row { padding-inline:6px!important; gap:5px!important; font-size:11px!important; line-height:16px; }
46
+ .power-log-row { min-height:0!important; position:absolute; left:0; right:0; width:100%; display:grid!important; grid-template-columns:var(--log-time-width,calc(8ch + 4px)) var(--log-level-width,calc(var(--power-log-level-ch,7) * .833333ch + 4px)) minmax(100px,180px) minmax(0,1fr); align-items:center; gap:8px!important; padding:0 12px!important; border:0!important; border-left:3px solid var(--textColorSecondary)!important; border-bottom:1px solid var(--borderFaintColor)!important; border-radius:0!important; text-align:left; background:transparent!important; font-family:var(--font-monospace,monospace)!important; font-size:12px!important; }
47
+ .power-logs[data-compact=true] .power-log-row { --log-time-width:calc(8ch + 1px); --log-level-width:calc(var(--power-log-level-ch,7) * .909091ch + 1px); padding-inline:6px!important; gap:4px!important; font-size:11px!important; line-height:16px; }
48
48
  .power-logs[data-compact=true] table :is(td,th) { padding:1px 6px; font-size:11px; line-height:16px; }
49
49
  .power-log-row > span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
50
+ .power-log-row > span:last-child { white-space:pre; height:16px; line-height:16px; }
51
+ .power-log-message { color:var(--textColorPrimary); }
52
+ .power-log-message [data-log-token=http-method] { color:var(--primary); }
53
+ .power-log-message [data-log-token=uuid] { color:#9cdcfe; }
54
+ .theme-light .power-log-message [data-log-token=uuid] { color:#005a9e; }
50
55
  .power-log-row .power-log-level { font-size:10px; font-weight:600; text-transform:uppercase; }
51
56
  .power-log-row[data-level=warn] { border-left-color:var(--colorWarning,#d9a441)!important; }
52
57
  .power-log-row[data-level=error],.power-log-row[data-level=fatal] { border-left-color:var(--colorError,#d26860)!important; }
@@ -64,12 +69,18 @@ body:has(.power-logs[data-testid="power-logs-page"]) .power-ai-launcher { displa
64
69
  .power-log-json [data-token=number] { color:var(--json-number); }
65
70
  .power-log-json [data-token=literal] { color:var(--json-literal); }
66
71
  .power-logs pre { white-space:pre-wrap; overflow-wrap:anywhere; font-size:12px; line-height:1.6; }
67
- .power-logs textarea { box-sizing:border-box; width:100%; height:56px; min-height:48px; max-height:120px; flex-shrink:0; resize:vertical; font-family:var(--font-monospace,monospace); }
72
+ .power-logs textarea { user-select:text; box-sizing:border-box; width:100%; height:56px; min-height:48px; max-height:120px; flex-shrink:0; resize:vertical; font-family:var(--font-monospace,monospace); }
68
73
  .power-logs-results { flex:1; min-height:0; overflow:auto; border:1px solid var(--borderColor); border-radius:6px; }
69
74
  .power-logs table { border-collapse:collapse; table-layout:fixed; font-size:12px; width:100%; min-width:0; }
70
75
 
71
76
  .power-logs th,.power-logs td { padding:6px 10px; text-align:left; border-bottom:1px solid var(--borderColor); max-width:400px; white-space:nowrap; vertical-align:top; }
72
77
  .power-logs .power-logs-cell { display:block; overflow:hidden; text-overflow:ellipsis; max-height:4.8em; }
78
+ .power-logs .power-logs-json-cell { position:relative; display:flex; align-items:center; gap:4px; min-width:0; height:20px; max-height:20px; }
79
+ .power-logs .power-logs-json-cell .power-log-json { flex:1; min-width:0; margin:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; line-height:20px; }
80
+ .power-logs .power-logs-json-copy { display:inline-flex; align-items:center; justify-content:center; flex:0 0 20px; width:20px; height:20px; min-height:0; padding:0; border-color:transparent; background:transparent; opacity:.6; }
81
+ .power-logs .power-logs-json-copy:hover, .power-logs .power-logs-json-copy:focus-visible { opacity:1; background:color-mix(in srgb,var(--primary) 10%,transparent); }
82
+ .power-logs .power-logs-json-copy-feedback { position:absolute; left:0; top:0; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
83
+
73
84
  .power-logs tbody tr { cursor:pointer; }
74
85
  .power-logs tbody tr:hover, .power-logs tbody tr:focus-visible { background:color-mix(in srgb,var(--primary) 10%,var(--contentColor)); outline:none; }
75
86
  .power-logs td[data-column=message] { font-family:var(--font-monospace,monospace); font-size:12px; white-space:pre-wrap; overflow-wrap:anywhere; }
@@ -94,7 +105,7 @@ body:has(.power-logs[data-testid="power-logs-page"]) .power-ai-launcher { displa
94
105
  .power-logs-options > summary { list-style:none; }
95
106
  .power-logs-options > summary::-webkit-details-marker { display:none; }
96
107
  .power-logs .power-logs-options[open] > summary { color:var(--primary); border-color:var(--primary); background:color-mix(in srgb,var(--primary) 12%,var(--contentColor)); }
97
- .power-logs-options > div { position:absolute; z-index:10; top:100%; right:0; box-sizing:border-box; width:280px; max-width:calc(100vw - 32px); border-radius:6px; padding:12px; display:flex; flex-direction:column; gap:12px; background:var(--mainBackground); border:1px solid var(--borderColor); box-shadow:0 4px 18px #0005; }
108
+ .power-logs-options > div { position:absolute; z-index:10; top:calc(100% + 6px); right:0; box-sizing:border-box; width:280px; max-width:calc(100vw - 32px); border-radius:6px; padding:12px; display:flex; flex-direction:column; gap:12px; background:var(--mainBackground); border:1px solid var(--borderColor); box-shadow:0 4px 18px #0005; }
98
109
  .power-logs-options label { white-space:nowrap; justify-content:space-between; gap:12px; }
99
110
  .power-logs-options .power-logs-select { min-width:130px; }
100
111
  .power-logs-select .Select__single-value { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
@@ -103,13 +114,35 @@ body:has(.power-logs[data-testid="power-logs-page"]) .power-ai-launcher { displa
103
114
  .power-logs-pagination button { width:28px; padding:3px; }
104
115
  .power-logs-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; }
105
116
  .power-logs-caption { flex:1; min-width:0; font-size:11px!important; }
106
- .power-logs .power-logs-collection-note { display:flex; align-items:center; gap:5px; min-width:0; max-width:55%; padding:1px 6px; font-size:10px; }
117
+ .power-logs .power-logs-collection-note { display:flex; align-items:center; gap:5px; min-width:0; max-width:55%; padding:1px 6px; font-size:11px; }
107
118
  .power-logs-collection-note > :first-child { color:var(--colorWarning,#d9a441); flex-shrink:0; }
108
119
  .power-logs-collection-note > :last-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
109
120
  .power-logs-status { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
110
121
  .power-logs .power-logs-error { white-space:normal; overflow:visible; overflow-wrap:anywhere; }
111
122
  .power-logs-snapshot-notes { max-height:100px; overflow:auto; }
112
- @container(max-width:760px) { .power-logs-detail { width:min(420px,86%); padding:12px; gap:10px; } .power-logs-filters .power-logs-select { flex:1 1 130px; } .power-logs-filters > input { flex-basis:100%; } .power-log-row { grid-template-columns:80px 42px minmax(0,1fr); } .power-log-row .power-log-origin { display:none; } .power-logs header .power-logs-actions { gap:4px; } }
123
+ @container(max-width:760px) { .power-logs-detail { width:min(420px,86%); padding:12px; gap:10px; } .power-logs-filters .power-logs-select { flex:1 1 130px; } .power-logs-filters > input { flex-basis:100%; } .power-log-row { grid-template-columns:var(--log-time-width,calc(8ch + 4px)) var(--log-level-width,calc(var(--power-log-level-ch,7) * .833333ch + 4px)) minmax(0,1fr); } .power-log-row .power-log-origin { display:none; } .power-logs header .power-logs-actions { gap:4px; } }
124
+ .Select__option--is-selected .power-logs-snapshot-option > button { color:#fff; background:#0002; border:1px solid #fff7; }
125
+ .Select__option--is-selected .power-logs-snapshot-option > button:not(:disabled):hover { color:#a61b1b; background:#fff; border-color:#fff; }
126
+ .power-logs-field-filters { display:flex; align-items:center; flex-wrap:wrap; gap:4px; }
127
+ .power-logs .power-logs-field-filters button { max-width:360px; min-height:24px; padding:2px 6px; font-size:11px; }
128
+ .power-logs-field-filters button > span:first-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
129
+ .power-logs-field-filters button > :last-child { flex-shrink:0; }
130
+ .power-logs .power-logs-json-cell .power-log-json-fields { flex:1; min-width:0; overflow:hidden; }
131
+ .power-logs .power-logs-json-cell .power-log-json { white-space:pre; }
132
+ .power-log-message [data-log-token=url], .power-log-message [data-log-token=trace-id], .power-log-message [data-log-token=address] { color:#9cdcfe; }
133
+ .theme-light .power-log-message [data-log-token=url], .theme-light .power-log-message [data-log-token=trace-id], .theme-light .power-log-message [data-log-token=address] { color:#005a9e; }
134
+ .power-log-message [data-log-token=duration], .power-log-message [data-status-class="2"] { color:#b5cea8; }
135
+ .theme-light .power-log-message [data-log-token=duration], .theme-light .power-log-message [data-status-class="2"] { color:#17642d; }
136
+ .power-log-message [data-status-class="1"], .power-log-message [data-status-class="3"] { color:#9cdcfe; }
137
+ .theme-light .power-log-message [data-status-class="1"], .theme-light .power-log-message [data-status-class="3"] { color:#005a9e; }
138
+ .power-log-message [data-status-class="4"] { color:#e3b56b; }
139
+ .theme-light .power-log-message [data-status-class="4"] { color:#8a4b00; }
140
+ .power-log-message [data-status-class="5"] { color:#f19b8d; }
141
+ .theme-light .power-log-message [data-status-class="5"] { color:#9e2b1a; }
142
+ .power-logs[data-hide-resource-name=true] .power-log-row { grid-template-columns:var(--log-time-width,calc(8ch + 4px)) var(--log-level-width,calc(var(--power-log-level-ch,7) * .833333ch + 4px)) minmax(0,1fr); }
143
+ .power-logs[data-hide-resource-name=true] .power-log-origin { display:none; }
144
+ .power-logs .power-logs-control-label { display:block; flex:0 0 76px; width:76px; margin:0; }
145
+ .power-logs .power-logs-query-error { font-size:12px; color:var(--colorError); }
113
146
  `;
114
147
  //#endregion
115
148
  exports.powerLogsStyles = powerLogsStyles;
@@ -1 +1 @@
1
- {"version":3,"file":"power-logs.css.js","names":[],"sources":["../../src/renderer/power-logs.css.ts"],"sourcesContent":["export const powerLogsStyles = `\nbody:has(.power-logs[data-testid=\"power-logs-page\"]) .power-ai-launcher { display:none; }\n.power-logs { display:flex; flex-direction:column; height:100%; min-height:0; min-width:0; box-sizing:border-box; overflow:hidden; padding:12px; gap:6px; color:var(--textColorPrimary); container-type:inline-size; }\n.power-logs header, .power-logs-toolbar, .power-logs-filters, .power-logs-source { display:flex; align-items:center; gap:6px; flex-wrap:wrap; }\n.power-logs header h1 { margin:0; font-size:16px; display:flex; align-items:center; gap:10px; }\n.power-logs header .power-logs-actions { margin-left:auto; display:flex; gap:8px; flex-wrap:wrap; }\n.power-logs :is(button,input,select,textarea), .power-logs .power-logs-options > summary { font:inherit; color:inherit; }\n.power-logs :is(.power-logs-filters > input,textarea) { background:var(--contentColor); border:1px solid var(--borderColor); border-radius:5px; padding:4px 8px; min-width:0; }\n.power-logs-filters > input { flex:1; min-width:180px; }\n.power-logs label { display:flex; align-items:center; gap:8px; }\n.power-logs button, .power-logs .power-logs-options > summary { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:28px; padding:3px 8px; border:1px solid var(--borderColor); border-radius:5px; background:var(--contentColor); cursor:pointer; box-shadow:none; }\n.power-logs button::before { content:none; }\n.power-logs :is(button:not(:disabled),.power-logs-options > summary):hover { color:var(--primary); border-color:var(--primary); }\n.power-logs button[aria-pressed=true], .power-logs button[aria-selected=true] { color:var(--primary); background:color-mix(in srgb,var(--primary) 12%,var(--contentColor)); border-color:var(--primary); }\n.power-logs button:disabled { opacity:.45; cursor:default; }\n.power-logs :is(button,input,select,textarea):focus-visible, .power-logs .power-logs-options > summary:focus-visible { outline:2px solid var(--primary); outline-offset:2px; }\n.power-logs .power-logs-filters > input:focus-visible, .power-logs textarea:focus-visible { outline:none; border-color:var(--primary); box-shadow:inset 0 0 0 1px var(--primary); }\n.power-logs .power-logs-muted { color:var(--textColorSecondary); font-size:12px; line-height:1.5; }\n.power-logs .power-logs-notice { padding:3px 8px; border:1px solid var(--borderColor); border-radius:4px; line-height:1.5; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; flex-shrink:0; }\n.power-logs .power-logs-error { color:var(--colorError,#e68b80); }\n.power-logs-tabs { display:flex; gap:4px; flex-shrink:0; }\n.power-logs header .power-logs-page-title { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }\n.power-logs-snapshot-option { display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; }\n.power-logs-option-text { display:flex; flex-direction:column; gap:3px; min-width:0; white-space:normal; overflow-wrap:anywhere; }\n.power-logs-option-text strong { font-weight:500; }\n.power-logs-option-text small { opacity:.85; font-size:11px; }\n.power-logs-source-option { display:flex; align-items:center; gap:10px; width:100%; min-width:0; white-space:normal; line-height:1.4; }\n.power-logs-source-option > :first-child { flex-shrink:0; opacity:.75; }\n.power-logs-source-option .power-logs-option-text { flex:1; }\n.power-logs-source-option strong, .power-logs-source-option small { white-space:normal; overflow:visible; overflow-wrap:anywhere; }\n.power-logs-source-check { display:inline-flex; width:16px; flex-shrink:0; }\n.power-logs-snapshot-option > button { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; min-width:28px; min-height:28px; padding:0; border:0; border-radius:4px; background:transparent; color:inherit; cursor:pointer; }\n.power-logs-snapshot-option > button:not(:disabled):hover { color:var(--colorError); background:color-mix(in srgb,var(--colorError) 12%,transparent); }\n.power-logs-snapshot-option > button:focus-visible { outline:2px solid var(--primary); outline-offset:-2px; }\n.power-logs-snapshot-option > button:disabled { opacity:.45; cursor:default; }\n.power-logs-level-label { color:var(--textColorSecondary); }\n.power-logs-level-label[data-level=debug] { color:var(--colorInfo); }\n.power-logs-level-label[data-level=info] { color:var(--primary); }\n.power-logs-level-label[data-level=warn] { color:var(--colorWarning); }\n.power-logs-level-label[data-level=error],.power-logs-level-label[data-level=fatal] { color:var(--colorError); }\n.Select__option--is-selected .power-logs-level-label { color:inherit; }\n.power-logs-workspace { position:relative; display:flex; flex:1; min-height:0; }\n.power-logs-viewer { display:flex; flex-direction:column; flex:1; min-width:0; min-height:0; gap:4px; }\n.power-logs-stream { position:relative; flex:1; min-height:0; min-width:0; overflow:auto; border:1px solid var(--borderColor); border-radius:6px; background:var(--contentColor); }\n.power-log-row { min-height:0!important; position:absolute; left:0; right:0; width:100%; display:grid!important; grid-template-columns:95px 48px minmax(100px,180px) minmax(0,1fr); align-items:center; gap:10px!important; padding:0 12px!important; border:0!important; border-left:3px solid var(--textColorSecondary)!important; border-bottom:1px solid var(--borderFaintColor)!important; border-radius:0!important; text-align:left; background:transparent!important; font-family:var(--font-monospace,monospace)!important; font-size:12px!important; }\n.power-logs[data-compact=true] .power-log-row { padding-inline:6px!important; gap:5px!important; font-size:11px!important; line-height:16px; }\n.power-logs[data-compact=true] table :is(td,th) { padding:1px 6px; font-size:11px; line-height:16px; }\n.power-log-row > span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }\n.power-log-row .power-log-level { font-size:10px; font-weight:600; text-transform:uppercase; }\n.power-log-row[data-level=warn] { border-left-color:var(--colorWarning,#d9a441)!important; }\n.power-log-row[data-level=error],.power-log-row[data-level=fatal] { border-left-color:var(--colorError,#d26860)!important; }\n.power-log-row[data-level=info] { border-left-color:var(--primary)!important; }\n.power-logs-detail { position:absolute; z-index:5; top:0; bottom:0; right:0; box-sizing:border-box; box-shadow:-4px 0 18px #0004; display:flex; flex-direction:column; align-items:stretch; gap:12px; width:460px; max-width:95%; padding:16px; background:var(--contentColor); border:1px solid var(--borderColor); border-radius:6px; overflow:auto; }\n.power-logs-detail header { justify-content:flex-end; }\n.power-logs-detail header > strong { margin-right:auto; }\n.power-logs-structured-heading { display:flex; align-items:center; gap:6px; }\n.power-logs .power-logs-detail-copy, .power-logs .power-logs-detail-close { flex-shrink:0; width:28px; padding:0; border-color:transparent; background:transparent; }\n.power-logs .power-logs-detail-copy:not(:disabled):hover, .power-logs .power-logs-detail-close:not(:disabled):hover { border-color:transparent; background:color-mix(in srgb,var(--primary) 10%,transparent); }\n.power-log-json { --json-key:#9cdcfe; --json-string:#ce9178; --json-number:#b5cea8; --json-literal:#c586c0; }\n.theme-light .power-log-json { --json-key:#005a9e; --json-string:#9e2b1a; --json-number:#17642d; --json-literal:#7a288c; }\n.power-log-json [data-token=key] { color:var(--json-key); }\n.power-log-json [data-token=string] { color:var(--json-string); }\n.power-log-json [data-token=number] { color:var(--json-number); }\n.power-log-json [data-token=literal] { color:var(--json-literal); }\n.power-logs pre { white-space:pre-wrap; overflow-wrap:anywhere; font-size:12px; line-height:1.6; }\n.power-logs textarea { box-sizing:border-box; width:100%; height:56px; min-height:48px; max-height:120px; flex-shrink:0; resize:vertical; font-family:var(--font-monospace,monospace); }\n.power-logs-results { flex:1; min-height:0; overflow:auto; border:1px solid var(--borderColor); border-radius:6px; }\n.power-logs table { border-collapse:collapse; table-layout:fixed; font-size:12px; width:100%; min-width:0; }\n\n.power-logs th,.power-logs td { padding:6px 10px; text-align:left; border-bottom:1px solid var(--borderColor); max-width:400px; white-space:nowrap; vertical-align:top; }\n.power-logs .power-logs-cell { display:block; overflow:hidden; text-overflow:ellipsis; max-height:4.8em; }\n.power-logs tbody tr { cursor:pointer; }\n.power-logs tbody tr:hover, .power-logs tbody tr:focus-visible { background:color-mix(in srgb,var(--primary) 10%,var(--contentColor)); outline:none; }\n.power-logs td[data-column=message] { font-family:var(--font-monospace,monospace); font-size:12px; white-space:pre-wrap; overflow-wrap:anywhere; }\n.power-logs td[data-level=error], .power-logs td[data-level=fatal] { color:var(--colorError,#d26860); }\n.power-logs td[data-level=warn] { color:var(--colorWarning,#d9a441); }\n.power-logs th { position:sticky; top:0; background:var(--contentColor); }\n.power-logs dialog { position:fixed; inset:0; margin:auto; background:var(--mainBackground); color:var(--textColorPrimary); border:1px solid var(--borderColor); border-radius:8px; padding:24px; width:min(640px,85vw); max-height:80vh; overflow:auto; }\n.power-logs dialog::backdrop { background:#0007; }\n.power-logs-empty { padding:32px; text-align:center; color:var(--textColorSecondary); }\n\n.power-logs > :not(.power-logs-workspace):not(.power-logs-results) { flex-shrink:0; }\n.power-logs-target, .power-logs-caption { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }\n.power-logs-select { display:inline-block; min-width:0; max-width:360px; flex:1; }\n.power-logs-source .power-logs-select { flex:1; max-width:none; }\n.power-logs-select > div { width:100%; min-width:0; }\n.power-logs-filters .power-logs-select { flex:0 1 180px; }\n.power-logs-filters .power-logs-select[data-source-select] { flex:1 1 260px; max-width:420px; }\n\n.power-logs-capture { display:flex; }\n.power-logs-capture > button { color:var(--primary); }\n.power-logs-options { position:relative; }\n.power-logs-options > summary { list-style:none; }\n.power-logs-options > summary::-webkit-details-marker { display:none; }\n.power-logs .power-logs-options[open] > summary { color:var(--primary); border-color:var(--primary); background:color-mix(in srgb,var(--primary) 12%,var(--contentColor)); }\n.power-logs-options > div { position:absolute; z-index:10; top:100%; right:0; box-sizing:border-box; width:280px; max-width:calc(100vw - 32px); border-radius:6px; padding:12px; display:flex; flex-direction:column; gap:12px; background:var(--mainBackground); border:1px solid var(--borderColor); box-shadow:0 4px 18px #0005; }\n.power-logs-options label { white-space:nowrap; justify-content:space-between; gap:12px; }\n.power-logs-options .power-logs-select { min-width:130px; }\n.power-logs-select .Select__single-value { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }\n.power-logs-sql-tools button { min-height:24px; font-size:12px; }\n.power-logs-pagination { justify-content:flex-end; gap:8px; }\n.power-logs-pagination button { width:28px; padding:3px; }\n.power-logs-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; }\n.power-logs-caption { flex:1; min-width:0; font-size:11px!important; }\n.power-logs .power-logs-collection-note { display:flex; align-items:center; gap:5px; min-width:0; max-width:55%; padding:1px 6px; font-size:10px; }\n.power-logs-collection-note > :first-child { color:var(--colorWarning,#d9a441); flex-shrink:0; }\n.power-logs-collection-note > :last-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }\n.power-logs-status { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }\n.power-logs .power-logs-error { white-space:normal; overflow:visible; overflow-wrap:anywhere; }\n.power-logs-snapshot-notes { max-height:100px; overflow:auto; }\n@container(max-width:760px) { .power-logs-detail { width:min(420px,86%); padding:12px; gap:10px; } .power-logs-filters .power-logs-select { flex:1 1 130px; } .power-logs-filters > input { flex-basis:100%; } .power-log-row { grid-template-columns:80px 42px minmax(0,1fr); } .power-log-row .power-log-origin { display:none; } .power-logs header .power-logs-actions { gap:4px; } }\n`;\n"],"mappings":";AAAA,IAAa,kBAAkB"}
1
+ {"version":3,"file":"power-logs.css.js","names":[],"sources":["../../src/renderer/power-logs.css.ts"],"sourcesContent":["export const powerLogsStyles = `\nbody:has(.power-logs[data-testid=\"power-logs-page\"]) .power-ai-launcher { display:none; }\n.power-logs { display:flex; flex-direction:column; height:100%; min-height:0; min-width:0; box-sizing:border-box; overflow:hidden; padding:12px; gap:6px; color:var(--textColorPrimary); container-type:inline-size; }\n.power-logs header, .power-logs-toolbar, .power-logs-filters, .power-logs-source { display:flex; align-items:center; gap:6px; flex-wrap:wrap; }\n.power-logs header h1 { margin:0; font-size:16px; display:flex; align-items:center; gap:10px; }\n.power-logs header .power-logs-actions { margin-left:auto; display:flex; gap:8px; flex-wrap:wrap; }\n.power-logs :is(button,input,select,textarea), .power-logs .power-logs-options > summary { font:inherit; color:inherit; }\n.power-logs :is(.power-logs-filters > input,textarea) { background:var(--contentColor); border:1px solid var(--borderColor); border-radius:5px; padding:4px 8px; min-width:0; }\n.power-logs-filters > input { flex:1; min-width:180px; }\n.power-logs label { display:flex; align-items:center; gap:8px; }\n.power-logs button, .power-logs .power-logs-options > summary { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:28px; padding:3px 8px; border:1px solid var(--borderColor); border-radius:5px; background:var(--contentColor); cursor:pointer; box-shadow:none; }\n.power-logs button::before { content:none; }\n.power-logs :is(button:not(:disabled),.power-logs-options > summary):hover { color:var(--primary); border-color:var(--primary); }\n.power-logs button[aria-pressed=true], .power-logs button[aria-selected=true] { color:var(--primary); background:color-mix(in srgb,var(--primary) 12%,var(--contentColor)); border-color:var(--primary); }\n.power-logs button:disabled { opacity:.45; cursor:default; }\n.power-logs :is(button,input,select,textarea):focus-visible, .power-logs .power-logs-options > summary:focus-visible { outline:2px solid var(--primary); outline-offset:2px; }\n.power-logs .power-logs-filters > input:focus-visible, .power-logs textarea:focus-visible { outline:none; border-color:var(--primary); box-shadow:inset 0 0 0 1px var(--primary); }\n.power-logs .power-logs-muted { color:var(--textColorSecondary); font-size:12px; line-height:1.5; }\n.power-logs .power-logs-notice { padding:3px 8px; border:1px solid var(--borderColor); border-radius:4px; line-height:1.5; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; flex-shrink:0; }\n.power-logs .power-logs-error { color:var(--colorError,#e68b80); }\n.power-logs-tabs { display:flex; gap:4px; flex-shrink:0; }\n.power-logs header .power-logs-page-title { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }\n.power-logs-snapshot-option { display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; }\n.power-logs-option-text { display:flex; flex-direction:column; gap:3px; min-width:0; white-space:normal; overflow-wrap:anywhere; }\n.power-logs-option-text strong { font-weight:500; }\n.power-logs-option-text small { opacity:.85; font-size:11px; }\n.power-logs-source-option { display:flex; align-items:center; gap:10px; width:100%; min-width:0; white-space:normal; line-height:1.4; }\n.power-logs-source-option > :first-child { flex-shrink:0; opacity:.75; }\n.power-logs-source-option .power-logs-option-text { flex:1; }\n.power-logs-source-option strong, .power-logs-source-option small { white-space:normal; overflow:visible; overflow-wrap:anywhere; }\n.power-logs-source-check { display:inline-flex; width:16px; flex-shrink:0; }\n.power-logs-snapshot-option > button { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; min-width:28px; min-height:28px; padding:0; border:0; border-radius:4px; background:transparent; color:inherit; cursor:pointer; }\n.power-logs-snapshot-option > button:not(:disabled):hover { color:var(--colorError); background:color-mix(in srgb,var(--colorError) 12%,transparent); }\n.power-logs-snapshot-option > button:focus-visible { outline:2px solid var(--primary); outline-offset:-2px; }\n.power-logs-snapshot-option > button:disabled { opacity:.45; cursor:default; }\n.power-logs-level-label { color:var(--textColorSecondary); }\n.power-logs-level-label[data-level=debug] { color:var(--colorInfo); }\n.power-logs-level-label[data-level=info] { color:var(--primary); }\n.power-logs-level-label[data-level=warn] { color:var(--colorWarning); }\n.power-logs-level-label[data-level=error],.power-logs-level-label[data-level=fatal] { color:var(--colorError); }\n.Select__option--is-selected .power-logs-level-label { color:inherit; }\n.power-logs-workspace { position:relative; display:flex; flex:1; min-height:0; }\n.power-logs-viewer { display:flex; flex-direction:column; flex:1; min-width:0; min-height:0; gap:4px; }\n.power-logs-stream { position:relative; flex:1; min-height:0; min-width:0; overflow:auto; border:1px solid var(--borderColor); border-radius:6px; background:var(--contentColor); }\n.power-log-row { min-height:0!important; position:absolute; left:0; right:0; width:100%; display:grid!important; grid-template-columns:var(--log-time-width,calc(8ch + 4px)) var(--log-level-width,calc(var(--power-log-level-ch,7) * .833333ch + 4px)) minmax(100px,180px) minmax(0,1fr); align-items:center; gap:8px!important; padding:0 12px!important; border:0!important; border-left:3px solid var(--textColorSecondary)!important; border-bottom:1px solid var(--borderFaintColor)!important; border-radius:0!important; text-align:left; background:transparent!important; font-family:var(--font-monospace,monospace)!important; font-size:12px!important; }\n.power-logs[data-compact=true] .power-log-row { --log-time-width:calc(8ch + 1px); --log-level-width:calc(var(--power-log-level-ch,7) * .909091ch + 1px); padding-inline:6px!important; gap:4px!important; font-size:11px!important; line-height:16px; }\n.power-logs[data-compact=true] table :is(td,th) { padding:1px 6px; font-size:11px; line-height:16px; }\n.power-log-row > span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }\n.power-log-row > span:last-child { white-space:pre; height:16px; line-height:16px; }\n.power-log-message { color:var(--textColorPrimary); }\n.power-log-message [data-log-token=http-method] { color:var(--primary); }\n.power-log-message [data-log-token=uuid] { color:#9cdcfe; }\n.theme-light .power-log-message [data-log-token=uuid] { color:#005a9e; }\n.power-log-row .power-log-level { font-size:10px; font-weight:600; text-transform:uppercase; }\n.power-log-row[data-level=warn] { border-left-color:var(--colorWarning,#d9a441)!important; }\n.power-log-row[data-level=error],.power-log-row[data-level=fatal] { border-left-color:var(--colorError,#d26860)!important; }\n.power-log-row[data-level=info] { border-left-color:var(--primary)!important; }\n.power-logs-detail { position:absolute; z-index:5; top:0; bottom:0; right:0; box-sizing:border-box; box-shadow:-4px 0 18px #0004; display:flex; flex-direction:column; align-items:stretch; gap:12px; width:460px; max-width:95%; padding:16px; background:var(--contentColor); border:1px solid var(--borderColor); border-radius:6px; overflow:auto; }\n.power-logs-detail header { justify-content:flex-end; }\n.power-logs-detail header > strong { margin-right:auto; }\n.power-logs-structured-heading { display:flex; align-items:center; gap:6px; }\n.power-logs .power-logs-detail-copy, .power-logs .power-logs-detail-close { flex-shrink:0; width:28px; padding:0; border-color:transparent; background:transparent; }\n.power-logs .power-logs-detail-copy:not(:disabled):hover, .power-logs .power-logs-detail-close:not(:disabled):hover { border-color:transparent; background:color-mix(in srgb,var(--primary) 10%,transparent); }\n.power-log-json { --json-key:#9cdcfe; --json-string:#ce9178; --json-number:#b5cea8; --json-literal:#c586c0; }\n.theme-light .power-log-json { --json-key:#005a9e; --json-string:#9e2b1a; --json-number:#17642d; --json-literal:#7a288c; }\n.power-log-json [data-token=key] { color:var(--json-key); }\n.power-log-json [data-token=string] { color:var(--json-string); }\n.power-log-json [data-token=number] { color:var(--json-number); }\n.power-log-json [data-token=literal] { color:var(--json-literal); }\n.power-logs pre { white-space:pre-wrap; overflow-wrap:anywhere; font-size:12px; line-height:1.6; }\n.power-logs textarea { user-select:text; box-sizing:border-box; width:100%; height:56px; min-height:48px; max-height:120px; flex-shrink:0; resize:vertical; font-family:var(--font-monospace,monospace); }\n.power-logs-results { flex:1; min-height:0; overflow:auto; border:1px solid var(--borderColor); border-radius:6px; }\n.power-logs table { border-collapse:collapse; table-layout:fixed; font-size:12px; width:100%; min-width:0; }\n\n.power-logs th,.power-logs td { padding:6px 10px; text-align:left; border-bottom:1px solid var(--borderColor); max-width:400px; white-space:nowrap; vertical-align:top; }\n.power-logs .power-logs-cell { display:block; overflow:hidden; text-overflow:ellipsis; max-height:4.8em; }\n.power-logs .power-logs-json-cell { position:relative; display:flex; align-items:center; gap:4px; min-width:0; height:20px; max-height:20px; }\n.power-logs .power-logs-json-cell .power-log-json { flex:1; min-width:0; margin:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; line-height:20px; }\n.power-logs .power-logs-json-copy { display:inline-flex; align-items:center; justify-content:center; flex:0 0 20px; width:20px; height:20px; min-height:0; padding:0; border-color:transparent; background:transparent; opacity:.6; }\n.power-logs .power-logs-json-copy:hover, .power-logs .power-logs-json-copy:focus-visible { opacity:1; background:color-mix(in srgb,var(--primary) 10%,transparent); }\n.power-logs .power-logs-json-copy-feedback { position:absolute; left:0; top:0; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }\n\n.power-logs tbody tr { cursor:pointer; }\n.power-logs tbody tr:hover, .power-logs tbody tr:focus-visible { background:color-mix(in srgb,var(--primary) 10%,var(--contentColor)); outline:none; }\n.power-logs td[data-column=message] { font-family:var(--font-monospace,monospace); font-size:12px; white-space:pre-wrap; overflow-wrap:anywhere; }\n.power-logs td[data-level=error], .power-logs td[data-level=fatal] { color:var(--colorError,#d26860); }\n.power-logs td[data-level=warn] { color:var(--colorWarning,#d9a441); }\n.power-logs th { position:sticky; top:0; background:var(--contentColor); }\n.power-logs dialog { position:fixed; inset:0; margin:auto; background:var(--mainBackground); color:var(--textColorPrimary); border:1px solid var(--borderColor); border-radius:8px; padding:24px; width:min(640px,85vw); max-height:80vh; overflow:auto; }\n.power-logs dialog::backdrop { background:#0007; }\n.power-logs-empty { padding:32px; text-align:center; color:var(--textColorSecondary); }\n\n.power-logs > :not(.power-logs-workspace):not(.power-logs-results) { flex-shrink:0; }\n.power-logs-target, .power-logs-caption { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }\n.power-logs-select { display:inline-block; min-width:0; max-width:360px; flex:1; }\n.power-logs-source .power-logs-select { flex:1; max-width:none; }\n.power-logs-select > div { width:100%; min-width:0; }\n.power-logs-filters .power-logs-select { flex:0 1 180px; }\n.power-logs-filters .power-logs-select[data-source-select] { flex:1 1 260px; max-width:420px; }\n\n.power-logs-capture { display:flex; }\n.power-logs-capture > button { color:var(--primary); }\n.power-logs-options { position:relative; }\n.power-logs-options > summary { list-style:none; }\n.power-logs-options > summary::-webkit-details-marker { display:none; }\n.power-logs .power-logs-options[open] > summary { color:var(--primary); border-color:var(--primary); background:color-mix(in srgb,var(--primary) 12%,var(--contentColor)); }\n.power-logs-options > div { position:absolute; z-index:10; top:calc(100% + 6px); right:0; box-sizing:border-box; width:280px; max-width:calc(100vw - 32px); border-radius:6px; padding:12px; display:flex; flex-direction:column; gap:12px; background:var(--mainBackground); border:1px solid var(--borderColor); box-shadow:0 4px 18px #0005; }\n.power-logs-options label { white-space:nowrap; justify-content:space-between; gap:12px; }\n.power-logs-options .power-logs-select { min-width:130px; }\n.power-logs-select .Select__single-value { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }\n.power-logs-sql-tools button { min-height:24px; font-size:12px; }\n.power-logs-pagination { justify-content:flex-end; gap:8px; }\n.power-logs-pagination button { width:28px; padding:3px; }\n.power-logs-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; }\n.power-logs-caption { flex:1; min-width:0; font-size:11px!important; }\n.power-logs .power-logs-collection-note { display:flex; align-items:center; gap:5px; min-width:0; max-width:55%; padding:1px 6px; font-size:11px; }\n.power-logs-collection-note > :first-child { color:var(--colorWarning,#d9a441); flex-shrink:0; }\n.power-logs-collection-note > :last-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }\n.power-logs-status { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }\n.power-logs .power-logs-error { white-space:normal; overflow:visible; overflow-wrap:anywhere; }\n.power-logs-snapshot-notes { max-height:100px; overflow:auto; }\n@container(max-width:760px) { .power-logs-detail { width:min(420px,86%); padding:12px; gap:10px; } .power-logs-filters .power-logs-select { flex:1 1 130px; } .power-logs-filters > input { flex-basis:100%; } .power-log-row { grid-template-columns:var(--log-time-width,calc(8ch + 4px)) var(--log-level-width,calc(var(--power-log-level-ch,7) * .833333ch + 4px)) minmax(0,1fr); } .power-log-row .power-log-origin { display:none; } .power-logs header .power-logs-actions { gap:4px; } }\n.Select__option--is-selected .power-logs-snapshot-option > button { color:#fff; background:#0002; border:1px solid #fff7; }\n.Select__option--is-selected .power-logs-snapshot-option > button:not(:disabled):hover { color:#a61b1b; background:#fff; border-color:#fff; }\n.power-logs-field-filters { display:flex; align-items:center; flex-wrap:wrap; gap:4px; }\n.power-logs .power-logs-field-filters button { max-width:360px; min-height:24px; padding:2px 6px; font-size:11px; }\n.power-logs-field-filters button > span:first-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }\n.power-logs-field-filters button > :last-child { flex-shrink:0; }\n.power-logs .power-logs-json-cell .power-log-json-fields { flex:1; min-width:0; overflow:hidden; }\n.power-logs .power-logs-json-cell .power-log-json { white-space:pre; }\n.power-log-message [data-log-token=url], .power-log-message [data-log-token=trace-id], .power-log-message [data-log-token=address] { color:#9cdcfe; }\n.theme-light .power-log-message [data-log-token=url], .theme-light .power-log-message [data-log-token=trace-id], .theme-light .power-log-message [data-log-token=address] { color:#005a9e; }\n.power-log-message [data-log-token=duration], .power-log-message [data-status-class=\"2\"] { color:#b5cea8; }\n.theme-light .power-log-message [data-log-token=duration], .theme-light .power-log-message [data-status-class=\"2\"] { color:#17642d; }\n.power-log-message [data-status-class=\"1\"], .power-log-message [data-status-class=\"3\"] { color:#9cdcfe; }\n.theme-light .power-log-message [data-status-class=\"1\"], .theme-light .power-log-message [data-status-class=\"3\"] { color:#005a9e; }\n.power-log-message [data-status-class=\"4\"] { color:#e3b56b; }\n.theme-light .power-log-message [data-status-class=\"4\"] { color:#8a4b00; }\n.power-log-message [data-status-class=\"5\"] { color:#f19b8d; }\n.theme-light .power-log-message [data-status-class=\"5\"] { color:#9e2b1a; }\n.power-logs[data-hide-resource-name=true] .power-log-row { grid-template-columns:var(--log-time-width,calc(8ch + 4px)) var(--log-level-width,calc(var(--power-log-level-ch,7) * .833333ch + 4px)) minmax(0,1fr); }\n.power-logs[data-hide-resource-name=true] .power-log-origin { display:none; }\n.power-logs .power-logs-control-label { display:block; flex:0 0 76px; width:76px; margin:0; }\n.power-logs .power-logs-query-error { font-size:12px; color:var(--colorError); }\n`;\n"],"mappings":";AAAA,IAAa,kBAAkB"}