@metrevals/inspect-scout-viewer 0.2.3-beta.1763762930 → 0.2.4-beta.1763857400

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/lib/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as H from "react";
2
- import H__default, { createContext, useContext, useRef, useCallback, useEffect, useMemo, Fragment, Children, isValidElement, useState, createElement, memo as memo$1, forwardRef, useImperativeHandle, useLayoutEffect, Suspense, Component as Component$1 } from "react";
2
+ import H__default, { createContext, useContext, useRef, useCallback, useEffect, useMemo, Fragment, Children, isValidElement, forwardRef, useState, createElement, memo as memo$1, useImperativeHandle, useLayoutEffect, Suspense, Component as Component$1 } from "react";
3
3
  import { useParams, useSearchParams, Link, useNavigate, createHashRouter, Navigate, Outlet, RouterProvider } from "react-router-dom";
4
4
  import { c as commonjsGlobal, g as getDefaultExportFromCjs } from "./_commonjsHelpers-DWwsNxpa.js";
5
5
  import * as ReactDOM from "react-dom";
@@ -1860,7 +1860,7 @@ function requirePrism() {
1860
1860
  *
1861
1861
  * @param {ParentNode} [container=document]
1862
1862
  */
1863
- highlight: function highlight(container2) {
1863
+ highlight: function highlight2(container2) {
1864
1864
  var elements = (container2 || document).querySelectorAll(SELECTOR);
1865
1865
  for (var i2 = 0, element; element = elements[i2++]; ) {
1866
1866
  Prism2.highlightElement(element);
@@ -1973,9 +1973,9 @@ function debounce$2(func2, wait, options = {}) {
1973
1973
  let result2;
1974
1974
  let lastCallTime = null;
1975
1975
  const later = () => {
1976
- const last = Date.now() - (lastCallTime || 0);
1977
- if (last < wait && last >= 0) {
1978
- timeout = setTimeout(later, wait - last);
1976
+ const last2 = Date.now() - (lastCallTime || 0);
1977
+ if (last2 < wait && last2 >= 0) {
1978
+ timeout = setTimeout(later, wait - last2);
1979
1979
  } else {
1980
1980
  timeout = null;
1981
1981
  if (!options.leading) {
@@ -3229,6 +3229,7 @@ const createStore$1 = (api) => create$2()(
3229
3229
  transcriptCollapsedEvents: {},
3230
3230
  scopedErrors: {},
3231
3231
  visibleScannerResults: [],
3232
+ highlightLabeled: false,
3232
3233
  // Actions
3233
3234
  setSingleFileMode: (enabled) => {
3234
3235
  set3((state) => {
@@ -3518,6 +3519,11 @@ const createStore$1 = (api) => create$2()(
3518
3519
  set3((state) => {
3519
3520
  state.scansSearchText = text2;
3520
3521
  });
3522
+ },
3523
+ setHighlightLabeled: (highlight2) => {
3524
+ set3((state) => {
3525
+ state.highlightLabeled = highlight2;
3526
+ });
3521
3527
  }
3522
3528
  })),
3523
3529
  {
@@ -3723,7 +3729,7 @@ function useRafThrottle(callback) {
3723
3729
  }, []);
3724
3730
  return throttledCallback;
3725
3731
  }
3726
- const tabs$1 = "_tabs_1sz0h_1";
3732
+ const tabs$2 = "_tabs_1sz0h_1";
3727
3733
  const tabContents = "_tabContents_1sz0h_5";
3728
3734
  const scrollable = "_scrollable_1sz0h_10";
3729
3735
  const tab$1 = "_tab_1sz0h_1";
@@ -3732,7 +3738,7 @@ const tabIcon = "_tabIcon_1sz0h_29";
3732
3738
  const tabTools = "_tabTools_1sz0h_33";
3733
3739
  const tabStyle = "_tabStyle_1sz0h_43";
3734
3740
  const moduleStyles = {
3735
- tabs: tabs$1,
3741
+ tabs: tabs$2,
3736
3742
  tabContents,
3737
3743
  scrollable,
3738
3744
  tab: tab$1,
@@ -3907,6 +3913,126 @@ const updateScannerParam = (searchParams, scanner) => {
3907
3913
  const getScannerParam = (searchParams) => {
3908
3914
  return searchParams.get(kScannerQueryParam) || void 0;
3909
3915
  };
3916
+ const loggingIcons = {
3917
+ notset: "bi bi-card-text",
3918
+ debug: "bi bi-bug",
3919
+ http: "bi bi-download",
3920
+ info: "bi bi-info-square",
3921
+ warning: "bi bi-exclamation-triangle",
3922
+ error: "bi bi-x-circle",
3923
+ critical: "bi bi-fire"
3924
+ };
3925
+ const iconForMimeType = (mimeType) => {
3926
+ if (mimeType === "application/pdf") {
3927
+ return "bi bi-file-pdf";
3928
+ } else if (mimeType.startsWith("image/")) {
3929
+ return "bi bi-file-image";
3930
+ } else {
3931
+ return "bi bi-file-earmark";
3932
+ }
3933
+ };
3934
+ const ApplicationIcons = {
3935
+ // bi bi-x-diamond
3936
+ approve: "bi bi-shield",
3937
+ approvals: {
3938
+ approve: "bi bi-shield-check",
3939
+ reject: "bi bi-shield-x",
3940
+ terminate: "bi bi-shield-exclamation",
3941
+ escalate: "bi bi-box-arrow-up",
3942
+ modify: "bi bi-pencil-square"
3943
+ },
3944
+ arrows: {
3945
+ right: "bi bi-arrow-right"
3946
+ },
3947
+ checkbox: {
3948
+ checked: "bi bi-check-circle",
3949
+ unchecked: "bi bi-circle"
3950
+ },
3951
+ chevron: {
3952
+ right: "bi bi-chevron-right",
3953
+ down: "bi bi-chevron-down"
3954
+ },
3955
+ "clear-text": "bi bi-x-circle-fill",
3956
+ close: "bi bi-x",
3957
+ confirm: "bi bi-check",
3958
+ copy: "bi bi-copy",
3959
+ edit: "bi bi-pencil-square",
3960
+ error: "bi bi-exclamation-circle-fill",
3961
+ file: "bi bi-file-code",
3962
+ folder: "bi bi-folder",
3963
+ highlight: "bi bi-highlighter",
3964
+ info: "bi bi-info-circle",
3965
+ input: "bi bi-terminal",
3966
+ limits: {
3967
+ messages: "bi bi-chat-right-text",
3968
+ custom: "bi bi-exclamation-triangle",
3969
+ operator: "bi bi-person-workspace",
3970
+ tokens: "bi bi-list",
3971
+ time: "bi bi-clock",
3972
+ execution: "bi bi-stopwatch"
3973
+ },
3974
+ link: "bi bi-link-45deg",
3975
+ logging: loggingIcons,
3976
+ metadata: "bi bi-table",
3977
+ model: "bi bi-grid-3x3-gap",
3978
+ navbar: {
3979
+ home: "ii inspect-icon-home",
3980
+ back: "ii inspect-icon-back",
3981
+ forward: "ii inspect-icon-forward"
3982
+ },
3983
+ next: "bi bi-chevron-right",
3984
+ noSamples: "bi bi-ban",
3985
+ pendingTask: "bi bi-clock-fill",
3986
+ play: "bi bi-play-fill",
3987
+ previous: "bi bi-chevron-left",
3988
+ refuse: "bi bi-ban",
3989
+ role: {
3990
+ tool: "bi bi-tools"
3991
+ },
3992
+ sample: "bi bi-database",
3993
+ samples: "bi bi-file-spreadsheet",
3994
+ sandbox: "bi bi-box-seam",
3995
+ scorer: "bi bi-calculator",
3996
+ search: "bi bi-search",
3997
+ solvers: {
3998
+ use_tools: "bi bi-tools"
3999
+ },
4000
+ success: "bi bi-check-circle-fill",
4001
+ tree: {
4002
+ open: "bi bi-caret-down-fill",
4003
+ closed: "bi bi-caret-right-fill"
4004
+ }
4005
+ };
4006
+ const toolButton = "_toolButton_1y0d0_1";
4007
+ const latched = "_latched_1y0d0_17";
4008
+ const styles$1j = {
4009
+ toolButton,
4010
+ latched
4011
+ };
4012
+ const ToolButton = forwardRef(
4013
+ ({ label: label2, icon: icon2, className: className2, latched: latched2, ...rest }, ref2) => {
4014
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(
4015
+ "button",
4016
+ {
4017
+ ref: ref2,
4018
+ type: "button",
4019
+ className: clsx(
4020
+ styles$1j.toolButton,
4021
+ "btn",
4022
+ "btn-tools",
4023
+ className2,
4024
+ latched2 ? styles$1j.latched : void 0
4025
+ ),
4026
+ ...rest,
4027
+ children: [
4028
+ icon2 && /* @__PURE__ */ jsxRuntimeExports.jsx("i", { className: `${icon2}` }),
4029
+ label2
4030
+ ]
4031
+ }
4032
+ );
4033
+ }
4034
+ );
4035
+ ToolButton.displayName = "ToolButton";
3910
4036
  function __awaiter(thisArg, _arguments, P2, generator) {
3911
4037
  function adopt(value2) {
3912
4038
  return value2 instanceof P2 ? value2 : new P2(function(resolve2) {
@@ -17888,16 +18014,16 @@ pp$8.parseExportSpecifier = function(exports2) {
17888
18014
  return this.finishNode(node2, "ExportSpecifier");
17889
18015
  };
17890
18016
  pp$8.parseExportSpecifiers = function(exports2) {
17891
- var nodes = [], first = true;
18017
+ var nodes = [], first2 = true;
17892
18018
  this.expect(types$1.braceL);
17893
18019
  while (!this.eat(types$1.braceR)) {
17894
- if (!first) {
18020
+ if (!first2) {
17895
18021
  this.expect(types$1.comma);
17896
18022
  if (this.afterTrailingComma(types$1.braceR)) {
17897
18023
  break;
17898
18024
  }
17899
18025
  } else {
17900
- first = false;
18026
+ first2 = false;
17901
18027
  }
17902
18028
  nodes.push(this.parseExportSpecifier(exports2));
17903
18029
  }
@@ -17946,7 +18072,7 @@ pp$8.parseImportNamespaceSpecifier = function() {
17946
18072
  return this.finishNode(node2, "ImportNamespaceSpecifier");
17947
18073
  };
17948
18074
  pp$8.parseImportSpecifiers = function() {
17949
- var nodes = [], first = true;
18075
+ var nodes = [], first2 = true;
17950
18076
  if (this.type === types$1.name) {
17951
18077
  nodes.push(this.parseImportDefaultSpecifier());
17952
18078
  if (!this.eat(types$1.comma)) {
@@ -17959,13 +18085,13 @@ pp$8.parseImportSpecifiers = function() {
17959
18085
  }
17960
18086
  this.expect(types$1.braceL);
17961
18087
  while (!this.eat(types$1.braceR)) {
17962
- if (!first) {
18088
+ if (!first2) {
17963
18089
  this.expect(types$1.comma);
17964
18090
  if (this.afterTrailingComma(types$1.braceR)) {
17965
18091
  break;
17966
18092
  }
17967
18093
  } else {
17968
- first = false;
18094
+ first2 = false;
17969
18095
  }
17970
18096
  nodes.push(this.parseImportSpecifier());
17971
18097
  }
@@ -17978,15 +18104,15 @@ pp$8.parseWithClause = function() {
17978
18104
  }
17979
18105
  this.expect(types$1.braceL);
17980
18106
  var attributeKeys = {};
17981
- var first = true;
18107
+ var first2 = true;
17982
18108
  while (!this.eat(types$1.braceR)) {
17983
- if (!first) {
18109
+ if (!first2) {
17984
18110
  this.expect(types$1.comma);
17985
18111
  if (this.afterTrailingComma(types$1.braceR)) {
17986
18112
  break;
17987
18113
  }
17988
18114
  } else {
17989
- first = false;
18115
+ first2 = false;
17990
18116
  }
17991
18117
  var attr = this.parseImportAttribute();
17992
18118
  var keyName = attr.key.type === "Identifier" ? attr.key.name : attr.key.value;
@@ -18109,9 +18235,9 @@ pp$7.toAssignableList = function(exprList, isBinding) {
18109
18235
  }
18110
18236
  }
18111
18237
  if (end2) {
18112
- var last = exprList[end2 - 1];
18113
- if (this.options.ecmaVersion === 6 && isBinding && last && last.type === "RestElement" && last.argument.type !== "Identifier") {
18114
- this.unexpected(last.argument.start);
18238
+ var last2 = exprList[end2 - 1];
18239
+ if (this.options.ecmaVersion === 6 && isBinding && last2 && last2.type === "RestElement" && last2.argument.type !== "Identifier") {
18240
+ this.unexpected(last2.argument.start);
18115
18241
  }
18116
18242
  }
18117
18243
  return exprList;
@@ -18146,10 +18272,10 @@ pp$7.parseBindingAtom = function() {
18146
18272
  return this.parseIdent();
18147
18273
  };
18148
18274
  pp$7.parseBindingList = function(close, allowEmpty, allowTrailingComma, allowModifiers) {
18149
- var elts = [], first = true;
18275
+ var elts = [], first2 = true;
18150
18276
  while (!this.eat(close)) {
18151
- if (first) {
18152
- first = false;
18277
+ if (first2) {
18278
+ first2 = false;
18153
18279
  } else {
18154
18280
  this.expect(types$1.comma);
18155
18281
  }
@@ -18956,12 +19082,12 @@ pp$5.parseParenAndDistinguishExpression = function(canBeArrow, forInit) {
18956
19082
  if (this.options.ecmaVersion >= 6) {
18957
19083
  this.next();
18958
19084
  var innerStartPos = this.start, innerStartLoc = this.startLoc;
18959
- var exprList = [], first = true, lastIsComma = false;
19085
+ var exprList = [], first2 = true, lastIsComma = false;
18960
19086
  var refDestructuringErrors = new DestructuringErrors(), oldYieldPos = this.yieldPos, oldAwaitPos = this.awaitPos, spreadStart;
18961
19087
  this.yieldPos = 0;
18962
19088
  this.awaitPos = 0;
18963
19089
  while (this.type !== types$1.parenR) {
18964
- first ? first = false : this.expect(types$1.comma);
19090
+ first2 ? first2 = false : this.expect(types$1.comma);
18965
19091
  if (allowTrailingComma && this.afterTrailingComma(types$1.parenR, true)) {
18966
19092
  lastIsComma = true;
18967
19093
  break;
@@ -19101,17 +19227,17 @@ pp$5.isAsyncProp = function(prop) {
19101
19227
  return !prop.computed && prop.key.type === "Identifier" && prop.key.name === "async" && (this.type === types$1.name || this.type === types$1.num || this.type === types$1.string || this.type === types$1.bracketL || this.type.keyword || this.options.ecmaVersion >= 9 && this.type === types$1.star) && !lineBreak.test(this.input.slice(this.lastTokEnd, this.start));
19102
19228
  };
19103
19229
  pp$5.parseObj = function(isPattern, refDestructuringErrors) {
19104
- var node2 = this.startNode(), first = true, propHash = {};
19230
+ var node2 = this.startNode(), first2 = true, propHash = {};
19105
19231
  node2.properties = [];
19106
19232
  this.next();
19107
19233
  while (!this.eat(types$1.braceR)) {
19108
- if (!first) {
19234
+ if (!first2) {
19109
19235
  this.expect(types$1.comma);
19110
19236
  if (this.options.ecmaVersion >= 5 && this.afterTrailingComma(types$1.braceR)) {
19111
19237
  break;
19112
19238
  }
19113
19239
  } else {
19114
- first = false;
19240
+ first2 = false;
19115
19241
  }
19116
19242
  var prop = this.parseProperty(isPattern, refDestructuringErrors);
19117
19243
  if (!isPattern) {
@@ -19331,15 +19457,15 @@ pp$5.checkParams = function(node2, allowDuplicates) {
19331
19457
  }
19332
19458
  };
19333
19459
  pp$5.parseExprList = function(close, allowTrailingComma, allowEmpty, refDestructuringErrors) {
19334
- var elts = [], first = true;
19460
+ var elts = [], first2 = true;
19335
19461
  while (!this.eat(close)) {
19336
- if (!first) {
19462
+ if (!first2) {
19337
19463
  this.expect(types$1.comma);
19338
19464
  if (allowTrailingComma && this.afterTrailingComma(close)) {
19339
19465
  break;
19340
19466
  }
19341
19467
  } else {
19342
- first = false;
19468
+ first2 = false;
19343
19469
  }
19344
19470
  var elt = void 0;
19345
19471
  if (allowEmpty && this.type === types$1.comma) {
@@ -21759,7 +21885,7 @@ pp.readHexChar = function(len) {
21759
21885
  };
21760
21886
  pp.readWord1 = function() {
21761
21887
  this.containsEsc = false;
21762
- var word = "", first = true, chunkStart = this.pos;
21888
+ var word = "", first2 = true, chunkStart = this.pos;
21763
21889
  var astral = this.options.ecmaVersion >= 6;
21764
21890
  while (this.pos < this.input.length) {
21765
21891
  var ch = this.fullCharCodeAtPos();
@@ -21774,7 +21900,7 @@ pp.readWord1 = function() {
21774
21900
  }
21775
21901
  ++this.pos;
21776
21902
  var esc = this.readCodePoint();
21777
- if (!(first ? isIdentifierStart : isIdentifierChar)(esc, astral)) {
21903
+ if (!(first2 ? isIdentifierStart : isIdentifierChar)(esc, astral)) {
21778
21904
  this.invalidStringToken(escStart, "Invalid Unicode escape");
21779
21905
  }
21780
21906
  word += codePointToString(esc);
@@ -21782,7 +21908,7 @@ pp.readWord1 = function() {
21782
21908
  } else {
21783
21909
  break;
21784
21910
  }
21785
- first = false;
21911
+ first2 = false;
21786
21912
  }
21787
21913
  return word + this.input.slice(chunkStart, this.pos);
21788
21914
  };
@@ -28572,7 +28698,7 @@ function formatValue(v, options = {}) {
28572
28698
  function toHTML(table2, options = {}) {
28573
28699
  const names = columns(table2, options.columns);
28574
28700
  const { align: align2, format: format2 } = formats(table2, names, options);
28575
- const style2 = styles$1j(options);
28701
+ const style2 = styles$1i(options);
28576
28702
  const nullish = options.null;
28577
28703
  const alignValue = (a2) => a2 === "c" ? "center" : a2 === "r" ? "right" : "left";
28578
28704
  const escape2 = (s) => s.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
@@ -28602,7 +28728,7 @@ function toHTML(table2, options = {}) {
28602
28728
  });
28603
28729
  return text2 + "</tbody></table>";
28604
28730
  }
28605
- function styles$1j(options) {
28731
+ function styles$1i(options) {
28606
28732
  return mapObject(
28607
28733
  options.style,
28608
28734
  (value2) => isFunction$1(value2) ? value2 : () => value2
@@ -32042,95 +32168,6 @@ const toRelativePath = (absolutePath, basePath) => {
32042
32168
  }
32043
32169
  return normalizedPath;
32044
32170
  };
32045
- const loggingIcons = {
32046
- notset: "bi bi-card-text",
32047
- debug: "bi bi-bug",
32048
- http: "bi bi-download",
32049
- info: "bi bi-info-square",
32050
- warning: "bi bi-exclamation-triangle",
32051
- error: "bi bi-x-circle",
32052
- critical: "bi bi-fire"
32053
- };
32054
- const iconForMimeType = (mimeType) => {
32055
- if (mimeType === "application/pdf") {
32056
- return "bi bi-file-pdf";
32057
- } else if (mimeType.startsWith("image/")) {
32058
- return "bi bi-file-image";
32059
- } else {
32060
- return "bi bi-file-earmark";
32061
- }
32062
- };
32063
- const ApplicationIcons = {
32064
- // bi bi-x-diamond
32065
- approve: "bi bi-shield",
32066
- approvals: {
32067
- approve: "bi bi-shield-check",
32068
- reject: "bi bi-shield-x",
32069
- terminate: "bi bi-shield-exclamation",
32070
- escalate: "bi bi-box-arrow-up",
32071
- modify: "bi bi-pencil-square"
32072
- },
32073
- arrows: {
32074
- right: "bi bi-arrow-right"
32075
- },
32076
- checkbox: {
32077
- checked: "bi bi-check-circle",
32078
- unchecked: "bi bi-circle"
32079
- },
32080
- chevron: {
32081
- right: "bi bi-chevron-right",
32082
- down: "bi bi-chevron-down"
32083
- },
32084
- "clear-text": "bi bi-x-circle-fill",
32085
- close: "bi bi-x",
32086
- confirm: "bi bi-check",
32087
- copy: "bi bi-copy",
32088
- edit: "bi bi-pencil-square",
32089
- error: "bi bi-exclamation-circle-fill",
32090
- file: "bi bi-file-code",
32091
- folder: "bi bi-folder",
32092
- info: "bi bi-info-circle",
32093
- input: "bi bi-terminal",
32094
- limits: {
32095
- messages: "bi bi-chat-right-text",
32096
- custom: "bi bi-exclamation-triangle",
32097
- operator: "bi bi-person-workspace",
32098
- tokens: "bi bi-list",
32099
- time: "bi bi-clock",
32100
- execution: "bi bi-stopwatch"
32101
- },
32102
- link: "bi bi-link-45deg",
32103
- logging: loggingIcons,
32104
- metadata: "bi bi-table",
32105
- model: "bi bi-grid-3x3-gap",
32106
- navbar: {
32107
- home: "ii inspect-icon-home",
32108
- back: "ii inspect-icon-back",
32109
- forward: "ii inspect-icon-forward"
32110
- },
32111
- next: "bi bi-chevron-right",
32112
- noSamples: "bi bi-ban",
32113
- pendingTask: "bi bi-clock-fill",
32114
- play: "bi bi-play-fill",
32115
- previous: "bi bi-chevron-left",
32116
- refuse: "bi bi-ban",
32117
- role: {
32118
- tool: "bi bi-tools"
32119
- },
32120
- sample: "bi bi-database",
32121
- samples: "bi bi-file-spreadsheet",
32122
- sandbox: "bi bi-box-seam",
32123
- scorer: "bi bi-calculator",
32124
- search: "bi bi-search",
32125
- solvers: {
32126
- use_tools: "bi bi-tools"
32127
- },
32128
- success: "bi bi-check-circle-fill",
32129
- tree: {
32130
- open: "bi bi-caret-down-fill",
32131
- closed: "bi bi-caret-right-fill"
32132
- }
32133
- };
32134
32171
  const header$2 = "_header_oy6cz_1";
32135
32172
  const bordered$1 = "_bordered_oy6cz_11";
32136
32173
  const breadcrumbs = "_breadcrumbs_oy6cz_15";
@@ -32140,7 +32177,7 @@ const right$2 = "_right_oy6cz_41";
32140
32177
  const toolbarButton = "_toolbarButton_oy6cz_50";
32141
32178
  const pathContainer = "_pathContainer_oy6cz_58";
32142
32179
  const hasChildren = "_hasChildren_oy6cz_62";
32143
- const styles$1i = {
32180
+ const styles$1h = {
32144
32181
  header: header$2,
32145
32182
  bordered: bordered$1,
32146
32183
  breadcrumbs,
@@ -32278,38 +32315,38 @@ const Navbar = ({ bordered: bordered2 = true, children: children2 }) => {
32278
32315
  className: clsx(
32279
32316
  "text-size-smaller",
32280
32317
  "header-nav",
32281
- styles$1i.header,
32282
- bordered2 ? styles$1i.bordered : void 0
32318
+ styles$1h.header,
32319
+ bordered2 ? styles$1h.bordered : void 0
32283
32320
  ),
32284
32321
  "aria-label": "breadcrumb",
32285
32322
  "data-unsearchable": true,
32286
32323
  children: [
32287
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: clsx(styles$1i.left), children: [
32288
- backUrl && /* @__PURE__ */ jsxRuntimeExports.jsx(Link, { to: backUrl, className: clsx(styles$1i.toolbarButton), children: /* @__PURE__ */ jsxRuntimeExports.jsx("i", { className: clsx(ApplicationIcons.navbar.back) }) }),
32324
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: clsx(styles$1h.left), children: [
32325
+ backUrl && /* @__PURE__ */ jsxRuntimeExports.jsx(Link, { to: backUrl, className: clsx(styles$1h.toolbarButton), children: /* @__PURE__ */ jsxRuntimeExports.jsx("i", { className: clsx(ApplicationIcons.navbar.back) }) }),
32289
32326
  !singleFileMode && /* @__PURE__ */ jsxRuntimeExports.jsx(
32290
32327
  Link,
32291
32328
  {
32292
32329
  to: scansRoute(),
32293
- className: clsx(styles$1i.toolbarButton),
32330
+ className: clsx(styles$1h.toolbarButton),
32294
32331
  onClick: () => {
32295
32332
  },
32296
32333
  children: /* @__PURE__ */ jsxRuntimeExports.jsx("i", { className: clsx(ApplicationIcons.navbar.home) })
32297
32334
  }
32298
32335
  ),
32299
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$1i.pathContainer), ref: pathContainerRef, children: resultsDir ? /* @__PURE__ */ jsxRuntimeExports.jsx("ol", { className: clsx("breadcrumb", styles$1i.breadcrumbs), children: visibleSegments.map((segment2, index) => {
32336
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$1h.pathContainer), ref: pathContainerRef, children: resultsDir ? /* @__PURE__ */ jsxRuntimeExports.jsx("ol", { className: clsx("breadcrumb", styles$1h.breadcrumbs), children: visibleSegments.map((segment2, index) => {
32300
32337
  const isLast = index === visibleSegments.length - 1;
32301
32338
  const shouldShowEllipsis = showEllipsis && index === 1 && visibleSegments.length >= 2;
32302
32339
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(Fragment, { children: [
32303
- shouldShowEllipsis && /* @__PURE__ */ jsxRuntimeExports.jsx("li", { className: clsx("breadcrumb-item", styles$1i.ellipsis), children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: "..." }) }),
32340
+ shouldShowEllipsis && /* @__PURE__ */ jsxRuntimeExports.jsx("li", { className: clsx("breadcrumb-item", styles$1h.ellipsis), children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: "..." }) }),
32304
32341
  /* @__PURE__ */ jsxRuntimeExports.jsx(
32305
32342
  "li",
32306
32343
  {
32307
32344
  className: clsx(
32308
- styles$1i.pathLink,
32345
+ styles$1h.pathLink,
32309
32346
  "breadcrumb-item",
32310
32347
  isLast && !singleFileMode ? "active" : void 0
32311
32348
  ),
32312
- children: segment2.url && !singleFileMode && !isLast ? /* @__PURE__ */ jsxRuntimeExports.jsx(Link, { to: segment2.url, children: segment2.text }) : /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: clsx(styles$1i.pathSegment), children: segment2.text })
32349
+ children: segment2.url && !singleFileMode && !isLast ? /* @__PURE__ */ jsxRuntimeExports.jsx(Link, { to: segment2.url, children: segment2.text }) : /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: clsx(styles$1h.pathSegment), children: segment2.text })
32313
32350
  }
32314
32351
  )
32315
32352
  ] }, index);
@@ -32319,8 +32356,8 @@ const Navbar = ({ bordered: bordered2 = true, children: children2 }) => {
32319
32356
  "div",
32320
32357
  {
32321
32358
  className: clsx(
32322
- styles$1i.right,
32323
- children2 ? styles$1i.hasChildren : void 0
32359
+ styles$1h.right,
32360
+ children2 ? styles$1h.hasChildren : void 0
32324
32361
  ),
32325
32362
  children: children2
32326
32363
  }
@@ -33794,19 +33831,19 @@ const Card = ({ id: id2, children: children2, className: className2 }) => {
33794
33831
  };
33795
33832
  const container$g = "_container_1cz5u_1";
33796
33833
  const traceback = "_traceback_1cz5u_5";
33797
- const styles$1h = {
33834
+ const styles$1g = {
33798
33835
  container: container$g,
33799
33836
  traceback
33800
33837
  };
33801
33838
  const ErrorPanel$1 = ({ error: error2, traceback: traceback2 }) => {
33802
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(Card, { className: clsx(styles$1h.container), children: [
33839
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(Card, { className: clsx(styles$1g.container), children: [
33803
33840
  /* @__PURE__ */ jsxRuntimeExports.jsx(CardHeader, { type: "modern", children: "Error" }),
33804
33841
  /* @__PURE__ */ jsxRuntimeExports.jsxs(CardBody, { children: [
33805
33842
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx("text-size-smaller"), children: error2 }),
33806
33843
  traceback2 && /* @__PURE__ */ jsxRuntimeExports.jsx(
33807
33844
  ANSIDisplay,
33808
33845
  {
33809
- className: clsx(styles$1h.traceback, "text-size-smaller"),
33846
+ className: clsx(styles$1g.traceback, "text-size-smaller"),
33810
33847
  output: traceback2
33811
33848
  }
33812
33849
  )
@@ -33817,7 +33854,7 @@ const labeledValue = "_labeledValue_6obbb_1";
33817
33854
  const row$3 = "_row_6obbb_6";
33818
33855
  const column = "_column_6obbb_10";
33819
33856
  const labeledValueLabel = "_labeledValueLabel_6obbb_14";
33820
- const styles$1g = {
33857
+ const styles$1f = {
33821
33858
  labeledValue,
33822
33859
  row: row$3,
33823
33860
  column,
@@ -33835,8 +33872,8 @@ const LabeledValue = ({
33835
33872
  "div",
33836
33873
  {
33837
33874
  className: clsx(
33838
- styles$1g.labeledValue,
33839
- layout === "column" ? styles$1g.column : styles$1g.row,
33875
+ styles$1f.labeledValue,
33876
+ layout === "column" ? styles$1f.column : styles$1f.row,
33840
33877
  className2
33841
33878
  ),
33842
33879
  style: {
@@ -33847,14 +33884,14 @@ const LabeledValue = ({
33847
33884
  "div",
33848
33885
  {
33849
33886
  className: clsx(
33850
- styles$1g.labeledValueLabel,
33887
+ styles$1f.labeledValueLabel,
33851
33888
  "text-style-label",
33852
33889
  "text-style-secondary"
33853
33890
  ),
33854
33891
  children: label2
33855
33892
  }
33856
33893
  ),
33857
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$1g.labeledValueValue), style: { ...valueStyle }, children: children2 })
33894
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$1f.labeledValueValue), style: { ...valueStyle }, children: children2 })
33858
33895
  ]
33859
33896
  }
33860
33897
  );
@@ -37081,7 +37118,7 @@ const moreToggleButton = "_moreToggleButton_1ka1g_36";
37081
37118
  const separator$4 = "_separator_1ka1g_44";
37082
37119
  const inlineRight = "_inlineRight_1ka1g_50";
37083
37120
  const blockLeft = "_blockLeft_1ka1g_56";
37084
- const styles$1f = {
37121
+ const styles$1e = {
37085
37122
  expandablePanel,
37086
37123
  expandableBordered,
37087
37124
  expandableCollapsed,
@@ -37133,10 +37170,10 @@ const ExpandablePanel = memo$1(
37133
37170
  style: baseStyles,
37134
37171
  ref: contentRef,
37135
37172
  className: clsx(
37136
- styles$1f.expandablePanel,
37137
- collapsed ? styles$1f.expandableCollapsed : void 0,
37138
- border ? styles$1f.expandableBordered : void 0,
37139
- showToggle ? styles$1f.padBottom : void 0,
37173
+ styles$1e.expandablePanel,
37174
+ collapsed ? styles$1e.expandableCollapsed : void 0,
37175
+ border ? styles$1e.expandableBordered : void 0,
37176
+ showToggle ? styles$1e.padBottom : void 0,
37140
37177
  className2
37141
37178
  ),
37142
37179
  children: [
@@ -37162,7 +37199,7 @@ const ExpandablePanel = memo$1(
37162
37199
  position: "block-left"
37163
37200
  }
37164
37201
  ) }),
37165
- showToggle && layout === "inline-right" && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$1f.separator) })
37202
+ showToggle && layout === "inline-right" && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$1e.separator) })
37166
37203
  ] });
37167
37204
  }
37168
37205
  );
@@ -37181,15 +37218,15 @@ const MoreToggle = ({
37181
37218
  "div",
37182
37219
  {
37183
37220
  className: clsx(
37184
- styles$1f.moreToggle,
37185
- border ? styles$1f.bordered : void 0,
37186
- position === "inline-right" ? styles$1f.inlineRight : styles$1f.blockLeft
37221
+ styles$1e.moreToggle,
37222
+ border ? styles$1e.bordered : void 0,
37223
+ position === "inline-right" ? styles$1e.inlineRight : styles$1e.blockLeft
37187
37224
  ),
37188
37225
  style: style2,
37189
37226
  children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
37190
37227
  "button",
37191
37228
  {
37192
- className: clsx(styles$1f.moreToggleButton, "text-size-smallest"),
37229
+ className: clsx(styles$1e.moreToggleButton, "text-size-smallest"),
37193
37230
  onClick: handleClick,
37194
37231
  children: [
37195
37232
  text2,
@@ -37286,7 +37323,7 @@ const keyPairBordered = "_keyPairBordered_qjlxf_9";
37286
37323
  const key = "_key_qjlxf_1";
37287
37324
  const pre = "_pre_qjlxf_19";
37288
37325
  const treeIcon = "_treeIcon_qjlxf_23";
37289
- const styles$1e = {
37326
+ const styles$1d = {
37290
37327
  keyPairContainer,
37291
37328
  keyPairBordered,
37292
37329
  key,
@@ -37297,7 +37334,7 @@ const visible = "_visible_tm52u_1";
37297
37334
  const hidden$2 = "_hidden_tm52u_5";
37298
37335
  const pills = "_pills_tm52u_9";
37299
37336
  const pill = "_pill_tm52u_9";
37300
- const styles$1d = {
37337
+ const styles$1c = {
37301
37338
  visible,
37302
37339
  hidden: hidden$2,
37303
37340
  pills,
@@ -37327,7 +37364,7 @@ const NavPills = ({ id: id2, children: children2 }) => {
37327
37364
  return /* @__PURE__ */ jsxRuntimeExports.jsx(
37328
37365
  "div",
37329
37366
  {
37330
- className: child["props"]?.title === activeItem ? styles$1d.visible : styles$1d.hidden,
37367
+ className: child["props"]?.title === activeItem ? styles$1c.visible : styles$1c.hidden,
37331
37368
  children: child
37332
37369
  },
37333
37370
  `nav-pill-container-${idx}`
@@ -37337,7 +37374,7 @@ const NavPills = ({ id: id2, children: children2 }) => {
37337
37374
  /* @__PURE__ */ jsxRuntimeExports.jsx(
37338
37375
  "ul",
37339
37376
  {
37340
- className: clsx("nav", "nav-pills", styles$1d.pills),
37377
+ className: clsx("nav", "nav-pills", styles$1c.pills),
37341
37378
  role: "tablist",
37342
37379
  "aria-orientation": "horizontal",
37343
37380
  children: navPills
@@ -37373,7 +37410,7 @@ const NavPill = ({
37373
37410
  "nav-link",
37374
37411
  "text-style-label",
37375
37412
  active ? "active " : "",
37376
- styles$1d.pill
37413
+ styles$1c.pill
37377
37414
  ),
37378
37415
  "data-target": title2,
37379
37416
  onClick: handleClick,
@@ -37389,7 +37426,7 @@ const Buckets = {
37389
37426
  final: 1e3
37390
37427
  };
37391
37428
  const copyButton = "_copyButton_1goi8_1";
37392
- const styles$1c = {
37429
+ const styles$1b = {
37393
37430
  copyButton
37394
37431
  };
37395
37432
  const CopyButton = ({
@@ -37419,7 +37456,7 @@ const CopyButton = ({
37419
37456
  "button",
37420
37457
  {
37421
37458
  type: "button",
37422
- className: clsx("copy-button", styles$1c.copyButton, className2),
37459
+ className: clsx("copy-button", styles$1b.copyButton, className2),
37423
37460
  onClick: () => {
37424
37461
  void handleClick();
37425
37462
  },
@@ -37444,7 +37481,7 @@ const indented = "_indented_b8oe1_29";
37444
37481
  const copyLink = "_copyLink_b8oe1_33";
37445
37482
  const metadataLabel = "_metadataLabel_b8oe1_43";
37446
37483
  const hover$1 = "_hover_b8oe1_47";
37447
- const styles$1b = {
37484
+ const styles$1a = {
37448
37485
  message,
37449
37486
  systemRole,
37450
37487
  messageGrid,
@@ -39324,7 +39361,7 @@ function smartquotes(state) {
39324
39361
  }
39325
39362
  }
39326
39363
  function text_join(state) {
39327
- let curr, last;
39364
+ let curr, last2;
39328
39365
  const blockTokens = state.tokens;
39329
39366
  const l2 = blockTokens.length;
39330
39367
  for (let j2 = 0; j2 < l2; j2++) {
@@ -39336,18 +39373,18 @@ function text_join(state) {
39336
39373
  tokens[curr].type = "text";
39337
39374
  }
39338
39375
  }
39339
- for (curr = last = 0; curr < max2; curr++) {
39376
+ for (curr = last2 = 0; curr < max2; curr++) {
39340
39377
  if (tokens[curr].type === "text" && curr + 1 < max2 && tokens[curr + 1].type === "text") {
39341
39378
  tokens[curr + 1].content = tokens[curr].content + tokens[curr + 1].content;
39342
39379
  } else {
39343
- if (curr !== last) {
39344
- tokens[last] = tokens[curr];
39380
+ if (curr !== last2) {
39381
+ tokens[last2] = tokens[curr];
39345
39382
  }
39346
- last++;
39383
+ last2++;
39347
39384
  }
39348
39385
  }
39349
- if (curr !== last) {
39350
- tokens.length = last;
39386
+ if (curr !== last2) {
39387
+ tokens.length = last2;
39351
39388
  }
39352
39389
  }
39353
39390
  }
@@ -39498,32 +39535,32 @@ StateBlock.prototype.getLines = function getLines(begin, end2, indent, keepLastL
39498
39535
  for (let i2 = 0, line2 = begin; line2 < end2; line2++, i2++) {
39499
39536
  let lineIndent = 0;
39500
39537
  const lineStart = this.bMarks[line2];
39501
- let first = lineStart;
39502
- let last;
39538
+ let first2 = lineStart;
39539
+ let last2;
39503
39540
  if (line2 + 1 < end2 || keepLastLF) {
39504
- last = this.eMarks[line2] + 1;
39541
+ last2 = this.eMarks[line2] + 1;
39505
39542
  } else {
39506
- last = this.eMarks[line2];
39543
+ last2 = this.eMarks[line2];
39507
39544
  }
39508
- while (first < last && lineIndent < indent) {
39509
- const ch = this.src.charCodeAt(first);
39545
+ while (first2 < last2 && lineIndent < indent) {
39546
+ const ch = this.src.charCodeAt(first2);
39510
39547
  if (isSpace(ch)) {
39511
39548
  if (ch === 9) {
39512
39549
  lineIndent += 4 - (lineIndent + this.bsCount[line2]) % 4;
39513
39550
  } else {
39514
39551
  lineIndent++;
39515
39552
  }
39516
- } else if (first - lineStart < this.tShift[line2]) {
39553
+ } else if (first2 - lineStart < this.tShift[line2]) {
39517
39554
  lineIndent++;
39518
39555
  } else {
39519
39556
  break;
39520
39557
  }
39521
- first++;
39558
+ first2++;
39522
39559
  }
39523
39560
  if (lineIndent > indent) {
39524
- queue[i2] = new Array(lineIndent - indent + 1).join(" ") + this.src.slice(first, last);
39561
+ queue[i2] = new Array(lineIndent - indent + 1).join(" ") + this.src.slice(first2, last2);
39525
39562
  } else {
39526
- queue[i2] = this.src.slice(first, last);
39563
+ queue[i2] = this.src.slice(first2, last2);
39527
39564
  }
39528
39565
  }
39529
39566
  return queue.join("");
@@ -39722,7 +39759,7 @@ function code$2(state, startLine, endLine) {
39722
39759
  return false;
39723
39760
  }
39724
39761
  let nextLine = startLine + 1;
39725
- let last = nextLine;
39762
+ let last2 = nextLine;
39726
39763
  while (nextLine < endLine) {
39727
39764
  if (state.isEmpty(nextLine)) {
39728
39765
  nextLine++;
@@ -39730,14 +39767,14 @@ function code$2(state, startLine, endLine) {
39730
39767
  }
39731
39768
  if (state.sCount[nextLine] - state.blkIndent >= 4) {
39732
39769
  nextLine++;
39733
- last = nextLine;
39770
+ last2 = nextLine;
39734
39771
  continue;
39735
39772
  }
39736
39773
  break;
39737
39774
  }
39738
- state.line = last;
39775
+ state.line = last2;
39739
39776
  const token2 = state.push("code_block", "code", 0);
39740
- token2.content = state.getLines(startLine, last, 4 + state.blkIndent, false) + "\n";
39777
+ token2.content = state.getLines(startLine, last2, 4 + state.blkIndent, false) + "\n";
39741
39778
  token2.map = [startLine, state.line];
39742
39779
  return true;
39743
39780
  }
@@ -41557,25 +41594,25 @@ function link_pairs(state) {
41557
41594
  }
41558
41595
  }
41559
41596
  function fragments_join(state) {
41560
- let curr, last;
41597
+ let curr, last2;
41561
41598
  let level = 0;
41562
41599
  const tokens = state.tokens;
41563
41600
  const max2 = state.tokens.length;
41564
- for (curr = last = 0; curr < max2; curr++) {
41601
+ for (curr = last2 = 0; curr < max2; curr++) {
41565
41602
  if (tokens[curr].nesting < 0) level--;
41566
41603
  tokens[curr].level = level;
41567
41604
  if (tokens[curr].nesting > 0) level++;
41568
41605
  if (tokens[curr].type === "text" && curr + 1 < max2 && tokens[curr + 1].type === "text") {
41569
41606
  tokens[curr + 1].content = tokens[curr].content + tokens[curr + 1].content;
41570
41607
  } else {
41571
- if (curr !== last) {
41572
- tokens[last] = tokens[curr];
41608
+ if (curr !== last2) {
41609
+ tokens[last2] = tokens[curr];
41573
41610
  }
41574
- last++;
41611
+ last2++;
41575
41612
  }
41576
41613
  }
41577
- if (curr !== last) {
41578
- tokens.length = last;
41614
+ if (curr !== last2) {
41615
+ tokens.length = last2;
41579
41616
  }
41580
41617
  }
41581
41618
  const _rules = [
@@ -42928,9 +42965,9 @@ function unescapeCodeHtmlEntities(str) {
42928
42965
  }
42929
42966
  );
42930
42967
  }
42931
- const content$1 = "_content_13ihw_1";
42932
- const styles$1a = {
42933
- content: content$1
42968
+ const content = "_content_13ihw_1";
42969
+ const styles$19 = {
42970
+ content
42934
42971
  };
42935
42972
  forwardRef(
42936
42973
  ({ text: text2, style: style2, className: className2 }, ref2) => {
@@ -42938,7 +42975,7 @@ forwardRef(
42938
42975
  "pre",
42939
42976
  {
42940
42977
  ref: ref2,
42941
- className: clsx(styles$1a.content, "text-size-smaller", className2),
42978
+ className: clsx(styles$19.content, "text-size-smaller", className2),
42942
42979
  style: style2,
42943
42980
  children: text2
42944
42981
  }
@@ -42999,23 +43036,23 @@ const parsedJson = (text2) => {
42999
43036
  return void 0;
43000
43037
  };
43001
43038
  const contentData = "_contentData_1sd1z_1";
43002
- const styles$19 = {
43039
+ const styles$18 = {
43003
43040
  contentData
43004
43041
  };
43005
43042
  const webSearch = "_webSearch_1376z_1";
43006
43043
  const query$1 = "_query_1376z_8";
43007
- const styles$18 = {
43044
+ const styles$17 = {
43008
43045
  webSearch,
43009
43046
  query: query$1
43010
43047
  };
43011
43048
  const WebSearch = ({ query: query2 }) => {
43012
- return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: clsx(styles$18.webSearch, "text-size-smaller"), children: [
43049
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: clsx(styles$17.webSearch, "text-size-smaller"), children: [
43013
43050
  /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: clsx("text-style-label", "text-style-secondary"), children: "Web Search:" }),
43014
- /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: clsx(styles$18.query, "text-size-smallest"), children: query2 })
43051
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: clsx(styles$17.query, "text-size-smallest"), children: query2 })
43015
43052
  ] });
43016
43053
  };
43017
43054
  const result$1 = "_result_1mixg_12";
43018
- const styles$17 = {
43055
+ const styles$16 = {
43019
43056
  result: result$1
43020
43057
  };
43021
43058
  const WebSearchResults = ({
@@ -43026,7 +43063,7 @@ const WebSearchResults = ({
43026
43063
  "div",
43027
43064
  {
43028
43065
  className: clsx(
43029
- styles$17.label,
43066
+ styles$16.label,
43030
43067
  "text-style-label",
43031
43068
  "text-style-secondary",
43032
43069
  "text-size-smaller"
@@ -43034,10 +43071,10 @@ const WebSearchResults = ({
43034
43071
  children: "Results"
43035
43072
  }
43036
43073
  ),
43037
- /* @__PURE__ */ jsxRuntimeExports.jsx("ol", { className: clsx(styles$17.results, "text-size-smaller"), children: results.map((result2, index) => /* @__PURE__ */ jsxRuntimeExports.jsx(
43074
+ /* @__PURE__ */ jsxRuntimeExports.jsx("ol", { className: clsx(styles$16.results, "text-size-smaller"), children: results.map((result2, index) => /* @__PURE__ */ jsxRuntimeExports.jsx(
43038
43075
  "li",
43039
43076
  {
43040
- className: clsx(styles$17.result, "text-style-secondary"),
43077
+ className: clsx(styles$16.result, "text-style-secondary"),
43041
43078
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(
43042
43079
  "a",
43043
43080
  {
@@ -43061,17 +43098,17 @@ const ContentDataView = ({ id: id2, contentData: contentData2 }) => {
43061
43098
  );
43062
43099
  if (!renderer) {
43063
43100
  const { encrypted_content, ...record } = renderableData;
43064
- return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$19.contentData), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
43101
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$18.contentData), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
43065
43102
  RecordTree,
43066
43103
  {
43067
43104
  id: `${id2}-tree`,
43068
43105
  record,
43069
- className: clsx(styles$19.data),
43106
+ className: clsx(styles$18.data),
43070
43107
  defaultExpandLevel: 0
43071
43108
  }
43072
43109
  ) });
43073
43110
  }
43074
- return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$19.contentData), children: renderer.render(renderableData) });
43111
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$18.contentData), children: renderer.render(renderableData) });
43075
43112
  };
43076
43113
  const webSearchServerToolRenderer = {
43077
43114
  name: "WebSearch",
@@ -43113,7 +43150,7 @@ const serverToolRenderer = {
43113
43150
  {
43114
43151
  id: data2.name || "server-tool",
43115
43152
  record: data2,
43116
- className: clsx(styles$19.data)
43153
+ className: clsx(styles$18.data)
43117
43154
  }
43118
43155
  )
43119
43156
  ] });
@@ -43131,7 +43168,7 @@ const documentFrame = "_documentFrame_1576h_1";
43131
43168
  const documentFrameTitle = "_documentFrameTitle_1576h_9";
43132
43169
  const downloadLink = "_downloadLink_1576h_16";
43133
43170
  const imageDocument = "_imageDocument_1576h_21";
43134
- const styles$16 = {
43171
+ const styles$15 = {
43135
43172
  documentFrame,
43136
43173
  documentFrameTitle,
43137
43174
  downloadLink,
@@ -43146,7 +43183,7 @@ const ContentDocumentView = ({
43146
43183
  return /* @__PURE__ */ jsxRuntimeExports.jsx(ContentDocumentFrame, { document: document2, downloadable: canDownloadFiles, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
43147
43184
  "img",
43148
43185
  {
43149
- className: clsx(styles$16.imageDocument),
43186
+ className: clsx(styles$15.imageDocument),
43150
43187
  src: document2.document,
43151
43188
  alt: document2.filename,
43152
43189
  id: id2
@@ -43171,17 +43208,17 @@ const ContentDocumentFrame = ({
43171
43208
  "div",
43172
43209
  {
43173
43210
  className: clsx(
43174
- styles$16.documentFrame,
43211
+ styles$15.documentFrame,
43175
43212
  "text-size-small",
43176
43213
  "text-style-secondary"
43177
43214
  ),
43178
43215
  children: [
43179
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: clsx(styles$16.documentFrameTitle), children: [
43216
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: clsx(styles$15.documentFrameTitle), children: [
43180
43217
  /* @__PURE__ */ jsxRuntimeExports.jsx("i", { className: clsx(iconForMimeType(document2.mime_type)) }),
43181
43218
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: downloadable ? /* @__PURE__ */ jsxRuntimeExports.jsx(
43182
43219
  "a",
43183
43220
  {
43184
- className: clsx(styles$16.downloadLink),
43221
+ className: clsx(styles$15.downloadLink),
43185
43222
  onClick: () => {
43186
43223
  },
43187
43224
  children: document2.filename
@@ -43194,7 +43231,7 @@ const ContentDocumentFrame = ({
43194
43231
  );
43195
43232
  };
43196
43233
  const jsonMessage = "_jsonMessage_oxf8d_1";
43197
- const styles$15 = {
43234
+ const styles$14 = {
43198
43235
  jsonMessage
43199
43236
  };
43200
43237
  const JsonMessageContent = ({
@@ -43207,7 +43244,7 @@ const JsonMessageContent = ({
43207
43244
  {
43208
43245
  id: id2,
43209
43246
  record: json2,
43210
- className: clsx(styles$15.jsonMessage, className2),
43247
+ className: clsx(styles$14.jsonMessage, className2),
43211
43248
  useBorders: false
43212
43249
  }
43213
43250
  );
@@ -43219,7 +43256,7 @@ const decodeHtmlEntities = (text2) => {
43219
43256
  };
43220
43257
  const citations = "_citations_1ggvf_1";
43221
43258
  const citationLink = "_citationLink_1ggvf_9";
43222
- const styles$14 = {
43259
+ const styles$13 = {
43223
43260
  citations,
43224
43261
  citationLink
43225
43262
  };
@@ -43227,7 +43264,7 @@ const MessageCitations = ({ citations: citations2 }) => {
43227
43264
  if (citations2.length === 0) {
43228
43265
  return void 0;
43229
43266
  }
43230
- return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$14.citations, "text-size-smallest"), children: citations2.map((citation, index) => /* @__PURE__ */ jsxRuntimeExports.jsxs(Fragment, { children: [
43267
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$13.citations, "text-size-smallest"), children: citations2.map((citation, index) => /* @__PURE__ */ jsxRuntimeExports.jsxs(Fragment, { children: [
43231
43268
  /* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: index + 1 }),
43232
43269
  /* @__PURE__ */ jsxRuntimeExports.jsx(MessageCitation, { citation })
43233
43270
  ] }, index)) });
@@ -43247,7 +43284,7 @@ const UrlCitation = ({
43247
43284
  href: citation.url,
43248
43285
  target: "_blank",
43249
43286
  rel: "noopener noreferrer",
43250
- className: clsx(styles$14.citationLink),
43287
+ className: clsx(styles$13.citationLink),
43251
43288
  title: citation.cited_text && typeof citation.cited_text === "string" ? `${citation.cited_text}
43252
43289
  ${citation.url}` : citation.url,
43253
43290
  children: children2
@@ -43256,7 +43293,7 @@ ${citation.url}` : citation.url,
43256
43293
  const OtherCitation = ({ children: children2 }) => /* @__PURE__ */ jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: children2 });
43257
43294
  const contentImage = "_contentImage_8rgix_1";
43258
43295
  const reasoning = "_reasoning_8rgix_6";
43259
- const styles$13 = {
43296
+ const styles$12 = {
43260
43297
  contentImage,
43261
43298
  reasoning
43262
43299
  };
@@ -43267,7 +43304,7 @@ const args = "_args_1792k_22";
43267
43304
  const argLabel = "_argLabel_1792k_31";
43268
43305
  const error$2 = "_error_1792k_35";
43269
43306
  const toolPanel = "_toolPanel_1792k_40";
43270
- const styles$12 = {
43307
+ const styles$11 = {
43271
43308
  mcpToolUse,
43272
43309
  title: title$3,
43273
43310
  titleText,
@@ -43288,23 +43325,23 @@ const McpToolUse = ({ id: id2, content: content2, className: className2 }) => {
43288
43325
  const titleStr = content2.context ? `${content2.context} — ${content2.name}()` : `${content2.name}()`;
43289
43326
  const listToolsResult = maybeListTools(content2);
43290
43327
  const webSearchResult = maybeWebSearchResult(content2);
43291
- return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { id: id2, className: clsx(styles$12.mcpToolUse, className2), children: [
43328
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { id: id2, className: clsx(styles$11.mcpToolUse, className2), children: [
43292
43329
  /* @__PURE__ */ jsxRuntimeExports.jsxs(
43293
43330
  "div",
43294
43331
  {
43295
43332
  className: clsx(
43296
- styles$12.title,
43333
+ styles$11.title,
43297
43334
  "text-size-small",
43298
43335
  "text-style-secondary"
43299
43336
  ),
43300
43337
  children: [
43301
43338
  /* @__PURE__ */ jsxRuntimeExports.jsx("i", { className: ApplicationIcons.role.tool }),
43302
- /* @__PURE__ */ jsxRuntimeExports.jsx("pre", { className: styles$12.titleText, children: titleStr }),
43303
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$12.type, children: content2.type })
43339
+ /* @__PURE__ */ jsxRuntimeExports.jsx("pre", { className: styles$11.titleText, children: titleStr }),
43340
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$11.type, children: content2.type })
43304
43341
  ]
43305
43342
  }
43306
43343
  ),
43307
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: styles$12.args, children: [
43344
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: styles$11.args, children: [
43308
43345
  Object.keys(args2).map((key2, index) => {
43309
43346
  const value2 = args2[key2];
43310
43347
  let valueRecord = void 0;
@@ -43323,7 +43360,7 @@ const McpToolUse = ({ id: id2, content: content2, className: className2 }) => {
43323
43360
  }),
43324
43361
  webSearchResult ? /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
43325
43362
  /* @__PURE__ */ jsxRuntimeExports.jsx(LabelDiv, { label: "results" }),
43326
- /* @__PURE__ */ jsxRuntimeExports.jsx(ValueDiv, { children: webSearchResult.result.map((result2, index) => /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$12.result, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
43363
+ /* @__PURE__ */ jsxRuntimeExports.jsx(ValueDiv, { children: webSearchResult.result.map((result2, index) => /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$11.result, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
43327
43364
  "a",
43328
43365
  {
43329
43366
  href: result2.url,
@@ -43338,7 +43375,7 @@ const McpToolUse = ({ id: id2, content: content2, className: className2 }) => {
43338
43375
  {
43339
43376
  id: `${id2}-output`,
43340
43377
  collapse: true,
43341
- className: clsx(styles$12.toolPanel),
43378
+ className: clsx(styles$11.toolPanel),
43342
43379
  children: [
43343
43380
  /* @__PURE__ */ jsxRuntimeExports.jsx(LabelDiv, { label: tool2.name }),
43344
43381
  /* @__PURE__ */ jsxRuntimeExports.jsxs(ValueDiv, { children: [
@@ -43356,7 +43393,7 @@ const McpToolUse = ({ id: id2, content: content2, className: className2 }) => {
43356
43393
  }
43357
43394
  ) })) : void 0
43358
43395
  ] }),
43359
- content2.error ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$12.error, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { children: [
43396
+ content2.error ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$11.error, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { children: [
43360
43397
  "Error: ",
43361
43398
  content2.error
43362
43399
  ] }) }) : !listToolsResult && !webSearchResult ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx("text-size-small"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(ExpandablePanel, { id: `${id2}-output`, collapse: true, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
@@ -43413,7 +43450,7 @@ const LabelDiv = ({ label: label2 }) => {
43413
43450
  "div",
43414
43451
  {
43415
43452
  className: clsx(
43416
- styles$12.argLabel,
43453
+ styles$11.argLabel,
43417
43454
  "text-style-secondary",
43418
43455
  "text-size-smaller"
43419
43456
  ),
@@ -43428,7 +43465,7 @@ const toolImage = "_toolImage_1wvgr_1";
43428
43465
  const output = "_output_1wvgr_6";
43429
43466
  const textOutput = "_textOutput_1wvgr_10";
43430
43467
  const textCode = "_textCode_1wvgr_18";
43431
- const styles$11 = {
43468
+ const styles$10 = {
43432
43469
  toolImage,
43433
43470
  output,
43434
43471
  textOutput,
@@ -43447,7 +43484,7 @@ const ToolOutput = ({ output: output2, className: className2 }) => {
43447
43484
  } else {
43448
43485
  if (out.image.startsWith("data:")) {
43449
43486
  outputs.push(
43450
- /* @__PURE__ */ jsxRuntimeExports.jsx("img", { className: clsx(styles$11.toolImage), src: out.image }, key2)
43487
+ /* @__PURE__ */ jsxRuntimeExports.jsx("img", { className: clsx(styles$10.toolImage), src: out.image }, key2)
43451
43488
  );
43452
43489
  } else {
43453
43490
  outputs.push(/* @__PURE__ */ jsxRuntimeExports.jsx(ToolTextOutput, { text: String(out.image) }, key2));
@@ -43459,14 +43496,14 @@ const ToolOutput = ({ output: output2, className: className2 }) => {
43459
43496
  /* @__PURE__ */ jsxRuntimeExports.jsx(ToolTextOutput, { text: String(output2) }, "tool-output-single")
43460
43497
  );
43461
43498
  }
43462
- return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$11.output, className2), children: outputs });
43499
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$10.output, className2), children: outputs });
43463
43500
  };
43464
43501
  const ToolTextOutput = ({ text: text2 }) => {
43465
43502
  if (isJson(text2)) {
43466
43503
  const obj = JSON.parse(text2);
43467
43504
  return /* @__PURE__ */ jsxRuntimeExports.jsx(JsonMessageContent, { id: `1-json`, json: obj });
43468
43505
  }
43469
- return /* @__PURE__ */ jsxRuntimeExports.jsx("pre", { className: clsx(styles$11.textOutput, "tool-output"), children: /* @__PURE__ */ jsxRuntimeExports.jsx("code", { className: clsx("sourceCode", styles$11.textCode), children: text2.trim() }) });
43506
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("pre", { className: clsx(styles$10.textOutput, "tool-output"), children: /* @__PURE__ */ jsxRuntimeExports.jsx("code", { className: clsx("sourceCode", styles$10.textCode), children: text2.trim() }) });
43470
43507
  };
43471
43508
  const isMessageContent = (content2) => {
43472
43509
  return typeof content2 === "object" && content2 !== null && "type" in content2 && typeof content2.type === "string";
@@ -43551,7 +43588,7 @@ const messageRenderers = {
43551
43588
  className: isLast ? "no-last-para-padding" : ""
43552
43589
  }
43553
43590
  ),
43554
- c2.citations ? /* @__PURE__ */ jsxRuntimeExports.jsx(MessageCitations, { citations: c2.citations }) : void 0
43591
+ c2.citations && c2.citations.length > 0 ? /* @__PURE__ */ jsxRuntimeExports.jsx(MessageCitations, { citations: c2.citations }) : void 0
43555
43592
  ] }, key2);
43556
43593
  }
43557
43594
  }
@@ -43565,7 +43602,7 @@ const messageRenderers = {
43565
43602
  } else if (!text2) {
43566
43603
  text2 = r2.summary || "Reasoning text not provided.";
43567
43604
  }
43568
- return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: clsx(styles$13.reasoning, "text-size-small"), children: [
43605
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: clsx(styles$12.reasoning, "text-size-small"), children: [
43569
43606
  /* @__PURE__ */ jsxRuntimeExports.jsx(
43570
43607
  "div",
43571
43608
  {
@@ -43588,7 +43625,7 @@ const messageRenderers = {
43588
43625
  render: (key2, content2, _isLast, _context) => {
43589
43626
  const c2 = content2;
43590
43627
  if (c2.image.startsWith("data:")) {
43591
- return /* @__PURE__ */ jsxRuntimeExports.jsx("img", { src: c2.image, className: styles$13.contentImage }, key2);
43628
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("img", { src: c2.image, className: styles$12.contentImage }, key2);
43592
43629
  } else {
43593
43630
  return /* @__PURE__ */ jsxRuntimeExports.jsx("code", { children: c2.image }, key2);
43594
43631
  }
@@ -43712,11 +43749,120 @@ const normalizeContent$2 = (contents2) => {
43712
43749
  return result2;
43713
43750
  };
43714
43751
  const isCitationWithRange = (citation) => Array.isArray(citation.cited_text);
43715
- const content = "_content_1b2jp_1";
43716
- const codeCompact = "_codeCompact_1b2jp_5";
43717
- const styles$10 = {
43718
- content,
43719
- codeCompact
43752
+ const defaultContext = () => {
43753
+ return {
43754
+ citeOffset: 0,
43755
+ citations: []
43756
+ };
43757
+ };
43758
+ const MessageContents = ({ message: message2 }) => {
43759
+ const context = defaultContext();
43760
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: message2.content && /* @__PURE__ */ jsxRuntimeExports.jsx(MessageContent, { contents: message2.content, context }) });
43761
+ };
43762
+ const ChatMessage = memo$1(
43763
+ ({ id: id2, message: message2, indented: indented2, allowLinking = true }) => {
43764
+ const messageUrl = void 0;
43765
+ const supportsLinking = useCallback(() => {
43766
+ return false;
43767
+ }, []);
43768
+ const toFullUrl = useCallback((url) => {
43769
+ return url;
43770
+ }, []);
43771
+ const collapse = message2.role === "system" || message2.role === "user";
43772
+ const [mouseOver, setMouseOver] = useState(false);
43773
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(
43774
+ "div",
43775
+ {
43776
+ className: clsx(
43777
+ message2.role,
43778
+ "text-size-base",
43779
+ styles$1a.message,
43780
+ message2.role === "system" ? styles$1a.systemRole : void 0,
43781
+ message2.role === "user" ? styles$1a.userRole : void 0,
43782
+ mouseOver ? styles$1a.hover : void 0
43783
+ ),
43784
+ onMouseEnter: () => setMouseOver(true),
43785
+ onMouseLeave: () => setMouseOver(false),
43786
+ children: [
43787
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(
43788
+ "div",
43789
+ {
43790
+ className: clsx(
43791
+ styles$1a.messageGrid,
43792
+ message2.role === "tool" ? styles$1a.toolMessageGrid : void 0,
43793
+ "text-style-label"
43794
+ ),
43795
+ children: [
43796
+ message2.role,
43797
+ message2.role === "tool" ? `: ${message2.function}` : "",
43798
+ supportsLinking() && messageUrl ? /* @__PURE__ */ jsxRuntimeExports.jsx(
43799
+ CopyButton,
43800
+ {
43801
+ icon: ApplicationIcons.link,
43802
+ value: toFullUrl(messageUrl),
43803
+ className: clsx(styles$1a.copyLink)
43804
+ }
43805
+ ) : ""
43806
+ ]
43807
+ }
43808
+ ),
43809
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(
43810
+ "div",
43811
+ {
43812
+ className: clsx(
43813
+ styles$1a.messageContents,
43814
+ indented2 ? styles$1a.indented : void 0
43815
+ ),
43816
+ children: [
43817
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
43818
+ ExpandablePanel,
43819
+ {
43820
+ id: `${id2}-message`,
43821
+ collapse,
43822
+ lines: collapse ? 15 : 25,
43823
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(MessageContents, { message: message2 }, `${id2}-contents`)
43824
+ }
43825
+ ),
43826
+ message2.metadata && Object.keys(message2.metadata).length > 0 ? /* @__PURE__ */ jsxRuntimeExports.jsx(
43827
+ LabeledValue,
43828
+ {
43829
+ label: "Metadata",
43830
+ className: clsx(styles$1a.metadataLabel, "text-size-smaller"),
43831
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(
43832
+ RecordTree,
43833
+ {
43834
+ record: message2.metadata,
43835
+ id: `${id2}-metadata`,
43836
+ defaultExpandLevel: 0
43837
+ }
43838
+ )
43839
+ }
43840
+ ) : ""
43841
+ ]
43842
+ }
43843
+ )
43844
+ ]
43845
+ }
43846
+ );
43847
+ }
43848
+ );
43849
+ const grid$2 = "_grid_ws7d1_1";
43850
+ const number = "_number_ws7d1_8";
43851
+ const user = "_user_ws7d1_12";
43852
+ const container$f = "_container_ws7d1_18";
43853
+ const first = "_first_ws7d1_26";
43854
+ const last = "_last_ws7d1_33";
43855
+ const label$4 = "_label_ws7d1_40";
43856
+ const highlight = "_highlight_ws7d1_44";
43857
+ const styles$$ = {
43858
+ grid: grid$2,
43859
+ number,
43860
+ user,
43861
+ container: container$f,
43862
+ first,
43863
+ last,
43864
+ label: label$4,
43865
+ highlight
43720
43866
  };
43721
43867
  (function(Prism2) {
43722
43868
  var envVars = "\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b";
@@ -44142,13 +44288,13 @@ const extractInput = (args2, inputDescriptor) => {
44142
44288
  };
44143
44289
  }
44144
44290
  };
44145
- const toolCallView = "_toolCallView_l6wae_1";
44146
- const styles$$ = {
44291
+ const toolCallView = "_toolCallView_x6cus_1";
44292
+ const styles$_ = {
44147
44293
  toolCallView
44148
44294
  };
44149
44295
  const todoList = "_todoList_1t8rx_1";
44150
44296
  const inProgress = "_inProgress_1t8rx_9";
44151
- const styles$_ = {
44297
+ const styles$Z = {
44152
44298
  todoList,
44153
44299
  inProgress
44154
44300
  };
@@ -44168,7 +44314,7 @@ const toToolTodos = (obj) => {
44168
44314
  };
44169
44315
  const TodoWriteInput = ({ contents: contents2, parentRef }) => {
44170
44316
  const todoItems = toToolTodos(contents2);
44171
- return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: parentRef, className: clsx(styles$_.todoList), children: todoItems.map((todo) => {
44317
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: parentRef, className: clsx(styles$Z.todoList), children: todoItems.map((todo) => {
44172
44318
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
44173
44319
  /* @__PURE__ */ jsxRuntimeExports.jsx(
44174
44320
  "i",
@@ -44183,9 +44329,9 @@ const TodoWriteInput = ({ contents: contents2, parentRef }) => {
44183
44329
  "span",
44184
44330
  {
44185
44331
  className: clsx(
44186
- styles$_.todoItem,
44332
+ styles$Z.todoItem,
44187
44333
  "text-size-smallest",
44188
- todo.status === "in_progress" ? styles$_.inProgress : void 0
44334
+ todo.status === "in_progress" ? styles$Z.inProgress : void 0
44189
44335
  ),
44190
44336
  children: todo.content
44191
44337
  }
@@ -44196,7 +44342,7 @@ const TodoWriteInput = ({ contents: contents2, parentRef }) => {
44196
44342
  const outputPre = "_outputPre_1jznn_1";
44197
44343
  const toolView = "_toolView_1jznn_7";
44198
44344
  const outputCode = "_outputCode_1jznn_15";
44199
- const styles$Z = {
44345
+ const styles$Y = {
44200
44346
  outputPre,
44201
44347
  toolView,
44202
44348
  outputCode
@@ -44213,7 +44359,7 @@ const ToolInput = (props) => {
44213
44359
  {
44214
44360
  markdown: toolCallView2.content,
44215
44361
  ref: sourceCodeRef,
44216
- className: clsx("tool-output", styles$Z.toolView, className2)
44362
+ className: clsx("tool-output", styles$Y.toolView, className2)
44217
44363
  }
44218
44364
  );
44219
44365
  } else {
@@ -44243,8 +44389,8 @@ const RenderTool = ({
44243
44389
  {
44244
44390
  className: clsx(
44245
44391
  "tool-output",
44246
- styles$Z.outputPre,
44247
- styles$Z.bottomMargin,
44392
+ styles$Y.outputPre,
44393
+ styles$Y.bottomMargin,
44248
44394
  className2
44249
44395
  ),
44250
44396
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(
@@ -44254,7 +44400,7 @@ const RenderTool = ({
44254
44400
  "source-code",
44255
44401
  "sourceCode",
44256
44402
  contentType ? `language-${contentType}` : void 0,
44257
- styles$Z.outputCode
44403
+ styles$Y.outputCode
44258
44404
  ),
44259
44405
  children: formattedContent
44260
44406
  }
@@ -44265,16 +44411,16 @@ const RenderTool = ({
44265
44411
  const image = "_image_1vcac_1";
44266
44412
  const toolTitle = "_toolTitle_1vcac_6";
44267
44413
  const description = "_description_1vcac_10";
44268
- const styles$Y = {
44414
+ const styles$X = {
44269
44415
  image,
44270
44416
  toolTitle,
44271
44417
  description
44272
44418
  };
44273
44419
  const ToolTitle = ({ title: title2, description: description2 }) => {
44274
44420
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(Fragment, { children: [
44275
- /* @__PURE__ */ jsxRuntimeExports.jsx("i", { className: clsx("bi", "bi-tools", styles$Y.image) }),
44276
- /* @__PURE__ */ jsxRuntimeExports.jsx("code", { className: clsx("text-size-small", styles$Y.toolTitle), children: title2 }),
44277
- description2 ? /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: clsx(styles$Y.description, "text-size-smallest"), children: [
44421
+ /* @__PURE__ */ jsxRuntimeExports.jsx("i", { className: clsx("bi", "bi-tools", styles$X.image) }),
44422
+ /* @__PURE__ */ jsxRuntimeExports.jsx("code", { className: clsx("text-size-small", styles$X.toolTitle), children: title2 }),
44423
+ description2 ? /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: clsx(styles$X.description, "text-size-smallest"), children: [
44278
44424
  "- ",
44279
44425
  description2
44280
44426
  ] }) : void 0
@@ -44323,7 +44469,7 @@ const ToolCallView = ({
44323
44469
  });
44324
44470
  const contents2 = mode !== "compact" ? input2 : input2 || functionCall;
44325
44471
  const context = defaultContext();
44326
- return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: clsx(styles$$.toolCallView), children: [
44472
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: clsx(styles$_.toolCallView), children: [
44327
44473
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { children: [
44328
44474
  mode !== "compact" && (!view || view.title) ? /* @__PURE__ */ jsxRuntimeExports.jsx(
44329
44475
  ToolTitle,
@@ -44374,21 +44520,43 @@ const normalizeContent$1 = (output2) => {
44374
44520
  ];
44375
44521
  }
44376
44522
  };
44377
- const defaultContext = () => {
44378
- return {
44379
- citeOffset: 0,
44380
- citations: []
44381
- };
44382
- };
44383
- const MessageContents = ({
44384
- id: id2,
44385
- message: message2,
44386
- toolMessages,
44387
- toolCallStyle
44523
+ const ChatMessageRow = ({
44524
+ index,
44525
+ parentName,
44526
+ labeled,
44527
+ labels,
44528
+ highlightLabeled,
44529
+ resolvedMessage,
44530
+ toolCallStyle,
44531
+ indented: indented2,
44532
+ highlightUserMessage,
44533
+ allowLinking = true
44388
44534
  }) => {
44389
- const context = defaultContext();
44390
- if (message2.role === "assistant" && message2.tool_calls && message2.tool_calls.length) {
44391
- const toolCalls = message2.tool_calls.map((tool_call, idx) => {
44535
+ const views = [];
44536
+ const viewLabels = [];
44537
+ const number2 = index + 1;
44538
+ const maxlabelLen = labels ? Object.values(labels).reduce((curr, r2) => {
44539
+ return Math.max(r2.length, curr);
44540
+ }, 0) : 3;
44541
+ const chatMessageLabel = labels && resolvedMessage.message.id ? labels[resolvedMessage.message.id] || " ".repeat(maxlabelLen * 2) : String(number2) || void 0;
44542
+ views.push(
44543
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
44544
+ ChatMessage,
44545
+ {
44546
+ id: `${parentName}-chat-messages`,
44547
+ message: resolvedMessage.message,
44548
+ toolMessages: resolvedMessage.toolMessages,
44549
+ indented: indented2,
44550
+ toolCallStyle,
44551
+ allowLinking
44552
+ }
44553
+ )
44554
+ );
44555
+ viewLabels.push(chatMessageLabel);
44556
+ if (toolCallStyle !== "omit" && resolvedMessage.message.role === "assistant" && resolvedMessage.message.tool_calls && resolvedMessage.message.tool_calls.length) {
44557
+ const toolMessages = resolvedMessage.toolMessages || [];
44558
+ let idx = 0;
44559
+ for (const tool_call of resolvedMessage.message.tool_calls) {
44392
44560
  const { input: input2, description: description2, functionCall, contentType } = resolveToolInput(tool_call.function, tool_call.arguments);
44393
44561
  let toolMessage;
44394
44562
  if (tool_call.id) {
@@ -44398,36 +44566,79 @@ const MessageContents = ({
44398
44566
  } else {
44399
44567
  toolMessage = toolMessages[idx];
44400
44568
  }
44569
+ const toolLabel = labels?.[toolMessage?.id || ""] || void 0;
44401
44570
  const resolvedToolOutput = resolveToolMessage(toolMessage);
44571
+ viewLabels.push(toolLabel);
44402
44572
  if (toolCallStyle === "compact") {
44403
- return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: /* @__PURE__ */ jsxRuntimeExports.jsxs("code", { className: clsx(styles$10.codeCompact), children: [
44404
- "tool: ",
44405
- functionCall
44406
- ] }) }, `tool-call-${idx}`);
44407
- } else if (toolCallStyle === "omit") {
44408
- return void 0;
44573
+ views.push(
44574
+ /* @__PURE__ */ jsxRuntimeExports.jsx(ToolCallViewCompact, { idx, functionCall })
44575
+ );
44409
44576
  } else {
44410
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
44411
- ToolCallView,
44412
- {
44413
- id: `${id2}-tool-call`,
44414
- functionCall,
44415
- input: input2,
44416
- description: description2,
44417
- contentType,
44418
- output: resolvedToolOutput,
44419
- collapsible: false
44420
- },
44421
- `tool-call-${idx}`
44577
+ views.push(
44578
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
44579
+ ToolCallView,
44580
+ {
44581
+ id: `${index}-tool-call-${idx}`,
44582
+ functionCall,
44583
+ input: input2,
44584
+ description: description2,
44585
+ contentType,
44586
+ output: resolvedToolOutput,
44587
+ collapsible: false
44588
+ },
44589
+ `tool-call-${idx}`
44590
+ )
44422
44591
  );
44423
44592
  }
44424
- });
44425
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(Fragment, { children: [
44426
- message2.content && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles$10.content, children: /* @__PURE__ */ jsxRuntimeExports.jsx(MessageContent, { contents: message2.content, context }) }),
44427
- toolCalls
44428
- ] });
44593
+ idx++;
44594
+ }
44595
+ }
44596
+ if (labeled) {
44597
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles$$.grid), children: views.map((view, idx) => {
44598
+ const label2 = viewLabels[idx];
44599
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
44600
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
44601
+ "div",
44602
+ {
44603
+ className: clsx(
44604
+ "text-size-smaller",
44605
+ "text-style-secondary",
44606
+ styles$$.number,
44607
+ styles$$.label
44608
+ ),
44609
+ children: label2
44610
+ }
44611
+ ),
44612
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
44613
+ "div",
44614
+ {
44615
+ className: clsx(
44616
+ styles$$.container,
44617
+ highlightUserMessage && resolvedMessage.message.role === "user" ? styles$$.user : void 0,
44618
+ idx === 0 ? styles$$.first : void 0,
44619
+ idx === views.length - 1 ? styles$$.last : void 0,
44620
+ highlightLabeled && label2?.trim() ? styles$$.highlight : void 0
44621
+ ),
44622
+ children: view
44623
+ }
44624
+ )
44625
+ ] });
44626
+ }) }) });
44429
44627
  } else {
44430
- return /* @__PURE__ */ jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: message2.content && /* @__PURE__ */ jsxRuntimeExports.jsx(MessageContent, { contents: message2.content, context }) });
44628
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(
44629
+ "div",
44630
+ {
44631
+ className: clsx(
44632
+ styles$$.container,
44633
+ styles$$.simple,
44634
+ highlightUserMessage && resolvedMessage.message.role === "user" ? styles$$.user : void 0
44635
+ ),
44636
+ children: [
44637
+ views,
44638
+ resolvedMessage.message.role === "user" ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { height: "10px" } }) : void 0
44639
+ ]
44640
+ }
44641
+ );
44431
44642
  }
44432
44643
  };
44433
44644
  const resolveToolMessage = (toolMessage) => {
@@ -44480,192 +44691,11 @@ const resolveToolMessage = (toolMessage) => {
44480
44691
  return result2;
44481
44692
  }
44482
44693
  };
44483
- const ChatMessage = memo$1(
44484
- ({
44485
- id: id2,
44486
- message: message2,
44487
- toolMessages,
44488
- indented: indented2,
44489
- toolCallStyle,
44490
- allowLinking = true
44491
- }) => {
44492
- const messageUrl = void 0;
44493
- const supportsLinking = useCallback(() => {
44494
- return false;
44495
- }, []);
44496
- const toFullUrl = useCallback((url) => {
44497
- return url;
44498
- }, []);
44499
- const collapse = message2.role === "system" || message2.role === "user";
44500
- const [mouseOver, setMouseOver] = useState(false);
44501
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(
44502
- "div",
44503
- {
44504
- className: clsx(
44505
- message2.role,
44506
- "text-size-base",
44507
- styles$1b.message,
44508
- message2.role === "system" ? styles$1b.systemRole : void 0,
44509
- message2.role === "user" ? styles$1b.userRole : void 0,
44510
- mouseOver ? styles$1b.hover : void 0
44511
- ),
44512
- onMouseEnter: () => setMouseOver(true),
44513
- onMouseLeave: () => setMouseOver(false),
44514
- children: [
44515
- /* @__PURE__ */ jsxRuntimeExports.jsxs(
44516
- "div",
44517
- {
44518
- className: clsx(
44519
- styles$1b.messageGrid,
44520
- message2.role === "tool" ? styles$1b.toolMessageGrid : void 0,
44521
- "text-style-label"
44522
- ),
44523
- children: [
44524
- message2.role,
44525
- message2.role === "tool" ? `: ${message2.function}` : "",
44526
- supportsLinking() && messageUrl ? /* @__PURE__ */ jsxRuntimeExports.jsx(
44527
- CopyButton,
44528
- {
44529
- icon: ApplicationIcons.link,
44530
- value: toFullUrl(messageUrl),
44531
- className: clsx(styles$1b.copyLink)
44532
- }
44533
- ) : ""
44534
- ]
44535
- }
44536
- ),
44537
- /* @__PURE__ */ jsxRuntimeExports.jsxs(
44538
- "div",
44539
- {
44540
- className: clsx(
44541
- styles$1b.messageContents,
44542
- indented2 ? styles$1b.indented : void 0
44543
- ),
44544
- children: [
44545
- /* @__PURE__ */ jsxRuntimeExports.jsx(
44546
- ExpandablePanel,
44547
- {
44548
- id: `${id2}-message`,
44549
- collapse,
44550
- lines: collapse ? 15 : 25,
44551
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(
44552
- MessageContents,
44553
- {
44554
- id: `${id2}-contents`,
44555
- message: message2,
44556
- toolMessages,
44557
- toolCallStyle
44558
- },
44559
- `${id2}-contents`
44560
- )
44561
- }
44562
- ),
44563
- message2.metadata && Object.keys(message2.metadata).length > 0 ? /* @__PURE__ */ jsxRuntimeExports.jsx(
44564
- LabeledValue,
44565
- {
44566
- label: "Metadata",
44567
- className: clsx(styles$1b.metadataLabel, "text-size-smaller"),
44568
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(
44569
- RecordTree,
44570
- {
44571
- record: message2.metadata,
44572
- id: `${id2}-metadata`,
44573
- defaultExpandLevel: 0
44574
- }
44575
- )
44576
- }
44577
- ) : ""
44578
- ]
44579
- }
44580
- )
44581
- ]
44582
- }
44583
- );
44584
- }
44585
- );
44586
- const grid$2 = "_grid_rmdrx_1";
44587
- const number = "_number_rmdrx_7";
44588
- const user = "_user_rmdrx_11";
44589
- const container$f = "_container_rmdrx_16";
44590
- const styles$X = {
44591
- grid: grid$2,
44592
- number,
44593
- user,
44594
- container: container$f
44595
- };
44596
- const ChatMessageRow = ({
44597
- parentName,
44598
- label: label2,
44599
- resolvedMessage,
44600
- toolCallStyle,
44601
- indented: indented2,
44602
- highlightUserMessage,
44603
- allowLinking = true
44604
- }) => {
44605
- if (label2) {
44606
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
44607
- /* @__PURE__ */ jsxRuntimeExports.jsxs(
44608
- "div",
44609
- {
44610
- className: clsx(
44611
- styles$X.grid,
44612
- styles$X.container,
44613
- highlightUserMessage && resolvedMessage.message.role === "user" ? styles$X.user : void 0
44614
- ),
44615
- children: [
44616
- /* @__PURE__ */ jsxRuntimeExports.jsx(
44617
- "div",
44618
- {
44619
- className: clsx(
44620
- "text-size-smaller",
44621
- "text-style-secondary",
44622
- styles$X.number
44623
- ),
44624
- children: label2
44625
- }
44626
- ),
44627
- /* @__PURE__ */ jsxRuntimeExports.jsx(
44628
- ChatMessage,
44629
- {
44630
- id: `${parentName}-chat-messages`,
44631
- message: resolvedMessage.message,
44632
- toolMessages: resolvedMessage.toolMessages,
44633
- indented: indented2,
44634
- toolCallStyle,
44635
- allowLinking
44636
- }
44637
- )
44638
- ]
44639
- }
44640
- ),
44641
- resolvedMessage.message.role === "user" ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { height: "10px" } }) : void 0
44642
- ] });
44643
- } else {
44644
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(
44645
- "div",
44646
- {
44647
- className: clsx(
44648
- styles$X.container,
44649
- styles$X.simple,
44650
- highlightUserMessage && resolvedMessage.message.role === "user" ? styles$X.user : void 0
44651
- ),
44652
- children: [
44653
- /* @__PURE__ */ jsxRuntimeExports.jsx(
44654
- ChatMessage,
44655
- {
44656
- id: `${parentName}-chat-messages`,
44657
- message: resolvedMessage.message,
44658
- toolMessages: resolvedMessage.toolMessages,
44659
- indented: indented2,
44660
- toolCallStyle,
44661
- allowLinking
44662
- }
44663
- ),
44664
- resolvedMessage.message.role === "user" ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { height: "10px" } }) : void 0
44665
- ]
44666
- }
44667
- );
44668
- }
44694
+ const ToolCallViewCompact = ({ idx, functionCall }) => {
44695
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: /* @__PURE__ */ jsxRuntimeExports.jsxs("code", { className: clsx(styles$$.codeCompact), children: [
44696
+ "tool: ",
44697
+ functionCall
44698
+ ] }) }, `tool-call-${idx}`);
44669
44699
  };
44670
44700
  const resolveMessages = (messages2) => {
44671
44701
  const resolvedMessages = [];
@@ -44753,6 +44783,7 @@ const ChatView = ({
44753
44783
  resolveToolCallsIntoPreviousMessage = true,
44754
44784
  indented: indented2,
44755
44785
  labeled = true,
44786
+ highlightLabeled = false,
44756
44787
  className: className2,
44757
44788
  allowLinking = true,
44758
44789
  messageLabels
@@ -44764,14 +44795,14 @@ const ChatView = ({
44764
44795
  };
44765
44796
  });
44766
44797
  const result2 = /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(className2), children: collapsedMessages.map((msg, index) => {
44767
- const number2 = collapsedMessages.length > 1 && labeled ? index + 1 : void 0;
44768
- const msgLabel = messageLabels && msg.message.id ? messageLabels[msg.message.id] : "";
44769
- const label2 = msgLabel || number2;
44770
44798
  return /* @__PURE__ */ jsxRuntimeExports.jsx(
44771
44799
  ChatMessageRow,
44772
44800
  {
44801
+ index,
44773
44802
  parentName: id2 || "chat-view",
44774
- label: label2 ? String(label2) : void 0,
44803
+ labeled,
44804
+ labels: messageLabels,
44805
+ highlightLabeled,
44775
44806
  resolvedMessage: msg,
44776
44807
  indented: indented2,
44777
44808
  toolCallStyle,
@@ -45323,8 +45354,8 @@ const RecordTree = ({
45323
45354
  "div",
45324
45355
  {
45325
45356
  className: clsx(
45326
- styles$1e.keyPairContainer,
45327
- index < items.length - 1 && useBorders ? styles$1e.keyPairBordered : void 0,
45357
+ styles$1d.keyPairContainer,
45358
+ index < items.length - 1 && useBorders ? styles$1d.keyPairBordered : void 0,
45328
45359
  "text-size-small"
45329
45360
  ),
45330
45361
  style: {
@@ -45337,7 +45368,7 @@ const RecordTree = ({
45337
45368
  "data-index": index,
45338
45369
  className: clsx(
45339
45370
  kRecordTreeKey,
45340
- styles$1e.key,
45371
+ styles$1d.key,
45341
45372
  "font-monospace",
45342
45373
  "text-style-secondary"
45343
45374
  ),
@@ -45347,16 +45378,16 @@ const RecordTree = ({
45347
45378
  setCollapsed(item2.id, !collapsedIds?.[item2.id]);
45348
45379
  },
45349
45380
  children: [
45350
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: item2.hasChildren ? /* @__PURE__ */ jsxRuntimeExports.jsx("pre", { className: clsx(styles$1e.pre), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
45381
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: item2.hasChildren ? /* @__PURE__ */ jsxRuntimeExports.jsx("pre", { className: clsx(styles$1d.pre), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
45351
45382
  "i",
45352
45383
  {
45353
45384
  className: clsx(
45354
45385
  collapsedIds && collapsedIds[item2.id] ? ApplicationIcons.tree.closed : ApplicationIcons.tree.open,
45355
- styles$1e.treeIcon
45386
+ styles$1d.treeIcon
45356
45387
  )
45357
45388
  }
45358
45389
  ) }) : void 0 }),
45359
- /* @__PURE__ */ jsxRuntimeExports.jsxs("pre", { className: clsx(styles$1e.pre), children: [
45390
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("pre", { className: clsx(styles$1d.pre), children: [
45360
45391
  item2.key,
45361
45392
  ":"
45362
45393
  ] })
@@ -46035,6 +46066,7 @@ const ChatViewVirtualList = memo$1(
46035
46066
  toolCallStyle,
46036
46067
  indented: indented2,
46037
46068
  labeled = true,
46069
+ highlightLabeled = false,
46038
46070
  scrollRef,
46039
46071
  running,
46040
46072
  allowLinking = true,
@@ -46086,6 +46118,7 @@ const ChatViewVirtualList = memo$1(
46086
46118
  toolCallStyle,
46087
46119
  indented: indented2,
46088
46120
  labeled,
46121
+ highlightLabeled,
46089
46122
  running,
46090
46123
  allowLinking,
46091
46124
  messageLabels
@@ -46104,6 +46137,7 @@ const ChatViewVirtualListComponent = memo$1(
46104
46137
  toolCallStyle,
46105
46138
  indented: indented2,
46106
46139
  labeled = true,
46140
+ highlightLabeled,
46107
46141
  scrollRef,
46108
46142
  running,
46109
46143
  allowLinking = true,
@@ -46129,16 +46163,14 @@ const ChatViewVirtualListComponent = memo$1(
46129
46163
  }, [initialMessageId, collapsedMessages]);
46130
46164
  const renderRow = useCallback(
46131
46165
  (index, item2) => {
46132
- const number2 = collapsedMessages.length > 1 && labeled ? index + 1 : void 0;
46133
- const maxlabelLen = messageLabels ? Object.values(messageLabels).reduce((curr, r2) => {
46134
- return Math.max(r2.length, curr);
46135
- }, 0) : 0;
46136
- const label2 = messageLabels && item2.message.id ? messageLabels[item2.message.id] || " ".repeat(maxlabelLen * 2) : number2 || void 0;
46137
46166
  return /* @__PURE__ */ jsxRuntimeExports.jsx(
46138
46167
  ChatMessageRow,
46139
46168
  {
46169
+ index,
46140
46170
  parentName: id2 || "chat-virtual-list",
46141
- label: label2 ? String(label2) : void 0,
46171
+ labeled,
46172
+ highlightLabeled,
46173
+ labels: messageLabels,
46142
46174
  resolvedMessage: item2,
46143
46175
  indented: indented2,
46144
46176
  toolCallStyle,
@@ -46147,7 +46179,14 @@ const ChatViewVirtualListComponent = memo$1(
46147
46179
  }
46148
46180
  );
46149
46181
  },
46150
- [id2, labeled, indented2, toolCallStyle, collapsedMessages]
46182
+ [
46183
+ id2,
46184
+ labeled,
46185
+ indented2,
46186
+ toolCallStyle,
46187
+ collapsedMessages,
46188
+ highlightLabeled
46189
+ ]
46151
46190
  );
46152
46191
  const Item = ({
46153
46192
  children: children2,
@@ -56852,13 +56891,15 @@ const InputPanel = ({ result: result2 }) => {
56852
56891
  const [searchParams] = useSearchParams();
56853
56892
  const initialMessageId = searchParams.get("message");
56854
56893
  const initialEventId = searchParams.get("event");
56894
+ const highlightLabeled = useStore((state) => state.highlightLabeled);
56855
56895
  return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: scrollRef, className: clsx(styles$u.container), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
56856
56896
  InputRenderer,
56857
56897
  {
56858
56898
  result: result2,
56859
56899
  scrollRef,
56860
56900
  initialMessageId,
56861
- initialEventId
56901
+ initialEventId,
56902
+ highlightLabeled
56862
56903
  }
56863
56904
  ) });
56864
56905
  };
@@ -56867,7 +56908,8 @@ const InputRenderer = ({
56867
56908
  className: className2,
56868
56909
  scrollRef,
56869
56910
  initialMessageId,
56870
- initialEventId
56911
+ initialEventId,
56912
+ highlightLabeled
56871
56913
  }) => {
56872
56914
  switch (result2?.inputType) {
56873
56915
  case "transcript": {
@@ -56892,7 +56934,8 @@ const InputRenderer = ({
56892
56934
  className: className2,
56893
56935
  scrollRef,
56894
56936
  initialMessageId,
56895
- labeled: false,
56937
+ labeled: true,
56938
+ highlightLabeled,
56896
56939
  messageLabels: labels
56897
56940
  }
56898
56941
  );
@@ -59067,7 +59110,8 @@ const referenceTable = (result2) => {
59067
59110
  ChatView,
59068
59111
  {
59069
59112
  messages: [result2.input],
59070
- resolveToolCallsIntoPreviousMessage: false
59113
+ resolveToolCallsIntoPreviousMessage: false,
59114
+ labeled: false
59071
59115
  }
59072
59116
  );
59073
59117
  }
@@ -59080,7 +59124,8 @@ const referenceTable = (result2) => {
59080
59124
  ChatView,
59081
59125
  {
59082
59126
  messages: [msg],
59083
- resolveToolCallsIntoPreviousMessage: false
59127
+ resolveToolCallsIntoPreviousMessage: false,
59128
+ labeled: false
59084
59129
  }
59085
59130
  );
59086
59131
  };
@@ -59130,7 +59175,8 @@ const referenceTable = (result2) => {
59130
59175
  ChatView,
59131
59176
  {
59132
59177
  messages: [msg],
59133
- resolveToolCallsIntoPreviousMessage: false
59178
+ resolveToolCallsIntoPreviousMessage: false,
59179
+ labeled: false
59134
59180
  }
59135
59181
  );
59136
59182
  };
@@ -59788,13 +59834,15 @@ const printIdentifier = (identifier, label2) => {
59788
59834
  }
59789
59835
  return val;
59790
59836
  };
59791
- const root$1 = "_root_1xyi1_1";
59792
- const tabSet$1 = "_tabSet_1xyi1_13";
59793
- const tabControl$1 = "_tabControl_1xyi1_19";
59837
+ const root$1 = "_root_12il0_1";
59838
+ const tabSet$1 = "_tabSet_12il0_13";
59839
+ const tabControl$1 = "_tabControl_12il0_19";
59840
+ const tabs$1 = "_tabs_12il0_23";
59794
59841
  const styles$n = {
59795
59842
  root: root$1,
59796
59843
  tabSet: tabSet$1,
59797
- tabControl: tabControl$1
59844
+ tabControl: tabControl$1,
59845
+ tabs: tabs$1
59798
59846
  };
59799
59847
  const container$6 = "_container_g5onx_1";
59800
59848
  const styles$m = {
@@ -59875,6 +59923,29 @@ const ScanResultPanel = () => {
59875
59923
  return hasNonSpanEvents;
59876
59924
  }, [selectedResult?.scanEvents]);
59877
59925
  const hasError = selectedResult?.scanError !== void 0 && selectedResult?.scanError !== null;
59926
+ const highlightLabeled = useStore((state) => state.highlightLabeled);
59927
+ const setHighlightLabeled = useStore((state) => state.setHighlightLabeled);
59928
+ const toggleHighlightLabeled = useCallback(() => {
59929
+ setHighlightLabeled(!highlightLabeled);
59930
+ }, [highlightLabeled, setHighlightLabeled]);
59931
+ const tools2 = useMemo(() => {
59932
+ if (selectedTab === kTabIdInput && selectedResult?.inputType === "transcript" && selectedResult?.messageReferences.length > 0) {
59933
+ return [
59934
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
59935
+ ToolButton,
59936
+ {
59937
+ icon: ApplicationIcons.highlight,
59938
+ latched: !!highlightLabeled,
59939
+ onClick: toggleHighlightLabeled,
59940
+ label: "Highlight Refs"
59941
+ },
59942
+ "highlight-labeled"
59943
+ )
59944
+ ];
59945
+ } else {
59946
+ return [];
59947
+ }
59948
+ }, [highlightLabeled, toggleHighlightLabeled, selectedTab, selectedResult]);
59878
59949
  return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: clsx(styles$n.root), children: [
59879
59950
  /* @__PURE__ */ jsxRuntimeExports.jsx(Navbar, { children: visibleScannerResults.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(ScanResultNav, {}) }),
59880
59951
  /* @__PURE__ */ jsxRuntimeExports.jsx(ActivityBar, { animating: !!loading || resultLoading }),
@@ -59887,6 +59958,7 @@ const ScanResultPanel = () => {
59887
59958
  tabPanelsClassName: clsx(styles$n.tabSet),
59888
59959
  tabControlsClassName: clsx(styles$n.tabControl),
59889
59960
  className: clsx(styles$n.tabs),
59961
+ tools: tools2,
59890
59962
  children: [
59891
59963
  hasError ? /* @__PURE__ */ jsxRuntimeExports.jsx(
59892
59964
  TabPanel,
@@ -77042,9 +77114,9 @@ var RowRangeSelectionContext = class {
77042
77114
  if (start2.rowPinned === "bottom" && end2.rowPinned === "top") {
77043
77115
  const top2 = _getNodesInRangeForSelection(pinnedRowModel, "top", end2, void 0);
77044
77116
  const bottom2 = _getNodesInRangeForSelection(pinnedRowModel, "bottom", void 0, start2);
77045
- const first = rowModel.getRow(0);
77046
- const last = rowModel.getRow(rowModel.getRowCount() - 1);
77047
- return top2.concat(rowModel.getNodesInRangeForSelection(first, last) ?? []).concat(bottom2);
77117
+ const first2 = rowModel.getRow(0);
77118
+ const last2 = rowModel.getRow(rowModel.getRowCount() - 1);
77119
+ return top2.concat(rowModel.getNodesInRangeForSelection(first2, last2) ?? []).concat(bottom2);
77048
77120
  }
77049
77121
  if (!start2.rowPinned && end2.rowPinned === "top") {
77050
77122
  const pinned = _getNodesInRangeForSelection(pinnedRowModel, "top", end2, void 0);
@@ -77053,17 +77125,17 @@ var RowRangeSelectionContext = class {
77053
77125
  if (start2.rowPinned === "top" && end2.rowPinned === "bottom") {
77054
77126
  const top2 = _getNodesInRangeForSelection(pinnedRowModel, "top", start2, void 0);
77055
77127
  const bottom2 = _getNodesInRangeForSelection(pinnedRowModel, "bottom", void 0, end2);
77056
- const first = rowModel.getRow(0);
77057
- const last = rowModel.getRow(rowModel.getRowCount() - 1);
77058
- return top2.concat(rowModel.getNodesInRangeForSelection(first, last) ?? []).concat(bottom2);
77128
+ const first2 = rowModel.getRow(0);
77129
+ const last2 = rowModel.getRow(rowModel.getRowCount() - 1);
77130
+ return top2.concat(rowModel.getNodesInRangeForSelection(first2, last2) ?? []).concat(bottom2);
77059
77131
  }
77060
77132
  if (start2.rowPinned === "bottom" && end2.rowPinned === "bottom") {
77061
77133
  return _getNodesInRangeForSelection(pinnedRowModel, "bottom", start2, end2);
77062
77134
  }
77063
77135
  if (!start2.rowPinned && end2.rowPinned === "bottom") {
77064
77136
  const pinned = _getNodesInRangeForSelection(pinnedRowModel, "bottom", void 0, end2);
77065
- const last = rowModel.getRow(rowModel.getRowCount());
77066
- return (rowModel.getNodesInRangeForSelection(start2, last) ?? []).concat(pinned);
77137
+ const last2 = rowModel.getRow(rowModel.getRowCount());
77138
+ return (rowModel.getNodesInRangeForSelection(start2, last2) ?? []).concat(pinned);
77067
77139
  }
77068
77140
  return null;
77069
77141
  }
@@ -80179,13 +80251,13 @@ var RowDropHighlightService = class extends BeanStub {
80179
80251
  super.destroy();
80180
80252
  }
80181
80253
  clear() {
80182
- const last = this.row;
80254
+ const last2 = this.row;
80183
80255
  this.dragging = false;
80184
- if (last) {
80256
+ if (last2) {
80185
80257
  this.uiLevel = 0;
80186
80258
  this.position = "none";
80187
80259
  this.row = null;
80188
- last.dispatchRowEvent("rowHighlightChanged");
80260
+ last2.dispatchRowEvent("rowHighlightChanged");
80189
80261
  }
80190
80262
  }
80191
80263
  set(row2, dropIndicatorPosition) {
@@ -80207,8 +80279,8 @@ var RowDropHighlightService = class extends BeanStub {
80207
80279
  fromDrag(draggingEvent) {
80208
80280
  const rowsDrop = draggingEvent?.dropTarget;
80209
80281
  if (rowsDrop) {
80210
- const { highlight, target, position } = rowsDrop;
80211
- if (highlight && target && position !== "none") {
80282
+ const { highlight: highlight2, target, position } = rowsDrop;
80283
+ if (highlight2 && target && position !== "none") {
80212
80284
  this.set(target, position);
80213
80285
  this.dragging = true;
80214
80286
  return;
@@ -105049,8 +105121,8 @@ var nodeHasLeafEdit = (children2, editModelSvc, column2) => {
105049
105121
  for (let i2 = 0, len = children2.length; i2 < len; ++i2) {
105050
105122
  const child = children2[i2];
105051
105123
  if (child.data) {
105052
- const highlight = editHighlightFn(editModelSvc?.getEdit({ rowNode: child, column: column2 })) || editHighlightFn(editModelSvc?.getEdit({ rowNode: child.pinnedSibling, column: column2 }));
105053
- if (highlight) {
105124
+ const highlight2 = editHighlightFn(editModelSvc?.getEdit({ rowNode: child, column: column2 })) || editHighlightFn(editModelSvc?.getEdit({ rowNode: child.pinnedSibling, column: column2 }));
105125
+ if (highlight2) {
105054
105126
  return true;
105055
105127
  }
105056
105128
  }
@@ -108132,14 +108204,14 @@ var updateRowNodeAfterSort = (rowNode) => {
108132
108204
  }
108133
108205
  for (let i2 = 0, lastIdx = childrenAfterSort.length - 1; i2 <= lastIdx; i2++) {
108134
108206
  const child = childrenAfterSort[i2];
108135
- const first = i2 === 0;
108136
- const last = i2 === lastIdx;
108137
- if (child.firstChild !== first) {
108138
- child.firstChild = first;
108207
+ const first2 = i2 === 0;
108208
+ const last2 = i2 === lastIdx;
108209
+ if (child.firstChild !== first2) {
108210
+ child.firstChild = first2;
108139
108211
  child.dispatchRowEvent("firstChildChanged");
108140
108212
  }
108141
- if (child.lastChild !== last) {
108142
- child.lastChild = last;
108213
+ if (child.lastChild !== last2) {
108214
+ child.lastChild = last2;
108143
108215
  child.dispatchRowEvent("lastChildChanged");
108144
108216
  }
108145
108217
  if (child.childIndex !== i2) {