simdeck 0.1.4 → 0.1.5

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 (807) hide show
  1. package/README.md +34 -14
  2. package/build/simdeck-bin +0 -0
  3. package/client/dist/assets/index-D2-CFde1.css +1 -0
  4. package/client/dist/assets/index-E1gIgaOR.js +9 -0
  5. package/client/dist/chrome-devtools-ui/Images/3d-center.svg +1 -0
  6. package/client/dist/chrome-devtools-ui/Images/3d-pan.svg +1 -0
  7. package/client/dist/chrome-devtools-ui/Images/3d-rotate.svg +1 -0
  8. package/client/dist/chrome-devtools-ui/Images/Images.js +296 -0
  9. package/client/dist/chrome-devtools-ui/Images/accelerometer-back.svg +1 -0
  10. package/client/dist/chrome-devtools-ui/Images/accelerometer-bottom.png +0 -0
  11. package/client/dist/chrome-devtools-ui/Images/accelerometer-front.svg +1 -0
  12. package/client/dist/chrome-devtools-ui/Images/accelerometer-left.png +0 -0
  13. package/client/dist/chrome-devtools-ui/Images/accelerometer-right.png +0 -0
  14. package/client/dist/chrome-devtools-ui/Images/accelerometer-top.png +0 -0
  15. package/client/dist/chrome-devtools-ui/Images/account-tree.svg +1 -0
  16. package/client/dist/chrome-devtools-ui/Images/align-content-center.svg +1 -0
  17. package/client/dist/chrome-devtools-ui/Images/align-content-end.svg +1 -0
  18. package/client/dist/chrome-devtools-ui/Images/align-content-space-around.svg +1 -0
  19. package/client/dist/chrome-devtools-ui/Images/align-content-space-between.svg +1 -0
  20. package/client/dist/chrome-devtools-ui/Images/align-content-space-evenly.svg +1 -0
  21. package/client/dist/chrome-devtools-ui/Images/align-content-start.svg +1 -0
  22. package/client/dist/chrome-devtools-ui/Images/align-content-stretch.svg +1 -0
  23. package/client/dist/chrome-devtools-ui/Images/align-items-baseline.svg +1 -0
  24. package/client/dist/chrome-devtools-ui/Images/align-items-center.svg +1 -0
  25. package/client/dist/chrome-devtools-ui/Images/align-items-end.svg +1 -0
  26. package/client/dist/chrome-devtools-ui/Images/align-items-start.svg +1 -0
  27. package/client/dist/chrome-devtools-ui/Images/align-items-stretch.svg +1 -0
  28. package/client/dist/chrome-devtools-ui/Images/align-self-center.svg +1 -0
  29. package/client/dist/chrome-devtools-ui/Images/align-self-end.svg +1 -0
  30. package/client/dist/chrome-devtools-ui/Images/align-self-start.svg +1 -0
  31. package/client/dist/chrome-devtools-ui/Images/align-self-stretch.svg +1 -0
  32. package/client/dist/chrome-devtools-ui/Images/animation.svg +1 -0
  33. package/client/dist/chrome-devtools-ui/Images/arrow-back.svg +1 -0
  34. package/client/dist/chrome-devtools-ui/Images/arrow-collapse.svg +1 -0
  35. package/client/dist/chrome-devtools-ui/Images/arrow-down.svg +1 -0
  36. package/client/dist/chrome-devtools-ui/Images/arrow-drop-down-dark.svg +1 -0
  37. package/client/dist/chrome-devtools-ui/Images/arrow-drop-down-light.svg +1 -0
  38. package/client/dist/chrome-devtools-ui/Images/arrow-drop-down.svg +1 -0
  39. package/client/dist/chrome-devtools-ui/Images/arrow-forward.svg +1 -0
  40. package/client/dist/chrome-devtools-ui/Images/arrow-right-circle.svg +1 -0
  41. package/client/dist/chrome-devtools-ui/Images/arrow-up-down-circle.svg +1 -0
  42. package/client/dist/chrome-devtools-ui/Images/arrow-up-down.svg +1 -0
  43. package/client/dist/chrome-devtools-ui/Images/arrow-up.svg +1 -0
  44. package/client/dist/chrome-devtools-ui/Images/bell.svg +1 -0
  45. package/client/dist/chrome-devtools-ui/Images/bezier-curve-filled.svg +1 -0
  46. package/client/dist/chrome-devtools-ui/Images/bin.svg +1 -0
  47. package/client/dist/chrome-devtools-ui/Images/bottom-panel-close.svg +1 -0
  48. package/client/dist/chrome-devtools-ui/Images/bottom-panel-open.svg +1 -0
  49. package/client/dist/chrome-devtools-ui/Images/brackets.svg +1 -0
  50. package/client/dist/chrome-devtools-ui/Images/breakpoint-circle.svg +1 -0
  51. package/client/dist/chrome-devtools-ui/Images/breakpoint-crossed-filled.svg +1 -0
  52. package/client/dist/chrome-devtools-ui/Images/breakpoint-crossed.svg +1 -0
  53. package/client/dist/chrome-devtools-ui/Images/brush-2.svg +1 -0
  54. package/client/dist/chrome-devtools-ui/Images/brush-filled.svg +1 -0
  55. package/client/dist/chrome-devtools-ui/Images/brush.svg +1 -0
  56. package/client/dist/chrome-devtools-ui/Images/bug.svg +1 -0
  57. package/client/dist/chrome-devtools-ui/Images/bundle.svg +1 -0
  58. package/client/dist/chrome-devtools-ui/Images/button-magic.svg +1 -0
  59. package/client/dist/chrome-devtools-ui/Images/calendar-today.svg +1 -0
  60. package/client/dist/chrome-devtools-ui/Images/center-focus-weak.svg +1 -0
  61. package/client/dist/chrome-devtools-ui/Images/check-circle.svg +1 -0
  62. package/client/dist/chrome-devtools-ui/Images/check-double.svg +1 -0
  63. package/client/dist/chrome-devtools-ui/Images/checker.svg +1 -0
  64. package/client/dist/chrome-devtools-ui/Images/checkmark.svg +1 -0
  65. package/client/dist/chrome-devtools-ui/Images/chevron-double-right.svg +1 -0
  66. package/client/dist/chrome-devtools-ui/Images/chevron-down.svg +1 -0
  67. package/client/dist/chrome-devtools-ui/Images/chevron-left-dot.svg +1 -0
  68. package/client/dist/chrome-devtools-ui/Images/chevron-left.svg +1 -0
  69. package/client/dist/chrome-devtools-ui/Images/chevron-right.svg +1 -0
  70. package/client/dist/chrome-devtools-ui/Images/chevron-up.svg +1 -0
  71. package/client/dist/chrome-devtools-ui/Images/chromeLeft.avif +0 -0
  72. package/client/dist/chrome-devtools-ui/Images/chromeMiddle.avif +0 -0
  73. package/client/dist/chrome-devtools-ui/Images/chromeRight.avif +0 -0
  74. package/client/dist/chrome-devtools-ui/Images/class.svg +1 -0
  75. package/client/dist/chrome-devtools-ui/Images/clear-list.svg +1 -0
  76. package/client/dist/chrome-devtools-ui/Images/clear.svg +1 -0
  77. package/client/dist/chrome-devtools-ui/Images/cloud.svg +1 -0
  78. package/client/dist/chrome-devtools-ui/Images/code-circle.svg +1 -0
  79. package/client/dist/chrome-devtools-ui/Images/code.svg +1 -0
  80. package/client/dist/chrome-devtools-ui/Images/colon.svg +1 -0
  81. package/client/dist/chrome-devtools-ui/Images/color-picker-filled.svg +1 -0
  82. package/client/dist/chrome-devtools-ui/Images/color-picker.svg +1 -0
  83. package/client/dist/chrome-devtools-ui/Images/compress.svg +1 -0
  84. package/client/dist/chrome-devtools-ui/Images/console-conditional-breakpoint.svg +1 -0
  85. package/client/dist/chrome-devtools-ui/Images/console-logpoint.svg +1 -0
  86. package/client/dist/chrome-devtools-ui/Images/cookie.svg +1 -0
  87. package/client/dist/chrome-devtools-ui/Images/cookie_off.svg +1 -0
  88. package/client/dist/chrome-devtools-ui/Images/copy.svg +1 -0
  89. package/client/dist/chrome-devtools-ui/Images/corporate-fare.svg +1 -0
  90. package/client/dist/chrome-devtools-ui/Images/credit-card.svg +1 -0
  91. package/client/dist/chrome-devtools-ui/Images/cross-circle-filled.svg +1 -0
  92. package/client/dist/chrome-devtools-ui/Images/cross-circle.svg +1 -0
  93. package/client/dist/chrome-devtools-ui/Images/cross.svg +1 -0
  94. package/client/dist/chrome-devtools-ui/Images/cssoverview_icons_2x.avif +0 -0
  95. package/client/dist/chrome-devtools-ui/Images/custom-typography.svg +1 -0
  96. package/client/dist/chrome-devtools-ui/Images/database.svg +1 -0
  97. package/client/dist/chrome-devtools-ui/Images/deployed.svg +1 -0
  98. package/client/dist/chrome-devtools-ui/Images/device-fold.svg +1 -0
  99. package/client/dist/chrome-devtools-ui/Images/devices.svg +1 -0
  100. package/client/dist/chrome-devtools-ui/Images/devtools-thumbnail.svg +1 -0
  101. package/client/dist/chrome-devtools-ui/Images/devtools-tips.svg +1 -0
  102. package/client/dist/chrome-devtools-ui/Images/devtools.svg +1 -0
  103. package/client/dist/chrome-devtools-ui/Images/difference.svg +1 -0
  104. package/client/dist/chrome-devtools-ui/Images/dock-bottom.svg +1 -0
  105. package/client/dist/chrome-devtools-ui/Images/dock-left.svg +1 -0
  106. package/client/dist/chrome-devtools-ui/Images/dock-right.svg +1 -0
  107. package/client/dist/chrome-devtools-ui/Images/dock-window.svg +1 -0
  108. package/client/dist/chrome-devtools-ui/Images/document.svg +1 -0
  109. package/client/dist/chrome-devtools-ui/Images/dog-paw.svg +1 -0
  110. package/client/dist/chrome-devtools-ui/Images/domain.svg +1 -0
  111. package/client/dist/chrome-devtools-ui/Images/dots-horizontal.svg +1 -0
  112. package/client/dist/chrome-devtools-ui/Images/dots-vertical.svg +1 -0
  113. package/client/dist/chrome-devtools-ui/Images/download.svg +1 -0
  114. package/client/dist/chrome-devtools-ui/Images/edit.svg +1 -0
  115. package/client/dist/chrome-devtools-ui/Images/empty.svg +1 -0
  116. package/client/dist/chrome-devtools-ui/Images/errorWave.svg +1 -0
  117. package/client/dist/chrome-devtools-ui/Images/exclamation.svg +1 -0
  118. package/client/dist/chrome-devtools-ui/Images/experiment-check.svg +1 -0
  119. package/client/dist/chrome-devtools-ui/Images/experiment.svg +1 -0
  120. package/client/dist/chrome-devtools-ui/Images/extension.svg +1 -0
  121. package/client/dist/chrome-devtools-ui/Images/eye.svg +1 -0
  122. package/client/dist/chrome-devtools-ui/Images/favicon.ico +0 -0
  123. package/client/dist/chrome-devtools-ui/Images/file-document.svg +1 -0
  124. package/client/dist/chrome-devtools-ui/Images/file-fetch-xhr.svg +1 -0
  125. package/client/dist/chrome-devtools-ui/Images/file-font.svg +1 -0
  126. package/client/dist/chrome-devtools-ui/Images/file-generic.svg +1 -0
  127. package/client/dist/chrome-devtools-ui/Images/file-image.svg +1 -0
  128. package/client/dist/chrome-devtools-ui/Images/file-json.svg +1 -0
  129. package/client/dist/chrome-devtools-ui/Images/file-manifest.svg +1 -0
  130. package/client/dist/chrome-devtools-ui/Images/file-media.svg +1 -0
  131. package/client/dist/chrome-devtools-ui/Images/file-script.svg +1 -0
  132. package/client/dist/chrome-devtools-ui/Images/file-snippet.svg +1 -0
  133. package/client/dist/chrome-devtools-ui/Images/file-stylesheet.svg +1 -0
  134. package/client/dist/chrome-devtools-ui/Images/file-wasm.svg +1 -0
  135. package/client/dist/chrome-devtools-ui/Images/file-websocket.svg +1 -0
  136. package/client/dist/chrome-devtools-ui/Images/filter-clear.svg +1 -0
  137. package/client/dist/chrome-devtools-ui/Images/filter-filled.svg +1 -0
  138. package/client/dist/chrome-devtools-ui/Images/filter.svg +1 -0
  139. package/client/dist/chrome-devtools-ui/Images/flex-direction.svg +1 -0
  140. package/client/dist/chrome-devtools-ui/Images/flex-no-wrap.svg +1 -0
  141. package/client/dist/chrome-devtools-ui/Images/flex-wrap.svg +1 -0
  142. package/client/dist/chrome-devtools-ui/Images/flow.svg +1 -0
  143. package/client/dist/chrome-devtools-ui/Images/fold-more.svg +1 -0
  144. package/client/dist/chrome-devtools-ui/Images/folder.svg +1 -0
  145. package/client/dist/chrome-devtools-ui/Images/frame-crossed.svg +1 -0
  146. package/client/dist/chrome-devtools-ui/Images/frame-icon.svg +1 -0
  147. package/client/dist/chrome-devtools-ui/Images/frame.svg +1 -0
  148. package/client/dist/chrome-devtools-ui/Images/gear-filled.svg +1 -0
  149. package/client/dist/chrome-devtools-ui/Images/gear.svg +1 -0
  150. package/client/dist/chrome-devtools-ui/Images/gears.svg +1 -0
  151. package/client/dist/chrome-devtools-ui/Images/global.svg +1 -0
  152. package/client/dist/chrome-devtools-ui/Images/google.svg +1 -0
  153. package/client/dist/chrome-devtools-ui/Images/goto-filled.svg +1 -0
  154. package/client/dist/chrome-devtools-ui/Images/grid-on.svg +1 -0
  155. package/client/dist/chrome-devtools-ui/Images/group.svg +1 -0
  156. package/client/dist/chrome-devtools-ui/Images/heap-snapshot.svg +1 -0
  157. package/client/dist/chrome-devtools-ui/Images/heap-snapshots.svg +1 -0
  158. package/client/dist/chrome-devtools-ui/Images/help.svg +1 -0
  159. package/client/dist/chrome-devtools-ui/Images/history.svg +1 -0
  160. package/client/dist/chrome-devtools-ui/Images/home.svg +1 -0
  161. package/client/dist/chrome-devtools-ui/Images/hover.svg +1 -0
  162. package/client/dist/chrome-devtools-ui/Images/iframe-crossed.svg +1 -0
  163. package/client/dist/chrome-devtools-ui/Images/iframe.svg +1 -0
  164. package/client/dist/chrome-devtools-ui/Images/import.svg +1 -0
  165. package/client/dist/chrome-devtools-ui/Images/indeterminate-question-box.svg +1 -0
  166. package/client/dist/chrome-devtools-ui/Images/info-filled.svg +1 -0
  167. package/client/dist/chrome-devtools-ui/Images/info.svg +1 -0
  168. package/client/dist/chrome-devtools-ui/Images/issue-cross-filled.svg +1 -0
  169. package/client/dist/chrome-devtools-ui/Images/issue-exclamation-filled.svg +1 -0
  170. package/client/dist/chrome-devtools-ui/Images/issue-questionmark-filled.svg +1 -0
  171. package/client/dist/chrome-devtools-ui/Images/issue-text-filled.svg +1 -0
  172. package/client/dist/chrome-devtools-ui/Images/justify-content-center.svg +1 -0
  173. package/client/dist/chrome-devtools-ui/Images/justify-content-end.svg +1 -0
  174. package/client/dist/chrome-devtools-ui/Images/justify-content-space-around.svg +1 -0
  175. package/client/dist/chrome-devtools-ui/Images/justify-content-space-between.svg +1 -0
  176. package/client/dist/chrome-devtools-ui/Images/justify-content-space-evenly.svg +1 -0
  177. package/client/dist/chrome-devtools-ui/Images/justify-content-start.svg +1 -0
  178. package/client/dist/chrome-devtools-ui/Images/justify-items-center.svg +1 -0
  179. package/client/dist/chrome-devtools-ui/Images/justify-items-end.svg +1 -0
  180. package/client/dist/chrome-devtools-ui/Images/justify-items-start.svg +1 -0
  181. package/client/dist/chrome-devtools-ui/Images/justify-items-stretch.svg +1 -0
  182. package/client/dist/chrome-devtools-ui/Images/keyboard-arrow-right.svg +1 -0
  183. package/client/dist/chrome-devtools-ui/Images/keyboard-full.svg +1 -0
  184. package/client/dist/chrome-devtools-ui/Images/keyboard-pen.svg +1 -0
  185. package/client/dist/chrome-devtools-ui/Images/keyboard.svg +1 -0
  186. package/client/dist/chrome-devtools-ui/Images/label.svg +1 -0
  187. package/client/dist/chrome-devtools-ui/Images/large-arrow-right-filled.svg +1 -0
  188. package/client/dist/chrome-devtools-ui/Images/layers-filled.svg +1 -0
  189. package/client/dist/chrome-devtools-ui/Images/layers.svg +1 -0
  190. package/client/dist/chrome-devtools-ui/Images/left-panel-close.svg +1 -0
  191. package/client/dist/chrome-devtools-ui/Images/left-panel-open.svg +1 -0
  192. package/client/dist/chrome-devtools-ui/Images/lightbulb-spark.svg +1 -0
  193. package/client/dist/chrome-devtools-ui/Images/lightbulb.svg +1 -0
  194. package/client/dist/chrome-devtools-ui/Images/lighthouse_logo.svg +1 -0
  195. package/client/dist/chrome-devtools-ui/Images/list.svg +1 -0
  196. package/client/dist/chrome-devtools-ui/Images/location-on.svg +1 -0
  197. package/client/dist/chrome-devtools-ui/Images/lock.svg +1 -0
  198. package/client/dist/chrome-devtools-ui/Images/match-case.svg +1 -0
  199. package/client/dist/chrome-devtools-ui/Images/match-whole-word.svg +1 -0
  200. package/client/dist/chrome-devtools-ui/Images/memory.svg +1 -0
  201. package/client/dist/chrome-devtools-ui/Images/minus.svg +1 -0
  202. package/client/dist/chrome-devtools-ui/Images/mop.svg +1 -0
  203. package/client/dist/chrome-devtools-ui/Images/mouse.svg +1 -0
  204. package/client/dist/chrome-devtools-ui/Images/navigationControls.png +0 -0
  205. package/client/dist/chrome-devtools-ui/Images/navigationControls_2x.png +0 -0
  206. package/client/dist/chrome-devtools-ui/Images/network-settings.svg +1 -0
  207. package/client/dist/chrome-devtools-ui/Images/node-stack-icon.svg +1 -0
  208. package/client/dist/chrome-devtools-ui/Images/nodeIcon.avif +0 -0
  209. package/client/dist/chrome-devtools-ui/Images/open-externally.svg +1 -0
  210. package/client/dist/chrome-devtools-ui/Images/override.svg +1 -0
  211. package/client/dist/chrome-devtools-ui/Images/palette.svg +1 -0
  212. package/client/dist/chrome-devtools-ui/Images/pause-circle.svg +1 -0
  213. package/client/dist/chrome-devtools-ui/Images/pause.svg +1 -0
  214. package/client/dist/chrome-devtools-ui/Images/pen-spark.svg +1 -0
  215. package/client/dist/chrome-devtools-ui/Images/performance-panel-delete-annotation.svg +1 -0
  216. package/client/dist/chrome-devtools-ui/Images/performance-panel-diagram.svg +1 -0
  217. package/client/dist/chrome-devtools-ui/Images/performance-panel-entry-label.svg +1 -0
  218. package/client/dist/chrome-devtools-ui/Images/performance-panel-time-range.svg +1 -0
  219. package/client/dist/chrome-devtools-ui/Images/performance.svg +1 -0
  220. package/client/dist/chrome-devtools-ui/Images/person.svg +1 -0
  221. package/client/dist/chrome-devtools-ui/Images/photo-camera.svg +1 -0
  222. package/client/dist/chrome-devtools-ui/Images/play.svg +1 -0
  223. package/client/dist/chrome-devtools-ui/Images/plus.svg +1 -0
  224. package/client/dist/chrome-devtools-ui/Images/policy.svg +1 -0
  225. package/client/dist/chrome-devtools-ui/Images/popoverArrows.png +0 -0
  226. package/client/dist/chrome-devtools-ui/Images/popup.svg +1 -0
  227. package/client/dist/chrome-devtools-ui/Images/preview_feature_video_thumbnail.svg +1 -0
  228. package/client/dist/chrome-devtools-ui/Images/profile.svg +1 -0
  229. package/client/dist/chrome-devtools-ui/Images/psychiatry.svg +1 -0
  230. package/client/dist/chrome-devtools-ui/Images/react_native/learn-debugging-basics.jpg +0 -0
  231. package/client/dist/chrome-devtools-ui/Images/react_native/learn-native-debugging.jpg +0 -0
  232. package/client/dist/chrome-devtools-ui/Images/react_native/learn-react-native-devtools.jpg +0 -0
  233. package/client/dist/chrome-devtools-ui/Images/react_native/welcomeIcon.png +0 -0
  234. package/client/dist/chrome-devtools-ui/Images/record-start.svg +1 -0
  235. package/client/dist/chrome-devtools-ui/Images/record-stop.svg +1 -0
  236. package/client/dist/chrome-devtools-ui/Images/redo.svg +1 -0
  237. package/client/dist/chrome-devtools-ui/Images/refresh.svg +1 -0
  238. package/client/dist/chrome-devtools-ui/Images/regular-expression.svg +1 -0
  239. package/client/dist/chrome-devtools-ui/Images/replace.svg +1 -0
  240. package/client/dist/chrome-devtools-ui/Images/replay.svg +1 -0
  241. package/client/dist/chrome-devtools-ui/Images/report.svg +1 -0
  242. package/client/dist/chrome-devtools-ui/Images/resizeDiagonal.svg +1 -0
  243. package/client/dist/chrome-devtools-ui/Images/resizeHorizontal.svg +1 -0
  244. package/client/dist/chrome-devtools-ui/Images/resizeVertical.svg +1 -0
  245. package/client/dist/chrome-devtools-ui/Images/resume.svg +1 -0
  246. package/client/dist/chrome-devtools-ui/Images/review.svg +1 -0
  247. package/client/dist/chrome-devtools-ui/Images/right-panel-close.svg +1 -0
  248. package/client/dist/chrome-devtools-ui/Images/right-panel-open.svg +1 -0
  249. package/client/dist/chrome-devtools-ui/Images/scissors.svg +1 -0
  250. package/client/dist/chrome-devtools-ui/Images/screen-rotation.svg +1 -0
  251. package/client/dist/chrome-devtools-ui/Images/search.svg +1 -0
  252. package/client/dist/chrome-devtools-ui/Images/select-element.svg +1 -0
  253. package/client/dist/chrome-devtools-ui/Images/send.svg +1 -0
  254. package/client/dist/chrome-devtools-ui/Images/shadow.svg +1 -0
  255. package/client/dist/chrome-devtools-ui/Images/small-status-dot.svg +1 -0
  256. package/client/dist/chrome-devtools-ui/Images/smart-assistant.svg +1 -0
  257. package/client/dist/chrome-devtools-ui/Images/snippet.svg +1 -0
  258. package/client/dist/chrome-devtools-ui/Images/spark-info.svg +1 -0
  259. package/client/dist/chrome-devtools-ui/Images/star.svg +1 -0
  260. package/client/dist/chrome-devtools-ui/Images/step-into.svg +1 -0
  261. package/client/dist/chrome-devtools-ui/Images/step-out.svg +1 -0
  262. package/client/dist/chrome-devtools-ui/Images/step-over.svg +1 -0
  263. package/client/dist/chrome-devtools-ui/Images/step.svg +1 -0
  264. package/client/dist/chrome-devtools-ui/Images/stop.svg +1 -0
  265. package/client/dist/chrome-devtools-ui/Images/symbol.svg +1 -0
  266. package/client/dist/chrome-devtools-ui/Images/sync.svg +1 -0
  267. package/client/dist/chrome-devtools-ui/Images/table.svg +1 -0
  268. package/client/dist/chrome-devtools-ui/Images/terminal.svg +1 -0
  269. package/client/dist/chrome-devtools-ui/Images/thumb-down-filled.svg +1 -0
  270. package/client/dist/chrome-devtools-ui/Images/thumb-down.svg +1 -0
  271. package/client/dist/chrome-devtools-ui/Images/thumb-up-filled.svg +1 -0
  272. package/client/dist/chrome-devtools-ui/Images/thumb-up.svg +1 -0
  273. package/client/dist/chrome-devtools-ui/Images/tonality.svg +1 -0
  274. package/client/dist/chrome-devtools-ui/Images/toolbarResizerVertical.png +0 -0
  275. package/client/dist/chrome-devtools-ui/Images/top-panel-close.svg +1 -0
  276. package/client/dist/chrome-devtools-ui/Images/top-panel-open.svg +1 -0
  277. package/client/dist/chrome-devtools-ui/Images/touch-app.svg +1 -0
  278. package/client/dist/chrome-devtools-ui/Images/touchCursor.png +0 -0
  279. package/client/dist/chrome-devtools-ui/Images/touchCursor_2x.png +0 -0
  280. package/client/dist/chrome-devtools-ui/Images/triangle-bottom-right.svg +1 -0
  281. package/client/dist/chrome-devtools-ui/Images/triangle-down.svg +1 -0
  282. package/client/dist/chrome-devtools-ui/Images/triangle-left.svg +1 -0
  283. package/client/dist/chrome-devtools-ui/Images/triangle-right.svg +1 -0
  284. package/client/dist/chrome-devtools-ui/Images/triangle-up.svg +1 -0
  285. package/client/dist/chrome-devtools-ui/Images/tune.svg +1 -0
  286. package/client/dist/chrome-devtools-ui/Images/undo.svg +1 -0
  287. package/client/dist/chrome-devtools-ui/Images/warning-filled.svg +1 -0
  288. package/client/dist/chrome-devtools-ui/Images/warning.svg +1 -0
  289. package/client/dist/chrome-devtools-ui/Images/watch.svg +1 -0
  290. package/client/dist/chrome-devtools-ui/Images/whatsnew.svg +1 -0
  291. package/client/dist/chrome-devtools-ui/Images/width.svg +1 -0
  292. package/client/dist/chrome-devtools-ui/Images/zoom-in.svg +1 -0
  293. package/client/dist/chrome-devtools-ui/Tests.js +1700 -0
  294. package/client/dist/chrome-devtools-ui/application_tokens.css +407 -0
  295. package/client/dist/chrome-devtools-ui/core/common/common.js +1 -0
  296. package/client/dist/chrome-devtools-ui/core/dom_extension/dom_extension.js +1 -0
  297. package/client/dist/chrome-devtools-ui/core/host/host.js +1 -0
  298. package/client/dist/chrome-devtools-ui/core/i18n/i18n.js +1 -0
  299. package/client/dist/chrome-devtools-ui/core/i18n/locales/en-US.json +1 -0
  300. package/client/dist/chrome-devtools-ui/core/i18n/locales/zh.json +1 -0
  301. package/client/dist/chrome-devtools-ui/core/platform/platform.js +1 -0
  302. package/client/dist/chrome-devtools-ui/core/protocol_client/protocol_client.js +1 -0
  303. package/client/dist/chrome-devtools-ui/core/rn_experiments/rn_experiments.js +1 -0
  304. package/client/dist/chrome-devtools-ui/core/root/root.js +1 -0
  305. package/client/dist/chrome-devtools-ui/core/sdk/sdk-meta.js +1 -0
  306. package/client/dist/chrome-devtools-ui/core/sdk/sdk.js +1 -0
  307. package/client/dist/chrome-devtools-ui/design_system_tokens.css +782 -0
  308. package/client/dist/chrome-devtools-ui/device_mode_emulation_frame.html +24 -0
  309. package/client/dist/chrome-devtools-ui/devtools_app.html +24 -0
  310. package/client/dist/chrome-devtools-ui/devtools_compatibility.js +1741 -0
  311. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/MotoG4-landscape.avif +0 -0
  312. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/MotoG4-portrait.avif +0 -0
  313. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/Nexus5X-landscape.avif +0 -0
  314. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/Nexus5X-portrait.avif +0 -0
  315. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/Nexus6P-landscape.avif +0 -0
  316. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/Nexus6P-portrait.avif +0 -0
  317. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nest-hub-horizontal.avif +0 -0
  318. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nest-hub-max-horizontal.avif +0 -0
  319. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5-horizontal-default-1x.avif +0 -0
  320. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5-horizontal-default-2x.avif +0 -0
  321. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5-horizontal-keyboard-1x.avif +0 -0
  322. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5-horizontal-keyboard-2x.avif +0 -0
  323. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5-horizontal-navigation-1x.avif +0 -0
  324. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5-horizontal-navigation-2x.avif +0 -0
  325. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5-vertical-default-1x.avif +0 -0
  326. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5-vertical-default-2x.avif +0 -0
  327. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5-vertical-keyboard-1x.avif +0 -0
  328. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5-vertical-keyboard-2x.avif +0 -0
  329. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5-vertical-navigation-1x.avif +0 -0
  330. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5-vertical-navigation-2x.avif +0 -0
  331. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5x-horizontal-default-1x.avif +0 -0
  332. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5x-horizontal-default-2x.avif +0 -0
  333. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5x-horizontal-keyboard-1x.avif +0 -0
  334. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5x-horizontal-keyboard-2x.avif +0 -0
  335. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5x-horizontal-navigation-1x.avif +0 -0
  336. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5x-horizontal-navigation-2x.avif +0 -0
  337. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5x-vertical-default-1x.avif +0 -0
  338. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5x-vertical-default-2x.avif +0 -0
  339. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5x-vertical-keyboard-1x.avif +0 -0
  340. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5x-vertical-keyboard-2x.avif +0 -0
  341. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5x-vertical-navigation-1x.avif +0 -0
  342. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/google-nexus-5x-vertical-navigation-2x.avif +0 -0
  343. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/iPad-landscape.avif +0 -0
  344. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/iPad-portrait.avif +0 -0
  345. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/iPhone5-landscape.avif +0 -0
  346. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/iPhone5-portrait.avif +0 -0
  347. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/iPhone6-landscape.avif +0 -0
  348. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/iPhone6-portrait.avif +0 -0
  349. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/iPhone6Plus-landscape.avif +0 -0
  350. package/client/dist/chrome-devtools-ui/emulated_devices/optimized/iPhone6Plus-portrait.avif +0 -0
  351. package/client/dist/chrome-devtools-ui/entrypoints/device_mode_emulation_frame/device_mode_emulation_frame.js +1 -0
  352. package/client/dist/chrome-devtools-ui/entrypoints/devtools_app/devtools_app.js +1 -0
  353. package/client/dist/chrome-devtools-ui/entrypoints/formatter_worker/FormatterActions.js +1 -0
  354. package/client/dist/chrome-devtools-ui/entrypoints/formatter_worker/formatter_worker-entrypoint.js +1 -0
  355. package/client/dist/chrome-devtools-ui/entrypoints/formatter_worker/formatter_worker.js +1 -0
  356. package/client/dist/chrome-devtools-ui/entrypoints/heap_snapshot_worker/heap_snapshot_worker-entrypoint.js +1 -0
  357. package/client/dist/chrome-devtools-ui/entrypoints/heap_snapshot_worker/heap_snapshot_worker.js +1 -0
  358. package/client/dist/chrome-devtools-ui/entrypoints/inspector/inspector.js +1 -0
  359. package/client/dist/chrome-devtools-ui/entrypoints/inspector_main/inspector_main-meta.js +1 -0
  360. package/client/dist/chrome-devtools-ui/entrypoints/inspector_main/inspector_main.js +1 -0
  361. package/client/dist/chrome-devtools-ui/entrypoints/js_app/js_app.js +1 -0
  362. package/client/dist/chrome-devtools-ui/entrypoints/lighthouse_worker/lighthouse_worker.js +1 -0
  363. package/client/dist/chrome-devtools-ui/entrypoints/main/main-meta.js +1 -0
  364. package/client/dist/chrome-devtools-ui/entrypoints/main/main.js +48 -0
  365. package/client/dist/chrome-devtools-ui/entrypoints/ndb_app/ndb_app.js +1 -0
  366. package/client/dist/chrome-devtools-ui/entrypoints/node_app/node_app.js +1 -0
  367. package/client/dist/chrome-devtools-ui/entrypoints/rehydrated_devtools_app/rehydrated_devtools_app.js +1 -0
  368. package/client/dist/chrome-devtools-ui/entrypoints/rn_fusebox/rn_fusebox.js +24 -0
  369. package/client/dist/chrome-devtools-ui/entrypoints/shell/shell.js +1 -0
  370. package/client/dist/chrome-devtools-ui/entrypoints/wasmparser_worker/wasmparser_worker-entrypoint.js +1 -0
  371. package/client/dist/chrome-devtools-ui/entrypoints/wasmparser_worker/wasmparser_worker.js +1 -0
  372. package/client/dist/chrome-devtools-ui/entrypoints/worker_app/worker_app.js +1 -0
  373. package/client/dist/chrome-devtools-ui/inspector.html +24 -0
  374. package/client/dist/chrome-devtools-ui/integration_test_runner.html +40 -0
  375. package/client/dist/chrome-devtools-ui/js_app.html +24 -0
  376. package/client/dist/chrome-devtools-ui/legacy_test_runner/legacy_test_runner.js +13 -0
  377. package/client/dist/chrome-devtools-ui/legacy_test_runner/test_runner/test_runner.js +1 -0
  378. package/client/dist/chrome-devtools-ui/models/ai_assistance/ai_assistance.js +1 -0
  379. package/client/dist/chrome-devtools-ui/models/autofill_manager/autofill_manager.js +1 -0
  380. package/client/dist/chrome-devtools-ui/models/bindings/bindings.js +1 -0
  381. package/client/dist/chrome-devtools-ui/models/breakpoints/breakpoints.js +1 -0
  382. package/client/dist/chrome-devtools-ui/models/cpu_profile/cpu_profile.js +1 -0
  383. package/client/dist/chrome-devtools-ui/models/crux-manager/crux-manager.js +1 -0
  384. package/client/dist/chrome-devtools-ui/models/emulation/emulation.js +1 -0
  385. package/client/dist/chrome-devtools-ui/models/extensions/extensions.js +1 -0
  386. package/client/dist/chrome-devtools-ui/models/formatter/formatter.js +1 -0
  387. package/client/dist/chrome-devtools-ui/models/har/har.js +1 -0
  388. package/client/dist/chrome-devtools-ui/models/heap_snapshot_model/heap_snapshot_model.js +1 -0
  389. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/CoepCoopSandboxedIframeCannotNavigateToCoopPage.md +4 -0
  390. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/CoepCorpNotSameOrigin.md +8 -0
  391. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/CoepCorpNotSameOriginAfterDefaultedToSameOriginByCoep.md +18 -0
  392. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/CoepCorpNotSameSite.md +7 -0
  393. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/CoepFrameResourceNeedsCoepHeader.md +10 -0
  394. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/CompatibilityModeQuirks.md +5 -0
  395. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/CookieAttributeValueExceedsMaxSize.md +5 -0
  396. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/LowTextContrast.md +5 -0
  397. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/SameSiteExcludeContextDowngradeRead.md +8 -0
  398. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/SameSiteExcludeContextDowngradeSet.md +8 -0
  399. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/SameSiteExcludeNavigationContextDowngrade.md +8 -0
  400. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/SameSiteInvalidSameParty.md +8 -0
  401. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/SameSiteNoneInsecureErrorRead.md +8 -0
  402. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/SameSiteNoneInsecureErrorSet.md +8 -0
  403. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/SameSiteNoneInsecureWarnRead.md +8 -0
  404. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/SameSiteNoneInsecureWarnSet.md +8 -0
  405. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/SameSiteUnspecifiedLaxAllowUnsafeRead.md +9 -0
  406. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/SameSiteUnspecifiedLaxAllowUnsafeSet.md +9 -0
  407. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/SameSiteWarnCrossDowngradeRead.md +8 -0
  408. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/SameSiteWarnCrossDowngradeSet.md +8 -0
  409. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/SameSiteWarnStrictLaxDowngradeStrict.md +8 -0
  410. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arInsecureContext.md +7 -0
  411. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arInvalidInfoHeader.md +5 -0
  412. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arInvalidRegisterOsSourceHeader.md +5 -0
  413. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arInvalidRegisterOsTriggerHeader.md +5 -0
  414. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arInvalidRegisterSourceHeader.md +5 -0
  415. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arInvalidRegisterTriggerHeader.md +5 -0
  416. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arNavigationRegistrationUniqueScopeAlreadySet.md +5 -0
  417. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arNavigationRegistrationWithoutTransientUserActivation.md +6 -0
  418. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arNoRegisterOsSourceHeader.md +5 -0
  419. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arNoRegisterOsTriggerHeader.md +5 -0
  420. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arNoRegisterSourceHeader.md +5 -0
  421. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arNoRegisterTriggerHeader.md +5 -0
  422. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arNoWebOrOsSupport.md +4 -0
  423. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arOsSourceIgnored.md +18 -0
  424. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arOsTriggerIgnored.md +19 -0
  425. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arPermissionPolicyDisabled.md +8 -0
  426. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arSourceAndTriggerHeaders.md +9 -0
  427. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arSourceIgnored.md +13 -0
  428. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arTriggerIgnored.md +12 -0
  429. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arUntrustworthyReportingOrigin.md +10 -0
  430. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/arWebAndOsHeaders.md +11 -0
  431. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/bounceTrackingMitigations.md +3 -0
  432. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/clientHintMetaTagAllowListInvalidOrigin.md +4 -0
  433. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/clientHintMetaTagModifiedHTML.md +4 -0
  434. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cookieCrossSiteRedirectDowngrade.md +12 -0
  435. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cookieExcludeBlockedWithinRelatedWebsiteSet.md +4 -0
  436. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cookieExcludeDomainNonAscii.md +11 -0
  437. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cookieExcludePortMismatch.md +8 -0
  438. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cookieExcludeSchemeMismatch.md +7 -0
  439. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cookieExcludeThirdPartyPhaseoutRead.md +6 -0
  440. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cookieExcludeThirdPartyPhaseoutSet.md +6 -0
  441. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cookieWarnDomainNonAscii.md +11 -0
  442. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cookieWarnMetadataGrantRead.md +4 -0
  443. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cookieWarnMetadataGrantSet.md +4 -0
  444. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cookieWarnThirdPartyPhaseoutRead.md +6 -0
  445. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cookieWarnThirdPartyPhaseoutSet.md +6 -0
  446. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsAllowCredentialsRequired.md +6 -0
  447. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsDisabledScheme.md +7 -0
  448. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsDisallowedByMode.md +7 -0
  449. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsHeaderDisallowedByPreflightResponse.md +5 -0
  450. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsInsecurePrivateNetwork.md +10 -0
  451. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsInvalidHeaderValues.md +7 -0
  452. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsLocalNetworkAccessPermissionDenied.md +19 -0
  453. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsMethodDisallowedByPreflightResponse.md +5 -0
  454. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsNoCorsRedirectModeNotFollow.md +5 -0
  455. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsOriginMismatch.md +6 -0
  456. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsPreflightAllowPrivateNetworkError.md +10 -0
  457. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsPreflightResponseInvalid.md +5 -0
  458. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsPrivateNetworkPermissionDenied.md +10 -0
  459. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsRedirectContainsCredentials.md +5 -0
  460. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/corsWildcardOriginNotAllowed.md +8 -0
  461. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cspEvalViolation.md +9 -0
  462. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cspInlineViolation.md +10 -0
  463. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cspTrustedTypesPolicyViolation.md +5 -0
  464. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cspTrustedTypesSinkViolation.md +8 -0
  465. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/cspURLViolation.md +10 -0
  466. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/deprecation.md +3 -0
  467. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestAccountsHttpNotFound.md +1 -0
  468. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestAccountsInvalidResponse.md +1 -0
  469. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestAccountsNoResponse.md +1 -0
  470. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestApprovalDeclined.md +1 -0
  471. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestCanceled.md +1 -0
  472. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestClientMetadataHttpNotFound.md +1 -0
  473. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestClientMetadataInvalidResponse.md +1 -0
  474. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestClientMetadataNoResponse.md +1 -0
  475. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestErrorFetchingSignin.md +1 -0
  476. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestErrorIdToken.md +1 -0
  477. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestIdTokenHttpNotFound.md +1 -0
  478. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestIdTokenInvalidRequest.md +1 -0
  479. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestIdTokenInvalidResponse.md +1 -0
  480. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestIdTokenNoResponse.md +1 -0
  481. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestInvalidSigninResponse.md +1 -0
  482. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestManifestHttpNotFound.md +1 -0
  483. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestManifestInvalidResponse.md +1 -0
  484. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestManifestNoResponse.md +1 -0
  485. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthRequestTooManyRequests.md +1 -0
  486. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthUserInfoRequestInvalidAccountsResponse.md +1 -0
  487. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthUserInfoRequestInvalidConfigOrWellKnown.md +1 -0
  488. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoAccountSharingPermission.md +1 -0
  489. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoApiPermission.md +1 -0
  490. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoReturningUserFromFetchedAccounts.md +1 -0
  491. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotIframe.md +1 -0
  492. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotPotentiallyTrustworthy.md +1 -0
  493. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotSameOrigin.md +1 -0
  494. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotSignedInWithIdp.md +1 -0
  495. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/fetchingPartitionedBlobURL.md +7 -0
  496. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/genericFormAriaLabelledByToNonExistingId.md +8 -0
  497. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/genericFormAutocompleteAttributeEmptyError.md +5 -0
  498. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/genericFormDuplicateIdForInputError.md +5 -0
  499. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/genericFormEmptyIdAndNameAttributesForInputError.md +5 -0
  500. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/genericFormInputAssignedAutocompleteValueToIdOrNameAttributeError.md +5 -0
  501. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/genericFormInputHasWrongButWellIntendedAutocompleteValueError.md +5 -0
  502. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/genericFormInputWithNoLabelError.md +5 -0
  503. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/genericFormLabelForMatchesNonExistingIdError.md +5 -0
  504. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/genericFormLabelForNameError.md +5 -0
  505. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/genericFormLabelHasNeitherForNorNestedInput.md +5 -0
  506. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/genericResponseWasBlockedByORB.md +4 -0
  507. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/heavyAd.md +10 -0
  508. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/mixedContent.md +5 -0
  509. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/navigatingPartitionedBlobURL.md +5 -0
  510. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/placeholderDescriptionForInvisibleIssues.md +3 -0
  511. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/propertyRuleInvalidNameIssue.md +3 -0
  512. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/propertyRuleIssue.md +7 -0
  513. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/selectElementAccessibilityDisallowedOptGroupChild.md +7 -0
  514. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/selectElementAccessibilityDisallowedSelectChild.md +7 -0
  515. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/selectElementAccessibilityInteractiveContentAttributesSelectDescendant.md +3 -0
  516. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/selectElementAccessibilityInteractiveContentLegendChild.md +3 -0
  517. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/selectElementAccessibilityInteractiveContentOptionChild.md +3 -0
  518. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/selectElementAccessibilityNonPhrasingContentOptionChild.md +3 -0
  519. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedArrayBuffer.md +7 -0
  520. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryUseErrorCrossOriginNoCorsRequest.md +1 -0
  521. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryUseErrorDictionaryLoadFailure.md +3 -0
  522. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryUseErrorMatchingDictionaryNotUsed.md +3 -0
  523. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryUseErrorUnexpectedContentDictionaryHeader.md +1 -0
  524. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorCossOriginNoCorsRequest.md +1 -0
  525. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorDisallowedBySettings.md +1 -0
  526. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorExpiredResponse.md +3 -0
  527. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorFeatureDisabled.md +3 -0
  528. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorInsufficientResources.md +1 -0
  529. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorInvalidMatchField.md +1 -0
  530. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorInvalidStructuredHeader.md +1 -0
  531. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorNavigationRequest.md +3 -0
  532. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorNoMatchField.md +1 -0
  533. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonListMatchDestField.md +1 -0
  534. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonSecureContext.md +3 -0
  535. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonStringIdField.md +1 -0
  536. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonStringInMatchDestList.md +1 -0
  537. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonStringMatchField.md +1 -0
  538. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonTokenTypeField.md +1 -0
  539. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorRequestAborted.md +1 -0
  540. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorShuttingDown.md +1 -0
  541. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorTooLongIdField.md +3 -0
  542. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sharedDictionaryWriteErrorUnsupportedType.md +3 -0
  543. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriInvalidSignatureHeader.md +14 -0
  544. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriInvalidSignatureInputHeader.md +15 -0
  545. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriMissingSignatureHeader.md +8 -0
  546. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriMissingSignatureInputHeader.md +7 -0
  547. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriSignatureHeaderValueIsIncorrectLength.md +11 -0
  548. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriSignatureHeaderValueIsNotByteSequence.md +14 -0
  549. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriSignatureHeaderValueIsParameterized.md +15 -0
  550. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidComponentName.md +8 -0
  551. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidComponentType.md +13 -0
  552. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidDerivedComponentParameter.md +4 -0
  553. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidHeaderComponentParameter.md +5 -0
  554. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidParameter.md +11 -0
  555. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriSignatureInputHeaderKeyIdLength.md +12 -0
  556. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriSignatureInputHeaderMissingLabel.md +6 -0
  557. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriSignatureInputHeaderMissingRequiredParameters.md +8 -0
  558. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriSignatureInputHeaderValueMissingComponents.md +11 -0
  559. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriSignatureInputHeaderValueNotInnerList.md +11 -0
  560. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriValidationFailedIntegrityMismatch.md +12 -0
  561. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriValidationFailedInvalidLength.md +5 -0
  562. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriValidationFailedSignatureExpired.md +6 -0
  563. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/sriValidationFailedSignatureMismatch.md +11 -0
  564. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/stylesheetLateImport.md +4 -0
  565. package/client/dist/chrome-devtools-ui/models/issues_manager/descriptions/stylesheetRequestFailed.md +3 -0
  566. package/client/dist/chrome-devtools-ui/models/issues_manager/issues_manager.js +1 -0
  567. package/client/dist/chrome-devtools-ui/models/javascript_metadata/javascript_metadata.js +1 -0
  568. package/client/dist/chrome-devtools-ui/models/live-metrics/live-metrics.js +1 -0
  569. package/client/dist/chrome-devtools-ui/models/live-metrics/web-vitals-injected/spec/spec.js +1 -0
  570. package/client/dist/chrome-devtools-ui/models/live-metrics/web-vitals-injected/web-vitals-injected.generated.js +1 -0
  571. package/client/dist/chrome-devtools-ui/models/logs/logs-meta.js +1 -0
  572. package/client/dist/chrome-devtools-ui/models/logs/logs.js +1 -0
  573. package/client/dist/chrome-devtools-ui/models/persistence/persistence-meta.js +1 -0
  574. package/client/dist/chrome-devtools-ui/models/persistence/persistence.js +1 -0
  575. package/client/dist/chrome-devtools-ui/models/project_settings/project_settings.js +1 -0
  576. package/client/dist/chrome-devtools-ui/models/react_native/react_native.js +1 -0
  577. package/client/dist/chrome-devtools-ui/models/source_map_scopes/source_map_scopes.js +1 -0
  578. package/client/dist/chrome-devtools-ui/models/text_utils/text_utils.js +1 -0
  579. package/client/dist/chrome-devtools-ui/models/trace/extras/extras.js +1 -0
  580. package/client/dist/chrome-devtools-ui/models/trace/handlers/handlers.js +1 -0
  581. package/client/dist/chrome-devtools-ui/models/trace/helpers/helpers.js +1 -0
  582. package/client/dist/chrome-devtools-ui/models/trace/insights/insights.js +1 -0
  583. package/client/dist/chrome-devtools-ui/models/trace/lantern/core/core.js +1 -0
  584. package/client/dist/chrome-devtools-ui/models/trace/lantern/graph/graph.js +1 -0
  585. package/client/dist/chrome-devtools-ui/models/trace/lantern/lantern.js +1 -0
  586. package/client/dist/chrome-devtools-ui/models/trace/lantern/metrics/metrics.js +1 -0
  587. package/client/dist/chrome-devtools-ui/models/trace/lantern/simulation/simulation.js +1 -0
  588. package/client/dist/chrome-devtools-ui/models/trace/lantern/types/types.js +1 -0
  589. package/client/dist/chrome-devtools-ui/models/trace/trace.js +1 -0
  590. package/client/dist/chrome-devtools-ui/models/trace/types/types.js +1 -0
  591. package/client/dist/chrome-devtools-ui/models/workspace/workspace.js +1 -0
  592. package/client/dist/chrome-devtools-ui/models/workspace_diff/workspace_diff.js +1 -0
  593. package/client/dist/chrome-devtools-ui/ndb_app.html +24 -0
  594. package/client/dist/chrome-devtools-ui/node_app.html +24 -0
  595. package/client/dist/chrome-devtools-ui/panels/accessibility/accessibility-meta.js +1 -0
  596. package/client/dist/chrome-devtools-ui/panels/accessibility/accessibility.js +1 -0
  597. package/client/dist/chrome-devtools-ui/panels/ai_assistance/ai_assistance-meta.js +1 -0
  598. package/client/dist/chrome-devtools-ui/panels/ai_assistance/ai_assistance.js +512 -0
  599. package/client/dist/chrome-devtools-ui/panels/animation/animation-meta.js +1 -0
  600. package/client/dist/chrome-devtools-ui/panels/animation/animation.js +1 -0
  601. package/client/dist/chrome-devtools-ui/panels/application/application-meta.js +1 -0
  602. package/client/dist/chrome-devtools-ui/panels/application/application.js +107 -0
  603. package/client/dist/chrome-devtools-ui/panels/application/components/components.js +765 -0
  604. package/client/dist/chrome-devtools-ui/panels/application/preloading/components/components.js +362 -0
  605. package/client/dist/chrome-devtools-ui/panels/application/preloading/helper/helper.js +1 -0
  606. package/client/dist/chrome-devtools-ui/panels/autofill/autofill-meta.js +1 -0
  607. package/client/dist/chrome-devtools-ui/panels/autofill/autofill.js +107 -0
  608. package/client/dist/chrome-devtools-ui/panels/browser_debugger/browser_debugger-meta.js +1 -0
  609. package/client/dist/chrome-devtools-ui/panels/browser_debugger/browser_debugger.js +1 -0
  610. package/client/dist/chrome-devtools-ui/panels/changes/changes-meta.js +1 -0
  611. package/client/dist/chrome-devtools-ui/panels/changes/changes.js +31 -0
  612. package/client/dist/chrome-devtools-ui/panels/common/common.js +45 -0
  613. package/client/dist/chrome-devtools-ui/panels/console/console-meta.js +1 -0
  614. package/client/dist/chrome-devtools-ui/panels/console/console.js +6 -0
  615. package/client/dist/chrome-devtools-ui/panels/console_counters/console_counters-meta.js +1 -0
  616. package/client/dist/chrome-devtools-ui/panels/console_counters/console_counters.js +1 -0
  617. package/client/dist/chrome-devtools-ui/panels/coverage/coverage-meta.js +1 -0
  618. package/client/dist/chrome-devtools-ui/panels/coverage/coverage.js +1 -0
  619. package/client/dist/chrome-devtools-ui/panels/css_overview/components/components.js +23 -0
  620. package/client/dist/chrome-devtools-ui/panels/css_overview/css_overview-meta.js +1 -0
  621. package/client/dist/chrome-devtools-ui/panels/css_overview/css_overview.js +148 -0
  622. package/client/dist/chrome-devtools-ui/panels/developer_resources/developer_resources-meta.js +1 -0
  623. package/client/dist/chrome-devtools-ui/panels/developer_resources/developer_resources.js +48 -0
  624. package/client/dist/chrome-devtools-ui/panels/elements/components/components.js +250 -0
  625. package/client/dist/chrome-devtools-ui/panels/elements/elements-meta.js +1 -0
  626. package/client/dist/chrome-devtools-ui/panels/elements/elements.js +67 -0
  627. package/client/dist/chrome-devtools-ui/panels/emulation/components/components.js +39 -0
  628. package/client/dist/chrome-devtools-ui/panels/emulation/emulation-meta.js +1 -0
  629. package/client/dist/chrome-devtools-ui/panels/emulation/emulation.js +1 -0
  630. package/client/dist/chrome-devtools-ui/panels/event_listeners/event_listeners.js +1 -0
  631. package/client/dist/chrome-devtools-ui/panels/explain/explain-meta.js +1 -0
  632. package/client/dist/chrome-devtools-ui/panels/explain/explain.js +231 -0
  633. package/client/dist/chrome-devtools-ui/panels/issues/components/components.js +14 -0
  634. package/client/dist/chrome-devtools-ui/panels/issues/issues-meta.js +1 -0
  635. package/client/dist/chrome-devtools-ui/panels/issues/issues.js +1 -0
  636. package/client/dist/chrome-devtools-ui/panels/js_timeline/js_timeline-meta.js +1 -0
  637. package/client/dist/chrome-devtools-ui/panels/js_timeline/js_timeline.js +2 -0
  638. package/client/dist/chrome-devtools-ui/panels/layer_viewer/layer_viewer-meta.js +1 -0
  639. package/client/dist/chrome-devtools-ui/panels/layer_viewer/layer_viewer.js +1 -0
  640. package/client/dist/chrome-devtools-ui/panels/layers/layers-meta.js +1 -0
  641. package/client/dist/chrome-devtools-ui/panels/layers/layers.js +1 -0
  642. package/client/dist/chrome-devtools-ui/panels/lighthouse/lighthouse-meta.js +1 -0
  643. package/client/dist/chrome-devtools-ui/panels/lighthouse/lighthouse.js +65 -0
  644. package/client/dist/chrome-devtools-ui/panels/linear_memory_inspector/components/components.js +179 -0
  645. package/client/dist/chrome-devtools-ui/panels/linear_memory_inspector/linear_memory_inspector-meta.js +1 -0
  646. package/client/dist/chrome-devtools-ui/panels/linear_memory_inspector/linear_memory_inspector.js +1 -0
  647. package/client/dist/chrome-devtools-ui/panels/media/media-meta.js +1 -0
  648. package/client/dist/chrome-devtools-ui/panels/media/media.js +25 -0
  649. package/client/dist/chrome-devtools-ui/panels/mobile_throttling/mobile_throttling-meta.js +1 -0
  650. package/client/dist/chrome-devtools-ui/panels/mobile_throttling/mobile_throttling.js +1 -0
  651. package/client/dist/chrome-devtools-ui/panels/network/components/components.js +346 -0
  652. package/client/dist/chrome-devtools-ui/panels/network/forward/forward.js +1 -0
  653. package/client/dist/chrome-devtools-ui/panels/network/network-meta.js +1 -0
  654. package/client/dist/chrome-devtools-ui/panels/network/network.js +1 -0
  655. package/client/dist/chrome-devtools-ui/panels/performance_monitor/performance_monitor-meta.js +1 -0
  656. package/client/dist/chrome-devtools-ui/panels/performance_monitor/performance_monitor.js +1 -0
  657. package/client/dist/chrome-devtools-ui/panels/profiler/profiler-meta.js +1 -0
  658. package/client/dist/chrome-devtools-ui/panels/profiler/profiler.js +8 -0
  659. package/client/dist/chrome-devtools-ui/panels/protocol_monitor/protocol_monitor-meta.js +1 -0
  660. package/client/dist/chrome-devtools-ui/panels/protocol_monitor/protocol_monitor.js +293 -0
  661. package/client/dist/chrome-devtools-ui/panels/react_devtools/react_devtools.js +1 -0
  662. package/client/dist/chrome-devtools-ui/panels/react_devtools/react_devtools_components-meta.js +1 -0
  663. package/client/dist/chrome-devtools-ui/panels/react_devtools/react_devtools_profiler-meta.js +1 -0
  664. package/client/dist/chrome-devtools-ui/panels/recorder/components/components.js +686 -0
  665. package/client/dist/chrome-devtools-ui/panels/recorder/controllers/controllers.js +1 -0
  666. package/client/dist/chrome-devtools-ui/panels/recorder/converters/converters.js +1 -0
  667. package/client/dist/chrome-devtools-ui/panels/recorder/extensions/extensions.js +1 -0
  668. package/client/dist/chrome-devtools-ui/panels/recorder/injected/injected.generated.js +1 -0
  669. package/client/dist/chrome-devtools-ui/panels/recorder/injected/injected.js +1 -0
  670. package/client/dist/chrome-devtools-ui/panels/recorder/models/models.js +1 -0
  671. package/client/dist/chrome-devtools-ui/panels/recorder/recorder-actions/recorder-actions.js +3 -0
  672. package/client/dist/chrome-devtools-ui/panels/recorder/recorder-meta.js +1 -0
  673. package/client/dist/chrome-devtools-ui/panels/recorder/recorder.js +126 -0
  674. package/client/dist/chrome-devtools-ui/panels/recorder/util/util.js +1 -0
  675. package/client/dist/chrome-devtools-ui/panels/rn_welcome/rn_welcome-meta.js +1 -0
  676. package/client/dist/chrome-devtools-ui/panels/rn_welcome/rn_welcome.js +62 -0
  677. package/client/dist/chrome-devtools-ui/panels/screencast/screencast-meta.js +1 -0
  678. package/client/dist/chrome-devtools-ui/panels/screencast/screencast.js +1 -0
  679. package/client/dist/chrome-devtools-ui/panels/search/search.js +1 -0
  680. package/client/dist/chrome-devtools-ui/panels/security/security-meta.js +1 -0
  681. package/client/dist/chrome-devtools-ui/panels/security/security.js +178 -0
  682. package/client/dist/chrome-devtools-ui/panels/sensors/sensors-meta.js +1 -0
  683. package/client/dist/chrome-devtools-ui/panels/sensors/sensors.js +1 -0
  684. package/client/dist/chrome-devtools-ui/panels/settings/components/components.js +22 -0
  685. package/client/dist/chrome-devtools-ui/panels/settings/emulation/components/components.js +221 -0
  686. package/client/dist/chrome-devtools-ui/panels/settings/emulation/emulation-meta.js +1 -0
  687. package/client/dist/chrome-devtools-ui/panels/settings/emulation/emulation.js +1 -0
  688. package/client/dist/chrome-devtools-ui/panels/settings/emulation/utils/utils.js +1 -0
  689. package/client/dist/chrome-devtools-ui/panels/settings/settings-meta.js +1 -0
  690. package/client/dist/chrome-devtools-ui/panels/settings/settings.js +91 -0
  691. package/client/dist/chrome-devtools-ui/panels/snippets/snippets.js +1 -0
  692. package/client/dist/chrome-devtools-ui/panels/sources/components/components.js +162 -0
  693. package/client/dist/chrome-devtools-ui/panels/sources/sources-meta.js +1 -0
  694. package/client/dist/chrome-devtools-ui/panels/sources/sources.js +2 -0
  695. package/client/dist/chrome-devtools-ui/panels/timeline/components/components.js +1063 -0
  696. package/client/dist/chrome-devtools-ui/panels/timeline/components/insights/insights.js +262 -0
  697. package/client/dist/chrome-devtools-ui/panels/timeline/extensions/extensions.js +1 -0
  698. package/client/dist/chrome-devtools-ui/panels/timeline/overlays/components/components.js +190 -0
  699. package/client/dist/chrome-devtools-ui/panels/timeline/overlays/overlays.js +1 -0
  700. package/client/dist/chrome-devtools-ui/panels/timeline/timeline-meta.js +1 -0
  701. package/client/dist/chrome-devtools-ui/panels/timeline/timeline.js +43 -0
  702. package/client/dist/chrome-devtools-ui/panels/timeline/utils/utils.js +1 -0
  703. package/client/dist/chrome-devtools-ui/panels/utils/utils.js +1 -0
  704. package/client/dist/chrome-devtools-ui/panels/web_audio/graph_visualizer/graph_visualizer.js +1 -0
  705. package/client/dist/chrome-devtools-ui/panels/web_audio/web_audio-meta.js +1 -0
  706. package/client/dist/chrome-devtools-ui/panels/web_audio/web_audio.js +19 -0
  707. package/client/dist/chrome-devtools-ui/panels/webauthn/webauthn-meta.js +1 -0
  708. package/client/dist/chrome-devtools-ui/panels/webauthn/webauthn.js +1 -0
  709. package/client/dist/chrome-devtools-ui/panels/whats_new/resources/WNDT.md +6 -0
  710. package/client/dist/chrome-devtools-ui/panels/whats_new/whats_new-meta.js +1 -0
  711. package/client/dist/chrome-devtools-ui/panels/whats_new/whats_new.js +32 -0
  712. package/client/dist/chrome-devtools-ui/rehydrated_devtools_app.html +24 -0
  713. package/client/dist/chrome-devtools-ui/rn_fusebox.html +24 -0
  714. package/client/dist/chrome-devtools-ui/services/puppeteer/puppeteer.js +1 -0
  715. package/client/dist/chrome-devtools-ui/services/trace_bounds/trace_bounds.js +1 -0
  716. package/client/dist/chrome-devtools-ui/services/tracing/tracing.js +1 -0
  717. package/client/dist/chrome-devtools-ui/services/window_bounds/window_bounds.js +1 -0
  718. package/client/dist/chrome-devtools-ui/third_party/acorn/acorn.js +1 -0
  719. package/client/dist/chrome-devtools-ui/third_party/chromium/client-variations/client-variations.js +1 -0
  720. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/chunk/angular.js +2 -0
  721. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/chunk/codemirror.js +2 -0
  722. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/chunk/cpp.js +2 -0
  723. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/chunk/java.js +2 -0
  724. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/chunk/legacy.js +2 -0
  725. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/chunk/less.js +2 -0
  726. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/chunk/markdown.js +2 -0
  727. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/chunk/php.js +2 -0
  728. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/chunk/python.js +2 -0
  729. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/chunk/sass.js +2 -0
  730. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/chunk/svelte.js +2 -0
  731. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/chunk/vue.js +2 -0
  732. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/chunk/wast.js +2 -0
  733. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/chunk/xml.js +2 -0
  734. package/client/dist/chrome-devtools-ui/third_party/codemirror.next/codemirror.next.js +2 -0
  735. package/client/dist/chrome-devtools-ui/third_party/csp_evaluator/csp_evaluator.js +194 -0
  736. package/client/dist/chrome-devtools-ui/third_party/diff/diff.js +1 -0
  737. package/client/dist/chrome-devtools-ui/third_party/i18n/i18n.js +1 -0
  738. package/client/dist/chrome-devtools-ui/third_party/intl-messageformat/intl-messageformat.js +15 -0
  739. package/client/dist/chrome-devtools-ui/third_party/json5/json5.js +1 -0
  740. package/client/dist/chrome-devtools-ui/third_party/legacy-javascript/legacy-javascript.js +7 -0
  741. package/client/dist/chrome-devtools-ui/third_party/lighthouse/lighthouse-dt-bundle.js +3023 -0
  742. package/client/dist/chrome-devtools-ui/third_party/lighthouse/report/report.js +39 -0
  743. package/client/dist/chrome-devtools-ui/third_party/lit/lit.js +121 -0
  744. package/client/dist/chrome-devtools-ui/third_party/marked/marked.js +1 -0
  745. package/client/dist/chrome-devtools-ui/third_party/puppeteer/puppeteer.js +373 -0
  746. package/client/dist/chrome-devtools-ui/third_party/puppeteer-replay/puppeteer-replay.js +1 -0
  747. package/client/dist/chrome-devtools-ui/third_party/react-devtools/react-devtools.js +41 -0
  748. package/client/dist/chrome-devtools-ui/third_party/third-party-web/third-party-web.js +1 -0
  749. package/client/dist/chrome-devtools-ui/third_party/wasmparser/wasmparser.js +1 -0
  750. package/client/dist/chrome-devtools-ui/third_party/web-vitals/web-vitals.js +1 -0
  751. package/client/dist/chrome-devtools-ui/ui/components/adorners/adorners.js +1 -0
  752. package/client/dist/chrome-devtools-ui/ui/components/buttons/buttons.js +17 -0
  753. package/client/dist/chrome-devtools-ui/ui/components/cards/cards.js +10 -0
  754. package/client/dist/chrome-devtools-ui/ui/components/chrome_link/chrome_link.js +6 -0
  755. package/client/dist/chrome-devtools-ui/ui/components/code_highlighter/code_highlighter.js +1 -0
  756. package/client/dist/chrome-devtools-ui/ui/components/dialogs/dialogs.js +61 -0
  757. package/client/dist/chrome-devtools-ui/ui/components/diff_view/diff_view.js +8 -0
  758. package/client/dist/chrome-devtools-ui/ui/components/expandable_list/expandable_list.js +17 -0
  759. package/client/dist/chrome-devtools-ui/ui/components/floating_button/floating_button.js +1 -0
  760. package/client/dist/chrome-devtools-ui/ui/components/helpers/helpers.js +1 -0
  761. package/client/dist/chrome-devtools-ui/ui/components/highlighting/highlighting.js +1 -0
  762. package/client/dist/chrome-devtools-ui/ui/components/icon_button/icon_button.js +13 -0
  763. package/client/dist/chrome-devtools-ui/ui/components/input/input.js +1 -0
  764. package/client/dist/chrome-devtools-ui/ui/components/issue_counter/issue_counter.js +10 -0
  765. package/client/dist/chrome-devtools-ui/ui/components/legacy_wrapper/legacy_wrapper.js +1 -0
  766. package/client/dist/chrome-devtools-ui/ui/components/linkifier/linkifier.js +1 -0
  767. package/client/dist/chrome-devtools-ui/ui/components/markdown_view/markdown_view.js +51 -0
  768. package/client/dist/chrome-devtools-ui/ui/components/menus/menus.js +71 -0
  769. package/client/dist/chrome-devtools-ui/ui/components/node_text/node_text.js +3 -0
  770. package/client/dist/chrome-devtools-ui/ui/components/panel_feedback/panel_feedback.js +37 -0
  771. package/client/dist/chrome-devtools-ui/ui/components/panel_introduction_steps/panel_introduction_steps.js +9 -0
  772. package/client/dist/chrome-devtools-ui/ui/components/render_coordinator/render_coordinator.js +1 -0
  773. package/client/dist/chrome-devtools-ui/ui/components/report_view/report_view.js +21 -0
  774. package/client/dist/chrome-devtools-ui/ui/components/request_link_icon/request_link_icon.js +8 -0
  775. package/client/dist/chrome-devtools-ui/ui/components/settings/settings.js +20 -0
  776. package/client/dist/chrome-devtools-ui/ui/components/spinners/spinners.js +16 -0
  777. package/client/dist/chrome-devtools-ui/ui/components/srgb_overlay/srgb_overlay.js +6 -0
  778. package/client/dist/chrome-devtools-ui/ui/components/suggestion_input/suggestion_input.js +29 -0
  779. package/client/dist/chrome-devtools-ui/ui/components/survey_link/survey_link.js +7 -0
  780. package/client/dist/chrome-devtools-ui/ui/components/switch/switch.js +10 -0
  781. package/client/dist/chrome-devtools-ui/ui/components/text_editor/text_editor.js +1 -0
  782. package/client/dist/chrome-devtools-ui/ui/components/text_prompt/text_prompt.js +4 -0
  783. package/client/dist/chrome-devtools-ui/ui/components/tooltips/tooltips.js +7 -0
  784. package/client/dist/chrome-devtools-ui/ui/components/tree_outline/tree_outline.js +32 -0
  785. package/client/dist/chrome-devtools-ui/ui/legacy/components/color_picker/color_picker.js +1 -0
  786. package/client/dist/chrome-devtools-ui/ui/legacy/components/cookie_table/cookie_table.js +85 -0
  787. package/client/dist/chrome-devtools-ui/ui/legacy/components/data_grid/data_grid.js +1 -0
  788. package/client/dist/chrome-devtools-ui/ui/legacy/components/inline_editor/inline_editor.js +58 -0
  789. package/client/dist/chrome-devtools-ui/ui/legacy/components/object_ui/object_ui-meta.js +1 -0
  790. package/client/dist/chrome-devtools-ui/ui/legacy/components/object_ui/object_ui.js +7 -0
  791. package/client/dist/chrome-devtools-ui/ui/legacy/components/perf_ui/perf_ui-meta.js +1 -0
  792. package/client/dist/chrome-devtools-ui/ui/legacy/components/perf_ui/perf_ui.js +60 -0
  793. package/client/dist/chrome-devtools-ui/ui/legacy/components/quick_open/quick_open-meta.js +1 -0
  794. package/client/dist/chrome-devtools-ui/ui/legacy/components/quick_open/quick_open.js +1 -0
  795. package/client/dist/chrome-devtools-ui/ui/legacy/components/source_frame/source_frame-meta.js +1 -0
  796. package/client/dist/chrome-devtools-ui/ui/legacy/components/source_frame/source_frame.js +1 -0
  797. package/client/dist/chrome-devtools-ui/ui/legacy/components/utils/utils.js +1 -0
  798. package/client/dist/chrome-devtools-ui/ui/legacy/legacy.js +59 -0
  799. package/client/dist/chrome-devtools-ui/ui/legacy/theme_support/theme_support.js +1 -0
  800. package/client/dist/chrome-devtools-ui/ui/lit/lit.js +1 -0
  801. package/client/dist/chrome-devtools-ui/ui/visual_logging/visual_logging.js +1 -0
  802. package/client/dist/chrome-devtools-ui/worker_app.html +24 -0
  803. package/client/dist/index.html +3 -3
  804. package/package.json +4 -1
  805. package/packages/simdeck-test/dist/index.d.ts +7 -1
  806. package/client/dist/assets/index-BHTf_1bs.js +0 -9
  807. package/client/dist/assets/index-PP2opq5o.css +0 -1
@@ -0,0 +1,59 @@
1
+ import*as e from"../../core/common/common.js";import*as t from"../../core/i18n/i18n.js";import*as i from"../../core/platform/platform.js";import*as n from"../../core/root/root.js";import*as s from"../visual_logging/visual_logging.js";import*as o from"../components/buttons/buttons.js";import*as r from"../components/icon_button/icon_button.js";import*as a from"../../core/host/host.js";import*as l from"../../core/sdk/sdk.js";import"../../core/dom_extension/dom_extension.js";import*as d from"../lit/lit.js";import{html as h,render as c}from"../lit/lit.js";import*as u from"./theme_support/theme_support.js";import*as m from"../components/settings/settings.js";import*as p from"../../models/text_utils/text_utils.js";let g;class b{#e=new Map;#t=new Map;constructor(){}static instance(e={forceNew:null}){const{forceNew:t}=e;return g&&!t||(g=new b),g}static removeInstance(){g=void 0}setFlavor(e,t){(this.#e.get(e)||null)!==t&&(t?this.#e.set(e,t):this.#e.delete(e),this.#i(e,t))}#i(e,t){for(const i of v)i.contextTypes().includes(e)&&i.loadListener().then((e=>e.flavorChanged(t)));const i=this.#t.get(e);i&&i.dispatchEventToListeners("FlavorChanged",t)}addFlavorChangeListener(t,i,n){let s=this.#t.get(t);s||(s=new e.ObjectWrapper.ObjectWrapper,this.#t.set(t,s)),s.addEventListener("FlavorChanged",i,n)}removeFlavorChangeListener(e,t,i){const n=this.#t.get(e);n&&(n.removeEventListener("FlavorChanged",t,i),n.hasEventListeners("FlavorChanged")||this.#t.delete(e))}flavor(e){return this.#e.get(e)||null}flavors(){return new Set(this.#e.keys())}}const v=[];var f=Object.freeze({__proto__:null,Context:b,registerListener:function(e){v.push(e)}});const w={elements:"Elements",screenshot:"Screenshot",network:"Network",memory:"Memory",javascript_profiler:"JavaScript Profiler",console:"Console",performance:"Performance",mobile:"Mobile",help:"Help",layers:"Layers",navigation:"Navigation",drawer:"Drawer",global:"Global",resources:"Resources",background_services:"Background Services",settings:"Settings",debugger:"Debugger",sources:"Sources",rendering:"Rendering",recorder:"Recorder",changes:"Changes"},x=t.i18n.registerUIStrings("ui/legacy/ActionRegistration.ts",w),y=t.i18n.getLocalizedString.bind(void 0,x);class E extends e.ObjectWrapper.ObjectWrapper{enabledInternal=!0;toggledInternal=!1;actionRegistration;constructor(e){super(),this.actionRegistration=e}id(){return this.actionRegistration.actionId}async execute(){if(!this.actionRegistration.loadActionDelegate)return!1;const e=await this.actionRegistration.loadActionDelegate(),t=this.id();return e.handleAction(b.instance(),t)}icon(){return this.actionRegistration.iconClass}toggledIcon(){return this.actionRegistration.toggledIconClass}toggleWithRedColor(){return Boolean(this.actionRegistration.toggleWithRedColor)}setEnabled(e){this.enabledInternal!==e&&(this.enabledInternal=e,this.dispatchEventToListeners("Enabled",e))}enabled(){return this.enabledInternal}category(){return this.actionRegistration.category}tags(){if(this.actionRegistration.tags)return this.actionRegistration.tags.map((e=>e())).join("\0")}toggleable(){return Boolean(this.actionRegistration.toggleable)}title(){let e=this.actionRegistration.title?this.actionRegistration.title():t.i18n.lockedString("");const i=this.actionRegistration.options;if(i)for(const t of i)t.value!==this.toggledInternal&&(e=t.title());return e}toggled(){return this.toggledInternal}setToggled(e){console.assert(this.toggleable(),"Shouldn't be toggling an untoggleable action",this.id()),this.toggledInternal!==e&&(this.toggledInternal=e,this.dispatchEventToListeners("Toggled",e))}options(){return this.actionRegistration.options}contextTypes(){if(this.actionRegistration.contextTypes)return this.actionRegistration.contextTypes()}canInstantiate(){return Boolean(this.actionRegistration.loadActionDelegate)}bindings(){return this.actionRegistration.bindings}experiment(){return this.actionRegistration.experiment}setting(){return this.actionRegistration.setting}condition(){return this.actionRegistration.condition}order(){return this.actionRegistration.order}}const I=new Map;function S(){I.clear()}function C(){return Array.from(I.values()).filter((t=>{const i=t.setting();try{if(i&&!e.Settings.moduleSetting(i).get())return!1}catch(e){if(e.message.startsWith("No setting registered"))return!1}return n.Runtime.Runtime.isDescriptorEnabled({experiment:t.experiment(),condition:t.condition()})})).sort(((e,t)=>(e.order()||0)-(t.order()||0)))}var T=Object.freeze({__proto__:null,Action:E,getLocalizedActionCategory:function(e){switch(e){case"ELEMENTS":return y(w.elements);case"SCREENSHOT":return y(w.screenshot);case"NETWORK":return y(w.network);case"MEMORY":return y(w.memory);case"JAVASCRIPT_PROFILER":return y(w.javascript_profiler);case"CONSOLE":return y(w.console);case"PERFORMANCE":return y(w.performance);case"MOBILE":return y(w.mobile);case"HELP":return y(w.help);case"LAYERS":return y(w.layers);case"NAVIGATION":return y(w.navigation);case"DRAWER":return y(w.drawer);case"GLOBAL":return y(w.global);case"RESOURCES":return y(w.resources);case"BACKGROUND_SERVICES":return y(w.background_services);case"SETTINGS":return y(w.settings);case"DEBUGGER":return y(w.debugger);case"SOURCES":return y(w.sources);case"RENDERING":return y(w.rendering);case"RECORDER":return y(w.recorder);case"CHANGES":return y(w.changes);case"":return t.i18n.lockedString("")}return t.i18n.lockedString(e)},getRegisteredActionExtensions:C,maybeRemoveActionExtension:function(e){return I.delete(e)},registerActionExtension:function(e){const t=e.actionId;if(I.has(t))throw new Error(`Duplicate action ID '${t}'`);if(!i.StringUtilities.isExtendedKebabCase(t))throw new Error(`Invalid action ID '${t}'`);I.set(t,new E(e))},reset:S});let k;class M{actionsById;constructor(){this.actionsById=new Map,this.registerActions()}static instance(e={forceNew:null}){const{forceNew:t}=e;return k&&!t||(k=new M),k}static removeInstance(){k=void 0}static reset(){M.removeInstance(),S()}registerActions(){for(const e of C())this.actionsById.set(e.id(),e),e.canInstantiate()||e.setEnabled(!1)}availableActions(){return this.applicableActions([...this.actionsById.keys()],b.instance())}actions(){return[...this.actionsById.values()]}applicableActions(e,t){const i=[];for(const s of e){const e=this.actionsById.get(s);e?.enabled()&&n(e,t.flavors())&&i.push(e)}return i;function n(e,t){const i=e.contextTypes();if(!i)return!0;for(let e=0;e<i.length;++e){const n=i[e];if(Boolean(n)&&t.has(n))return!0}return!1}}hasAction(e){return this.actionsById.has(e)}getAction(e){const t=this.actionsById.get(e);if(t)return t;throw new Error(`Cannot find registered action with ID '${e}'`)}}var L=Object.freeze({__proto__:null,ActionRegistry:M}),P={cssText:`.widget{border-radius:var(--sys-shape-corner-small);box-shadow:var(--sys-elevation-level3);background:var(--sys-color-cdt-base-container);justify-content:flex-start;align-items:stretch;display:flex;min-width:min(100vw,var(--sys-size-30))}.dialog-close-button{position:absolute;right:9px;top:9px;z-index:1}\n/*# sourceURL=${import.meta.resolve("./dialog.css")} */\n`},D={cssText:`:host{position:absolute!important;inset:0;overflow:hidden;contain:strict;background-color:transparent}:host-context(.dimmed-pane){background-color:var(--sys-color-state-scrim)}:host-context(.no-pointer-events){pointer-events:none}.widget{display:flex;background-color:transparent;pointer-events:auto;flex:none}.no-pointer-events{pointer-events:none}\n/*# sourceURL=${import.meta.resolve("./glassPane.css")} */\n`};class A{descriptors;action;type;keybindSets;constructor(e,t,i,n){this.descriptors=e,this.action=t,this.type=i,this.keybindSets=n||new Set}title(){return this.descriptors.map((e=>e.name)).join(" ")}isDefault(){return"DefaultShortcut"===this.type||"DisabledDefault"===this.type||"KeybindSetShortcut"===this.type&&this.keybindSets.has(ee)}changeType(e){return new A(this.descriptors,this.action,e)}changeKeys(e){return this.descriptors=e,this}descriptorsMatch(e){return e.length===this.descriptors.length&&e.every(((e,t)=>e.key===this.descriptors[t].key))}hasKeybindSet(e){return!this.keybindSets||this.keybindSets.has(e)}equals(e){return this.descriptorsMatch(e.descriptors)&&this.type===e.type&&this.action===e.action}static createShortcutFromSettingObject(e){return new A(e.descriptors,e.action,e.type)}static makeKey(e,t){return"string"==typeof e&&(e=e.charCodeAt(0)-(/^[a-z]/.test(e)?32:0)),t=t||z.None.value,A.makeKeyFromCodeAndModifiers(e,t)}static makeKeyFromEvent(e){let t=z.None.value;e.shiftKey&&(t|=z.Shift.value),e.ctrlKey&&(t|=z.Ctrl.value),e.altKey&&(t|=z.Alt.value),e.metaKey&&(t|=z.Meta.value);const i=e.keyCode||e.__keyCode;return A.makeKeyFromCodeAndModifiers(i,t)}static eventHasCtrlEquivalentKey(e){return a.Platform.isMac()?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey}static eventHasEitherCtrlOrMeta(e){return e.metaKey||e.ctrlKey}static hasNoModifiers(e){const t=e;return!(t.ctrlKey||t.shiftKey||t.altKey||t.metaKey)}static hasAtLeastOneModifier(e){return!1===A.hasNoModifiers(e)}static makeDescriptor(e,t){return{key:A.makeKey("string"==typeof e?e:e.code,t),name:A.shortcutToString(e,t)}}static makeDescriptorFromBindingShortcut(e){const[t,...i]=e.split(/\+(?!$)/).reverse();let n=0;for(const t of i){const i=z[t].value;console.assert(void 0!==i,`Only one key other than modifier is allowed in shortcut <${e}>`),n|=i}console.assert(t.length>0,`Modifiers-only shortcuts are not allowed (encountered <${e}>)`);const s=K[t]||$[t];return s&&"shiftKey"in s&&s.shiftKey&&(n|=z.Shift.value),A.makeDescriptor(s||t,n)}static shortcutToString(e,t){return"string"!=typeof e&&A.isModifier(e.code)?A.modifiersToString(t):A.modifiersToString(t)+A.keyName(e)}static keyName(e){return"string"==typeof e?e.toUpperCase():"string"==typeof e.name?e.name:e.name[a.Platform.platform()]||e.name.other||""}static makeKeyFromCodeAndModifiers(e,t){return 255&e|(t||0)<<8}static keyCodeAndModifiersFromKey(e){return{keyCode:255&e,modifiers:e>>8}}static isModifier(e){const{keyCode:t}=A.keyCodeAndModifiersFromKey(e);return t===K.Shift.code||t===K.Ctrl.code||t===K.Alt.code||t===K.Meta.code}static modifiersToString(e){const t=a.Platform.isMac(),i=z,n=new Map([[i.Ctrl,t?"Ctrl ":"Ctrl + "],[i.Alt,t?"⌥ ":"Alt + "],[i.Shift,t?"⇧ ":"Shift + "],[i.Meta,t?"⌘ ":"Win + "]]);return[i.Meta,i.Ctrl,i.Alt,i.Shift].map((function(t){return(e||0)&t.value?n.get(t):""})).join("")}}const z={None:{value:0,name:"None"},Shift:{value:1,name:"Shift"},Ctrl:{value:2,name:"Ctrl"},Alt:{value:4,name:"Alt"},Meta:{value:8,name:"Meta"},CtrlOrMeta:{value:a.Platform.isMac()?8:2,name:a.Platform.isMac()?"Meta":"Ctrl"},ShiftOrOption:{value:a.Platform.isMac()?4:1,name:a.Platform.isMac()?"Alt":"Shift"}},R={code:37,name:"←"},B={code:38,name:"↑"},O={code:39,name:"→"},F={code:40,name:"↓"},W={code:17,name:"Ctrl"},H={code:27,name:"Esc"},N={code:32,name:"Space"},j={code:187,name:"+"},V={code:192,name:"`"},U={code:222,name:"'"},_={code:91,name:"Meta"},K={Backspace:{code:8,name:"↤"},Tab:{code:9,name:{mac:"⇥",other:"Tab"}},Enter:{code:13,name:{mac:"↩",other:"Enter"}},Shift:{code:16,name:{mac:"⇧",other:"Shift"}},Ctrl:W,Control:W,Alt:{code:18,name:"Alt"},Esc:H,Escape:H,Space:N," ":N,PageUp:{code:33,name:{mac:"⇞",other:"PageUp"}},PageDown:{code:34,name:{mac:"⇟",other:"PageDown"}},End:{code:35,name:{mac:"↗",other:"End"}},Home:{code:36,name:{mac:"↖",other:"Home"}},Left:R,Up:B,Right:O,Down:F,ArrowLeft:R,ArrowUp:B,ArrowRight:O,ArrowDown:F,Delete:{code:46,name:"Del"},Zero:{code:48,name:"0"},C:{code:67,name:"C"},H:{code:72,name:"H"},N:{code:78,name:"N"},P:{code:80,name:"P"},R:{code:82,name:"R"},U:{code:85,name:"U"},V:{code:86,name:"V"},X:{code:88,name:"X"},Meta:_,F1:{code:112,name:"F1"},F2:{code:113,name:"F2"},F3:{code:114,name:"F3"},F4:{code:115,name:"F4"},F5:{code:116,name:"F5"},F6:{code:117,name:"F6"},F7:{code:118,name:"F7"},F8:{code:119,name:"F8"},F9:{code:120,name:"F9"},F10:{code:121,name:"F10"},F11:{code:122,name:"F11"},F12:{code:123,name:"F12"},Semicolon:{code:186,name:";"},NumpadPlus:{code:107,name:"Numpad +"},NumpadMinus:{code:109,name:"Numpad -"},Numpad0:{code:96,name:"Numpad 0"},Plus:j,Equal:j,Comma:{code:188,name:","},Minus:{code:189,name:"-"},Period:{code:190,name:"."},Slash:{code:191,name:"/"},QuestionMark:{code:191,name:"?"},Apostrophe:V,Tilde:{code:192,name:"Tilde"},Backquote:V,IntlBackslash:V,LeftSquareBracket:{code:219,name:"["},RightSquareBracket:{code:221,name:"]"},Backslash:{code:220,name:"\\"},SingleQuote:U,Quote:U,CtrlOrMeta:a.Platform.isMac()?_:W},$={};!function(){for(const e in K){const t=K[e];if("object"==typeof t&&t.code){const i="string"==typeof t.name?t.name:e;$[i]=t}}}();var q=Object.freeze({__proto__:null,KeyBindings:$,KeyboardShortcut:A,Keys:K,Modifiers:z});let X;class G{actionRegistry;actionToShortcut;keyMap;activePrefixKey;activePrefixTimeout;consumePrefix;devToolsDefaultShortcutActions;disabledDefaultShortcutsForAction;keybindSetSetting;userShortcutsSetting;constructor(t){this.actionRegistry=t,this.actionToShortcut=new i.MapUtilities.Multimap,this.keyMap=new Y(0,0),this.activePrefixKey=null,this.activePrefixTimeout=null,this.consumePrefix=null,this.devToolsDefaultShortcutActions=new Set,this.disabledDefaultShortcutsForAction=new i.MapUtilities.Multimap,this.keybindSetSetting=e.Settings.Settings.instance().moduleSetting("active-keybind-set"),this.keybindSetSetting.addChangeListener((e=>{a.userMetrics.keybindSetSettingChanged(e.data),this.registerBindings()})),this.userShortcutsSetting=e.Settings.Settings.instance().moduleSetting("user-shortcuts"),this.userShortcutsSetting.addChangeListener(this.registerBindings,this),this.registerBindings()}static instance(e={forceNew:null,actionRegistry:null}){const{forceNew:t,actionRegistry:i}=e;if(!X||t){if(!i)throw new Error("Missing actionRegistry for shortcutRegistry");X=new G(i)}return X}static removeInstance(){X=void 0}applicableActions(e,t={}){let i=[];const n=(this.activePrefixKey||this.keyMap).getNode(e);n&&(i=n.actions());const s=this.actionRegistry.applicableActions(i,b.instance());if(n)for(const e of Object.keys(t))if(n.actions().indexOf(e)>=0&&this.actionRegistry.hasAction(e)){const t=this.actionRegistry.getAction(e);s.push(t)}return s}shortcutsForAction(e){return[...this.actionToShortcut.get(e)]}actionsForDescriptors(e){let t=this.keyMap;for(const{key:i}of e){if(!t)return[];t=t.getNode(i)}return t?t.actions():[]}globalShortcutKeys(){const e=[];for(const t of this.keyMap.chords().values()){const i=t.actions();(this.actionRegistry.applicableActions(i,b.instance()).length||t.hasChords())&&e.push(t.key())}return e}shortcutTitleForAction(e){for(const t of this.actionToShortcut.get(e))return t.title()}handleShortcut(e,t){this.handleKey(A.makeKeyFromEvent(e),e.key,e,t)}actionHasDefaultShortcut(e){return this.devToolsDefaultShortcutActions.has(e)}getShortcutListener(e){const t=Object.keys(e).flatMap((e=>[...this.actionToShortcut.get(e)])),i=new Y(0,0);return t.forEach((e=>{i.addKeyMapping(e.descriptors.map((e=>e.key)),e.action)})),t=>{const n=A.makeKeyFromEvent(t),s=this.activePrefixKey?i.getNode(this.activePrefixKey.key()):i;s&&s.getNode(n)&&this.handleShortcut(t,e)}}addShortcutListener(e,t){const i=this.getShortcutListener(t);return e.addEventListener("keydown",i),i}async handleKey(e,t,i,n){const o=e>>8,r=Boolean(n)||Boolean(this.activePrefixKey),l=this.keyMap.getNode(e),d=this.applicableActions(e,n).length>0||l?.hasChords();if((r||!function(){if(!i||!fn()||/^F\d+|Control|Shift|Alt|Meta|Escape|Win|U\+001B$/.test(t))return!1;if(!o)return!0;const n=z;if(a.Platform.isMac()){if(A.makeKey("z",n.Meta.value)===e)return!0;if(A.makeKey("z",n.Meta.value|n.Shift.value)===e)return!0}else{if(A.makeKey("z",n.Ctrl.value)===e)return!0;if(A.makeKey("y",n.Ctrl.value)===e)return!0;if(!a.Platform.isWin()&&A.makeKey("z",n.Ctrl.value|n.Shift.value)===e)return!0}if((o&(n.Ctrl.value|n.Alt.value))==(n.Ctrl.value|n.Alt.value))return a.Platform.isWin();return!h(n.Ctrl.value)&&!h(n.Alt.value)&&!h(n.Meta.value)}())&&d&&!A.isModifier(A.keyCodeAndModifiersFromKey(e).keyCode)&&(i&&i.consume(!0),r||!bs.hasInstance())){if(this.activePrefixTimeout){clearTimeout(this.activePrefixTimeout);const e=await c.call(this,i);if(this.activePrefixKey=null,this.activePrefixTimeout=null,e)return;this.consumePrefix&&await this.consumePrefix()}l?.hasChords()?(this.activePrefixKey=l,this.consumePrefix=async()=>{this.activePrefixKey=null,this.activePrefixTimeout=null,await c.call(this,i)},this.activePrefixTimeout=window.setTimeout(this.consumePrefix,J)):await c.call(this,i)}function h(e){return Boolean(o&e)}async function c(t){const i=this.applicableActions(e,n);if(!i.length)return!1;for(const e of i){let i;if(t&&s.logKeyDown(null,t,e.id()),n?.[e.id()]&&(i=await n[e.id()]()),n||(i=await e.execute()),i)return a.userMetrics.keyboardShortcutFired(e.id()),!0}return!1}}registerUserShortcut(e){for(const t of this.disabledDefaultShortcutsForAction.get(e.action))if(t.descriptorsMatch(e.descriptors)&&t.hasKeybindSet(this.keybindSetSetting.get()))return void this.removeShortcut(t);for(const t of this.actionToShortcut.get(e.action))if(t.descriptorsMatch(e.descriptors))return;this.addShortcutToSetting(e)}removeShortcut(e){"DefaultShortcut"===e.type||"KeybindSetShortcut"===e.type?this.addShortcutToSetting(e.changeType("DisabledDefault")):this.removeShortcutFromSetting(e)}disabledDefaultsForAction(e){return this.disabledDefaultShortcutsForAction.get(e)}addShortcutToSetting(e){const t=this.userShortcutsSetting.get();t.push(e),this.userShortcutsSetting.set(t)}removeShortcutFromSetting(e){const t=this.userShortcutsSetting.get(),i=t.findIndex(e.equals,e);-1!==i&&(t.splice(i,1),this.userShortcutsSetting.set(t))}registerShortcut(e){this.actionToShortcut.set(e.action,e),this.keyMap.addKeyMapping(e.descriptors.map((e=>e.key)),e.action)}registerBindings(){this.actionToShortcut.clear(),this.keyMap.clear();const e=this.keybindSetSetting.get();this.disabledDefaultShortcutsForAction.clear(),this.devToolsDefaultShortcutActions.clear();const t=[],i=this.userShortcutsSetting.get();for(const e of i){const i=A.createShortcutFromSettingObject(e);"DisabledDefault"===i.type?this.disabledDefaultShortcutsForAction.set(i.action,i):(Z.has(i.action)&&t.push(...i.descriptors.map((e=>A.keyCodeAndModifiersFromKey(e.key)))),this.registerShortcut(i))}for(const e of C()){const i=e.id(),o=e.bindings();for(let e=0;o&&e<o.length;++e){const r=o[e].keybindSets;if(!n(o[e].platform)||!s(r))continue;const a=o[e].shortcut.split(/\s+/).map(A.makeDescriptorFromBindingShortcut);if(a.length>0){if(this.isDisabledDefault(a,i)){this.devToolsDefaultShortcutActions.add(i);continue}Z.has(i)&&t.push(...a.map((e=>A.keyCodeAndModifiersFromKey(e.key)))),r?(r.includes("devToolsDefault")&&this.devToolsDefaultShortcutActions.add(i),this.registerShortcut(new A(a,i,"KeybindSetShortcut",new Set(r)))):(this.devToolsDefaultShortcutActions.add(i),this.registerShortcut(new A(a,i,"DefaultShortcut")))}}}function n(e){if(!e)return!0;const t=e.split(",");let i=!1;const n=a.Platform.platform();for(let e=0;!i&&e<t.length;++e)i=t[e]===n;return i}function s(t){return!t||t.includes(e)}a.InspectorFrontendHost.InspectorFrontendHostInstance.setWhitelistedShortcuts(JSON.stringify(t))}isDisabledDefault(e,t){const i=this.disabledDefaultShortcutsForAction.get(t);for(const t of i)if(t.descriptorsMatch(e))return!0;return!1}}class Y{keyInternal;actionsInternal;chordsInternal;depth;constructor(e,t=0){this.keyInternal=e,this.actionsInternal=[],this.chordsInternal=new Map,this.depth=t}addAction(e){this.actionsInternal.push(e)}key(){return this.keyInternal}chords(){return this.chordsInternal}hasChords(){return this.chordsInternal.size>0}addKeyMapping(e,t){if(!(e.length<this.depth))if(e.length===this.depth)this.addAction(t);else{const i=e[this.depth];this.chordsInternal.has(i)||this.chordsInternal.set(i,new Y(i,this.depth+1)),this.chordsInternal.get(i).addKeyMapping(e,t)}}getNode(e){return this.chordsInternal.get(e)||null}actions(){return this.actionsInternal}clear(){this.actionsInternal=[],this.chordsInternal=new Map}}class Q{static instance=new Q}const Z=new Set(["main.toggle-dock","debugger.toggle-breakpoints-active","debugger.toggle-pause","quick-open.show-command-menu","console.toggle"]),J=1e3,ee="devToolsDefault";var te=Object.freeze({__proto__:null,DefaultShortcutSetting:ee,ForwardedActions:Z,ForwardedShortcut:Q,KeyTimeout:J,ShortcutRegistry:G,ShortcutTreeNode:Y});const ie={close:"Close",dockToRight:"Dock to right",dockToBottom:"Dock to bottom",dockToLeft:"Dock to left",undockIntoSeparateWindow:"Undock into separate window",devtoolsUndocked:"DevTools is undocked",devToolsDockedTo:"DevTools is docked to {PH1}"},ne=t.i18n.registerUIStrings("ui/legacy/DockController.ts",ie),se=t.i18n.getLocalizedString.bind(void 0,ne);let oe;class re extends e.ObjectWrapper.ObjectWrapper{canDockInternal;closeButton;currentDockStateSetting;lastDockStateSetting;dockSideInternal=void 0;titles;constructor(t){if(super(),this.canDockInternal=t,this.closeButton=new qi(se(ie.close),"cross"),this.closeButton.element.setAttribute("jslog",`${s.close().track({click:!0})}`),this.closeButton.element.classList.add("close-devtools"),this.closeButton.addEventListener("Click",a.InspectorFrontendHost.InspectorFrontendHostInstance.closeWindow.bind(a.InspectorFrontendHost.InspectorFrontendHostInstance)),this.currentDockStateSetting=e.Settings.Settings.instance().moduleSetting("currentDockState"),this.lastDockStateSetting=e.Settings.Settings.instance().createSetting("last-dock-state","bottom"),!t)return this.dockSideInternal="undocked",void this.closeButton.setVisible(!1);this.currentDockStateSetting.addChangeListener(this.dockSideChanged,this),-1===ae.indexOf(this.currentDockStateSetting.get())&&this.currentDockStateSetting.set("right"),-1===ae.indexOf(this.lastDockStateSetting.get())&&this.currentDockStateSetting.set("bottom")}static instance(e={forceNew:null,canDock:!1}){const{forceNew:t,canDock:i}=e;return oe&&!t||(oe=new re(i)),oe}initialize(){this.canDockInternal&&(this.titles=[se(ie.dockToRight),se(ie.dockToBottom),se(ie.dockToLeft),se(ie.undockIntoSeparateWindow)],this.dockSideChanged())}dockSideChanged(){this.setDockSide(this.currentDockStateSetting.get()),setTimeout(this.announceDockLocation.bind(this),2e3)}dockSide(){return this.dockSideInternal}canDock(){return this.canDockInternal}isVertical(){return"right"===this.dockSideInternal||"left"===this.dockSideInternal}setDockSide(e){if(-1===ae.indexOf(e)&&(e=ae[0]),this.dockSideInternal===e)return;void 0!==this.dockSideInternal&&document.body.classList.remove(this.dockSideInternal),document.body.classList.add(e),this.dockSideInternal&&this.lastDockStateSetting.set(this.dockSideInternal);const t={from:this.dockSideInternal,to:e};this.dispatchEventToListeners("BeforeDockSideChanged",t),console.timeStamp("DockController.setIsDocked"),this.dockSideInternal=e,this.currentDockStateSetting.set(e),a.InspectorFrontendHost.InspectorFrontendHostInstance.setIsDocked("undocked"!==e,this.setIsDockedResponse.bind(this,t)),this.closeButton.setVisible("undocked"!==this.dockSideInternal),this.dispatchEventToListeners("DockSideChanged",t)}setIsDockedResponse(e){this.dispatchEventToListeners("AfterDockSideChanged",e)}toggleDockSide(){if(this.lastDockStateSetting.get()===this.currentDockStateSetting.get()){const e=ae.indexOf(this.currentDockStateSetting.get())||0;this.lastDockStateSetting.set(ae[(e+1)%ae.length])}this.setDockSide(this.lastDockStateSetting.get())}announceDockLocation(){"undocked"===this.dockSideInternal?co(se(ie.devtoolsUndocked)):co(se(ie.devToolsDockedTo,{PH1:this.dockSideInternal||""}))}}const ae=["right","bottom","left","undocked"];let le;class de{static instance(e={forceNew:null}){const{forceNew:t}=e;return le&&!t||(le=new de),le}item(){return re.instance().closeButton}}var he=Object.freeze({__proto__:null,CloseButtonProvider:de,DockController:re,ToggleDockActionDelegate:class{handleAction(e,t){return re.instance().toggleDockSide(),!0}}}),ce={cssText:`:host{transition:all var(--sys-motion-duration-long2);transition-timing-function:var(--sys-motion-curve-spatial)}@starting-style{:host{height:0;opacity:0%}}.infobar{--summary-header-height:var(--sys-size-11);color:var(--sys-color-on-surface);background-color:var(--sys-color-cdt-base-container);display:flex;flex:auto;flex-direction:row;position:relative;padding:var(--sys-size-5) var(--sys-size-8);min-width:fit-content;min-height:calc(var(--summary-header-height) + var(--sys-size-5) * 2);.icon-container{display:flex;flex-shrink:0;align-items:center;height:var(--summary-header-height)}dt-close-button{margin-left:var(--sys-size-3)}}.infobar:focus{outline:2px solid var(--sys-color-state-focus-ring);outline-offset:-2px}.infobar-warning{background-color:var(--sys-color-surface-yellow);color:var(--sys-color-on-surface-yellow)}.infobar-error{--override-infobar-error-background:var(--sys-color-surface-error);--override-infobar-error-text:var(--sys-color-on-surface-error);background-color:var(--override-infobar-error-background);color:var(--override-infobar-error-text)}.infobar-main-row{display:inline-flex;flex-direction:row;margin-right:auto}.infobar-info-container{display:flex;row-gap:var(--sys-size-4);align-items:center;flex-grow:1;flex-wrap:wrap}.infobar-info-text{font:var(--sys-typescale-body3-regular);margin-right:var(--sys-size-8)}.infobar-details-row{display:flex;flex-direction:column;line-height:18px;+ .infobar-details-row{padding-top:var(--sys-size-3)}}.infobar-selectable{user-select:text}.infobar-button{color:var(--sys-color-token-subtle)}.info-icon{color:var(--sys-color-primary)}.warning-icon{color:var(--icon-warning)}.error-icon{color:var(--icon-error)}.issue-icon{color:var(--sys-color-primary)}.info-icon,\n.warning-icon,\n.error-icon,\n.issue-icon{margin-right:var(--sys-size-8);width:var(--sys-size-8);height:var(--sys-size-8);flex-shrink:0}.infobar-info-actions{display:flex;gap:var(--sys-size-5)}.devtools-link.text-button:hover,\n.devtools-link.text-button:focus,\n.devtools-link.text-button:active{background-color:transparent;box-shadow:none}details{margin-right:auto;summary{display:flex;min-height:var(--summary-header-height);&:focus-visible{outline:var(--sys-color-state-focus-ring) auto var(--sys-size-1);outline-offset:var(--sys-size-3)}&::marker{content:''}}devtools-icon[name="arrow-drop-down"]{align-self:center;transform:rotate(270deg)}&[open]{devtools-icon[name="arrow-drop-down"]{transform:rotate(0deg)}&::details-content{padding:var(--sys-size-4) 0 0 var(--sys-size-9)}}}\n/*# sourceURL=${import.meta.resolve("./infobar.css")} */\n`};const ue={dontShowAgain:"Don't show again",close:"Close"},me=t.i18n.registerUIStrings("ui/legacy/Infobar.ts",ue),pe=t.i18n.getLocalizedString.bind(void 0,me);class ge{element;shadowRoot;contentElement;detailsRows;infoContainer;infoMessage;infoText;actionContainer;disableSetting;closeButton;closeCallback;parentView;mainRow;constructor(e,t,i,n,o){this.element=document.createElement("div"),o&&this.element.setAttribute("jslog",`${s.dialog(o).track({resize:!0,keydown:"Enter|Escape"})}`),this.element.classList.add("flex-none"),this.shadowRoot=rs(this.element,{cssFile:ce}),this.contentElement=this.shadowRoot.createChild("div","infobar infobar-"+e);const a=r.Icon.create(be[e],e+"-icon");this.contentElement.createChild("div","icon-container").appendChild(a),this.mainRow=this.contentElement.createChild("div","infobar-main-row"),this.infoContainer=this.mainRow.createChild("div","infobar-info-container"),this.infoMessage=this.infoContainer.createChild("div","infobar-info-message"),this.infoText=this.infoMessage.createChild("div","infobar-info-text"),this.infoText.textContent=t,ys(this.infoText),this.actionContainer=this.infoContainer.createChild("div","infobar-info-actions");let l="outlined";if(this.disableSetting=n||null,n){const e=Vn(pe(ue.dontShowAgain),this.onDisable.bind(this),{className:"infobar-button"});this.actionContainer.appendChild(e),l="tonal"}if(i){this.contentElement.setAttribute("role","group");for(const e of i){const t=this.actionCallbackFactory(e),i=e.buttonVariant??l,n=Vn(e.text,t,{className:"infobar-button",jslogContext:e.jslogContext,variant:i});this.actionContainer.appendChild(n)}}this.closeButton=this.contentElement.createChild("dt-close-button","icon-container"),this.closeButton.setTabbable(!0),this.closeButton.setSize("SMALL"),io(this.closeButton,pe(ue.close)),self.onInvokeElement(this.closeButton,this.dispose.bind(this)),"issue"!==e&&(this.contentElement.tabIndex=0),to(this.contentElement,t),this.contentElement.addEventListener("keydown",(e=>{if(e.keyCode===K.Esc.code)return this.dispose(),void e.consume()})),this.closeCallback=null}static create(e,t,i,n,s){return n?.get()?null:new ge(e,t,i,n,s)}dispose(){this.element.remove(),this.onResize(),this.closeCallback&&this.closeCallback.call(null)}setText(e){this.infoText.textContent=e,this.onResize()}setCloseCallback(e){this.closeCallback=e}setParentView(e){this.parentView=e}actionCallbackFactory(e){return e.delegate?e.dismiss?(()=>{e.delegate&&e.delegate(),this.dispose()}).bind(this):e.delegate:e.dismiss?this.dispose.bind(this):()=>{}}onResize(){this.parentView&&this.parentView.doResize()}onDisable(){this.disableSetting&&this.disableSetting.set(!0),this.dispose()}createDetailsRowMessage(e){if(!this.detailsRows){const e=document.createElement("details"),t=e.createChild("summary"),i=r.Icon.create("arrow-drop-down");t.createChild("div","icon-container").appendChild(i),this.contentElement.insertBefore(e,this.mainRow),t.appendChild(this.mainRow),this.detailsRows=e.createChild("div","infobar-details-rows")}const t=this.detailsRows.createChild("div","infobar-details-row").createChild("span","infobar-row-message");return"string"==typeof e?t.textContent=e:t.appendChild(e),t}}const be={warning:"warning",info:"info",issue:"issue-text-filled",error:"cross-circle"};var ve=Object.freeze({__proto__:null,Infobar:ge}),fe={cssText:`.tabbed-pane-header-tab{& > .tabbed-pane-header-tab-suffix-element devtools-icon.warning{width:14px;height:14px;color:var(--icon-warning)}}\n/*# sourceURL=${import.meta.resolve("./inspectorViewTabbedPane.css")} */\n`};const we=1e-5;class xe{x;y;z;constructor(e,t,i){this.x=e,this.y=t,this.z=i}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}normalize(){const e=this.length();e<=we||(this.x/=e,this.y/=e,this.z/=e)}}class ye{x;y;constructor(e,t){this.x=e,this.y=t}distanceTo(e){return Math.sqrt(Math.pow(e.x-this.x,2)+Math.pow(e.y-this.y,2))}projectOn(e){return 0===e.x&&0===e.y?new ye(0,0):e.scale((this.x*e.x+this.y*e.y)/(Math.pow(e.x,2)+Math.pow(e.y,2)))}scale(e){return new ye(this.x*e,this.y*e)}toString(){return Math.round(100*this.x)/100+", "+Math.round(100*this.y)/100}}class Ee{controlPoints;constructor(e,t){this.controlPoints=[e,t]}static parse(e){const t=l.CSSMetadata.CubicBezierKeywordValues,i=e.toLowerCase().replace(/\s+/g,"");if(t.has(i))return Ee.parse(t.get(i));const n=i.match(/^cubic-bezier\(([^,]+),([^,]+),([^,]+),([^,]+)\)$/);if(n){const e=new ye(parseFloat(n[1]),parseFloat(n[2])),t=new ye(parseFloat(n[3]),parseFloat(n[4]));return new Ee(e,t)}return null}evaluateAt(e){function t(e,t,i){return 3*(1-i)*(1-i)*i*e+3*(1-i)*i*i*t+Math.pow(i,3)}const i=t(this.controlPoints[0].x,this.controlPoints[1].x,e),n=t(this.controlPoints[0].y,this.controlPoints[1].y,e);return new ye(i,n)}asCSSText(){const e="cubic-bezier("+this.controlPoints.join(", ")+")",t=l.CSSMetadata.CubicBezierKeywordValues;for(const[i,n]of t)if(e===n&&"linear"!==i)return i;return e}static Regex=/((cubic-bezier\([^)]+\))|\b(linear(?![-\(])|ease-in-out|ease-in|ease-out|ease)\b)|(linear\([^)]+\))/g}const Ie=new Ee(new ye(0,0),new ye(1,1));class Se{alpha;beta;gamma;constructor(e,t,i){this.alpha=e,this.beta=t,this.gamma=i}static fromDeviceOrientationRotationMatrix(e){let t,i,n;return Math.abs(e.m33)<we?Math.abs(e.m13)<we?(t=Math.atan2(e.m12,e.m11),i=e.m23>0?Math.PI/2:-Math.PI/2,n=0):e.m13>0?(t=Math.atan2(-e.m21,e.m22),i=Math.asin(e.m23),n=-Math.PI/2):(t=Math.atan2(e.m21,-e.m22),i=-Math.asin(e.m23),i+=i>0||Math.abs(i)<we?-Math.PI:Math.PI,n=-Math.PI/2):e.m33>0?(t=Math.atan2(-e.m21,e.m22),i=Math.asin(e.m23),n=Math.atan2(-e.m13,e.m33)):(t=Math.atan2(e.m21,-e.m22),i=-Math.asin(e.m23),i+=i>0||Math.abs(i)<we?-Math.PI:Math.PI,n=Math.atan2(e.m13,-e.m33)),t<-we&&(t+=2*Math.PI),t=Number(ke(t).toFixed(6)),i=Number(ke(i).toFixed(6)),n=Number(ke(n).toFixed(6)),new Se(t,i,n)}}const Ce=function(e,t){return e.x*t.x+e.y*t.y+e.z*t.z},Te=function(e,t){const i=e.x*t.m14+e.y*t.m24+e.z*t.m34+t.m44,n=(e.x*t.m11+e.y*t.m21+e.z*t.m31+t.m41)/i,s=(e.x*t.m12+e.y*t.m22+e.z*t.m32+t.m42)/i,o=(e.x*t.m13+e.y*t.m23+e.z*t.m33+t.m43)/i;return new xe(n,s,o)},ke=function(e){return 180*e/Math.PI};class Me{width;height;constructor(e,t){this.width=e,this.height=t}clipTo(e){return e?new Me(Math.min(this.width,e.width),Math.min(this.height,e.height)):this}scale(e){return new Me(this.width*e,this.height*e)}isEqual(e){return null!==e&&this.width===e.width&&this.height===e.height}widthToMax(e){return new Me(Math.max(this.width,"number"==typeof e?e:e.width),this.height)}addWidth(e){return new Me(this.width+("number"==typeof e?e:e.width),this.height)}heightToMax(e){return new Me(this.width,Math.max(this.height,"number"==typeof e?e:e.height))}addHeight(e){return new Me(this.width,this.height+("number"==typeof e?e:e.height))}}class Le{minimum;preferred;constructor(e,t){if(this.minimum=e||new Me(0,0),this.preferred=t||this.minimum,this.minimum.width>this.preferred.width||this.minimum.height>this.preferred.height)throw new Error("Minimum size is greater than preferred.")}isEqual(e){return null!==e&&this.minimum.isEqual(e.minimum)&&this.preferred.isEqual(e.preferred)}widthToMax(e){return"number"==typeof e?new Le(this.minimum.widthToMax(e),this.preferred.widthToMax(e)):new Le(this.minimum.widthToMax(e.minimum),this.preferred.widthToMax(e.preferred))}addWidth(e){return"number"==typeof e?new Le(this.minimum.addWidth(e),this.preferred.addWidth(e)):new Le(this.minimum.addWidth(e.minimum),this.preferred.addWidth(e.preferred))}heightToMax(e){return"number"==typeof e?new Le(this.minimum.heightToMax(e),this.preferred.heightToMax(e)):new Le(this.minimum.heightToMax(e.minimum),this.preferred.heightToMax(e.preferred))}addHeight(e){return"number"==typeof e?new Le(this.minimum.addHeight(e),this.preferred.addHeight(e)):new Le(this.minimum.addHeight(e.minimum),this.preferred.addHeight(e.preferred))}}var Pe=Object.freeze({__proto__:null,Constraints:Le,CubicBezier:Ee,EulerAngles:Se,LINEAR_BEZIER:Ie,Point:ye,Size:Me,Vector:xe,boundsForTransformedPoints:function(e,t,i){i||(i={minX:1/0,maxX:-1/0,minY:1/0,maxY:-1/0}),t.length%3&&console.warn("Invalid size of points array");for(let n=0;n<t.length;n+=3){let s=new xe(t[n],t[n+1],t[n+2]);s=Te(s,e),i.minX=Math.min(i.minX,s.x),i.maxX=Math.max(i.maxX,s.x),i.minY=Math.min(i.minY,s.y),i.maxY=Math.max(i.maxY,s.y)}return i},calculateAngle:function(e,t){const i=e.length(),n=t.length();if(i<=we||n<=we)return 0;const s=Ce(e,t)/i/n;return Math.abs(s)>1?0:ke(Math.acos(s))},crossProduct:function(e,t){const i=e.y*t.z-e.z*t.y,n=e.z*t.x-e.x*t.z,s=e.x*t.y-e.y*t.x;return new xe(i,n,s)},degreesToGradians:function(e){return e/9*10},degreesToRadians:function(e){return e*Math.PI/180},degreesToTurns:function(e){return e/360},gradiansToRadians:function(e){return e*Math.PI/200},multiplyVectorByMatrixAndNormalize:Te,radiansToDegrees:ke,radiansToGradians:function(e){return 200*e/Math.PI},radiansToTurns:function(e){return e/(2*Math.PI)},scalarProduct:Ce,subtract:function(e,t){const i=e.x-t.x,n=e.y-t.y,s=e.z-t.z;return new xe(i,n,s)},turnsToRadians:function(e){return 2*e*Math.PI}});class De extends e.ObjectWrapper.ObjectWrapper{isEnabledInternal=!0;elementsInternal=new Set;installDragOnMouseDownBound;cursorInternal;startX;startY;constructor(){super(),this.installDragOnMouseDownBound=this.installDragOnMouseDown.bind(this),this.cursorInternal="nwse-resize"}isEnabled(){return this.isEnabledInternal}setEnabled(e){this.isEnabledInternal=e,this.updateElementCursors()}elements(){return[...this.elementsInternal]}addElement(e){this.elementsInternal.has(e)||(this.elementsInternal.add(e),e.addEventListener("pointerdown",this.installDragOnMouseDownBound,!1),this.updateElementCursor(e))}removeElement(e){this.elementsInternal.has(e)&&(this.elementsInternal.delete(e),e.removeEventListener("pointerdown",this.installDragOnMouseDownBound,!1),e.style.removeProperty("cursor"))}updateElementCursors(){this.elementsInternal.forEach(this.updateElementCursor.bind(this))}updateElementCursor(e){this.isEnabledInternal?(e.style.setProperty("cursor",this.cursor()),e.style.setProperty("touch-action","none")):(e.style.removeProperty("cursor"),e.style.removeProperty("touch-action"))}cursor(){return this.cursorInternal}setCursor(e){this.cursorInternal=e,this.updateElementCursors()}installDragOnMouseDown(e){const t=e.target;if(!this.elementsInternal.has(t))return!1;bn(t,this.dragStart.bind(this),(e=>{this.drag(e)}),this.dragEnd.bind(this),this.cursor(),e)}dragStart(e){return!!this.isEnabledInternal&&(this.startX=e.pageX,this.startY=e.pageY,this.sendDragStart(this.startX,this.startY),!0)}sendDragStart(e,t){this.dispatchEventToListeners("ResizeStart",{startX:e,currentX:e,startY:t,currentY:t})}drag(e){return this.isEnabledInternal?(this.sendDragMove(this.startX,e.pageX,this.startY,e.pageY,e.shiftKey),e.preventDefault(),!1):(this.dragEnd(e),!0)}sendDragMove(e,t,i,n,s){this.dispatchEventToListeners("ResizeUpdateXY",{startX:e,currentX:t,startY:i,currentY:n,shiftKey:s})}dragEnd(e){this.dispatchEventToListeners("ResizeEnd"),delete this.startX,delete this.startY}}class Ae extends De{isVerticalInternal;constructor(){super(),this.isVerticalInternal=!0}isVertical(){return this.isVerticalInternal}setVertical(e){this.isVerticalInternal=e,this.updateElementCursors()}cursor(){return this.isVerticalInternal?"ns-resize":"ew-resize"}sendDragStart(e,t){const i=this.isVerticalInternal?t:e;this.dispatchEventToListeners("ResizeStart",{startPosition:i,currentPosition:i})}sendDragMove(e,t,i,n,s){this.isVerticalInternal?this.dispatchEventToListeners("ResizeUpdatePosition",{startPosition:i,currentPosition:n,shiftKey:s}):this.dispatchEventToListeners("ResizeUpdatePosition",{startPosition:e,currentPosition:t,shiftKey:s})}}var ze=Object.freeze({__proto__:null,ResizerWidget:De,SimpleResizerWidget:Ae}),Re={cssText:`.shadow-split-widget{display:flex;overflow:hidden}.shadow-split-widget-contents{display:flex;position:relative;flex-direction:column;contain:layout size style}.shadow-split-widget-sidebar{flex:none}.shadow-split-widget-main,\n.shadow-split-widget-sidebar.maximized{flex:auto}.shadow-split-widget.hbox > .shadow-split-widget-resizer{position:absolute;top:0;bottom:0;width:6px;z-index:4000}.shadow-split-widget.vbox > .shadow-split-widget-resizer{position:absolute;left:0;right:0;height:6px;z-index:4000}.shadow-split-widget.vbox > .shadow-split-widget-sidebar.no-default-splitter{border:0!important}.shadow-split-widget.vbox > .shadow-split-widget-sidebar:not(.maximized){border:0;border-top:1px solid var(--sys-color-divider)}.shadow-split-widget.hbox > .shadow-split-widget-sidebar:not(.maximized){border:0;border-left:1px solid var(--sys-color-divider)}.shadow-split-widget.vbox > .shadow-split-widget-sidebar:first-child:not(.maximized){border:0;border-bottom:1px solid var(--sys-color-divider)}.shadow-split-widget.hbox > .shadow-split-widget-sidebar:first-child:not(.maximized){border:0;border-right:1px solid var(--sys-color-divider)}:host-context(.disable-resizer-for-elements-hack) .shadow-split-widget-resizer{pointer-events:none}:host{display:flex}\n/*# sourceURL=${import.meta.resolve("./splitWidget.css")} */\n`};class Be extends HTMLElement{static get observedAttributes(){return["flex","padding","padding-top","padding-bottom","padding-left","padding-right","margin","margin-top","margin-bottom","margin-left","margin-right","overflow","overflow-x","overflow-y","font-size","color","background","background-color","border","border-top","border-bottom","border-left","border-right","max-width","max-height"]}attributeChangedCallback(e,t,i){if("flex"!==e)if(null===i){if(this.style.removeProperty(e),e.startsWith("padding-")||e.startsWith("margin-")||e.startsWith("border-")||e.startsWith("background-")||e.startsWith("overflow-")){const t=e.substring(0,e.indexOf("-")),i=this.getAttribute(t);null!==i&&this.style.setProperty(t,i)}}else this.style.setProperty(e,i);else null===i?this.style.removeProperty("flex"):"initial"===i||"auto"===i||"none"===i||-1!==i.indexOf(" ")?this.style.setProperty("flex",i):this.style.setProperty("flex","0 0 "+i)}}class Oe extends Be{constructor(e){super(),this.style.setProperty("display","flex"),this.style.setProperty("flex-direction",e),this.style.setProperty("justify-content","flex-start")}static get observedAttributes(){return super.observedAttributes.concat(["x-start","x-center","x-stretch","x-baseline","justify-content"])}attributeChangedCallback(e,t,i){"x-start"!==e&&"x-center"!==e&&"x-stretch"!==e&&"x-baseline"!==e?super.attributeChangedCallback(e,t,i):null===i?this.style.removeProperty("align-items"):this.style.setProperty("align-items","x-start"===e?"flex-start":e.substr(2))}}customElements.define("x-vbox",class extends Oe{constructor(){super("column")}}),customElements.define("x-hbox",class extends Oe{constructor(){super("row")}}),customElements.define("x-cbox",class extends Be{constructor(){super(),this.style.setProperty("display","flex"),this.style.setProperty("flex-direction","column"),this.style.setProperty("justify-content","center"),this.style.setProperty("align-items","center")}}),customElements.define("x-div",class extends Be{constructor(){super(),this.style.setProperty("display","block")}}),customElements.define("x-span",class extends Be{constructor(){super(),this.style.setProperty("display","inline")}}),customElements.define("x-text",class extends Be{constructor(){super(),this.style.setProperty("display","inline"),this.style.setProperty("white-space","pre")}});var Fe=Object.freeze({__proto__:null,XElement:Be});let We=null;const He=new WeakMap;class Ne extends Be{visible;shadowRootInternal;defaultFocusedElement;elementsToRestoreScrollPositionsFor;onShownCallback;onHiddenCallback;onResizedCallback;constructor(){super(),this.style.setProperty("display","flex"),this.style.setProperty("flex-direction","column"),this.style.setProperty("align-items","stretch"),this.style.setProperty("justify-content","flex-start"),this.style.setProperty("contain","layout style"),this.visible=!1,this.defaultFocusedElement=null,this.elementsToRestoreScrollPositionsFor=[],We||(We=new ResizeObserver((e=>{for(const t of e){const e=t.target;e.visible&&e.onResizedCallback&&e.onResizedCallback.call(null)}}))),We.observe(this),this.setElementsToRestoreScrollPositionsFor([this])}isShowing(){return this.visible}setElementsToRestoreScrollPositionsFor(e){for(const e of this.elementsToRestoreScrollPositionsFor)e.removeEventListener("scroll",Ne.storeScrollPosition,{capture:!1});this.elementsToRestoreScrollPositionsFor=e;for(const e of this.elementsToRestoreScrollPositionsFor)e.addEventListener("scroll",Ne.storeScrollPosition,{passive:!0,capture:!1})}restoreScrollPositions(){for(const e of this.elementsToRestoreScrollPositionsFor){const t=He.get(e);t&&(e.scrollTop=t.scrollTop,e.scrollLeft=t.scrollLeft)}}static storeScrollPosition(e){const t=e.currentTarget;He.set(t,{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop})}setDefaultFocusedElement(e){if(e&&!this.isSelfOrAncestor(e))throw new Error("Default focus must be descendant");this.defaultFocusedElement=e}focus(){if(!this.visible)return;let e;if(this.defaultFocusedElement&&this.isSelfOrAncestor(this.defaultFocusedElement))e=this.defaultFocusedElement;else if(-1!==this.tabIndex)e=this;else{let t=this.traverseNextNode(this);for(;t;){if(t instanceof Ne&&t.visible){e=t;break}t=t.traverseNextNode(this)}}e&&!e.hasFocus()&&(e===this?HTMLElement.prototype.focus.call(this):e.focus())}connectedCallback(){this.visible=!0,this.restoreScrollPositions(),this.onShownCallback&&this.onShownCallback.call(null)}disconnectedCallback(){this.visible=!1,this.onHiddenCallback&&this.onHiddenCallback.call(null)}}customElements.define("x-widget",Ne);var je=Object.freeze({__proto__:null,XWidget:Ne});const Ve=Element.prototype.appendChild,Ue=Element.prototype.insertBefore,_e=Element.prototype.removeChild,Ke=Element.prototype.removeChildren;function $e(e,t){if(!e)throw new Error(t)}class qe{widgetClass;widgetParams;constructor(e,t){this.widgetClass=e,this.widgetParams=t}}class Xe extends HTMLElement{#n;#s;createWidget(){if(!this.#n)throw new Error("No widgetClass defined");const e=new this.#n(this);return this.#s&&Object.assign(e,this.#s),e.requestUpdate(),e}set widgetConfig(e){const t=et.get(this);if(t){let i=!1;for(const t in e.widgetParams)e.widgetParams.hasOwnProperty(t)&&e.widgetParams[t]!==this.#s?.[t]&&(i=!0);i&&(Object.assign(t,e.widgetParams),t.requestUpdate())}this.#n=e.widgetClass,this.#s=e.widgetParams}getWidget(){return et.get(this)}connectedCallback(){const e=et.getOrCreateWidget(this);e.element.parentElement||e.markAsRoot(),e.show(this.parentElement,void 0,!0)}appendChild(e){return e instanceof HTMLElement&&"STYLE"!==e.tagName?(et.getOrCreateWidget(e).show(this),e):super.appendChild(e)}insertBefore(e,t){return e instanceof HTMLElement&&"STYLE"!==e.tagName?(et.getOrCreateWidget(e).show(this,t),e):super.insertBefore(e,t)}removeChild(e){const t=et.get(e);return t?(t.detach(),e):super.removeChild(e)}removeChildren(){for(const e of this.children){const t=et.get(e);t&&t.detach()}super.removeChildren()}}customElements.define("devtools-widget",Xe);const Ge=new WeakMap,Ye=new WeakMap;function Qe(e,t){const i=(Ge.get(t)||0)+(Ye.get(t)?1:0);for(let t=e;t;t=t.parentElementOrShadowHost()){const e=Ge.get(t);e&&Ge.set(t,e-i)}}const Ze=Promise.resolve(!0),Je=e=>{};class et{element;contentElement;shadowRoot;visibleInternal;isRoot;isShowingInternal;childrenInternal;hideOnDetach;notificationDepth;invalidationsSuspended;defaultFocusedChild;parentWidgetInternal;defaultFocusedElement;cachedConstraints;constraintsInternal;invalidationsRequested;externallyManaged;#o=Ze;#r=Je;#a=0;constructor(e,t,i){this.element=i||document.createElement("div"),this.shadowRoot=this.element.shadowRoot,e&&!this.shadowRoot?(this.element.classList.add("vbox"),this.element.classList.add("flex-auto"),this.shadowRoot=rs(this.element,{delegatesFocus:t}),this.contentElement=document.createElement("div"),this.shadowRoot.appendChild(this.contentElement)):this.contentElement=this.element,this.contentElement.classList.add("widget"),Ye.set(this.element,this),this.visibleInternal=!1,this.isRoot=!1,this.isShowingInternal=!1,this.childrenInternal=[],this.hideOnDetach=!1,this.notificationDepth=0,this.invalidationsSuspended=0,this.defaultFocusedChild=null,this.parentWidgetInternal=null}static get(e){return Ye.get(e)}static getOrCreateWidget(e){const t=et.get(e);return t||(e instanceof Xe?e.createWidget():new et(void 0,void 0,e))}markAsRoot(){$e(!this.element.parentElement,"Attempt to mark as root attached node"),this.isRoot=!0}parentWidget(){return this.parentWidgetInternal}children(){return this.childrenInternal}childWasDetached(e){}isShowing(){return this.isShowingInternal}shouldHideOnDetach(){if(!this.element.parentElement)return!1;if(this.hideOnDetach)return!0;for(const e of this.childrenInternal)if(e.shouldHideOnDetach())return!0;return!1}setHideOnDetach(){this.hideOnDetach=!0}inNotification(){return Boolean(this.notificationDepth)||Boolean(this.parentWidgetInternal?.inNotification())}parentIsShowing(){return!!this.isRoot||(this.parentWidgetInternal?.isShowing()??!1)}callOnVisibleChildren(e){const t=this.childrenInternal.slice();for(let i=0;i<t.length;++i)t[i].parentWidgetInternal===this&&t[i].visibleInternal&&e.call(t[i])}processWillShow(){this.callOnVisibleChildren(this.processWillShow),this.isShowingInternal=!0}processWasShown(){this.inNotification()||(this.restoreScrollPositions(),this.notify(this.wasShown),this.callOnVisibleChildren(this.processWasShown))}processWillHide(){this.inNotification()||(this.storeScrollPositions(),this.callOnVisibleChildren(this.processWillHide),this.notify(this.willHide),this.isShowingInternal=!1)}processWasHidden(){this.callOnVisibleChildren(this.processWasHidden)}processOnResize(){this.inNotification()||this.isShowing()&&(this.notify(this.onResize),this.callOnVisibleChildren(this.processOnResize))}notify(e){++this.notificationDepth;try{e.call(this)}finally{--this.notificationDepth}}wasShown(){}willHide(){}onResize(){}onLayout(){}onDetach(){}async ownerViewDisposed(){}show(e,t,i=!1){if($e(e,"Attempt to attach widget with no parent element"),!this.isRoot){let n,s=e;for(;!n;){if(!s){if(i)return this.isRoot=!0,console.warn("A Widget has silently been marked as a root widget"),void this.show(e,t);throw new Error("Attempt to attach widget to orphan node")}n=Ye.get(s),s=s.parentElementOrShadowHost()}this.attach(n)}this.showWidgetInternal(e,t)}attach(e){e!==this.parentWidgetInternal&&(this.parentWidgetInternal&&this.detach(),this.parentWidgetInternal=e,this.parentWidgetInternal.childrenInternal.push(this),this.isRoot=!1)}showWidget(){if(!this.visibleInternal){if(!this.element.parentElement)throw new Error("Attempt to show widget that is not hidden using hideWidget().");this.showWidgetInternal(this.element.parentElement,this.element.nextSibling)}}showWidgetInternal(e,t){let i=e;for(;i&&!Ye.get(i);)i=i.parentElementOrShadowHost();this.isRoot?$e(!i,"Attempt to show root widget under another widget"):$e(i&&Ye.get(i)===this.parentWidgetInternal,"Attempt to show under node belonging to alien widget");const n=this.visibleInternal;n&&this.element.parentElement===e||(this.visibleInternal=!0,!n&&this.parentIsShowing()&&this.processWillShow(),this.element.classList.remove("hidden"),this.element.parentElement!==e&&(this.externallyManaged||function(e,t){const i=(Ge.get(t)||0)+(Ye.get(t)?1:0);for(let t=e;t;t=t.parentElementOrShadowHost())Ge.set(t,(Ge.get(t)||0)+i)}(e,this.element),t?Ue.call(e,this.element,t):Ve.call(e,this.element)),!n&&this.parentIsShowing()&&this.processWasShown(),this.parentWidgetInternal&&this.hasNonZeroConstraints()?this.parentWidgetInternal.invalidateConstraints():this.processOnResize())}hideWidget(){this.visibleInternal&&this.hideWidgetInternal(!1)}hideWidgetInternal(e){this.visibleInternal=!1;const{parentElement:t}=this.element;this.parentIsShowing()&&this.processWillHide(),e?(t&&(Qe(t,this.element),_e.call(t,this.element)),this.onDetach()):this.element.classList.add("hidden"),this.parentIsShowing()&&this.processWasHidden(),this.parentWidgetInternal&&this.hasNonZeroConstraints()&&this.parentWidgetInternal.invalidateConstraints()}detach(e){if(!this.parentWidgetInternal&&!this.isRoot)return;0!==this.#a&&(cancelAnimationFrame(this.#a),this.#r(!0),this.#r=Je,this.#o=Ze,this.#a=0);const t=e||!this.shouldHideOnDetach();if(this.visibleInternal)this.hideWidgetInternal(t);else if(t){const{parentElement:e}=this.element;e&&(Qe(e,this.element),_e.call(e,this.element))}if(this.parentWidgetInternal){const e=this.parentWidgetInternal.childrenInternal.indexOf(this);$e(e>=0,"Attempt to remove non-child widget"),this.parentWidgetInternal.childrenInternal.splice(e,1),this.parentWidgetInternal.defaultFocusedChild===this&&(this.parentWidgetInternal.defaultFocusedChild=null),this.parentWidgetInternal.childWasDetached(this),this.parentWidgetInternal=null}else $e(this.isRoot,"Removing non-root widget from DOM")}detachChildWidgets(){const e=this.childrenInternal.slice();for(let t=0;t<e.length;++t)e[t].detach()}elementsToRestoreScrollPositionsFor(){return[this.element]}storeScrollPositions(){const e=this.elementsToRestoreScrollPositionsFor();for(const t of e)tt.set(t,{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop})}restoreScrollPositions(){const e=this.elementsToRestoreScrollPositionsFor();for(const t of e){const e=tt.get(t);e&&(t.scrollLeft=e.scrollLeft,t.scrollTop=e.scrollTop)}}doResize(){this.isShowing()&&(this.inNotification()||this.callOnVisibleChildren(this.processOnResize))}doLayout(){this.isShowing()&&(this.notify(this.onLayout),this.doResize())}registerRequiredCSS(...e){for(const t of e)u.ThemeSupport.instance().appendStyle(this.shadowRoot??this.element,t)}printWidgetHierarchy(){const e=[];this.collectWidgetHierarchy("",e),console.log(e.join("\n"))}collectWidgetHierarchy(e,t){t.push(e+"["+this.element.className+"]"+(this.childrenInternal.length?" {":""));for(let i=0;i<this.childrenInternal.length;++i)this.childrenInternal[i].collectWidgetHierarchy(e+" ",t);this.childrenInternal.length&&t.push(e+"}")}setDefaultFocusedElement(e){this.defaultFocusedElement=e}setDefaultFocusedChild(e){$e(e.parentWidgetInternal===this,"Attempt to set non-child widget as default focused."),this.defaultFocusedChild=e}focus(){if(!this.isShowing())return;const e=this.defaultFocusedElement;if(e)e.hasFocus()||e.focus();else if(this.defaultFocusedChild?.visibleInternal)this.defaultFocusedChild.focus();else{for(const e of this.childrenInternal)if(e.visibleInternal)return void e.focus();let e=this.contentElement.traverseNextNode(this.contentElement);for(;e;){if(e instanceof Ne)return void e.focus();e=e.traverseNextNode(this.contentElement)}}}hasFocus(){return this.element.hasFocus()}calculateConstraints(){return new Le}constraints(){return void 0!==this.constraintsInternal?this.constraintsInternal:(void 0===this.cachedConstraints&&(this.cachedConstraints=this.calculateConstraints()),this.cachedConstraints)}setMinimumAndPreferredSizes(e,t,i,n){this.constraintsInternal=new Le(new Me(e,t),new Me(i,n)),this.invalidateConstraints()}setMinimumSize(e,t){this.minimumSize=new Me(e,t)}set minimumSize(e){this.constraintsInternal=new Le(e),this.invalidateConstraints()}hasNonZeroConstraints(){const e=this.constraints();return Boolean(e.minimum.width||e.minimum.height||e.preferred.width||e.preferred.height)}suspendInvalidations(){++this.invalidationsSuspended}resumeInvalidations(){--this.invalidationsSuspended,!this.invalidationsSuspended&&this.invalidationsRequested&&this.invalidateConstraints()}invalidateConstraints(){if(this.invalidationsSuspended)return void(this.invalidationsRequested=!0);this.invalidationsRequested=!1;const e=this.cachedConstraints;delete this.cachedConstraints;!this.constraints().isEqual(e||null)&&this.parentWidgetInternal?this.parentWidgetInternal.invalidateConstraints():this.doLayout()}markAsExternallyManaged(){$e(!this.parentWidgetInternal,"Attempt to mark widget as externally managed after insertion to the DOM"),this.externallyManaged=!0}performUpdate(){}async#l(){return this.#o=Ze,this.#r=Je,this.#a=0,await this.performUpdate(),this.#o===Ze}requestUpdate(){this.#o===Ze&&(this.#o=new Promise(((e,t)=>{this.#r=e,this.#a=requestAnimationFrame((()=>this.#l().then(e,t)))})))}get updateComplete(){return this.#o}}const tt=new WeakMap;class it extends et{constructor(e,t,i){e instanceof HTMLElement&&(i=e,e=!1),super(e,t,i),this.contentElement.classList.add("vbox")}calculateConstraints(){let e=new Le;return this.callOnVisibleChildren((function(){const t=this.constraints();e=e.widthToMax(t),e=e.addHeight(t)})),e}}class nt extends et{constructor(e){super(e),this.contentElement.classList.add("hbox")}calculateConstraints(){let e=new Le;return this.callOnVisibleChildren((function(){const t=this.constraints();e=e.addWidth(t),e=e.heightToMax(t)})),e}}class st{widget;previous;constructor(e){this.widget=e,this.previous=i.DOMUtilities.deepActiveElement(e.element.ownerDocument),e.focus()}restore(){this.widget&&(this.widget.hasFocus()&&this.previous&&this.previous.focus(),this.previous=null,this.widget=null)}}Element.prototype.appendChild=function(e){if(Ye.get(e)&&e.parentElement!==this)throw new Error("Attempt to add widget via regular DOM operation.");return Ve.call(this,e)},Element.prototype.insertBefore=function(e,t){if(Ye.get(e)&&e.parentElement!==this)throw new Error("Attempt to add widget via regular DOM operation.");return Ue.call(this,e,t)},Element.prototype.removeChild=function(e){if(Ge.get(e)||Ye.get(e))throw new Error("Attempt to remove element containing widget via regular DOM operation");return _e.call(this,e)},Element.prototype.removeChildren=function(){if(Ge.get(this))throw new Error("Attempt to remove element containing widget via regular DOM operation");return Ke.call(this)};var ot=Object.freeze({__proto__:null,HBox:nt,VBox:it,VBoxWithResizeCallback:class extends it{resizeCallback;constructor(e){super(),this.resizeCallback=e}onResize(){this.resizeCallback()}},Widget:et,WidgetConfig:qe,WidgetElement:Xe,WidgetFocusRestorer:st,widgetConfig:function(e,t){return new qe(e,t)},widgetRef:function(e,t){return d.Directives.ref((i=>{if(!(i instanceof HTMLElement))return;const n=et.getOrCreateWidget(i);if(!(n instanceof e))throw new Error(`Expected an element with a widget of type ${e.name} but got ${i?.constructor?.name}`);t(n)}))}});let rt;class at extends e.ObjectWrapper.ObjectWrapper{frontendHost;zoomFactorInternal;constructor(e,t){super(),this.frontendHost=t,this.zoomFactorInternal=this.frontendHost.zoomFactor(),e.addEventListener("resize",this.onWindowResize.bind(this),!0)}static instance(e={forceNew:null,win:null,frontendHost:null}){const{forceNew:t,win:i,frontendHost:n}=e;if(!rt||t){if(!i||!n)throw new Error(`Unable to create zoom manager: window and frontendHost must be provided: ${(new Error).stack}`);rt=new at(i,n)}return rt}static removeInstance(){rt=void 0}zoomFactor(){return this.zoomFactorInternal}cssToDIP(e){return e*this.zoomFactorInternal}dipToCSS(e){return e/this.zoomFactorInternal}onWindowResize(){const e=this.zoomFactorInternal;this.zoomFactorInternal=this.frontendHost.zoomFactor(),e!==this.zoomFactorInternal&&this.dispatchEventToListeners("ZoomChanged",{from:e,to:this.zoomFactorInternal})}}var lt=Object.freeze({__proto__:null,ZoomManager:at});class dt extends(e.ObjectWrapper.eventMixin(et)){sidebarElementInternal;mainElement;resizerElementInternal;resizerElementSize;resizerWidget;defaultSidebarWidth;defaultSidebarHeight;constraintsInDip;resizeStartSizeDIP;setting;totalSizeCSS;totalSizeOtherDimensionCSS;mainWidgetInternal;sidebarWidgetInternal;animationFrameHandle;animationCallback;showSidebarButtonTitle;hideSidebarButtonTitle;shownSidebarString;hiddenSidebarString;showHideSidebarButton;isVerticalInternal;sidebarMinimized;detaching;sidebarSizeDIP;savedSidebarSizeDIP;secondIsSidebar;shouldSaveShowMode;savedVerticalMainSize;savedHorizontalMainSize;showModeInternal;savedShowMode;autoAdjustOrientation;constructor(t,i,n,s,o,r,a){super(!0,void 0,a),this.element.classList.add("split-widget"),this.registerRequiredCSS(Re),this.contentElement.classList.add("shadow-split-widget"),this.sidebarElementInternal=this.contentElement.createChild("div","shadow-split-widget-contents shadow-split-widget-sidebar vbox"),this.mainElement=this.contentElement.createChild("div","shadow-split-widget-contents shadow-split-widget-main vbox");const l=this.mainElement.createChild("slot");l.name="main",l.addEventListener("slotchange",(e=>{const t=l.assignedNodes()[0],i=t instanceof HTMLElement?et.getOrCreateWidget(t):null;i&&i!==this.mainWidgetInternal&&this.setMainWidget(i)}));const d=this.sidebarElementInternal.createChild("slot");d.name="sidebar",d.addEventListener("slotchange",(e=>{const t=d.assignedNodes()[0],i=t instanceof HTMLElement?et.getOrCreateWidget(t):null;i&&i!==this.sidebarWidgetInternal&&this.setSidebarWidget(i)})),this.resizerElementInternal=this.contentElement.createChild("div","shadow-split-widget-resizer"),this.resizerElementSize=null,this.resizerWidget=new Ae,this.resizerWidget.setEnabled(!0),this.resizerWidget.addEventListener("ResizeStart",this.onResizeStart,this),this.resizerWidget.addEventListener("ResizeUpdatePosition",this.onResizeUpdate,this),this.resizerWidget.addEventListener("ResizeEnd",this.onResizeEnd,this),this.defaultSidebarWidth=s||200,this.defaultSidebarHeight=o||this.defaultSidebarWidth,this.constraintsInDip=Boolean(r),this.resizeStartSizeDIP=0,this.setting=n?e.Settings.Settings.instance().createSetting(n,{}):null,this.totalSizeCSS=0,this.totalSizeOtherDimensionCSS=0,this.mainWidgetInternal=null,this.sidebarWidgetInternal=null,this.animationFrameHandle=0,this.animationCallback=null,this.showSidebarButtonTitle=e.UIString.LocalizedEmptyString,this.hideSidebarButtonTitle=e.UIString.LocalizedEmptyString,this.shownSidebarString=e.UIString.LocalizedEmptyString,this.hiddenSidebarString=e.UIString.LocalizedEmptyString,this.showHideSidebarButton=null,this.isVerticalInternal=!1,this.sidebarMinimized=!1,this.detaching=!1,this.sidebarSizeDIP=-1,this.savedSidebarSizeDIP=this.sidebarSizeDIP,this.secondIsSidebar=!1,this.shouldSaveShowMode=!1,this.savedVerticalMainSize=null,this.savedHorizontalMainSize=null,this.setSecondIsSidebar(i),this.innerSetVertical(t),this.showModeInternal="Both",this.savedShowMode=this.showModeInternal,this.installResizer(this.resizerElementInternal),this.autoAdjustOrientation=!1}isVertical(){return this.isVerticalInternal}setVertical(e){this.isVerticalInternal!==e&&(this.innerSetVertical(e),this.isShowing()&&this.updateLayout())}setAutoAdjustOrientation(e){this.autoAdjustOrientation=e,this.maybeAutoAdjustOrientation()}innerSetVertical(e){this.contentElement.classList.toggle("vbox",!e),this.contentElement.classList.toggle("hbox",e),this.isVerticalInternal=e,this.resizerElementSize=null,this.sidebarSizeDIP=-1,this.restoreSidebarSizeFromSettings(),this.shouldSaveShowMode&&this.restoreAndApplyShowModeFromSettings(),this.updateShowHideSidebarButton(),this.resizerWidget.setVertical(!e),this.invalidateConstraints()}updateLayout(e){this.totalSizeCSS=0,this.totalSizeOtherDimensionCSS=0,this.mainElement.style.removeProperty("width"),this.mainElement.style.removeProperty("height"),this.sidebarElementInternal.style.removeProperty("width"),this.sidebarElementInternal.style.removeProperty("height"),this.innerSetSidebarSizeDIP(this.preferredSidebarSizeDIP(),Boolean(e))}setMainWidget(e){this.mainWidgetInternal!==e&&(this.suspendInvalidations(),this.mainWidgetInternal&&this.mainWidgetInternal.detach(),this.mainWidgetInternal=e,e&&(e.element.slot="main","OnlyMain"!==this.showModeInternal&&"Both"!==this.showModeInternal||e.show(this.element)),this.resumeInvalidations())}setSidebarWidget(e){this.sidebarWidgetInternal!==e&&(this.suspendInvalidations(),this.sidebarWidgetInternal&&this.sidebarWidgetInternal.detach(),this.sidebarWidgetInternal=e,e&&(e.element.slot="sidebar","OnlySidebar"!==this.showModeInternal&&"Both"!==this.showModeInternal||e.show(this.element)),this.resumeInvalidations())}mainWidget(){return this.mainWidgetInternal}sidebarWidget(){return this.sidebarWidgetInternal}sidebarElement(){return this.sidebarElementInternal}childWasDetached(e){this.detaching||(this.mainWidgetInternal===e&&(this.mainWidgetInternal=null),this.sidebarWidgetInternal===e&&(this.sidebarWidgetInternal=null),this.invalidateConstraints())}isSidebarSecond(){return this.secondIsSidebar}enableShowModeSaving(){this.shouldSaveShowMode=!0,this.restoreAndApplyShowModeFromSettings()}showMode(){return this.showModeInternal}sidebarIsShowing(){return"OnlyMain"!==this.showModeInternal}setSecondIsSidebar(e){e!==this.secondIsSidebar&&(this.secondIsSidebar=e,this.mainWidgetInternal?.shouldHideOnDetach()?this.sidebarWidgetInternal?.shouldHideOnDetach()?(console.error("Could not swap split widget side. Both children widgets contain iframes."),this.secondIsSidebar=!e):e?this.contentElement.insertBefore(this.sidebarElementInternal,this.resizerElementInternal):this.contentElement.insertBefore(this.sidebarElementInternal,this.mainElement):e?this.contentElement.insertBefore(this.mainElement,this.sidebarElementInternal):this.contentElement.insertBefore(this.mainElement,this.resizerElementInternal))}resizerElement(){return this.resizerElementInternal}hideMain(e){this.showOnly(this.sidebarWidgetInternal,this.mainWidgetInternal,this.sidebarElementInternal,this.mainElement,e),this.updateShowMode("OnlySidebar")}hideSidebar(e){this.showOnly(this.mainWidgetInternal,this.sidebarWidgetInternal,this.mainElement,this.sidebarElementInternal,e),this.updateShowMode("OnlyMain")}setSidebarMinimized(e){this.sidebarMinimized=e,this.invalidateConstraints()}isSidebarMinimized(){return this.sidebarMinimized}showOnly(e,t,i,n,s){function o(){e&&(e===this.mainWidgetInternal?this.mainWidgetInternal.show(this.element,this.sidebarWidgetInternal?this.sidebarWidgetInternal.element:null):this.sidebarWidgetInternal&&this.sidebarWidgetInternal.show(this.element)),t&&(this.detaching=!0,t.detach(),this.detaching=!1),this.resizerElementInternal.classList.add("hidden"),i.classList.remove("hidden"),i.classList.add("maximized"),n.classList.add("hidden"),n.classList.remove("maximized"),this.removeAllLayoutProperties(),this.doResize(),this.showFinishedForTest()}this.cancelAnimation(),s?this.animate(!0,o.bind(this)):o.call(this),this.sidebarSizeDIP=-1,this.setResizable(!1)}showFinishedForTest(){}removeAllLayoutProperties(){this.sidebarElementInternal.style.removeProperty("flexBasis"),this.mainElement.style.removeProperty("width"),this.mainElement.style.removeProperty("height"),this.sidebarElementInternal.style.removeProperty("width"),this.sidebarElementInternal.style.removeProperty("height"),this.resizerElementInternal.style.removeProperty("left"),this.resizerElementInternal.style.removeProperty("right"),this.resizerElementInternal.style.removeProperty("top"),this.resizerElementInternal.style.removeProperty("bottom"),this.resizerElementInternal.style.removeProperty("margin-left"),this.resizerElementInternal.style.removeProperty("margin-right"),this.resizerElementInternal.style.removeProperty("margin-top"),this.resizerElementInternal.style.removeProperty("margin-bottom")}showBoth(e){"Both"===this.showModeInternal&&(e=!1),this.cancelAnimation(),this.mainElement.classList.remove("maximized","hidden"),this.sidebarElementInternal.classList.remove("maximized","hidden"),this.resizerElementInternal.classList.remove("hidden"),this.setResizable(!0),this.suspendInvalidations(),this.sidebarWidgetInternal&&this.sidebarWidgetInternal.show(this.element),this.mainWidgetInternal&&this.mainWidgetInternal.show(this.element,this.sidebarWidgetInternal?this.sidebarWidgetInternal.element:null),this.resumeInvalidations(),this.setSecondIsSidebar(this.secondIsSidebar),this.sidebarSizeDIP=-1,this.updateShowMode("Both"),this.updateLayout(e)}setResizable(e){this.resizerWidget.setEnabled(e)}forceSetSidebarWidth(e){this.defaultSidebarWidth=e,this.savedSidebarSizeDIP=e,this.updateLayout()}isResizable(){return this.resizerWidget.isEnabled()}setSidebarSize(e){const t=at.instance().cssToDIP(e);this.savedSidebarSizeDIP=t,this.saveSetting(),this.innerSetSidebarSizeDIP(t,!1,!0)}sidebarSize(){const e=Math.max(0,this.sidebarSizeDIP);return at.instance().dipToCSS(e)}totalSizeDIP(){return this.totalSizeCSS||(this.totalSizeCSS=this.isVerticalInternal?this.contentElement.offsetWidth:this.contentElement.offsetHeight,this.totalSizeOtherDimensionCSS=this.isVerticalInternal?this.contentElement.offsetHeight:this.contentElement.offsetWidth),at.instance().cssToDIP(this.totalSizeCSS)}updateShowMode(e){this.showModeInternal=e,this.saveShowModeToSettings(),this.updateShowHideSidebarButton(),this.dispatchEventToListeners("ShowModeChanged",e),this.invalidateConstraints()}innerSetSidebarSizeDIP(e,t,i){if("Both"!==this.showModeInternal||!this.isShowing())return;if(e=this.applyConstraints(e,i),this.sidebarSizeDIP===e)return;this.resizerElementSize||(this.resizerElementSize=this.isVerticalInternal?this.resizerElementInternal.offsetWidth:this.resizerElementInternal.offsetHeight),this.removeAllLayoutProperties();const n=Math.round(at.instance().dipToCSS(e)),s=n+"px",o=this.totalSizeCSS-n+"px";this.sidebarElementInternal.style.flexBasis=s,this.isVerticalInternal?(this.sidebarElementInternal.style.width=s,this.mainElement.style.width=o,this.sidebarElementInternal.style.height=this.totalSizeOtherDimensionCSS+"px",this.mainElement.style.height=this.totalSizeOtherDimensionCSS+"px"):(this.sidebarElementInternal.style.height=s,this.mainElement.style.height=o,this.sidebarElementInternal.style.width=this.totalSizeOtherDimensionCSS+"px",this.mainElement.style.width=this.totalSizeOtherDimensionCSS+"px"),this.isVerticalInternal?this.secondIsSidebar?(this.resizerElementInternal.style.right=s,this.resizerElementInternal.style.marginRight=-this.resizerElementSize/2+"px"):(this.resizerElementInternal.style.left=s,this.resizerElementInternal.style.marginLeft=-this.resizerElementSize/2+"px"):this.secondIsSidebar?(this.resizerElementInternal.style.bottom=s,this.resizerElementInternal.style.marginBottom=-this.resizerElementSize/2+"px"):(this.resizerElementInternal.style.top=s,this.resizerElementInternal.style.marginTop=-this.resizerElementSize/2+"px"),this.sidebarSizeDIP=e,t?this.animate(!1):(this.doResize(),this.dispatchEventToListeners("SidebarSizeChanged",this.sidebarSize()))}animate(e,t){let i;this.animationCallback=t||null,i=this.isVerticalInternal?this.secondIsSidebar?"margin-right":"margin-left":this.secondIsSidebar?"margin-bottom":"margin-top";const n=e?"0":"-"+at.instance().dipToCSS(this.sidebarSizeDIP)+"px",s=e?"-"+at.instance().dipToCSS(this.sidebarSizeDIP)+"px":"0";this.contentElement.style.setProperty(i,n),this.contentElement.style.setProperty("overflow","hidden"),e||(ut(this.mainElement.offsetWidth),ut(this.sidebarElementInternal.offsetWidth)),!e&&this.sidebarWidgetInternal&&this.sidebarWidgetInternal.doResize(),this.contentElement.style.setProperty("transition",i+" 50ms linear");const o=function(){if(this.animationFrameHandle=0,r){if(!(window.performance.now()<r+50))return this.cancelAnimation(),this.mainWidgetInternal&&this.mainWidgetInternal.doResize(),void this.dispatchEventToListeners("SidebarSizeChanged",this.sidebarSize());this.mainWidgetInternal&&this.mainWidgetInternal.doResize()}else this.contentElement.style.setProperty(i,s),r=window.performance.now();this.animationFrameHandle=this.contentElement.window().requestAnimationFrame(o)}.bind(this);let r=null;this.animationFrameHandle=this.contentElement.window().requestAnimationFrame(o)}cancelAnimation(){this.contentElement.style.removeProperty("margin-top"),this.contentElement.style.removeProperty("margin-right"),this.contentElement.style.removeProperty("margin-bottom"),this.contentElement.style.removeProperty("margin-left"),this.contentElement.style.removeProperty("transition"),this.contentElement.style.removeProperty("overflow"),this.animationFrameHandle&&(this.contentElement.window().cancelAnimationFrame(this.animationFrameHandle),this.animationFrameHandle=0),this.animationCallback&&(this.animationCallback(),this.animationCallback=null)}applyConstraints(e,t){const n=this.totalSizeDIP(),s=this.constraintsInDip?1:at.instance().zoomFactor();let o=this.sidebarWidgetInternal?this.sidebarWidgetInternal.constraints():new Le,r=this.isVertical()?o.minimum.width:o.minimum.height;r||(r=ct),r*=s,this.sidebarMinimized&&(e=r);let a=this.isVertical()?o.preferred.width:o.preferred.height;a||(a=ct),a*=s,e<a&&(a=Math.max(e,r)),a+=s,o=this.mainWidgetInternal?this.mainWidgetInternal.constraints():new Le;let l=this.isVertical()?o.minimum.width:o.minimum.height;l||(l=ct),l*=s;let d=this.isVertical()?o.preferred.width:o.preferred.height;d||(d=ct),d*=s;const h=this.isVertical()?this.savedVerticalMainSize:this.savedHorizontalMainSize;null!==h&&(d=Math.min(d,h*s)),t&&(d=l);const c=d+a;if(c<=n)return i.NumberUtilities.clamp(e,a,n-d);if(l+r<=n){return e=a-(c-n)*a/c,i.NumberUtilities.clamp(e,r,n-l)}return Math.max(0,n-l)}wasShown(){this.forceUpdateLayout(),at.instance().addEventListener("ZoomChanged",this.onZoomChanged,this)}willHide(){at.instance().removeEventListener("ZoomChanged",this.onZoomChanged,this)}onResize(){this.maybeAutoAdjustOrientation(),this.updateLayout()}onLayout(){this.updateLayout()}calculateConstraints(){if("OnlyMain"===this.showModeInternal)return this.mainWidgetInternal?this.mainWidgetInternal.constraints():new Le;if("OnlySidebar"===this.showModeInternal)return this.sidebarWidgetInternal?this.sidebarWidgetInternal.constraints():new Le;let e=this.mainWidgetInternal?this.mainWidgetInternal.constraints():new Le,t=this.sidebarWidgetInternal?this.sidebarWidgetInternal.constraints():new Le;const i=ct;return this.isVerticalInternal?(e=e.widthToMax(i).addWidth(1),t=t.widthToMax(i),e.addWidth(t).heightToMax(t)):(e=e.heightToMax(i).addHeight(1),t=t.heightToMax(i),e.widthToMax(t).addHeight(t))}maybeAutoAdjustOrientation(){if(this.autoAdjustOrientation){const e=this.isVertical()?this.totalSizeCSS:this.totalSizeOtherDimensionCSS,t=this.isVertical()?this.totalSizeOtherDimensionCSS:this.totalSizeCSS;e<=600&&t>=600?this.setVertical(!1):this.setVertical(!0)}}onResizeStart(){this.resizeStartSizeDIP=this.sidebarSizeDIP}onResizeUpdate(e){const t=e.data.currentPosition-e.data.startPosition,i=at.instance().cssToDIP(t),n=this.secondIsSidebar?this.resizeStartSizeDIP-i:this.resizeStartSizeDIP+i,s=this.applyConstraints(n,!0);this.savedSidebarSizeDIP=s,this.saveSetting(),this.innerSetSidebarSizeDIP(s,!1,!0),this.isVertical()?this.savedVerticalMainSize=this.totalSizeDIP()-this.sidebarSizeDIP:this.savedHorizontalMainSize=this.totalSizeDIP()-this.sidebarSizeDIP}onResizeEnd(){this.resizeStartSizeDIP=0}hideDefaultResizer(e){this.resizerElementInternal.classList.toggle("hidden",Boolean(e)),this.uninstallResizer(this.resizerElementInternal),this.sidebarElementInternal.classList.toggle("no-default-splitter",Boolean(e))}installResizer(e){this.resizerWidget.addElement(e)}uninstallResizer(e){this.resizerWidget.removeElement(e)}toggleResizer(e,t){t?this.installResizer(e):this.uninstallResizer(e)}settingForOrientation(){const e=this.setting?this.setting.get():{};return(this.isVerticalInternal?e.vertical:e.horizontal)??null}preferredSidebarSizeDIP(){let e=this.savedSidebarSizeDIP;return e||(e=this.isVerticalInternal?this.defaultSidebarWidth:this.defaultSidebarHeight,0<e&&e<1&&(e*=this.totalSizeDIP())),e}restoreSidebarSizeFromSettings(){const e=this.settingForOrientation();this.savedSidebarSizeDIP=e?e.size:0}restoreAndApplyShowModeFromSettings(){const e=this.settingForOrientation();switch(this.savedShowMode=e?.showMode?e.showMode:this.showModeInternal,this.showModeInternal=this.savedShowMode,this.savedShowMode){case"Both":this.showBoth();break;case"OnlyMain":this.hideSidebar();break;case"OnlySidebar":this.hideMain()}}saveShowModeToSettings(){this.savedShowMode=this.showModeInternal,this.saveSetting()}saveSetting(){if(!this.setting)return;const e=this.setting.get(),t=(this.isVerticalInternal?e.vertical:e.horizontal)||{};t.size=this.savedSidebarSizeDIP,this.shouldSaveShowMode&&(t.showMode=this.savedShowMode),this.isVerticalInternal?e.vertical=t:e.horizontal=t,this.setting.set(e)}forceUpdateLayout(){this.sidebarSizeDIP=-1,this.updateLayout()}onZoomChanged(){this.forceUpdateLayout()}createShowHideSidebarButton(e,t,i,n,o){return this.showSidebarButtonTitle=e,this.hideSidebarButtonTitle=t,this.shownSidebarString=i,this.hiddenSidebarString=n,this.showHideSidebarButton=new qi("","right-panel-open"),this.showHideSidebarButton.addEventListener("Click",(function(){this.toggleSidebar()}),this),o&&this.showHideSidebarButton.element.setAttribute("jslog",`${s.toggleSubpane().track({click:!0}).context(o)}`),this.updateShowHideSidebarButton(),this.showHideSidebarButton}toggleSidebar(){return"Both"!==this.showModeInternal?(this.showBoth(!0),co(this.shownSidebarString),!0):(this.hideSidebar(!0),co(this.hiddenSidebarString),!1)}updateShowHideSidebarButton(){if(!this.showHideSidebarButton)return;const e="OnlyMain"===this.showModeInternal;let t="";t=e?this.isVertical()?this.isSidebarSecond()?"right-panel-open":"left-panel-open":this.isSidebarSecond()?"bottom-panel-open":"top-panel-open":this.isVertical()?this.isSidebarSecond()?"right-panel-close":"left-panel-close":this.isSidebarSecond()?"bottom-panel-close":"top-panel-close",this.showHideSidebarButton.setGlyph(t),this.showHideSidebarButton.setTitle(e?this.showSidebarButtonTitle:this.hideSidebarButtonTitle)}}class ht extends Xe{static observedAttributes=["direction","sidebar-position","sidebar-initial-size","sidebar-visibility"];createWidget(){const e="column"===this.getAttribute("direction"),t="auto"===this.getAttribute("direction"),i="second"===this.getAttribute("sidebar-position"),n=this.getAttribute("name")??void 0,s=parseInt(this.getAttribute("sidebar-initial-size")||"",10),o=isNaN(s)?void 0:s,r=isNaN(s)?void 0:s,a=new dt(e,i,n,o,r,!1,this);t&&a.setAutoAdjustOrientation(!0);return"hidden"===this.getAttribute("sidebar-visibility")&&a.hideSidebar(),a.addEventListener("ShowModeChanged",(()=>{this.dispatchEvent(new CustomEvent("change",{detail:a.showMode()}))})),a}attributeChangedCallback(e,t,i){const n=et.get(this);n&&("direction"===e?(n.setVertical("column"===i),n.setAutoAdjustOrientation("auto"===i)):"sidebar-position"===e?n.setSecondIsSidebar("second"===i):"sidebar-visibility"===e&&("hidden"===i?n.hideSidebar():n.showBoth()))}}customElements.define("devtools-split-view",ht);const ct=20,ut=function(e){};var mt=Object.freeze({__proto__:null,SplitWidget:dt,SplitWidgetElement:ht}),pt={cssText:`.tabbed-pane{flex:auto;overflow:hidden}.tabbed-pane-content{position:relative;overflow:auto;flex:auto;display:flex;flex-direction:column}.tabbed-pane-content.has-no-tabs{background-color:var(--sys-color-cdt-base-container)}.tabbed-pane-placeholder{text-align:center;align-content:center;.sources-placeholder{display:inline-block}}.tabbed-pane-placeholder-row{max-width:var(--sys-size-32);min-width:var(--sys-size-28);margin:0 var(--sys-size-8);&.workspace{line-height:18px;display:inline-flex;align-items:center;border:var(--sys-size-2) dashed var(--sys-color-divider);padding:var(--sys-size-8);border-radius:var(--sys-shape-corner-medium);margin:var(--sys-size-8) var(--sys-size-8) var(--sys-size-11);> .icon-container{flex-shrink:0;width:var(--sys-size-13);height:var(--sys-size-13);background:var(--sys-color-tonal-container);align-content:center;border-radius:var(--sys-shape-corner-full);margin-right:var(--sys-size-8);> devtools-icon{color:var(--sys-color-on-tonal-container)}}}&.shortcuts-list{padding:0 var(--sys-size-6);.shortcut-line{display:grid;grid-template-columns:1fr 1fr;grid-column-gap:var(--sys-size-10);padding:var(--sys-size-4) 0;&:not(:last-child){border-bottom:var(--sys-size-1) solid var(--sys-color-divider)}.shortcuts{display:flex;flex-direction:row;gap:var(--sys-size-4);align-items:center}.keybinds-key{display:flex;flex-shrink:0;align-items:center;justify-content:center;height:var(--sys-size-11);min-width:var(--sys-size-11);font:var(--sys-typescale-body5-medium);white-space:nowrap;border-radius:var(--sys-shape-corner-small);background:var(--sys-color-tonal-container);padding:0 var(--sys-size-4)}& button{margin-inline:0}}}& button{cursor:pointer;color:var(--text-link);background:transparent;border:none;padding:0;text-decoration:underline;margin-inline:var(--sys-size-3);text-align:left;&:focus-visible{outline:2px solid var(--sys-color-state-focus-ring);outline-offset:2px;border-radius:2px}}}.tabbed-pane-header{display:flex;flex:0 0 27px;border-bottom:1px solid var(--sys-color-divider);overflow:visible;width:100%;background-color:var(--app-color-toolbar-background);& > *{cursor:initial}}.tabbed-pane-header-contents{flex:auto;pointer-events:none;margin-left:0;position:relative;cursor:default}.tabbed-pane-header-contents > *{pointer-events:initial}.tabbed-pane-header-tab-icon{min-width:14px;display:flex;align-items:center;margin-right:var(--sys-size-2)}.tabbed-pane-header-tab-suffix-element{height:var(--sys-size-8);width:var(--sys-size-8);padding-left:var(--sys-size-2);align-content:center;&:has(.badge){width:17px;margin-left:var(--sys-size-2)}&:has(.status-dot){width:9px}}.badge{display:inline-flex;justify-content:center;align-items:center;height:var(--sys-size-7);min-width:var(--sys-size-7);width:fit-content;padding:0 var(--sys-size-3);line-height:var(--sys-size-7);border-radius:var(--sys-shape-corner-full);margin-left:var(--sys-size-2);background-color:var(--sys-color-primary);color:var(--sys-color-on-primary);font-size:var(--sys-typescale-body5-size);font-weight:var(--ref-typeface-weight-bold);&.primary{background:var(--sys-color-cdt-base-container);color:var(--sys-color-primary);border:var(--sys-size-1) solid var(--sys-color-primary);font-weight:normal}}.status-dot{height:var(--sys-size-4);width:var(--sys-size-4);border-radius:var(--sys-shape-corner-full);background-color:var(--sys-color-purple-bright);margin-left:var(--sys-size-1);justify-self:center;position:relative;top:0.75px}.tabbed-pane-header-tab{font:var(--sys-typescale-body4-medium);color:var(--sys-color-on-surface-subtle);height:var(--sys-size-12);float:left;padding:0 10px;white-space:nowrap;cursor:default;display:flex;align-items:center}.tabbed-pane-header-tab.closeable{padding-right:var(--sys-size-3)}.tabbed-pane-header-tab devtools-icon.dot::before{outline-color:var(--icon-gap-toolbar)}.tabbed-pane-header-tab:hover devtools-icon.dot::before{outline-color:var(--icon-gap-toolbar-hover)}.tabbed-pane-header-tab:not(.vertical-tab-layout):hover,\n.tabbed-pane-shadow .tabbed-pane-header-tab:focus-visible{color:var(--sys-color-on-surface);background-color:var(--sys-color-state-hover-on-subtle)}.tabbed-pane-header-tab-title{text-overflow:ellipsis;overflow:hidden}.tabbed-pane-header-tab.measuring{visibility:hidden}.tabbed-pane-header-tab.selected{border-bottom:none;color:var(--sys-color-primary)}.tabbed-pane-header-tab.selected.dragging{--override-dragging-box-shadow-color:rgb(0 0 0/37%);position:relative;box-shadow:0 1px 4px 0 var(--override-dragging-box-shadow-color);background-color:var(--app-color-toolbar-background)}.theme-with-dark-background .tabbed-pane-header-tab.dragging,\n:host-context(.theme-with-dark-background) .tabbed-pane-header-tab.dragging{--override-dragging-box-shadow-color:rgb(230 230 230/37%)}.tabbed-pane-header-tab .tabbed-pane-close-button{visibility:hidden}.tabbed-pane-header-tab:hover .tabbed-pane-close-button,\n.tabbed-pane-header-tab.selected .tabbed-pane-close-button{visibility:visible}.tabbed-pane-header-tabs-drop-down-container{float:left;opacity:80%;display:flex;align-items:center;height:100%}.tabbed-pane-header-tabs-drop-down-container > .chevron-icon:hover,\n.tabbed-pane-header-tabs-drop-down-container > .chevron-icon:focus-visible{color:var(--icon-default-hover)}.tabbed-pane-header-tabs-drop-down-container:hover,\n.tabbed-pane-header-tabs-drop-down-container:focus-visible{background-color:var(--sys-color-state-hover-on-subtle)}.tabbed-pane-header-tabs-drop-down-container.measuring{visibility:hidden}.tabbed-pane-header-tabs-drop-down-container:active{opacity:80%}.tabbed-pane-shadow.vertical-tab-layout{flex-direction:row!important}.tabbed-pane-shadow.vertical-tab-layout .tabbed-pane-header{background-color:transparent;border:none transparent!important;width:auto;flex:0 0 auto;flex-direction:column;padding-top:5px;overflow:hidden}.tabbed-pane-shadow.vertical-tab-layout .tabbed-pane-content{padding-top:var(--sys-size-10);overflow-x:hidden}.tabbed-pane-shadow.vertical-tab-layout .tabbed-pane-header-contents{margin:0;flex:none}.tabbed-pane-shadow.vertical-tab-layout .tabbed-pane-header-tabs{display:flex;flex-direction:column;width:var(--sys-size-24);margin-right:var(--sys-size-5)}.tabbed-pane-shadow.vertical-tab-layout .tabbed-pane-header-tab{height:var(--size-12,28px);padding:0 var(--size-8,16px) 0 var(--size-7,14px);border-radius:0 100px 100px 0;color:var(--sys-color-on-surface);position:relative;& > .tabbed-pane-header-tab-icon devtools-icon{margin:0;margin-right:var(--sys-size-6)}&.selected{color:var(--app-color-navigation-drawer-label-selected);background-color:var(--app-color-navigation-drawer-background-selected);& > .tabbed-pane-header-tab-icon devtools-icon{color:var(--app-color-navigation-drawer-label-selected)}}&:focus-visible{outline:2px solid var(--sys-color-state-focus-ring)}&:active::before{background-color:var(--sys-color-state-ripple-neutral-on-subtle);content:"";height:100%;width:100%;border-radius:inherit;position:absolute;top:0;left:0}}.tabbed-pane-tab-slider{height:3px;position:absolute;bottom:-1px;background-color:var(--sys-color-primary);border-radius:var(--sys-shape-corner-full) var(--sys-shape-corner-full) 0 0;left:0;transform-origin:0 100%;transition:transform 150ms cubic-bezier(0,0,0.2,1);visibility:hidden}@media (-webkit-min-device-pixel-ratio: 1.1){.tabbed-pane-tab-slider{border-top:none}}.tabbed-pane-tab-slider.enabled{visibility:visible}.tabbed-pane-header-tab.disabled{opacity:50%;pointer-events:none}.tabbed-pane-left-toolbar{margin-right:-4px;flex:none}.tabbed-pane-right-toolbar{margin-left:-4px;flex:none}.preview-icon{--override-tabbed-pane-preview-icon-color:var(--icon-default);width:16px;height:16px;display:flex;align-items:center;justify-content:center;margin-left:var(--sys-size-2);flex-shrink:0}@media (forced-colors: active){.tabbed-pane-tab-slider{forced-color-adjust:none;background-color:Highlight}.tabbed-pane-header{forced-color-adjust:none;border-bottom:1px solid transparent;background-color:ButtonFace}.tabbed-pane-header-contents .tabbed-pane-header-tabs .tabbed-pane-header-tab{background:ButtonFace;color:ButtonText}.tabbed-pane-header-tabs .tabbed-pane-header-tab:hover,\n .tabbed-pane-header-tabs .tabbed-pane-shadow .tabbed-pane-header-tab:focus-visible{background-color:Highlight;color:HighlightText}.tabbed-pane-header-tab .tabbed-pane-header-tab-title{color:inherit}.tabbed-pane-header-contents .tabbed-pane-header-tabs .tabbed-pane-header-tab.selected,\n .tabbed-pane-header-contents .tabbed-pane-header-tabs .tabbed-pane-header-tab.selected:focus-visible{background-color:Highlight;color:HighlightText}.tabbed-pane-header-tab:hover .tabbed-pane-close-button,\n .tabbed-pane-shadow .tabbed-pane-header-tab:focus-visible .tabbed-pane-close-button{color:HighlightText}.tabbed-pane-header-tabs-drop-down-container{opacity:100%}.tabbed-pane-header-tabs-drop-down-container:hover,\n .tabbed-pane-header-tabs-drop-down-container:focus-visible{background-color:Highlight}.tabbed-pane-header-tabs-drop-down-container > .chevron-icon{color:ButtonText}.tabbed-pane-header-tabs-drop-down-container:hover > .chevron-icon,\n .tabbed-pane-header-tabs-drop-down-container:focus-visible > .chevron-icon{color:HighlightText}.tabbed-pane-header-tabs .tabbed-pane-header-tab .preview-icon{--override-tabbed-pane-preview-icon-color:ButtonText}.tabbed-pane-header-tab.selected .preview-icon,\n .tabbed-pane-header-tab:hover .preview-icon{--override-tabbed-pane-preview-icon-color:HighlightText}.close-button{--tabbed-pane-close-icon-color:ButtonText;forced-color-adjust:none}.close-button:hover,\n .close-button:active{--tabbed-pane-close-icon-color:HighlightText;background-color:Highlight}.selected .close-button{--tabbed-pane-close-icon-color:HighlightText}}\n/*# sourceURL=${import.meta.resolve("./tabbedPane.css")} */\n`};class gt{static install(e,t){e.title=t||""}static installWithActionBinding(e,t,i){let n=t;const s=G.instance().shortcutsForAction(i);for(const e of s)n+=` - ${e.title()}`;e.title=n}}var bt=Object.freeze({__proto__:null,Tooltip:gt});const vt={moreTabs:"More tabs",closeS:"Close {PH1}",close:"Close",closeOthers:"Close others",closeTabsToTheRight:"Close tabs to the right",closeAll:"Close all",previewFeature:"Preview feature",moveTabRight:"Move right",moveTabLeft:"Move left"},ft=t.i18n.registerUIStrings("ui/legacy/TabbedPane.ts",vt),wt=t.i18n.getLocalizedString.bind(void 0,ft);class xt extends(e.ObjectWrapper.eventMixin(it)){headerElementInternal;headerContentsElement;tabSlider;tabsElement;contentElementInternal;tabs;tabsHistory;tabsById;currentTabLocked;autoSelectFirstItemOnShow;triggerDropDownTimeout;dropDownButton;currentDevicePixelRatio;shrinkableTabs;verticalTabLayout;closeableTabs;delegate;currentTab;sliderEnabled;placeholderElement;focusedPlaceholderElement;placeholderContainerElement;lastSelectedOverflowTab;overflowDisabled;measuredDropDownButtonWidth;leftToolbarInternal;rightToolbarInternal;allowTabReorder;automaticReorder;constructor(){super(!0),this.registerRequiredCSS(pt),this.element.classList.add("tabbed-pane"),this.contentElement.classList.add("tabbed-pane-shadow"),this.contentElement.tabIndex=-1,this.setDefaultFocusedElement(this.contentElement),this.headerElementInternal=this.contentElement.createChild("div","tabbed-pane-header"),this.headerContentsElement=this.headerElementInternal.createChild("div","tabbed-pane-header-contents"),this.tabSlider=document.createElement("div"),this.tabSlider.classList.add("tabbed-pane-tab-slider"),this.tabsElement=this.headerContentsElement.createChild("div","tabbed-pane-header-tabs"),this.tabsElement.setAttribute("role","tablist"),this.tabsElement.addEventListener("keydown",this.keyDown.bind(this),!1),this.contentElementInternal=this.contentElement.createChild("div","tabbed-pane-content"),this.contentElementInternal.createChild("slot"),this.tabs=[],this.tabsHistory=[],this.tabsById=new Map,this.currentTabLocked=!1,this.autoSelectFirstItemOnShow=!0,this.triggerDropDownTimeout=null,this.dropDownButton=this.createDropDownButton(),this.currentDevicePixelRatio=window.devicePixelRatio,at.instance().addEventListener("ZoomChanged",this.zoomChanged,this),this.makeTabSlider()}setAccessibleName(e){to(this.tabsElement,e)}setCurrentTabLocked(e){this.currentTabLocked=e,this.headerElementInternal.classList.toggle("locked",this.currentTabLocked)}setAutoSelectFirstItemOnShow(e){this.autoSelectFirstItemOnShow=e}get visibleView(){return this.currentTab?this.currentTab.view:null}tabIds(){return this.tabs.map((e=>e.id))}tabIndex(e){return this.tabs.findIndex((t=>t.id===e))}tabViews(){return this.tabs.map((e=>e.view))}tabView(e){const t=this.tabsById.get(e);return t?t.view:null}get selectedTabId(){return this.currentTab?this.currentTab.id:null}setShrinkableTabs(e){this.shrinkableTabs=e}makeVerticalTabLayout(){this.verticalTabLayout=!0,this.setTabSlider(!1),this.contentElement.classList.add("vertical-tab-layout"),this.invalidateConstraints()}setCloseableTabs(e){this.closeableTabs=e}focus(){this.visibleView?this.visibleView.focus():this.contentElement.focus()}focusSelectedTabHeader(){const e=this.currentTab;e&&e.tabElement.focus()}headerElement(){return this.headerElementInternal}tabbedPaneContentElement(){return this.contentElementInternal}setTabDelegate(e){const t=this.tabs.slice();for(let i=0;i<t.length;++i)t[i].setDelegate(e);this.delegate=e}appendTab(e,t,i,n,o,r,a,l,d){const h="boolean"==typeof r?r:Boolean(this.closeableTabs),c=new Et(this,e,t,h,Boolean(a),i,n,d);c.setDelegate(this.delegate),console.assert(!this.tabsById.has(e),`Tabbed pane already contains a tab with id '${e}'`),this.tabsById.set(e,c),c.tabElement.tabIndex=-1,c.tabElement.setAttribute("jslog",`${s.panelTabHeader().track({click:!0,drag:!0}).context(c.jslogContext)}`),void 0!==l?this.tabs.splice(l,0,c):this.tabs.push(c),this.tabsHistory.push(c),this.tabsHistory[0]===c&&this.isShowing()&&this.selectTab(c.id,o),this.updateTabElements()}closeTab(e,t){this.closeTabs([e],t)}closeTabs(e,t){if(0===e.length)return;const i=this.hasFocus();for(let i=0;i<e.length;++i)this.innerCloseTab(e[i],t);this.updateTabElements(),this.tabsHistory.length&&this.selectTab(this.tabsHistory[0].id,!1),i&&this.focus()}innerCloseTab(e,t){const i=this.tabsById.get(e);if(!i)return;if(t&&!i.closeable)return;this.currentTab&&this.currentTab.id===e&&this.hideCurrentTab(),this.tabsById.delete(e),this.tabsHistory.splice(this.tabsHistory.indexOf(i),1),this.tabs.splice(this.tabs.indexOf(i),1),i.shown&&this.hideTabElement(i);const n={prevTabId:void 0,tabId:e,view:i.view,isUserGesture:t};return this.dispatchEventToListeners(yt.TabClosed,n),!0}hasTab(e){return this.tabsById.has(e)}otherTabs(e){const t=[];for(let i=0;i<this.tabs.length;++i)this.tabs[i].id!==e&&t.push(this.tabs[i].id);return t}tabsToTheRight(e){let t=-1;for(let i=0;i<this.tabs.length;++i)if(this.tabs[i].id===e){t=i;break}return-1===t?[]:this.tabs.slice(t+1).map((function(e){return e.id}))}viewHasFocus(){if(this.visibleView?.hasFocus())return!0;const e=this.contentElement.getComponentRoot();return e instanceof Document&&this.contentElement===e.activeElement}selectTab(e,t,i){if(this.currentTabLocked)return!1;const n=this.viewHasFocus(),s=this.tabsById.get(e);if(!s)return!1;const o={prevTabId:this.currentTab?this.currentTab.id:void 0,tabId:e,view:s.view,isUserGesture:t};return this.dispatchEventToListeners(yt.TabInvoked,o),this.currentTab&&this.currentTab.id===e||(this.suspendInvalidations(),this.hideCurrentTab(),this.showTab(s),this.resumeInvalidations(),this.currentTab=s,this.tabsHistory.splice(this.tabsHistory.indexOf(s),1),this.tabsHistory.splice(0,0,s),this.updateTabElements(),(n||i)&&this.focus(),this.dispatchEventToListeners(yt.TabSelected,o)),!0}selectNextTab(){const e=this.tabs.indexOf(this.currentTab),t=i.NumberUtilities.mod(e+1,this.tabs.length);this.selectTab(this.tabs[t].id,!0)}selectPrevTab(){const e=this.tabs.indexOf(this.currentTab),t=i.NumberUtilities.mod(e-1,this.tabs.length);this.selectTab(this.tabs[t].id,!0)}getTabIndex(e){return this.tabs.indexOf(this.tabsById.get(e))}moveTabBackward(e,t){this.insertBefore(this.tabsById.get(e),t-1),this.updateTabSlider()}moveTabForward(e,t){this.insertBefore(this.tabsById.get(e),t+2),this.updateTabSlider()}lastOpenedTabIds(e){return this.tabsHistory.slice(0,e).map((function(e){return e.id}))}setTabIcon(e,t){const i=this.tabsById.get(e);i&&(i.setIcon(t),this.updateTabElements())}setTrailingTabIcon(e,t){const i=this.tabsById.get(e);i&&i.setSuffixElement(t)}setSuffixElement(e,t){const i=this.tabsById.get(e);i&&(i.setSuffixElement(t),this.updateTabElements())}setBadge(e,t){const i=document.createElement("span");i.textContent=t,i.classList.add("badge"),this.setSuffixElement(e,t?i:null)}setTabEnabled(e,t){const i=this.tabsById.get(e);i&&i.tabElement.classList.toggle("disabled",!t)}tabIsDisabled(e){return!this.tabIsEnabled(e)}tabIsEnabled(e){const t=this.tabsById.get(e);return!(t?.tabElement.classList.contains("disabled")??!1)}zoomChanged(){this.clearMeasuredWidths(),this.isShowing()&&this.updateTabElements()}clearMeasuredWidths(){for(let e=0;e<this.tabs.length;++e)delete this.tabs[e].measuredWidth}changeTabTitle(e,t,i){const n=this.tabsById.get(e);n&&void 0!==i&&(n.tooltip=i),n&&n.title!==t&&(n.title=t,to(n.tabElement,t),this.updateTabElements())}changeTabView(e,t){const i=this.tabsById.get(e);if(!i||i.view===t)return;this.suspendInvalidations();const n=this.currentTab&&this.currentTab.id===e,s=i.view.hasFocus();n&&this.hideTab(i),i.view=t,n&&this.showTab(i),s&&i.view.focus(),this.resumeInvalidations()}onResize(){this.currentDevicePixelRatio!==window.devicePixelRatio&&(this.clearMeasuredWidths(),this.currentDevicePixelRatio=window.devicePixelRatio),this.updateTabElements()}headerResized(){this.updateTabElements()}wasShown(){const e=this.currentTab||this.tabsHistory[0];e&&this.autoSelectFirstItemOnShow&&this.selectTab(e.id),this.updateTabElements()}makeTabSlider(){this.verticalTabLayout||this.setTabSlider(!0)}setTabSlider(e){this.sliderEnabled=e,this.tabSlider.classList.toggle("enabled",e)}calculateConstraints(){let e=super.calculateConstraints();const t=new Le(new Me(0,0),new Me(50,50));return e=e.widthToMax(t).heightToMax(t),e=this.verticalTabLayout?e.addWidth(new Le(new Me(120,0))):e.addHeight(new Le(new Me(0,30))),e}updateTabElements(){Wn(this,this.innerUpdateTabElements)}setPlaceholderElement(e,t){this.placeholderElement=e,t&&(this.focusedPlaceholderElement=t),this.placeholderContainerElement&&(this.placeholderContainerElement.removeChildren(),this.placeholderContainerElement.appendChild(e))}async waitForTabElementUpdate(){this.innerUpdateTabElements()}innerUpdateTabElements(){this.isShowing()&&(this.tabs.length?(this.contentElementInternal.classList.remove("has-no-tabs"),this.placeholderContainerElement&&(this.placeholderContainerElement.remove(),this.setDefaultFocusedElement(this.contentElement),delete this.placeholderContainerElement)):(this.contentElementInternal.classList.add("has-no-tabs"),this.placeholderElement&&!this.placeholderContainerElement&&(this.placeholderContainerElement=this.contentElementInternal.createChild("div","tabbed-pane-placeholder fill"),this.placeholderContainerElement.appendChild(this.placeholderElement),this.focusedPlaceholderElement&&this.setDefaultFocusedElement(this.focusedPlaceholderElement))),this.measureDropDownButton(),this.adjustToolbarWidth(),this.updateWidths(),this.updateTabsDropDown(),this.updateTabSlider())}adjustToolbarWidth(){if(!this.rightToolbarInternal||!this.measuredDropDownButtonWidth)return;const e=this.leftToolbarInternal?.getBoundingClientRect().width??0,t=this.rightToolbarInternal.getBoundingClientRect().width,i=this.headerElementInternal.getBoundingClientRect().width;!this.rightToolbarInternal.hasCompactLayout()&&i-t-e<this.measuredDropDownButtonWidth+10?this.rightToolbarInternal.setCompactLayout(!0):this.rightToolbarInternal.hasCompactLayout()&&i-2*t-e>this.measuredDropDownButtonWidth+10&&this.rightToolbarInternal.setCompactLayout(!1)}showTabElement(e,t){e>=this.tabsElement.children.length?this.tabsElement.appendChild(t.tabElement):this.tabsElement.insertBefore(t.tabElement,this.tabsElement.children[e]),t.shown=!0}hideTabElement(e){this.tabsElement.removeChild(e.tabElement),e.shown=!1}createDropDownButton(){const e=document.createElement("div");e.classList.add("tabbed-pane-header-tabs-drop-down-container"),e.setAttribute("jslog",`${s.dropDown("more-tabs").track({click:!0})}`);const t=r.Icon.create("chevron-double-right","chevron-icon"),i=wt(vt.moreTabs);return e.title=i,Ts(e),to(e,i),$s(e,!1),e.tabIndex=0,e.appendChild(t),e.addEventListener("click",this.dropDownClicked.bind(this)),e.addEventListener("keydown",this.dropDownKeydown.bind(this)),e.addEventListener("mousedown",(e=>{0!==e.button||this.triggerDropDownTimeout||(this.triggerDropDownTimeout=window.setTimeout(this.dropDownClicked.bind(this,e),200))})),e}dropDownClicked(e){const t=e;if(0!==t.button)return;this.triggerDropDownTimeout&&(clearTimeout(this.triggerDropDownTimeout),this.triggerDropDownTimeout=null);const i=this.dropDownButton.getBoundingClientRect(),n=new bi(t,{useSoftMenu:!1,x:i.left,y:i.bottom,onSoftMenuClosed:()=>{$s(this.dropDownButton,!1)}});for(const e of this.tabs)e.shown||(0===this.numberOfTabsShown()&&this.tabsHistory[0]===e?n.defaultSection().appendCheckboxItem(e.title,this.dropDownMenuItemSelected.bind(this,e),{checked:!0,jslogContext:e.jslogContext}):n.defaultSection().appendItem(e.title,this.dropDownMenuItemSelected.bind(this,e),{jslogContext:e.jslogContext}));n.show().then((()=>$s(this.dropDownButton,n.isHostedMenuOpen())))}dropDownKeydown(e){i.KeyboardUtilities.isEnterOrSpaceKey(e)&&(this.dropDownButton.click(),e.consume(!0))}dropDownMenuItemSelected(e){this.lastSelectedOverflowTab=e,this.selectTab(e.id,!0,!0)}totalWidth(){return this.headerContentsElement.getBoundingClientRect().width}numberOfTabsShown(){let e=0;for(const t of this.tabs)t.shown&&e++;return e}disableOverflowMenu(){this.overflowDisabled=!0}updateTabsDropDown(){const e=this.tabsToShowIndexes(this.tabs,this.tabsHistory,this.totalWidth(),this.measuredDropDownButtonWidth||0);if(this.lastSelectedOverflowTab&&this.numberOfTabsShown()!==e.length)return delete this.lastSelectedOverflowTab,void this.updateTabsDropDown();for(let t=0;t<this.tabs.length;++t)this.tabs[t].shown&&-1===e.indexOf(t)&&this.hideTabElement(this.tabs[t]);for(let t=0;t<e.length;++t){const i=this.tabs[e[t]];i.shown||this.showTabElement(t,i)}this.overflowDisabled||this.maybeShowDropDown(e.length!==this.tabs.length)}maybeShowDropDown(e){e&&!this.dropDownButton.parentElement?this.headerContentsElement.appendChild(this.dropDownButton):!e&&this.dropDownButton.parentElement&&this.headerContentsElement.removeChild(this.dropDownButton)}measureDropDownButton(){this.overflowDisabled||this.measuredDropDownButtonWidth||(this.dropDownButton.classList.add("measuring"),this.headerContentsElement.appendChild(this.dropDownButton),this.measuredDropDownButtonWidth=this.dropDownButton.getBoundingClientRect().width,this.headerContentsElement.removeChild(this.dropDownButton),this.dropDownButton.classList.remove("measuring"))}updateWidths(){const e=this.measureWidths(),t=this.shrinkableTabs?this.calculateMaxWidth(e.slice(),this.totalWidth()):Number.MAX_VALUE;let i=0;for(const n of this.tabs)n.setWidth(this.verticalTabLayout?-1:Math.min(t,e[i++]))}measureWidths(){this.tabsElement.style.setProperty("width","2000px");const e=new Map;for(const t of this.tabs){if("number"==typeof t.measuredWidth)continue;const i=t.createTabElement(!0);e.set(i,t),this.tabsElement.appendChild(i)}for(const[t,i]of e){const e=t.getBoundingClientRect().width;i.measuredWidth=Math.ceil(e)}for(const t of e.keys())t.remove();const t=[];for(const e of this.tabs)t.push(e.measuredWidth||0);return this.tabsElement.style.removeProperty("width"),t}calculateMaxWidth(e,t){if(!e.length)return 0;e.sort((function(e,t){return e-t}));let i=0;for(let t=0;t<e.length;++t)i+=e[t];if(t>=i)return e[e.length-1];let n=0;for(let s=e.length-1;s>0;--s){const o=e[s]-e[s-1];if(n+=(e.length-s)*o,t+n>=i)return e[s-1]+(t+n-i)/(e.length-s)}return t/e.length}tabsToShowIndexes(e,t,i,n){const s=[];let o=0;const r=e.length,a=e.slice(0);void 0!==this.currentTab&&a.unshift(a.splice(a.indexOf(this.currentTab),1)[0]),void 0!==this.lastSelectedOverflowTab&&a.unshift(a.splice(a.indexOf(this.lastSelectedOverflowTab),1)[0]);for(let l=0;l<r;++l){const d=this.automaticReorder?t[l]:a[l];o+=d.width();let h=o;if(l!==r-1&&(h+=n),!this.verticalTabLayout&&h>i)break;s.push(e.indexOf(d))}return s.sort((function(e,t){return e-t})),s}hideCurrentTab(){this.currentTab&&(this.hideTab(this.currentTab),delete this.currentTab)}showTab(e){e.tabElement.tabIndex=0,e.tabElement.classList.add("selected"),Zs(e.tabElement,!0),e.view.show(this.element),this.updateTabSlider()}updateTabSlider(){if(!this.sliderEnabled)return;if(!this.currentTab)return void(this.tabSlider.style.width="0");let e=0;for(let t=0;t<this.tabs.length&&this.currentTab!==this.tabs[t];t++)this.tabs[t].shown&&(e+=this.tabs[t].measuredWidth||0);const t=this.currentTab.shown?this.currentTab.measuredWidth:this.dropDownButton.offsetWidth,i=window.devicePixelRatio>=1.5?" scaleY(0.75)":"";this.tabSlider.style.transform="translateX("+e+"px)"+i,this.tabSlider.style.width=t+"px",this.tabSlider.parentElement!==this.headerContentsElement&&this.headerContentsElement.appendChild(this.tabSlider)}hideTab(e){e.tabElement.removeAttribute("tabIndex"),e.tabElement.classList.remove("selected"),e.tabElement.tabIndex=-1,e.tabElement.setAttribute("aria-selected","false"),e.view.detach()}elementsToRestoreScrollPositionsFor(){return[this.contentElementInternal]}insertBefore(e,t){this.tabsElement.insertBefore(e.tabElement,this.tabsElement.childNodes[t]);const i=this.tabs.indexOf(e);this.tabs.splice(i,1),i<t&&--t,this.tabs.splice(t,0,e);const n={prevTabId:void 0,tabId:e.id,view:e.view,isUserGesture:void 0};this.dispatchEventToListeners(yt.TabOrderChanged,n)}leftToolbar(){return this.leftToolbarInternal||(this.leftToolbarInternal=document.createElement("devtools-toolbar"),this.leftToolbarInternal.classList.add("tabbed-pane-left-toolbar"),this.headerElementInternal.insertBefore(this.leftToolbarInternal,this.headerElementInternal.firstChild)),this.leftToolbarInternal}rightToolbar(){return this.rightToolbarInternal||(this.rightToolbarInternal=document.createElement("devtools-toolbar"),this.rightToolbarInternal.classList.add("tabbed-pane-right-toolbar"),this.headerElementInternal.appendChild(this.rightToolbarInternal)),this.rightToolbarInternal}setAllowTabReorder(e,t){this.allowTabReorder=e,this.automaticReorder=t}keyDown(e){if(!this.currentTab)return;let t=null;switch(e.key){case"ArrowUp":case"ArrowLeft":t=this.currentTab.tabElement.previousElementSibling,t||this.dropDownButton.parentElement||(t=this.currentTab.tabElement.parentElement?this.currentTab.tabElement.parentElement.lastElementChild:null);break;case"ArrowDown":case"ArrowRight":t=this.currentTab.tabElement.nextElementSibling,t||this.dropDownButton.parentElement||(t=this.currentTab.tabElement.parentElement?this.currentTab.tabElement.parentElement.firstElementChild:null);break;case"Enter":case" ":return void this.currentTab.view.focus();default:return}if(!t)return void this.dropDownButton.click();const i=this.tabs.find((e=>e.tabElement===t));i&&this.selectTab(i.id,!0),t.focus()}}var yt;!function(e){e.TabInvoked="TabInvoked",e.TabSelected="TabSelected",e.TabClosed="TabClosed",e.TabOrderChanged="TabOrderChanged"}(yt||(yt={}));class Et{closeable;previewFeature=!1;tabbedPane;idInternal;titleInternal;tooltipInternal;viewInternal;shown;measuredWidth;tabElementInternal;icon=null;suffixElement=null;widthInternal;delegate;titleElement;dragStartX;jslogContextInternal;constructor(e,t,i,n,s,o,r,a){this.closeable=n,this.previewFeature=s,this.tabbedPane=e,this.idInternal=t,this.titleInternal=i,this.tooltipInternal=r,this.viewInternal=o,this.shown=!1,this.jslogContextInternal=a}get id(){return this.idInternal}get title(){return this.titleInternal}set title(e){if(e!==this.titleInternal){if(this.titleInternal=e,this.titleElement){this.titleElement.textContent=e;const t=this.tabElementInternal?.querySelector(".close-button");t?.setAttribute("title",wt(vt.closeS,{PH1:e})),t?.setAttribute("aria-label",wt(vt.closeS,{PH1:e}))}delete this.measuredWidth}}get jslogContext(){return this.jslogContextInternal??("console-view"===this.idInternal?"console":this.idInternal)}isCloseable(){return this.closeable}setIcon(e){this.icon=e,this.tabElementInternal&&this.titleElement&&this.createIconElement(this.tabElementInternal,this.titleElement,!1),delete this.measuredWidth}setSuffixElement(e){this.suffixElement=e,this.tabElementInternal&&this.titleElement&&this.createSuffixElement(this.tabElementInternal,this.titleElement,!1),delete this.measuredWidth}toggleClass(e,t){const i=this.tabElement;return i.classList.contains(e)!==t&&(i.classList.toggle(e,t),delete this.measuredWidth,!0)}get view(){return this.viewInternal}set view(e){this.viewInternal=e}get tooltip(){return this.tooltipInternal}set tooltip(e){this.tooltipInternal=e,this.titleElement&&gt.install(this.titleElement,e||"")}get tabElement(){return this.tabElementInternal||(this.tabElementInternal=this.createTabElement(!1)),this.tabElementInternal}width(){return this.widthInternal||0}setWidth(e){this.tabElement.style.width=-1===e?"":e+"px",this.widthInternal=e}setDelegate(e){this.delegate=e}createIconElement(e,t,i){const n=It.get(e);if(n&&(n.remove(),It.delete(e)),!this.icon)return;const s=document.createElement("span");s.classList.add("tabbed-pane-header-tab-icon");const o=i?this.createMeasureClone(this.icon):this.icon;s.appendChild(o),t.insertAdjacentElement("beforebegin",s),It.set(e,s)}createSuffixElement(e,t,i){const n=St.get(e);if(n&&(n.remove(),St.delete(e)),!this.suffixElement)return;const s=document.createElement("span");s.classList.add("tabbed-pane-header-tab-suffix-element");const o=i?this.suffixElement.cloneNode():this.suffixElement;s.appendChild(o),t.insertAdjacentElement("afterend",s),St.set(e,s)}createMeasureClone(e){const t=document.createElement("div");return t.style.width=e.style.width,t.style.height=e.style.height,t}createTabElement(e){const t=document.createElement("div");t.classList.add("tabbed-pane-header-tab"),t.id="tab-"+this.idInternal,ks(t),Zs(t,!1),to(t,this.title);const i=t.createChild("span","tabbed-pane-header-tab-title");if(i.textContent=this.title,gt.install(i,this.tooltip||""),this.createIconElement(t,i,e),this.createSuffixElement(t,i,e),e||(this.titleElement=i),this.previewFeature){const e=this.createPreviewIcon();t.appendChild(e),t.classList.add("preview")}if(this.closeable){const e=this.createCloseIconButton();t.appendChild(e),t.classList.add("closeable")}return e?t.classList.add("measuring"):(t.addEventListener("click",this.tabClicked.bind(this),!1),t.addEventListener("auxclick",this.tabClicked.bind(this),!1),t.addEventListener("mousedown",this.tabMouseDown.bind(this),!1),t.addEventListener("mouseup",this.tabMouseUp.bind(this),!1),t.addEventListener("contextmenu",this.tabContextMenu.bind(this),!1),this.tabbedPane.allowTabReorder&&gn(t,this.startTabDragging.bind(this),this.tabDragging.bind(this),this.endTabDragging.bind(this),null,null,200)),t}createCloseIconButton(){const e=new o.Button.Button;return e.data={variant:"icon",size:"MICRO",iconName:"cross",title:wt(vt.closeS,{PH1:this.title})},e.classList.add("close-button","tabbed-pane-close-button"),e.setAttribute("jslog",`${s.close().track({click:!0})}`),e.setAttribute("aria-label",wt(vt.closeS,{PH1:this.title})),e}createPreviewIcon(){const e=document.createElement("div");e.classList.add("preview-icon");const t=new r.Icon.Icon;return t.data={iconName:"experiment",color:"var(--override-tabbed-pane-preview-icon-color)",height:"14px",width:"14px"},e.appendChild(t),e.setAttribute("title",wt(vt.previewFeature)),e.setAttribute("aria-label",wt(vt.previewFeature)),e}isCloseIconClicked(e){return e?.classList.contains("tabbed-pane-close-button")||e?.parentElement?.classList.contains("tabbed-pane-close-button")||!1}tabClicked(e){const t=e,i=1===t.button;this.closeable&&(i||this.isCloseIconClicked(t.target))?(this.closeTabs([this.id]),t.consume(!0)):this.tabbedPane.focus()}tabMouseDown(e){const t=e;this.isCloseIconClicked(t.target)||0!==t.button||this.tabbedPane.selectTab(this.id,!0)}tabMouseUp(e){const t=e;1===t.button&&t.consume(!0)}closeTabs(e){this.delegate?this.delegate.closeTabs(this.tabbedPane,e):this.tabbedPane.closeTabs(e,!0)}tabContextMenu(e){const t=new bi(e);this.closeable&&(t.defaultSection().appendItem(wt(vt.close),function(){this.closeTabs([this.id])}.bind(this),{jslogContext:"close"}),t.defaultSection().appendItem(wt(vt.closeOthers),function(){this.closeTabs(this.tabbedPane.otherTabs(this.id))}.bind(this),{jslogContext:"close-others"}),t.defaultSection().appendItem(wt(vt.closeTabsToTheRight),function(){this.closeTabs(this.tabbedPane.tabsToTheRight(this.id))}.bind(this),{jslogContext:"close-tabs-to-the-right"}),t.defaultSection().appendItem(wt(vt.closeAll),function(){this.closeTabs(this.tabbedPane.tabIds())}.bind(this),{jslogContext:"close-all"})),this.delegate&&this.delegate.onContextMenu(this.id,t);const i=this.tabbedPane.getTabIndex(this.id);i>0&&t.defaultSection().appendItem(wt(vt.moveTabLeft),function(e){this.tabbedPane.moveTabBackward(this.id,e)}.bind(this,i),{jslogContext:"move-tab-backward"}),i<this.tabbedPane.tabsElement.childNodes.length-1&&t.defaultSection().appendItem(wt(vt.moveTabRight),function(e){this.tabbedPane.moveTabForward(this.id,e)}.bind(this,i),{jslogContext:"move-tab-forward"}),t.show()}startTabDragging(e){const t=e;return!this.isCloseIconClicked(t.target)&&(this.dragStartX=t.pageX,this.tabElementInternal&&this.tabElementInternal.classList.add("dragging"),this.tabbedPane.tabSlider.remove(),!0)}tabDragging(e){const t=e,i=this.tabbedPane.tabsElement.childNodes;for(let e=0;e<i.length;++e){let n=i[e];if(!this.tabElementInternal||n===this.tabElementInternal)continue;if(!(n.offsetLeft+n.clientWidth>this.tabElementInternal.offsetLeft&&this.tabElementInternal.offsetLeft+this.tabElementInternal.clientWidth>n.offsetLeft))continue;const s=this.dragStartX;if(Math.abs(t.pageX-s)<n.clientWidth/2+5)break;t.pageX-s>0&&(n=n.nextSibling,++e);const o=this.tabElementInternal.offsetLeft;this.tabbedPane.insertBefore(this,e),this.dragStartX=s+this.tabElementInternal.offsetLeft-o;break}const n=this.dragStartX,s=this.tabElementInternal;!s.previousSibling&&t.pageX-n<0||!s.nextSibling&&t.pageX-n>0?s.style.setProperty("left","0px"):s.style.setProperty("left",t.pageX-n+"px")}endTabDragging(e){const t=this.tabElementInternal;t.classList.remove("dragging"),t.style.removeProperty("left"),delete this.dragStartX,this.tabbedPane.updateTabSlider()}}const It=new WeakMap,St=new WeakMap;var Ct=Object.freeze({__proto__:null,get Events(){return yt},TabbedPane:xt,TabbedPaneTab:Et}),Tt={cssText:`.expandable-view-title{display:flex;align-items:center;background-color:var(--sys-color-surface2);height:22px;padding:0 5px;white-space:nowrap;overflow:hidden;position:relative;border-bottom:1px solid transparent}.expandable-view-title.expanded,\n.expandable-view-title:last-child{border-bottom:1px solid var(--sys-color-divider)}.expandable-view-title devtools-toolbar{margin-top:-3px}.expandable-view-title > devtools-toolbar{position:absolute;right:0;top:0}.expandable-view-title:not(.expanded) devtools-toolbar{display:none}.title-expand-icon{margin-right:2px;margin-bottom:-2px}.expandable-view-title:focus-visible{background-color:var(--sys-color-state-focus-highlight)}@media (forced-colors: active){.expandable-view-title:focus-visible{forced-color-adjust:none;color:HighlightText;background-color:Highlight;box-shadow:0 0 0 2px Highlight inset}.expandable-view-title:focus-visible .title-expand-icon{color:HighlightText}}\n/*# sourceURL=${import.meta.resolve("./viewContainers.css")} */\n`};const kt={elements:"Elements",drawer:"Drawer",drawer_sidebar:"Drawer sidebar",panel:"Panel",network:"Network",settings:"Settings",sources:"Sources"},Mt=t.i18n.registerUIStrings("ui/legacy/ViewRegistration.ts",kt),Lt=t.i18n.getLocalizedString.bind(void 0,Mt),Pt=[],Dt=new Set;function At(){return Pt.filter((e=>n.Runtime.Runtime.isDescriptorEnabled({experiment:e.experiment(),condition:e.condition()})))}const zt=[],Rt=new Set;function Bt(){return zt}const Ot={sPanel:"{PH1} panel"},Ft=t.i18n.registerUIStrings("ui/legacy/ViewManager.ts",Ot),Wt=t.i18n.getLocalizedString.bind(void 0,Ft),Ht={security:!0,freestyler:!0};class Nt{viewRegistration;widgetPromise;constructor(e){this.viewRegistration=e,this.widgetPromise=null}title(){return this.viewRegistration.title()}commandPrompt(){return this.viewRegistration.commandPrompt()}isCloseable(){return"closeable"===this.viewRegistration.persistence}isPreviewFeature(){return Boolean(this.viewRegistration.isPreviewFeature)}iconName(){return this.viewRegistration.iconName}isTransient(){return"transient"===this.viewRegistration.persistence}viewId(){return this.viewRegistration.id}location(){return this.viewRegistration.location}order(){return this.viewRegistration.order}settings(){return this.viewRegistration.settings}tags(){if(this.viewRegistration.tags)return this.viewRegistration.tags.map((e=>e())).join("\0")}persistence(){return this.viewRegistration.persistence}async toolbarItems(){if(!this.viewRegistration.hasToolbar)return[];return(await this.widget()).toolbarItems()}widget(){return null===this.widgetPromise&&(this.widgetPromise=this.viewRegistration.loadView()),this.widgetPromise}async disposeView(){if(null===this.widgetPromise)return;const e=await this.widgetPromise;await e.ownerViewDisposed()}experiment(){return this.viewRegistration.experiment}condition(){return this.viewRegistration.condition}}let jt;class Vt{views;locationNameByViewId;locationOverrideSetting;constructor(){this.views=new Map,this.locationNameByViewId=new Map,this.locationOverrideSetting=e.Settings.Settings.instance().createSetting("views-location-override",{});const t=this.locationOverrideSetting.get(),n=new Map;for(const e of At()){const t=e.location()||"none",i=n.get(t)||[];i.push(e),n.set(t,i)}let s=[];for(const e of n.values())e.sort(((e,t)=>{const i=e.order(),n=t.order();return void 0!==i&&void 0!==n?i-n:0})),s=s.concat(e);for(const e of s){const n=e.viewId(),s=e.location();if(this.views.has(n))throw new Error(`Duplicate view id '${n}'`);if(!i.StringUtilities.isExtendedKebabCase(n))throw new Error(`Invalid view ID '${n}'`);this.views.set(n,e);const o=t[n]||s;this.locationNameByViewId.set(n,o)}}static instance(e={forceNew:null}){const{forceNew:t}=e;return jt&&!t||(jt=new Vt),jt}static removeInstance(){jt=void 0}static createToolbar(e){if(!e.length)return null;const t=document.createElement("devtools-toolbar");for(const i of e)t.appendToolbarItem(i);return t}locationNameForViewId(e){const t=this.locationNameByViewId.get(e);if(!t)throw new Error(`No location name for view with id ${e}`);return t}moveView(e,t,i){const{shouldSelectTab:n,overrideSaving:s}=i||{shouldSelectTab:!0,overrideSaving:!1};if(!e||!t)return;const o=this.view(e);if(o){if(!s){this.locationNameByViewId.set(e,t);const i=this.locationOverrideSetting.get();i[e]=t,this.locationOverrideSetting.set(i)}this.resolveLocation(t).then((t=>{if(!t)throw new Error("Move view: Could not resolve location for view: "+e);return t.reveal(),t.showView(o,void 0,!0,!1,n)}))}}revealView(e){const t=Xt.get(e);return t?(t.reveal(),t.showView(e)):Promise.resolve()}showViewInLocation(e,t,i=!0){this.moveView(e,t,{shouldSelectTab:i,overrideSaving:!0})}view(e){const t=this.views.get(e);if(!t)throw new Error(`No view with id ${e} found!`);return t}materializedWidget(e){const t=this.view(e);return t&&Ut.get(t)||null}async showView(e,t,i){const n=this.views.get(e);if(!n)return void console.error("Could not find view for id: '"+e+"' "+(new Error).stack);const s=Xt.get(n)??await this.resolveLocation(this.locationNameByViewId.get(e));if(!s)throw new Error("Could not resolve location for view: "+e);s.reveal(),await s.showView(n,void 0,t,i)}async resolveLocation(e){if(!e)return null;const t=Bt().filter((t=>t.name===e));if(t.length>1)throw new Error("Duplicate resolver for location: "+e);if(t.length){return(await t[0].loadResolver()).resolveLocation(e)}throw new Error("Unresolved location: "+e)}createTabbedLocation(e,t,i,n,s){return new Gt(this,e,t,i,n,s)}createStackLocation(e,t,i){return new Yt(this,e,t,i)}hasViewsForLocation(e){return Boolean(this.viewsForLocation(e).length)}viewsForLocation(e){const t=[];for(const[i,n]of this.views.entries())this.locationNameByViewId.get(i)===e&&t.push(n);return t}}const Ut=new WeakMap;class _t extends it{view;materializePromise;constructor(e){super(),this.element.classList.add("flex-auto","view-container","overflow-auto"),this.view=e,this.element.tabIndex=-1,Ms(this.element),to(this.element,Wt(Ot.sPanel,{PH1:e.title()})),this.setDefaultFocusedElement(this.element)}materialize(){if(this.materializePromise)return this.materializePromise;const e=[];return e.push(this.view.toolbarItems().then((e=>{const t=Vt.createToolbar(e);t&&this.element.insertBefore(t,this.element.firstChild)}))),e.push(this.view.widget().then((e=>{const t=this.element.hasFocus();this.setDefaultFocusedElement(null),Ut.set(this.view,e),e.show(this.element),t&&e.focus()}))),this.materializePromise=Promise.all(e).then((()=>{})),this.materializePromise}wasShown(){this.materialize().then((()=>{const e=Ut.get(this.view);e&&(e.show(this.element),this.wasShownForTest())}))}wasShownForTest(){}}class Kt extends it{titleElement;titleExpandIcon;view;widget;materializePromise;constructor(e){super(!0),this.element.classList.add("flex-none"),this.registerRequiredCSS(Tt),this.titleElement=document.createElement("div"),this.titleElement.classList.add("expandable-view-title"),this.titleElement.setAttribute("jslog",`${s.sectionHeader().context(e.viewId()).track({click:!0,keydown:"Enter|Space|ArrowLeft|ArrowRight"})}`),Ps(this.titleElement),this.titleExpandIcon=r.Icon.create("triangle-right","title-expand-icon"),this.titleElement.appendChild(this.titleExpandIcon);const t=e.title();jn(this.titleElement,t),to(this.titleElement,t),$s(this.titleElement,!1),this.titleElement.tabIndex=0,self.onInvokeElement(this.titleElement,this.toggleExpanded.bind(this)),this.titleElement.addEventListener("keydown",this.onTitleKeyDown.bind(this),!1),this.contentElement.insertBefore(this.titleElement,this.contentElement.firstChild),Ks(this.titleElement,this.contentElement.createChild("slot")),this.view=e,$t.set(e,this)}wasShown(){super.wasShown(),this.widget&&this.materializePromise&&this.materializePromise.then((()=>{this.titleElement.classList.contains("expanded")&&this.widget&&this.widget.show(this.element)}))}materialize(){if(this.materializePromise)return this.materializePromise;const e=[];return e.push(this.view.toolbarItems().then((e=>{const t=Vt.createToolbar(e);t&&this.titleElement.appendChild(t)}))),e.push(this.view.widget().then((e=>{this.widget=e,Ut.set(this.view,e),e.show(this.element)}))),this.materializePromise=Promise.all(e).then((()=>{})),this.materializePromise}expand(){return this.titleElement.classList.contains("expanded")?this.materialize():(this.titleElement.classList.add("expanded"),$s(this.titleElement,!0),this.titleExpandIcon.name="triangle-down",this.materialize().then((()=>{this.widget&&this.widget.show(this.element)})))}collapse(){this.titleElement.classList.contains("expanded")&&(this.titleElement.classList.remove("expanded"),$s(this.titleElement,!1),this.titleExpandIcon.name="triangle-right",this.materialize().then((()=>{this.widget&&this.widget.detach()})))}toggleExpanded(e){"keydown"===e.type&&e.target!==this.titleElement||(this.titleElement.classList.contains("expanded")?this.collapse():this.expand())}onTitleKeyDown(e){if(e.target!==this.titleElement)return;const t=e;"ArrowLeft"===t.key?this.collapse():"ArrowRight"===t.key&&(this.titleElement.classList.contains("expanded")?this.widget&&this.widget.focus():this.expand())}}const $t=new WeakMap;class qt{manager;revealCallback;widgetInternal;constructor(e,t,i){this.manager=e,this.revealCallback=i,this.widgetInternal=t}widget(){return this.widgetInternal}reveal(){this.revealCallback&&this.revealCallback()}showView(e,t,i,n,s){throw new Error("not implemented")}removeView(e){throw new Error("not implemented")}}const Xt=new WeakMap;class Gt extends qt{tabbedPaneInternal;allowReorder;closeableTabSetting;tabOrderSetting;lastSelectedTabSetting;defaultTab;views=new Map;constructor(t,i,n,s,o,r){const a=new xt;o&&a.setAllowTabReorder(!0),super(t,a,i),this.tabbedPaneInternal=a,this.allowReorder=o,this.tabbedPaneInternal.addEventListener(yt.TabSelected,this.tabSelected,this),this.tabbedPaneInternal.addEventListener(yt.TabClosed,this.tabClosed,this),this.closeableTabSetting=e.Settings.Settings.instance().createSetting("closeable-tabs",{}),this.setOrUpdateCloseableTabsSetting(),this.tabOrderSetting=e.Settings.Settings.instance().createSetting(n+"-tab-order",{}),this.tabbedPaneInternal.addEventListener(yt.TabOrderChanged,this.persistTabOrder,this),s&&(this.lastSelectedTabSetting=e.Settings.Settings.instance().createSetting(n+"-selected-tab","")),this.defaultTab=r,n&&this.appendApplicableItems(n)}setOrUpdateCloseableTabsSetting(){const e={...Ht,...this.closeableTabSetting.get()};this.closeableTabSetting.set(e)}widget(){return this.tabbedPaneInternal}tabbedPane(){return this.tabbedPaneInternal}enableMoreTabsButton(){const e=new Zi(this.appendTabsToMenu.bind(this),!0,void 0,"more-tabs","dots-vertical");return this.tabbedPaneInternal.leftToolbar().appendToolbarItem(e),this.tabbedPaneInternal.disableOverflowMenu(),e}appendApplicableItems(e){const t=this.manager.viewsForLocation(e);if(this.allowReorder){let e=0;const i=this.tabOrderSetting.get(),n=new Map;for(const s of t)n.set(s.viewId(),i[s.viewId()]||++e*Gt.orderStep);t.sort(((e,t)=>n.get(e.viewId())-n.get(t.viewId())))}for(const e of t){const t=e.viewId();this.views.set(t,e),Xt.set(e,this),e.isTransient()||(e.isCloseable()?this.closeableTabSetting.get()[t]&&this.appendTab(e):this.appendTab(e))}if(this.defaultTab)if(this.tabbedPaneInternal.hasTab(this.defaultTab))this.tabbedPaneInternal.selectTab(this.defaultTab);else{const e=Array.from(this.views.values()).find((e=>e.viewId()===this.defaultTab));e&&this.showView(e)}else this.lastSelectedTabSetting&&this.tabbedPaneInternal.hasTab(this.lastSelectedTabSetting.get())&&this.tabbedPaneInternal.selectTab(this.lastSelectedTabSetting.get())}appendTabsToMenu(e){const t=Array.from(this.views.values());t.sort(((e,t)=>e.title().localeCompare(t.title())));for(const i of t){const t=i.title();if("issues-pane"===i.viewId()){e.defaultSection().appendItem(t,(()=>{a.userMetrics.issuesPanelOpenedFrom(3),this.showView(i,void 0,!0)}),{jslogContext:"issues-pane"});continue}const n=i.isPreviewFeature();e.defaultSection().appendItem(t,this.showView.bind(this,i,void 0,!0),{isPreviewFeature:n,jslogContext:i.viewId()})}}appendTab(e,t){this.tabbedPaneInternal.appendTab(e.viewId(),e.title(),new _t(e),void 0,!1,e.isCloseable()||e.isTransient(),e.isPreviewFeature(),t);const i=e.iconName();if(i){const t=r.Icon.create(i);this.tabbedPaneInternal.setTabIcon(e.viewId(),t)}}appendView(e,t){if(this.tabbedPaneInternal.hasTab(e.viewId()))return;const i=Xt.get(e);let n;i&&i!==this&&i.removeView(e),Xt.set(e,this),this.manager.views.set(e.viewId(),e),this.views.set(e.viewId(),e);const s=this.tabbedPaneInternal.tabIds();if(this.allowReorder){const t=this.tabOrderSetting.get(),i=t[e.viewId()];for(let e=0;i&&e<s.length;++e)if(t[s[e]]&&t[s[e]]>i){n=e;break}}else if(t)for(let e=0;e<s.length;++e)if(s[e]===t.viewId()){n=e;break}if(this.appendTab(e,n),e.isCloseable()){const t=this.closeableTabSetting.get(),i=e.viewId();t[i]||(t[i]=!0,this.closeableTabSetting.set(t))}this.persistTabOrder()}async showView(e,t,i,n,s=!0){this.appendView(e,t),s&&this.tabbedPaneInternal.selectTab(e.viewId(),i),n||this.tabbedPaneInternal.focus();const o=this.tabbedPaneInternal.tabView(e.viewId());await o.materialize()}removeView(e){this.tabbedPaneInternal.hasTab(e.viewId())&&(Xt.delete(e),this.manager.views.delete(e.viewId()),this.tabbedPaneInternal.closeTab(e.viewId()),this.views.delete(e.viewId()))}tabSelected(e){const{tabId:t}=e.data;this.lastSelectedTabSetting&&e.data.isUserGesture&&this.lastSelectedTabSetting.set(t)}tabClosed(e){const{tabId:t}=e.data,i=this.closeableTabSetting.get();i[t]&&(i[t]=!1,this.closeableTabSetting.set(i));const n=this.views.get(t);n&&n.disposeView()}persistTabOrder(){const e=this.tabbedPaneInternal.tabIds(),t={};for(let i=0;i<e.length;i++)t[e[i]]=(i+1)*Gt.orderStep;const i=this.tabOrderSetting.get(),n=Object.keys(i);n.sort(((e,t)=>i[e]-i[t]));let s=0;for(const e of n)e in t?s=t[e]:t[e]=++s;this.tabOrderSetting.set(t)}getCloseableTabSetting(){return this.closeableTabSetting.get()}static orderStep=10}class Yt extends qt{vbox;expandableContainers;constructor(e,t,i,n){const o=new it;o.element.setAttribute("jslog",`${s.pane(n||"sidebar").track({resize:!0})}`),super(e,o,t),this.vbox=o,Ls(o.element),this.expandableContainers=new Map,i&&this.appendApplicableItems(i)}appendView(e,t){const i=Xt.get(e);i&&i!==this&&i.removeView(e);let n=this.expandableContainers.get(e.viewId());if(!n){Xt.set(e,this),this.manager.views.set(e.viewId(),e),n=new Kt(e);let i=null;if(t){const e=$t.get(t);i=e?e.element:null}n.show(this.vbox.contentElement,i),this.expandableContainers.set(e.viewId(),n)}}async showView(e,t){this.appendView(e,t);const i=this.expandableContainers.get(e.viewId());i&&await i.expand()}removeView(e){const t=this.expandableContainers.get(e.viewId());t&&(t.detach(),this.expandableContainers.delete(e.viewId()),Xt.delete(e),this.manager.views.delete(e.viewId()))}appendApplicableItems(e){for(const t of this.manager.viewsForLocation(e))this.appendView(t)}}var Qt=Object.freeze({__proto__:null,ContainerWidget:_t,PreRegisteredView:Nt,ViewManager:Vt,defaultOptionsForTabs:Ht,getLocalizedViewLocationCategory:function(e){switch(e){case"ELEMENTS":return Lt(kt.elements);case"DRAWER":return Lt(kt.drawer);case"DRAWER_SIDEBAR":return Lt(kt.drawer_sidebar);case"PANEL":return Lt(kt.panel);case"NETWORK":return Lt(kt.network);case"SETTINGS":return Lt(kt.settings);case"SOURCES":return Lt(kt.sources);case"":return t.i18n.lockedString("")}},getRegisteredLocationResolvers:Bt,getRegisteredViewExtensions:At,maybeRemoveViewExtension:function(e){const t=Pt.findIndex((t=>t.viewId()===e));return!(t<0||!Dt.delete(e))&&(Pt.splice(t,1),!0)},registerLocationResolver:function(e){const t=e.name;if(Rt.has(t))throw new Error(`Duplicate view location name registration '${t}'`);Rt.add(t),zt.push(e)},registerViewExtension:function(e){const t=e.id;if(Dt.has(t))throw new Error(`Duplicate view id '${t}'`);Dt.add(t),Pt.push(new Nt(e))},resetViewRegistration:function(){Pt.length=0,zt.length=0,Rt.clear(),Dt.clear()}});const Zt={moreTools:"More Tools",closeDrawer:"Close drawer",panels:"Panels",reloadDebuggedTab:"Reload page",reloadDevtools:"Reload DevTools",moveToTop:"Move to top",moveToBottom:"Move to bottom",devToolsLanguageMissmatch:"DevTools is now available in {PH1}",setToBrowserLanguage:"Always match Chrome's language",setToSpecificLanguage:"Switch DevTools to {PH1}",mainToolbar:"Main toolbar",drawer:"Tool drawer",drawerShown:"Drawer shown",drawerHidden:"Drawer hidden",selectOverrideFolder:"Select a folder to store override files in",selectFolder:"Select folder"},Jt=t.i18n.registerUIStrings("ui/legacy/InspectorView.ts",Zt),ei=t.i18n.getLocalizedString.bind(void 0,Jt);let ti=null;class ii extends it{drawerSplitWidget;tabDelegate;drawerTabbedLocation;drawerTabbedPane;infoBarDiv;tabbedLocation;tabbedPane;keyDownBound;currentPanelLocked;focusRestorer;ownerSplitWidget;reloadRequiredInfobar;#d;constructor(){super(),cs.setContainer(this.element),this.setMinimumSize(250,72),this.drawerSplitWidget=new dt(!1,!0,"inspector.drawer-split-view-state",200,200),this.drawerSplitWidget.hideSidebar(),this.drawerSplitWidget.enableShowModeSaving(),this.drawerSplitWidget.show(this.element),this.tabDelegate=new oi,this.drawerTabbedLocation=Vt.instance().createTabbedLocation(this.showDrawer.bind(this,{focus:!1,hasTargetDrawer:!0}),"drawer-view",!0,!0);this.drawerTabbedLocation.enableMoreTabsButton().setTitle(ei(Zt.moreTools)),this.drawerTabbedPane=this.drawerTabbedLocation.tabbedPane(),this.drawerTabbedPane.setMinimumSize(0,27),this.drawerTabbedPane.element.classList.add("drawer-tabbed-pane"),this.drawerTabbedPane.element.setAttribute("jslog",`${s.drawer()}`);const i=new qi(ei(Zt.closeDrawer),"cross");i.element.setAttribute("jslog",`${s.close().track({click:!0})}`),i.addEventListener("Click",this.closeDrawer,this),this.drawerTabbedPane.addEventListener(yt.TabSelected,(e=>this.tabSelected(e.data.tabId,"drawer")),this);const o=this.drawerTabbedPane.selectedTabId;"OnlyMain"!==this.drawerSplitWidget.showMode()&&o&&(a.userMetrics.panelShown(o,!0),a.userMetrics.panelShownInLocation(o,"drawer")),this.drawerTabbedPane.setTabDelegate(this.tabDelegate);const r=this.drawerTabbedPane.element;Os(r),to(r,ei(Zt.drawer)),this.drawerSplitWidget.installResizer(this.drawerTabbedPane.headerElement()),this.drawerSplitWidget.setSidebarWidget(this.drawerTabbedPane),this.drawerTabbedPane.rightToolbar().appendToolbarItem(i),this.drawerTabbedPane.headerElement().setAttribute("jslog",`${s.toolbar("drawer").track({drag:!0,keydown:"ArrowUp|ArrowLeft|ArrowDown|ArrowRight|Enter|Space"})}`),this.tabbedLocation=Vt.instance().createTabbedLocation(a.InspectorFrontendHost.InspectorFrontendHostInstance.bringToFront.bind(a.InspectorFrontendHost.InspectorFrontendHostInstance),"panel",!0,!0,n.Runtime.Runtime.queryParam("panel")),this.tabbedPane=this.tabbedLocation.tabbedPane(),this.tabbedPane.element.classList.add("main-tabbed-pane");const l=n.Runtime.conditions.canDock()?"69px":"41px";this.tabbedPane.leftToolbar().style.minWidth=l,this.tabbedPane.registerRequiredCSS(fe),this.tabbedPane.addEventListener(yt.TabSelected,(e=>this.tabSelected(e.data.tabId,"main")),this);const d=this.tabbedPane.selectedTabId;d&&(a.userMetrics.panelShown(d,!0),a.userMetrics.panelShownInLocation(d,"main")),this.tabbedPane.setAccessibleName(ei(Zt.panels)),this.tabbedPane.setTabDelegate(this.tabDelegate);const h=this.tabbedPane.headerElement();if(Fs(h),to(h,ei(Zt.mainToolbar)),h.setAttribute("jslog",`${s.toolbar("main").track({drag:!0,keydown:"ArrowUp|ArrowLeft|ArrowDown|ArrowRight|Enter|Space"})}`),a.userMetrics.setLaunchPanel(this.tabbedPane.selectedTabId),a.InspectorFrontendHost.isUnderTest()&&this.tabbedPane.setAutoSelectFirstItemOnShow(!1),this.drawerSplitWidget.setMainWidget(this.tabbedPane),this.keyDownBound=this.keyDown.bind(this),a.InspectorFrontendHost.InspectorFrontendHostInstance.events.addEventListener(a.InspectorFrontendHostAPI.Events.ShowPanel,function({data:e}){this.showPanel(e)}.bind(this)),function(){if(ni().get())return!1;const i=e.Settings.Settings.instance().moduleSetting("language").get();if("en-US"!==i)return!1;return!t.DevToolsLocale.localeLanguagesMatch(navigator.language,i)&&t.DevToolsLocale.DevToolsLocale.instance().languageIsSupportedByDevTools(navigator.language)}()){const i=function(){const i=t.DevToolsLocale.DevToolsLocale.instance(),n=i.lookupClosestDevToolsLocale(navigator.language),s=new Intl.Locale(n),o=new Intl.DisplayNames([i.locale],{type:"language"}).of(s.language||"en")||"English",r=e.Settings.Settings.instance().moduleSetting("language");return new ge("info",ei(Zt.devToolsLanguageMissmatch,{PH1:o}),[{text:ei(Zt.setToBrowserLanguage),delegate:()=>{r.set("browserLanguage"),ni().set(!0),si()},dismiss:!0,jslogContext:"set-to-browser-language"},{text:ei(Zt.setToSpecificLanguage,{PH1:o}),delegate:()=>{r.set(n),ni().set(!0),si()},dismiss:!0,jslogContext:"set-to-specific-language"}],ni(),"language-mismatch")}();i.setParentView(this),this.attachInfobar(i)}}static instance(e={forceNew:null}){const{forceNew:t}=e;return ti&&!t||(ti=new ii),ti}static maybeGetInspectorViewInstance(){return ti}static removeInstance(){ti=null}wasShown(){this.element.ownerDocument.addEventListener("keydown",this.keyDownBound,!1)}willHide(){this.element.ownerDocument.removeEventListener("keydown",this.keyDownBound,!1)}resolveLocation(e){return"drawer-view"===e?this.drawerTabbedLocation:"panel"===e?this.tabbedLocation:null}async createToolbars(){await this.tabbedPane.leftToolbar().appendItemsAtLocation("main-toolbar-left"),await this.tabbedPane.rightToolbar().appendItemsAtLocation("main-toolbar-right")}addPanel(e){this.tabbedLocation.appendView(e)}hasPanel(e){return this.tabbedPane.hasTab(e)}async panel(e){const t=Vt.instance().view(e);if(!t)throw new Error(`Expected view for panel '${e}'`);return await t.widget()}onSuspendStateChanged(e){this.currentPanelLocked=e,this.tabbedPane.setCurrentTabLocked(this.currentPanelLocked),this.tabbedPane.leftToolbar().setEnabled(!this.currentPanelLocked),this.tabbedPane.rightToolbar().setEnabled(!this.currentPanelLocked)}canSelectPanel(e){return!this.currentPanelLocked||this.tabbedPane.selectedTabId===e}async showPanel(e){await Vt.instance().showView(e)}setPanelWarnings(e,t){const i=this.getTabbedPaneForTabId(e);if(i){let n=null;if(0!==t.length){const e=1===t.length?t[0]:"· "+t.join("\n· ");n=r.Icon.create("warning-filled","warning"),gt.install(n,e)}i.setTrailingTabIcon(e,n)}}emitDrawerChangeEvent(e){const t=new CustomEvent("drawerchange",{bubbles:!0,cancelable:!0,detail:{isDrawerOpen:e}});document.body.dispatchEvent(t)}getTabbedPaneForTabId(e){return this.tabbedPane.hasTab(e)?this.tabbedPane:this.drawerTabbedPane.hasTab(e)?this.drawerTabbedPane:null}currentPanelDeprecated(){return Vt.instance().materializedWidget(this.tabbedPane.selectedTabId||"")}showDrawer({focus:e,hasTargetDrawer:t}){this.drawerTabbedPane.isShowing()||(this.drawerTabbedPane.setAutoSelectFirstItemOnShow(!t),this.drawerSplitWidget.showBoth(),this.focusRestorer=e?new st(this.drawerTabbedPane):null,this.emitDrawerChangeEvent(!0),co(ei(Zt.drawerShown)))}drawerVisible(){return this.drawerTabbedPane.isShowing()}closeDrawer(){this.drawerTabbedPane.isShowing()&&(this.focusRestorer&&this.focusRestorer.restore(),this.drawerSplitWidget.hideSidebar(!0),this.emitDrawerChangeEvent(!1),co(ei(Zt.drawerHidden)))}setDrawerMinimized(e){this.drawerSplitWidget.setSidebarMinimized(e),this.drawerSplitWidget.setResizable(!e)}isDrawerMinimized(){return this.drawerSplitWidget.isSidebarMinimized()}keyDown(t){const i=t;if(!A.eventHasCtrlEquivalentKey(i)||i.altKey||i.shiftKey)return;if(e.Settings.moduleSetting("shortcut-panel-switch").get()){let e=-1;if(i.keyCode>48&&i.keyCode<58?e=i.keyCode-49:i.keyCode>96&&i.keyCode<106&&i.location===KeyboardEvent.DOM_KEY_LOCATION_NUMPAD&&(e=i.keyCode-97),-1!==e){const i=this.tabbedPane.tabIds()[e];i&&(bs.hasInstance()||this.currentPanelLocked||(this.showPanel(i),s.logKeyDown(null,t,`panel-by-index-${i}`)),t.consume(!0))}}}onResize(){cs.containerMoved(this.element)}topResizerElement(){return this.tabbedPane.headerElement()}toolbarItemResized(){this.tabbedPane.headerResized()}tabSelected(e,t){a.userMetrics.panelShown(e),a.userMetrics.panelShownInLocation(e,t)}setOwnerSplit(e){this.ownerSplitWidget=e}ownerSplit(){return this.ownerSplitWidget||null}minimize(){this.ownerSplitWidget&&this.ownerSplitWidget.setSidebarMinimized(!0)}restore(){this.ownerSplitWidget&&this.ownerSplitWidget.setSidebarMinimized(!1)}displayDebuggedTabReloadRequiredWarning(e){if(!this.reloadRequiredInfobar){const t=new ge("info",e,[{text:ei(Zt.reloadDebuggedTab),delegate:()=>{M.instance().getAction("inspector-main.reload").execute(),this.removeDebuggedTabReloadRequiredWarning()},dismiss:!1,buttonVariant:"primary",jslogContext:"main.debug-reload"}],void 0,"reload-required");t.setParentView(this),this.attachInfobar(t),this.reloadRequiredInfobar=t,t.setCloseCallback((()=>{delete this.reloadRequiredInfobar})),l.TargetManager.TargetManager.instance().addModelListener(l.ResourceTreeModel.ResourceTreeModel,l.ResourceTreeModel.Events.PrimaryPageChanged,this.removeDebuggedTabReloadRequiredWarning,this)}}removeDebuggedTabReloadRequiredWarning(){this.reloadRequiredInfobar&&(this.reloadRequiredInfobar.dispose(),l.TargetManager.TargetManager.instance().removeModelListener(l.ResourceTreeModel.ResourceTreeModel,l.ResourceTreeModel.Events.PrimaryPageChanged,this.removeDebuggedTabReloadRequiredWarning,this))}displayReloadRequiredWarning(e){if(!this.reloadRequiredInfobar){const t=new ge("info",e,[{text:ei(Zt.reloadDevtools),delegate:()=>si(),dismiss:!1,buttonVariant:"primary",jslogContext:"main.debug-reload"}],void 0,"reload-required");t.setParentView(this),this.attachInfobar(t),this.reloadRequiredInfobar=t,t.setCloseCallback((()=>{delete this.reloadRequiredInfobar}))}}displaySelectOverrideFolderInfobar(e){if(!this.#d){const t=new ge("info",ei(Zt.selectOverrideFolder),[{text:ei(Zt.selectFolder),delegate:()=>e(),dismiss:!0,buttonVariant:"tonal",jslogContext:"select-folder"}],void 0,"select-override-folder");t.setParentView(this),this.attachInfobar(t),this.#d=t,t.setCloseCallback((()=>{this.#d=void 0}))}}createInfoBarDiv(){this.infoBarDiv||(this.infoBarDiv=document.createElement("div"),this.infoBarDiv.classList.add("flex-none"),this.contentElement.insertBefore(this.infoBarDiv,this.contentElement.firstChild))}attachInfobar(e){this.createInfoBarDiv(),this.infoBarDiv?.appendChild(e.element)}}function ni(){return e.Settings.Settings.instance().createSetting("disable-locale-info-bar",!1)}function si(){re.instance().canDock()&&"undocked"===re.instance().dockSide()&&a.InspectorFrontendHost.InspectorFrontendHostInstance.setIsDocked(!0,(function(){})),a.InspectorFrontendHost.InspectorFrontendHostInstance.reattach((()=>window.location.reload()))}class oi{closeTabs(e,t){e.closeTabs(t,!0)}moveToDrawer(e){a.userMetrics.actionTaken(a.UserMetrics.Action.TabMovedToDrawer),Vt.instance().moveView(e,"drawer-view")}moveToMainPanel(e){a.userMetrics.actionTaken(a.UserMetrics.Action.TabMovedToMainPanel),Vt.instance().moveView(e,"panel")}onContextMenu(e,t){if("console"===e||"console-view"===e)return;"drawer-view"===Vt.instance().locationNameForViewId(e)?t.defaultSection().appendItem(ei(Zt.moveToTop),this.moveToMainPanel.bind(this,e),{jslogContext:"move-to-top"}):t.defaultSection().appendItem(ei(Zt.moveToBottom),this.moveToDrawer.bind(this,e),{jslogContext:"move-to-bottom"})}}var ri=Object.freeze({__proto__:null,ActionDelegate:class{handleAction(e,t){switch(t){case"main.toggle-drawer":return ii.instance().drawerVisible()?ii.instance().closeDrawer():ii.instance().showDrawer({focus:!0,hasTargetDrawer:!1}),!0;case"main.next-tab":return ii.instance().tabbedPane.selectNextTab(),ii.instance().tabbedPane.focus(),!0;case"main.previous-tab":return ii.instance().tabbedPane.selectPrevTab(),ii.instance().tabbedPane.focus(),!0}return!1}},InspectorView:ii,InspectorViewTabDelegate:oi}),ai={cssText:`.soft-context-menu{overflow-y:auto;min-width:160px!important;padding:var(--sys-size-5) 0;border:1px solid var(--sys-color-neutral-outline);border-radius:var(--sys-shape-corner-small);background-color:var(--app-color-menu-background);box-shadow:var(--sys-elevation-level3)}:host-context(.theme-with-dark-background) .soft-context-menu{border:none}.dockside-title{padding-right:var(--sys-size-14)}.dockside-title + devtools-toolbar{margin-right:-8px}.soft-context-menu-item{display:flex;width:100%;font-size:12px;height:var(--sys-size-11);padding:0 var(--sys-size-8);white-space:nowrap;align-items:center;&.soft-context-menu-item-mouse-over{background-color:var(--sys-color-state-hover-on-subtle)}& devtools-icon{width:var(--sys-size-8);height:var(--sys-size-8);pointer-events:none;&.checkmark{margin-right:var(--sys-size-3);opacity:0%;.soft-context-menu-item[checked] &{opacity:100%}}&[name="experiment"]{width:var(--sys-size-11);height:var(--sys-size-11);padding:0 var(--sys-size-3)}}}.soft-context-menu-disabled{color:var(--sys-color-state-disabled);pointer-events:none}.soft-context-menu-separator{padding:var(--sys-size-4) 0;& > .separator-line{height:var(--sys-size-1);border-bottom:var(--sys-size-1) solid var(--sys-color-divider);pointer-events:none}}.soft-context-menu-item-submenu-arrow{pointer-events:none;text-align:right;align-self:center;margin-left:auto;& > devtools-icon{width:var(--sys-size-8);height:var(--sys-size-8);color:var(--sys-color-on-surface-subtle)}}.soft-context-menu-custom-item{display:inline-flex;justify-content:center;align-items:center;flex:auto}.soft-context-menu-shortcut{color:var(--sys-color-on-surface-subtle);pointer-events:none;flex:1 1 auto;text-align:right;padding-left:var(--sys-size-6);.soft-context-menu-disabled &,\n .soft-context-menu-item-mouse-over &{color:inherit}}@media (forced-colors: active){.soft-context-menu-item{color:canvastext}.soft-context-menu-item.soft-context-menu-item-mouse-over,\n .theme-with-dark-background .soft-context-menu-item.soft-context-menu-item-mouse-over,\n :host-context(.theme-with-dark-background) .soft-context-menu-item.soft-context-menu-item-mouse-over{background-color:Highlight;color:HighlightText;forced-color-adjust:none}.soft-context-menu .soft-context-menu-item devtools-icon,\n .soft-context-menu .soft-context-menu-item .soft-context-menu-shortcut{color:ButtonText}.soft-context-menu .soft-context-menu-item.soft-context-menu-item-mouse-over devtools-icon,\n .soft-context-menu .soft-context-menu-item.soft-context-menu-item-mouse-over .soft-context-menu-shortcut{color:HighlightText}.soft-context-menu:focus-visible{forced-color-adjust:none;background:canvas;border-color:Highlight}.soft-context-menu-separator > .separator-line{border-bottom-color:ButtonText}}\n/*# sourceURL=${import.meta.resolve("./softContextMenu.css")} */\n`};const li={checked:"checked",unchecked:"unchecked",sSS:"{PH1}, {PH2}, {PH3}",sS:"{PH1}, {PH2}"},di=t.i18n.registerUIStrings("ui/legacy/SoftContextMenu.ts",li),hi=t.i18n.getLocalizedString.bind(void 0,di);class ci{items;itemSelectedCallback;parentMenu;highlightedMenuItemElement;detailsForElementMap;document;glassPane;contextMenuElement;focusRestorer;hideOnUserMouseDownUnlessInMenu;activeSubMenuElement;subMenu;onMenuClosed;focusOnTheFirstItem=!0;keepOpen;loggableParent;constructor(e,t,i,n,s,o){this.items=e,this.itemSelectedCallback=t,this.parentMenu=n,this.highlightedMenuItemElement=null,this.detailsForElementMap=new WeakMap,this.onMenuClosed=s,this.keepOpen=i,this.loggableParent=o||null}getItems(){return this.items}show(e,t){if(!this.items.length)return;this.document=e,this.glassPane=new cs,this.glassPane.setPointerEventsBehavior(this.parentMenu?"PierceGlassPane":"BlockedByGlassPane"),this.glassPane.registerRequiredCSS(ai),this.glassPane.setContentAnchorBox(t),this.glassPane.setSizeBehavior("MeasureContent"),this.glassPane.setMarginBehavior("NoMargin"),this.glassPane.setAnchorBehavior(this.parentMenu?"PreferRight":"PreferBottom"),this.contextMenuElement=this.glassPane.contentElement.createChild("div","soft-context-menu"),this.contextMenuElement.setAttribute("jslog",`${s.menu().track({resize:!0}).parent("mapped").track({keydown:"ArrowUp|ArrowDown|ArrowLeft|ArrowRight|Enter|Space|Escape"})}`),this.loggableParent&&s.setMappedParent(this.contextMenuElement,this.loggableParent),this.contextMenuElement.tabIndex=-1,As(this.contextMenuElement),this.contextMenuElement.addEventListener("mouseup",(e=>e.consume()),!1),this.contextMenuElement.addEventListener("keydown",this.menuKeyDown.bind(this),!1);const i=!!this.items.find((e=>"checkbox"===e.type));for(let e=0;e<this.items.length;++e)this.contextMenuElement.appendChild(this.createMenuItem(this.items[e],i));if(this.glassPane.show(e),this.focusRestorer=new Dn(this.contextMenuElement),!this.parentMenu){this.hideOnUserMouseDownUnlessInMenu=e=>{let t=this.subMenu;for(;t;){if(t.contextMenuElement===e.composedPath()[0])return;t=t.subMenu}this.discard(),e.consume(!0)},this.document.body.addEventListener("mousedown",this.hideOnUserMouseDownUnlessInMenu,!1);const e=ii.maybeGetInspectorViewInstance()?.element;if(e){let t=!1;const i=new ResizeObserver((()=>{if(t)return i.disconnect(),void this.discard();t=!0}));i.observe(e)}if(this.contextMenuElement.children&&this.focusOnTheFirstItem){const e=this.contextMenuElement.children[0];this.highlightMenuItem(e,!1)}}}setContextMenuElementLabel(e){this.contextMenuElement&&to(this.contextMenuElement,e)}discard(){this.subMenu&&this.subMenu.discard(),this.focusRestorer&&this.focusRestorer.restore(),this.glassPane&&(this.glassPane.hide(),delete this.glassPane,this.hideOnUserMouseDownUnlessInMenu&&(this.document&&this.document.body.removeEventListener("mousedown",this.hideOnUserMouseDownUnlessInMenu,!1),delete this.hideOnUserMouseDownUnlessInMenu)),this.parentMenu&&(delete this.parentMenu.subMenu,this.parentMenu.activeSubMenuElement&&($s(this.parentMenu.activeSubMenuElement,!1),delete this.parentMenu.activeSubMenuElement)),this.onMenuClosed?.()}createMenuItem(e,t){if("separator"===e.type)return this.createSeparator();if("subMenu"===e.type)return this.createSubMenu(e,t);const i=document.createElement("div");if(i.classList.add("soft-context-menu-item"),i.tabIndex=-1,zs(i),e.checked&&i.setAttribute("checked",""),void 0!==e.id&&i.setAttribute("data-action-id",e.id.toString()),t){const e=r.Icon.create("checkmark","checkmark");i.appendChild(e)}e.tooltip&&gt.install(i,e.tooltip);const n={actionId:void 0,isSeparator:void 0,customElement:void 0,subItems:void 0,subMenuTimer:void 0};if(e.jslogContext&&!e.element?.hasAttribute("jslog")&&("checkbox"===e.type?i.setAttribute("jslog",`${s.toggle().track({click:!0}).context(e.jslogContext)}`):i.setAttribute("jslog",`${s.action().track({click:!0}).context(e.jslogContext)}`)),e.element&&!e.label){if(i.createChild("div","soft-context-menu-custom-item").appendChild(e.element),e.element?.classList.contains("location-menu")){const t=e.element.ariaLabel||"";e.element.ariaLabel="",to(i,t)}return n.customElement=e.element,this.detailsForElementMap.set(i,n),i}e.enabled||i.classList.add("soft-context-menu-disabled"),jn(i,e.label||""),e.element&&i.appendChild(e.element),i.createChild("span","soft-context-menu-shortcut").textContent=e.shortcut||"",i.addEventListener("mousedown",this.menuItemMouseDown.bind(this),!1),i.addEventListener("mouseup",this.menuItemMouseUp.bind(this),!1),i.addEventListener("mouseover",this.menuItemMouseOver.bind(this),!1),i.addEventListener("mouseleave",this.menuItemMouseLeave.bind(this),!1),n.actionId=e.id;let o=e.label||"";if("checkbox"===e.type){const t=e.checked?hi(li.checked):hi(li.unchecked);o=e.shortcut?hi(li.sSS,{PH1:String(e.label),PH2:e.shortcut,PH3:t}):hi(li.sS,{PH1:String(e.label),PH2:t})}else e.shortcut&&(o=hi(li.sS,{PH1:String(e.label),PH2:e.shortcut}));return to(i,o),this.detailsForElementMap.set(i,n),i}createSubMenu(e,t){const i=document.createElement("div");if(i.classList.add("soft-context-menu-item"),i.tabIndex=-1,Bs(i),this.detailsForElementMap.set(i,{subItems:e.subItems,actionId:void 0,isSeparator:void 0,customElement:void 0,subMenuTimer:void 0}),t){const e=r.Icon.create("checkmark","checkmark soft-context-menu-item-checkmark");i.appendChild(e)}jn(i,e.label||""),$s(i,!1);const n=r.Icon.create("keyboard-arrow-right","soft-context-menu-item-submenu-arrow");return i.appendChild(n),i.addEventListener("mousedown",this.menuItemMouseDown.bind(this),!1),i.addEventListener("mouseup",this.menuItemMouseUp.bind(this),!1),i.addEventListener("mouseover",this.menuItemMouseOver.bind(this),!1),i.addEventListener("mouseleave",this.menuItemMouseLeave.bind(this),!1),e.jslogContext&&i.setAttribute("jslog",`${s.item().context(e.jslogContext)}`),i}createSeparator(){const e=document.createElement("div");return e.classList.add("soft-context-menu-separator"),this.detailsForElementMap.set(e,{subItems:void 0,actionId:void 0,isSeparator:!0,customElement:void 0,subMenuTimer:void 0}),e.createChild("div","separator-line"),e}menuItemMouseDown(e){e.consume(!0)}menuItemMouseUp(e){this.triggerAction(e.target,e),s.logClick(e.target,e),e.consume()}root(){let e=this;for(;e.parentMenu;)e=e.parentMenu;return e}setChecked(e,t){e.checked=t;const i=this.contextMenuElement?.querySelector(`[data-action-id="${e.id}"]`);if(!i)return;t?i.setAttribute("checked",""):i.removeAttribute("checked");const n=e.checked?hi(li.checked):hi(li.unchecked);to(i,e.shortcut?hi(li.sSS,{PH1:String(e.label),PH2:e.shortcut,PH3:n}):hi(li.sS,{PH1:String(e.label),PH2:n}))}triggerAction(e,t){const i=this.detailsForElementMap.get(e);if(!i||i.subItems)return this.showSubMenu(e),void t.consume();if(this.keepOpen){t.consume(!0);const e=this.items.find((e=>e.id===i.actionId));void 0!==e?.id&&(this.setChecked(e,!e.checked),this.itemSelectedCallback(e.id))}else this.root().discard(),t.consume(!0),void 0!==i.actionId&&(this.itemSelectedCallback(i.actionId),delete i.actionId)}showSubMenu(e){const t=this.detailsForElementMap.get(e);if(!t)return;if(t.subMenuTimer&&(window.clearTimeout(t.subMenuTimer),delete t.subMenuTimer),this.subMenu||!this.document)return;if(this.activeSubMenuElement=e,$s(e,!0),!t.subItems)return;this.subMenu=new ci(t.subItems,this.itemSelectedCallback,!1,this);const i=e.boxInWindow();i.y-=9,i.x+=3,i.width-=6,i.height+=18,this.subMenu.show(this.document,i)}menuItemMouseOver(e){this.highlightMenuItem(e.target,!0)}menuItemMouseLeave(e){if(!this.subMenu||!e.relatedTarget)return void this.highlightMenuItem(null,!0);e.relatedTarget===this.contextMenuElement&&this.highlightMenuItem(null,!0)}highlightMenuItem(e,t){if(this.highlightedMenuItemElement!==e){if(this.subMenu&&this.subMenu.discard(),this.highlightedMenuItemElement){const e=this.detailsForElementMap.get(this.highlightedMenuItemElement);this.highlightedMenuItemElement.classList.remove("force-white-icons"),this.highlightedMenuItemElement.classList.remove("soft-context-menu-item-mouse-over"),e?.subItems&&e.subMenuTimer&&(window.clearTimeout(e.subMenuTimer),delete e.subMenuTimer)}if(this.highlightedMenuItemElement=e,this.highlightedMenuItemElement){this.highlightedMenuItemElement.classList.add("force-white-icons"),this.highlightedMenuItemElement.classList.add("soft-context-menu-item-mouse-over");const e=this.detailsForElementMap.get(this.highlightedMenuItemElement);e?.customElement&&!e.customElement.classList.contains("location-menu")?e.customElement.focus():this.highlightedMenuItemElement.focus(),t&&e?.subItems&&!e.subMenuTimer&&(e.subMenuTimer=window.setTimeout(this.showSubMenu.bind(this,this.highlightedMenuItemElement),150))}this.contextMenuElement&&no(this.contextMenuElement,e)}}highlightPrevious(){let e=this.highlightedMenuItemElement?this.highlightedMenuItemElement.previousSibling:this.contextMenuElement?this.contextMenuElement.lastChild:null,t=e?this.detailsForElementMap.get(e):void 0;for(;e&&t&&(t.isSeparator||e.classList.contains("soft-context-menu-disabled"));)e=e.previousSibling,t=e?this.detailsForElementMap.get(e):void 0;e&&this.highlightMenuItem(e,!1)}highlightNext(){let e=this.highlightedMenuItemElement?this.highlightedMenuItemElement.nextSibling:this.contextMenuElement?this.contextMenuElement.firstChild:null,t=e?this.detailsForElementMap.get(e):void 0;for(;e&&(t?.isSeparator||e.classList.contains("soft-context-menu-disabled"));)e=e.nextSibling,t=e?this.detailsForElementMap.get(e):void 0;e&&this.highlightMenuItem(e,!1)}menuKeyDown(e){const t=e;function i(){if(!this.highlightedMenuItemElement)return;const e=this.detailsForElementMap.get(this.highlightedMenuItemElement);e&&!e.customElement&&(s.logClick(this.highlightedMenuItemElement,t),this.triggerAction(this.highlightedMenuItemElement,t),e.subItems&&this.subMenu&&this.subMenu.highlightNext(),t.consume(!0))}switch(t.key){case"ArrowUp":this.highlightPrevious(),t.consume(!0);break;case"ArrowDown":this.highlightNext(),t.consume(!0);break;case"ArrowLeft":this.parentMenu&&(this.highlightMenuItem(null,!1),this.discard()),t.consume(!0);break;case"ArrowRight":{if(!this.highlightedMenuItemElement)break;const e=this.detailsForElementMap.get(this.highlightedMenuItemElement);e?.subItems&&(this.showSubMenu(this.highlightedMenuItemElement),this.subMenu&&this.subMenu.highlightNext()),e?.customElement?.classList.contains("location-menu")&&(e.customElement.dispatchEvent(new KeyboardEvent("keydown",{key:"ArrowRight"})),this.highlightMenuItem(null,!0)),t.consume(!0);break}case"Escape":this.discard(),t.consume(!0);break;case"Enter":if("Enter"!==t.key)return;i.call(this);break;case" ":i.call(this);break;default:t.consume(!0)}}markAsMenuItemCheckBox(){if(this.contextMenuElement)for(const e of this.contextMenuElement.children)"soft-context-menu-separator"!==e.className&&Rs(e)}setFocusOnTheFirstItem(e){this.focusOnTheFirstItem=e}}var ui=Object.freeze({__proto__:null,SoftContextMenu:ci});class mi{typeInternal;label;accelerator;previewFeature;disabled;checked;isDevToolsPerformanceMenuItem;contextMenu;idInternal;customElement;shortcut;#h;jslogContext;constructor(e,t,i,n,s,o,r,a,l){this.typeInternal=t,this.label=i,this.previewFeature=Boolean(n),this.accelerator=r,this.disabled=s,this.checked=o,this.isDevToolsPerformanceMenuItem=!1,this.contextMenu=e,this.idInternal=void 0,this.#h=a,"item"!==t&&"checkbox"!==t||(this.idInternal=e?e.nextId():0),this.jslogContext=l}id(){if(void 0===this.idInternal)throw new Error("Tried to access a ContextMenu Item ID but none was set.");return this.idInternal}type(){return this.typeInternal}isPreviewFeature(){return this.previewFeature}isEnabled(){return!this.disabled}setEnabled(e){this.disabled=!e}buildDescriptor(){switch(this.typeInternal){case"item":{const e={type:"item",id:this.idInternal,label:this.label,isExperimentalFeature:this.previewFeature,enabled:!this.disabled,checked:void 0,subItems:void 0,tooltip:this.#h,jslogContext:this.jslogContext};return this.customElement&&(e.element=this.customElement),this.shortcut&&(e.shortcut=this.shortcut),this.accelerator&&(e.accelerator=this.accelerator,this.isDevToolsPerformanceMenuItem&&(e.isDevToolsPerformanceMenuItem=!0)),e}case"separator":return{type:"separator",id:void 0,label:void 0,enabled:void 0,checked:void 0,subItems:void 0};case"checkbox":{const e={type:"checkbox",id:this.idInternal,label:this.label,checked:Boolean(this.checked),enabled:!this.disabled,subItems:void 0,tooltip:this.#h,jslogContext:this.jslogContext};return this.customElement&&(e.element=this.customElement),e}}throw new Error("Invalid item type:"+this.typeInternal)}setAccelerator(e,t){const i=t.reduce(((e,t)=>e+t.value),0);this.accelerator={keyCode:e.code,modifiers:i}}setIsDevToolsPerformanceMenuItem(e){this.isDevToolsPerformanceMenuItem=e}setShortcut(e){this.shortcut=e}}let pi=class{contextMenu;items;constructor(e){this.contextMenu=e,this.items=[]}appendItem(e,t,i){const n=new mi(this.contextMenu,"item",e,i?.isPreviewFeature,i?.disabled,void 0,i?.accelerator,i?.tooltip,i?.jslogContext);return i?.additionalElement&&(n.customElement=i?.additionalElement),this.items.push(n),this.contextMenu&&this.contextMenu.setHandler(n.id(),t),n}appendCustomItem(e,t){const i=new mi(this.contextMenu,"item",void 0,void 0,void 0,void 0,void 0,void 0,t);return i.customElement=e,this.items.push(i),i}appendSeparator(){const e=new mi(this.contextMenu,"separator");return this.items.push(e),e}appendAction(e,t,i){if(i&&!M.instance().hasAction(e))return;const n=M.instance().getAction(e);t||(t=n.title());const s=this.appendItem(t,n.execute.bind(n),{disabled:!n.enabled(),jslogContext:e}),o=G.instance().shortcutTitleForAction(e);o&&s.setShortcut(o)}appendSubMenuItem(e,t,i){const n=new gi(this.contextMenu,e,t,i);return n.init(),this.items.push(n),n}appendCheckboxItem(e,t,i){const n=new mi(this.contextMenu,"checkbox",e,void 0,i?.disabled,i?.checked,void 0,i?.tooltip,i?.jslogContext);return this.items.push(n),this.contextMenu&&this.contextMenu.setHandler(n.id(),t),i?.additionalElement&&(n.customElement=i.additionalElement),n}};class gi extends mi{sections;sectionList;constructor(e,t,i,n){super(e,"subMenu",t,void 0,i,void 0,void 0,void 0,n),this.sections=new Map,this.sectionList=[]}init(){bi.groupWeights.forEach((e=>this.section(e)))}section(e){e||(e="default");let t=e?this.sections.get(e):null;return t||(t=new pi(this.contextMenu),e?(this.sections.set(e,t),this.sectionList.push(t)):this.sectionList.splice(bi.groupWeights.indexOf("default"),0,t)),t}headerSection(){return this.section("header")}newSection(){return this.section("new")}revealSection(){return this.section("reveal")}clipboardSection(){return this.section("clipboard")}editSection(){return this.section("edit")}debugSection(){return this.section("debug")}viewSection(){return this.section("view")}defaultSection(){return this.section("default")}overrideSection(){return this.section("override")}saveSection(){return this.section("save")}annotationSection(){return this.section("annotation")}footerSection(){return this.section("footer")}buildDescriptor(){const e={type:"subMenu",label:this.label,accelerator:this.accelerator,isDevToolsPerformanceMenuItem:this.accelerator?this.isDevToolsPerformanceMenuItem:void 0,isExperimentalFeature:this.previewFeature,enabled:!this.disabled,subItems:[],id:void 0,checked:void 0,jslogContext:this.jslogContext},t=this.sectionList.filter((e=>Boolean(e.items.length)));for(const i of t){for(const t of i.items)e.subItems||(e.subItems=[]),e.subItems.push(t.buildDescriptor());i!==t[t.length-1]&&(e.subItems||(e.subItems=[]),e.subItems.push({type:"separator",id:void 0,subItems:void 0,checked:void 0,enabled:void 0,label:void 0}))}return e}appendItemsAtLocation(e){const t=fi;t.sort(((e,t)=>(e.order||0)-(t.order||0)));for(const i of t){if(i.experiment&&!n.Runtime.experiments.isEnabled(i.experiment))continue;const t=i.location,s=i.actionId;if(!t?.startsWith(e+"/"))continue;const o=t.substr(e.length+1);o&&!o.includes("/")&&(s&&this.section(o).appendAction(s))}}static uniqueSectionName=0}class bi extends gi{contextMenu;pendingTargets;event;useSoftMenu;keepOpen;x;y;onSoftMenuClosed;jsLogContext;handlers;idInternal;softMenu;contextMenuLabel;openHostedMenu;eventTarget;loggableParent=null;constructor(e,t={}){super(null);const i=e;this.contextMenu=this,super.init(),this.pendingTargets=[],this.event=i,this.eventTarget=this.event.target,this.useSoftMenu=Boolean(t.useSoftMenu),this.keepOpen=Boolean(t.keepOpen),this.x=void 0===t.x?i.x:t.x,this.y=void 0===t.y?i.y:t.y,this.onSoftMenuClosed=t.onSoftMenuClosed,this.handlers=new Map,this.idInternal=0,this.openHostedMenu=null;let n=ts(e)||e.target;if(n){for(this.appendApplicableItems(n);n instanceof Element&&!n.hasAttribute("jslog");)n=n.parentElementOrShadowHost()??null;n instanceof Element&&(this.loggableParent=n)}}static initialize(){a.InspectorFrontendHost.InspectorFrontendHostInstance.events.addEventListener(a.InspectorFrontendHostAPI.Events.SetUseSoftMenu,(function(e){bi.useSoftMenu=e.data}))}static installHandler(e){e.body.addEventListener("contextmenu",(function(e){new bi(e).show()}),!1)}nextId(){return this.idInternal++}isHostedMenuOpen(){return Boolean(this.openHostedMenu)}getItems(){return this.softMenu?.getItems()||[]}setChecked(e,t){this.softMenu?.setChecked(e,t)}async show(){bi.pendingMenu=this,this.event.consume(!0);const e=await Promise.all(this.pendingTargets.map((async e=>{const t=await async function(e){const t=[];for(const i of vi)if(n.Runtime.Runtime.isDescriptorEnabled({experiment:i.experiment,condition:void 0})&&i.contextTypes)for(const n of i.contextTypes())e instanceof n&&t.push(await i.loadProvider());return t}(e);return{target:e,providers:t}})));if(bi.pendingMenu===this){bi.pendingMenu=null;for(const{target:t,providers:i}of e)for(const e of i)e.appendApplicableItems(this.event,this,t);this.pendingTargets=[],this.innerShow()}}discard(){this.softMenu&&this.softMenu.discard()}registerLoggablesWithin(e,t){for(const i of e)i.jslogContext&&("checkbox"===i.type?s.registerLoggable(i,`${s.toggle().track({click:!0}).context(i.jslogContext)}`,t||e):"item"===i.type?s.registerLoggable(i,`${s.action().track({click:!0}).context(i.jslogContext)}`,t||e):"subMenu"===i.type&&s.registerLoggable(i,`${s.item().context(i.jslogContext)}`,t||e),i.subItems&&this.registerLoggablesWithin(i.subItems,i))}innerShow(){if(!this.eventTarget)return;const e=this.buildMenuDescriptors(),t=this.eventTarget.ownerDocument;if(this.useSoftMenu||bi.useSoftMenu||a.InspectorFrontendHost.InspectorFrontendHostInstance.isHostedMode()){this.softMenu=new ci(e,this.itemSelected.bind(this),this.keepOpen,void 0,this.onSoftMenuClosed,this.loggableParent);const i="mouse"===this.event.pointerType&&this.event.button>=0;this.softMenu.setFocusOnTheFirstItem(!i),this.softMenu.show(t,new AnchorBox(this.x,this.y,0,0)),this.contextMenuLabel&&this.softMenu.setContextMenuElementLabel(this.contextMenuLabel)}else{function n(){a.InspectorFrontendHost.InspectorFrontendHostInstance.events.addEventListener(a.InspectorFrontendHostAPI.Events.ContextMenuCleared,this.menuCleared,this),a.InspectorFrontendHost.InspectorFrontendHostInstance.events.addEventListener(a.InspectorFrontendHostAPI.Events.ContextMenuItemSelected,this.onItemSelected,this)}a.InspectorFrontendHost.InspectorFrontendHostInstance.showContextMenuAtPoint(this.x,this.y,e,t),s.registerLoggable(e,`${s.menu()}`,this.loggableParent),this.registerLoggablesWithin(e),this.openHostedMenu=e,queueMicrotask(n.bind(this))}}setX(e){this.x=e}setY(e){this.y=e}setHandler(e,t){t&&this.handlers.set(e,t)}invokeHandler(e){const t=this.handlers.get(e);t&&t.call(this)}buildMenuDescriptors(){return super.buildDescriptor().subItems}onItemSelected(e){this.itemSelected(e.data)}itemSelected(e){if(this.invokeHandler(e),this.openHostedMenu){const t=(e,i)=>{for(const n of e){if(n.id===i)return n;const e=n.subItems&&t(n.subItems,i);if(e)return e}return null},i=t(this.openHostedMenu,e);i?.jslogContext&&s.logClick(i,new MouseEvent("click"))}this.menuCleared()}menuCleared(){a.InspectorFrontendHost.InspectorFrontendHostInstance.events.removeEventListener(a.InspectorFrontendHostAPI.Events.ContextMenuCleared,this.menuCleared,this),a.InspectorFrontendHost.InspectorFrontendHostInstance.events.removeEventListener(a.InspectorFrontendHostAPI.Events.ContextMenuItemSelected,this.onItemSelected,this),this.openHostedMenu&&s.logResize(this.openHostedMenu,new DOMRect(0,0,0,0)),this.openHostedMenu=null,this.keepOpen||this.onSoftMenuClosed?.()}appendApplicableItems(e){this.pendingTargets.includes(e)||this.pendingTargets.push(e)}markAsMenuItemCheckBox(){this.softMenu&&this.softMenu.markAsMenuItemCheckBox()}static pendingMenu=null;static useSoftMenu=!1;static groupWeights=["header","new","reveal","edit","clipboard","debug","view","default","override","save","annotation","footer"]}const vi=[];const fi=[];var wi=Object.freeze({__proto__:null,ContextMenu:bi,Item:mi,Section:pi,SubMenu:gi,maybeRemoveItem:function(e){const t=fi.findIndex((t=>t.actionId===e.actionId&&t.location===e.location));return!(t<0)&&(fi.splice(t,1),!0)},registerItem:function(e){fi.push(e)},registerProvider:function(e){vi.push(e)}});const xi={srequiresReload:"*Requires reload",oneOrMoreSettingsHaveChanged:"One or more settings have changed which requires a reload to take effect"},yi=t.i18n.registerUIStrings("ui/legacy/SettingsUI.ts",xi),Ei=t.i18n.getLocalizedString.bind(void 0,yi);const Ii=function(e,t,i){const n=e;function s(){n.checked!==t.get()&&(n.checked=t.get())}t.addChangeListener(s),s(),n.addEventListener("change",(function(){t.get()!==n.checked&&t.set(n.checked),t.get()&&i?.enable&&a.userMetrics.actionTaken(i.enable),!t.get()&&i?.disable&&a.userMetrics.actionTaken(i.disable),i?.toggle&&a.userMetrics.actionTaken(i.toggle)}),!1)};var Si,Ci=Object.freeze({__proto__:null,bindCheckbox:Ii,createControlForSetting:function(e,t){const n=e.title();switch(e.type()){case"boolean":{const t=new m.SettingCheckbox.SettingCheckbox;return t.data={setting:e},t.onchange=()=>{e.reloadRequired()&&ii.instance().displayReloadRequiredWarning(Ei(xi.oneOrMoreSettingsHaveChanged))},t}case"enum":return Array.isArray(e.options())?function(e,t,n,o,r){const a=document.createElement("div"),l=a.createChild("p");l.classList.add("settings-select");const d=l.createChild("label"),h=l.createChild("select");d.textContent=e,r&&(a.classList.add("chrome-select-label"),d.createChild("p").textContent=r),h.setAttribute("jslog",`${s.dropDown().track({change:!0}).context(o.name)}`),xs(d,h);for(const e of t)e.text&&"string"==typeof e.value&&h.add(Kn(e.text,e.value,i.StringUtilities.toKebabCase(e.value)));let c=null;n&&(c=a.createChild("p","reload-warning hidden"),c.textContent=Ei(xi.srequiresReload),ys(c));const{deprecation:u}=o;if(u){const e=new m.SettingDeprecationWarning.SettingDeprecationWarning;e.data=u,d.appendChild(e)}return o.addChangeListener(p),p(),h.addEventListener("change",(function(){o.set(t[h.selectedIndex].value),c&&(c.classList.remove("hidden"),ii.instance().displayReloadRequiredWarning(Ei(xi.oneOrMoreSettingsHaveChanged)))}),!1),a;function p(){const e=o.get();for(let i=0;i<t.length;i++)t[i].value===e&&(h.selectedIndex=i);h.disabled=o.disabled()}}(n,e.options(),e.reloadRequired(),e,t):(console.error("Enum setting defined without options"),null);default:return console.error("Invalid setting type: "+e.type()),null}},createCustomSetting:function(e,t){const i=document.createElement("p");i.classList.add("settings-select");const n=i.createChild("label");return n.textContent=e,xs(n,t),i.appendChild(t),i},createSettingCheckbox:function(e,t,i){const n=$n.create(e,void 0,void 0,t.name);return n.checkboxElement.name=e,Ii(n.checkboxElement,t),i&&gt.install(n,i),n}});!function(e){e.NonViewport="UI.ListMode.NonViewport",e.EqualHeightItems="UI.ListMode.EqualHeightItems",e.VariousHeightItems="UI.ListMode.VariousHeightItems"}(Si||(Si={}));class Ti{element;topElement;bottomElement;firstIndex;lastIndex;renderedHeight;topHeight;bottomHeight;model;itemToElement;selectedIndexInternal;selectedItemInternal;delegate;mode;fixedHeight;variableOffsets;constructor(e,t,i){this.element=document.createElement("div"),this.element.style.overflowY="auto",this.topElement=this.element.createChild("div"),this.bottomElement=this.element.createChild("div"),this.firstIndex=0,this.lastIndex=0,this.renderedHeight=0,this.topHeight=0,this.bottomHeight=0,this.model=e,this.model.addEventListener("ItemsReplaced",this.replacedItemsInRange,this),this.itemToElement=new Map,this.selectedIndexInternal=-1,this.selectedItemInternal=null,this.element.tabIndex=-1,this.element.addEventListener("click",this.onClick.bind(this),!1),this.element.addEventListener("keydown",this.onKeyDown.bind(this),!1),Ws(this.element),this.delegate=t,this.mode=i||Si.EqualHeightItems,this.fixedHeight=0,this.variableOffsets=new Int32Array(0),this.clearContents(),this.mode!==Si.NonViewport&&this.element.addEventListener("scroll",(()=>{this.updateViewport(this.element.scrollTop,this.element.offsetHeight)}),!1)}setModel(e){this.itemToElement.clear();const t=this.model.length;this.model.removeEventListener("ItemsReplaced",this.replacedItemsInRange,this),this.model=e,this.model.addEventListener("ItemsReplaced",this.replacedItemsInRange,this),this.invalidateRange(0,t)}replacedItemsInRange(e){const t=e.data,i=t.index,n=i+t.removed.length,s=t.keepSelectedIndex,o=this.selectedItemInternal,r=null!==o&&this.itemToElement.get(o)||null;for(let e=0;e<t.removed.length;e++)this.itemToElement.delete(t.removed[e]);if(this.invalidate(i,n,t.inserted),this.selectedIndexInternal>=n)this.selectedIndexInternal+=t.inserted-(n-i),this.selectedItemInternal=this.model.at(this.selectedIndexInternal);else if(this.selectedIndexInternal>=i){const e=s?i:i+t.inserted;let n=this.findFirstSelectable(e,1,!1);if(-1===n){const e=s?i:i-1;n=this.findFirstSelectable(e,-1,!1)}this.select(n,o,r)}}refreshItem(e){const t=this.model.indexOf(e);-1!==t?this.refreshItemByIndex(t):console.error("Item to refresh is not present")}refreshItemByIndex(e){const t=this.model.at(e);this.itemToElement.delete(t),this.invalidateRange(e,e+1),-1!==this.selectedIndexInternal&&this.select(this.selectedIndexInternal,null,null)}refreshAllItems(){this.itemToElement.clear(),this.invalidateRange(0,this.model.length),-1!==this.selectedIndexInternal&&this.select(this.selectedIndexInternal,null,null)}invalidateRange(e,t){this.invalidate(e,t,t-e)}viewportResized(){if(this.mode===Si.NonViewport)return;const e=this.element.scrollTop,t=this.element.offsetHeight;this.clearViewport(),this.updateViewport(i.NumberUtilities.clamp(e,0,this.totalHeight()-t),t)}invalidateItemHeight(){this.mode===Si.EqualHeightItems?(this.fixedHeight=0,this.model.length&&(this.itemToElement.clear(),this.invalidate(0,this.model.length,this.model.length))):console.error("Only supported in equal height items mode")}itemForNode(e){for(;e&&e.parentNodeOrShadowHost()!==this.element;)e=e.parentNodeOrShadowHost();if(!e)return null;const t=e,i=this.model.findIndex((e=>this.itemToElement.get(e)===t));return-1!==i?this.model.at(i):null}scrollItemIntoView(e,t){const i=this.model.indexOf(e);-1!==i?this.scrollIntoView(i,t):console.error("Attempt to scroll onto missing item")}selectedItem(){return this.selectedItemInternal}selectedIndex(){return this.selectedIndexInternal}selectItem(e,t,i){let n=-1;if(null!==e){if(n=this.model.indexOf(e),-1===n)return void console.error("Attempt to select missing item");if(!this.delegate.isItemSelectable(e))return void console.error("Attempt to select non-selectable item")}-1===n||i||this.scrollIntoView(n,t),this.selectedIndexInternal!==n&&this.select(n)}selectPreviousItem(e,t){if(-1===this.selectedIndexInternal&&!e)return!1;let i=-1===this.selectedIndexInternal?this.model.length-1:this.selectedIndexInternal-1;return i=this.findFirstSelectable(i,-1,Boolean(e)),-1!==i&&(this.scrollIntoView(i,t),this.select(i),!0)}selectNextItem(e,t){if(-1===this.selectedIndexInternal&&!e)return!1;let i=-1===this.selectedIndexInternal?0:this.selectedIndexInternal+1;return i=this.findFirstSelectable(i,1,Boolean(e)),-1!==i&&(this.scrollIntoView(i,t),this.select(i),!0)}selectItemPreviousPage(e){if(this.mode===Si.NonViewport)return!1;let t=-1===this.selectedIndexInternal?this.model.length-1:this.selectedIndexInternal;return t=this.findPageSelectable(t,-1),-1!==t&&(this.scrollIntoView(t,e),this.select(t),!0)}selectItemNextPage(e){if(this.mode===Si.NonViewport)return!1;let t=-1===this.selectedIndexInternal?0:this.selectedIndexInternal;return t=this.findPageSelectable(t,1),-1!==t&&(this.scrollIntoView(t,e),this.select(t),!0)}scrollIntoView(e,t){if(this.mode===Si.NonViewport)return void this.elementAtIndex(e).scrollIntoViewIfNeeded(Boolean(t));const n=this.offsetAtIndex(e),s=this.offsetAtIndex(e+1),o=this.element.offsetHeight;if(t){const e=(n+s)/2-o/2;return void this.updateViewport(i.NumberUtilities.clamp(e,0,this.totalHeight()-o),o)}const r=this.element.scrollTop;n<r?this.updateViewport(n,o):s>r+o&&this.updateViewport(s-o,o)}onClick(e){const t=this.itemForNode(e.target);null!==t&&this.delegate.isItemSelectable(t)&&this.selectItem(t)}onKeyDown(e){const t=e;let i=!1;switch(t.key){case"ArrowUp":i=this.selectPreviousItem(!0,!1);break;case"ArrowDown":i=this.selectNextItem(!0,!1);break;case"PageUp":i=this.selectItemPreviousPage(!1);break;case"PageDown":i=this.selectItemNextPage(!1)}i&&t.consume(!0)}totalHeight(){return this.offsetAtIndex(this.model.length)}indexAtOffset(e){if(this.mode===Si.NonViewport)throw new Error("There should be no offset conversions in non-viewport mode");return!this.model.length||e<0?0:this.mode===Si.VariousHeightItems?Math.min(this.model.length-1,i.ArrayUtilities.lowerBound(this.variableOffsets,e,i.ArrayUtilities.DEFAULT_COMPARATOR,0,this.model.length)):(this.fixedHeight||this.measureHeight(),Math.min(this.model.length-1,Math.floor(e/this.fixedHeight)))}elementAtIndex(e){const t=this.model.at(e);let i=this.itemToElement.get(t);return i||(i=this.delegate.createElementForItem(t),i.hasAttribute("jslog")||i.setAttribute("jslog",`${s.item().track({click:!0,keydown:"ArrowUp|ArrowDown|PageUp|PageDown"})}`),this.itemToElement.set(t,i),this.updateElementARIA(i,e)),i}refreshARIA(){for(let e=this.firstIndex;e<=this.lastIndex;e++){const t=this.model.at(e),i=this.itemToElement.get(t);i&&this.updateElementARIA(i,e)}}updateElementARIA(e,t){Vs(e)||Ns(e),so(e,this.model.length),oo(e,t+1)}offsetAtIndex(e){if(this.mode===Si.NonViewport)throw new Error("There should be no offset conversions in non-viewport mode");return this.model.length?this.mode===Si.VariousHeightItems?this.variableOffsets[e]:(this.fixedHeight||this.measureHeight(),e*this.fixedHeight):0}measureHeight(){this.fixedHeight=this.delegate.heightForItem(this.model.at(0)),this.fixedHeight||(this.fixedHeight=Rn(this.elementAtIndex(0),this.element).height)}select(e,t,i){void 0===t&&(t=this.selectedItemInternal),void 0===i&&(i=this.itemToElement.get(t)||null),this.selectedIndexInternal=e,this.selectedItemInternal=-1===e?null:this.model.at(e);const n=this.selectedItemInternal,s=-1!==this.selectedIndexInternal?this.elementAtIndex(e):null;this.delegate.selectedItemChanged(t,n,i,s),this.delegate.updateSelectedItemARIA(i,s)||(i&&Zs(i,!1),s&&Zs(s,!0),no(this.element,s))}findFirstSelectable(e,t,i){const n=this.model.length;if(!n)return-1;for(let s=0;s<=n;s++){if(e<0||e>=n){if(!i)return-1;e=(e+n)%n}if(this.delegate.isItemSelectable(this.model.at(e)))return e;e+=t}return-1}findPageSelectable(e,t){let i=-1;const n=this.offsetAtIndex(e),s=this.element.offsetHeight-1;for(;e>=0&&e<this.model.length;){if(this.delegate.isItemSelectable(this.model.at(e))){if(Math.abs(this.offsetAtIndex(e)-n)>=s)return e;i=e}e+=t}return i}reallocateVariableOffsets(e,t){if(this.variableOffsets.length<e){const i=new Int32Array(Math.max(e,2*this.variableOffsets.length));i.set(this.variableOffsets.slice(0,t),0),this.variableOffsets=i}else if(this.variableOffsets.length>=2*e){const i=new Int32Array(e);i.set(this.variableOffsets.slice(0,t),0),this.variableOffsets=i}}invalidate(e,t,n){if(this.mode===Si.NonViewport)return void this.invalidateNonViewportMode(e,t-e,n);if(this.mode===Si.VariousHeightItems){this.reallocateVariableOffsets(this.model.length+1,e+1);for(let t=e+1;t<=this.model.length;t++)this.variableOffsets[t]=this.variableOffsets[t-1]+this.delegate.heightForItem(this.model.at(t-1))}const s=this.element.offsetHeight,o=this.totalHeight(),r=this.element.scrollTop;if(this.renderedHeight<s||o<s)return this.clearViewport(),void this.updateViewport(i.NumberUtilities.clamp(r,0,o-s),s);const a=o-this.renderedHeight;if(t<=this.firstIndex){const i=this.topHeight+a;this.topElement.style.height=i+"px",this.element.scrollTop=r+a,this.topHeight=i,this.renderedHeight=o;const s=n-(t-e);return this.firstIndex+=s,void(this.lastIndex+=s)}if(e>=this.lastIndex){const e=this.bottomHeight+a;return this.bottomElement.style.height=e+"px",this.bottomHeight=e,void(this.renderedHeight=o)}this.clearViewport(),this.updateViewport(i.NumberUtilities.clamp(r,0,o-s),s),this.refreshARIA()}invalidateNonViewportMode(e,t,i){let n=this.topElement;for(let t=0;t<e;t++)n=n.nextElementSibling;for(;t--;)n.nextElementSibling.remove();for(;i--;)this.element.insertBefore(this.elementAtIndex(e+i),n.nextElementSibling)}clearViewport(){this.mode!==Si.NonViewport?(this.firstIndex=0,this.lastIndex=0,this.renderedHeight=0,this.topHeight=0,this.bottomHeight=0,this.clearContents()):console.error("There should be no viewport updates in non-viewport mode")}clearContents(){this.topElement.style.height="0",this.bottomElement.style.height="0",this.element.removeChildren(),this.element.appendChild(this.topElement),this.element.appendChild(this.bottomElement)}updateViewport(e,t){if(this.mode===Si.NonViewport)return void console.error("There should be no viewport updates in non-viewport mode");const i=this.totalHeight();if(!i)return this.firstIndex=0,this.lastIndex=0,this.topHeight=0,this.bottomHeight=0,this.renderedHeight=0,this.topElement.style.height="0",void(this.bottomElement.style.height="0");const n=this.indexAtOffset(e-t),s=this.indexAtOffset(e+2*t)+1;for(;this.firstIndex<Math.min(n,this.lastIndex);)this.elementAtIndex(this.firstIndex).remove(),this.firstIndex++;for(;this.lastIndex>Math.max(s,this.firstIndex);)this.elementAtIndex(this.lastIndex-1).remove(),this.lastIndex--;this.firstIndex=Math.min(this.firstIndex,s),this.lastIndex=Math.max(this.lastIndex,n);for(let e=this.firstIndex-1;e>=n;e--){const t=this.elementAtIndex(e);this.element.insertBefore(t,this.topElement.nextSibling)}for(let e=this.lastIndex;e<s;e++){const t=this.elementAtIndex(e);this.element.insertBefore(t,this.bottomElement)}this.firstIndex=n,this.lastIndex=s,this.topHeight=this.offsetAtIndex(n),this.topElement.style.height=this.topHeight+"px",this.bottomHeight=i-this.offsetAtIndex(s),this.bottomElement.style.height=this.bottomHeight+"px",this.renderedHeight=i,this.element.scrollTop=e}}var ki=Object.freeze({__proto__:null,ListControl:Ti,get ListMode(){return Si}});class Mi extends e.ObjectWrapper.ObjectWrapper{items;constructor(e){super(),this.items=e||[]}[Symbol.iterator](){return this.items[Symbol.iterator]()}get length(){return this.items.length}at(e){return this.items[e]}every(e){return this.items.every(e)}filter(e){return this.items.filter(e)}find(e){return this.items.find(e)}findIndex(e){return this.items.findIndex(e)}indexOf(e,t){return this.items.indexOf(e,t)}insert(e,t){this.items.splice(e,0,t),this.replaced(e,[],1)}insertWithComparator(e,t){this.insert(i.ArrayUtilities.lowerBound(this.items,e,t),e)}join(e){return this.items.join(e)}remove(e){const t=this.items[e];return this.items.splice(e,1),this.replaced(e,[t],0),t}replace(e,t,i){const n=this.items[e];return this.items[e]=t,this.replaced(e,[n],1,i),n}replaceRange(e,t,i){let n;if(i.length<1e4)n=this.items.splice(e,t-e,...i);else{n=this.items.slice(e,t);const s=this.items.slice(0,e),o=this.items.slice(t);this.items=[...s,...i,...o]}return this.replaced(e,n,i.length),n}replaceAll(e){const t=this.items.slice();return this.items=e,this.replaced(0,t,e.length),t}slice(e,t){return this.items.slice(e,t)}some(e){return this.items.some(e)}replaced(e,t,i,n){this.dispatchEventToListeners("ItemsReplaced",{index:e,removed:t,inserted:i,keepSelectedIndex:n})}}var Li=Object.freeze({__proto__:null,ListModel:Mi}),Pi={cssText:`:host{display:flex;flex:auto}.suggest-box{flex:auto;background-color:var(--sys-color-cdt-base-container);pointer-events:auto;margin-left:-3px;box-shadow:var(--drop-shadow);overflow-x:hidden}.suggest-box-content-item{padding:1px 0 1px 1px;margin:0;border:1px solid transparent;white-space:nowrap;display:flex;align-items:center;justify-content:space-between}.suggest-box-content-item.secondary{background-color:var(--sys-color-neutral-container);justify-content:normal}.suggestion-title{overflow:hidden;text-overflow:ellipsis}.suggestion-title span{white-space:pre}.suggestion-subtitle{flex:auto;text-align:right;color:var(--sys-color-token-subtle);margin-right:3px;overflow:hidden;text-overflow:ellipsis}.suggest-box-content-item devtools-icon{color:var(--sys-color-on-surface-subtle);margin-right:1px}.suggest-box-content-item .query{font-weight:bold}.suggest-box-content-item .spacer{display:inline-block;width:20px}.suggest-box-content-item.selected{background-color:var(--sys-color-tonal-container)}.suggest-box-content-item.selected .suggestion-subtitle,\n.suggest-box-content-item.selected > span{color:var(--sys-color-on-tonal-container)}.suggest-box-content-item:hover:not(.selected){background-color:var(--sys-color-state-hover-on-subtle)}@media (forced-colors: active){.suggest-box-content-item.selected{forced-color-adjust:none;background-color:Highlight}.suggest-box-content-item.selected > span{color:HighlightText}}\n/*# sourceURL=${import.meta.resolve("./suggestBox.css")} */\n`};const Di={sSuggestionSOfS:"{PH1}, suggestion {PH2} of {PH3}",sSuggestionSSelected:"{PH1}, suggestion selected"},Ai=t.i18n.registerUIStrings("ui/legacy/SuggestBox.ts",Di),zi=t.i18n.getLocalizedString.bind(void 0,Ai);class Ri{suggestBoxDelegate;maxItemsHeight;rowHeight;userEnteredText;defaultSelectionIsDimmed;onlyCompletion;items;list;element;glassPane;constructor(e,t){this.suggestBoxDelegate=e,this.maxItemsHeight=t,this.rowHeight=17,this.userEnteredText="",this.defaultSelectionIsDimmed=!1,this.onlyCompletion=null,this.items=new Mi,this.list=new Ti(this.items,this,Si.EqualHeightItems),this.element=this.list.element,this.element.classList.add("suggest-box"),this.element.addEventListener("mousedown",(e=>e.preventDefault()),!0),this.element.addEventListener("click",this.onClick.bind(this),!1),this.element.setAttribute("jslog",`${s.menu().parent("mapped").track({resize:!0,keydown:"ArrowUp|ArrowDown|PageUp|PageDown"})}`),this.glassPane=new cs,this.glassPane.setAnchorBehavior("PreferBottom"),this.glassPane.setOutsideClickCallback(this.hide.bind(this));rs(this.glassPane.contentElement,{cssFile:Pi}).appendChild(this.element)}visible(){return this.glassPane.isShowing()}setPosition(e){this.glassPane.setContentAnchorBox(e)}setAnchorBehavior(e){this.glassPane.setAnchorBehavior(e)}updateMaxSize(e){const t=this.maxWidth(e),i=(this.maxItemsHeight?Math.min(this.maxItemsHeight,e.length):e.length)*this.rowHeight;this.glassPane.setMaxContentSize(new Me(t,i))}maxWidth(e){if(!e.length)return 300;let t,i=-1/0;for(let n=0;n<e.length;n++){const s=(e[n].title||e[n].text).length+(e[n].subtitle||"").length;s>i&&(i=s,t=e[n])}const n=Rn(this.createElementForItem(t),this.element).width+ls(this.element.ownerDocument);return Math.min(300,n)}show(){if(this.visible())return;s.setMappedParent(this.element,this.suggestBoxDelegate.ownerElement()),this.glassPane.show(document);this.rowHeight=Rn(this.createElementForItem({text:"1",subtitle:"12"}),this.element).height,Ks(this.suggestBoxDelegate.ownerElement(),this.element),$s(this.suggestBoxDelegate.ownerElement(),!0)}hide(){this.visible()&&(this.glassPane.hide(),Ks(this.suggestBoxDelegate.ownerElement(),null),$s(this.suggestBoxDelegate.ownerElement(),!1))}applySuggestion(e){if(this.onlyCompletion)return co(e?zi(Di.sSuggestionSOfS,{PH1:this.onlyCompletion.text,PH2:this.list.selectedIndex()+1,PH3:this.items.length}):zi(Di.sSuggestionSSelected,{PH1:this.onlyCompletion.text})),this.suggestBoxDelegate.applySuggestion(this.onlyCompletion,e),!0;const t=this.list.selectedItem();return t?.text&&co(e?zi(Di.sSuggestionSOfS,{PH1:t.title||t.text,PH2:this.list.selectedIndex()+1,PH3:this.items.length}):zi(Di.sSuggestionSSelected,{PH1:t.title||t.text})),this.suggestBoxDelegate.applySuggestion(t,e),this.visible()&&Boolean(t)}acceptSuggestion(){const e=this.applySuggestion();return this.hide(),!!e&&(this.suggestBoxDelegate.acceptSuggestion(),!0)}createElementForItem(e){const t=this.userEnteredText,n=document.createElement("div");n.classList.add("suggest-box-content-item"),n.classList.add("source-code"),e.isSecondary&&n.classList.add("secondary"),n.tabIndex=-1;const s=50+t.length,o=i.StringUtilities.trimEndWithMaxLength((e.title||e.text).trim(),s).replace(/\n/g,"↵"),r=n.createChild("span","suggestion-title"),a=o.toLowerCase().indexOf(t.toLowerCase());if(a>0&&(r.createChild("span").textContent=o.substring(0,a)),a>-1&&(r.createChild("span","query").textContent=o.substring(a,a+t.length)),r.createChild("span").textContent=o.substring(a>-1?a+t.length:0),r.createChild("span","spacer"),e.subtitleRenderer){const t=e.subtitleRenderer.call(null);t.classList.add("suggestion-subtitle"),n.appendChild(t)}else if(e.subtitle){n.createChild("span","suggestion-subtitle").textContent=i.StringUtilities.trimEndWithMaxLength(e.subtitle,s-o.length)}return e.iconElement&&n.appendChild(e.iconElement),n}heightForItem(e){return this.rowHeight}isItemSelectable(e){return!0}selectedItemChanged(e,t,i,n){i&&i.classList.remove("selected","force-white-icons"),n&&(n.classList.add("selected"),n.classList.add("force-white-icons")),this.applySuggestion(!0)}updateSelectedItemARIA(e,t){return!1}onClick(e){const t=this.list.itemForNode(e.target);t&&(this.list.selectItem(t),this.acceptSuggestion(),e.consume(!0))}canShowBox(e,t,i,n){return!!e?.length&&(e.length>1||(!(t&&!t.isSecondary&&t.text.startsWith(n))||i&&t.text!==n))}updateSuggestions(e,t,i,n,s){this.onlyCompletion=null;const o=i?t.reduce(((e,t)=>(e.priority||0)>=(t.priority||0)?e:t)):null;this.canShowBox(t,o,n,s)?(this.userEnteredText=s,this.show(),this.updateMaxSize(t),this.glassPane.setContentAnchorBox(e),this.list.invalidateItemHeight(),this.items.replaceAll(t),o&&!o.isSecondary?this.list.selectItem(o,!0):this.list.selectItem(null)):(1===t.length&&(this.onlyCompletion=t[0],this.applySuggestion(!0)),this.hide())}keyPressed(e){switch(e.key){case"Enter":return this.enterKeyPressed();case"ArrowUp":return this.list.selectPreviousItem(!0,!1);case"ArrowDown":return this.list.selectNextItem(!0,!1);case"PageUp":return this.list.selectItemPreviousPage(!1);case"PageDown":return this.list.selectItemNextPage(!1)}return!1}enterKeyPressed(){const e=Boolean(this.list.selectedItem())||Boolean(this.onlyCompletion);return this.acceptSuggestion(),e}}var Bi=Object.freeze({__proto__:null,SuggestBox:Ri}),Oi={cssText:`.text-prompt-root{display:flex;align-items:center}.text-prompt-editing{box-shadow:var(--drop-shadow);background-color:var(--sys-color-cdt-base-container);text-overflow:clip!important;margin:0 -2px -1px;padding:0 2px 1px;opacity:100%!important}.text-prompt{cursor:text;overflow-x:visible}.text-prompt::-webkit-scrollbar{display:none}.text-prompt-editing > .text-prompt{color:var(--sys-color-on-surface)!important;text-decoration:none!important;white-space:pre}.text-prompt > .auto-complete-text{color:var(--sys-color-token-subtle)!important}.text-prompt[data-placeholder]{&:empty::before{content:attr(data-placeholder);color:var(--sys-color-on-surface-subtle)}&.disabled:empty::before{color:var(--sys-color-state-disabled)}}.text-prompt:not([data-placeholder]):empty::after{content:"\\00A0";width:0;display:block}.text-prompt.disabled{color:var(--sys-color-state-disabled);cursor:default}.text-prompt-editing br{display:none}.text-prompt-root:not(:focus-within) ::selection{background:transparent;color:currentcolor}@media (forced-colors: active){.text-prompt[data-placeholder]:empty::before{color:GrayText!important}.text-prompt.disabled{opacity:100%}}\n/*# sourceURL=${import.meta.resolve("./textPrompt.css")} */\n`};class Fi extends e.ObjectWrapper.ObjectWrapper{proxyElement;proxyElementDisplay;autocompletionTimeout;titleInternal;queryRange;previousText;currentSuggestion;completionRequestId;ghostTextElement;leftParenthesesIndices;loadCompletions;completionStopCharacters;usesSuggestionBuilder;elementInternal;boundOnKeyDown;boundOnInput;boundOnMouseWheel;boundClearAutocomplete;boundOnBlur;contentElement;suggestBox;isEditing;focusRestorer;blurListener;oldTabIndex;completeTimeout;disableDefaultSuggestionForEmptyInputInternal;changed;jslogContext=void 0;constructor(){super(),this.proxyElementDisplay="inline-block",this.autocompletionTimeout=Wi,this.titleInternal="",this.queryRange=null,this.previousText="",this.currentSuggestion=null,this.completionRequestId=0,this.ghostTextElement=document.createElement("span"),this.ghostTextElement.classList.add("auto-complete-text"),this.ghostTextElement.setAttribute("contenteditable","false"),this.leftParenthesesIndices=[],this.changed=!1,Xs(this.ghostTextElement,!0)}initialize(e,t,i){this.loadCompletions=e,this.completionStopCharacters=t||" =:[({;,!+-*/&|^<>.",this.usesSuggestionBuilder=i||!1}setAutocompletionTimeout(e){this.autocompletionTimeout=e}renderAsBlock(){this.proxyElementDisplay="block"}attach(e){return this.attachInternal(e)}attachAndStartEditing(e,t){const i=this.attachInternal(e);return this.startEditing(t),i}attachInternal(e){if(this.proxyElement)throw new Error("Cannot attach an attached TextPrompt");this.elementInternal=e,this.boundOnKeyDown=this.onKeyDown.bind(this),this.boundOnInput=this.onInput.bind(this),this.boundOnMouseWheel=this.onMouseWheel.bind(this),this.boundClearAutocomplete=this.clearAutocomplete.bind(this),this.boundOnBlur=this.onBlur.bind(this),this.proxyElement=e.ownerDocument.createElement("span"),u.ThemeSupport.instance().appendStyle(this.proxyElement,Oi),this.contentElement=this.proxyElement.createChild("div","text-prompt-root"),this.proxyElement.style.display=this.proxyElementDisplay,e.parentElement&&e.parentElement.insertBefore(this.proxyElement,e),this.contentElement.appendChild(e);let t=s.textField().track({keydown:"ArrowLeft|ArrowUp|PageUp|Home|PageDown|ArrowRight|ArrowDown|End|Space|Tab|Enter|Escape",change:!0});return this.jslogContext&&(t=t.context(this.jslogContext)),this.elementInternal.hasAttribute("jslog")||this.elementInternal.setAttribute("jslog",`${t}`),this.elementInternal.classList.add("text-prompt"),Ds(this.elementInternal),Gs(this.elementInternal,"both"),Qs(this.elementInternal,"listbox"),this.elementInternal.setAttribute("contenteditable","plaintext-only"),this.element().addEventListener("keydown",this.boundOnKeyDown,!1),this.elementInternal.addEventListener("input",this.boundOnInput,!1),this.elementInternal.addEventListener("wheel",this.boundOnMouseWheel,!1),this.elementInternal.addEventListener("selectstart",this.boundClearAutocomplete,!1),this.elementInternal.addEventListener("blur",this.boundOnBlur,!1),this.suggestBox=new Ri(this,20),this.titleInternal&&gt.install(this.proxyElement,this.titleInternal),this.proxyElement}element(){if(!this.elementInternal)throw new Error("Expected an already attached element!");return this.elementInternal}detach(){this.removeFromElement(),this.focusRestorer&&this.focusRestorer.restore(),this.proxyElement?.parentElement&&(this.proxyElement.parentElement.insertBefore(this.element(),this.proxyElement),this.proxyElement.remove()),delete this.proxyElement,this.element().classList.remove("text-prompt"),this.element().removeAttribute("contenteditable"),this.element().removeAttribute("role"),Ys(this.element()),Qs(this.element(),"false")}textWithCurrentSuggestion(){const e=this.text();if(!this.queryRange||!this.currentSuggestion)return e;const t=this.currentSuggestion.text;return e.substring(0,this.queryRange.startColumn)+t+e.substring(this.queryRange.endColumn)}text(){let e=this.element().textContent||"";if(this.ghostTextElement.parentNode){const t=this.ghostTextElement.textContent||"";e=e.substring(0,e.length-t.length)}return e}setText(e){this.clearAutocomplete(),this.element().textContent=e,this.previousText=this.text(),this.element().hasFocus()&&(this.moveCaretToEndOfPrompt(),this.element().scrollIntoView())}setSelectedRange(e,t){if(e<0)throw new RangeError("Selected range start must be a nonnegative integer");const i=this.element().textContent,n=i?i.length:0;t>n&&(t=n),t<e&&(t=e);const s=this.element().childNodes[0],o=new Range;o.setStart(s,e),o.setEnd(s,t);const r=window.getSelection();r&&(r.removeAllRanges(),r.addRange(o))}focus(){this.element().focus()}title(){return this.titleInternal}setTitle(e){this.titleInternal=e,this.proxyElement&&gt.install(this.proxyElement,e)}setPlaceholder(e,t){e?(this.element().setAttribute("data-placeholder",e),Us(this.element(),t||e)):(this.element().removeAttribute("data-placeholder"),Us(this.element(),null))}setEnabled(e){e?this.element().setAttribute("contenteditable","plaintext-only"):this.element().removeAttribute("contenteditable"),this.element().classList.toggle("disabled",!e)}removeFromElement(){this.clearAutocomplete(),this.element().removeEventListener("keydown",this.boundOnKeyDown,!1),this.element().removeEventListener("input",this.boundOnInput,!1),this.element().removeEventListener("selectstart",this.boundClearAutocomplete,!1),this.element().removeEventListener("blur",this.boundOnBlur,!1),this.isEditing&&this.stopEditing(),this.suggestBox&&this.suggestBox.hide()}startEditing(e){this.isEditing=!0,this.contentElement&&this.contentElement.classList.add("text-prompt-editing"),this.focusRestorer=new Dn(this.element()),e&&(this.blurListener=e,this.element().addEventListener("blur",this.blurListener,!1)),this.oldTabIndex=this.element().tabIndex,this.element().tabIndex<0&&(this.element().tabIndex=0),this.text()||this.autoCompleteSoon()}stopEditing(){this.element().tabIndex=this.oldTabIndex,this.blurListener&&this.element().removeEventListener("blur",this.blurListener,!1),this.contentElement&&this.contentElement.classList.remove("text-prompt-editing"),delete this.isEditing}onMouseWheel(e){}onKeyDown(e){let t=!1;const i=e;if(this.isSuggestBoxVisible()&&this.suggestBox?.keyPressed(i))return s.logKeyDown(this.suggestBox.element,i),void i.consume(!0);switch(i.key){case"Tab":t=this.tabKeyPressed(i);break;case"ArrowLeft":case"ArrowUp":case"PageUp":case"Home":this.clearAutocomplete();break;case"PageDown":case"ArrowRight":case"ArrowDown":case"End":this.isCaretAtEndOfPrompt()?t=this.acceptAutoComplete():this.clearAutocomplete();break;case"Escape":this.isSuggestBoxVisible()&&(this.clearAutocomplete(),t=!0);break;case" ":!i.ctrlKey||i.metaKey||i.altKey||i.shiftKey||(this.autoCompleteSoon(!0),t=!0)}"Enter"===i.key&&i.preventDefault(),t&&i.consume(!0)}acceptSuggestionOnStopCharacters(e){if(!this.currentSuggestion||!this.queryRange||1!==e.length||!this.completionStopCharacters?.includes(e))return!1;const t=this.text().substring(this.queryRange.startColumn,this.queryRange.endColumn);return!(!t||!this.currentSuggestion.text.startsWith(t+e))&&(this.queryRange.endColumn+=1,this.acceptAutoComplete())}onInput(e){const t=e;let n=this.text();const s=t.data;"insertFromPaste"===t.inputType&&n.includes("\n")&&(n=i.StringUtilities.stripLineBreaks(n),this.setText(n));const o=this.getCaretPosition();if(")"===s&&o>=0&&this.leftParenthesesIndices.length>0){if(")"===n[o]&&this.tryMatchingLeftParenthesis(o))return n=n.substring(0,o)+n.substring(o+1),void this.setText(n)}if(s&&!this.acceptSuggestionOnStopCharacters(s)){const e=n.startsWith(this.previousText)||this.previousText.startsWith(n);this.queryRange&&e&&(this.queryRange.endColumn+=n.length-this.previousText.length)}this.refreshGhostText(),this.previousText=n,this.dispatchEventToListeners("TextChanged"),this.changed=!0,this.autoCompleteSoon()}acceptAutoComplete(){let e=!1;return this.isSuggestBoxVisible()&&this.suggestBox&&(e=this.suggestBox.acceptSuggestion()),e||(e=this.acceptSuggestionInternal()),this.usesSuggestionBuilder&&e&&this.autoCompleteSoon(),e}clearAutocomplete(){const e=this.textWithCurrentSuggestion();this.isSuggestBoxVisible()&&this.suggestBox&&this.suggestBox.hide(),this.clearAutocompleteTimeout(),this.queryRange=null,this.refreshGhostText(),e!==this.textWithCurrentSuggestion()&&(this.dispatchEventToListeners("TextChanged"),this.changed=!0)}onBlur(){this.clearAutocomplete()}refreshGhostText(){this.currentSuggestion?.hideGhostText?this.ghostTextElement.remove():this.queryRange&&this.currentSuggestion&&this.isCaretAtEndOfPrompt()&&this.currentSuggestion.text.startsWith(this.text().substring(this.queryRange.startColumn))?(this.ghostTextElement.textContent=this.currentSuggestion.text.substring(this.queryRange.endColumn-this.queryRange.startColumn),this.element().appendChild(this.ghostTextElement)):this.ghostTextElement.remove()}clearAutocompleteTimeout(){this.completeTimeout&&(clearTimeout(this.completeTimeout),delete this.completeTimeout),this.completionRequestId++}autoCompleteSoon(e){const t=this.isSuggestBoxVisible()||e;this.completeTimeout||(this.completeTimeout=window.setTimeout(this.complete.bind(this,e),t?0:this.autocompletionTimeout))}async complete(e){this.clearAutocompleteTimeout();const t=this.element().getComponentSelection();if(!t||0===t.rangeCount)return;const n=t.getRangeAt(0);let s;if((e||this.isCaretAtEndOfPrompt()||this.isSuggestBoxVisible())&&t.isCollapsed||(s=!0),s)return void this.clearAutocomplete();const o=i.DOMUtilities.rangeOfWord(n.startContainer,n.startOffset,this.completionStopCharacters,this.element(),"backward"),r=o.cloneRange();r.collapse(!0),r.setStartBefore(this.element());const a=++this.completionRequestId,l=await this.loadCompletions.call(null,r.toString(),o.toString(),Boolean(e));this.completionsReady(a,t,o,Boolean(e),l)}disableDefaultSuggestionForEmptyInput(){this.disableDefaultSuggestionForEmptyInputInternal=!0}boxForAnchorAtStart(e,t){const i=e.getRangeAt(0).cloneRange(),n=document.createElement("span");n.textContent="​",t.insertNode(n);const s=n.boxInWindow(window);return n.remove(),e.removeAllRanges(),e.addRange(i),s}additionalCompletions(e){return[]}completionsReady(e,t,i,n,s){if(this.completionRequestId!==e)return;const o=i.toString(),r=new Set;if(s=s.filter((e=>!r.has(e.text)&&Boolean(r.add(e.text)))),(o||n)&&(s=o?s.concat(this.additionalCompletions(o)):this.additionalCompletions(o).concat(s)),!s.length)return void this.clearAutocomplete();const a=t.getRangeAt(0),l=document.createRange();if(l.setStart(i.startContainer,i.startOffset),l.setEnd(a.endContainer,a.endOffset),o+a.toString()!==l.toString())return;const d=document.createRange();d.setStart(this.element(),0),d.setEnd(l.startContainer,l.startOffset),this.queryRange=new p.TextRange.TextRange(0,d.toString().length,0,d.toString().length+l.toString().length);const h=!this.disableDefaultSuggestionForEmptyInputInternal||Boolean(this.text());this.suggestBox&&this.suggestBox.updateSuggestions(this.boxForAnchorAtStart(t,l),s,h,!this.isCaretAtEndOfPrompt(),this.text())}applySuggestion(e,t){this.currentSuggestion=e,this.refreshGhostText(),t&&(this.dispatchEventToListeners("TextChanged"),this.changed=!0)}acceptSuggestion(){this.acceptSuggestionInternal()}acceptSuggestionInternal(){if(!this.queryRange)return!1;const e=this.currentSuggestion?this.currentSuggestion.text.length:0,t=this.currentSuggestion?this.currentSuggestion.selectionRange:null,i=t?t.endColumn:e,n=t?t.startColumn:e;return this.element().textContent=this.textWithCurrentSuggestion(),this.setDOMSelection(this.queryRange.startColumn+n,this.queryRange.startColumn+i),this.updateLeftParenthesesIndices(),this.clearAutocomplete(),this.dispatchEventToListeners("TextChanged"),this.changed=!0,!0}ownerElement(){return this.element()}setDOMSelection(e,t){this.element().normalize();const i=this.element().childNodes[0];if(!i||i===this.ghostTextElement)return;const n=document.createRange();n.setStart(i,e),n.setEnd(i,t);const s=this.element().getComponentSelection();s&&(s.removeAllRanges(),s.addRange(n))}isSuggestBoxVisible(){return this.suggestBox?.visible()??!1}isCaretAtEndOfPrompt(){const e=this.element().getComponentSelection();if(!e||0===e.rangeCount||!e.isCollapsed)return!1;const t=e.getRangeAt(0);let i=t.startContainer;if(!i.isSelfOrDescendant(this.element()))return!1;if(this.ghostTextElement.isAncestor(i))return!0;if(i.nodeType===Node.TEXT_NODE&&t.startOffset<(i.nodeValue||"").length)return!1;let n=!1;for(;i;){if(i.nodeType===Node.TEXT_NODE&&i.nodeValue?.length){if(n&&!this.ghostTextElement.isAncestor(i))return!1;n=!0}i=i.traverseNextNode(this.elementInternal)}return!0}moveCaretToEndOfPrompt(){const e=this.element().getComponentSelection(),t=document.createRange();let i=this.element();for(;i.lastChild;)i=i.lastChild;let n=0;if(i.nodeType===Node.TEXT_NODE){n=(i.textContent||"").length}t.setStart(i,n),t.setEnd(i,n),e&&(e.removeAllRanges(),e.addRange(t))}getCaretPosition(){if(!this.element().hasFocus())return-1;const e=this.element().getComponentSelection();if(!e||0===e.rangeCount||!e.isCollapsed)return-1;const t=e.getRangeAt(0);return t.startOffset!==t.endOffset?-1:t.startOffset}tabKeyPressed(e){return this.acceptAutoComplete()}tryMatchingLeftParenthesis(e){const t=this.leftParenthesesIndices;if(0===t.length||e<0)return!1;for(let i=t.length-1;i>=0;--i)if(t[i]<e)return t.splice(i,1),!0;return!1}updateLeftParenthesesIndices(){const e=this.text(),t=this.leftParenthesesIndices=[];for(let i=0;i<e.length;++i)"("===e[i]&&t.push(i)}suggestBoxForTest(){return this.suggestBox}}const Wi=250;var Hi=Object.freeze({__proto__:null,TextPrompt:Fi}),Ni={cssText:`:host{padding:0 2px;position:relative;white-space:nowrap;overflow:hidden;display:flex;flex:none;align-items:center;z-index:0;--toolbar-height:26px}:host([floating]){flex-direction:column;inset:0;background-color:var(--sys-color-cdt-base-container);border:1px solid var(--sys-color-divider);margin-top:-1px;width:28px}:host([hidden]){display:none}:host([wrappable]){flex-wrap:wrap;overflow:visible}slot{height:var(--toolbar-height)}devtools-toolbar-input{display:flex}.toolbar-item.open-in-external-editor-button{background-color:transparent;border:none}.toolbar-item.open-in-external-editor-button:hover{background-color:var(--sys-color-state-hover-on-subtle)}.open-in-external-editor-adorner{background-repeat:no-repeat;background-origin:content-box;background-size:contain;padding:4px;width:28px;height:28px;margin-right:-4px}\n/*# sourceURL=${import.meta.resolve("./toolbar.css")} */\n`};const ji={pressed:"pressed",notPressed:"not pressed",clearInput:"Clear",filter:"Filter"},Vi=t.i18n.registerUIStrings("ui/legacy/Toolbar.ts",ji),Ui=t.i18n.getLocalizedString.bind(void 0,Vi);class _i extends HTMLElement{#c=this.attachShadow({mode:"open"});items=[];enabled=!0;compactLayout=!1;mutationObserver=new MutationObserver(this.onItemsChange.bind(this));constructor(){super(),this.#c.createChild("style").textContent=Ni.cssText,this.#c.createChild("slot")}onItemsChange(e){for(const t of e){for(const e of t.removedNodes)if(e instanceof HTMLElement)for(const t of this.items)if(t.element===e){this.items.splice(this.items.indexOf(t),1);break}for(const e of t.addedNodes){if(!(e instanceof HTMLElement))continue;if(this.items.some((t=>t.element===e)))continue;let t;t=e instanceof o.Button.Button?new qi("",void 0,void 0,void 0,e):e instanceof Yi?e.item:e instanceof HTMLSelectElement?new tn(null,e.title,void 0,void 0,e):new Ki(e),t&&this.appendToolbarItem(t)}}}connectedCallback(){this.hasAttribute("role")||this.setAttribute("role","toolbar")}get floating(){return this.hasAttribute("floating")}set floating(e){this.toggleAttribute("floating",e)}get wrappable(){return this.hasAttribute("wrappable")}set wrappable(e){this.toggleAttribute("wrappable",e)}hasCompactLayout(){return this.compactLayout}setCompactLayout(e){if(this.compactLayout!==e){this.compactLayout=e;for(const t of this.items)t.setCompactLayout(e)}}static createLongPressActionButton(e,t,i){const n=_i.createActionButton(e),s=_i.createActionButton(e);let o=null,r=null;return e.addEventListener("Toggled",a),a(),n;function a(){const s=e.toggled()?t||null:i||null;s?.length?o||(o=new Hn(n.element,l),n.setLongClickable(!0),r=s):o&&(o.dispose(),o=null,n.setLongClickable(!1),r=null)}function l(){let e=r?r.slice():[];e.push(s);const t=n.element.ownerDocument;t.documentElement.addEventListener("mouseup",(function n(s){if(1!==s.which)return;i.hide(),t.documentElement.removeEventListener("mouseup",n,!1);for(let t=0;t<e.length;++t)if(e[t].element.classList.contains("emulate-active")){e[t].element.classList.remove("emulate-active"),e[t].clicked(s);break}}),!1);const i=new cs;i.setPointerEventsBehavior("BlockedByGlassPane"),i.show(t);const o=i.contentElement.createChild("devtools-toolbar");o.floating=!0;const a=n.element.boxInWindow().relativeToElement(cs.container(t)),l=a.y+26*e.length<t.documentElement.offsetHeight;l&&(e=e.reverse()),o.style.height=26*e.length+"px",o.style.top=l?a.y-5+"px":a.y-26*(e.length-1)-6+"px",o.style.left=a.x-5+"px";for(let t=0;t<e.length;++t)e[t].element.addEventListener("mousemove",h,!1),e[t].element.addEventListener("mouseout",c,!1),o.appendToolbarItem(e[t]);const d=l?0:e.length-1;function h(e){if(1===e.which&&e.target instanceof HTMLElement){e.target.enclosingNodeOrSelfWithClass("toolbar-button").classList.add("emulate-active")}}function c(e){if(1===e.which&&e.target instanceof HTMLElement){e.target.enclosingNodeOrSelfWithClass("toolbar-button").classList.remove("emulate-active")}}e[d].element.classList.add("emulate-active")}}static createActionButton(e,t={}){const i="string"==typeof e?M.instance().getAction(e):e,n=i.toggleable()?function(){const e=new Qi(i.title(),i.icon(),i.toggledIcon(),i.id());i.toggleWithRedColor()&&e.enableToggleWithRedColor();return i.addEventListener("Toggled",t),t(),e;function t(){e.setToggled(i.toggled()),i.title()&&(e.setTitle(i.title()),gt.installWithActionBinding(e.element,i.title(),i.id()))}}():function(){const e=new qi(i.title(),i.icon(),void 0,i.id());i.title()&&gt.installWithActionBinding(e.element,i.title(),i.id());return e}();t.label&&n.setText(t.label()||i.title());return n.addEventListener("Click",(()=>{i.execute()}),i),i.addEventListener("Enabled",(function(e){n.setEnabled(e.data)})),n.setEnabled(i.enabled()),n}empty(){return!this.items.length}setEnabled(e){this.enabled=e;for(const e of this.items)e.applyEnabledState(this.enabled&&e.enabled)}appendToolbarItem(e){this.items.push(e),e.toolbar=this,e.setCompactLayout(this.hasCompactLayout()),this.enabled||e.applyEnabledState(!1),e.element.parentElement!==this&&this.appendChild(e.element),this.hideSeparatorDupes()}hasItem(e){return this.items.includes(e)}prependToolbarItem(e){this.items.unshift(e),e.toolbar=this,e.setCompactLayout(this.hasCompactLayout()),this.enabled||e.applyEnabledState(!1),this.prepend(e.element),this.hideSeparatorDupes()}appendSeparator(){this.appendToolbarItem(new en)}appendSpacer(){this.appendToolbarItem(new en(!0))}appendText(e){this.appendToolbarItem(new $i(e))}removeToolbarItem(e){const t=[];for(const i of this.items)i===e?i.element.remove():t.push(i);this.items=t}removeToolbarItems(){for(const e of this.items)e.toolbar=null;this.items=[],this.removeChildren()}hideSeparatorDupes(){if(!this.items.length)return;let e,t=!1,i=!1;for(let n=0;n<this.items.length;++n)this.items[n]instanceof en?(this.items[n].setVisible(!t),t=!0,e=this.items[n]):this.items[n].visible()&&(t=!1,e=null,i=!0);e&&e!==this.items[this.items.length-1]&&e.setVisible(!1),this.classList.toggle("hidden",null!=e&&e.visible()&&!i)}async appendItemsAtLocation(e){const t=sn.filter((e=>n.Runtime.Runtime.isDescriptorEnabled({experiment:e.experiment,condition:e.condition})));t.sort(((e,t)=>(e.order||0)-(t.order||0)));const i=t.filter((t=>t.location===e)),s=await Promise.all(i.map((e=>{const{separator:t,actionId:i,label:n,loadItem:s}=e;if(t)return new en;if(i)return _i.createActionButton(i,{label:n});if(!s)throw new Error("Could not load a toolbar item registration with no loadItem function");return s().then((e=>e.item()))})));for(const e of s)e&&this.appendToolbarItem(e)}}customElements.define("devtools-toolbar",_i);class Ki extends e.ObjectWrapper.ObjectWrapper{element;visibleInternal;enabled;toolbar;title;constructor(e){super(),this.element=e,this.visibleInternal=!0,this.enabled=!0,this.toolbar=null}setTitle(e,t=void 0){this.title!==e&&(this.title=e,to(this.element,e),void 0===t?gt.install(this.element,e):gt.installWithActionBinding(this.element,e,t))}setEnabled(e){this.enabled!==e&&(this.enabled=e,this.applyEnabledState(this.enabled&&(!this.toolbar||this.toolbar.enabled)))}applyEnabledState(e){this.element.disabled=!e}visible(){return this.visibleInternal}setVisible(e){this.visibleInternal!==e&&(this.element.classList.toggle("hidden",!e),this.visibleInternal=e,!this.toolbar||this instanceof en||this.toolbar.hideSeparatorDupes())}setCompactLayout(e){}}class $i extends Ki{constructor(e=""){const t=document.createElement("div");t.classList.add("toolbar-text"),super(t),this.setText(e)}text(){return this.element.textContent??""}setText(e){this.element.textContent=e}}class qi extends Ki{button;text;adorner;constructor(e,t,i,n,s){s||(s=new o.Button.Button,t&&!i?s.data={variant:"icon",iconName:t}:(s.variant="text",s.reducedFocusRing=!0,t&&(s.iconName=t))),super(s),this.button=s,s.classList.add("toolbar-button"),this.element.addEventListener("click",this.clicked.bind(this),!1),s.textContent=i||"",this.setTitle(e),n&&(s.jslogContext=n)}focus(){this.element.focus()}checked(e){this.button.checked=e}toggleOnClick(e){this.button.toggleOnClick=e}isToggled(){return this.button.toggled}toggled(e){this.button.toggled=e}setToggleType(e){this.button.toggleType=e}setLongClickable(e){this.button.longClickable=e}setSize(e){this.button.size=e}setReducedFocusRing(){this.button.reducedFocusRing=!0}setText(e){this.text!==e&&(this.button.textContent=e,this.button.variant="text",this.button.reducedFocusRing=!0,this.text=e)}setAdorner(e){this.adorner?this.adorner.replaceWith(e):this.element.prepend(e),this.adorner=e}setGlyph(e){this.button.iconName=e}setToggledIcon(e){this.button.variant="icon_toggle",this.button.toggledIconName=e}setBackgroundImage(e){this.element.style.backgroundImage="url("+e+")"}setSecondary(){this.element.classList.add("toolbar-button-secondary")}setDarkText(){this.element.classList.add("dark-text")}clicked(e){this.enabled&&(this.dispatchEventToListeners("Click",e),e.consume())}}class Xi extends Ki{prompt;proxyElement;constructor(e,t,i,n,r,a,l,d,h){h||(h=document.createElement("div")),h.classList.add("toolbar-input"),super(h);const c=this.element.createChild("div","toolbar-input-prompt");to(c,t||e),c.addEventListener("focus",(()=>this.element.classList.add("focused"))),c.addEventListener("blur",(()=>this.element.classList.remove("focused"))),this.prompt=new Fi,this.prompt.jslogContext=d,this.proxyElement=this.prompt.attach(c),this.proxyElement.classList.add("toolbar-prompt-proxy"),this.proxyElement.addEventListener("keydown",(e=>this.onKeydownCallback(e))),this.prompt.initialize(a||(()=>Promise.resolve([]))," ",l),r&&this.prompt.setTitle(r),this.prompt.setPlaceholder(e,t),this.prompt.addEventListener("TextChanged",this.onChangeCallback.bind(this)),i&&(this.element.style.flexGrow=String(i)),n&&(this.element.style.flexShrink=String(n));const u=Ui(ji.clearInput),m=new o.Button.Button;m.data={variant:"icon",iconName:"cross-circle-filled",size:"SMALL",title:u},m.className="toolbar-input-clear-button",m.setAttribute("jslog",`${s.action("clear").track({click:!0}).parent("mapped")}`),s.setMappedParent(m,c),m.variant="icon",m.size="SMALL",m.iconName="cross-circle-filled",m.title=u,m.ariaLabel=u,m.tabIndex=-1,m.addEventListener("click",(()=>{this.setValue("",!0),this.prompt.focus()})),this.element.appendChild(m),this.updateEmptyStyles()}applyEnabledState(e){e?this.element.classList.remove("disabled"):this.element.classList.add("disabled"),this.prompt.setEnabled(e)}setValue(e,t){this.prompt.setText(e),t&&this.onChangeCallback(),this.updateEmptyStyles()}value(){return this.prompt.textWithCurrentSuggestion()}valueWithoutSuggestion(){return this.prompt.text()}clearAutocomplete(){this.prompt.clearAutocomplete()}focus(){this.prompt.focus()}onKeydownCallback(e){"Enter"===e.key&&this.prompt.text()&&this.dispatchEventToListeners("EnterPressed",this.prompt.text()),i.KeyboardUtilities.isEscKey(e)&&this.prompt.text()&&(this.setValue("",!0),e.consume(!0))}onChangeCallback(){this.updateEmptyStyles(),this.dispatchEventToListeners("TextChanged",this.prompt.text())}updateEmptyStyles(){this.element.classList.toggle("toolbar-input-empty",!this.prompt.text())}}class Gi extends Xi{constructor(e,t,i,n,s,o,a,l){const d=e||Ui(ji.filter);super(d,d,t,i,n,s,o,a||"filter",l);const h=r.Icon.create("filter");this.element.prepend(h),this.element.classList.add("toolbar-filter")}}class Yi extends HTMLElement{static observedAttributes=["value"];item;datalist=null;value=void 0;connectedCallback(){if(this.item)return;const e=this.getAttribute("list");e&&(this.datalist=this.getRootNode().querySelector(`datalist[id="${e}"]`));const t=this.getAttribute("placeholder")||"",i=this.getAttribute("aria-placeholder")??void 0,n=this.getAttribute("title")??void 0,s=this.id??void 0,o="filter"===this.getAttribute("type");this.item=o?new Gi(t,void 0,void 0,n,this.datalist?this.#u.bind(this):void 0,void 0,s||"filter",this):new Xi(t,i,void 0,void 0,n,this.datalist?this.#u.bind(this):void 0,void 0,s,this),this.value&&this.item.setValue(this.value),this.item.addEventListener("TextChanged",(e=>{this.dispatchEvent(new CustomEvent("change",{detail:e.data}))})),this.item.addEventListener("EnterPressed",(e=>{this.dispatchEvent(new CustomEvent("submit",{detail:e.data}))}))}focus(){this.item.focus()}async#u(e,t,i){if(!t&&!i&&e||!this.datalist)return[];return[...this.datalist.options].map((({value:e})=>e)).filter((e=>e.startsWith(t))).map((e=>({text:e})))}attributeChangedCallback(e,t,i){"value"===e&&(this.item&&this.item.value()!==i?this.item.setValue(i,!0):this.value=i)}}customElements.define("devtools-toolbar-input",Yi);class Qi extends qi{untoggledGlyph;toggledGlyph;constructor(e,t,i,n,o){super(e,t,""),this.untoggledGlyph=t,this.toggledGlyph=i||t,this.setToggledIcon(this.toggledGlyph||""),this.setToggleType("primary-toggle"),this.toggled(!1),n&&this.element.setAttribute("jslog",`${s.toggle().track({click:!0}).context(n)}`),void 0!==o&&this.setToggleOnClick(o)}setToggleOnClick(e){this.toggleOnClick(e)}setToggled(e){this.toggled(e)}setChecked(e){this.checked(e)}enableToggleWithRedColor(){this.setToggleType("red-toggle")}}class Zi extends Ki{textElement;text;iconName;adorner;contextMenuHandler;useSoftMenu;keepOpen;triggerTimeoutId;#m=200;constructor(e,t,i,n,a,l){let d;if(a?(d=new o.Button.Button,d.data={variant:"icon",iconName:a}):d=document.createElement("button"),d.classList.add("toolbar-button"),super(d),this.element.addEventListener("click",this.clicked.bind(this),!1),this.iconName=a,this.setTitle(""),this.title="",!t){this.element.classList.add("toolbar-has-dropdown");const e=r.Icon.create("triangle-down","toolbar-dropdown-arrow");this.element.appendChild(e)}n&&this.element.setAttribute("jslog",`${s.dropDown().track({click:!0}).context(n)}`),this.element.addEventListener("mousedown",this.mouseDown.bind(this),!1),this.contextMenuHandler=e,this.useSoftMenu=Boolean(i),this.keepOpen=Boolean(l),Ts(this.element)}setText(e){if(this.text!==e&&!this.iconName){if(!this.textElement){this.textElement=document.createElement("div"),this.textElement.classList.add("toolbar-text","hidden");const e=this.element.querySelector(".toolbar-dropdown-arrow");this.element.insertBefore(this.textElement,e)}this.textElement.textContent=e,this.textElement.classList.toggle("hidden",!e),this.text=e}}setAdorner(e){this.iconName||(this.adorner?(e.replaceWith(e),this.element.firstChild&&this.element.removeChild(this.element.firstChild)):this.adorner=e,this.element.prepend(e))}setDarkText(){this.element.classList.add("dark-text")}turnShrinkable(){this.element.classList.add("toolbar-has-dropdown-shrinkable")}setTriggerDelay(e){this.#m=e}mouseDown(e){this.enabled&&1===e.buttons&&(this.triggerTimeoutId||(this.triggerTimeoutId=window.setTimeout(this.trigger.bind(this,e),this.#m)))}trigger(e){delete this.triggerTimeoutId;const t=new bi(e,{useSoftMenu:this.useSoftMenu,keepOpen:this.keepOpen,x:this.element.getBoundingClientRect().left,y:this.element.getBoundingClientRect().top+this.element.offsetHeight,onSoftMenuClosed:()=>setTimeout((()=>this.element.removeAttribute("aria-expanded")),50)});this.contextMenuHandler(t),this.element.setAttribute("aria-expanded","true"),t.show()}clicked(e){this.triggerTimeoutId&&clearTimeout(this.triggerTimeoutId),this.trigger(e)}}class Ji extends Qi{defaultTitle;setting;willAnnounceState;constructor(e,t,i,n,s){super(i,t,n,s),this.defaultTitle=i,this.setting=e,this.settingChanged(),this.setting.addChangeListener(this.settingChanged,this),this.willAnnounceState=!1}settingChanged(){const e=this.setting.get();this.setToggled(e);const t=Ui(e?ji.pressed:ji.notPressed);this.willAnnounceState&&co(t),this.willAnnounceState=!1,this.setTitle(this.defaultTitle)}clicked(e){this.willAnnounceState=!0,this.setting.set(this.isToggled()),super.clicked(e)}}class en extends Ki{constructor(e){const t=document.createElement("div");t.classList.add(e?"toolbar-spacer":"toolbar-divider"),super(t)}}class tn extends Ki{constructor(e,t,i,n,o){o||(o=document.createElement("select")),super(o),e&&this.element.addEventListener("change",e,!1),to(this.element,t),super.setTitle(t),i&&this.element.classList.add(i),n&&this.element.setAttribute("jslog",`${s.dropDown().track({change:!0}).context(n)}`)}size(){return this.element.childElementCount}options(){return Array.prototype.slice.call(this.element.children,0)}addOption(e){this.element.appendChild(e)}createOption(e,t,n){const o=this.element.createChild("option");return o.text=e,void 0!==t&&(o.value=t),n||(n=t?i.StringUtilities.toKebabCase(t):void 0),o.setAttribute("jslog",`${s.item(n).track({click:!0})}`),o}applyEnabledState(e){super.applyEnabledState(e),this.element.disabled=!e}removeOption(e){this.element.removeChild(e)}removeOptions(){this.element.removeChildren()}selectedOption(){return this.element.selectedIndex>=0?this.element[this.element.selectedIndex]:null}select(e){this.element.selectedIndex=Array.prototype.indexOf.call(this.element,e)}setSelectedIndex(e){this.element.selectedIndex=e}selectedIndex(){return this.element.selectedIndex}setMaxWidth(e){this.element.style.maxWidth=e+"px"}setMinWidth(e){this.element.style.minWidth=e+"px"}}class nn extends Ki{inputElement;constructor(e,t,i,n){super($n.create(e)),this.inputElement=this.element.checkboxElement,t&&(gt.install(this.inputElement,t),gt.install(this.element.textElement,t)),i&&this.inputElement.addEventListener("click",i,!1),n&&this.inputElement.setAttribute("jslog",`${s.toggle().track({change:!0}).context(n)}`)}checked(){return this.inputElement.checked}setChecked(e){this.inputElement.checked=e}applyEnabledState(e){super.applyEnabledState(e),this.inputElement.disabled=!e}setIndeterminate(e){this.inputElement.indeterminate=e}}const sn=[];var on=Object.freeze({__proto__:null,Toolbar:_i,ToolbarButton:qi,ToolbarCheckbox:nn,ToolbarComboBox:tn,ToolbarFilter:Gi,ToolbarInput:Xi,ToolbarItem:Ki,ToolbarItemWithCompactLayout:class extends Ki{setCompactLayout(e){this.dispatchEventToListeners("CompactLayoutUpdated",e)}},ToolbarMenuButton:Zi,ToolbarSeparator:en,ToolbarSettingCheckbox:class extends nn{constructor(e,t,i){super(i||e.title(),t,void 0,e.name),Ii(this.inputElement,e)}},ToolbarSettingComboBox:class extends tn{optionsInternal;setting;muteSettingListener;constructor(e,t,i){super(null,i,void 0,t.name),this.optionsInternal=e,this.setting=t,this.element.addEventListener("change",this.valueChanged.bind(this),!1),this.setOptions(e),t.addChangeListener(this.settingChanged,this)}setOptions(e){this.optionsInternal=e,this.element.removeChildren();for(let t=0;t<e.length;++t){const i=e[t],n=this.createOption(i.label,i.value);this.element.appendChild(n),this.setting.get()===i.value&&this.setSelectedIndex(t)}}value(){return this.optionsInternal[this.selectedIndex()].value}settingChanged(){if(this.muteSettingListener)return;const e=this.setting.get();for(let t=0;t<this.optionsInternal.length;++t)if(e===this.optionsInternal[t].value){this.setSelectedIndex(t);break}}valueChanged(e){const t=this.optionsInternal[this.selectedIndex()];this.muteSettingListener=!0,this.setting.set(t.value),this.muteSettingListener=!1}},ToolbarSettingToggle:Ji,ToolbarText:$i,ToolbarToggle:Qi,registerToolbarItem:function(e){sn.push(e)}}),rn={cssText:`:host{padding:0;margin:0;display:inline-flex;flex-shrink:0;align-items:center!important;overflow:hidden;white-space:nowrap}input{height:12px;width:12px;flex-shrink:0;accent-color:var(--sys-color-primary-bright);color:var(--sys-color-on-primary);&:not(.small){margin:6px}}input.inside-datagrid{height:10px;width:10px}.dt-checkbox-text{overflow:hidden;text-overflow:ellipsis;input:disabled ~ &{opacity:38%}}.dt-checkbox-subtitle{color:var(--sys-color-token-subtle);white-space:break-spaces}@media (forced-colors: active){input.dt-checkbox-theme-preserve{forced-color-adjust:none}input.dt-checkbox-theme-preserve:active{background:HighlightText}input.dt-checkbox-theme-preserve:checked,\n input.dt-checkbox-theme-preserve:active:checked{background:Highlight;border-color:Highlight}input.dt-checkbox-theme-preserve:hover:enabled{border-color:Highlight}input.dt-checkbox-theme-preserve:active::before,\n input.dt-checkbox-theme-preserve:active::after{background-color:Highlight}input.dt-checkbox-theme-preserve:checked::before,\n input.dt-checkbox-theme-preserve:checked::after,\n input.dt-checkbox-theme-preserve:active:checked::before,\n input.dt-checkbox-theme-preserve:active:checked::after{background-color:HighlightText}input.dt-checkbox-theme-preserve:hover:checked::before,\n input.dt-checkbox-theme-preserve:hover:checked::after{background-color:Highlight!important}input.dt-checkbox-theme-preserve:hover:checked{background:HighlightText}}\n/*# sourceURL=${import.meta.resolve("./checkboxTextLabel.css")} */\n`},an={cssText:`.widget{box-sizing:border-box;max-width:400px;overflow:hidden}.header{display:flex;margin:var(--sys-size-5) var(--sys-size-5) var(--sys-size-5) var(--sys-size-8);padding-top:var(--sys-size-3);font:var(--sys-typescale-body2-medium)}.message{font:var(--sys-typescale-body4-regular);white-space:pre;margin:0 var(--sys-size-8)}.button{text-align:center;margin:var(--sys-size-6) var(--sys-size-8) var(--sys-size-8) var(--sys-size-8);display:flex;flex-direction:row-reverse;gap:var(--sys-size-5)}.button button{min-width:100px}.reason{color:var(--sys-color-error);margin-top:10px}.message span{white-space:normal;word-wrap:break-word;max-width:100%;display:inline-block;overflow:hidden;text-overflow:ellipsis}\n/*# sourceURL=${import.meta.resolve("./confirmDialog.css")} */\n`},ln={cssText:`:host{display:inline-flex;border:1px solid var(--sys-color-neutral-outline);border-radius:4px;position:relative;vertical-align:sub;margin:2px;background-color:var(--sys-color-cdt-base-container);justify-content:center;width:28px}:host:hover{border:none;background-color:var(--sys-color-state-hover-on-subtle)}\n/*# sourceURL=${import.meta.resolve("./inlineButton.css")} */\n`},dn={cssText:`*{box-sizing:border-box;min-width:0;min-height:0}:root{height:100%;overflow:hidden;interpolate-size:allow-keywords}body{height:100%;width:100%;position:relative;overflow:hidden;margin:0;cursor:default;font-family:var(--default-font-family);font-size:12px;tab-size:4;user-select:none;color:var(--sys-color-on-surface);background:var(--sys-color-cdt-base-container)}:focus{outline-width:0}.monospace{font-family:var(--monospace-font-family);font-size:var(\n --monospace-font-size\n )!important}.source-code{font-family:var(--source-code-font-family);font-size:var(\n --source-code-font-size\n )!important;white-space:pre-wrap;&:not(input)::selection{color:var(--sys-color-on-surface)}}.source-code.breakpoint{white-space:nowrap}.source-code .devtools-link.text-button{max-width:100%;overflow:hidden;text-overflow:ellipsis}img{-webkit-user-drag:none}iframe,\na img{border:none}.fill{position:absolute;inset:0}iframe.fill{width:100%;height:100%}.widget{position:relative;flex:auto;contain:style}.hbox{display:flex;flex-direction:row!important;position:relative}.vbox{display:flex;flex-direction:column!important;position:relative}.view-container > devtools-toolbar{border-bottom:1px solid var(--sys-color-divider)}.flex-auto{flex:auto}.flex-none{flex:none}.flex-centered{display:flex;align-items:center;justify-content:center}.overflow-auto{overflow:auto;background-color:var(--sys-color-cdt-base-container)}iframe.widget{position:absolute;width:100%;height:100%;inset:0}.hidden{display:none!important}.highlighted-search-result{border-radius:1px;background-color:var(--sys-color-yellow-container);outline:1px solid var(--sys-color-yellow-container)}.link{cursor:pointer;text-decoration:underline;color:var(--sys-color-primary);outline-offset:2px}button,\ninput,\nselect{font-family:inherit;font-size:inherit}select option,\nselect optgroup,\ninput{background-color:var(--sys-color-cdt-base-container)}input{color:inherit;&[type="checkbox"]{position:relative;outline:none;display:flex;align-items:center;justify-content:center;&:hover::after,\n &:active::before{content:"";height:24px;width:24px;border-radius:var(--sys-shape-corner-full);position:absolute}&:not(.-theme-preserve){accent-color:var(--sys-color-primary-bright);color:var(--sys-color-on-primary)}&:not(:disabled):hover::after{background-color:var(--sys-color-state-hover-on-subtle)}&:not(:disabled):active::before{background-color:var(--sys-color-state-ripple-neutral-on-subtle)}&:not(:disabled):focus-visible::before{content:"";height:15px;width:15px;border-radius:5px;position:absolute;border:2px solid var(--sys-color-state-focus-ring)}&.small:hover::after,\n &.small:active::before{height:12px;width:12px;border-radius:2px}}}input::placeholder{--override-input-placeholder-color:rgb(0 0 0/54%);color:var(--override-input-placeholder-color)}.theme-with-dark-background input::placeholder,\n:host-context(.theme-with-dark-background) input::placeholder{--override-input-placeholder-color:rgb(230 230 230/54%)}.harmony-input:not([type]),\n.harmony-input[type="number"],\n.harmony-input[type="text"]{padding:3px 6px;height:24px;border:1px solid var(--sys-color-neutral-outline);border-radius:4px;&.error-input,\n &:invalid{border-color:var(--sys-color-error)}&:not(.error-input, :invalid):focus{border-color:var(--sys-color-state-focus-ring)}&:not(.error-input, :invalid):hover:not(:focus){background:var(--sys-color-state-hover-on-subtle)}}input[type="radio"]{height:17px;width:17px;min-width:17px;border-radius:8px;vertical-align:sub;margin:0 5px 5px 0;accent-color:var(--sys-color-primary-bright);color:var(--sys-color-on-primary);&:focus{box-shadow:var(--legacy-focus-ring-active-shadow)}}@media (forced-colors: active){input[type="radio"]{--gradient-start:ButtonFace;--gradient-end:ButtonFace;&:checked{--gradient-start:Highlight;--gradient-end:Highlight}}}input[type="range"]{appearance:none;margin:0;padding:0;height:10px;width:88px;outline:none;background:none}input[type="range"]::-webkit-slider-thumb,\n.-theme-preserve{appearance:none;margin:0;padding:0;border:0;width:12px;height:12px;margin-top:-5px;border-radius:50%;background-color:var(--sys-color-primary)}input[type="range"]::-webkit-slider-runnable-track{appearance:none;margin:0;padding:0;width:100%;height:2px;background-color:var(--sys-color-surface-variant)}input[type="range"]:focus::-webkit-slider-thumb{box-shadow:0 0 0 2px var(--sys-color-inverse-primary)}input[type="range"]:disabled::-webkit-slider-thumb{background-color:var(--sys-color-state-disabled)}@media (forced-colors: active){input[type="range"]{forced-color-adjust:none}}.highlighted-search-result.current-search-result{--override-current-search-result-background-color:rgb(255 127 0/80%);border-radius:1px;padding:1px;margin:-1px;background-color:var(--override-current-search-result-background-color)}.dimmed{opacity:60%}.editing{box-shadow:var(--drop-shadow);background-color:var(--sys-color-cdt-base-container);text-overflow:clip!important;padding-left:2px;margin-left:-2px;padding-right:2px;margin-right:-2px;margin-bottom:-1px;padding-bottom:1px;opacity:100%!important}.editing,\n.editing *{color:var(\n --sys-color-on-surface\n )!important;text-decoration:none!important}select{appearance:none;user-select:none;height:var(--sys-size-11);border:var(--sys-size-1) solid var(--sys-color-neutral-outline);border-radius:var(--sys-shape-corner-extra-small);color:var(--sys-color-on-surface);font:inherit;margin:0;outline:none;padding:0 var(--sys-size-9) 0 var(--sys-size-5);background-image:var(--combobox-dropdown-arrow);background-color:transparent;background-position:right center;background-repeat:no-repeat;&:disabled{opacity:100%;border-color:transparent;color:var(--sys-color-state-disabled);background-color:var(--sys-color-state-disabled-container);pointer-events:none}&:enabled{&:hover{background-color:var(--sys-color-state-hover-on-subtle)}&:active{background-color:var(--sys-color-state-ripple-neutral-on-subtle)}&:hover:active{background:var(--combobox-dropdown-arrow),linear-gradient(var(--sys-color-state-hover-on-subtle),var(--sys-color-state-hover-on-subtle)),linear-gradient(var(--sys-color-state-ripple-neutral-on-subtle),var(--sys-color-state-ripple-neutral-on-subtle));background-position:right center;background-repeat:no-repeat}&:focus{outline:var(--sys-size-2) solid var(--sys-color-state-focus-ring);outline-offset:-1px}}}@media (forced-colors: active) and (prefers-color-scheme: light){:root,\n .theme-with-dark-background,\n :host-context(.theme-with-dark-background){--combobox-dropdown-arrow:var(--image-file-arrow-drop-down-light)}}@media (forced-colors: active) and (prefers-color-scheme: dark){:root,\n .theme-with-dark-background,\n :host-context(.theme-with-dark-background){--combobox-dropdown-arrow:var(--image-file-arrow-drop-down-dark)}}.chrome-select-label{margin:0 var(--sys-size-10);flex:none;p p{margin-top:0;color:var(--sys-color-token-subtle)}.reload-warning{margin-left:var(--sys-size-5)}}.settings-select{margin:0}select optgroup,\nselect option{background-color:var(--sys-color-cdt-base-container);color:var(--sys-color-on-surface)}.gray-info-message{text-align:center;font-style:italic;padding:6px;color:var(--sys-color-token-subtle);white-space:nowrap}.empty-state{margin:var(--sys-size-5);display:flex;flex-grow:1;justify-content:center;align-items:center;flex-direction:column;text-align:center;min-height:fit-content;min-width:fit-content;> *{max-width:var(--sys-size-29)}.empty-state-header{font:var(--sys-typescale-headline5);margin-bottom:var(--sys-size-3)}.empty-state-description{font:var(--sys-typescale-body4-regular);color:var(--sys-color-on-surface-subtle);> x-link{white-space:nowrap;margin-left:var(--sys-size-3)}}> devtools-button{margin-top:var(--sys-size-7)}}dt-icon-label{flex:none}.full-widget-dimmed-banner a{color:inherit}.full-widget-dimmed-banner{color:var(--sys-color-token-subtle);background-color:var(--sys-color-cdt-base-container);display:flex;justify-content:center;align-items:center;text-align:center;padding:20px;position:absolute;inset:0;font-size:13px;overflow:auto;z-index:500}.dot::before{content:var(--image-file-empty);width:6px;height:6px;border-radius:50%;outline:1px solid var(--icon-gap-default);left:9px;position:absolute;top:9px;z-index:1}.green::before{background-color:var(--sys-color-green-bright)}.purple::before{background-color:var(--sys-color-purple-bright)}.expandable-inline-button{background-color:var(--sys-color-cdt-base-container);color:var(--sys-color-on-surface);cursor:pointer;border-radius:3px}.undisplayable-text,\n.expandable-inline-button{border:none;padding:1px 3px;margin:0 2px;font-size:11px;font-family:sans-serif;white-space:nowrap;display:inline-block}.undisplayable-text::after,\n.expandable-inline-button::after{content:attr(data-text)}.undisplayable-text{color:var(--sys-color-state-disabled);font-style:italic}.expandable-inline-button:hover,\n.expandable-inline-button:focus-visible{background-color:var(--sys-color-state-hover-on-subtle)}.expandable-inline-button:focus-visible{background-color:var(--sys-color-state-focus-highlight)}::selection{background-color:var(--sys-color-state-text-highlight);color:var(--sys-color-state-on-text-highlight)}button.link{border:none;background:none;padding:3px}button.link:focus-visible{outline:2px solid var(--sys-color-state-focus-ring);outline-offset:2px;border-radius:var(--sys-shape-corner-full)}.data-grid-data-grid-node button.link:focus-visible{border-radius:var(--sys-shape-corner-extra-small);padding:0;margin-top:3px}@media (forced-colors: active){.dimmed,\n select:disabled{opacity:100%}.harmony-input:not([type]),\n .harmony-input[type="number"],\n .harmony-input[type="text"]{border:1px solid ButtonText}.harmony-input:not([type]):focus,\n .harmony-input[type="number"]:focus,\n .harmony-input[type="text"]:focus{border:1px solid Highlight}}input.custom-search-input::-webkit-search-cancel-button{appearance:none;width:16px;height:15px;margin-right:0;opacity:70%;mask-image:var(--image-file-cross-circle-filled);mask-position:center;mask-repeat:no-repeat;mask-size:99%;background-color:var(--icon-default)}input.custom-search-input::-webkit-search-cancel-button:hover{opacity:99%}.spinner::before{display:block;width:var(--dimension,24px);height:var(--dimension,24px);border:var(--override-spinner-size,3px) solid var(--override-spinner-color,var(--sys-color-token-subtle));border-radius:12px;clip:rect(0,var(--clip-size,15px),var(--clip-size,15px),0);content:"";position:absolute;animation:spinner-animation 1s linear infinite;box-sizing:border-box}@keyframes spinner-animation{from{transform:rotate(0)}to{transform:rotate(360deg)}}.adorner-container{display:inline-flex;vertical-align:middle}.adorner-container.hidden{display:none}.adorner-container devtools-adorner{margin-left:3px}:host-context(.theme-with-dark-background) devtools-adorner{--override-adorner-border-color:var(--sys-color-tonal-outline);--override-adorner-active-background-color:var(\n --sys-color-state-riple-neutral-on-subtle\n )}.panel{display:flex;overflow:hidden;position:absolute;inset:0;z-index:0;background-color:var(--sys-color-cdt-base-container)}.panel-sidebar{overflow-x:hidden;background-color:var(--sys-color-cdt-base-container)}iframe.extension{flex:auto;width:100%;height:100%}iframe.panel.extension{display:block;height:100%}@media (forced-colors: active){:root{--legacy-accent-color:Highlight;--legacy-focus-ring-inactive-shadow-color:ButtonText}}devtools-toolbar{& > *{position:relative;display:flex;background-color:transparent;flex:none;align-items:center;justify-content:center;height:var(--toolbar-height);border:none;white-space:pre;overflow:hidden;max-width:100%;color:var(--icon-default);cursor:default;& .devtools-link{color:var(--icon-default)}}.status-buttons{padding:0 var(--sys-size-2);gap:var(--sys-size-2)}& > :not(select){padding:0}& > devtools-issue-counter{margin-top:-4px;padding:0 1px}devtools-adorner.fix-perf-icon{--override-adorner-text-color:transparent;--override-adorner-border-color:transparent;--override-adorner-background-color:transparent}devtools-issue-counter.main-toolbar{margin-left:1px;margin-right:1px}.toolbar-dropdown-arrow{pointer-events:none;flex:none;top:2px}.toolbar-button.dark-text .toolbar-dropdown-arrow{color:var(--sys-color-on-surface)}.toolbar-button{white-space:nowrap;overflow:hidden;min-width:28px;background:transparent;border-radius:0;&[aria-haspopup="true"][aria-expanded="true"]{pointer-events:none}}.toolbar-item-search{min-width:5.2em;max-width:300px;flex:1 1 auto;justify-content:start;overflow:revert}.toolbar-text{margin:0 5px;flex:none;color:var(--ui-text)}.toolbar-text:empty{margin:0}.toolbar-has-dropdown{justify-content:space-between;height:var(--sys-size-9);padding:0 var(--sys-size-2) 0 var(--sys-size-4);margin:0 var(--sys-size-2);gap:var(--sys-size-2);border-radius:var(--sys-shape-corner-extra-small);&:hover::after,\n &:active::before{content:"";height:100%;width:100%;border-radius:inherit;position:absolute;top:0;left:0}&:hover::after{background-color:var(--sys-color-state-hover-on-subtle)}&:active::before{background-color:var(--sys-color-state-ripple-neutral-on-subtle)}&:focus-visible{outline:var(--sys-size-2) solid var(--sys-color-state-focus-ring)}&[disabled]{pointer-events:none;background-color:var(--sys-color-state-disabled-container);color:var(--sys-color-state-disabled)}}.toolbar-has-dropdown-shrinkable{flex-shrink:1}.toolbar-has-dropdown .toolbar-text{margin:0;text-overflow:ellipsis;flex:auto;overflow:hidden;text-align:right}.toolbar-button:not(.toolbar-has-dropdown):focus-visible::before{position:absolute;inset:2px;background-color:var(--sys-color-state-focus-highlight);border-radius:2px;content:"";z-index:-1}.toolbar-glyph{flex:none}.toolbar-button:disabled{opacity:50%}.toolbar-button.copied-to-clipboard::after{content:attr(data-content);position:fixed;margin-top:calc(2 * var(--toolbar-height));padding:3px 5px;color:var(--sys-color-token-subtle);background:var(--sys-color-cdt-base-container);animation:2s fade-out;font-weight:normal;border:1px solid var(--sys-color-divider);border-radius:3px}.toolbar-button.toolbar-state-on .toolbar-glyph{color:var(--icon-toggled)}.toolbar-state-on.toolbar-toggle-with-dot .toolbar-text::after{content:"";position:absolute;bottom:2px;background-color:var(--sys-color-primary-bright);width:4.5px;height:4.5px;border:2px solid var(--override-toolbar-background-color,--sys-color-cdt-base-container);border-radius:50%;right:0}.toolbar-button.toolbar-state-on.toolbar-toggle-with-red-color .toolbar-glyph,\n .toolbar-button.toolbar-state-off.toolbar-default-with-red-color\n .toolbar-glyph{color:var(\n --icon-error\n )!important}.toolbar-button:not(\n .toolbar-has-glyph,\n .toolbar-has-dropdown,\n .largeicon-menu,\n .toolbar-button-secondary\n ){font-weight:bold}.toolbar-button.dark-text .toolbar-text{color:var(\n --sys-color-on-surface\n )!important}.toolbar-button.toolbar-state-on .toolbar-text{color:var(--sys-color-primary)}.toolbar-button.toolbar-state-on:enabled:active .toolbar-text{color:var(--sys-color-primary-bright)}.toolbar-button:enabled:hover:not(:active) .toolbar-glyph{color:var(--sys-color-on-surface)}.toolbar-button:enabled:hover:not(:active) .toolbar-text{color:var(--sys-color-on-surface)}.toolbar-button.toolbar-state-on:enabled:hover:not(:active) .toolbar-glyph{color:var(--sys-color-primary)}.toolbar-button.toolbar-state-on:enabled:hover:not(:active) .toolbar-text{color:var(--sys-color-primary)}& > dt-checkbox{padding:0 5px 0 0}& > select{height:var(--sys-size-9);min-width:var(--sys-size-14)}.toolbar-input{box-shadow:inset 0 0 0 2px transparent;box-sizing:border-box;width:120px;height:var(--sys-size-9);padding:0 var(--sys-size-2) 0 var(--sys-size-5);margin:1px 3px;border-radius:100px;min-width:35px;position:relative;&.focused{box-shadow:inset 0 0 0 2px var(--sys-color-state-focus-ring)}&:not(:has(devtools-button:hover), .disabled):hover{background-color:var(--sys-color-state-hover-on-subtle)}&::before{content:"";box-sizing:inherit;height:100%;width:100%;position:absolute;left:0;background:var(--sys-color-cdt-base);z-index:-1}& > devtools-icon{color:var(--sys-color-on-surface-subtle);width:var(--sys-size-8);height:var(--sys-size-8);margin-right:var(--sys-size-3)}&.disabled > devtools-icon{color:var(--sys-color-state-disabled)}}.toolbar-filter .toolbar-input-clear-button{margin-right:var(--sys-size-4)}.toolbar-input-empty .toolbar-input-clear-button{display:none}.toolbar-prompt-proxy{flex:1}.toolbar-input-prompt{flex:1;overflow:hidden;white-space:nowrap;cursor:text;color:var(--sys-color-on-surface)}.toolbar-divider{background-color:var(--sys-color-divider);width:1px;margin:5px 4px;height:16px}.toolbar-spacer{flex:auto}.toolbar-button.emulate-active{background-color:var(--sys-color-surface-variant)}&:not([floating]) > :last-child:not(:first-child, select){flex-shrink:1;justify-content:left}&:not([floating]) > .toolbar-button:last-child:not(:first-child, select){justify-content:left;margin-right:2px}& > .highlight::before{content:"";position:absolute;inset:2px;border-radius:2px;background:var(--sys-color-neutral-container);z-index:-1}& > .highlight:focus-visible{background:var(--sys-color-tonal-container);& > .title{color:var(--sys-color-on-tonal-container)}}devtools-icon.leading-issue-icon{margin:0 7px}@media (forced-colors: active){.toolbar-button:disabled{opacity:100%;color:Graytext}devtools-toolbar > *,\n .toolbar-text{color:ButtonText}.toolbar-button:disabled .toolbar-text{color:Graytext}devtools-toolbar > select:disabled{opacity:100%;color:Graytext}.toolbar-button.toolbar-state-on .toolbar-glyph{forced-color-adjust:none;color:Highlight}.toolbar-button.toolbar-state-on .toolbar-text{forced-color-adjust:none;color:Highlight}.toolbar-button:enabled:hover:not(:active) .toolbar-text,\n .toolbar-button:enabled:focus:not(:active) .toolbar-text{color:HighlightText}.toolbar-button:disabled devtools-icon{color:GrayText}.toolbar-button:disabled .toolbar-glyph{color:GrayText}.toolbar-button:enabled.hover:not(:active) .toolbar-glyph{forced-color-adjust:none;color:Highlight}.toolbar-button:enabled:hover .toolbar-glyph,\n .toolbar-button:enabled:focus .toolbar-glyph,\n .toolbar-button:enabled:hover:not(:active) .toolbar-glyph,\n .toolbar-button:enabled:hover devtools-icon,\n .toolbar-button:enabled:focus devtools-icon{color:HighlightText}.toolbar-input{forced-color-adjust:none;background:canvas;box-shadow:var(--legacy-focus-ring-inactive-shadow)}.toolbar-input.focused,\n .toolbar-input:not(.toolbar-input-empty){forced-color-adjust:none;background:canvas;box-shadow:var(--legacy-focus-ring-active-shadow)}.toolbar-input:hover{box-shadow:var(--legacy-focus-ring-active-shadow)}devtools-toolbar .devtools-link{color:linktext}.toolbar-has-dropdown{forced-color-adjust:none;background:ButtonFace;color:ButtonText}}}@keyframes fade-out{from{opacity:100%}to{opacity:0%}}.webkit-css-property{color:var(--webkit-css-property-color,var(--sys-color-token-property-special))}.webkit-html-comment{color:var(--sys-color-token-comment)}.webkit-html-tag{color:var(--sys-color-token-tag)}.webkit-html-tag-name,\n.webkit-html-close-tag-name{color:var(--sys-color-token-tag)}.webkit-html-pseudo-element{color:var(--sys-color-token-pseudo-element)}.webkit-html-js-node,\n.webkit-html-css-node{color:var(--text-primary);white-space:pre-wrap}.webkit-html-text-node{color:var(--text-primary);unicode-bidi:-webkit-isolate}.webkit-html-entity-value{background-color:rgb(0 0 0/15%);unicode-bidi:-webkit-isolate}.webkit-html-doctype{color:var(--text-secondary)}.webkit-html-attribute-name{color:var(--sys-color-token-attribute);unicode-bidi:-webkit-isolate}.webkit-html-attribute-value{color:var(--sys-color-token-attribute-value);unicode-bidi:-webkit-isolate;word-break:break-all}.devtools-link{color:var(--text-link);text-decoration:underline;outline-offset:2px;.elements-disclosure &{color:var(--text-link)}devtools-icon{vertical-align:baseline;color:var(--sys-color-primary)}:focus .selected & devtools-icon{color:var(--sys-color-tonal-container)}&:focus-visible{outline-width:unset}&.invalid-link{color:var(--text-disabled);text-decoration:none}&:not(.devtools-link-prevent-click, .invalid-link){cursor:pointer}@media (forced-colors: active){&:not(.devtools-link-prevent-click){forced-color-adjust:none;color:linktext}&:focus-visible{background:Highlight;color:HighlightText}}}\n/*# sourceURL=${import.meta.resolve("./inspectorCommon.css")} */\n`},hn={cssText:`div{display:inline-flex;height:14px;align-items:center;vertical-align:middle;white-space:nowrap;padding:1px 4px;text-align:left;font-size:11px;line-height:normal;font-weight:bold;text-shadow:none;color:var(--sys-color-inverse-on-surface);border-radius:7px}div.verbose{background-color:var(--sys-color-token-attribute-value)}:host-context(.theme-with-dark-background) div.verbose{background-color:var(--sys-color-token-tag)}div.info{background-color:var(--sys-color-token-meta)}div.warning{background-color:var(--sys-color-token-attribute)}:host-context(.theme-with-dark-background) div.warning{background-color:var(--sys-color-token-attribute-value)}div.error{background-color:var(--sys-color-error-bright)}\n/*# sourceURL=${import.meta.resolve("./smallBubble.css")} */\n`};const cn={openInNewTab:"Open in new tab",copyLinkAddress:"Copy link address",copyFileName:"Copy file name",anotherProfilerIsAlreadyActive:"Another profiler is already active",promiseResolvedAsync:"Promise resolved (async)",promiseRejectedAsync:"Promise rejected (async)",asyncCall:"Async Call",anonymous:"(anonymous)",close:"Close",ok:"OK",cancel:"Cancel"},un=t.i18n.registerUIStrings("ui/legacy/UIUtils.ts",cn),mn=t.i18n.getLocalizedString.bind(void 0,un),pn="highlighted-search-result";function gn(e,t,i,n,s,o,r){let a;e.addEventListener("pointerdown",(function(o){const l=new vn,d=()=>l.elementDragStart(e,t,i,n,s,o);r?a=window.setTimeout(d,r):d()}),!1),r&&e.addEventListener("pointerup",(function(){a&&window.clearTimeout(a),a=null}),!1),null!==o&&(e.style.cursor=o||s||"")}function bn(e,t,i,n,s,o){(new vn).elementDragStart(e,t,i,n,s,o)}class vn{glassPaneInUse;elementDraggingEventListener;elementEndDraggingEventListener;dragEventsTargetDocument;dragEventsTargetDocumentTop;restoreCursorAfterDrag;constructor(){this.elementDragMove=this.elementDragMove.bind(this),this.elementDragEnd=this.elementDragEnd.bind(this),this.mouseOutWhileDragging=this.mouseOutWhileDragging.bind(this)}createGlassPane(){this.glassPaneInUse=!0,vn.glassPaneUsageCount++||(vn.glassPane=new cs,vn.glassPane.setPointerEventsBehavior("BlockedByGlassPane"),vn.documentForMouseOut&&vn.glassPane.show(vn.documentForMouseOut))}disposeGlassPane(){this.glassPaneInUse&&(this.glassPaneInUse=!1,--vn.glassPaneUsageCount||(vn.glassPane&&(vn.glassPane.hide(),vn.glassPane=null),vn.documentForMouseOut=null,vn.rootForMouseOut=null))}elementDragStart(e,t,i,n,s,o){const r=o;if(r.button||a.Platform.isMac()&&r.ctrlKey)return;if(this.elementDraggingEventListener)return;if(t&&!t(r))return;const l=r.target instanceof Node&&r.target.ownerDocument;this.elementDraggingEventListener=i,this.elementEndDraggingEventListener=n,console.assert((vn.documentForMouseOut||l)===l,"Dragging on multiple documents."),vn.documentForMouseOut=l,vn.rootForMouseOut=r.target instanceof Node&&r.target.getRootNode()||null,this.dragEventsTargetDocument=l;try{l.defaultView&&l.defaultView.top&&(this.dragEventsTargetDocumentTop=l.defaultView.top.document)}catch{this.dragEventsTargetDocumentTop=this.dragEventsTargetDocument}l.addEventListener("pointermove",this.elementDragMove,!0),l.addEventListener("pointerup",this.elementDragEnd,!0),vn.rootForMouseOut&&vn.rootForMouseOut.addEventListener("pointerout",this.mouseOutWhileDragging,{capture:!0}),this.dragEventsTargetDocumentTop&&l!==this.dragEventsTargetDocumentTop&&this.dragEventsTargetDocumentTop.addEventListener("pointerup",this.elementDragEnd,!0);const d=e;"string"==typeof s&&(this.restoreCursorAfterDrag=function(e){l.body.style.removeProperty("cursor"),d.style.cursor=e,this.restoreCursorAfterDrag=void 0}.bind(this,d.style.cursor),d.style.cursor=s,l.body.style.cursor=s),r.preventDefault()}mouseOutWhileDragging(){this.unregisterMouseOutWhileDragging(),this.createGlassPane()}unregisterMouseOutWhileDragging(){vn.rootForMouseOut&&vn.rootForMouseOut.removeEventListener("pointerout",this.mouseOutWhileDragging,{capture:!0})}unregisterDragEvents(){this.dragEventsTargetDocument&&(this.dragEventsTargetDocument.removeEventListener("pointermove",this.elementDragMove,!0),this.dragEventsTargetDocument.removeEventListener("pointerup",this.elementDragEnd,!0),this.dragEventsTargetDocumentTop&&this.dragEventsTargetDocument!==this.dragEventsTargetDocumentTop&&this.dragEventsTargetDocumentTop.removeEventListener("pointerup",this.elementDragEnd,!0),delete this.dragEventsTargetDocument,delete this.dragEventsTargetDocumentTop)}elementDragMove(e){1===e.buttons?this.elementDraggingEventListener&&this.elementDraggingEventListener(e)&&this.cancelDragEvents(e):this.elementDragEnd(e)}cancelDragEvents(e){this.unregisterDragEvents(),this.unregisterMouseOutWhileDragging(),this.restoreCursorAfterDrag&&this.restoreCursorAfterDrag(),this.disposeGlassPane(),delete this.elementDraggingEventListener,delete this.elementEndDraggingEventListener}elementDragEnd(e){const t=this.elementEndDraggingEventListener;this.cancelDragEvents(e),e.preventDefault(),t&&t(e)}static glassPaneUsageCount=0;static glassPane=null;static documentForMouseOut=null;static rootForMouseOut=null}function fn(){if(xn.size)return!0;const e=i.DOMUtilities.deepActiveElement(document);return!!e&&(e.classList.contains("text-prompt")||"INPUT"===e.nodeName||"TEXTAREA"===e.nodeName||"true"===e.contentEditable||"plaintext-only"===e.contentEditable)}function wn(e,t){if(t){if(xn.has(e))return!1;e.classList.add("being-edited"),xn.add(e)}else{if(!xn.has(e))return!1;e.classList.remove("being-edited"),xn.delete(e)}return!0}const xn=new Set,yn=/^(-?(?:\d+(?:\.\d+)?|\.\d+))$/,En="  \t\n\"':;,/()";function In(e){let t=null;return e instanceof WheelEvent?e.deltaY<0||e.deltaX<0?t="Up":(e.deltaY>0||e.deltaX>0)&&(t="Down"):e instanceof MouseEvent?e.movementX<0?t="Down":e.movementX>0&&(t="Up"):e instanceof KeyboardEvent&&("ArrowUp"===e.key||"PageUp"===e.key?t="Up":"ArrowDown"!==e.key&&"PageDown"!==e.key||(t="Down")),t}function Sn(e,t,i){const n=In(t);if(!n)return null;const s=t;let o="mousemove"===s.type?Math.abs(s.movementX):1;A.eventHasCtrlEquivalentKey(s)?o*=100:s.shiftKey?o*=10:s.altKey&&(o*=.1),"Down"===n&&(o*=-1),i&&(o*=i);const r=Number((e+o).toFixed(6));return String(r).match(yn)?r:null}function Cn(e,t,n){let s,o,r,a=null,l=/(.*#)([\da-fA-F]+)(.*)/.exec(e);return l?.length?(s=l[1],o=l[3],r=function(e,t){const n=In(t);if(!n)return null;const s=t,o=parseInt(e,16);if(isNaN(o)||!isFinite(o))return null;const r=e.length,a=r/3;if(1!==a&&2!==a)return null;let l=0;A.eventHasCtrlEquivalentKey(s)&&(l+=Math.pow(16,2*a)),s.shiftKey&&(l+=Math.pow(16,a)),s.altKey&&(l+=1),0===l&&(l=1),"Down"===n&&(l*=-1);const d=Math.pow(16,r)-1;let h=i.NumberUtilities.clamp(o+l,0,d).toString(16).toUpperCase();for(let e=0,t=r-h.length;e<t;++e)h="0"+h;return h}(l[2],t),null!==r&&(a=s+r+o)):(l=/(.*?)(-?(?:\d+(?:\.\d+)?|\.\d+))(.*)/.exec(e),l?.length&&(s=l[1],o=l[3],r=Sn(parseFloat(l[2]),t),null!==r&&(a=n?n(s,r,o):s+r+o))),a}function Tn(e){if(e instanceof MouseEvent){const{type:t}=e;return"mousemove"===t||"wheel"===t}if(e instanceof KeyboardEvent){const{key:t}=e;return"ArrowUp"===t||"ArrowDown"===t||"PageUp"===t||"PageDown"===t}return!1}function kn(){return mn(cn.openInNewTab)}function Mn(){return mn(cn.copyLinkAddress)}function Ln(e,t){t.target instanceof Window&&t.target.document.nodeType===Node.DOCUMENT_NODE&&e.body.classList.remove("inactive")}function Pn(e,t){t.target instanceof Window&&t.target.document.nodeType===Node.DOCUMENT_NODE&&e.body.classList.add("inactive")}class Dn{element;previous;constructor(e){this.element=e,this.previous=i.DOMUtilities.deepActiveElement(e.ownerDocument),e.focus()}restore(){this.element&&(this.element.hasFocus()&&this.previous&&this.previous.focus(),this.previous=null,this.element=null)}}function An(e,t,i){return zn(e,t,pn,i)}function zn(e,t,i,n){n=n||[];const s=[],o=e.childTextNodes(),r=o.map((function(e){return e.textContent})).join(""),a=e.ownerDocument;if(0===o.length)return s;const l=[];let d=0;for(const e of o){const t=new p.TextRange.SourceRange(d,e.textContent?e.textContent.length:0);d=t.offset+t.length,l.push(t)}let h=0;for(let e=0;e<t.length;++e){const d=t[e].offset,c=d+t[e].length;for(;h<o.length&&l[h].offset+l[h].length<=d;)h++;let u=h;for(;u<o.length&&l[u].offset+l[u].length<c;)u++;if(u===o.length)break;const m=a.createElement("span");m.className=i,m.textContent=r.substring(d,c);const p=o[u],g=p.textContent||"";if(p.textContent=g.substring(c-l[u].offset),n.push({node:p,type:"changed",oldText:g,newText:p.textContent,nextSibling:void 0,parent:void 0}),h===u&&p.parentElement){p.parentElement.insertBefore(m,p),n.push({node:m,type:"added",nextSibling:p,parent:p.parentElement,oldText:void 0,newText:void 0}),s.push(m);const e=a.createTextNode(g.substring(0,d-l[h].offset));p.parentElement.insertBefore(e,m),n.push({node:e,type:"added",nextSibling:m,parent:p.parentElement,oldText:void 0,newText:void 0})}else{const e=o[h],t=e.textContent||"",i=e.nextSibling;e.parentElement&&(e.parentElement.insertBefore(m,i),n.push({node:m,type:"added",nextSibling:i||void 0,parent:e.parentElement,oldText:void 0,newText:void 0}),s.push(m)),e.textContent=t.substring(0,d-l[h].offset),n.push({node:e,type:"changed",oldText:t,newText:e.textContent,nextSibling:void 0,parent:void 0});for(let e=h+1;e<u;e++){const t=o[e],i=t.textContent;t.textContent="",n.push({node:t,type:"changed",oldText:i||void 0,newText:t.textContent,nextSibling:void 0,parent:void 0})}}h=u,l[h].offset=c,l[h].length=p.textContent.length}return s}function Rn(e,t){const i=e.parentElement,n=e.nextSibling;(t=t||e.ownerDocument.body).appendChild(e),e.positionAt(0,0);const s=e.getBoundingClientRect();return e.positionAt(void 0,void 0),i?i.insertBefore(e,n):e.remove(),new Me(s.width,s.height)}class Bn{handlers;autoInvoke;constructor(e){this.handlers=null,this.autoInvoke=e}add(e,t){this.handlers||(this.handlers=new Map,this.autoInvoke&&this.scheduleInvoke());let i=this.handlers.get(e);i||(i=new Set,this.handlers.set(e,i)),i.add(t)}scheduleInvoke(){this.handlers&&requestAnimationFrame(this.invoke.bind(this))}invoke(){const e=this.handlers;if(this.handlers=null,e)for(const[t,i]of e)for(const e of i)e.call(t)}}let On=0,Fn=null;function Wn(e,t){Fn||(Fn=new Bn(!0)),Fn.add(e,t)}class Hn{element;callback;editKey;longClickData;longClickInterval;constructor(e,t,n=e=>i.KeyboardUtilities.isEnterOrSpaceKey(e)){this.element=e,this.callback=t,this.editKey=n,this.enable()}reset(){this.longClickInterval&&(clearInterval(this.longClickInterval),delete this.longClickInterval)}enable(){if(this.longClickData)return;const e=function(e){if(this.editKey(e)){const t=this.callback;this.longClickInterval=window.setTimeout(t.bind(null,e),Hn.TIME_MS)}}.bind(this),t=function(e){this.editKey(e)&&this.reset()}.bind(this),i=function(e){if(1!==e.which)return;const t=this.callback;this.longClickInterval=window.setTimeout(t.bind(null,e),Hn.TIME_MS)}.bind(this),n=function(e){if(1!==e.which)return;this.reset()}.bind(this),s=this.reset.bind(this);this.element.addEventListener("keydown",e,!1),this.element.addEventListener("keyup",t,!1),this.element.addEventListener("pointerdown",i,!1),this.element.addEventListener("pointerout",s,!1),this.element.addEventListener("pointerup",n,!1),this.element.addEventListener("click",s,!0),this.longClickData={mouseUp:n,mouseDown:i,reset:s}}dispose(){this.longClickData&&(this.element.removeEventListener("pointerdown",this.longClickData.mouseDown,!1),this.element.removeEventListener("pointerout",this.longClickData.reset,!1),this.element.removeEventListener("pointerup",this.longClickData.mouseUp,!1),this.element.addEventListener("click",this.longClickData.reset,!0),delete this.longClickData)}static TIME_MS=200}function Nn(e){return e||mn(cn.anonymous)}const jn=(e,t)=>{const i=e.ownerDocument.createTextNode(t);return e.appendChild(i),i};function Vn(e,t,i){const n=new o.Button.Button;return i?.className&&(n.className=i.className),n.textContent=e,n.iconName=i?.icon,n.variant=i?.variant?i.variant:"outlined",t&&n.addEventListener("click",t),i?.jslogContext&&n.setAttribute("jslog",`${s.action().track({click:!0}).context(i.jslogContext)}`),i?.title&&n.setAttribute("title",i.title),n.type="button",n}function Un(e,t,i){const n=document.createElement("input");return e&&(n.className=e),n.spellcheck=!1,n.classList.add("harmony-input"),t&&(n.type=t),i&&n.setAttribute("jslog",`${s.textField().track({keydown:"Enter",change:!0}).context(i)}`),n}function _n(e="search",t){const i=[""];let n=0;const s=document.createElement("input");return s.type=e,t&&(s.className=t),s.addEventListener("input",(function(e){i.length===n+1&&(i[n]=s.value)}),!1),s.addEventListener("keydown",(function(e){if(e.keyCode===K.Up.code)n=Math.max(n-1,0),s.value=i[n],s.dispatchEvent(new Event("input",{bubbles:!0,cancelable:!0})),e.consume(!0);else if(e.keyCode===K.Down.code)n=Math.min(n+1,i.length-1),s.value=i[n],s.dispatchEvent(new Event("input",{bubbles:!0,cancelable:!0})),e.consume(!0);else if(e.keyCode===K.Enter.code){if(i.length>1&&i[i.length-2]===s.value)return;i[i.length-1]=s.value,n=i.length-1,i.push("")}}),!1),s}function Kn(e,t,i){const n=new Option(e,t||e);return i&&n.setAttribute("jslog",`${s.item(i).track({click:!0})}`),n}class $n extends HTMLElement{shadowRootInternal;checkboxElement;textElement;constructor(){super(),$n.lastId=$n.lastId+1;const e="ui-checkbox-label"+$n.lastId;this.shadowRootInternal=rs(this,{cssFile:rn}),this.checkboxElement=this.shadowRootInternal.createChild("input"),this.checkboxElement.type="checkbox",this.checkboxElement.setAttribute("id",e),this.textElement=this.shadowRootInternal.createChild("label","dt-checkbox-text"),this.textElement.setAttribute("for",e),this.shadowRootInternal.createChild("slot")}static create(e,t,i,n,o){const r=document.createElement("dt-checkbox");return r.checkboxElement.checked=Boolean(t),n&&r.checkboxElement.setAttribute("jslog",`${s.toggle().track({change:!0}).context(n)}`),void 0!==e&&(r.textElement.textContent=e,r.checkboxElement.title=e,void 0!==i&&(r.textElement.createChild("div","dt-checkbox-subtitle").textContent=i)),r.checkboxElement.classList.toggle("small",o),r}static createWithStringLiteral(e,t,i,n,s){const o=e;return $n.create(o,t,i,n,s)}static lastId=0}customElements.define("dt-checkbox",$n);class qn extends HTMLElement{#p;constructor(){super();const e=rs(this);this.#p=new r.Icon.Icon,this.#p.style.setProperty("margin-right","4px"),this.#p.style.setProperty("vertical-align","baseline"),e.appendChild(this.#p),e.createChild("slot")}set data(e){this.#p.data=e,"14px"===e.height?this.#p.style.setProperty("margin-bottom","-2px"):"20px"===e.height&&this.#p.style.setProperty("margin-bottom","2px")}}customElements.define("dt-icon-label",qn);class Xn extends HTMLElement{textElement;constructor(){super();const e=rs(this,{cssFile:hn});this.textElement=e.createChild("div"),this.textElement.className="info",this.textElement.createChild("slot")}set type(e){this.textElement.className=e}}customElements.define("dt-small-bubble",Xn);class Gn extends HTMLElement{#g;constructor(){super();const e=rs(this);this.#g=new o.Button.Button,this.#g.data={variant:"icon",iconName:"cross"},this.#g.classList.add("close-button"),this.#g.setAttribute("jslog",`${s.close().track({click:!0})}`),gt.install(this.#g,mn(cn.close)),to(this.#g,mn(cn.close)),e.appendChild(this.#g)}setAccessibleName(e){to(this.#g,e)}setSize(e){this.#g.size=e}setTabbable(e){this.#g.tabIndex=e?0:-1}}function Yn(e,t,i,n){if(i<=10)return"";t.length>200&&(t=n(t,200));const s=Qn(e,t);if(s<=i)return t;let o=0,r=t.length,a=0,l=s;for(;o<r&&a!==l&&a!==i;){const s=Math.ceil(o+(r-o)*(i-a)/(l-a)),d=Qn(e,n(t,s));d<=i?(o=s,a=d):(r=s-1,l=d)}return"…"!==(t=n(t,o))?t:""}function Qn(e,t){if(t.length>200)return e.measureText(t).width;Zn||(Zn=new Map);const i=e.font;let n=Zn.get(i);n||(n=new Map,Zn.set(i,n));let s=n.get(t);return s||(s=e.measureText(t).width,n.set(t,s)),s}customElements.define("dt-close-button",Gn);let Zn=null;const Jn=(e,t)=>{let i=e;for(;i&&i!==e.ownerDocument;i=i.parentNodeOrShadowHost())for(let e=0;e<t.length;++e)if(i.nodeName.toLowerCase()===t[e].toLowerCase())return i;return null},es=(e,t,i)=>{let n=e,s=null;for(;n;){const e=n.elementFromPoint(t,i);if(!e||s===e)break;s=e,n=s.shadowRoot}return s},ts=e=>{const t=e;if(!(t.which||t.pageX||t.pageY||t.clientX||t.clientY||t.movementX||t.movementY))return null;const i=t.target&&t.target.getComponentRoot();return i?es(i,t.pageX,t.pageY):null},is=[];function ns(e){return is.filter((function(t){if(!t.contextTypes)return!0;for(const i of t.contextTypes())if(e instanceof i)return!0;return!1}))}function ss(e){const t=e.target,n=t?t.ownerDocument:null,s=n?i.DOMUtilities.deepActiveElement(n):null;!function(e){for(;e&&!et.get(e);)e=e.parentNodeOrShadowHost();if(!e)return;let t=et.get(e);for(;t?.parentWidget();){const e=t.parentWidget();if(!e)break;e.defaultFocusedChild=t,t=e}}(s),function(e){e=e?.parentNodeOrShadowHost()??null;const t=customElements.get("x-widget");let i=null;for(;e;)t&&e instanceof t&&(i&&(e.defaultFocusedElement=i),i=e),e=e.parentNodeOrShadowHost()}(s)}function os(e){u.ThemeSupport.instance().appendStyle(e,dn),u.ThemeSupport.instance().appendStyle(e,o.textButtonStyles)}function rs(e,t={delegatesFocus:void 0,cssFile:void 0}){const{cssFile:i,delegatesFocus:n}=t,s=e.attachShadow({mode:"open",delegatesFocus:n});if(os(s),Array.isArray(i))for(const e of i)u.ThemeSupport.instance().appendStyle(s,e);else i&&u.ThemeSupport.instance().appendStyle(s,i);return s.addEventListener("focus",ss,!0),s}let as;function ls(e){if("number"==typeof as)return as;if(!e)return 16;const t=e.createElement("div"),i=e.createElement("div");return t.setAttribute("style","display: block; width: 100px; height: 100px; overflow: scroll;"),i.setAttribute("style","height: 200px"),t.appendChild(i),e.body.appendChild(t),as=t.offsetWidth-t.clientWidth,e.body.removeChild(t),as}function ds(e){if(e=new URL(`${e}`),["developer.chrome.com","developers.google.com","web.dev"].includes(e.hostname)){e.searchParams.has("utm_source")||e.searchParams.append("utm_source","devtools");const{channel:t}=n.Runtime.hostConfig;e.searchParams.has("utm_campaign")||"string"!=typeof t||e.searchParams.append("utm_campaign",t)}a.InspectorFrontendHost.InspectorFrontendHostInstance.openInNewTab(i.DevToolsPath.urlString`${e}`)}var hs=Object.freeze({__proto__:null,CheckboxLabel:$n,ConfirmDialog:class{static async show(e,t,i,n){const s=new bs(n?.jslogContext);s.setSizeBehavior("MeasureContent"),s.setDimmed(!0),to(s.contentElement,e);const o=rs(s.contentElement,{cssFile:an}).createChild("div","widget");t&&(o.createChild("span","header").textContent=t),o.createChild("div","message").createChild("span").textContent=e;const r=o.createChild("div","button"),a=await new Promise((e=>{const t=Vn(n?.okButtonLabel||mn(cn.ok),(()=>e(!0)),{jslogContext:"confirm",variant:"primary"});r.appendChild(t),r.appendChild(Vn(n?.cancelButtonLabel||mn(cn.cancel),(()=>e(!1)),{jslogContext:"cancel"})),s.setOutsideClickCallback((t=>{t.consume(),e(!1)})),s.show(i),t.focus()}));return s.hide(),a}},DevToolsCloseButton:Gn,DevToolsIconLabel:qn,DevToolsSmallBubble:Xn,ElementFocusRestorer:Dn,LongClickController:Hn,MaxLengthForDisplayedURLs:150,MessageDialog:class{static async show(e,t,i,n){const s=new bs(n);s.setSizeBehavior("MeasureContent"),s.setDimmed(!0);const o=rs(s.contentElement,{cssFile:an}).createChild("div","widget");await new Promise((n=>{const r=Vn(mn(cn.ok),n,{jslogContext:"confirm",variant:"primary"});o.createChild("span","header").textContent=e,o.createChild("div","message").createChild("span").textContent=t,o.createChild("div","button").appendChild(r),s.setOutsideClickCallback((e=>{e.consume(),n(void 0)})),s.show(i),r.focus()})),s.hide()}},Renderer:class{static async render(e,t){if(!e)throw new Error("Can't render "+e);const i=ns(e)[0];if(!i)return null;const n=await i.loadRenderer();return await n.render(e,t)}},StyleValueDelimiters:En,addPlatformClass:function(e){e.classList.add("platform-"+a.Platform.platform())},animateFunction:function(e,t,n,s,o){const r=e.performance.now();let a=e.requestAnimationFrame((function l(d){const h=i.NumberUtilities.clamp((d-r)/s,0,1);t(...n.map((e=>e.from+(e.to-e.from)*h))),h<1?a=e.requestAnimationFrame(l):o&&o()}));return()=>e.cancelAnimationFrame(a)},anotherProfilerActiveLabel:function(){return mn(cn.anotherProfilerIsAlreadyActive)},applyDomChanges:function(e){for(let t=0,i=e.length;t<i;++t){const i=e[t];switch(i.type){case"added":i.parent?.insertBefore(i.node,i.nextSibling??null);break;case"changed":i.node.textContent=i.newText??null}}},asyncStackTraceLabel:function(e,t){if(e){if("Promise.resolve"===e)return mn(cn.promiseResolvedAsync);if("Promise.reject"===e)return mn(cn.promiseRejectedAsync);if("await"===e&&0!==t.length){e=`await in ${Nn(t[t.length-1].functionName)}`}return e}return mn(cn.asyncCall)},beautifyFunctionName:Nn,bindInput:function(e,t,i,n,s){function o(t){if(t===e.value)return;const{valid:n}=i(t);e.classList.toggle("error-input",!n),e.value=t}return e.addEventListener("change",(function(){const{valid:n}=i(e.value);e.classList.toggle("error-input",!n),n&&t(e.value)}),!1),e.addEventListener("input",(function(){e.classList.toggle("error-input",!i(e.value))}),!1),e.addEventListener("keydown",(function(r){if("Enter"===r.key){const{valid:n}=i(e.value);return n&&t(e.value),void r.preventDefault()}if(!n)return;const a=Sn(parseFloat(e.value),r,s);if(null===a)return;const l=String(a),{valid:d}=i(l);d&&o(l);r.preventDefault()}),!1),e.addEventListener("focus",e.select.bind(e),!1),o},copyFileNameLabel:function(){return mn(cn.copyFileName)},copyLinkAddressLabel:Mn,createFileSelectorElement:function(e,t){const i=document.createElement("input");return i.type="file",t&&i.setAttribute("accept",t),i.style.display="none",i.tabIndex=-1,i.addEventListener("change",(()=>{i.files?.length&&e(i.files[0])})),i.addEventListener("click",(()=>{i.value=""})),i},createHistoryInput:_n,createIconLabel:function(e){const t=document.createElement("dt-icon-label");return e.title&&(t.createChild("span").textContent=e.title),t.data={iconName:e.iconName,color:e.color??"var(--icon-default)",width:e.width??"14px",height:e.height??"14px"},t},createInlineButton:function(e){const t=document.createElement("span"),i=rs(t,{cssFile:ln});return t.classList.add("inline-button"),i.createChild("devtools-toolbar").appendToolbarItem(e),t},createInput:Un,createLabel:function(e,t,i){const n=document.createElement("label");return t&&(n.className=t),n.textContent=e,i&&xs(n,i),n},createOption:Kn,createRadioButton:function(e,t,i){const n=document.createElement("label"),o=n.createChild("input");return o.type="radio",o.name=e,o.setAttribute("jslog",`${s.toggle().track({change:!0}).context(i)}`),jn(n,t),{label:n,radio:o}},createReplacementString:Cn,createSVGChild:function(e,t,i){const n=e.ownerDocument.createElementNS("http://www.w3.org/2000/svg",t);return i&&n.setAttribute("class",i),e.appendChild(n),n},createSelect:function(e,t){const n=document.createElement("select");to(n,e);for(const e of t)if(e instanceof Map)for(const[t,s]of e){const e=n.createChild("optgroup");e.label=t;for(const t of s)"string"==typeof t&&e.appendChild(Kn(t,t,i.StringUtilities.toKebabCase(t)))}else"string"==typeof e&&n.add(Kn(e,e,i.StringUtilities.toKebabCase(e)));return n},createShadowRootWithCoreStyles:rs,createSlider:function(e,t,i){const n=document.createElement("input");return n.type="range",n.min=String(e),n.max=String(t),n.tabIndex=i,n},createTextButton:Vn,createTextChild:jn,createTextChildren:(e,...t)=>{for(const i of t)jn(e,i)},deepElementFromEvent:ts,deepElementFromPoint:es,elementDragStart:bn,enclosingNodeOrSelfWithNodeName:function(e,t){return Jn(e,[t])},enclosingNodeOrSelfWithNodeNameInArray:Jn,endBatchUpdate:function(){--On||Fn&&(Fn.scheduleInvoke(),Fn=null)},formatTimestamp:function(e,t){const i=new Date(e),n=i.getFullYear()+"-"+o(i.getMonth()+1,2)+"-"+o(i.getDate(),2),s=o(i.getHours(),2)+":"+o(i.getMinutes(),2)+":"+o(i.getSeconds(),2)+"."+o(i.getMilliseconds(),3);return t?n+" "+s:s;function o(e,t){return String(e).padStart(t,"0")}},getApplicableRegisteredRenderers:ns,getValueModificationDirection:In,handleElementValueModifications:function(e,t,n,o,r){if(!Tn(e))return!1;s.logKeyDown(e.currentTarget,e,"element-value-modification");const a=t.getComponentSelection();if(!a?.rangeCount)return!1;const l=a.getRangeAt(0);if(!l.commonAncestorContainer.isSelfOrDescendant(t))return!1;const d=t.textContent,h=i.DOMUtilities.rangeOfWord(l.startContainer,l.startOffset,En,t),c=h.toString();if(o?.(c))return!1;const u=Cn(c,e,r);if(u){const t=document.createTextNode(u);h.deleteContents(),h.insertNode(t);const i=document.createRange();return i.setStart(t,0),i.setEnd(t,u.length),a.removeAllRanges(),a.addRange(i),e.handled=!0,e.preventDefault(),n&&n(d||"",u),!0}return!1},highlightRangesWithStyleClass:zn,highlightSearchResult:function(e,t,i,n){const s=An(e,[new p.TextRange.SourceRange(t,i)],n);return s.length?s[0]:null},highlightSearchResults:An,highlightedCurrentSearchResultClassName:"current-search-result",highlightedSearchResultClassName:pn,initializeUIUtils:function(e){e.body.classList.toggle("inactive",!e.hasFocus()),e.defaultView&&(e.defaultView.addEventListener("focus",Ln.bind(void 0,e),!1),e.defaultView.addEventListener("blur",Pn.bind(void 0,e),!1)),e.addEventListener("focus",ss.bind(void 0),!0);const t=e.body;cs.setContainer(t)},injectCoreStyles:os,installComponentRootStyles:function(e){os(e),a.Platform.isMac()||0!==ls(e.ownerDocument)||e.classList.add("overlay-scrollbar-enabled")},installDragHandle:gn,invokeOnceAfterBatchUpdate:Wn,isBeingEdited:function(e){if(!e||e.nodeType!==Node.ELEMENT_NODE)return!1;const t=e;if(t.classList.contains("text-prompt")||"INPUT"===t.nodeName||"TEXTAREA"===t.nodeName)return!0;if(!xn.size)return!1;let i=t;for(;i;){if(xn.has(t))return!0;i=i.parentElementOrShadowHost()}return!1},isEditing:fn,isElementValueModification:Tn,isScrolledToBottom:e=>Math.abs(e.scrollTop+e.clientHeight-e.scrollHeight)<=2,loadImage:function(e){return new Promise((t=>{const i=new Image;i.addEventListener("load",(()=>t(i))),i.addEventListener("error",(()=>t(null))),i.src=e}))},markBeingEdited:wn,measurePreferredSize:Rn,measureTextWidth:Qn,measuredScrollbarWidth:ls,modifiedFloatNumber:Sn,openInNewTab:ds,openLinkExternallyLabel:kn,registerRenderer:function(e){is.push(e)},resetMeasuredScrollbarWidthForTest:function(){as=void 0},revertDomChanges:function(e){for(let t=e.length-1;t>=0;--t){const i=e[t];switch(i.type){case"added":i.node.remove();break;case"changed":i.node.textContent=i.oldText??null}}},runCSSAnimationOnce:function(e,t){function i(){e.classList.remove(t),e.removeEventListener("webkitAnimationEnd",i,!1),e.removeEventListener("animationcancel",i,!1)}e.classList.contains(t)&&e.classList.remove(t),e.addEventListener("webkitAnimationEnd",i,!1),e.addEventListener("animationcancel",i,!1),e.classList.add(t)},setTitle:function(e,t){to(e,t),gt.install(e,t)},startBatchUpdate:function(){On++||(Fn=new Bn(!1))},trimText:Yn,trimTextEnd:function(e,t,n){return Yn(e,t,n,((e,t)=>i.StringUtilities.trimEndWithMaxLength(e,t)))},trimTextMiddle:function(e,t,n){return Yn(e,t,n,((e,t)=>i.StringUtilities.trimMiddle(e,t)))}});class cs{widgetInternal=new et(!0);element;contentElement;onMouseDownBound;onClickOutsideCallback=null;maxSize=null;positionX=null;positionY=null;anchorBox=null;anchorBehavior="PreferTop";sizeBehavior="SetExactSize";marginBehavior="DefaultMargin";#b=!1;constructor(e){this.widgetInternal.markAsRoot(),this.element=this.widgetInternal.element,this.contentElement=this.widgetInternal.contentElement,e&&this.contentElement.setAttribute("jslog",e),this.registerRequiredCSS(D),this.setPointerEventsBehavior("PierceGlassPane"),this.onMouseDownBound=this.onMouseDown.bind(this)}setJsLog(e){this.contentElement.setAttribute("jslog",e)}isShowing(){return this.widgetInternal.isShowing()}registerRequiredCSS(...e){this.widgetInternal.registerRequiredCSS(...e)}setDefaultFocusedElement(e){this.widgetInternal.setDefaultFocusedElement(e)}setDimmed(e){this.element.classList.toggle("dimmed-pane",e)}setPointerEventsBehavior(e){this.element.classList.toggle("no-pointer-events","BlockedByGlassPane"!==e),this.contentElement.classList.toggle("no-pointer-events","PierceContents"===e)}setOutsideClickCallback(e){this.onClickOutsideCallback=e}setMaxContentSize(e){this.maxSize=e,this.positionContent()}setSizeBehavior(e){this.sizeBehavior=e,this.positionContent()}setContentPosition(e,t){this.positionX=e,this.positionY=t,this.positionContent()}setContentAnchorBox(e){this.anchorBox=e,this.positionContent()}setAnchorBehavior(e){this.anchorBehavior=e}setMarginBehavior(e){this.marginBehavior=e}setIgnoreLeftMargin(e){this.#b=e}show(e){this.isShowing()||(this.element.style.zIndex=""+(3e3+1e3*ms.size),this.element.setAttribute("data-devtools-glass-pane",""),e.body.addEventListener("mousedown",this.onMouseDownBound,!0),e.body.addEventListener("pointerdown",this.onMouseDownBound,!0),this.widgetInternal.show(e.body),ms.add(this),this.positionContent())}hide(){this.isShowing()&&(ms.delete(this),this.element.ownerDocument.body.removeEventListener("mousedown",this.onMouseDownBound,!0),this.element.ownerDocument.body.removeEventListener("pointerdown",this.onMouseDownBound,!0),this.widgetInternal.detach())}onMouseDown(e){if(!this.onClickOutsideCallback)return;const t=ts(e);t&&!this.contentElement.isSelfOrAncestor(t)&&this.onClickOutsideCallback.call(null,e)}positionContent(){if(!this.isShowing())return;const e="NoMargin"===this.marginBehavior?0:3,t=ls(this.element.ownerDocument),i=10,n=us.get(this.element.ownerDocument);"MeasureContent"===this.sizeBehavior&&(this.contentElement.positionAt(0,0),this.contentElement.style.width="",this.contentElement.style.maxWidth="",this.contentElement.style.height="",this.contentElement.style.maxHeight="");const s=n.offsetWidth,o=n.offsetHeight;let r=s-2*e,a=o-2*e,l=e,d=e;if(this.maxSize&&(r=Math.min(r,this.maxSize.width),a=Math.min(a,this.maxSize.height)),"MeasureContent"===this.sizeBehavior){const e=this.contentElement.getBoundingClientRect(),i=a<e.height?t:0,n=r<e.width?t:0;r=Math.min(r,e.width+i),a=Math.min(a,e.height+n)}if(this.anchorBox){const t=this.anchorBox.relativeToElement(n);let h=this.anchorBehavior;if("PreferTop"===h||"PreferBottom"===h){const n=t.y-2*e,c=o-t.y-t.height-2*e;"PreferTop"===h&&n<a&&c>n&&(h="PreferBottom"),"PreferBottom"===h&&c<a&&n>c&&(h="PreferTop");let u=!0;if("PreferTop"===h){d=Math.max(e,t.y-a-e);const i=t.y-d-e;"MeasureContent"===this.sizeBehavior?a>i&&(u=!1):a=Math.min(a,i)}else{d=t.y+t.height+e;const i=o-d-e;"MeasureContent"===this.sizeBehavior?a>i&&(d=o-e-a,u=!1):a=Math.min(a,i)}const m=Math.min(t.x,s-r-e);l=Math.max(e,m),this.#b&&e>m&&(l=0),u?l-i>=e&&(l-=i):l=Math.min(l+i,s-r-e),r=Math.min(r,s-l-e)}else{const n=t.x-2*e,c=s-t.x-t.width-2*e;"PreferLeft"===h&&n<r&&c>n&&(h="PreferRight"),"PreferRight"===h&&c<r&&n>c&&(h="PreferLeft");let u=!0;if("PreferLeft"===h){l=Math.max(e,t.x-r-e);const i=t.x-l-e;"MeasureContent"===this.sizeBehavior?r>i&&(u=!1):r=Math.min(r,i)}else{l=t.x+t.width+e;const i=s-l-e;"MeasureContent"===this.sizeBehavior?r>i&&(l=s-e-r,u=!1):r=Math.min(r,i)}d=Math.max(e,Math.min(t.y,o-a-e)),u?d-i>=e&&(d-=i):d=Math.min(d+i,o-a-e),a=Math.min(a,o-d-e)}}else l=null!==this.positionX?this.positionX:(s-r)/2,d=null!==this.positionY?this.positionY:(o-a)/2,r=Math.min(r,s-l-e),a=Math.min(a,o-d-e);this.contentElement.style.width=r+"px","SetExactWidthMaxHeight"===this.sizeBehavior?this.contentElement.style.maxHeight=a+"px":this.contentElement.style.height=a+"px",this.contentElement.positionAt(l,d,n),this.widgetInternal.doResize()}widget(){return this.widgetInternal}static setContainer(e){us.set(e.ownerDocument,e),cs.containerMoved(e)}static container(e){return us.get(e)}static containerMoved(e){for(const t of ms)t.isShowing()&&t.element.ownerDocument===e.ownerDocument&&t.positionContent()}}const us=new Map,ms=new Set,ps=ms;var gs=Object.freeze({__proto__:null,GlassPane:cs,GlassPanePanes:ps});class bs extends(e.ObjectWrapper.eventMixin(cs)){tabIndexBehavior="DisableAllTabIndex";tabIndexMap=new Map;focusRestorer=null;closeOnEscape=!0;targetDocument=null;targetDocumentKeyDownHandler;escapeKeyCallback=null;constructor(e){super(),this.registerRequiredCSS(P),this.contentElement.tabIndex=0,this.contentElement.addEventListener("focus",(()=>this.widget().focus()),!1),e&&this.contentElement.setAttribute("jslog",`${s.dialog(e).track({resize:!0,keydown:"Escape"})}`),this.widget().setDefaultFocusedElement(this.contentElement),this.setPointerEventsBehavior("BlockedByGlassPane"),this.setOutsideClickCallback((e=>{this.hide(),e.consume(!0)})),Is(this.contentElement),this.targetDocumentKeyDownHandler=this.onKeyDown.bind(this)}static hasInstance(){return Boolean(bs.instance)}static getInstance(){return bs.instance}show(e){const t=e instanceof Document?e:(e||ii.instance().element).ownerDocument;this.targetDocument=t,this.targetDocument.addEventListener("keydown",this.targetDocumentKeyDownHandler,!0),bs.instance&&bs.instance.hide(),bs.instance=this,this.disableTabIndexOnElements(t),super.show(t),this.focusRestorer=new st(this.widget())}hide(){this.focusRestorer&&this.focusRestorer.restore(),super.hide(),this.targetDocument&&this.targetDocument.removeEventListener("keydown",this.targetDocumentKeyDownHandler,!0),this.restoreTabIndexOnElements(),this.dispatchEventToListeners("hidden"),bs.instance=null}setAriaLabel(e){to(this.contentElement,e)}setCloseOnEscape(e){this.closeOnEscape=e}setEscapeKeyCallback(e){this.escapeKeyCallback=e}addCloseButton(){this.contentElement.createChild("dt-close-button","dialog-close-button").addEventListener("click",this.hide.bind(this),!1)}setOutsideTabIndexBehavior(e){this.tabIndexBehavior=e}disableTabIndexOnElements(e){if("PreserveTabIndex"===this.tabIndexBehavior)return;let t=null;"PreserveMainViewTabIndex"===this.tabIndexBehavior&&(t=this.getMainWidgetTabIndexElements(ii.instance().ownerSplit())),this.tabIndexMap.clear();let i=e;for(;i;i=i.traverseNextNode(e))if(i instanceof HTMLElement){const e=i,n=e.tabIndex;t?.has(e)||(n>=0?(this.tabIndexMap.set(e,n),e.tabIndex=-1):e.hasAttribute("contenteditable")&&(this.tabIndexMap.set(e,e.hasAttribute("tabindex")?n:0),e.tabIndex=-1))}}getMainWidgetTabIndexElements(e){const t=new Set;if(!e)return t;const i=e.mainWidget();if(!i?.element)return t;let n=i.element;for(;n;n=n.traverseNextNode(i.element)){if(!(n instanceof HTMLElement))continue;const e=n;e.tabIndex<0||t.add(e)}return t}restoreTabIndexOnElements(){for(const e of this.tabIndexMap.keys())e.tabIndex=this.tabIndexMap.get(e);this.tabIndexMap.clear()}onKeyDown(e){if(e.keyCode===K.Esc.code&&A.hasNoModifiers(e)){if(this.escapeKeyCallback&&this.escapeKeyCallback(e),e.handled)return;this.closeOnEscape&&(e.consume(!0),this.hide())}}static instance=null}var vs=Object.freeze({__proto__:null,Dialog:bs});let fs=0;function ws(e){return(e||"")+ ++fs}function xs(e,t){const i=ws("labelledControl");t.id=i,e.setAttribute("for",i)}function ys(e){e.setAttribute("role","alert"),e.setAttribute("aria-live","polite")}function Es(e){e.setAttribute("role","button")}function Is(e){e.setAttribute("role","dialog"),e.setAttribute("aria-modal","true")}function Ss(e){e.setAttribute("role","group")}function Cs(e){e.setAttribute("role","link")}function Ts(e){Es(e),e.setAttribute("aria-haspopup","true")}function ks(e){e.setAttribute("role","tab")}function Ms(e){e.setAttribute("role","tabpanel")}function Ls(e){e.setAttribute("role","tree")}function Ps(e){e.setAttribute("role","treeitem")}function Ds(e){e.setAttribute("role","textbox")}function As(e){e.setAttribute("role","menu")}function zs(e){e.setAttribute("role","menuitem")}function Rs(e){e.setAttribute("role","menuitemcheckbox")}function Bs(e){zs(e),e.setAttribute("aria-haspopup","true")}function Os(e){e.setAttribute("role","complementary")}function Fs(e){e.setAttribute("role","navigation")}function Ws(e){e.setAttribute("role","listbox")}function Hs(e){e.setAttribute("aria-multiselectable","true")}function Ns(e){e.setAttribute("role","option")}function js(e,t){e.setAttribute("role","heading"),e.setAttribute("aria-level",t.toString())}function Vs(e){return e.hasAttribute("role")}function Us(e,t){t?e.setAttribute("aria-placeholder",t):e.removeAttribute("aria-placeholder")}function _s(e){e.id||(e.id=ws("ariaElement"))}function Ks(e,t){t?(_s(t),e.setAttribute("aria-controls",t.id)):e.removeAttribute("aria-controls")}function $s(e,t){e.setAttribute("aria-expanded",Boolean(t).toString())}function qs(e){e.removeAttribute("aria-expanded")}function Xs(e,t){e.setAttribute("aria-hidden",t.toString())}function Gs(e,t="none"){e.setAttribute("aria-autocomplete",t)}function Ys(e){e.removeAttribute("aria-autocomplete")}function Qs(e,t="false"){"false"!==t?e.setAttribute("aria-haspopup",t):e.removeAttribute("aria-haspopup")}function Zs(e,t){e.setAttribute("aria-selected",Boolean(t).toString())}function Js(e){e.removeAttribute("aria-selected")}function eo(e,t){t?e.setAttribute("aria-invalid",t.toString()):e.removeAttribute("aria-invalid")}function to(e,t){e.setAttribute("aria-label",t)}function io(e,t){e.setAttribute("aria-description",t)}function no(e,t){t?(t.isConnected&&e.isConnected&&console.assert(i.DOMUtilities.getEnclosingShadowRootForNode(t)===i.DOMUtilities.getEnclosingShadowRootForNode(e),"elements are not in the same shadow dom"),_s(t),e.setAttribute("aria-activedescendant",t.id)):e.removeAttribute("aria-activedescendant")}function so(e,t){e.setAttribute("aria-setsize",t.toString())}function oo(e,t){e.setAttribute("aria-posinset",t.toString())}const ro=new WeakMap;function ao(e){const t=e.createChild("div");return function(e){e.style.position="absolute",e.style.left="-999em",e.style.width="100em",e.style.overflow="hidden"}(t),t.setAttribute("role","alert"),t.setAttribute("aria-atomic","true"),t}function lo(e=document.body){let t=ro.get(e);return t||(t={one:ao(e),two:ao(e),alertToggle:!1},ro.set(e,t)),t}function ho(e=document.body){const t=lo(e);return t.alertToggle=!t.alertToggle,t.alertToggle?(t.two.textContent="",t.one):(t.one.textContent="",t.two)}function co(e){const t=bs.getInstance();ho(t?.isShowing()?t.contentElement:void 0).textContent=i.StringUtilities.trimEndWithMaxLength(e,1e4)}var uo=Object.freeze({__proto__:null,alert:co,alertElementInstance:ho,bindLabelToControl:xs,clearAutocomplete:Ys,clearSelected:Js,ensureId:_s,getOrCreateAlertElements:lo,hasRole:Vs,markAsAlert:ys,markAsApplication:function(e){e.setAttribute("role","application")},markAsButton:Es,markAsCheckbox:function(e){e.setAttribute("role","checkbox")},markAsCombobox:function(e){e.setAttribute("role","combobox")},markAsComplementary:Os,markAsGroup:Ss,markAsHeading:js,markAsLink:Cs,markAsList:function(e){e.setAttribute("role","list")},markAsListBox:Ws,markAsListitem:function(e){e.setAttribute("role","listitem")},markAsMain:function(e){e.setAttribute("role","main")},markAsMenu:As,markAsMenuButton:Ts,markAsMenuItem:zs,markAsMenuItemCheckBox:Rs,markAsMenuItemSubMenu:Bs,markAsModalDialog:Is,markAsMultiSelectable:Hs,markAsNavigation:Fs,markAsOption:Ns,markAsPoliteLiveRegion:function(e,t){e.setAttribute("aria-live","polite"),t&&e.setAttribute("aria-atomic","true")},markAsPresentation:function(e){e.setAttribute("role","presentation")},markAsProgressBar:function(e,t=0,i=100){e.setAttribute("role","progressbar"),e.setAttribute("aria-valuemin",t.toString()),e.setAttribute("aria-valuemax",i.toString())},markAsRadioGroup:function(e){e.setAttribute("role","radiogroup")},markAsSlider:function(e,t=0,i=100){e.setAttribute("role","slider"),e.setAttribute("aria-valuemin",String(t)),e.setAttribute("aria-valuemax",String(i))},markAsStatus:function(e){e.setAttribute("role","status")},markAsTab:ks,markAsTablist:function(e){e.setAttribute("role","tablist")},markAsTabpanel:Ms,markAsTextBox:Ds,markAsTree:Ls,markAsTreeitem:Ps,nextId:ws,removeRole:function(e){e.removeAttribute("role")},setActiveDescendant:no,setAriaValueMinMax:function(e,t,i){e.setAttribute("aria-valuemin",t),e.setAttribute("aria-valuemax",i)},setAriaValueNow:function(e,t){e.setAttribute("aria-valuenow",t)},setAriaValueText:function(e,t){e.setAttribute("aria-valuetext",t)},setAutocomplete:Gs,setCheckboxAsIndeterminate:function(e){e.setAttribute("aria-checked","mixed")},setChecked:function(e,t){e.setAttribute("aria-checked",Boolean(t).toString())},setControls:Ks,setDescription:io,setDisabled:function(e,t){e.setAttribute("aria-disabled",Boolean(t).toString())},setExpanded:$s,setHasPopup:Qs,setHidden:Xs,setInvalid:eo,setLabel:to,setLevel:function(e,t){e.setAttribute("aria-level",t.toString())},setPlaceholder:Us,setPositionInSet:oo,setPressed:function(e,t){e.setAttribute("aria-pressed",Boolean(t).toString())},setProgressBarValue:function(e,t,i){e.setAttribute("aria-valuenow",t.toString()),i&&e.setAttribute("aria-valuetext",i)},setSelected:Zs,setSetSize:so,setValueNow:function(e,t){e.setAttribute("aria-valuenow",t.toString())},setValueText:function(e,t){e.setAttribute("aria-valuetext",t.toString())},unsetExpandable:qs}),mo=Object.freeze({__proto__:null}),po={cssText:`:host{position:absolute;inset:0;display:flex;background-color:var(--color-background-opacity-80);z-index:1000}.drop-target-message{flex:auto;font-size:30px;color:var(--sys-color-token-subtle);display:flex;justify-content:center;align-items:center;margin:20px;border:4px dashed var(--sys-color-neutral-outline);pointer-events:none}\n/*# sourceURL=${import.meta.resolve("./dropTarget.css")} */\n`};var go=Object.freeze({__proto__:null,DropTarget:class{element;transferTypes;messageText;handleDrop;enabled;dragMaskElement;constructor(e,t,i,n){e.addEventListener("dragenter",this.onDragEnter.bind(this),!0),e.addEventListener("dragover",this.onDragOver.bind(this),!0),this.element=e,this.transferTypes=t,this.messageText=i,this.handleDrop=n,this.enabled=!0,this.dragMaskElement=null}setEnabled(e){this.enabled=e}onDragEnter(e){this.enabled&&this.hasMatchingType(e)&&e.consume(!0)}hasMatchingType(e){const t=e;if(!t.dataTransfer)return!1;for(const e of this.transferTypes){if(Array.from(t.dataTransfer.items).find((t=>e.kind===t.kind&&Boolean(e.type.exec(t.type)))))return!0}return!1}onDragOver(e){const t=e;if(!this.enabled||!this.hasMatchingType(t))return;if(t.dataTransfer&&(t.dataTransfer.dropEffect="copy"),t.consume(!0),this.dragMaskElement)return;this.dragMaskElement=this.element.createChild("div","");rs(this.dragMaskElement,{cssFile:po}).createChild("div","drop-target-message").textContent=this.messageText,this.dragMaskElement.addEventListener("drop",this.onDrop.bind(this),!0),this.dragMaskElement.addEventListener("dragleave",this.onDragLeave.bind(this),!0)}onDrop(e){const t=e;t.consume(!0),this.removeMask(),this.enabled&&t.dataTransfer&&this.handleDrop(t.dataTransfer)}onDragLeave(e){e.consume(!0),this.removeMask()}removeMask(){this.dragMaskElement&&(this.dragMaskElement.remove(),this.dragMaskElement=null)}},Type:{URI:{kind:"string",type:/text\/uri-list/},Folder:{kind:"file",type:/$^/},File:{kind:"file",type:/.*/},WebFile:{kind:"file",type:/[\w]+/},ImageFile:{kind:"file",type:/image\/.*/}}}),bo={cssText:`.empty-view-scroller{overflow:auto}\n/*# sourceURL=${import.meta.resolve("./emptyWidget.css")} */\n`};function vo(e){return e.data}function fo(e,t){e.data=t}class wo{elementInternal;elementsById=new Map;constructor(e){this.elementInternal=e}element(){return this.elementInternal}$(e){return this.elementsById.get(e)}static build(e,...t){return wo.render(wo.template(e),t)}static cached(e,...t){let i=Co.get(e);return i||(i=wo.template(e),Co.set(e,i)),wo.render(i,t)}static template(e){let t="",i=!0;for(let n=0;n<e.length-1;n++){t+=e[n];const s=e[n].lastIndexOf(">"),o=e[n].indexOf("<",s+1);-1!==s&&-1===o?i=!0:-1!==o&&(i=!1),t+=i?xo:Eo(n)}t+=e[e.length-1];const n=document.createElement("template");n.innerHTML=t;const s=n.ownerDocument.createTreeWalker(n.content,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,null);let o=0;const r=[],a=[],l=[];for(;s.nextNode();){const e=s.currentNode;if(e.nodeType===Node.ELEMENT_NODE&&e.hasAttributes()){e.hasAttribute("$")&&(l.push(e),a.push({replaceNodeIndex:void 0,attr:void 0,elementId:e.getAttribute("$")||""}),e.removeAttribute("$"));const t=[];for(let i=0;i<e.attributes.length;i++){const n=e.attributes[i].name;if(!Io.test(n)&&!Io.test(e.attributes[i].value))continue;t.push(n),l.push(e);const s={index:o,names:n.split(Io),values:e.attributes[i].value.split(Io)};o+=s.names.length-1,o+=s.values.length-1;const r={elementId:void 0,replaceNodeIndex:void 0,attr:s};a.push(r)}for(let i=0;i<t.length;i++)e.removeAttribute(t[i])}if(e.nodeType===Node.TEXT_NODE&&-1!==vo(e).indexOf(xo)){const t=vo(e).split(yo);fo(e,t[t.length-1]);const i=e.parentNode;for(let n=0;n<t.length-1;n++){t[n]&&i.insertBefore(document.createTextNode(t[n]),e);const s=document.createElement("span");l.push(s),a.push({attr:void 0,elementId:void 0,replaceNodeIndex:o++}),i.insertBefore(s,e)}}e.nodeType!==Node.TEXT_NODE||e.previousSibling&&e.previousSibling.nodeType!==Node.ELEMENT_NODE||e.nextSibling&&e.nextSibling.nodeType!==Node.ELEMENT_NODE||!/^\s*$/.test(vo(e))||r.push(e)}for(let e=0;e<l.length;e++)l[e].classList.add(So(e));for(const e of r)e.remove();return{template:n,binds:a}}static render(e,t){const i=e.template.ownerDocument.importNode(e.template.content,!0),n=i.firstChild===i.lastChild?i.firstChild:i,s=new wo(n),o=[];for(let t=0;t<e.binds.length;t++){const e=So(t),n=i.querySelector("."+e);n.classList.remove(e),o.push(n)}for(let i=0;i<e.binds.length;i++){const n=e.binds[i],r=o[i];if(void 0!==n.elementId)s.elementsById.set(n.elementId,r);else if(void 0!==n.replaceNodeIndex){const e=t[n.replaceNodeIndex];r.parentNode.replaceChild(this.nodeForValue(e),r)}else{if(void 0===n.attr)throw new Error("Unexpected bind");if(2===n.attr.names.length&&1===n.attr.values.length&&"function"==typeof t[n.attr.index])t[n.attr.index].call(null,r);else{let e=n.attr.names[0];for(let i=1;i<n.attr.names.length;i++)e+=t[n.attr.index+i-1],e+=n.attr.names[i];if(e){let i=n.attr.values[0];for(let e=1;e<n.attr.values.length;e++)i+=t[n.attr.index+n.attr.names.length-1+e-1],i+=n.attr.values[e];r.setAttribute(e,i)}}}}return s}static nodeForValue(e){if(e instanceof Node)return e;if(e instanceof wo)return e.elementInternal;if(Array.isArray(e)){const t=document.createDocumentFragment();for(const i of e)t.appendChild(this.nodeForValue(i));return t}return document.createTextNode(String(e))}}const xo="{{template-text}}",yo=/{{template-text}}/,Eo=e=>"template-attribute"+e,Io=/template-attribute\d+/,So=e=>"template-class-"+e,Co=new Map,To=(e,...t)=>wo.cached(e,...t).element();var ko=Object.freeze({__proto__:null,Fragment:wo,attributeMarker:Eo,html:To,textMarker:xo});class Mo extends Be{hrefInternal;clickable;onClick;onKeyDown;static create(e,t,n,o,r,a="0"){t||(t=e);return To`
2
+ <x-link href='${e}' tabindex='${a}' class='${n=n||""} devtools-link' ${o?"no-click":""}
3
+ jslog=${s.link().track({click:!0,keydown:"Enter|Space"}).context(r)}>${i.StringUtilities.trimMiddle(t,150)}</x-link>`}constructor(){super(),this.style.setProperty("display","inline"),Cs(this),this.setAttribute("tabindex","0"),this.setAttribute("target","_blank"),this.setAttribute("rel","noopener"),this.hrefInternal=null,this.clickable=!0,this.onClick=e=>{e.consume(!0),this.hrefInternal&&ds(this.hrefInternal),this.dispatchEvent(new Event("x-link-invoke"))},this.onKeyDown=e=>{i.KeyboardUtilities.isEnterOrSpaceKey(e)&&(e.consume(!0),this.hrefInternal&&ds(this.hrefInternal)),this.dispatchEvent(new Event("x-link-invoke"))}}static get observedAttributes(){return Be.observedAttributes.concat(["href","no-click","title","tabindex"])}get href(){return this.hrefInternal}attributeChangedCallback(e,t,n){if("no-click"===e)return this.clickable=!n,void this.updateClick();if("href"===e){n||(n="");let e=null;try{const t=new URL(n);"javascript:"!==t.protocol&&(e=i.DevToolsPath.urlString`${t}`)}catch{}return this.hrefInternal=e,this.hasAttribute("title")||gt.install(this,n),void this.updateClick()}"tabindex"!==e?super.attributeChangedCallback(e,t,n):t!==n&&this.setAttribute("tabindex",n||"0")}updateClick(){null!==this.hrefInternal&&this.clickable?(this.addEventListener("click",this.onClick,!1),this.addEventListener("keydown",this.onKeyDown,!1),this.style.setProperty("cursor","pointer")):(this.removeEventListener("click",this.onClick,!1),this.removeEventListener("keydown",this.onKeyDown,!1),this.style.removeProperty("cursor"))}}customElements.define("x-link",Mo);const Lo=h`<p>Hello, <x-link>world!</x-link></p>`;var Po=Object.freeze({__proto__:null,ContextMenuProvider:class{appendApplicableItems(e,t,i){let n=i;for(;n&&!(n instanceof Mo);)n=n.parentNodeOrShadowHost();if(!n||!n.href)return;const s=n;t.revealSection().appendItem(kn(),(()=>{s.href&&ds(s.href)}),{jslogContext:"open-in-new-tab"}),t.revealSection().appendItem(Mn(),(()=>{s.href&&a.InspectorFrontendHost.InspectorFrontendHostInstance.copyText(s.href)}),{jslogContext:"copy-link-address"})}},XLink:Mo,sample:Lo});const Do={learnMore:"Learn more"},Ao=t.i18n.registerUIStrings("ui/legacy/EmptyWidget.ts",Do),zo=t.i18n.getLocalizedString.bind(void 0,Ao);var Ro=Object.freeze({__proto__:null,EmptyWidget:class extends it{#v;#f;constructor(e,t){super(),this.registerRequiredCSS(bo),this.element.classList.add("empty-view-scroller"),this.contentElement=this.element.createChild("div","empty-state"),this.contentElement.setAttribute("jslog",`${s.section("empty-view")}`),this.#v=this.contentElement.createChild("div","empty-state-header"),this.#v.textContent=e,this.#f=this.contentElement.createChild("div","empty-state-description").createChild("span"),this.#f.textContent=t}appendLink(e){const t=Mo.create(e,zo(Do.learnMore),void 0,void 0,"learn-more");return this.#f.insertAdjacentElement("afterend",t),t}set text(e){this.#f.textContent=e}set header(e){this.#v.textContent=e}}}),Bo={cssText:`.filter-bar{background-color:var(--sys-color-cdt-base-container);flex:none;flex-wrap:wrap;align-items:center;border-bottom:1px solid var(--sys-color-divider);color:var(--sys-color-on-surface-subtle)}.text-filter{flex-grow:1;min-width:var(--sys-size-25);max-width:var(--sys-size-36)}.filter-bitset-filter{padding:2px;display:inline-flex;overflow:hidden;height:24px;position:relative;margin:0}.filter-bitset-filter span{color:var(--sys-color-on-surface);outline:1px solid var(--sys-color-neutral-outline);outline-offset:-1px;box-sizing:border-box;display:inline-block;flex:none;margin:auto 2px;padding:3px 6px;background:transparent;border-radius:6px;overflow:hidden;cursor:pointer;font-weight:500;font-size:11px}.filter-bitset-filter span:focus-visible{outline:-webkit-focus-ring-color auto 5px}.filter-bitset-filter span:hover{outline:none;background:var(--sys-color-state-hover-on-subtle)}.filter-bitset-filter span.selected,\n.filter-bitset-filter span:active{color:var(--sys-color-on-tonal-container);outline:none;background-color:var(--sys-color-tonal-container)}.filter-bitset-filter-divider{background-color:var(--sys-color-divider);height:16px;width:1px;margin:auto 2px;display:inline-block}.filter-checkbox-filter{padding-left:1px;padding-right:7px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:inline-flex;vertical-align:middle;height:24px;position:relative}.filter-checkbox-filter > dt-checkbox{display:flex;margin:auto 0}.toolbar-has-dropdown-shrinkable{flex-shrink:1}.filter-divider{background-color:var(--sys-color-divider);width:1px;margin:5px 4px;height:16px}.toolbar-button{white-space:nowrap;overflow:hidden;min-width:28px;background:transparent;border-radius:0}.toolbar-button .active-filters-count{margin-right:5px;--override-adorner-background-color:var(--sys-color-tonal-container);--override-adorner-border-color:var(--sys-color-tonal-container);--override-adorner-text-color:var(--sys-color-primary);--override-adorner-font-size:10px;font-weight:700}.toolbar-text{margin:0 4px 0 0;text-overflow:ellipsis;flex:auto;overflow:hidden;text-align:right}.dropdown-filterbar{justify-content:space-between;align-items:center;height:var(--sys-size-9);margin:0 var(--sys-size-3) 0 var(--sys-size-5);border:none;border-radius:var(--sys-shape-corner-extra-small);display:flex;background-color:transparent;color:var(--sys-color-on-surface-subtle);.toolbar-dropdown-arrow{top:var(--sys-size-2)}&:hover{background-color:var(--sys-color-state-hover-on-subtle)}&:active{background-color:var(--sys-color-state-ripple-neutral-on-subtle)}&:hover:active{background:linear-gradient(var(--sys-color-state-hover-on-subtle),var(--sys-color-state-hover-on-subtle)),linear-gradient(var(--sys-color-state-ripple-neutral-on-subtle),var(--sys-color-state-ripple-neutral-on-subtle))}&:focus-visible{outline:2px solid var(--sys-color-state-focus-ring)}}@media (forced-colors: active){.filter-bitset-filter span:hover,\n .filter-bitset-filter span.selected,\n .filter-bitset-filter span:active{forced-color-adjust:none;background:Highlight;color:HighlightText}}\n/*# sourceURL=${import.meta.resolve("./filter.css")} */\n`};const Oo={filter:"Filter",egSmalldUrlacomb:"e.g. `/small[d]+/ url:a.com/b`",sclickToSelectMultipleTypes:"{PH1}Click to select multiple types",allStrings:"All"},Fo=t.i18n.registerUIStrings("ui/legacy/FilterBar.ts",Oo),Wo=t.i18n.getLocalizedString.bind(void 0,Fo);class Ho extends(e.ObjectWrapper.eventMixin(nt)){enabled;stateSetting;filterButtonInternal;filters;alwaysShowFilters;showingWidget;constructor(t,i){super(),this.registerRequiredCSS(Bo),this.enabled=!0,this.element.classList.add("filter-bar"),this.element.setAttribute("jslog",`${s.toolbar("filter-bar")}`),this.stateSetting=e.Settings.Settings.instance().createSetting("filter-bar-"+t+"-toggled",Boolean(i)),this.filterButtonInternal=new Ji(this.stateSetting,"filter",Wo(Oo.filter),"filter-filled","filter"),this.filterButtonInternal.element.style.setProperty("--dot-toggle-top","13px"),this.filterButtonInternal.element.style.setProperty("--dot-toggle-left","14px"),this.filters=[],this.updateFilterBar(),this.stateSetting.addChangeListener(this.updateFilterBar.bind(this))}filterButton(){return this.filterButtonInternal}addDivider(){const e=document.createElement("div");e.classList.add("filter-divider"),this.element.appendChild(e)}addFilter(e){this.filters.push(e),this.element.appendChild(e.element()),e.addEventListener("FilterChanged",this.filterChanged,this),this.updateFilterButton()}setEnabled(e){this.enabled=e,this.filterButtonInternal.setEnabled(e),this.updateFilterBar()}filterChanged(){this.updateFilterButton(),this.dispatchEventToListeners("Changed")}wasShown(){super.wasShown(),this.updateFilterBar()}updateFilterBar(){this.parentWidget()&&!this.showingWidget&&(this.visible()?(this.showingWidget=!0,this.showWidget(),this.showingWidget=!1):this.hideWidget())}focus(){for(let e=0;e<this.filters.length;++e)if(this.filters[e]instanceof No){this.filters[e].focus();break}}hasActiveFilter(){for(const e of this.filters)if(e.isActive())return!0;return!1}updateFilterButton(){const e=this.hasActiveFilter();this.filterButtonInternal.setChecked(e)}clear(){this.element.removeChildren(),this.filters=[],this.updateFilterButton()}setting(){return this.stateSetting}visible(){return this.alwaysShowFilters||this.stateSetting.get()&&this.enabled}}class No extends e.ObjectWrapper.ObjectWrapper{filterElement;#w;suggestionProvider;constructor(){super(),this.filterElement=document.createElement("div"),this.filterElement.classList.add("text-filter");const e=this.filterElement.createChild("devtools-toolbar");e.style.borderBottom="none",this.#w=new Gi(void 0,1,1,Wo(Oo.egSmalldUrlacomb),this.completions.bind(this)),e.appendToolbarItem(this.#w),this.#w.addEventListener("TextChanged",(()=>this.valueChanged())),this.suggestionProvider=null}completions(e,t,i){return this.suggestionProvider?this.suggestionProvider(e,t,i):Promise.resolve([])}isActive(){return Boolean(this.#w.valueWithoutSuggestion())}element(){return this.filterElement}value(){return this.#w.valueWithoutSuggestion()}setValue(e){this.#w.setValue(e),this.valueChanged()}focus(){this.#w.focus()}setSuggestionProvider(e){this.#w.clearAutocomplete(),this.suggestionProvider=e}valueChanged(){this.dispatchEventToListeners("FilterChanged")}clear(){this.setValue("")}}class jo extends HTMLElement{#x={items:[]};#y=this.attachShadow({mode:"open"});#E;set options(e){this.#x.items.toString()===e.items.toString()&&this.#x.setting===e.setting||(this.#x=e,this.#y.innerHTML="",this.#E=void 0)}getOrCreateNamedBitSetFilterUI(){if(this.#E)return this.#E;const e=new Vo(this.#x.items,this.#x.setting);e.element().classList.add("named-bitset-filter");this.#y.createChild("style").textContent=Bo.cssText;return this.#y.createChild("div","named-bit-set-filter-disclosure").appendChild(e.element()),e.addEventListener("FilterChanged",this.#I.bind(this)),this.#E=e,this.#E}#I(){const e=new CustomEvent("filterChanged");this.dispatchEvent(e)}}customElements.define("devtools-named-bit-set-filter",jo);class Vo extends e.ObjectWrapper.ObjectWrapper{filtersElement;typeFilterElementTypeNames=new WeakMap;allowedTypes=new Set;typeFilterElements=[];setting;constructor(e,t){super(),this.filtersElement=document.createElement("div"),this.filtersElement.classList.add("filter-bitset-filter"),this.filtersElement.setAttribute("jslog",`${s.section("filter-bitset")}`),Ws(this.filtersElement),Hs(this.filtersElement),gt.install(this.filtersElement,Wo(Oo.sclickToSelectMultipleTypes,{PH1:A.shortcutToString("",z.CtrlOrMeta.value)})),this.addBit(Vo.ALL_TYPES,Wo(Oo.allStrings),Vo.ALL_TYPES),this.typeFilterElements[0].tabIndex=0,this.filtersElement.createChild("div","filter-bitset-filter-divider");for(let t=0;t<e.length;++t)this.addBit(e[t].name,e[t].label(),e[t].jslogContext,e[t].title);t?(this.setting=t,t.addChangeListener(this.settingChanged.bind(this)),this.settingChanged()):this.toggleTypeFilter(Vo.ALL_TYPES,!1)}reset(){this.toggleTypeFilter(Vo.ALL_TYPES,!1)}isActive(){return!this.allowedTypes.has(Vo.ALL_TYPES)}element(){return this.filtersElement}accept(e){return this.allowedTypes.has(Vo.ALL_TYPES)||this.allowedTypes.has(e)}settingChanged(){const e=this.setting.get();this.allowedTypes=new Set;for(const t of this.typeFilterElements){const i=this.typeFilterElementTypeNames.get(t);i&&e[i]&&this.allowedTypes.add(i)}this.update()}update(){(0===this.allowedTypes.size||this.allowedTypes.has(Vo.ALL_TYPES))&&(this.allowedTypes=new Set,this.allowedTypes.add(Vo.ALL_TYPES));for(const e of this.typeFilterElements){const t=this.typeFilterElementTypeNames.get(e),i=this.allowedTypes.has(t||"");e.classList.toggle("selected",i),Zs(e,i)}this.dispatchEventToListeners("FilterChanged")}addBit(e,t,i,n){const o=this.filtersElement.createChild("span",e);o.tabIndex=-1,this.typeFilterElementTypeNames.set(o,e),jn(o,t),Ns(o),n&&(o.title=n),o.addEventListener("click",this.onTypeFilterClicked.bind(this),!1),o.addEventListener("keydown",this.onTypeFilterKeydown.bind(this),!1),o.setAttribute("jslog",`${s.item(i).track({click:!0})}`),this.typeFilterElements.push(o)}onTypeFilterClicked(e){const t=e;let i;if(i=a.Platform.isMac()?t.metaKey&&!t.ctrlKey&&!t.altKey&&!t.shiftKey:t.ctrlKey&&!t.metaKey&&!t.altKey&&!t.shiftKey,t.target){const e=t.target,n=this.typeFilterElementTypeNames.get(e);this.toggleTypeFilter(n,i)}}onTypeFilterKeydown(e){const t=e,n=t.target;n&&("ArrowLeft"===t.key||"ArrowUp"===t.key?this.keyFocusNextBit(n,!0)&&t.consume(!0):"ArrowRight"===t.key||"ArrowDown"===t.key?this.keyFocusNextBit(n,!1)&&t.consume(!0):i.KeyboardUtilities.isEnterOrSpaceKey(t)&&this.onTypeFilterClicked(t))}keyFocusNextBit(e,t){const i=this.typeFilterElements.indexOf(e);if(-1===i)return!1;const n=t?i-1:i+1;if(n<0||n>=this.typeFilterElements.length)return!1;const s=this.typeFilterElements[n];return s.tabIndex=0,e.tabIndex=-1,s.focus(),!0}toggleTypeFilter(e,t){if(t&&e!==Vo.ALL_TYPES?this.allowedTypes.delete(Vo.ALL_TYPES):this.allowedTypes=new Set,this.allowedTypes.has(e)?this.allowedTypes.delete(e):this.allowedTypes.add(e),0===this.allowedTypes.size&&this.allowedTypes.add(Vo.ALL_TYPES),this.setting){const e={};for(const t of this.allowedTypes)e[t]=!0;this.setting.set(e)}else this.update()}static ALL_TYPES="all"}class Uo extends e.ObjectWrapper.ObjectWrapper{filterElement;activeWhenChecked;label;checkboxElement;constructor(e,t,i,n,o){super(),this.filterElement=document.createElement("div"),this.filterElement.classList.add("filter-checkbox-filter"),this.activeWhenChecked=Boolean(i),this.label=$n.create(t),this.filterElement.appendChild(this.label),this.checkboxElement=this.label.checkboxElement,n?Ii(this.checkboxElement,n):this.checkboxElement.checked=!0,this.checkboxElement.addEventListener("change",this.fireUpdated.bind(this),!1),o&&this.checkboxElement.setAttribute("jslog",`${s.toggle().track({change:!0}).context(o)}`)}isActive(){return this.activeWhenChecked===this.checkboxElement.checked}checked(){return this.checkboxElement.checked}setChecked(e){this.checkboxElement.checked=e}element(){return this.filterElement}labelElement(){return this.label}fireUpdated(){this.dispatchEventToListeners("FilterChanged")}}var _o=Object.freeze({__proto__:null,CheckboxFilterUI:Uo,FilterBar:Ho,NamedBitSetFilterUI:Vo,NamedBitSetFilterUIElement:jo,TextFilterUI:No});var Ko=Object.freeze({__proto__:null,FilterSuggestionBuilder:class{keys;valueSorter;valuesMap=new Map;constructor(e,t){this.keys=e,this.valueSorter=t||((e,t)=>t.sort())}completions(e,t,n){if(!t&&!n)return Promise.resolve([]);const s=t.startsWith("-");s&&(t=t.substring(1));const o=s?"-":"",r=t.indexOf(":"),a=[];if(-1===r){const e=new RegExp("^"+i.StringUtilities.escapeForRegExp(t),"i");for(const t of this.keys)e.test(t)&&a.push({text:o+t+":"})}else{const e=t.substring(0,r).toLowerCase(),n=t.substring(r+1),s=new RegExp("^"+i.StringUtilities.escapeForRegExp(n),"i"),l=Array.from(this.valuesMap.get(e)||new Set);this.valueSorter(e,l);for(const t of l)s.test(t)&&t!==n&&a.push({text:o+e+":"+t})}return Promise.resolve(a)}addItem(e,t){if(!t)return;let i=this.valuesMap.get(e);i||(i=new Set,this.valuesMap.set(e,i)),i.add(t)}clear(){this.valuesMap.clear()}}});class $o{constructor(){a.InspectorFrontendHost.InspectorFrontendHostInstance.events.addEventListener(a.InspectorFrontendHostAPI.Events.KeyEventUnhandled,this.onKeyEventUnhandled,this)}async onKeyEventUnhandled(e){const{type:t,key:i,keyCode:n,modifiers:s}=e.data;if("keydown"!==t)return;const o=b.instance(),r=G.instance();o.setFlavor(Q,Q.instance),await r.handleKey(A.makeKey(n,s),i),o.setFlavor(Q,null)}}new $o;var qo=Object.freeze({__proto__:null,ForwardedInputEventHandler:$o});let Xo=null;class Go{focusRestorer;static startEditing(e,t){return Xo||(Xo=new Go),Xo.startEditing(e,t)}editorContent(e){const t=e.element;return"INPUT"===t.tagName&&"text"===t.type?t.value:t.textContent||""}setUpEditor(e){const t=e.element;t.classList.add("editing"),t.setAttribute("contenteditable","plaintext-only");const i=t.getAttribute("role");Ds(t),e.oldRole=i;const n=t.getAttribute("tabIndex");("number"!=typeof n||n<0)&&(t.tabIndex=0),this.focusRestorer=new Dn(t),e.oldTabIndex=n}closeEditor(e){const t=e.element;t.classList.remove("editing"),t.removeAttribute("contenteditable"),"string"!=typeof e.oldRole?t.removeAttribute("role"):t.setAttribute("role",e.oldRole),"number"!=typeof e.oldTabIndex?t.removeAttribute("tabIndex"):t.setAttribute("tabIndex",e.oldTabIndex),t.scrollTop=0,t.scrollLeft=0}cancelEditing(e){const t=e.element;"INPUT"===t.tagName&&"text"===t.type?t.value=e.oldText||"":t.textContent=e.oldText}startEditing(e,t){if(!wn(e,!0))return null;const n={element:e,config:t,oldRole:null,oldTabIndex:null,oldText:null},s=t.commitHandler,o=t.cancelHandler,r=t.pasteHandler,a=t.context;let l="";const d=this;function h(i){t.blurHandler(e,i)&&m.call(e)}function c(){wn(e,!1),e.removeEventListener("blur",h,!1),e.removeEventListener("keydown",b,!0),r&&e.removeEventListener("paste",g,!0),d.focusRestorer&&d.focusRestorer.restore(),d.closeEditor(n)}function u(){d.cancelEditing(n),c(),o(this,a)}function m(){c(),s(this,d.editorContent(n),n.oldText,a,l),e.dispatchEvent(new Event("change"))}function p(t,i){"commit"===t?(m.call(e),i.consume(!0)):"cancel"===t?(u.call(e),i.consume(!0)):t?.startsWith("move-")&&(l=t.substring(5),"Tab"===i.key&&i.consume(!0),h())}function g(e){if(!r)return;p(r(e),e)}function b(e){let n=function(e){return"Enter"===e.key?"commit":e.keyCode===K.Esc.code||e.key===i.KeyboardUtilities.ESCAPE_KEY?"cancel":"Tab"===e.key?"move-"+(e.shiftKey?"backward":"forward"):""}(e);if(!n&&t.postKeydownFinishHandler){const i=t.postKeydownFinishHandler(e);i&&(n=i)}p(n,e)}this.setUpEditor(n),n.oldText=this.editorContent(n),e.addEventListener("blur",h,!1),e.addEventListener("keydown",b,!0),void 0!==r&&e.addEventListener("paste",g,!0);return{cancel:u.bind(e),commit:m.bind(e)}}}var Yo=Object.freeze({__proto__:null,Config:class{commitHandler;cancelHandler;context;blurHandler;pasteHandler;postKeydownFinishHandler;constructor(e,t,i,n=()=>!0){this.commitHandler=e,this.cancelHandler=t,this.context=i,this.blurHandler=n}setPostKeydownFinishHandler(e){this.postKeydownFinishHandler=e}},InplaceEditor:Go}),Qo={cssText:`.list{flex:auto 0 1;overflow-y:auto;flex-direction:column;--override-background-list-item-color:hsl(0deg 0% 96%);&:has(div){border:var(--sys-size-1) solid var(--sys-color-divider)}}.theme-with-dark-background .list,\n:host-context(.theme-with-dark-background) .list{--override-background-list-item-color:hsl(0deg 0% 16%)}.list-separator{background:var(--sys-color-divider);height:1px}.list-item{flex:none;min-height:30px;display:flex;align-items:center;position:relative;overflow:hidden}.list-item:focus-within:not(:active){background:var(--sys-color-state-hover-on-subtle)}.list-widget-input-validation-error{color:var(--sys-color-error);margin:0 5px}.controls-container{display:flex;flex-direction:row;justify-content:flex-end;align-items:stretch;pointer-events:none}.controls-gradient{flex:0 1 50px;.list-item:hover &{background-image:linear-gradient(90deg,transparent,var(--sys-color-cdt-base-container))}.list-item:focus-within:not(:active) &{background-image:linear-gradient(90deg,transparent,var(--override-background-list-item-color))}}.controls-buttons{flex:none;display:flex;flex-direction:row;align-items:center;pointer-events:auto;visibility:hidden;background-color:var(--sys-color-cdt-base-container);.list-item:hover &{visibility:visible}.list-item:focus-within:not(:active) &{background-color:var(--override-background-list-item-color);visibility:visible}}.editor-container{display:flex;flex-direction:column;align-items:stretch;flex:none;background:var(--sys-color-surface3);overflow:hidden}.editor-content{flex:auto;display:flex;flex-direction:column;align-items:stretch}.editor-buttons{flex:none;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;padding:5px;gap:var(--sys-size-6)}.editor-buttons > button{flex:none;margin-right:10px}.editor-content input{margin-right:10px}.editor-content input.error-input{background-color:var(--sys-color-cdt-base-container)}.text-prompt-container{padding:3px 6px;height:24px;border:none;box-shadow:var(--legacy-focus-ring-inactive-shadow);border-radius:2px;width:100%;background-color:var(--sys-color-cdt-base-container);&:focus{border:1px solid var(--sys-color-state-focus-ring)}& .text-prompt{width:100%}}@media (forced-colors: active){.list-item:focus-within .controls-buttons,\n .list-item:hover .controls-buttons{background-color:canvas}.list-item:focus-within,\n .list-item:hover{forced-color-adjust:none;background:Highlight}.list-item:focus-within *,\n .list-item:hover *{color:HighlightText}.list-item:focus-within .controls-gradient,\n .list-item:hover .controls-gradient{background-image:unset}}\n/*# sourceURL=${import.meta.resolve("./listWidget.css")} */\n`};const Zo={editString:"Edit",removeString:"Remove",saveString:"Save",addString:"Add",cancelString:"Cancel",changesSaved:"Changes to item have been saved",removedItem:"Item has been removed"},Jo=t.i18n.registerUIStrings("ui/legacy/ListWidget.ts",Zo),er=t.i18n.getLocalizedString.bind(void 0,Jo);var tr=Object.freeze({__proto__:null,Editor:class{element;contentElementInternal;commitButton;cancelButton;errorMessageContainer;controls=[];controlByName=new Map;validators=[];commit=null;cancel=null;item=null;index=-1;constructor(){this.element=document.createElement("div"),this.element.classList.add("editor-container"),this.element.setAttribute("jslog",`${s.pane("editor").track({resize:!0})}`),this.element.addEventListener("keydown",t.bind(null,i.KeyboardUtilities.isEscKey,this.cancelClicked.bind(this)),!1),this.contentElementInternal=this.element.createChild("div","editor-content"),this.contentElementInternal.addEventListener("keydown",t.bind(null,(e=>"Enter"===e.key&&!(e.target instanceof HTMLSelectElement)),this.commitClicked.bind(this)),!1);const e=this.element.createChild("div","editor-buttons");function t(e,t,i){e(i)&&(i.consume(!0),t())}this.cancelButton=Vn(er(Zo.cancelString),this.cancelClicked.bind(this),{jslogContext:"cancel",variant:"outlined"}),this.cancelButton.setAttribute("jslog",`${s.action("cancel").track({click:!0})}`),e.appendChild(this.cancelButton),this.commitButton=Vn("",this.commitClicked.bind(this),{jslogContext:"commit",variant:"primary"}),e.appendChild(this.commitButton),this.errorMessageContainer=this.element.createChild("div","list-widget-input-validation-error"),ys(this.errorMessageContainer)}contentElement(){return this.contentElementInternal}createInput(e,t,i,n){const o=Un("",t);return o.placeholder=i,o.addEventListener("input",this.validateControls.bind(this,!1),!1),o.setAttribute("jslog",`${s.textField().track({change:!0,keydown:"Enter"}).context(e)}`),to(o,i),this.controlByName.set(e,o),this.controls.push(o),this.validators.push(n),o}createSelect(e,t,n,o){const r=document.createElement("select");r.setAttribute("jslog",`${s.dropDown().track({change:!0}).context(e)}`);for(let e=0;e<t.length;++e){const n=r.createChild("option");n.value=t[e],n.textContent=t[e],n.setAttribute("jslog",`${s.item(i.StringUtilities.toKebabCase(t[e])).track({click:!0})}`)}return o&&(gt.install(r,o),to(r,o)),r.addEventListener("input",this.validateControls.bind(this,!1),!1),r.addEventListener("blur",this.validateControls.bind(this,!1),!1),this.controlByName.set(e,r),this.controls.push(r),this.validators.push(n),r}createCustomControl(e,t,i){const n=new t;return this.controlByName.set(e,n),this.controls.push(n),this.validators.push(i),n}control(e){const t=this.controlByName.get(e);if(!t)throw new Error(`Control with name ${e} does not exist, please verify.`);return t}validateControls(e){let t=!0;this.errorMessageContainer.textContent="";for(let i=0;i<this.controls.length;++i){const n=this.controls[i],{valid:s,errorMessage:o}=this.validators[i].call(null,this.item,this.index,n);if(n.classList.toggle("error-input",!s&&!e),eo(n,!s&&!e),!e&&o){if(this.errorMessageContainer.textContent){const e=document.createElement("br");this.errorMessageContainer.append(e)}this.errorMessageContainer.append(o)}t=t&&s}this.commitButton.disabled=!t}requestValidation(){this.validateControls(!1)}beginEdit(e,t,i,n,s){this.commit=n,this.cancel=s,this.item=e,this.index=t,this.commitButton.textContent=i,this.element.scrollIntoViewIfNeeded(!1),this.controls.length&&this.controls[0].focus(),this.validateControls(!0)}commitClicked(){if(this.commitButton.disabled)return;const e=this.commit;this.commit=null,this.cancel=null,this.item=null,this.index=-1,e&&e()}cancelClicked(){const e=this.cancel;this.commit=null,this.cancel=null,this.item=null,this.index=-1,e&&e()}},ListWidget:class extends it{delegate;list;lastSeparator;focusRestorer;items;editable;elements;editor;editItem;editElement;emptyPlaceholder;isTable;constructor(e,t=!0,i=!1){super(!0,t),this.registerRequiredCSS(Qo),this.delegate=e,this.list=this.contentElement.createChild("div","list"),this.lastSeparator=!1,this.focusRestorer=null,this.items=[],this.editable=[],this.elements=[],this.editor=null,this.editItem=null,this.editElement=null,this.emptyPlaceholder=null,this.isTable=i,i&&(this.list.role="table"),this.updatePlaceholder()}clear(){this.items=[],this.editable=[],this.elements=[],this.lastSeparator=!1,this.list.removeChildren(),this.updatePlaceholder(),this.stopEditing()}appendItem(e,t){if(this.lastSeparator&&this.items.length){const e=document.createElement("div");e.classList.add("list-separator"),this.isTable&&(e.role="rowgroup"),this.list.appendChild(e)}this.lastSeparator=!1,this.items.push(e),this.editable.push(t);const i=this.list.createChild("div","list-item");this.isTable&&(i.role="rowgroup");const n=this.delegate.renderItem(e,t);n.hasAttribute("jslog")||i.setAttribute("jslog",`${s.item()}`),i.appendChild(n),t&&(i.classList.add("editable"),i.tabIndex=0,i.appendChild(this.createControls(e,i))),this.elements.push(i),this.updatePlaceholder()}appendSeparator(){this.lastSeparator=!0}removeItem(e){this.editItem===this.items[e]&&this.stopEditing();const t=this.elements[e],i=t.previousElementSibling,n=i?.classList.contains("list-separator"),s=t.nextElementSibling,o=s?.classList.contains("list-separator");!n||!o&&s||i?.remove(),o&&!i&&s?.remove(),t.remove(),this.elements.splice(e,1),this.items.splice(e,1),this.editable.splice(e,1),this.updatePlaceholder()}addNewItem(e,t){this.startEditing(t,null,this.elements[e]||null)}setEmptyPlaceholder(e){this.emptyPlaceholder=e,this.updatePlaceholder()}createControls(e,t){const i=document.createElement("div");return i.classList.add("controls-container"),i.classList.add("fill"),c(h`
4
+ <div class="controls-gradient"></div>
5
+ <div class="controls-buttons">
6
+ <devtools-toolbar>
7
+ <devtools-button class=toolbar-button
8
+ .iconName=${"edit"}
9
+ .jslogContext=${"edit-item"}
10
+ .title=${er(Zo.editString)}
11
+ .variant=${"icon"}
12
+ @click=${function(){const i=this.elements.indexOf(t),n=this.elements[i+1]||null;this.startEditing(e,t,n)}}></devtools-button>
13
+ <devtools-button class=toolbar-button
14
+ .iconName=${"bin"}
15
+ .jslogContext=${"remove-item"}
16
+ .title=${er(Zo.removeString)}
17
+ .variant=${"icon"}
18
+ @click=${function(){const e=this.elements.indexOf(t);this.element.focus(),this.delegate.removeItemRequested(this.items[e],e),co(er(Zo.removedItem)),this.elements.length>=1&&this.elements[Math.min(e,this.elements.length-1)].focus()}}></devtools-button>
19
+ </devtools-toolbar>
20
+ </div>`,i,{host:this}),i}wasShown(){super.wasShown(),this.stopEditing()}updatePlaceholder(){this.emptyPlaceholder&&(this.elements.length||this.editor?this.emptyPlaceholder.remove():this.list.appendChild(this.emptyPlaceholder))}startEditing(e,t,i){if(t&&this.editElement===t)return;this.stopEditing(),this.focusRestorer=new Dn(this.element),this.list.classList.add("list-editing"),this.element.classList.add("list-editing"),this.editItem=e,this.editElement=t,t&&t.classList.add("hidden");const n=t?this.elements.indexOf(t):-1;this.editor=this.delegate.beginEdit(e),this.updatePlaceholder(),this.list.insertBefore(this.editor.element,i),this.editor.beginEdit(e,n,er(t?Zo.saveString:Zo.addString),this.commitEditing.bind(this),this.stopEditing.bind(this))}commitEditing(){const e=this.editItem,t=!this.editElement,i=this.editor,n=this.editElement?this.elements.indexOf(this.editElement):this.elements.length-1;this.stopEditing(),null!==e&&(this.delegate.commitEdit(e,i,t),co(er(Zo.changesSaved)),this.elements[n]&&this.elements[n].focus())}stopEditing(){this.list.classList.remove("list-editing"),this.element.classList.remove("list-editing"),this.focusRestorer&&this.focusRestorer.restore(),this.editElement&&this.editElement.classList.remove("hidden"),this.editor?.element.parentElement&&this.editor.element.remove(),this.editor=null,this.editItem=null,this.editElement=null,this.updatePlaceholder()}}});class ir extends it{panelName;constructor(e,t){super(t),this.element.setAttribute("jslog",`${s.panel().context(e).track({resize:!0})}`),this.element.classList.add("panel"),this.element.setAttribute("aria-label",e),this.element.classList.add(e),this.panelName=e,self.UI=self.UI||{},self.UI.panels=self.UI.panels||{},UI.panels[e]=this}get name(){return this.panelName}searchableView(){return null}elementsToRestoreScrollPositionsFor(){return[]}}var nr=Object.freeze({__proto__:null,Panel:ir,PanelWithSidebar:class extends ir{panelSplitWidget;mainWidget;sidebarWidget;constructor(e,t){super(e),this.panelSplitWidget=new dt(!0,!1,this.panelName+"-panel-split-view-state",t||200),this.panelSplitWidget.show(this.element),this.mainWidget=new it,this.panelSplitWidget.setMainWidget(this.mainWidget),this.sidebarWidget=new it,this.sidebarWidget.setMinimumSize(100,25),this.panelSplitWidget.setSidebarWidget(this.sidebarWidget),this.sidebarWidget.element.classList.add("panel-sidebar"),this.sidebarWidget.element.setAttribute("jslog",`${s.pane("sidebar").track({resize:!0})}`)}panelSidebarElement(){return this.sidebarWidget.element}mainElement(){return this.mainWidget.element}splitWidget(){return this.panelSplitWidget}}}),sr={cssText:`.widget{display:flex;font:var(--sys-typescale-body4-regular);box-shadow:var(--sys-elevation-level2);color:var(--sys-color-on-surface);background-color:var(--sys-color-base-container-elevated);border-radius:var(--sys-shape-corner-small);padding:var(--sys-size-4);user-select:text;overflow:auto}.squiggles-content{display:flex;flex-direction:column;gap:5px}.squiggles-content-item{display:flex;align-items:center;gap:5px;& devtools-icon{cursor:pointer}}\n/*# sourceURL=${import.meta.resolve("./popover.css")} */\n`};class or{static createPopover=e=>{const t=new cs(`${s.popover(e).parent("mapped")}`);return t.registerRequiredCSS(sr),t.setSizeBehavior("MeasureContent"),t.setMarginBehavior("DefaultMargin"),t};disableOnClick;getRequest;scheduledRequest;hidePopoverCallback;container;showTimeout;hideTimeout;hidePopoverTimer;showPopoverTimer;boundMouseDown;boundMouseMove;boundMouseOut;boundKeyUp;jslogContext;constructor(e,t,i){this.disableOnClick=!1,this.getRequest=t,this.jslogContext=i,this.scheduledRequest=null,this.hidePopoverCallback=null,this.container=e,this.showTimeout=0,this.hideTimeout=0,this.hidePopoverTimer=null,this.showPopoverTimer=null,this.boundMouseDown=this.mouseDown.bind(this),this.boundMouseMove=this.mouseMove.bind(this),this.boundMouseOut=this.mouseOut.bind(this),this.boundKeyUp=this.keyUp.bind(this),this.container.addEventListener("mousedown",this.boundMouseDown,!1),this.container.addEventListener("mousemove",this.boundMouseMove,!1),this.container.addEventListener("mouseout",this.boundMouseOut,!1),this.container.addEventListener("keyup",this.boundKeyUp,!1),this.setTimeout(1e3)}setTimeout(e,t){this.showTimeout=e,this.hideTimeout="number"==typeof t?t:e/2}setDisableOnClick(e){this.disableOnClick=e}eventInScheduledContent(e){const t=e;return!!this.scheduledRequest&&this.scheduledRequest.box.contains(t.clientX,t.clientY)}mouseDown(e){this.disableOnClick?this.hidePopover():this.eventInScheduledContent(e)||(this.startHidePopoverTimer(0),this.stopShowPopoverTimer(),this.startShowPopoverTimer(e,0))}keyUp(e){const t=e;t.altKey&&"ArrowDown"===t.key?(this.isPopoverVisible()?this.hidePopover():(this.stopShowPopoverTimer(),this.startHidePopoverTimer(0),this.startShowPopoverTimer(t,0)),e.stopPropagation()):"Escape"===t.key&&this.isPopoverVisible()&&(this.hidePopover(),e.stopPropagation())}mouseMove(e){const t=e;if(this.eventInScheduledContent(t))return this.stopShowPopoverTimer(),void this.startShowPopoverTimer(t,this.isPopoverVisible()?.6*this.showTimeout:this.showTimeout);this.startHidePopoverTimer(this.hideTimeout),this.stopShowPopoverTimer(),t.buttons&&this.disableOnClick||this.startShowPopoverTimer(t,this.isPopoverVisible()?.6*this.showTimeout:this.showTimeout)}popoverMouseMove(e){this.stopHidePopoverTimer()}popoverMouseOut(e,t){const i=t;if(!e.isShowing())return;const n=i.relatedTarget;n&&!n.isSelfOrDescendant(e.contentElement)&&this.startHidePopoverTimer(this.hideTimeout)}mouseOut(e){this.isPopoverVisible()&&(this.eventInScheduledContent(e)||this.startHidePopoverTimer(this.hideTimeout))}startHidePopoverTimer(e){this.hidePopoverCallback&&!this.hidePopoverTimer&&(this.hidePopoverTimer=window.setTimeout((()=>{this.hidePopoverInternal(),this.hidePopoverTimer=null}),e))}startShowPopoverTimer(e,t){this.scheduledRequest=this.getRequest.call(null,e),this.scheduledRequest&&(this.showPopoverTimer=window.setTimeout((()=>{this.showPopoverTimer=null,this.stopHidePopoverTimer(),this.hidePopoverInternal();const t=e.target.ownerDocument;this.showPopover(t)}),t))}stopShowPopoverTimer(){this.showPopoverTimer&&(clearTimeout(this.showPopoverTimer),this.showPopoverTimer=null)}isPopoverVisible(){return Boolean(this.hidePopoverCallback)}hidePopover(){this.stopShowPopoverTimer(),this.hidePopoverInternal()}hidePopoverInternal(){this.hidePopoverCallback&&(this.hidePopoverCallback.call(null),this.hidePopoverCallback=null)}showPopover(e){const t=or.createPopover(this.jslogContext),i=this.scheduledRequest;i&&i.show.call(null,t).then((n=>{n&&(this.scheduledRequest===i?(rr&&rr.hidePopover(),rr=this,s.setMappedParent(t.contentElement,this.container),t.contentElement.style.scrollbarGutter="stable",t.contentElement.addEventListener("mousemove",this.popoverMouseMove.bind(this),!0),t.contentElement.addEventListener("mouseout",this.popoverMouseOut.bind(this,t),!0),t.setContentAnchorBox(i.box),t.show(e),this.hidePopoverCallback=()=>{i.hide&&i.hide.call(null),t.hide(),rr=null}):i.hide&&i.hide.call(null))}))}stopHidePopoverTimer(){this.hidePopoverTimer&&(clearTimeout(this.hidePopoverTimer),this.hidePopoverTimer=null,this.stopShowPopoverTimer())}dispose(){this.container.removeEventListener("mousedown",this.boundMouseDown,!1),this.container.removeEventListener("mousemove",this.boundMouseMove,!1),this.container.removeEventListener("mouseout",this.boundMouseOut,!1)}}let rr=null;var ar=Object.freeze({__proto__:null,PopoverHelper:or}),lr={cssText:`.progress-indicator-shadow-stop-button{background-color:var(--sys-color-error-bright);border:0;width:10px;height:12px;border-radius:2px}.progress-indicator-shadow-container{display:flex;flex:1 0 auto;align-items:center}.progress-indicator-shadow-container .title{text-overflow:ellipsis;overflow:hidden;max-width:150px;margin-right:2px;color:var(--sys-color-token-subtle)}.progress-indicator-shadow-container progress{flex:auto;margin:0 2px;width:100px}\n/*# sourceURL=${import.meta.resolve("./progressIndicator.css")} */\n`};var dr=Object.freeze({__proto__:null,ProgressIndicator:class{element;shadowRoot;contentElement;labelElement;progressElement;stopButton;isCanceledInternal;worked;isDone;constructor(e={showStopButton:!0}){this.element=document.createElement("div"),this.element.classList.add("progress-indicator"),this.shadowRoot=rs(this.element,{cssFile:lr}),this.contentElement=this.shadowRoot.createChild("div","progress-indicator-shadow-container"),this.labelElement=this.contentElement.createChild("div","title"),this.progressElement=this.contentElement.createChild("progress"),this.progressElement.value=0,e.showStopButton&&(this.stopButton=this.contentElement.createChild("button","progress-indicator-shadow-stop-button"),this.stopButton.addEventListener("click",this.cancel.bind(this))),this.isCanceledInternal=!1,this.worked=0}show(e){e.appendChild(this.element)}done(){this.isDone||(this.isDone=!0,this.element.remove())}cancel(){this.isCanceledInternal=!0}isCanceled(){return this.isCanceledInternal}setTitle(e){this.labelElement.textContent=e}setTotalWork(e){this.progressElement.max=e}setWorked(e,t){this.worked=e,this.progressElement.value=e,t&&this.setTitle(t)}incrementWorked(e){this.setWorked(this.worked+(e||1))}}}),hr={cssText:`.widget{padding:var(--sys-size-8);user-select:text}.header{padding-top:var(--sys-size-3);margin:var(--sys-size-5) var(--sys-size-5) var(--sys-size-5) var(--sys-size-8);font:var(--sys-typescale-body2-medium)}.remote-debugging-terminated-title{font-size:17px;font-weight:normal;margin:6px 0}.remote-debugging-terminated-message{font-size:14px;margin:5px 0;margin-bottom:16px}.remote-debugging-terminated-options{display:grid;grid-template-columns:1fr auto;grid-gap:8px;align-items:center}.remote-debugging-terminated-label{grid-column:1;margin:8px 0;max-width:300px;font-size:larger;line-height:1.4}.remote-debugging-terminated-options .text-button{grid-column:2}.remote-debugging-terminated-feedback-container{display:flex;flex-direction:column;align-items:center;padding:12px 16px;background-color:var(--color-background-elevation-2);border-radius:6px;margin-bottom:12px}.remote-debugging-terminated-feedback-label{font-size:14px;margin-bottom:8px}.remote-debugging-terminated-feedback-launch-id{color:var(--color-red)}.remote-debugging-terminated-reason{color:var(--color-red);margin:8px;textarea{width:100%;resize:none}}\n/*# sourceURL=${import.meta.resolve("./remoteDebuggingTerminatedScreen.css")} */\n`};const cr={title:"DevTools is disconnected",debuggingConnectionWasClosed:"Debugging connection was closed. Reason: ",debuggingConnectionWasClosedDetails:"Details: ",reconnectWhenReadyByReopening:"Reconnect when ready (will reload DevTools)",reconnectDevtools:"Reconnect `DevTools`",closeDialog:"Dismiss",closeDialogDetail:"Dismiss this dialog and continue using `DevTools` while disconnected",sendFeedbackMessage:"[FB-only] Please send feedback if this disconnection is unexpected.",sendFeedbackLaunchIdMessage:"Please include the following session ID:",sendFeedback:"Send feedback"},ur=t.i18n.registerUIStrings("ui/legacy/RemoteDebuggingTerminatedScreen.ts",cr),mr=t.i18n.getLocalizedString.bind(void 0,ur),{render:pr,html:gr}=d;class br extends it{constructor(e,t,i){super(!0),this.registerRequiredCSS(hr);const n=globalThis.FB_ONLY__reactNativeFeedbackLink;pr(gr`
21
+ <h1 class="remote-debugging-terminated-title">${mr(cr.title)}</h1>
22
+ <div class="remote-debugging-terminated-message">
23
+ <div>${mr(cr.debuggingConnectionWasClosed)}</div>
24
+ <div class="remote-debugging-terminated-reason">${e}</div>
25
+ ${globalThis.enableDisplayingFullDisconnectedReason?gr`
26
+ <div>
27
+ ${mr(cr.debuggingConnectionWasClosedDetails)}
28
+ </div>
29
+ <div class="remote-debugging-terminated-reason">
30
+ <textarea disabled rows="5">${JSON.stringify(t,null,2)}</textarea>
31
+ </div>
32
+ `:""}
33
+ </div>
34
+ ${null!=n?this.#S(n):null}
35
+ <div class="remote-debugging-terminated-options">
36
+ <div class="remote-debugging-terminated-label">
37
+ ${mr(cr.reconnectWhenReadyByReopening)}
38
+ </div>
39
+ ${Vn(mr(cr.reconnectDevtools),(()=>{window.location.reload()}),{className:"primary-button",jslogContext:"reconnect"})}
40
+ <div class="remote-debugging-terminated-label">
41
+ ${mr(cr.closeDialogDetail)}
42
+ </div>
43
+ ${Vn(mr(cr.closeDialog),i,{jslogContext:"dismiss"})}
44
+ </div>
45
+ `,this.contentElement,{host:this})}static show(e,t){const i=new bs("remote-debnugging-terminated");i.setSizeBehavior("MeasureContent"),i.setDimmed(!0),new br(e,t,(()=>i.hide())).show(i.contentElement),i.show(),a.rnPerfMetrics.remoteDebuggingTerminated(t)}#S(e){const t=n.Runtime.Runtime.queryParam("launchId");return gr`
46
+ <div class="remote-debugging-terminated-feedback-container">
47
+ <div class="remote-debugging-terminated-feedback-label">${mr(cr.sendFeedbackMessage)}</div>
48
+ ${t?gr`
49
+ <div class="remote-debugging-terminated-feedback-label">
50
+ ${mr(cr.sendFeedbackLaunchIdMessage)}
51
+ </div>
52
+ <div class="remote-debugging-terminated-feedback-launch-id">
53
+ ${t}
54
+ </div>
55
+ `:""}
56
+ <br/>
57
+ ${Vn(mr(cr.sendFeedback),(()=>{a.InspectorFrontendHost.InspectorFrontendHostInstance.openInNewTab(e)}),{jslogContext:"sendFeedback"})}
58
+ </div>
59
+ `}}var vr=Object.freeze({__proto__:null,RemoteDebuggingTerminatedScreen:br}),fr={cssText:`:host{background-color:var(--sys-color-cdt-base-container)}.report-content-box{background-color:var(--sys-color-cdt-base-container);overflow:auto}.report-content-box.no-scroll{overflow:visible}.report-header{border-bottom:1px solid var(--sys-color-divider);padding:var(--sys-size-7) var(--sys-size-9)}.report-header devtools-toolbar{margin-bottom:-8px;margin-top:5px;margin-left:-8px}.report-title{font:var(--sys-typescale-headline4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none}.report-url,\n.report-subtitle{font:var(--sys-typescale-body4-regular)}.report-section{display:flex;padding:var(--sys-size-7) var(--sys-size-9) 11px var(--sys-size-9);border-bottom:1px solid var(--sys-color-divider);flex-direction:column}.report-section-header{padding-bottom:var(--sys-size-5);display:flex;flex-direction:row;align-items:center;devtools-button{flex:0 0 auto}&:has(.report-section-title:empty){padding:0}}.report-section-title{font:var(--sys-typescale-headline5);flex:1 1 auto;text-overflow:ellipsis;overflow:hidden;line-height:16px;color:var(--sys-color-on-surface);min-width:var(--sys-size-21);white-space:nowrap}.report-field{display:flex;padding:var(--sys-size-3) 0}.report-row{font:var(--sys-typescale-body4-regular);margin:var(--sys-size-3) 0;> dt-checkbox:first-child{margin-left:calc(var(--sys-size-4) * -1)}> devtools-icon:first-child{margin-inline-start:0}}.report-field-name{font:var(--sys-typescale-body5-medium);color:var(--sys-color-on-surface-subtle);flex:0 0 128px;text-align:left;white-space:pre-wrap}.report-field-value{font:var(--sys-typescale-body4-regular);flex:auto;padding:0 var(--sys-size-6);white-space:pre;user-select:text}.report-field-value-is-flexed{display:flex;white-space:pre-wrap}.report-field-value-subtitle{color:var(--sys-color-state-disabled);line-height:14px}.report-row-selectable{user-select:text}.image-wrapper,\n.image-wrapper img{max-width:200px;max-height:200px;display:block;object-fit:contain}.image-wrapper{height:fit-content;margin-right:8px}.show-mask img{clip-path:circle(40% at 50% 50%)}.show-mask .image-wrapper{background:var(--image-file-checker)}@media (forced-colors: active){.report-field-value .inline-icon{color:ButtonText}.report-field-value .multiline-value{color:ButtonText}}\n/*# sourceURL=${import.meta.resolve("./reportView.css")} */\n`};class wr extends it{jslogContext;headerElement;headerButtons=[];titleElement;fieldList;fieldMap=new Map;constructor(e,t,i){super(),this.jslogContext=i,this.element.classList.add("report-section"),t&&this.element.classList.add(t),i&&this.element.setAttribute("jslog",`${s.section(i)}`),this.jslogContext=i,this.headerElement=this.element.createChild("div","report-section-header"),this.titleElement=this.headerElement.createChild("div","report-section-title"),this.setTitle(e),js(this.titleElement,2),this.fieldList=this.element.createChild("div","vbox")}title(){return this.titleElement.textContent||""}getTitleElement(){return this.titleElement}getFieldElement(){return this.fieldList}appendFieldWithCustomView(e){this.fieldList.append(e)}setTitle(e,t){this.titleElement.textContent!==e&&(this.titleElement.textContent=e),gt.install(this.titleElement,t||""),this.titleElement.classList.toggle("hidden",!this.titleElement.textContent)}setUiGroupTitle(e){Ss(this.element),to(this.element,e)}appendButtonToHeader(e){this.headerButtons.push(e),this.headerElement.appendChild(e)}setHeaderButtonsState(e){this.headerButtons.map((t=>{t.disabled=e}))}appendField(e,t){let i=this.fieldMap.get(e);return i||(i=this.fieldList.createChild("div","report-field"),i.createChild("div","report-field-name").textContent=e,this.fieldMap.set(e,i),i.createChild("div","report-field-value")),t&&i.lastElementChild&&(i.lastElementChild.textContent=t),i.lastElementChild}appendFlexedField(e,t){const i=this.appendField(e,t);return i.classList.add("report-field-value-is-flexed"),i}removeField(e){const t=this.fieldMap.get(e);t&&t.remove(),this.fieldMap.delete(e)}setFieldVisible(e,t){const i=this.fieldMap.get(e);i&&i.classList.toggle("hidden",!t)}fieldValue(e){const t=this.fieldMap.get(e);return t?t.lastElementChild:null}appendRow(){return this.fieldList.createChild("div","report-row")}appendSelectableRow(){return this.fieldList.createChild("div","report-row report-row-selectable")}clearContent(){this.fieldList.removeChildren(),this.fieldMap.clear()}markFieldListAsGroup(){Ss(this.fieldList),to(this.fieldList,this.title())}setIconMasked(e){this.element.classList.toggle("show-mask",e)}}var xr=Object.freeze({__proto__:null,ReportView:class extends it{contentBox;headerElement;titleElement;sectionList;subtitleElement;urlElement;constructor(e){super(!0),this.registerRequiredCSS(fr),this.contentBox=this.contentElement.createChild("div","report-content-box"),this.headerElement=this.contentBox.createChild("div","report-header vbox"),this.titleElement=this.headerElement.createChild("div","report-title"),e?this.titleElement.textContent=e:this.headerElement.classList.add("hidden"),js(this.titleElement,1),this.sectionList=this.contentBox.createChild("div","vbox")}getHeaderElement(){return this.headerElement}setTitle(e){this.titleElement.textContent!==e&&(this.titleElement.textContent=e,this.headerElement.classList.toggle("hidden",Boolean(e)))}setSubtitle(e){this.subtitleElement&&this.subtitleElement.textContent===e||(this.subtitleElement||(this.subtitleElement=this.headerElement.createChild("div","report-subtitle")),this.subtitleElement.textContent=e)}setURL(e){this.urlElement||(this.urlElement=this.headerElement.createChild("div","report-url link")),this.urlElement.removeChildren(),e&&this.urlElement.appendChild(e),this.urlElement.setAttribute("jslog",`${s.link("source-location").track({click:!0})}`)}createToolbar(){return this.headerElement.createChild("devtools-toolbar")}appendSection(e,t,i){const n=new wr(e,t,i);return n.show(this.sectionList),n}sortSections(e){const t=this.children().slice();if(!t.every(((t,i,n)=>!i||e(n[i-1],n[i])<=0))){this.detachChildWidgets(),t.sort(e);for(const e of t)e.show(this.sectionList)}}setHeaderVisible(e){this.headerElement.classList.toggle("hidden",!e)}setBodyScrollable(e){this.contentBox.classList.toggle("no-scroll",!e)}},Section:wr}),yr={cssText:`.root-view{background-color:var(--sys-color-cdt-base-container);overflow:hidden;position:absolute!important;inset:0}\n/*# sourceURL=${import.meta.resolve("./rootView.css")} */\n`};var Er=Object.freeze({__proto__:null,RootView:class extends it{window;constructor(){super(),this.markAsRoot(),this.element.classList.add("root-view"),this.registerRequiredCSS(yr),this.element.setAttribute("spellcheck","false")}attachToDocument(e){e.defaultView&&e.defaultView.addEventListener("resize",this.doResize.bind(this),!1),this.window=e.defaultView,this.doResize(),this.show(e.body)}doResize(){if(this.window){const e=this.constraints().minimum,t=at.instance().zoomFactor(),i=Math.min(0,this.window.innerWidth-e.width/t);this.element.style.marginRight=i+"px";const n=Math.min(0,this.window.innerHeight-e.height/t);this.element.style.marginBottom=n+"px"}super.doResize()}}}),Ir={cssText:`.search-bar{flex:0 0 33px;border-top:1px solid var(--sys-color-divider);devtools-icon[name="search"]{width:var(--sys-size-8);height:var(--sys-size-8);color:var(--sys-color-on-surface-subtle);margin-right:var(--sys-size-3)}&.replaceable{& devtools-icon[name="search"]{display:none}}&:not(.replaceable) .replace-element{display:none}.search-replace{appearance:none;color:var(--sys-color-on-surface);background-color:transparent;border:0;z-index:1;flex:1;&::placeholder{color:var(--sys-color-on-surface-subtle)}&:placeholder-shown + .clear-button{display:none}&::-webkit-search-cancel-button{display:none}}.search-input-background{grid-row:1/2}.icon-and-input{margin-left:var(--sys-size-5);grid-row:1/2;grid-column:1/2;display:inline-flex;&:hover ~ .search-input-background{background-color:var(--sys-color-state-hover-on-subtle)}&:has(.search-replace:placeholder-shown) ~ .search-config-buttons > .clear-button{display:none}}.toolbar-search{display:flex;margin:var(--sys-size-2)}.second-row-buttons{height:var(--sys-size-12);display:inline-flex;& > devtools-button{margin-right:var(--sys-size-3)}}.input-line{grid-column:1/3;display:inline-flex;padding:0 var(--sys-size-2) 0 var(--sys-size-5);border-radius:100px;height:var(--sys-size-10);position:relative;&:not(:has(devtools-button:hover)):hover{background-color:var(--sys-color-state-hover-on-subtle)}&::before{content:"";box-sizing:inherit;height:100%;width:100%;position:absolute;left:0;background:var(--sys-color-cdt-base);z-index:-10;border-radius:100px;padding:var(--sys-size-2)}& > devtools-button{width:var(--sys-size-11);justify-content:center;margin-right:var(--sys-size-4)}}.search-inputs{display:grid;grid-template-columns:1fr min-content;grid-auto-rows:var(--sys-size-12);flex-grow:1;align-items:center;min-width:150px}.first-row-buttons{display:flex;justify-content:space-between}devtools-toolbar{padding:0;height:var(--sys-size-12);display:flex;align-items:center}.search-config-buttons{margin:0 var(--sys-size-3) 0 auto;z-index:1;display:inline-flex;grid-row:1/2;grid-column:2/3;& > devtools-button:last-child{margin-right:var(--sys-size-4)}}.toolbar-search-buttons{margin-left:var(--sys-size-3)}.replace-element:has(input:focus){box-shadow:inset 0 0 0 2px var(--sys-color-state-focus-ring)}.search-inputs:has(input[type="search"]:focus) .search-input-background{box-shadow:inset 0 0 0 2px var(--sys-color-state-focus-ring)}}:host-context(#sources-panel-sources-view) .search-bar{flex-basis:auto}:host-context(#sources-panel-sources-view) .toolbar-search{flex-wrap:wrap}\n/*# sourceURL=${import.meta.resolve("./searchableView.css")} */\n`};const Sr={replace:"Replace",enableFindAndReplace:"Find and replace",disableFindAndReplace:"Disable find and replace",findString:"Find",searchPrevious:"Show previous result",searchNext:"Show next result",enableCaseSensitive:"Enable case sensitive search",disableCaseSensitive:"Disable case sensitive search",enableRegularExpression:"Enable regular expressions",disableRegularExpression:"Disable regular expressions",closeSearchBar:"Close search bar",replaceAll:"Replace all",dOfD:"{PH1} of {PH2}",accessibledOfD:"Shows result {PH1} of {PH2}",matchString:"1 match",dMatches:"{PH1} matches",clearInput:"Clear"},Cr=t.i18n.registerUIStrings("ui/legacy/SearchableView.ts",Sr),Tr=t.i18n.getLocalizedString.bind(void 0,Cr);function kr(e){const t=new o.Button.Button;return t.data={variant:"icon",size:"SMALL",jslogContext:e,title:Tr(Sr.clearInput),iconName:"cross-circle-filled"},t.ariaLabel=Tr(Sr.clearInput),t.classList.add("clear-button"),t.tabIndex=-1,t}const Mr=new WeakMap;class Lr{query;caseSensitive;isRegex;constructor(e,t,i){this.query=e,this.caseSensitive=t,this.isRegex=i}toSearchRegex(e){let t=this.caseSensitive?"":"i";e&&(t+="g");const n=this.query.startsWith("/")&&this.query.endsWith("/"),s=this.isRegex&&!n?"/"+this.query+"/":this.query;let o,r=!1;try{/^\/.+\/$/.test(s)&&this.isRegex&&(o=new RegExp(s.substring(1,s.length-1),t),r=!0)}catch{}return o||(o=i.StringUtilities.createPlainTextSearchRegex(s,t)),{regex:o,fromQuery:r}}}var Pr=Object.freeze({__proto__:null,SearchConfig:Lr,SearchableView:class extends it{searchProvider;replaceProvider;setting;replaceable;footerElementContainer;footerElement;replaceToggleButton;searchInputElement;matchesElement;searchNavigationPrevElement;searchNavigationNextElement;replaceInputElement;caseSensitiveButton;regexButton;replaceButtonElement;replaceAllButtonElement;minimalSearchQuerySize;searchIsVisible;currentQuery;valueChangedTimeoutId;constructor(t,i,n){super(!0),this.registerRequiredCSS(Ir),Mr.set(this.element,this),this.searchProvider=t,this.replaceProvider=i,this.setting=n?e.Settings.Settings.instance().createSetting(n,{}):null,this.replaceable=!1,this.contentElement.createChild("slot"),this.footerElementContainer=this.contentElement.createChild("div","search-bar hidden"),this.footerElementContainer.style.order="100",this.footerElement=this.footerElementContainer.createChild("div","toolbar-search"),this.footerElement.setAttribute("jslog",`${s.toolbar("search").track({resize:!0})}`);const a=this.footerElement.createChild("devtools-toolbar","replace-toggle-toolbar");this.replaceToggleButton=new Qi(Tr(Sr.enableFindAndReplace),"replace",void 0,"replace"),to(this.replaceToggleButton.element,Tr(Sr.enableFindAndReplace)),this.replaceToggleButton.addEventListener("Click",this.toggleReplace,this),a.appendToolbarItem(this.replaceToggleButton);const l=this.footerElement.createChild("div","search-inputs"),d=l.createChild("div","icon-and-input"),h=r.Icon.create("search");d.appendChild(h),this.searchInputElement=_n("search","search-replace search"),this.searchInputElement.id="search-input-field",this.searchInputElement.autocomplete="off",this.searchInputElement.placeholder=Tr(Sr.findString),this.searchInputElement.setAttribute("jslog",`${s.textField("search").track({change:!0,keydown:"ArrowUp|ArrowDown|Enter|Escape"})}`),this.searchInputElement.addEventListener("keydown",this.onSearchKeyDown.bind(this),!0),this.searchInputElement.addEventListener("input",this.onInput.bind(this),!1),d.appendChild(this.searchInputElement);const c=l.createChild("div","replace-element input-line");this.replaceInputElement=c.createChild("input","search-replace"),this.replaceInputElement.addEventListener("keydown",this.onReplaceKeyDown.bind(this),!0),this.replaceInputElement.placeholder=Tr(Sr.replace),this.replaceInputElement.setAttribute("jslog",`${s.textField("replace").track({change:!0,keydown:"Enter"})}`);const u=kr("clear-replace-input");u.addEventListener("click",(()=>{this.replaceInputElement.value="",this.replaceInputElement.focus()})),c.appendChild(u);const m=l.createChild("div","search-config-buttons"),p=kr("clear-search-input");if(p.addEventListener("click",(()=>{this.searchInputElement.value="",this.clearSearch(),this.searchInputElement.focus()})),m.appendChild(p),this.searchProvider.supportsRegexSearch()){const e="regular-expression";this.regexButton=new o.Button.Button,this.regexButton.data={variant:"icon_toggle",size:"SMALL",iconName:e,toggledIconName:e,toggleType:"primary-toggle",toggled:!1,jslogContext:e,title:Tr(Sr.enableCaseSensitive)},this.regexButton.addEventListener("click",(()=>this.toggleRegexSearch())),m.appendChild(this.regexButton)}if(this.searchProvider.supportsCaseSensitiveSearch()){const e="match-case";this.caseSensitiveButton=new o.Button.Button,this.caseSensitiveButton.data={variant:"icon_toggle",size:"SMALL",iconName:e,toggledIconName:e,toggled:!1,toggleType:"primary-toggle",title:Tr(Sr.enableCaseSensitive),jslogContext:e},this.caseSensitiveButton.addEventListener("click",(()=>this.toggleCaseSensitiveSearch())),m.appendChild(this.caseSensitiveButton)}l.createChild("div","input-line search-input-background");const g=this.footerElement.createChild("div","toolbar-search-buttons"),b=g.createChild("div","first-row-buttons"),v=b.createChild("devtools-toolbar","toolbar-search-options");this.searchNavigationPrevElement=new qi(Tr(Sr.searchPrevious),"chevron-up",void 0,"select-previous"),this.searchNavigationPrevElement.addEventListener("Click",(()=>this.onPrevButtonSearch())),v.appendToolbarItem(this.searchNavigationPrevElement),to(this.searchNavigationPrevElement.element,Tr(Sr.searchPrevious)),this.searchNavigationNextElement=new qi(Tr(Sr.searchNext),"chevron-down",void 0,"select-next"),this.searchNavigationNextElement.addEventListener("Click",(()=>this.onNextButtonSearch())),to(this.searchNavigationNextElement.element,Tr(Sr.searchNext)),v.appendToolbarItem(this.searchNavigationNextElement);const f=new $i;this.matchesElement=f.element,this.matchesElement.style.fontVariantNumeric="tabular-nums",this.matchesElement.style.color="var(--sys-color-on-surface-subtle)",this.matchesElement.style.padding="0 var(--sys-size-3)",this.matchesElement.classList.add("search-results-matches"),v.appendToolbarItem(f);const w=new o.Button.Button;w.data={variant:"toolbar",size:"REGULAR",iconName:"cross",title:Tr(Sr.closeSearchBar),jslogContext:"close-search"},w.classList.add("close-search-button"),w.addEventListener("click",(()=>this.closeSearch())),b.appendChild(w);const x=g.createChild("div","second-row-buttons replace-element");this.replaceButtonElement=Vn(Tr(Sr.replace),this.replace.bind(this),{className:"search-action-button",jslogContext:"replace"}),this.replaceButtonElement.disabled=!0,x.appendChild(this.replaceButtonElement),this.replaceAllButtonElement=Vn(Tr(Sr.replaceAll),this.replaceAll.bind(this),{className:"search-action-button",jslogContext:"replace-all"}),x.appendChild(this.replaceAllButtonElement),this.replaceAllButtonElement.disabled=!0,this.minimalSearchQuerySize=3,this.loadSetting()}static fromElement(e){let t=null;for(;e&&!t;)t=Mr.get(e)||null,e=e.parentElementOrShadowHost();return t}toggleCaseSensitiveSearch(){this.caseSensitiveButton&&(this.caseSensitiveButton.title=this.caseSensitiveButton.toggled?Tr(Sr.disableCaseSensitive):Tr(Sr.enableCaseSensitive)),this.saveSetting(),this.performSearch(!1,!0)}toggleRegexSearch(){this.regexButton&&(this.regexButton.title=this.regexButton.toggled?Tr(Sr.disableRegularExpression):Tr(Sr.enableRegularExpression)),this.saveSetting(),this.performSearch(!1,!0)}toggleReplace(){const e=this.replaceToggleButton.isToggled(),t=Tr(e?Sr.disableFindAndReplace:Sr.enableFindAndReplace);to(this.replaceToggleButton.element,t),this.replaceToggleButton.element.title=t,this.updateSecondRowVisibility()}saveSetting(){if(!this.setting)return;const e=this.setting.get()||{};this.caseSensitiveButton&&(e.caseSensitive=this.caseSensitiveButton.toggled),this.regexButton&&(e.isRegex=this.regexButton.toggled),this.setting.set(e)}loadSetting(){const e=this.setting&&this.setting.get()||{};if(this.searchProvider.supportsCaseSensitiveSearch()&&this.caseSensitiveButton){this.caseSensitiveButton.toggled=Boolean(e.caseSensitive);const t=e.caseSensitive?Tr(Sr.disableCaseSensitive):Tr(Sr.enableCaseSensitive);this.caseSensitiveButton.title=t,to(this.caseSensitiveButton,t)}if(this.searchProvider.supportsRegexSearch()&&this.regexButton){this.regexButton.toggled=Boolean(e.isRegex);const t=e.regular?Tr(Sr.disableRegularExpression):Tr(Sr.enableRegularExpression);this.regexButton.title=t,to(this.regexButton,t)}}setMinimalSearchQuerySize(e){this.minimalSearchQuerySize=e}setPlaceholder(e,t){this.searchInputElement.placeholder=e,t&&to(this.searchInputElement,t)}setReplaceable(e){this.replaceable=e}updateSearchMatchesCount(e){const t=this.searchProvider;t.currentSearchMatches!==e&&(t.currentSearchMatches=e,this.updateSearchMatchesCountAndCurrentMatchIndex(t.currentQuery?e:0,-1))}updateCurrentMatchIndex(e){const t=this.searchProvider;this.updateSearchMatchesCountAndCurrentMatchIndex(t.currentSearchMatches,e)}closeSearch(){this.cancelSearch(),this.footerElementContainer.hasFocus()&&this.focus(),this.searchProvider.onSearchClosed?.()}toggleSearchBar(e){this.footerElementContainer.classList.toggle("hidden",!e),this.doResize()}cancelSearch(){this.searchIsVisible&&(this.resetSearch(),delete this.searchIsVisible,this.toggleSearchBar(!1))}resetSearch(){this.clearSearch(),this.updateReplaceVisibility(),this.matchesElement.textContent=""}refreshSearch(){this.searchIsVisible&&(this.resetSearch(),this.performSearch(!1,!1))}handleFindNextShortcut(){return!!this.searchIsVisible&&(this.searchProvider.jumpToNextSearchResult(),!0)}handleFindPreviousShortcut(){return!!this.searchIsVisible&&(this.searchProvider.jumpToPreviousSearchResult(),!0)}handleFindShortcut(){return this.showSearchField(),!0}handleCancelSearchShortcut(){return!!this.searchIsVisible&&(this.closeSearch(),!0)}updateSearchNavigationButtonState(e){this.replaceButtonElement.disabled=!e,this.replaceAllButtonElement.disabled=!e,this.searchNavigationPrevElement.setEnabled(e),this.searchNavigationNextElement.setEnabled(e)}updateSearchMatchesCountAndCurrentMatchIndex(e,t){this.currentQuery?0===e||t>=0?(this.matchesElement.textContent=Tr(Sr.dOfD,{PH1:t+1,PH2:e}),to(this.matchesElement,Tr(Sr.accessibledOfD,{PH1:t+1,PH2:e}))):this.matchesElement.textContent=1===e?Tr(Sr.matchString):Tr(Sr.dMatches,{PH1:e}):this.matchesElement.textContent="",this.updateSearchNavigationButtonState(e>0)}showSearchField(){let e;if(this.searchIsVisible&&this.cancelSearch(),!this.searchInputElement.hasFocus()){const t=ii.instance().element.window().getSelection();t?.rangeCount&&(e=t.toString().replace(/\r?\n.*/,""))}this.toggleSearchBar(!0),this.updateReplaceVisibility(),e&&(this.searchInputElement.value=e),this.performSearch(!1,!1),this.searchInputElement.focus(),this.searchInputElement.select(),this.searchIsVisible=!0}updateReplaceVisibility(){this.replaceToggleButton.setVisible(this.replaceable),this.replaceable||(this.replaceToggleButton.setToggled(!1),this.updateSecondRowVisibility())}onSearchKeyDown(e){const t=e;if(i.KeyboardUtilities.isEscKey(t))return this.closeSearch(),void t.consume(!0);"Enter"===t.key&&(this.currentQuery?this.jumpToNextSearchResult(t.shiftKey):this.performSearch(!0,!0,t.shiftKey))}onReplaceKeyDown(e){"Enter"===e.key&&this.replace()}jumpToNextSearchResult(e){this.currentQuery&&(e?this.searchProvider.jumpToPreviousSearchResult():this.searchProvider.jumpToNextSearchResult())}onNextButtonSearch(){this.jumpToNextSearchResult()}onPrevButtonSearch(){this.jumpToNextSearchResult(!0)}clearSearch(){const e=this.searchProvider;delete this.currentQuery,Boolean(e.currentQuery)&&(delete e.currentQuery,this.searchProvider.onSearchCanceled()),this.updateSearchMatchesCountAndCurrentMatchIndex(0,-1)}performSearch(e,t,i){const n=this.searchInputElement.value;if(!n||!e&&n.length<this.minimalSearchQuerySize&&!this.currentQuery)return void this.clearSearch();this.currentQuery=n,this.searchProvider.currentQuery=n;const s=this.currentSearchConfig();this.searchProvider.performSearch(s,t,i)}currentSearchConfig(){const e=this.searchInputElement.value,t=!!this.caseSensitiveButton&&this.caseSensitiveButton.toggled,i=!!this.regexButton&&this.regexButton.toggled;return new Lr(e,t,i)}updateSecondRowVisibility(){const e=this.replaceToggleButton.isToggled();this.footerElementContainer.classList.toggle("replaceable",e),e?this.replaceInputElement.focus():this.searchInputElement.focus(),this.doResize()}replace(){if(!this.replaceProvider)throw new Error("No 'replacable' provided to SearchableView!");const e=this.currentSearchConfig();this.replaceProvider.replaceSelectionWith(e,this.replaceInputElement.value),delete this.currentQuery,this.performSearch(!0,!0)}replaceAll(){if(!this.replaceProvider)throw new Error("No 'replacable' provided to SearchableView!");const e=this.currentSearchConfig();this.replaceProvider.replaceAllWith(e,this.replaceInputElement.value)}onInput(){if(!e.Settings.Settings.instance().moduleSetting("search-as-you-type").get())return void this.clearSearch();this.valueChangedTimeoutId&&clearTimeout(this.valueChangedTimeoutId);const t=this.searchInputElement.value.length<3?200:0;this.valueChangedTimeoutId=window.setTimeout(this.onValueChanged.bind(this),t)}onValueChanged(){this.searchIsVisible&&(delete this.valueChangedTimeoutId,this.performSearch(!1,!0))}}}),Dr={cssText:`.item.disabled{opacity:50%}.item-list{background-color:var(--sys-color-cdt-base-container);box-shadow:var(--drop-shadow);overflow:hidden auto;width:100%}.item.highlighted{background-color:var(--sys-color-state-hover-on-subtle)}@media (forced-colors: active){.item.disabled{opacity:100%}.item-list{border:1px solid ButtonText;background-color:ButtonFace}.item.highlighted{forced-color-adjust:none;color:HighlightText;background-color:Highlight}}\n/*# sourceURL=${import.meta.resolve("./softDropDown.css")} */\n`},Ar={cssText:`button.soft-dropdown{height:var(--sys-size-9);text-align:left;position:relative;border:none;background:none;max-width:120px;&[disabled]{background:var(--sys-color-state-disabled-container);color:var(--sys-color-state-disabled);devtools-icon{color:var(--sys-color-state-disabled)}}devtools-icon{top:var(--sys-size-2)}}button.soft-dropdown > .title{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis}button.soft-dropdown:hover:not(:active) > .title{color:var(--sys-color-on-surface)}@media (forced-colors: active){button.soft-dropdown{border:1px solid ButtonText;background:ButtonFace;color:ButtonText}button.soft-dropdown[disabled]{opacity:100%}}\n/*# sourceURL=${import.meta.resolve("./softDropDownButton.css")} */\n`};const zr={noItemSelected:"(no item selected)"},Rr=t.i18n.registerUIStrings("ui/legacy/SoftDropDown.ts",zr),Br=t.i18n.getLocalizedString.bind(void 0,Rr);var Or=Object.freeze({__proto__:null,SoftDropDown:class{delegate;selectedItem;model;placeholderText;element;titleElement;glassPane;list;rowHeight;width;listWasShowing200msAgo;constructor(e,t,i){this.delegate=t,this.selectedItem=null,this.model=e,this.placeholderText=Br(zr.noItemSelected),this.element=document.createElement("button"),i&&this.element.setAttribute("jslog",`${s.dropDown().track({click:!0,keydown:"ArrowUp|ArrowDown|Enter"}).context(i)}`),this.element.classList.add("soft-dropdown"),u.ThemeSupport.instance().appendStyle(this.element,Ar),this.titleElement=this.element.createChild("span","title");const n=r.Icon.create("triangle-down");this.element.appendChild(n),$s(this.element,!1),this.glassPane=new cs,this.glassPane.setMarginBehavior("NoMargin"),this.glassPane.setAnchorBehavior("PreferBottom"),this.glassPane.setOutsideClickCallback(this.hide.bind(this)),this.glassPane.setPointerEventsBehavior("BlockedByGlassPane"),this.list=new Ti(e,this,Si.EqualHeightItems),this.list.element.classList.add("item-list"),this.rowHeight=36,this.width=315,rs(this.glassPane.contentElement,{cssFile:Dr}).appendChild(this.list.element),As(this.list.element),s.setMappedParent(this.list.element,this.element),this.list.element.setAttribute("jslog",`${s.menu().parent("mapped").track({resize:!0,keydown:"ArrowUp|ArrowDown|PageUp|PageDown"})}`),this.listWasShowing200msAgo=!1,this.element.addEventListener("mousedown",(e=>{this.listWasShowing200msAgo?this.hide(e):this.element.disabled||this.show(e)}),!1),this.element.addEventListener("keydown",this.onKeyDownButton.bind(this),!1),this.list.element.addEventListener("keydown",this.onKeyDownList.bind(this),!1),this.list.element.addEventListener("focusout",this.hide.bind(this),!1),this.list.element.addEventListener("mousedown",(e=>e.consume(!0)),!1),this.list.element.addEventListener("mouseup",(e=>{e.target!==this.list.element&&this.listWasShowing200msAgo&&(this.selectHighlightedItem(),e.target instanceof Element&&e.target?.parentElement&&s.logClick(e.target.parentElement,e),this.hide(e))}),!1),e.addEventListener("ItemsReplaced",this.itemsReplaced,this)}show(e){this.glassPane.isShowing()||(this.glassPane.setContentAnchorBox(this.element.boxInWindow()),this.glassPane.show(this.element.ownerDocument),this.list.element.focus(),$s(this.element,!0),this.updateGlasspaneSize(),this.selectedItem&&this.list.selectItem(this.selectedItem),e.consume(!0),window.setTimeout((()=>{this.listWasShowing200msAgo=!0}),200))}updateGlasspaneSize(){const e=this.rowHeight*Math.min(this.model.length,9);this.glassPane.setMaxContentSize(new Me(this.width,e)),this.list.viewportResized()}hide(e){window.setTimeout((()=>{this.listWasShowing200msAgo=!1}),200),this.glassPane.hide(),this.list.selectItem(null),$s(this.element,!1),this.element.focus(),e.consume(!0)}onKeyDownButton(e){const t=e;let i=!1;switch(t.key){case"ArrowUp":this.show(t),this.list.selectItemNextPage(),i=!0;break;case"ArrowDown":this.show(t),this.list.selectItemPreviousPage(),i=!0;break;case"Enter":case" ":this.show(t),i=!0}i&&t.consume(!0)}onKeyDownList(e){const t=e;let i=!1;switch(t.key){case"ArrowLeft":i=this.list.selectPreviousItem(!1,!1);break;case"ArrowRight":i=this.list.selectNextItem(!1,!1);break;case"Home":for(let e=0;e<this.model.length;e++)if(this.isItemSelectable(this.model.at(e))){this.list.selectItem(this.model.at(e)),i=!0;break}break;case"End":for(let e=this.model.length-1;e>=0;e--)if(this.isItemSelectable(this.model.at(e))){this.list.selectItem(this.model.at(e)),i=!0;break}break;case"Escape":this.hide(t),i=!0;break;case"Tab":case"Enter":case" ":this.selectHighlightedItem(),this.hide(t),i=!0;break;default:if(1===t.key.length){const e=this.list.selectedIndex(),n=t.key.toUpperCase();for(let t=0;t<this.model.length;t++){const i=this.model.at((e+t+1)%this.model.length);if(this.delegate.titleFor(i).toUpperCase().startsWith(n)){this.list.selectItem(i);break}}i=!0}}i&&t.consume(!0)}setWidth(e){this.width=e,this.updateGlasspaneSize()}setRowHeight(e){this.rowHeight=e}setPlaceholderText(e){this.placeholderText=e,this.selectedItem||(this.titleElement.textContent=this.placeholderText)}itemsReplaced(e){const{removed:t}=e.data;this.selectedItem&&-1!==t.indexOf(this.selectedItem)&&(this.selectedItem=null,this.selectHighlightedItem()),this.updateGlasspaneSize()}getSelectedItem(){return this.selectedItem}selectItem(e){this.selectedItem=e,this.selectedItem?this.titleElement.textContent=this.delegate.titleFor(this.selectedItem):this.titleElement.textContent=this.placeholderText,this.delegate.itemSelected(this.selectedItem)}createElementForItem(e){const t=document.createElement("div");return t.classList.add("item"),t.addEventListener("mousemove",(t=>{(t.movementX||t.movementY)&&this.delegate.isItemSelectable(e)&&this.list.selectItem(e,!1,!0)})),t.classList.toggle("disabled",!this.delegate.isItemSelectable(e)),t.classList.toggle("highlighted",this.list.selectedItem()===e),zs(t),t.appendChild(this.delegate.createElementForItem(e)),t}heightForItem(e){return this.rowHeight}isItemSelectable(e){return this.delegate.isItemSelectable(e)}selectedItemChanged(e,t,i,n){i&&i.classList.remove("highlighted"),n&&n.classList.add("highlighted"),no(this.list.element,n),this.delegate.highlightedItemChanged(e,t,i?.firstElementChild??null,n?.firstElementChild??null)}updateSelectedItemARIA(e,t){return!1}selectHighlightedItem(){this.selectItem(this.list.selectedItem())}refreshItem(e){this.list.refreshItem(e)}}}),Fr={cssText:`.widget{padding:25px}.message{font-size:larger;white-space:pre;margin:5px}\n/*# sourceURL=${import.meta.resolve("./targetCrashedScreen.css")} */\n`};const Wr={devtoolsWasDisconnectedFromThe:"DevTools was disconnected from the page.",oncePageIsReloadedDevtoolsWill:"Once page is reloaded, DevTools will automatically reconnect."},Hr=t.i18n.registerUIStrings("ui/legacy/TargetCrashedScreen.ts",Wr),Nr=t.i18n.getLocalizedString.bind(void 0,Hr);var jr=Object.freeze({__proto__:null,TargetCrashedScreen:class extends it{hideCallback;constructor(e){super(!0),this.registerRequiredCSS(Fr),this.contentElement.createChild("div","message").textContent=Nr(Wr.devtoolsWasDisconnectedFromThe),this.contentElement.createChild("div","message").textContent=Nr(Wr.oncePageIsReloadedDevtoolsWill),this.hideCallback=e}willHide(){this.hideCallback.call(null)}}});var Vr=Object.freeze({__proto__:null,ThrottledWidget:class extends it{updateThrottler;updateWhenVisible;lastUpdatePromise=Promise.resolve();constructor(t,i){super(t),this.updateThrottler=new e.Throttler.Throttler(void 0===i?100:i),this.updateWhenVisible=!1}doUpdate(){return Promise.resolve()}update(){this.updateWhenVisible=!this.isShowing(),this.updateWhenVisible||(this.lastUpdatePromise=this.updateThrottler.schedule((()=>this.isShowing()?this.doUpdate():(this.updateWhenVisible=!0,Promise.resolve()))))}get updateComplete(){return this.updateThrottler.processCompleted?.then((e=>Boolean(e)))||Promise.resolve(!1)}wasShown(){super.wasShown(),this.updateWhenVisible&&this.update()}}}),Ur={cssText:`:host{flex:1 1 auto;padding:2px 0 0}.tree-outline-disclosure:not(.tree-outline-disclosure-hide-overflow){min-width:100%;display:inline-block}.tree-outline{padding:0 0 4px 4px;margin:0;z-index:0;position:relative}.tree-outline:focus-visible{box-shadow:0 0 0 2px var(--sys-color-state-focus-ring) inset}.tree-outline li .selection{display:none;z-index:-1;margin-left:-10000px}.tree-outline:not(.hide-selection-when-blurred) li.selected{color:var(--sys-color-on-surface-subtle)}.tree-outline:not(.hide-selection-when-blurred) li.selected .selection{display:block;background-color:var(--sys-color-neutral-container)}.tree-outline:not(.hide-selection-when-blurred) li.elements-drag-over .selection{display:block;margin-top:-2px;border-top:2px solid;border-top-color:var(--sys-color-tonal-container)}.tree-outline li:hover:not(:has(dt-checkbox)) .selection{display:block;background-color:var(--sys-color-state-hover-on-subtle)}.tree-outline:not(.hide-selection-when-blurred) li.hovered:not(.selected) .selection{display:block;left:3px;right:3px;background-color:var(--sys-color-state-hover-on-subtle);border-radius:5px}.tree-outline:not(.hide-selection-when-blurred) li.in-clipboard .highlight{outline:1px dotted var(--sys-color-neutral-outline)}ol.tree-outline:not(.hide-selection-when-blurred) li.selected:focus .selection{background-color:var(--sys-color-tonal-container)}ol.tree-outline,\n.tree-outline ol{list-style-type:none}.tree-outline ol{padding-left:12px}.tree-outline li{text-overflow:ellipsis;white-space:nowrap;position:relative;display:flex;align-items:center;min-height:16px}ol.tree-outline:not(.hide-selection-when-blurred) li.selected:focus{color:var(--sys-color-on-tonal-container);& ::selection{background-color:var(--sys-color-state-focus-select);color:currentcolor}& *:not(devtools-icon){color:inherit}}.tree-outline li .icons-container{align-self:center;display:flex;align-items:center}.tree-outline li .leading-icons{margin-right:4px}.tree-outline li .trailing-icons{margin-left:4px}.tree-outline li::before{user-select:none;mask-image:var(--image-file-arrow-collapse);background-color:var(--icon-default);content:"\\A0\\A0";text-shadow:none;margin-top:calc(-1 * var(--sys-size-2));height:var(--sys-size-8);width:var(--sys-size-8)}.tree-outline li:not(.parent)::before{background-color:transparent}.tree-outline li.parent.expanded::before{mask-image:var(--image-file-arrow-drop-down)}.tree-outline ol.children{display:none}.tree-outline ol.children.expanded{display:block}.tree-outline.tree-outline-dense li{margin-top:1px;min-height:12px}.tree-outline.tree-outline-dense li.parent{margin-top:0}.tree-outline.tree-outline-dense li.parent::before{top:0}.tree-outline.tree-outline-dense ol{padding-left:10px}.tree-outline.hide-selection-when-blurred .selected:focus-visible{background:var(--sys-color-state-focus-highlight);border-radius:2px}.tree-outline-disclosure:not(.tree-outline-disclosure-hide-overflow) .tree-outline.hide-selection-when-blurred .selected:focus-visible{width:fit-content;padding-right:3px}.tree-outline.tree-variant-navigation{padding:var(--sys-size-3) 0 var(--sys-size-3) var(--sys-size-3)}.tree-outline.tree-variant-navigation li,\n.tree-outline.hide-selection-when-blurred.tree-variant-navigation li{height:var(--sys-size-10);margin-right:var(--sys-size-3);padding-right:var(--sys-size-3);padding-left:6px;&::before{flex-shrink:0;overflow:hidden;margin-right:3px;margin-left:-3px}& .selection{border-radius:0 var(--sys-shape-corner-full) var(--sys-shape-corner-full) 0}&.selected:focus .selection{display:block;background-color:var(--app-color-navigation-drawer-background-selected)}& .leading-icons{margin-right:var(--sys-size-4);overflow:hidden}& .tree-element-title{height:inherit;flex-shrink:100;overflow:hidden;text-overflow:ellipsis;align-content:center}}.theme-with-dark-background,\n:host-context(.theme-with-dark-background){& .tree-variant-navigation li.selected:focus,\n .tree-variant-navigation li.selected:focus devtools-icon{color:var(--app-color-navigation-drawer-label-selected);--override-file-source-icon-color:var(--app-color-navigation-drawer-label-selected)}}ol.tree-outline.tree-variant-navigation:not(.hide-selection-when-blurred) li.selected:focus .selection{background-color:var(--app-color-navigation-drawer-background-selected)}@media (forced-colors: active){.tree-outline-disclosure li.parent::before,\n .tree-outline:not(.hide-selection-when-blurred) li.parent:not(.selected)::before{forced-color-adjust:none;background-color:ButtonText}.tree-outline li devtools-icon{forced-color-adjust:none;color:ButtonText}.tree-outline-disclosure li.parent:hover:not(.selected)::before,\n .tree-outline:not(.hide-selection-when-blurred) li.parent:hover:not(.selected)::before{background-color:ButtonText}.tree-outline:not(.hide-selection-when-blurred) li.selected .selection{forced-color-adjust:none;background-color:ButtonText}ol.tree-outline:not(.hide-selection-when-blurred) li.selected:focus .selection,\n .tree-outline.hide-selection-when-blurred .selected:focus-visible{forced-color-adjust:none;background-color:Highlight}ol.tree-outline.tree-variant-navigation li.selected{&.selected,\n &.selected:focus{& .selection{forced-color-adjust:none;background-color:ButtonText}}}ol.tree-outline:not(.hide-selection-when-blurred) li.parent.selected::before,\n ol.tree-outline:not(.hide-selection-when-blurred) li.parent.selected:focus::before,\n .tree-outline.hide-selection-when-blurred .selected:focus-visible::before{background-color:HighlightText}.tree-outline li:not(.parent)::before,\n .tree-outline li:not(.parent):hover::before,\n .tree-outline.hide-selection-when-blurred .selected:focus-visible:not(.parent)::before{forced-color-adjust:none;background-color:transparent}.tree-outline:not(.hide-selection-when-blurred) devtools-icon,\n .tree-outline.hide-selection-when-blurred devtools-icon{color:ButtonText}.tree-outline li.selected devtools-icon,\n .tree-outline li.selected:focus devtools-icon{color:HighlightText!important}ol.tree-outline:not(.hide-selection-when-blurred) li.selected,\n .tree-outline:not(.hide-selection-when-blurred) li.selected .tree-element-title,\n .tree-outline:not(.hide-selection-when-blurred) li.selected:focus,\n .tree-outline:not(.hide-selection-when-blurred) li:focus-visible .tree-element-title,\n .tree-outline:not(.hide-selection-when-blurred) li.selected:focus .tree-element-title,\n .tree-outline:not(.hide-selection-when-blurred) li.selected span,\n .tree-outline.hide-selection-when-blurred .selected:focus-visible span{forced-color-adjust:none;color:HighlightText}.tree-outline:not(.hide-selection-when-blurred) li.selected:focus-visible devtools-adorner,\n .tree-outline.hide-selection-when-blurred li.selected:focus-visible devtools-adorner{--override-adorner-background-color:Highlight;--override-adorner-border-color:HighlightText}}\n/*# sourceURL=${import.meta.resolve("./treeoutline.css")} */\n`};const _r=new WeakMap;var Kr;!function(e){e.ElementAttached="ElementAttached",e.ElementsDetached="ElementsDetached",e.ElementExpanded="ElementExpanded",e.ElementCollapsed="ElementCollapsed",e.ElementSelected="ElementSelected"}(Kr||(Kr={}));class $r extends e.ObjectWrapper.ObjectWrapper{rootElementInternal;renderSelection;selectedTreeElement;expandTreeElementsWhenArrowing;comparator;contentElement;preventTabOrder;showSelectionOnKeyboardFocus;focusable;element;useLightSelectionColor;treeElementToScrollIntoView;centerUponScrollIntoView;constructor(){super(),this.rootElementInternal=this.createRootElement(),this.renderSelection=!1,this.selectedTreeElement=null,this.expandTreeElementsWhenArrowing=!1,this.comparator=null,this.contentElement=this.rootElementInternal.childrenListNode,this.contentElement.addEventListener("keydown",this.treeKeyDown.bind(this),!1),this.preventTabOrder=!1,this.showSelectionOnKeyboardFocus=!1,this.focusable=!0,this.setFocusable(!0),this.element=this.contentElement,this.element.setAttribute("jslog",`${s.tree()}`),Ls(this.element),this.useLightSelectionColor=!1,this.treeElementToScrollIntoView=null,this.centerUponScrollIntoView=!1}setShowSelectionOnKeyboardFocus(e,t){this.contentElement.classList.toggle("hide-selection-when-blurred",e),this.preventTabOrder=Boolean(t),this.focusable&&(this.contentElement.tabIndex=Boolean(t)?-1:0),this.showSelectionOnKeyboardFocus=e}createRootElement(){const e=new Xr;return e.treeOutline=this,e.root=!0,e.selectable=!1,e.expanded=!0,e.childrenListNode.classList.remove("children"),e}rootElement(){return this.rootElementInternal}firstChild(){return this.rootElementInternal.firstChild()}lastDescendent(){let e=this.rootElementInternal.lastChild();for(;e&&e.expanded&&e.childCount();)e=e.lastChild();return e}appendChild(e,t){this.rootElementInternal.appendChild(e,t)}insertChild(e,t){this.rootElementInternal.insertChild(e,t)}removeChild(e){this.rootElementInternal.removeChild(e)}removeChildren(){this.rootElementInternal.removeChildren()}treeElementFromPoint(e,t){const i=es(this.contentElement.ownerDocument,e,t);if(!i)return null;const n=Jn(i,["ol","li"]);return n&&(_r.get(n)||qr.get(n))||null}treeElementFromEvent(e){return e?this.treeElementFromPoint(e.pageX,e.pageY):null}setComparator(e){this.comparator=e}setFocusable(e){this.focusable=e,this.updateFocusable()}updateFocusable(){this.focusable?(this.contentElement.tabIndex=this.preventTabOrder||Boolean(this.selectedTreeElement)?-1:0,this.selectedTreeElement&&this.selectedTreeElement.setFocusable(!0)):(this.contentElement.removeAttribute("tabIndex"),this.selectedTreeElement&&this.selectedTreeElement.setFocusable(!1))}focus(){this.selectedTreeElement?this.selectedTreeElement.listItemElement.focus():this.contentElement.focus()}setUseLightSelectionColor(e){this.useLightSelectionColor=e}getUseLightSelectionColor(){return this.useLightSelectionColor}bindTreeElement(e){e.treeOutline&&console.error("Binding element for the second time: "+(new Error).stack),e.treeOutline=this,e.onbind()}unbindTreeElement(e){e.treeOutline||console.error("Unbinding element that was not bound: "+(new Error).stack),e.deselect(),e.onunbind(),e.treeOutline=null}selectPrevious(){let e=this.selectedTreeElement?.traversePreviousTreeElement(!0)??null;for(;e&&!e.selectable;)e=e.traversePreviousTreeElement(!this.expandTreeElementsWhenArrowing);return!!e&&(e.select(!1,!0),!0)}selectNext(){let e=this.selectedTreeElement?.traverseNextTreeElement(!0)??null;for(;e&&!e.selectable;)e=e.traverseNextTreeElement(!this.expandTreeElementsWhenArrowing);return!!e&&(e.select(!1,!0),!0)}forceSelect(e=!1,t=!0){this.selectedTreeElement&&this.selectedTreeElement.deselect(),this.selectFirst(e,t)}selectFirst(e=!1,t=!0){let i=this.firstChild();for(;i&&!i.selectable;)i=i.traverseNextTreeElement(!0);return!!i&&(i.select(e,t),!0)}selectLast(){let e=this.lastDescendent();for(;e&&!e.selectable;)e=e.traversePreviousTreeElement(!0);return!!e&&(e.select(!1,!0),!0)}treeKeyDown(e){if(e.shiftKey||e.metaKey||e.ctrlKey||fn())return;let t=!1;this.selectedTreeElement?"ArrowUp"!==e.key||e.altKey?"ArrowDown"!==e.key||e.altKey?"ArrowLeft"===e.key?t=this.selectedTreeElement.collapseOrAscend(e.altKey):"ArrowRight"===e.key?this.selectedTreeElement.revealed()?t=this.selectedTreeElement.descendOrExpand(e.altKey):(this.selectedTreeElement.reveal(),t=!0):8===e.keyCode||46===e.keyCode?t=this.selectedTreeElement.ondelete():"Enter"===e.key?t=this.selectedTreeElement.onenter():e.keyCode===K.Space.code?t=this.selectedTreeElement.onspace():"Home"===e.key?t=this.selectFirst():"End"===e.key&&(t=this.selectLast()):t=this.selectNext():t=this.selectPrevious():"ArrowUp"!==e.key||e.altKey?"ArrowDown"!==e.key||e.altKey||(t=this.selectFirst()):t=this.selectLast(),t&&e.consume(!0)}deferredScrollIntoView(e,t){const n=()=>{if(!this.treeElementToScrollIntoView)return;const e=this.treeElementToScrollIntoView.listItemElement.getBoundingClientRect(),t=this.contentElement.getBoundingClientRect();let n=this.element;for(;"visible"===getComputedStyle(n).overflow&&n.parentElementOrShadowHost();){const e=n.parentElementOrShadowHost();i.assertNotNullOrUndefined(e),n=e}const s=n.getBoundingClientRect(),o=s.left-t.left,r=s.top-t.top+this.contentElement.offsetTop;let a=e.left-t.left;a>o&&a<o+s.width?a=o:this.centerUponScrollIntoView&&(a-=s.width/2);let l=e.top-t.top;l>r&&l<r+s.height?l=r:this.centerUponScrollIntoView&&(l-=s.height/2),n.scrollTo(a,l),this.treeElementToScrollIntoView=null};this.treeElementToScrollIntoView||this.element.window().requestAnimationFrame(n),this.treeElementToScrollIntoView=e,this.centerUponScrollIntoView=t}onStartedEditingTitle(e){}}const qr=new WeakMap;class Xr{treeOutline;parent;previousSibling;nextSibling;boundOnFocus;boundOnBlur;listItemNode;titleElement;titleInternal;childrenInternal;childrenListNode;expandLoggable={};hiddenInternal;selectableInternal;expanded;selected;expandable;#C=!0;collapsible;toggleOnClick;button;root;tooltipInternal;leadingIconsElement;trailingIconsElement;selectionElementInternal;disableSelectFocus;constructor(e,t,i){this.treeOutline=null,this.parent=null,this.previousSibling=null,this.nextSibling=null,this.boundOnFocus=this.onFocus.bind(this),this.boundOnBlur=this.onBlur.bind(this),this.listItemNode=document.createElement("li"),this.titleElement=this.listItemNode.createChild("span","tree-element-title"),qr.set(this.listItemNode,this),this.titleInternal="",e&&(this.title=e),this.listItemNode.addEventListener("mousedown",this.handleMouseDown.bind(this),!1),this.listItemNode.addEventListener("click",this.treeElementToggled.bind(this),!1),this.listItemNode.addEventListener("dblclick",this.handleDoubleClick.bind(this),!1),this.listItemNode.setAttribute("jslog",`${s.treeItem().parent("parentTreeItem").context(i).track({click:!0,keydown:"ArrowUp|ArrowDown|ArrowLeft|ArrowRight|Backspace|Delete|Enter|Space|Home|End"})}`),Ps(this.listItemNode),this.childrenInternal=null,this.childrenListNode=document.createElement("ol"),_r.set(this.childrenListNode,this),this.childrenListNode.classList.add("children"),Ss(this.childrenListNode),this.hiddenInternal=!1,this.selectableInternal=!0,this.expanded=!1,this.selected=!1,this.setExpandable(t||!1),this.collapsible=!0,this.toggleOnClick=!1,this.button=null,this.root=!1,this.tooltipInternal="",this.leadingIconsElement=null,this.trailingIconsElement=null,this.selectionElementInternal=null,this.disableSelectFocus=!1}static getTreeElementBylistItemNode(e){return qr.get(e)}hasAncestor(e){if(!e)return!1;let t=this.parent;for(;t;){if(e===t)return!0;t=t.parent}return!1}hasAncestorOrSelf(e){return this===e||this.hasAncestor(e)}isHidden(){if(this.hidden)return!0;let e=this.parent;for(;e;){if(e.hidden)return!0;e=e.parent}return!1}children(){return this.childrenInternal||[]}childCount(){return this.childrenInternal?this.childrenInternal.length:0}firstChild(){return this.childrenInternal?this.childrenInternal[0]:null}lastChild(){return this.childrenInternal?this.childrenInternal[this.childrenInternal.length-1]:null}childAt(e){return this.childrenInternal?this.childrenInternal[e]:null}indexOfChild(e){return this.childrenInternal?this.childrenInternal.indexOf(e):-1}appendChild(e,t){let n;this.childrenInternal||(this.childrenInternal=[]),n=t?i.ArrayUtilities.lowerBound(this.childrenInternal,e,t):this.treeOutline?.comparator?i.ArrayUtilities.lowerBound(this.childrenInternal,e,this.treeOutline.comparator):this.childrenInternal.length,this.insertChild(e,n)}insertChild(e,t){if(this.childrenInternal||(this.childrenInternal=[]),!e)throw new Error("child can't be undefined or null");console.assert(!e.parent,"Attempting to insert a child that is already in the tree, reparenting is not supported.");const i=t>0?this.childrenInternal[t-1]:null;i?(i.nextSibling=e,e.previousSibling=i):e.previousSibling=null;const n=this.childrenInternal[t];n?(n.previousSibling=e,e.nextSibling=n):e.nextSibling=null,this.childrenInternal.splice(t,0,e),this.setExpandable(!0),e.parent=this,this.treeOutline&&this.treeOutline.bindTreeElement(e);for(let t=e.firstChild();this.treeOutline&&t;t=t.traverseNextTreeElement(!1,e,!0))this.treeOutline.bindTreeElement(t);e.onattach(),e.ensureSelection(),this.treeOutline&&this.treeOutline.dispatchEventToListeners(Kr.ElementAttached,e);const s=e.nextSibling?e.nextSibling.listItemNode:null;this.childrenListNode.insertBefore(e.listItemNode,s),this.childrenListNode.insertBefore(e.childrenListNode,s),e.selected&&e.select(),e.expanded&&e.expand()}removeChildAtIndex(e){if(!this.childrenInternal||e<0||e>=this.childrenInternal.length)throw new Error("childIndex out of range");const t=this.childrenInternal[e];this.childrenInternal.splice(e,1);const i=t.parent;this.treeOutline?.selectedTreeElement?.hasAncestorOrSelf(t)&&(t.nextSibling?t.nextSibling.select(!0):t.previousSibling?t.previousSibling.select(!0):i&&i.select(!0)),t.previousSibling&&(t.previousSibling.nextSibling=t.nextSibling),t.nextSibling&&(t.nextSibling.previousSibling=t.previousSibling),t.parent=null,this.treeOutline&&this.treeOutline.unbindTreeElement(t);for(let e=t.firstChild();this.treeOutline&&e;e=e.traverseNextTreeElement(!1,t,!0))this.treeOutline.unbindTreeElement(e);t.detach(),this.treeOutline&&this.treeOutline.dispatchEventToListeners(Kr.ElementsDetached)}removeChild(e){if(!e)throw new Error("child can't be undefined or null");if(e.parent!==this)return;const t=this.childrenInternal?this.childrenInternal.indexOf(e):-1;if(-1===t)throw new Error("child not found in this node's children");this.removeChildAtIndex(t)}removeChildren(){if(!this.root&&this.treeOutline?.selectedTreeElement?.hasAncestorOrSelf(this)&&this.select(!0),this.childrenInternal)for(const e of this.childrenInternal){e.previousSibling=null,e.nextSibling=null,e.parent=null,this.treeOutline&&this.treeOutline.unbindTreeElement(e);for(let t=e.firstChild();this.treeOutline&&t;t=t.traverseNextTreeElement(!1,e,!0))this.treeOutline.unbindTreeElement(t);e.detach()}this.childrenInternal=[],this.treeOutline&&this.treeOutline.dispatchEventToListeners(Kr.ElementsDetached)}get selectable(){return!this.isHidden()&&this.selectableInternal}set selectable(e){this.selectableInternal=e}get listItemElement(){return this.listItemNode}get childrenListElement(){return this.childrenListNode}get title(){return this.titleInternal}set title(e){this.titleInternal!==e&&(this.titleInternal=e,"string"==typeof e?(this.titleElement.textContent=e,this.tooltip=e):(this.titleElement=e,this.tooltip=""),this.listItemNode.removeChildren(),this.leadingIconsElement&&this.listItemNode.appendChild(this.leadingIconsElement),this.listItemNode.appendChild(this.titleElement),this.trailingIconsElement&&this.listItemNode.appendChild(this.trailingIconsElement),this.ensureSelection())}titleAsText(){return this.titleInternal?"string"==typeof this.titleInternal?this.titleInternal:this.titleInternal.textContent||"":""}startEditingTitle(e){Go.startEditing(this.titleElement,e),this.treeOutline&&this.treeOutline.onStartedEditingTitle(this)}setLeadingIcons(e){if(this.leadingIconsElement||e.length){this.leadingIconsElement||(this.leadingIconsElement=document.createElement("div"),this.leadingIconsElement.classList.add("leading-icons"),this.leadingIconsElement.classList.add("icons-container"),this.listItemNode.insertBefore(this.leadingIconsElement,this.titleElement),this.ensureSelection()),this.leadingIconsElement.removeChildren();for(const t of e)this.leadingIconsElement.appendChild(t)}}get tooltip(){return this.tooltipInternal}set tooltip(e){this.tooltipInternal!==e&&(this.tooltipInternal=e,gt.install(this.listItemNode,e))}isExpandable(){return this.expandable}setExpandable(e){this.expandable!==e&&(this.expandable=e,this.listItemNode.classList.toggle("parent",e),e?(s.registerLoggable(this.expandLoggable,`${s.expand()}`,this.listItemNode),$s(this.listItemNode,!1)):(this.collapse(),qs(this.listItemNode)))}isExpandRecursively(){return this.#C}setExpandRecursively(e){this.#C=e}isCollapsible(){return this.collapsible}setCollapsible(e){this.collapsible!==e&&(this.collapsible=e,this.listItemNode.classList.toggle("always-parent",!e),e||this.expand())}get hidden(){return this.hiddenInternal}set hidden(e){if(this.hiddenInternal!==e&&(this.hiddenInternal=e,this.listItemNode.classList.toggle("hidden",e),this.childrenListNode.classList.toggle("hidden",e),e&&this.treeOutline?.selectedTreeElement?.hasAncestorOrSelf(this))){const e=this.treeOutline.selectedTreeElement.listItemElement.hasFocus();this.treeOutline.forceSelect(!e,!1)}}invalidateChildren(){this.childrenInternal&&(this.removeChildren(),this.childrenInternal=null)}ensureSelection(){this.treeOutline?.renderSelection&&(this.selectionElementInternal||(this.selectionElementInternal=document.createElement("div"),this.selectionElementInternal.classList.add("selection"),this.selectionElementInternal.classList.add("fill")),this.listItemNode.insertBefore(this.selectionElementInternal,this.listItemElement.firstChild))}treeElementToggled(e){const t=e.currentTarget;if(!t||qr.get(t)!==this||t.hasSelection())return;console.assert(Boolean(this.treeOutline));const i=!!this.treeOutline&&this.treeOutline.showSelectionOnKeyboardFocus,n=this.toggleOnClick&&(i||!this.selectable),o=this.isEventWithinDisclosureTriangle(e);(n||o)&&(this.expanded?e.altKey?this.collapseRecursively():this.collapse():e.altKey?this.expandRecursively():this.expand(),s.logClick(this.expandLoggable,e),e.consume())}handleMouseDown(e){const t=e.currentTarget;t&&this.selectable&&qr.get(t)===this&&(this.isEventWithinDisclosureTriangle(e)||this.selectOnMouseDown(e))}handleDoubleClick(e){const t=e.currentTarget;if(!t||qr.get(t)!==this)return;this.ondblclick(e)||this.expandable&&!this.expanded&&this.expand()}detach(){this.listItemNode.remove(),this.childrenListNode.remove()}collapse(){if(!this.expanded||!this.collapsible)return;this.listItemNode.classList.remove("expanded"),this.childrenListNode.classList.remove("expanded"),$s(this.listItemNode,!1),this.expanded=!1,this.oncollapse(),this.treeOutline&&this.treeOutline.dispatchEventToListeners(Kr.ElementCollapsed,this);const e=this.treeOutline?.selectedTreeElement;e?.hasAncestor(this)&&this.select(!0,!0)}collapseRecursively(){let e=this;for(;e;)e.expanded&&e.collapse(),e=e.traverseNextTreeElement(!1,this,!0)}collapseChildren(){if(this.childrenInternal)for(const e of this.childrenInternal)e.collapseRecursively()}expand(){!this.expandable||this.expanded&&this.childrenInternal||(this.expanded=!0,this.populateIfNeeded(),this.listItemNode.classList.add("expanded"),this.childrenListNode.classList.add("expanded"),$s(this.listItemNode,!0),this.treeOutline&&(this.onexpand(),this.treeOutline.dispatchEventToListeners(Kr.ElementExpanded,this)))}async expandRecursively(e){let t=this;const i={depthChange:0};let n=0;(void 0===e||isNaN(e))&&(e=3);do{t.isExpandRecursively()&&(await t.populateIfNeeded(),n<e&&t.expand()),t=t.traverseNextTreeElement(!t.isExpandRecursively(),this,!0,i),n+=i.depthChange}while(null!==t)}collapseOrAscend(e){if(this.expanded&&this.collapsible)return e?this.collapseRecursively():this.collapse(),!0;if(!this.parent||this.parent.root)return!1;if(!this.parent.selectable)return this.parent.collapse(),!0;let t=this.parent;for(;t&&!t.selectable;)t=t.parent;return!!t&&(t.select(!1,!0),!0)}descendOrExpand(e){if(!this.expandable)return!1;if(!this.expanded)return e?this.expandRecursively():this.expand(),!0;let t=this.firstChild();for(;t&&!t.selectable;)t=t.nextSibling;return!!t&&(t.select(!1,!0),!0)}reveal(e){let t=this.parent;for(;t&&!t.root;)t.expanded||t.expand(),t=t.parent;this.treeOutline&&this.treeOutline.deferredScrollIntoView(this,Boolean(e))}revealed(){let e=this.parent;for(;e&&!e.root;){if(!e.expanded)return!1;e=e.parent}return!0}selectOnMouseDown(e){if(this.select(!1,!0)&&e.consume(!0),this.listItemNode.draggable&&this.selectionElementInternal&&this.treeOutline){const e=this.treeOutline.element.getBoundingClientRect().left-this.listItemNode.getBoundingClientRect().left-this.treeOutline.element.scrollLeft;this.selectionElementInternal.style.setProperty("margin-left",e+"px")}}select(e,t){if(e=e||this.disableSelectFocus,!this.treeOutline||!this.selectable||this.selected)return e||this.listItemElement.focus(),!1;const i=this.treeOutline.selectedTreeElement;return this.treeOutline.selectedTreeElement=null,this.treeOutline.rootElementInternal===this?(i&&i.deselect(),e||this.listItemElement.focus(),!1):(this.selected=!0,this.treeOutline.selectedTreeElement=this,this.treeOutline.updateFocusable(),e&&!this.treeOutline.contentElement.hasFocus()||this.listItemElement.focus(),this.listItemNode.classList.add("selected"),Zs(this.listItemNode,!0),this.treeOutline.dispatchEventToListeners(Kr.ElementSelected,this),i&&i.deselect(),this.onselect(t))}setFocusable(e){e?(this.listItemNode.setAttribute("tabIndex",this.treeOutline?.preventTabOrder?"-1":"0"),this.listItemNode.addEventListener("focus",this.boundOnFocus,!1),this.listItemNode.addEventListener("blur",this.boundOnBlur,!1)):(this.listItemNode.removeAttribute("tabIndex"),this.listItemNode.removeEventListener("focus",this.boundOnFocus,!1),this.listItemNode.removeEventListener("blur",this.boundOnBlur,!1))}onFocus(){this.treeOutline&&!this.treeOutline.getUseLightSelectionColor()&&(this.treeOutline.contentElement.classList.contains("hide-selection-when-blurred")||this.listItemNode.classList.add("force-white-icons"))}onBlur(){this.treeOutline&&!this.treeOutline.getUseLightSelectionColor()&&(this.treeOutline.contentElement.classList.contains("hide-selection-when-blurred")||this.listItemNode.classList.remove("force-white-icons"))}revealAndSelect(e){this.reveal(!0),this.select(e)}deselect(){const e=this.listItemNode.hasFocus();this.selected=!1,this.listItemNode.classList.remove("selected"),Js(this.listItemNode),this.setFocusable(!1),this.treeOutline&&this.treeOutline.selectedTreeElement===this&&(this.treeOutline.selectedTreeElement=null,this.treeOutline.updateFocusable(),e&&this.treeOutline.focus())}async populateIfNeeded(){this.treeOutline&&this.expandable&&!this.childrenInternal&&(this.childrenInternal=[],await this.onpopulate())}async onpopulate(){}onenter(){return this.expandable&&!this.expanded?(this.expand(),!0):!(!this.collapsible||!this.expanded)&&(this.collapse(),!0)}ondelete(){return!1}onspace(){return!1}onbind(){}onunbind(){}onattach(){}onexpand(){}oncollapse(){}ondblclick(e){return!1}onselect(e){return!1}traverseNextTreeElement(e,t,i,n){i||this.populateIfNeeded(),n&&(n.depthChange=0);let s=e?this.revealed()?this.firstChild():null:this.firstChild();if(s&&(!e||e&&this.expanded))return n&&(n.depthChange=1),s;if(this===t)return null;if(s=e?this.revealed()?this.nextSibling:null:this.nextSibling,s)return s;for(s=this;s&&!s.root&&!(e?s.revealed()&&s.nextSibling:s.nextSibling)&&s.parent!==t;)n&&(n.depthChange-=1),s=s.parent;return!s||s.root?null:e?s.revealed()?s.nextSibling:null:s.nextSibling}traversePreviousTreeElement(e,t){let i=e?this.revealed()?this.previousSibling:null:this.previousSibling;for(!t&&i&&i.populateIfNeeded();i&&(e?i.revealed()&&i.expanded&&i.lastChild():i.lastChild());)t||i.populateIfNeeded(),i=e?i.revealed()&&i.expanded?i.lastChild():null:i.lastChild();return i||(!this.parent||this.parent.root?null:this.parent)}isEventWithinDisclosureTriangle(e){const t=window.getComputedStyle(this.listItemNode).paddingLeft;console.assert(t.endsWith("px"));const i=parseFloat(t),n=this.listItemNode.getBoundingClientRect().left+i;return e.pageX>=n&&e.pageX<=n+10&&this.expandable}setDisableSelectFocus(e){this.disableSelectFocus=e}}s.registerParentProvider("parentTreeItem",(function(e){const t=Xr.getTreeElementBylistItemNode(e),i=t?.parent?.listItemElement;return i?.isConnected&&i||t?.treeOutline?.contentElement}));var Gr=Object.freeze({__proto__:null,get Events(){return Kr},TreeElement:Xr,TreeOutline:$r,TreeOutlineInShadow:class extends $r{element;shadowRoot;disclosureElement;renderSelection;constructor(e="Other"){super(),this.contentElement.classList.add("tree-outline"),this.element=document.createElement("div"),this.shadowRoot=rs(this.element,{cssFile:Ur}),this.disclosureElement=this.shadowRoot.createChild("div","tree-outline-disclosure"),this.disclosureElement.appendChild(this.contentElement),this.renderSelection=!0,"NavigationTree"===e&&this.contentElement.classList.add("tree-variant-navigation")}registerRequiredCSS(...e){for(const t of e)u.ThemeSupport.instance().appendStyle(this.shadowRoot,t)}hideOverflow(){this.disclosureElement.classList.add("tree-outline-disclosure-hide-overflow")}makeDense(){this.contentElement.classList.add("tree-outline-dense")}onStartedEditingTitle(e){const t=this.shadowRoot.getSelection();t&&t.selectAllChildren(e.titleElement)}},treeElementBylistItemNode:qr});var Yr=Object.freeze({__proto__:null,SimpleView:class extends it{#T;#k;constructor(e,t,n){if(super(t),this.#T=e,n&&!i.StringUtilities.isExtendedKebabCase(n))throw new Error(`Invalid view ID '${n}'`);this.#k=n??i.StringUtilities.toKebabCase(e)}viewId(){return this.#k}title(){return this.#T}isCloseable(){return!1}isTransient(){return!1}toolbarItems(){return Promise.resolve([])}widget(){return Promise.resolve(this)}revealView(){return Vt.instance().revealView(this)}disposeView(){}isPreviewFeature(){return!1}iconName(){}}});export{uo as ARIAUtils,T as ActionRegistration,L as ActionRegistry,f as Context,mo as ContextFlavorListener,wi as ContextMenu,vs as Dialog,he as DockController,go as DropTarget,Ro as EmptyWidget,_o as FilterBar,Ko as FilterSuggestionBuilder,qo as ForwardedInputEventHandler,ko as Fragment,Pe as Geometry,gs as GlassPane,ve as Infobar,Yo as InplaceEditor,ri as InspectorView,q as KeyboardShortcut,ki as ListControl,Li as ListModel,tr as ListWidget,nr as Panel,ar as PopoverHelper,dr as ProgressIndicator,vr as RemoteDebuggingTerminatedScreen,xr as ReportView,ze as ResizerWidget,Er as RootView,Pr as SearchableView,Ci as SettingsUI,te as ShortcutRegistry,ui as SoftContextMenu,Or as SoftDropDown,mt as SplitWidget,Bi as SuggestBox,Ct as TabbedPane,jr as TargetCrashedScreen,Hi as TextPrompt,Vr as ThrottledWidget,on as Toolbar,bt as Tooltip,Gr as TreeOutline,hs as UIUtils,Yr as View,Qt as ViewManager,ot as Widget,Fe as XElement,Po as XLink,je as XWidget,lt as ZoomManager};