@react-native/debugger-frontend 0.73.0-nightly-20230922-52104c6ee

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 (656) hide show
  1. package/BUILD_INFO +10 -0
  2. package/README.md +22 -0
  3. package/dist/third-party/LICENSE +28 -0
  4. package/dist/third-party/front_end/Images/3d-center.svg +1 -0
  5. package/dist/third-party/front_end/Images/3d-pan.svg +1 -0
  6. package/dist/third-party/front_end/Images/3d-rotate.svg +1 -0
  7. package/dist/third-party/front_end/Images/Images.js +223 -0
  8. package/dist/third-party/front_end/Images/accelerometer-back.svg +1 -0
  9. package/dist/third-party/front_end/Images/accelerometer-bottom.png +0 -0
  10. package/dist/third-party/front_end/Images/accelerometer-front.svg +1 -0
  11. package/dist/third-party/front_end/Images/accelerometer-left.png +0 -0
  12. package/dist/third-party/front_end/Images/accelerometer-right.png +0 -0
  13. package/dist/third-party/front_end/Images/accelerometer-top.png +0 -0
  14. package/dist/third-party/front_end/Images/align-content-center.svg +1 -0
  15. package/dist/third-party/front_end/Images/align-content-end.svg +1 -0
  16. package/dist/third-party/front_end/Images/align-content-space-around.svg +1 -0
  17. package/dist/third-party/front_end/Images/align-content-space-between.svg +1 -0
  18. package/dist/third-party/front_end/Images/align-content-space-evenly.svg +1 -0
  19. package/dist/third-party/front_end/Images/align-content-start.svg +1 -0
  20. package/dist/third-party/front_end/Images/align-content-stretch.svg +1 -0
  21. package/dist/third-party/front_end/Images/align-items-baseline.svg +1 -0
  22. package/dist/third-party/front_end/Images/align-items-center.svg +1 -0
  23. package/dist/third-party/front_end/Images/align-items-end.svg +1 -0
  24. package/dist/third-party/front_end/Images/align-items-start.svg +1 -0
  25. package/dist/third-party/front_end/Images/align-items-stretch.svg +1 -0
  26. package/dist/third-party/front_end/Images/align-self-center.svg +1 -0
  27. package/dist/third-party/front_end/Images/align-self-end.svg +1 -0
  28. package/dist/third-party/front_end/Images/align-self-start.svg +1 -0
  29. package/dist/third-party/front_end/Images/align-self-stretch.svg +1 -0
  30. package/dist/third-party/front_end/Images/arrow-down.svg +1 -0
  31. package/dist/third-party/front_end/Images/arrow-drop-down-dark.svg +1 -0
  32. package/dist/third-party/front_end/Images/arrow-drop-down-light.svg +1 -0
  33. package/dist/third-party/front_end/Images/arrow-up-down-circle.svg +1 -0
  34. package/dist/third-party/front_end/Images/arrow-up-down.svg +1 -0
  35. package/dist/third-party/front_end/Images/arrow-up.svg +1 -0
  36. package/dist/third-party/front_end/Images/bell.svg +1 -0
  37. package/dist/third-party/front_end/Images/bezier-curve-filled.svg +1 -0
  38. package/dist/third-party/front_end/Images/bin.svg +1 -0
  39. package/dist/third-party/front_end/Images/bottom-panel-close.svg +1 -0
  40. package/dist/third-party/front_end/Images/bottom-panel-open.svg +1 -0
  41. package/dist/third-party/front_end/Images/brackets.svg +1 -0
  42. package/dist/third-party/front_end/Images/breakpoint-circle.svg +1 -0
  43. package/dist/third-party/front_end/Images/breakpoint-crossed-filled.svg +1 -0
  44. package/dist/third-party/front_end/Images/breakpoint-crossed.svg +1 -0
  45. package/dist/third-party/front_end/Images/brush-filled.svg +1 -0
  46. package/dist/third-party/front_end/Images/brush.svg +1 -0
  47. package/dist/third-party/front_end/Images/bug.svg +1 -0
  48. package/dist/third-party/front_end/Images/bundle.svg +1 -0
  49. package/dist/third-party/front_end/Images/check-circle.svg +1 -0
  50. package/dist/third-party/front_end/Images/check-double.svg +1 -0
  51. package/dist/third-party/front_end/Images/checker.svg +1 -0
  52. package/dist/third-party/front_end/Images/checkmark.svg +1 -0
  53. package/dist/third-party/front_end/Images/chevron-double-right.svg +1 -0
  54. package/dist/third-party/front_end/Images/chevron-down.svg +1 -0
  55. package/dist/third-party/front_end/Images/chevron-left-dot.svg +1 -0
  56. package/dist/third-party/front_end/Images/chevron-left.svg +1 -0
  57. package/dist/third-party/front_end/Images/chevron-right.svg +1 -0
  58. package/dist/third-party/front_end/Images/chevron-up.svg +1 -0
  59. package/dist/third-party/front_end/Images/chromeLeft.avif +0 -0
  60. package/dist/third-party/front_end/Images/chromeMiddle.avif +0 -0
  61. package/dist/third-party/front_end/Images/chromeRight.avif +0 -0
  62. package/dist/third-party/front_end/Images/clear-list.svg +1 -0
  63. package/dist/third-party/front_end/Images/clear.svg +1 -0
  64. package/dist/third-party/front_end/Images/cloud.svg +1 -0
  65. package/dist/third-party/front_end/Images/code-circle.svg +1 -0
  66. package/dist/third-party/front_end/Images/code.svg +1 -0
  67. package/dist/third-party/front_end/Images/colon.svg +1 -0
  68. package/dist/third-party/front_end/Images/color-picker-filled.svg +1 -0
  69. package/dist/third-party/front_end/Images/color-picker.svg +1 -0
  70. package/dist/third-party/front_end/Images/console-conditional-breakpoint.svg +1 -0
  71. package/dist/third-party/front_end/Images/console-logpoint.svg +1 -0
  72. package/dist/third-party/front_end/Images/cookie.svg +1 -0
  73. package/dist/third-party/front_end/Images/copy.svg +1 -0
  74. package/dist/third-party/front_end/Images/credit-card.svg +1 -0
  75. package/dist/third-party/front_end/Images/cross-circle-filled.svg +1 -0
  76. package/dist/third-party/front_end/Images/cross-circle.svg +1 -0
  77. package/dist/third-party/front_end/Images/cross.svg +1 -0
  78. package/dist/third-party/front_end/Images/cssoverview_icons_2x.avif +0 -0
  79. package/dist/third-party/front_end/Images/custom-typography.svg +1 -0
  80. package/dist/third-party/front_end/Images/database.svg +1 -0
  81. package/dist/third-party/front_end/Images/deployed.svg +1 -0
  82. package/dist/third-party/front_end/Images/device-fold.svg +1 -0
  83. package/dist/third-party/front_end/Images/devices.svg +1 -0
  84. package/dist/third-party/front_end/Images/dock-bottom.svg +1 -0
  85. package/dist/third-party/front_end/Images/dock-left.svg +1 -0
  86. package/dist/third-party/front_end/Images/dock-right.svg +1 -0
  87. package/dist/third-party/front_end/Images/dock-window.svg +1 -0
  88. package/dist/third-party/front_end/Images/document.svg +1 -0
  89. package/dist/third-party/front_end/Images/dots-horizontal.svg +1 -0
  90. package/dist/third-party/front_end/Images/dots-vertical.svg +1 -0
  91. package/dist/third-party/front_end/Images/download.svg +1 -0
  92. package/dist/third-party/front_end/Images/edit.svg +1 -0
  93. package/dist/third-party/front_end/Images/empty.svg +1 -0
  94. package/dist/third-party/front_end/Images/errorWave.svg +1 -0
  95. package/dist/third-party/front_end/Images/exclamation.svg +1 -0
  96. package/dist/third-party/front_end/Images/experiment-check.svg +1 -0
  97. package/dist/third-party/front_end/Images/experiment.svg +1 -0
  98. package/dist/third-party/front_end/Images/eye.svg +1 -0
  99. package/dist/third-party/front_end/Images/file-document.svg +1 -0
  100. package/dist/third-party/front_end/Images/file-font.svg +1 -0
  101. package/dist/third-party/front_end/Images/file-generic.svg +1 -0
  102. package/dist/third-party/front_end/Images/file-image.svg +1 -0
  103. package/dist/third-party/front_end/Images/file-script.svg +1 -0
  104. package/dist/third-party/front_end/Images/file-snippet.svg +1 -0
  105. package/dist/third-party/front_end/Images/file-stylesheet.svg +1 -0
  106. package/dist/third-party/front_end/Images/filter-clear.svg +1 -0
  107. package/dist/third-party/front_end/Images/filter-filled.svg +1 -0
  108. package/dist/third-party/front_end/Images/filter.svg +1 -0
  109. package/dist/third-party/front_end/Images/flex-direction.svg +1 -0
  110. package/dist/third-party/front_end/Images/flex-no-wrap.svg +1 -0
  111. package/dist/third-party/front_end/Images/flex-wrap.svg +1 -0
  112. package/dist/third-party/front_end/Images/flow.svg +1 -0
  113. package/dist/third-party/front_end/Images/fold-more.svg +1 -0
  114. package/dist/third-party/front_end/Images/folder.svg +1 -0
  115. package/dist/third-party/front_end/Images/frame-crossed.svg +1 -0
  116. package/dist/third-party/front_end/Images/frame-icon.svg +1 -0
  117. package/dist/third-party/front_end/Images/frame.svg +1 -0
  118. package/dist/third-party/front_end/Images/gear-filled.svg +1 -0
  119. package/dist/third-party/front_end/Images/gear.svg +1 -0
  120. package/dist/third-party/front_end/Images/gears.svg +1 -0
  121. package/dist/third-party/front_end/Images/heap-snapshot.svg +1 -0
  122. package/dist/third-party/front_end/Images/heap-snapshots.svg +1 -0
  123. package/dist/third-party/front_end/Images/help.svg +1 -0
  124. package/dist/third-party/front_end/Images/iframe-crossed.svg +1 -0
  125. package/dist/third-party/front_end/Images/iframe.svg +1 -0
  126. package/dist/third-party/front_end/Images/import.svg +1 -0
  127. package/dist/third-party/front_end/Images/info-filled.svg +1 -0
  128. package/dist/third-party/front_end/Images/info.svg +1 -0
  129. package/dist/third-party/front_end/Images/issue-cross-filled.svg +1 -0
  130. package/dist/third-party/front_end/Images/issue-exclamation-filled.svg +1 -0
  131. package/dist/third-party/front_end/Images/issue-questionmark-filled.svg +1 -0
  132. package/dist/third-party/front_end/Images/issue-text-filled.svg +1 -0
  133. package/dist/third-party/front_end/Images/justify-content-center.svg +1 -0
  134. package/dist/third-party/front_end/Images/justify-content-end.svg +1 -0
  135. package/dist/third-party/front_end/Images/justify-content-space-around.svg +1 -0
  136. package/dist/third-party/front_end/Images/justify-content-space-between.svg +1 -0
  137. package/dist/third-party/front_end/Images/justify-content-space-evenly.svg +1 -0
  138. package/dist/third-party/front_end/Images/justify-content-start.svg +1 -0
  139. package/dist/third-party/front_end/Images/justify-items-center.svg +1 -0
  140. package/dist/third-party/front_end/Images/justify-items-end.svg +1 -0
  141. package/dist/third-party/front_end/Images/justify-items-start.svg +1 -0
  142. package/dist/third-party/front_end/Images/justify-items-stretch.svg +1 -0
  143. package/dist/third-party/front_end/Images/keyboard-pen.svg +1 -0
  144. package/dist/third-party/front_end/Images/large-arrow-right-filled.svg +1 -0
  145. package/dist/third-party/front_end/Images/largeIcons.svg +2 -0
  146. package/dist/third-party/front_end/Images/layers-filled.svg +1 -0
  147. package/dist/third-party/front_end/Images/layers.svg +1 -0
  148. package/dist/third-party/front_end/Images/left-panel-close.svg +1 -0
  149. package/dist/third-party/front_end/Images/left-panel-open.svg +1 -0
  150. package/dist/third-party/front_end/Images/lighthouse_logo.svg +1 -0
  151. package/dist/third-party/front_end/Images/list.svg +1 -0
  152. package/dist/third-party/front_end/Images/mediumIcons.svg +1 -0
  153. package/dist/third-party/front_end/Images/memory.svg +1 -0
  154. package/dist/third-party/front_end/Images/minus.svg +1 -0
  155. package/dist/third-party/front_end/Images/minus_icon.svg +1 -0
  156. package/dist/third-party/front_end/Images/navigationControls.png +0 -0
  157. package/dist/third-party/front_end/Images/navigationControls_2x.png +0 -0
  158. package/dist/third-party/front_end/Images/network-settings.svg +1 -0
  159. package/dist/third-party/front_end/Images/nodeIcon.avif +0 -0
  160. package/dist/third-party/front_end/Images/node_search_icon.svg +1 -0
  161. package/dist/third-party/front_end/Images/open-externally.svg +1 -0
  162. package/dist/third-party/front_end/Images/pause.svg +1 -0
  163. package/dist/third-party/front_end/Images/performance.svg +1 -0
  164. package/dist/third-party/front_end/Images/person.svg +1 -0
  165. package/dist/third-party/front_end/Images/play.svg +1 -0
  166. package/dist/third-party/front_end/Images/plus.svg +1 -0
  167. package/dist/third-party/front_end/Images/popoverArrows.png +0 -0
  168. package/dist/third-party/front_end/Images/popup.svg +1 -0
  169. package/dist/third-party/front_end/Images/preview_feature_video_thumbnail.svg +1 -0
  170. package/dist/third-party/front_end/Images/profile.svg +1 -0
  171. package/dist/third-party/front_end/Images/react_native/welcomeIcon.png +0 -0
  172. package/dist/third-party/front_end/Images/record-start.svg +1 -0
  173. package/dist/third-party/front_end/Images/record-stop.svg +1 -0
  174. package/dist/third-party/front_end/Images/redo.svg +1 -0
  175. package/dist/third-party/front_end/Images/refresh.svg +1 -0
  176. package/dist/third-party/front_end/Images/replace.svg +1 -0
  177. package/dist/third-party/front_end/Images/replay.svg +1 -0
  178. package/dist/third-party/front_end/Images/resizeDiagonal.svg +1 -0
  179. package/dist/third-party/front_end/Images/resizeHorizontal.svg +1 -0
  180. package/dist/third-party/front_end/Images/resizeVertical.svg +1 -0
  181. package/dist/third-party/front_end/Images/resume.svg +1 -0
  182. package/dist/third-party/front_end/Images/review.svg +1 -0
  183. package/dist/third-party/front_end/Images/right-panel-close.svg +1 -0
  184. package/dist/third-party/front_end/Images/right-panel-open.svg +1 -0
  185. package/dist/third-party/front_end/Images/screen-rotation.svg +1 -0
  186. package/dist/third-party/front_end/Images/search.svg +1 -0
  187. package/dist/third-party/front_end/Images/securityIcons.svg +1 -0
  188. package/dist/third-party/front_end/Images/select-element.svg +1 -0
  189. package/dist/third-party/front_end/Images/settings_14x14_icon.svg +1 -0
  190. package/dist/third-party/front_end/Images/shadow.svg +1 -0
  191. package/dist/third-party/front_end/Images/smallIcons.svg +1 -0
  192. package/dist/third-party/front_end/Images/snippet.svg +1 -0
  193. package/dist/third-party/front_end/Images/star.svg +1 -0
  194. package/dist/third-party/front_end/Images/step-into.svg +1 -0
  195. package/dist/third-party/front_end/Images/step-out.svg +1 -0
  196. package/dist/third-party/front_end/Images/step-over.svg +1 -0
  197. package/dist/third-party/front_end/Images/step.svg +1 -0
  198. package/dist/third-party/front_end/Images/stop.svg +1 -0
  199. package/dist/third-party/front_end/Images/symbol.svg +1 -0
  200. package/dist/third-party/front_end/Images/sync.svg +1 -0
  201. package/dist/third-party/front_end/Images/table.svg +1 -0
  202. package/dist/third-party/front_end/Images/toolbarResizerVertical.png +0 -0
  203. package/dist/third-party/front_end/Images/top-panel-close.svg +1 -0
  204. package/dist/third-party/front_end/Images/top-panel-open.svg +1 -0
  205. package/dist/third-party/front_end/Images/touchCursor.png +0 -0
  206. package/dist/third-party/front_end/Images/touchCursor_2x.png +0 -0
  207. package/dist/third-party/front_end/Images/triangle-bottom-right.svg +1 -0
  208. package/dist/third-party/front_end/Images/triangle-down.svg +1 -0
  209. package/dist/third-party/front_end/Images/triangle-left.svg +1 -0
  210. package/dist/third-party/front_end/Images/triangle-right.svg +1 -0
  211. package/dist/third-party/front_end/Images/triangle-up.svg +1 -0
  212. package/dist/third-party/front_end/Images/undo.svg +1 -0
  213. package/dist/third-party/front_end/Images/warning-filled.svg +1 -0
  214. package/dist/third-party/front_end/Images/warning.svg +1 -0
  215. package/dist/third-party/front_end/Images/warning_icon.svg +1 -0
  216. package/dist/third-party/front_end/Images/watch.svg +1 -0
  217. package/dist/third-party/front_end/Images/whatsnew.avif +0 -0
  218. package/dist/third-party/front_end/Images/width.svg +1 -0
  219. package/dist/third-party/front_end/Tests.js +1662 -0
  220. package/dist/third-party/front_end/core/common/common-legacy.js +1 -0
  221. package/dist/third-party/front_end/core/common/common.js +1 -0
  222. package/dist/third-party/front_end/core/dom_extension/dom_extension.js +1 -0
  223. package/dist/third-party/front_end/core/host/host-legacy.js +1 -0
  224. package/dist/third-party/front_end/core/host/host.js +1 -0
  225. package/dist/third-party/front_end/core/i18n/i18n.js +1 -0
  226. package/dist/third-party/front_end/core/i18n/locales/en-US.json +1 -0
  227. package/dist/third-party/front_end/core/i18n/locales/zh.json +1 -0
  228. package/dist/third-party/front_end/core/platform/platform.js +1 -0
  229. package/dist/third-party/front_end/core/protocol_client/protocol_client-legacy.js +1 -0
  230. package/dist/third-party/front_end/core/protocol_client/protocol_client.js +1 -0
  231. package/dist/third-party/front_end/core/root/root-legacy.js +1 -0
  232. package/dist/third-party/front_end/core/root/root.js +1 -0
  233. package/dist/third-party/front_end/core/sdk/sdk-legacy.js +1 -0
  234. package/dist/third-party/front_end/core/sdk/sdk-meta.js +1 -0
  235. package/dist/third-party/front_end/core/sdk/sdk.js +1 -0
  236. package/dist/third-party/front_end/device_mode_emulation_frame.html +20 -0
  237. package/dist/third-party/front_end/devtools_app.html +20 -0
  238. package/dist/third-party/front_end/devtools_compatibility.js +1595 -0
  239. package/dist/third-party/front_end/emulated_devices/optimized/MotoG4-landscape.avif +0 -0
  240. package/dist/third-party/front_end/emulated_devices/optimized/MotoG4-portrait.avif +0 -0
  241. package/dist/third-party/front_end/emulated_devices/optimized/Nexus5X-landscape.avif +0 -0
  242. package/dist/third-party/front_end/emulated_devices/optimized/Nexus5X-portrait.avif +0 -0
  243. package/dist/third-party/front_end/emulated_devices/optimized/Nexus6P-landscape.avif +0 -0
  244. package/dist/third-party/front_end/emulated_devices/optimized/Nexus6P-portrait.avif +0 -0
  245. package/dist/third-party/front_end/emulated_devices/optimized/google-nest-hub-horizontal.avif +0 -0
  246. package/dist/third-party/front_end/emulated_devices/optimized/google-nest-hub-max-horizontal.avif +0 -0
  247. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-horizontal-default-1x.avif +0 -0
  248. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-horizontal-default-2x.avif +0 -0
  249. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-horizontal-keyboard-1x.avif +0 -0
  250. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-horizontal-keyboard-2x.avif +0 -0
  251. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-horizontal-navigation-1x.avif +0 -0
  252. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-horizontal-navigation-2x.avif +0 -0
  253. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-vertical-default-1x.avif +0 -0
  254. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-vertical-default-2x.avif +0 -0
  255. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-vertical-keyboard-1x.avif +0 -0
  256. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-vertical-keyboard-2x.avif +0 -0
  257. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-vertical-navigation-1x.avif +0 -0
  258. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5-vertical-navigation-2x.avif +0 -0
  259. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-default-1x.avif +0 -0
  260. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-default-2x.avif +0 -0
  261. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-keyboard-1x.avif +0 -0
  262. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-keyboard-2x.avif +0 -0
  263. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-navigation-1x.avif +0 -0
  264. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-navigation-2x.avif +0 -0
  265. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-vertical-default-1x.avif +0 -0
  266. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-vertical-default-2x.avif +0 -0
  267. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-vertical-keyboard-1x.avif +0 -0
  268. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-vertical-keyboard-2x.avif +0 -0
  269. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-vertical-navigation-1x.avif +0 -0
  270. package/dist/third-party/front_end/emulated_devices/optimized/google-nexus-5x-vertical-navigation-2x.avif +0 -0
  271. package/dist/third-party/front_end/emulated_devices/optimized/iPad-landscape.avif +0 -0
  272. package/dist/third-party/front_end/emulated_devices/optimized/iPad-portrait.avif +0 -0
  273. package/dist/third-party/front_end/emulated_devices/optimized/iPhone5-landscape.avif +0 -0
  274. package/dist/third-party/front_end/emulated_devices/optimized/iPhone5-portrait.avif +0 -0
  275. package/dist/third-party/front_end/emulated_devices/optimized/iPhone6-landscape.avif +0 -0
  276. package/dist/third-party/front_end/emulated_devices/optimized/iPhone6-portrait.avif +0 -0
  277. package/dist/third-party/front_end/emulated_devices/optimized/iPhone6Plus-landscape.avif +0 -0
  278. package/dist/third-party/front_end/emulated_devices/optimized/iPhone6Plus-portrait.avif +0 -0
  279. package/dist/third-party/front_end/entrypoints/device_mode_emulation_frame/device_mode_emulation_frame.js +1 -0
  280. package/dist/third-party/front_end/entrypoints/devtools_app/devtools_app.js +1 -0
  281. package/dist/third-party/front_end/entrypoints/formatter_worker/FormatterActions.js +1 -0
  282. package/dist/third-party/front_end/entrypoints/formatter_worker/formatter_worker-entrypoint.js +1 -0
  283. package/dist/third-party/front_end/entrypoints/formatter_worker/formatter_worker.js +1 -0
  284. package/dist/third-party/front_end/entrypoints/heap_snapshot_worker/heap_snapshot_worker-entrypoint.js +1 -0
  285. package/dist/third-party/front_end/entrypoints/heap_snapshot_worker/heap_snapshot_worker-legacy.js +1 -0
  286. package/dist/third-party/front_end/entrypoints/heap_snapshot_worker/heap_snapshot_worker.js +1 -0
  287. package/dist/third-party/front_end/entrypoints/inspector/inspector.js +1 -0
  288. package/dist/third-party/front_end/entrypoints/inspector_main/inspector_main-meta.js +1 -0
  289. package/dist/third-party/front_end/entrypoints/inspector_main/inspector_main.js +1 -0
  290. package/dist/third-party/front_end/entrypoints/js_app/js_app.js +1 -0
  291. package/dist/third-party/front_end/entrypoints/lighthouse_worker/lighthouse_worker.js +1 -0
  292. package/dist/third-party/front_end/entrypoints/main/main-legacy.js +1 -0
  293. package/dist/third-party/front_end/entrypoints/main/main-meta.js +1 -0
  294. package/dist/third-party/front_end/entrypoints/main/main.js +1 -0
  295. package/dist/third-party/front_end/entrypoints/ndb_app/ndb_app.js +1 -0
  296. package/dist/third-party/front_end/entrypoints/node_app/node_app.js +1 -0
  297. package/dist/third-party/front_end/entrypoints/rn_inspector/rn_inspector.js +1 -0
  298. package/dist/third-party/front_end/entrypoints/shell/shell.js +1 -0
  299. package/dist/third-party/front_end/entrypoints/wasmparser_worker/wasmparser_worker-entrypoint.js +1 -0
  300. package/dist/third-party/front_end/entrypoints/wasmparser_worker/wasmparser_worker.js +1 -0
  301. package/dist/third-party/front_end/entrypoints/worker_app/worker_app.js +1 -0
  302. package/dist/third-party/front_end/inspector.html +20 -0
  303. package/dist/third-party/front_end/integration_test_runner.html +40 -0
  304. package/dist/third-party/front_end/js_app.html +20 -0
  305. package/dist/third-party/front_end/legacy_test_runner/legacy_test_runner.js +36 -0
  306. package/dist/third-party/front_end/legacy_test_runner/test_runner/test_runner.js +1 -0
  307. package/dist/third-party/front_end/models/bindings/bindings-legacy.js +1 -0
  308. package/dist/third-party/front_end/models/bindings/bindings.js +1 -0
  309. package/dist/third-party/front_end/models/breakpoints/breakpoints-legacy.js +1 -0
  310. package/dist/third-party/front_end/models/breakpoints/breakpoints.js +1 -0
  311. package/dist/third-party/front_end/models/emulation/emulation.js +1 -0
  312. package/dist/third-party/front_end/models/extensions/extensions-legacy.js +1 -0
  313. package/dist/third-party/front_end/models/extensions/extensions.js +1 -0
  314. package/dist/third-party/front_end/models/formatter/formatter-legacy.js +1 -0
  315. package/dist/third-party/front_end/models/formatter/formatter.js +1 -0
  316. package/dist/third-party/front_end/models/har/har.js +1 -0
  317. package/dist/third-party/front_end/models/heap_snapshot_model/heap_snapshot_model-legacy.js +1 -0
  318. package/dist/third-party/front_end/models/heap_snapshot_model/heap_snapshot_model.js +1 -0
  319. package/dist/third-party/front_end/models/issues_manager/descriptions/CoepCoopSandboxedIframeCannotNavigateToCoopPage.md +4 -0
  320. package/dist/third-party/front_end/models/issues_manager/descriptions/CoepCorpNotSameOrigin.md +8 -0
  321. package/dist/third-party/front_end/models/issues_manager/descriptions/CoepCorpNotSameOriginAfterDefaultedToSameOriginByCoep.md +18 -0
  322. package/dist/third-party/front_end/models/issues_manager/descriptions/CoepCorpNotSameSite.md +7 -0
  323. package/dist/third-party/front_end/models/issues_manager/descriptions/CoepFrameResourceNeedsCoepHeader.md +10 -0
  324. package/dist/third-party/front_end/models/issues_manager/descriptions/CompatibilityModeQuirks.md +5 -0
  325. package/dist/third-party/front_end/models/issues_manager/descriptions/CookieAttributeValueExceedsMaxSize.md +5 -0
  326. package/dist/third-party/front_end/models/issues_manager/descriptions/LowTextContrast.md +5 -0
  327. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteExcludeContextDowngradeRead.md +8 -0
  328. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteExcludeContextDowngradeSet.md +8 -0
  329. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteExcludeNavigationContextDowngrade.md +8 -0
  330. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteInvalidSameParty.md +8 -0
  331. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteNoneInsecureErrorRead.md +8 -0
  332. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteNoneInsecureErrorSet.md +8 -0
  333. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteNoneInsecureWarnRead.md +8 -0
  334. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteNoneInsecureWarnSet.md +8 -0
  335. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteUnspecifiedLaxAllowUnsafeRead.md +9 -0
  336. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteUnspecifiedLaxAllowUnsafeSet.md +9 -0
  337. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteUnspecifiedTreatedAsLaxRead.md +9 -0
  338. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteUnspecifiedTreatedAsLaxSet.md +9 -0
  339. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteWarnCrossDowngradeRead.md +8 -0
  340. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteWarnCrossDowngradeSet.md +8 -0
  341. package/dist/third-party/front_end/models/issues_manager/descriptions/SameSiteWarnStrictLaxDowngradeStrict.md +8 -0
  342. package/dist/third-party/front_end/models/issues_manager/descriptions/arInsecureContext.md +7 -0
  343. package/dist/third-party/front_end/models/issues_manager/descriptions/arInvalidRegisterOsSourceHeader.md +5 -0
  344. package/dist/third-party/front_end/models/issues_manager/descriptions/arInvalidRegisterOsTriggerHeader.md +5 -0
  345. package/dist/third-party/front_end/models/issues_manager/descriptions/arInvalidRegisterSourceHeader.md +5 -0
  346. package/dist/third-party/front_end/models/issues_manager/descriptions/arInvalidRegisterTriggerHeader.md +5 -0
  347. package/dist/third-party/front_end/models/issues_manager/descriptions/arOsSourceIgnored.md +18 -0
  348. package/dist/third-party/front_end/models/issues_manager/descriptions/arOsTriggerIgnored.md +19 -0
  349. package/dist/third-party/front_end/models/issues_manager/descriptions/arPermissionPolicyDisabled.md +8 -0
  350. package/dist/third-party/front_end/models/issues_manager/descriptions/arSourceAndTriggerHeaders.md +9 -0
  351. package/dist/third-party/front_end/models/issues_manager/descriptions/arSourceIgnored.md +13 -0
  352. package/dist/third-party/front_end/models/issues_manager/descriptions/arTriggerIgnored.md +12 -0
  353. package/dist/third-party/front_end/models/issues_manager/descriptions/arUntrustworthyReportingOrigin.md +10 -0
  354. package/dist/third-party/front_end/models/issues_manager/descriptions/arWebAndOsHeaders.md +11 -0
  355. package/dist/third-party/front_end/models/issues_manager/descriptions/bounceTrackingMitigations.md +3 -0
  356. package/dist/third-party/front_end/models/issues_manager/descriptions/clientHintMetaTagAllowListInvalidOrigin.md +4 -0
  357. package/dist/third-party/front_end/models/issues_manager/descriptions/clientHintMetaTagModifiedHTML.md +4 -0
  358. package/dist/third-party/front_end/models/issues_manager/descriptions/cookieExcludeBlockedWithinFirstPartySet.md +4 -0
  359. package/dist/third-party/front_end/models/issues_manager/descriptions/cookieExcludeDomainNonAscii.md +11 -0
  360. package/dist/third-party/front_end/models/issues_manager/descriptions/cookieWarnDomainNonAscii.md +11 -0
  361. package/dist/third-party/front_end/models/issues_manager/descriptions/corsAllowCredentialsRequired.md +6 -0
  362. package/dist/third-party/front_end/models/issues_manager/descriptions/corsDisabledScheme.md +7 -0
  363. package/dist/third-party/front_end/models/issues_manager/descriptions/corsDisallowedByMode.md +7 -0
  364. package/dist/third-party/front_end/models/issues_manager/descriptions/corsHeaderDisallowedByPreflightResponse.md +5 -0
  365. package/dist/third-party/front_end/models/issues_manager/descriptions/corsInsecurePrivateNetwork.md +10 -0
  366. package/dist/third-party/front_end/models/issues_manager/descriptions/corsInvalidHeaderValues.md +7 -0
  367. package/dist/third-party/front_end/models/issues_manager/descriptions/corsMethodDisallowedByPreflightResponse.md +5 -0
  368. package/dist/third-party/front_end/models/issues_manager/descriptions/corsNoCorsRedirectModeNotFollow.md +5 -0
  369. package/dist/third-party/front_end/models/issues_manager/descriptions/corsOriginMismatch.md +6 -0
  370. package/dist/third-party/front_end/models/issues_manager/descriptions/corsPreflightAllowPrivateNetworkError.md +10 -0
  371. package/dist/third-party/front_end/models/issues_manager/descriptions/corsPreflightResponseInvalid.md +5 -0
  372. package/dist/third-party/front_end/models/issues_manager/descriptions/corsRedirectContainsCredentials.md +5 -0
  373. package/dist/third-party/front_end/models/issues_manager/descriptions/corsWildcardOriginNotAllowed.md +8 -0
  374. package/dist/third-party/front_end/models/issues_manager/descriptions/cspEvalViolation.md +9 -0
  375. package/dist/third-party/front_end/models/issues_manager/descriptions/cspInlineViolation.md +10 -0
  376. package/dist/third-party/front_end/models/issues_manager/descriptions/cspTrustedTypesPolicyViolation.md +5 -0
  377. package/dist/third-party/front_end/models/issues_manager/descriptions/cspTrustedTypesSinkViolation.md +8 -0
  378. package/dist/third-party/front_end/models/issues_manager/descriptions/cspURLViolation.md +10 -0
  379. package/dist/third-party/front_end/models/issues_manager/descriptions/deprecation.md +3 -0
  380. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestAccountsHttpNotFound.md +1 -0
  381. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestAccountsInvalidResponse.md +1 -0
  382. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestAccountsNoResponse.md +1 -0
  383. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestApprovalDeclined.md +1 -0
  384. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestCanceled.md +1 -0
  385. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestClientMetadataHttpNotFound.md +1 -0
  386. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestClientMetadataInvalidResponse.md +1 -0
  387. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestClientMetadataNoResponse.md +1 -0
  388. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestErrorFetchingSignin.md +1 -0
  389. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestErrorIdToken.md +1 -0
  390. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestIdTokenHttpNotFound.md +1 -0
  391. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestIdTokenInvalidRequest.md +1 -0
  392. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestIdTokenInvalidResponse.md +1 -0
  393. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestIdTokenNoResponse.md +1 -0
  394. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestInvalidSigninResponse.md +1 -0
  395. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestManifestHttpNotFound.md +1 -0
  396. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestManifestInvalidResponse.md +1 -0
  397. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestManifestNoResponse.md +1 -0
  398. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthRequestTooManyRequests.md +1 -0
  399. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestInvalidAccountsResponse.md +1 -0
  400. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestInvalidConfigOrWellKnown.md +1 -0
  401. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoAccountSharingPermission.md +1 -0
  402. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoApiPermission.md +1 -0
  403. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoReturningUserFromFetchedAccounts.md +1 -0
  404. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotIframe.md +1 -0
  405. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotPotentiallyTrustworthy.md +1 -0
  406. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotSameOrigin.md +1 -0
  407. package/dist/third-party/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotSignedInWithIdp.md +1 -0
  408. package/dist/third-party/front_end/models/issues_manager/descriptions/genericCrossOriginPortalPostMessageError.md +3 -0
  409. package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormAriaLabelledByToNonExistingId.md +8 -0
  410. package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormAutocompleteAttributeEmptyError.md +5 -0
  411. package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormDuplicateIdForInputError.md +5 -0
  412. package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormEmptyIdAndNameAttributesForInputError.md +5 -0
  413. package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormInputAssignedAutocompleteValueToIdOrNameAttributeError.md +5 -0
  414. package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormInputHasWrongButWellIntendedAutocompleteValueError.md +5 -0
  415. package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormInputWithNoLabelError.md +5 -0
  416. package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormLabelForMatchesNonExistingIdError.md +5 -0
  417. package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormLabelForNameError.md +5 -0
  418. package/dist/third-party/front_end/models/issues_manager/descriptions/genericFormLabelHasNeitherForNorNestedInput.md +5 -0
  419. package/dist/third-party/front_end/models/issues_manager/descriptions/heavyAd.md +10 -0
  420. package/dist/third-party/front_end/models/issues_manager/descriptions/mixedContent.md +5 -0
  421. package/dist/third-party/front_end/models/issues_manager/descriptions/sharedArrayBuffer.md +7 -0
  422. package/dist/third-party/front_end/models/issues_manager/descriptions/stylesheetLateImport.md +4 -0
  423. package/dist/third-party/front_end/models/issues_manager/descriptions/stylesheetRequestFailed.md +3 -0
  424. package/dist/third-party/front_end/models/issues_manager/issues_manager.js +1 -0
  425. package/dist/third-party/front_end/models/javascript_metadata/javascript_metadata.js +1 -0
  426. package/dist/third-party/front_end/models/logs/logs-meta.js +1 -0
  427. package/dist/third-party/front_end/models/logs/logs.js +1 -0
  428. package/dist/third-party/front_end/models/persistence/persistence-legacy.js +1 -0
  429. package/dist/third-party/front_end/models/persistence/persistence-meta.js +1 -0
  430. package/dist/third-party/front_end/models/persistence/persistence.js +1 -0
  431. package/dist/third-party/front_end/models/source_map_scopes/source_map_scopes.js +1 -0
  432. package/dist/third-party/front_end/models/text_utils/text_utils-legacy.js +1 -0
  433. package/dist/third-party/front_end/models/text_utils/text_utils.js +1 -0
  434. package/dist/third-party/front_end/models/timeline_model/timeline_model-legacy.js +1 -0
  435. package/dist/third-party/front_end/models/timeline_model/timeline_model.js +1 -0
  436. package/dist/third-party/front_end/models/trace/extras/extras.js +1 -0
  437. package/dist/third-party/front_end/models/trace/handlers/handlers.js +1 -0
  438. package/dist/third-party/front_end/models/trace/helpers/helpers.js +1 -0
  439. package/dist/third-party/front_end/models/trace/trace.js +1 -0
  440. package/dist/third-party/front_end/models/trace/types/types.js +1 -0
  441. package/dist/third-party/front_end/models/workspace/workspace-legacy.js +1 -0
  442. package/dist/third-party/front_end/models/workspace/workspace.js +1 -0
  443. package/dist/third-party/front_end/models/workspace_diff/workspace_diff-legacy.js +1 -0
  444. package/dist/third-party/front_end/models/workspace_diff/workspace_diff.js +1 -0
  445. package/dist/third-party/front_end/ndb_app.html +20 -0
  446. package/dist/third-party/front_end/node_app.html +20 -0
  447. package/dist/third-party/front_end/panels/accessibility/accessibility-legacy.js +1 -0
  448. package/dist/third-party/front_end/panels/accessibility/accessibility-meta.js +1 -0
  449. package/dist/third-party/front_end/panels/accessibility/accessibility.js +1 -0
  450. package/dist/third-party/front_end/panels/animation/animation-legacy.js +1 -0
  451. package/dist/third-party/front_end/panels/animation/animation-meta.js +1 -0
  452. package/dist/third-party/front_end/panels/animation/animation.js +1 -0
  453. package/dist/third-party/front_end/panels/application/application-legacy.js +1 -0
  454. package/dist/third-party/front_end/panels/application/application-meta.js +1 -0
  455. package/dist/third-party/front_end/panels/application/application.js +1 -0
  456. package/dist/third-party/front_end/panels/application/components/components.js +1 -0
  457. package/dist/third-party/front_end/panels/application/preloading/components/components.js +1 -0
  458. package/dist/third-party/front_end/panels/browser_debugger/browser_debugger-legacy.js +1 -0
  459. package/dist/third-party/front_end/panels/browser_debugger/browser_debugger-meta.js +1 -0
  460. package/dist/third-party/front_end/panels/browser_debugger/browser_debugger.js +1 -0
  461. package/dist/third-party/front_end/panels/changes/changes-legacy.js +1 -0
  462. package/dist/third-party/front_end/panels/changes/changes-meta.js +1 -0
  463. package/dist/third-party/front_end/panels/changes/changes.js +1 -0
  464. package/dist/third-party/front_end/panels/console/console-legacy.js +1 -0
  465. package/dist/third-party/front_end/panels/console/console-meta.js +1 -0
  466. package/dist/third-party/front_end/panels/console/console.js +6 -0
  467. package/dist/third-party/front_end/panels/console_counters/console_counters-meta.js +1 -0
  468. package/dist/third-party/front_end/panels/console_counters/console_counters.js +1 -0
  469. package/dist/third-party/front_end/panels/coverage/coverage-legacy.js +1 -0
  470. package/dist/third-party/front_end/panels/coverage/coverage-meta.js +1 -0
  471. package/dist/third-party/front_end/panels/coverage/coverage.js +1 -0
  472. package/dist/third-party/front_end/panels/css_overview/components/components.js +1 -0
  473. package/dist/third-party/front_end/panels/css_overview/css_overview-meta.js +1 -0
  474. package/dist/third-party/front_end/panels/css_overview/css_overview.js +144 -0
  475. package/dist/third-party/front_end/panels/developer_resources/developer_resources-meta.js +1 -0
  476. package/dist/third-party/front_end/panels/developer_resources/developer_resources.js +1 -0
  477. package/dist/third-party/front_end/panels/elements/components/components.js +1 -0
  478. package/dist/third-party/front_end/panels/elements/elements-legacy.js +1 -0
  479. package/dist/third-party/front_end/panels/elements/elements-meta.js +1 -0
  480. package/dist/third-party/front_end/panels/elements/elements.js +1 -0
  481. package/dist/third-party/front_end/panels/emulation/components/components.js +22 -0
  482. package/dist/third-party/front_end/panels/emulation/emulation-legacy.js +1 -0
  483. package/dist/third-party/front_end/panels/emulation/emulation-meta.js +1 -0
  484. package/dist/third-party/front_end/panels/emulation/emulation.js +1 -0
  485. package/dist/third-party/front_end/panels/event_listeners/event_listeners.js +1 -0
  486. package/dist/third-party/front_end/panels/issues/components/components.js +1 -0
  487. package/dist/third-party/front_end/panels/issues/issues-meta.js +1 -0
  488. package/dist/third-party/front_end/panels/issues/issues.js +1 -0
  489. package/dist/third-party/front_end/panels/js_profiler/js_profiler-meta.js +1 -0
  490. package/dist/third-party/front_end/panels/js_profiler/js_profiler.js +1 -0
  491. package/dist/third-party/front_end/panels/layer_viewer/layer_viewer-legacy.js +1 -0
  492. package/dist/third-party/front_end/panels/layer_viewer/layer_viewer-meta.js +1 -0
  493. package/dist/third-party/front_end/panels/layer_viewer/layer_viewer.js +1 -0
  494. package/dist/third-party/front_end/panels/layers/layers-meta.js +1 -0
  495. package/dist/third-party/front_end/panels/layers/layers.js +1 -0
  496. package/dist/third-party/front_end/panels/lighthouse/lighthouse-legacy.js +1 -0
  497. package/dist/third-party/front_end/panels/lighthouse/lighthouse-meta.js +1 -0
  498. package/dist/third-party/front_end/panels/lighthouse/lighthouse.js +66 -0
  499. package/dist/third-party/front_end/panels/media/media-meta.js +1 -0
  500. package/dist/third-party/front_end/panels/media/media.js +25 -0
  501. package/dist/third-party/front_end/panels/mobile_throttling/mobile_throttling-legacy.js +1 -0
  502. package/dist/third-party/front_end/panels/mobile_throttling/mobile_throttling-meta.js +1 -0
  503. package/dist/third-party/front_end/panels/mobile_throttling/mobile_throttling.js +1 -0
  504. package/dist/third-party/front_end/panels/network/components/components.js +1 -0
  505. package/dist/third-party/front_end/panels/network/forward/forward.js +1 -0
  506. package/dist/third-party/front_end/panels/network/network-legacy.js +1 -0
  507. package/dist/third-party/front_end/panels/network/network-meta.js +1 -0
  508. package/dist/third-party/front_end/panels/network/network.js +1 -0
  509. package/dist/third-party/front_end/panels/performance_monitor/performance_monitor-meta.js +1 -0
  510. package/dist/third-party/front_end/panels/performance_monitor/performance_monitor.js +1 -0
  511. package/dist/third-party/front_end/panels/profiler/profiler-legacy.js +1 -0
  512. package/dist/third-party/front_end/panels/profiler/profiler-meta.js +1 -0
  513. package/dist/third-party/front_end/panels/profiler/profiler.js +7 -0
  514. package/dist/third-party/front_end/panels/protocol_monitor/components/components.js +1 -0
  515. package/dist/third-party/front_end/panels/protocol_monitor/protocol_monitor-meta.js +1 -0
  516. package/dist/third-party/front_end/panels/protocol_monitor/protocol_monitor.js +1 -0
  517. package/dist/third-party/front_end/panels/recorder/components/components.js +1 -0
  518. package/dist/third-party/front_end/panels/recorder/controllers/controllers.js +1 -0
  519. package/dist/third-party/front_end/panels/recorder/converters/converters.js +1 -0
  520. package/dist/third-party/front_end/panels/recorder/extensions/extensions.js +1 -0
  521. package/dist/third-party/front_end/panels/recorder/injected/injected.generated.js +1 -0
  522. package/dist/third-party/front_end/panels/recorder/injected/injected.js +1 -0
  523. package/dist/third-party/front_end/panels/recorder/models/models.js +1 -0
  524. package/dist/third-party/front_end/panels/recorder/recorder-actions.js +1 -0
  525. package/dist/third-party/front_end/panels/recorder/recorder-meta.js +1 -0
  526. package/dist/third-party/front_end/panels/recorder/recorder.js +1 -0
  527. package/dist/third-party/front_end/panels/recorder/util/util.js +1 -0
  528. package/dist/third-party/front_end/panels/rn_welcome/rn_welcome-meta.js +1 -0
  529. package/dist/third-party/front_end/panels/rn_welcome/rn_welcome.js +1 -0
  530. package/dist/third-party/front_end/panels/screencast/screencast-meta.js +1 -0
  531. package/dist/third-party/front_end/panels/screencast/screencast.js +1 -0
  532. package/dist/third-party/front_end/panels/search/search-legacy.js +1 -0
  533. package/dist/third-party/front_end/panels/search/search.js +1 -0
  534. package/dist/third-party/front_end/panels/security/security-legacy.js +1 -0
  535. package/dist/third-party/front_end/panels/security/security-meta.js +1 -0
  536. package/dist/third-party/front_end/panels/security/security.js +1 -0
  537. package/dist/third-party/front_end/panels/sensors/sensors-meta.js +1 -0
  538. package/dist/third-party/front_end/panels/sensors/sensors.js +1 -0
  539. package/dist/third-party/front_end/panels/settings/components/components.js +1 -0
  540. package/dist/third-party/front_end/panels/settings/emulation/components/components.js +1 -0
  541. package/dist/third-party/front_end/panels/settings/emulation/emulation-meta.js +1 -0
  542. package/dist/third-party/front_end/panels/settings/emulation/emulation.js +1 -0
  543. package/dist/third-party/front_end/panels/settings/emulation/utils/utils.js +1 -0
  544. package/dist/third-party/front_end/panels/settings/settings-legacy.js +1 -0
  545. package/dist/third-party/front_end/panels/settings/settings-meta.js +1 -0
  546. package/dist/third-party/front_end/panels/settings/settings.js +1 -0
  547. package/dist/third-party/front_end/panels/snippets/snippets-legacy.js +1 -0
  548. package/dist/third-party/front_end/panels/snippets/snippets.js +1 -0
  549. package/dist/third-party/front_end/panels/sources/components/components.js +1 -0
  550. package/dist/third-party/front_end/panels/sources/sources-legacy.js +1 -0
  551. package/dist/third-party/front_end/panels/sources/sources-meta.js +1 -0
  552. package/dist/third-party/front_end/panels/sources/sources.js +1 -0
  553. package/dist/third-party/front_end/panels/timeline/timeline-legacy.js +1 -0
  554. package/dist/third-party/front_end/panels/timeline/timeline-meta.js +1 -0
  555. package/dist/third-party/front_end/panels/timeline/timeline.js +1 -0
  556. package/dist/third-party/front_end/panels/utils/utils.js +1 -0
  557. package/dist/third-party/front_end/panels/web_audio/graph_visualizer/graph_visualizer.js +1 -0
  558. package/dist/third-party/front_end/panels/web_audio/web_audio-legacy.js +1 -0
  559. package/dist/third-party/front_end/panels/web_audio/web_audio-meta.js +1 -0
  560. package/dist/third-party/front_end/panels/web_audio/web_audio.js +1 -0
  561. package/dist/third-party/front_end/panels/webauthn/webauthn-meta.js +1 -0
  562. package/dist/third-party/front_end/panels/webauthn/webauthn.js +1 -0
  563. package/dist/third-party/front_end/rn_inspector.html +20 -0
  564. package/dist/third-party/front_end/services/puppeteer/puppeteer.js +1 -0
  565. package/dist/third-party/front_end/services/tracing/tracing.js +1 -0
  566. package/dist/third-party/front_end/services/window_bounds/window_bounds.js +1 -0
  567. package/dist/third-party/front_end/third_party/acorn/acorn.js +1 -0
  568. package/dist/third-party/front_end/third_party/chromium/client-variations/client-variations.js +1 -0
  569. package/dist/third-party/front_end/third_party/codemirror.next/chunk/angular.js +2 -0
  570. package/dist/third-party/front_end/third_party/codemirror.next/chunk/codemirror.js +2 -0
  571. package/dist/third-party/front_end/third_party/codemirror.next/chunk/cpp.js +2 -0
  572. package/dist/third-party/front_end/third_party/codemirror.next/chunk/java.js +2 -0
  573. package/dist/third-party/front_end/third_party/codemirror.next/chunk/json.js +2 -0
  574. package/dist/third-party/front_end/third_party/codemirror.next/chunk/legacy.js +2 -0
  575. package/dist/third-party/front_end/third_party/codemirror.next/chunk/less.js +2 -0
  576. package/dist/third-party/front_end/third_party/codemirror.next/chunk/markdown.js +2 -0
  577. package/dist/third-party/front_end/third_party/codemirror.next/chunk/php.js +2 -0
  578. package/dist/third-party/front_end/third_party/codemirror.next/chunk/python.js +2 -0
  579. package/dist/third-party/front_end/third_party/codemirror.next/chunk/sass.js +2 -0
  580. package/dist/third-party/front_end/third_party/codemirror.next/chunk/svelte.js +2 -0
  581. package/dist/third-party/front_end/third_party/codemirror.next/chunk/vue.js +2 -0
  582. package/dist/third-party/front_end/third_party/codemirror.next/chunk/wast.js +2 -0
  583. package/dist/third-party/front_end/third_party/codemirror.next/chunk/xml.js +2 -0
  584. package/dist/third-party/front_end/third_party/codemirror.next/codemirror.next.js +2 -0
  585. package/dist/third-party/front_end/third_party/diff/diff-legacy.js +1 -0
  586. package/dist/third-party/front_end/third_party/diff/diff.js +1 -0
  587. package/dist/third-party/front_end/third_party/i18n/i18n.js +1 -0
  588. package/dist/third-party/front_end/third_party/intl-messageformat/intl-messageformat.js +15 -0
  589. package/dist/third-party/front_end/third_party/lighthouse/lighthouse-dt-bundle.js +1297 -0
  590. package/dist/third-party/front_end/third_party/lighthouse/report/report.js +222 -0
  591. package/dist/third-party/front_end/third_party/lit/lit.js +98 -0
  592. package/dist/third-party/front_end/third_party/marked/marked.js +1 -0
  593. package/dist/third-party/front_end/third_party/puppeteer/puppeteer.js +1 -0
  594. package/dist/third-party/front_end/third_party/puppeteer-replay/puppeteer-replay.js +1 -0
  595. package/dist/third-party/front_end/third_party/wasmparser/wasmparser.js +1 -0
  596. package/dist/third-party/front_end/ui/components/adorners/adorners.js +1 -0
  597. package/dist/third-party/front_end/ui/components/buttons/buttons.js +1 -0
  598. package/dist/third-party/front_end/ui/components/chrome_link/chrome_link.js +1 -0
  599. package/dist/third-party/front_end/ui/components/code_highlighter/code_highlighter.js +1 -0
  600. package/dist/third-party/front_end/ui/components/data_grid/data_grid.js +1 -0
  601. package/dist/third-party/front_end/ui/components/dialogs/dialogs.js +1 -0
  602. package/dist/third-party/front_end/ui/components/diff_view/diff_view.js +1 -0
  603. package/dist/third-party/front_end/ui/components/expandable_list/expandable_list.js +1 -0
  604. package/dist/third-party/front_end/ui/components/helpers/helpers.js +1 -0
  605. package/dist/third-party/front_end/ui/components/icon_button/icon_button.js +1 -0
  606. package/dist/third-party/front_end/ui/components/input/input.js +1 -0
  607. package/dist/third-party/front_end/ui/components/issue_counter/issue_counter.js +1 -0
  608. package/dist/third-party/front_end/ui/components/legacy_wrapper/legacy_wrapper.js +1 -0
  609. package/dist/third-party/front_end/ui/components/linear_memory_inspector/linear_memory_inspector-meta.js +1 -0
  610. package/dist/third-party/front_end/ui/components/linear_memory_inspector/linear_memory_inspector.js +1 -0
  611. package/dist/third-party/front_end/ui/components/linkifier/linkifier.js +1 -0
  612. package/dist/third-party/front_end/ui/components/markdown_view/markdown_view.js +1 -0
  613. package/dist/third-party/front_end/ui/components/menus/menus.js +1 -0
  614. package/dist/third-party/front_end/ui/components/node_text/node_text.js +1 -0
  615. package/dist/third-party/front_end/ui/components/panel_feedback/panel_feedback.js +1 -0
  616. package/dist/third-party/front_end/ui/components/panel_introduction_steps/panel_introduction_steps.js +1 -0
  617. package/dist/third-party/front_end/ui/components/render_coordinator/render_coordinator.js +1 -0
  618. package/dist/third-party/front_end/ui/components/report_view/report_view.js +1 -0
  619. package/dist/third-party/front_end/ui/components/request_link_icon/request_link_icon.js +1 -0
  620. package/dist/third-party/front_end/ui/components/settings/settings.js +1 -0
  621. package/dist/third-party/front_end/ui/components/srgb_overlay/srgb_overlay.js +1 -0
  622. package/dist/third-party/front_end/ui/components/survey_link/survey_link.js +1 -0
  623. package/dist/third-party/front_end/ui/components/text_editor/text_editor.js +1 -0
  624. package/dist/third-party/front_end/ui/components/text_prompt/text_prompt.js +1 -0
  625. package/dist/third-party/front_end/ui/components/tree_outline/tree_outline.js +1 -0
  626. package/dist/third-party/front_end/ui/components/two_states_counter/two_states_counter.js +1 -0
  627. package/dist/third-party/front_end/ui/legacy/components/color_picker/color_picker-legacy.js +1 -0
  628. package/dist/third-party/front_end/ui/legacy/components/color_picker/color_picker.js +1 -0
  629. package/dist/third-party/front_end/ui/legacy/components/cookie_table/cookie_table-legacy.js +1 -0
  630. package/dist/third-party/front_end/ui/legacy/components/cookie_table/cookie_table.js +1 -0
  631. package/dist/third-party/front_end/ui/legacy/components/data_grid/data_grid-legacy.js +1 -0
  632. package/dist/third-party/front_end/ui/legacy/components/data_grid/data_grid.js +1 -0
  633. package/dist/third-party/front_end/ui/legacy/components/inline_editor/inline_editor-legacy.js +1 -0
  634. package/dist/third-party/front_end/ui/legacy/components/inline_editor/inline_editor.js +1 -0
  635. package/dist/third-party/front_end/ui/legacy/components/object_ui/object_ui-legacy.js +1 -0
  636. package/dist/third-party/front_end/ui/legacy/components/object_ui/object_ui-meta.js +1 -0
  637. package/dist/third-party/front_end/ui/legacy/components/object_ui/object_ui.js +1 -0
  638. package/dist/third-party/front_end/ui/legacy/components/perf_ui/perf_ui-legacy.js +1 -0
  639. package/dist/third-party/front_end/ui/legacy/components/perf_ui/perf_ui-meta.js +1 -0
  640. package/dist/third-party/front_end/ui/legacy/components/perf_ui/perf_ui.js +12 -0
  641. package/dist/third-party/front_end/ui/legacy/components/quick_open/quick_open-legacy.js +1 -0
  642. package/dist/third-party/front_end/ui/legacy/components/quick_open/quick_open-meta.js +1 -0
  643. package/dist/third-party/front_end/ui/legacy/components/quick_open/quick_open.js +1 -0
  644. package/dist/third-party/front_end/ui/legacy/components/source_frame/source_frame-legacy.js +1 -0
  645. package/dist/third-party/front_end/ui/legacy/components/source_frame/source_frame-meta.js +1 -0
  646. package/dist/third-party/front_end/ui/legacy/components/source_frame/source_frame.js +1 -0
  647. package/dist/third-party/front_end/ui/legacy/components/utils/utils-legacy.js +1 -0
  648. package/dist/third-party/front_end/ui/legacy/components/utils/utils.js +1 -0
  649. package/dist/third-party/front_end/ui/legacy/legacy-legacy.js +1 -0
  650. package/dist/third-party/front_end/ui/legacy/legacy.js +1 -0
  651. package/dist/third-party/front_end/ui/legacy/theme_support/theme_support.js +1 -0
  652. package/dist/third-party/front_end/ui/legacy/utils/utils.js +1 -0
  653. package/dist/third-party/front_end/ui/lit-html/lit-html.js +1 -0
  654. package/dist/third-party/front_end/worker_app.html +20 -0
  655. package/index.js +15 -0
  656. package/package.json +25 -0
@@ -0,0 +1 @@
1
+ import*as e from"../../../core/common/common.js";import*as s from"../../../core/i18n/i18n.js";import*as i from"../../../models/issues_manager/issues_manager.js";import*as t from"../helpers/helpers.js";import*as o from"../../lit-html/lit-html.js";import*as n from"../icon_button/icon_button.js";import*as r from"../render_coordinator/render_coordinator.js";const a=new CSSStyleSheet;a.replaceSync(":host{white-space:normal;display:inline-block}\n/*# sourceURL=issueCounter.css */\n");const l={pageErrors:"{issueCount, plural, =1 {# page error} other {# page errors}}",breakingChanges:"{issueCount, plural, =1 {# breaking change} other {# breaking changes}}",possibleImprovements:"{issueCount, plural, =1 {# possible improvement} other {# possible improvements}}"},u=s.i18n.registerUIStrings("ui/components/issue_counter/IssueCounter.ts",l),c=s.i18n.getLocalizedString.bind(void 0,u);function h(e){switch(e){case i.Issue.IssueKind.PageError:return{iconName:"issue-cross-filled",color:"var(--icon-error)",width:"20px",height:"20px"};case i.Issue.IssueKind.BreakingChange:return{iconName:"issue-exclamation-filled",color:"var(--icon-warning)",width:"20px",height:"20px"};case i.Issue.IssueKind.Improvement:return{iconName:"issue-text-filled",color:"var(--icon-info)",width:"20px",height:"20px"}}}function d({iconName:e,color:s,width:i,height:t},o){return o?{iconName:e,iconColor:s,iconWidth:o,iconHeight:o}:{iconName:e,iconColor:s,iconWidth:i,iconHeight:t}}const m=new Intl.ListFormat(navigator.language,{type:"unit",style:"short"});class p extends HTMLElement{static litTagName=o.literal`issue-counter`;#e=this.attachShadow({mode:"open"});#s=void 0;#i=void 0;#t="";#o;#n=[0,0,0];#r="OmitEmpty";#a=void 0;#l=void 0;#u;#c=!1;scheduleUpdate(){this.#o?this.#o.schedule((async()=>this.#h())):this.#h()}connectedCallback(){this.#e.adoptedStyleSheets=[a]}set data(s){this.#s=s.clickHandler,this.#t=s.leadingText??"",this.#i=s.tooltipCallback,this.#r=s.displayMode??"OmitEmpty",this.#l=s.accessibleName,this.#u=s.throttlerTimeout,this.#c=Boolean(s.compact),this.#a!==s.issuesManager&&(this.#a?.removeEventListener("IssuesCountUpdated",this.scheduleUpdate,this),this.#a=s.issuesManager,this.#a.addEventListener("IssuesCountUpdated",this.scheduleUpdate,this)),0!==s.throttlerTimeout?this.#o=new e.Throttler.Throttler(s.throttlerTimeout??100):this.#o=void 0,this.scheduleUpdate()}get data(){return{clickHandler:this.#s,leadingText:this.#t,tooltipCallback:this.#i,displayMode:this.#r,accessibleName:this.#l,throttlerTimeout:this.#u,compact:this.#c,issuesManager:this.#a}}#h(){if(!this.#a)return;this.#n=[this.#a.numberOfIssues(i.Issue.IssueKind.PageError),this.#a.numberOfIssues(i.Issue.IssueKind.BreakingChange),this.#a.numberOfIssues(i.Issue.IssueKind.Improvement)];const e=[i.Issue.IssueKind.PageError,i.Issue.IssueKind.BreakingChange,i.Issue.IssueKind.Improvement][this.#n.findIndex((e=>e>0))??2],s=(s,i)=>{switch(this.#r){case"OmitEmpty":return i>0?`${i}`:void 0;case"ShowAlways":return`${i}`;case"OnlyMostImportant":return s===e?`${i}`:void 0}},t="2ex",n={groups:[{...d(h(i.Issue.IssueKind.PageError),t),text:s(i.Issue.IssueKind.PageError,this.#n[0])},{...d(h(i.Issue.IssueKind.BreakingChange),t),text:s(i.Issue.IssueKind.BreakingChange,this.#n[1])},{...d(h(i.Issue.IssueKind.Improvement),t),text:s(i.Issue.IssueKind.Improvement,this.#n[2])}],clickHandler:this.#s,leadingText:this.#t,accessibleName:this.#l,compact:this.#c};o.render(o.html` <icon-button .data="${n}" .accessibleName="${this.#l}"></icon-button> `,this.#e,{host:this}),this.#i?.()}}t.CustomElements.defineComponent("issue-counter",p);var I=Object.freeze({__proto__:null,getIssueKindIconData:h,getIssueCountsEnumeration:function(e,s=!0){const t=[e.numberOfIssues(i.Issue.IssueKind.PageError),e.numberOfIssues(i.Issue.IssueKind.BreakingChange),e.numberOfIssues(i.Issue.IssueKind.Improvement)],o=[c(l.pageErrors,{issueCount:t[0]}),c(l.breakingChanges,{issueCount:t[1]}),c(l.possibleImprovements,{issueCount:t[2]})];return m.format(o.filter(((e,i)=>!s||t[i]>0)))},IssueCounter:p});const g=new CSSStyleSheet;g.replaceSync(":host{display:inline-block;white-space:nowrap;color:inherit;font-size:inherit;font-family:inherit}devtools-icon{vertical-align:middle}.link{cursor:pointer}.link span{color:var(--color-link)}\n/*# sourceURL=issueLinkIcon.css */\n");const v={clickToShowIssue:"Click to show issue in the issues tab",clickToShowIssueWithTitle:"Click to open the issue tab and show issue: {title}",issueUnavailable:"Issue unavailable at this time"},k=s.i18n.registerUIStrings("ui/components/issue_counter/IssueLinkIcon.ts",v),C=s.i18n.getLocalizedString.bind(void 0,k),b=r.RenderCoordinator.RenderCoordinator.instance();class T extends HTMLElement{static litTagName=o.literal`devtools-issue-link-icon`;#e=this.attachShadow({mode:"open"});#d;#m=null;#p=Promise.resolve(void 0);#I;#g;#v;#k=e.Revealer.reveal;#C=Promise.resolve(void 0);set data(e){if(this.#d=e.issue,this.#I=e.issueId,!this.#d&&!this.#I)throw new Error("Either `issue` or `issueId` must be provided");this.#g=e.issueResolver,this.#v=e.additionalOnClickAction,e.revealOverride&&(this.#k=e.revealOverride),!this.#d&&this.#I?(this.#C=this.#b(this.#I),this.#p=this.#C.then((()=>this.#T()))):this.#p=this.#T(),this.#h()}async#T(){const e=this.#d?.getDescription();if(!e)return;const s=await i.MarkdownIssueDescription.getIssueTitleFromMarkdownDescription(e);s&&(this.#m=s)}connectedCallback(){this.#e.adoptedStyleSheets=[g]}#b(e){if(!this.#g)throw new Error("An `IssueResolver` must be provided if an `issueId` is provided.");return this.#g.waitFor(e).then((e=>{this.#d=e})).catch((()=>{this.#d=null}))}get data(){return{issue:this.#d,issueId:this.#I,issueResolver:this.#g,additionalOnClickAction:this.#v,revealOverride:this.#k!==e.Revealer.reveal?this.#k:void 0}}iconData(){return this.#d?{...h(this.#d.getKind()),width:"16px",height:"16px"}:{iconName:"issue-questionmark-filled",color:"var(--icon-default)",width:"16px",height:"16px"}}handleClick(e){0===e.button&&(this.#d&&this.#k(this.#d),this.#v?.())}#w(){return this.#m?C(v.clickToShowIssueWithTitle,{title:this.#m}):this.#d?C(v.clickToShowIssue):C(v.issueUnavailable)}#h(){return b.write((()=>{o.render(o.html` ${o.Directives.until(this.#p.then((()=>this.#f())),this.#C.then((()=>this.#f())),this.#f())} `,this.#e,{host:this})}))}#f(){return o.html` <span class="${o.Directives.classMap({link:Boolean(this.#d)})}" tabindex="0" @click="${this.handleClick}"> <${n.Icon.Icon.litTagName} .data="${this.iconData()}" title="${this.#w()}"></${n.Icon.Icon.litTagName}> </span>`}}t.CustomElements.defineComponent("devtools-issue-link-icon",T);var w=Object.freeze({__proto__:null,extractShortPath:e=>(/[^/]+$/.exec(e)||/[^/]+\/$/.exec(e)||[""])[0],IssueLinkIcon:T});export{I as IssueCounter,w as IssueLinkIcon};
@@ -0,0 +1 @@
1
+ class e extends HTMLElement{wrapper=null;async render(){}wasShown(){}willHide(){}}var n=Object.freeze({__proto__:null,WrappableComponent:e,legacyWrapper:function(e,n){return new class extends e{#e;constructor(...e){super(!0),this.#e=n,this.#e.wrapper=this,this.#e.render(),this.contentElement.appendChild(this.#e)}wasShown(){this.#e.wasShown(),this.#e.render()}willHide(){this.#e.willHide()}async doUpdate(){await this.#e.render()}getComponent(){return this.#e}}}});export{n as LegacyWrapper};
@@ -0,0 +1 @@
1
+ import*as e from"../../../core/i18n/i18n.js";import*as r from"../../legacy/legacy.js";const o={memoryInspector:"Memory Inspector",showMemoryInspector:"Show Memory Inspector"},n=e.i18n.registerUIStrings("ui/components/linear_memory_inspector/linear_memory_inspector-meta.ts",o),i=e.i18n.getLazilyComputedLocalizedString.bind(void 0,n);let t;r.ViewManager.registerViewExtension({location:"drawer-view",id:"linear-memory-inspector",title:i(o.memoryInspector),commandPrompt:i(o.showMemoryInspector),order:100,persistence:"closeable",loadView:async()=>(await async function(){return t||(t=await import("./linear_memory_inspector.js")),t}()).LinearMemoryInspectorPane.Wrapper.instance()});
@@ -0,0 +1 @@
1
+ import*as e from"../../../core/i18n/i18n.js";import*as t from"../../lit-html/lit-html.js";import*as i from"../helpers/helpers.js";import*as o from"../icon_button/icon_button.js";import*as r from"../../../core/common/common.js";import*as s from"../../../core/platform/platform.js";import*as n from"../input/input.js";import*as a from"../../../core/host/host.js";import*as c from"../../../core/sdk/sdk.js";import*as l from"../../legacy/legacy.js";import*as d from"../../../models/bindings/bindings.js";const h=new CSSStyleSheet;h.replaceSync(".highlight-chip-list{min-height:20px;display:flex;flex-wrap:wrap;justify-content:left;align-items:center;background-color:var(--color-background);margin:8px 0;gap:8px;row-gap:6px}.highlight-chip{background:var(--color-background);border:1px solid var(--color-button-secondary-border);height:18px;border-radius:4px;flex:0 0 auto;max-width:250px;position:relative;padding:0 6px}.highlight-chip:hover{background-color:var(--color-background-elevation-1)}.delete-highlight-container{display:none;height:100%;position:absolute;right:0;top:0;border-radius:4px;width:24px;align-items:center;justify-content:center}.delete-highlight-button{cursor:pointer;width:13px;height:13px;border:none;background-color:transparent;display:flex;align-items:center;justify-content:center}.delete-highlight-button:hover{background-color:var(--color-details-hairline);border-radius:50%}.jump-to-highlight-button{cursor:pointer;padding:0;border:none;background:none;height:100%;align-items:center;max-width:100%;overflow:hidden}.delete-highlight-button devtools-icon{width:13px;height:13px;display:flex;align-items:center;justify-content:center;border-radius:50%}.source-code{font-family:var(--source-code-font-family);font-size:var(--source-code-font-size);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-primary)}.value{color:var(--color-syntax-2)}.separator{white-space:pre;flex-shrink:0}.highlight-chip.focused{border-color:var(--color-primary-old);background-color:var(--color-button-secondary-background-hovering)}.highlight-chip:hover > .delete-highlight-container{display:flex;background:linear-gradient(90deg,transparent 0%,rgb(241 243 244) 25%)}.highlight-chip.focused:hover > .delete-highlight-container{background:linear-gradient(90deg,transparent 0%,rgb(231 241 253) 25%)}:host-context(.-theme-with-dark-background) .highlight-chip:hover > .delete-highlight-container{display:flex;background:linear-gradient(90deg,transparent 0%,rgb(41 42 45) 25%)}:host-context(.-theme-with-dark-background) .highlight-chip.focused:hover > .delete-highlight-container{background:linear-gradient(90deg,transparent 0%,rgb(48 55 68) 25%)}\n/*# sourceURL=linearMemoryHighlightChipList.css */\n");const m={jumpToAddress:"Jump to this memory",deleteHighlight:"Stop highlighting this memory"},g=e.i18n.registerUIStrings("ui/components/linear_memory_inspector/LinearMemoryHighlightChipList.ts",m),p=e.i18n.getLocalizedString.bind(void 0,g),{render:u,html:f}=t;class b extends Event{static eventName="deletememoryhighlight";data;constructor(e){super(b.eventName,{bubbles:!0,composed:!0}),this.data=e}}class v extends Event{static eventName="jumptohighlightedmemory";data;constructor(e){super(v.eventName),this.data=e}}class w extends HTMLElement{static litTagName=t.literal`devtools-linear-memory-highlight-chip-list`;#e=this.attachShadow({mode:"open"});#t=[];#i;connectedCallback(){this.#e.adoptedStyleSheets=[h]}set data(e){this.#t=e.highlightInfos,this.#i=e.focusedMemoryHighlight,this.#o()}#o(){const e=[];for(const t of this.#t)e.push(this.#r(t));const t=f` <div class="highlight-chip-list"> ${e} </div> `;u(t,this.#e,{host:this})}#r(e){const i=e.name||"<anonymous>",r=e.type,s={focused:e===this.#i,"highlight-chip":!0};return f` <div class="${t.Directives.classMap(s)}"> <button class="jump-to-highlight-button" title="${p(m.jumpToAddress)}" @click="${()=>this.#s(e.startAddress)}"> <span class="source-code"> <span class="value">${i}</span><span class="separator">: </span><span>${r}</span> </span> </button> <div class="delete-highlight-container"> <button class="delete-highlight-button" title="${p(m.deleteHighlight)}" @click="${()=>this.#n(e)}"> <${o.Icon.Icon.litTagName} .data="${{iconName:"cross",color:"var(--icon-default-hover)",width:"16px"}}"> </${o.Icon.Icon.litTagName}> </button> </div> </div> `}#s(e){this.dispatchEvent(new v(e))}#n(e){this.dispatchEvent(new b(e))}}i.CustomElements.defineComponent("devtools-linear-memory-highlight-chip-list",w);var k=Object.freeze({__proto__:null,DeleteMemoryHighlightEvent:b,JumpToHighlightedMemoryEvent:v,LinearMemoryHighlightChipList:w});const y=new CSSStyleSheet;y.replaceSync(":host{flex:auto;display:flex}.view{width:100%;display:flex;flex:1;flex-direction:column;font-family:var(--monospace-font-family);font-size:var(--monospace-font-size);padding:9px 12px 9px 7px}devtools-linear-memory-inspector-viewer{justify-content:center}devtools-linear-memory-inspector-navigator + devtools-linear-memory-inspector-viewer{margin-top:12px}.value-interpreter{display:flex}\n/*# sourceURL=linearMemoryInspector.css */\n");const x=new CSSStyleSheet;x.replaceSync(".navigator{min-height:24px;display:flex;flex-wrap:nowrap;justify-content:space-between;overflow:hidden;align-items:center;background-color:var(--color-background);color:var(--color-text-primary)}.navigator-item{display:flex;white-space:nowrap;overflow:hidden}.address-input{text-align:center;outline:none;color:var(--color-text-primary);border:1px solid var(--color-background-elevation-2);background:transparent}.address-input.invalid{color:var(--color-accent-red)}.navigator-button{display:flex;width:20px;height:20px;background:transparent;overflow:hidden;border:none;padding:0;outline:none;justify-content:center;align-items:center;cursor:pointer}.navigator-button:disabled devtools-icon{opacity:50%}.navigator-button:enabled:hover devtools-icon{--icon-color:var(--icon-default-hover)}.navigator-button:enabled:focus devtools-icon{--icon-color:var(--icon-default-hover)}\n/*# sourceURL=linearMemoryNavigator.css */\n");const I={enterAddress:"Enter address",goBackInAddressHistory:"Go back in address history",goForwardInAddressHistory:"Go forward in address history",previousPage:"Previous page",nextPage:"Next page",refresh:"Refresh"},M=e.i18n.registerUIStrings("ui/components/linear_memory_inspector/LinearMemoryNavigator.ts",I),T=e.i18n.getLocalizedString.bind(void 0,M),{render:S,html:E}=t;class $ extends Event{static eventName="addressinputchanged";data;constructor(e,t){super($.eventName),this.data={address:e,mode:t}}}class A extends Event{static eventName="pagenavigation";data;constructor(e){super(A.eventName,{}),this.data=e}}class N extends Event{static eventName="historynavigation";data;constructor(e){super(N.eventName,{}),this.data=e}}class R extends Event{static eventName="refreshrequested";constructor(){super(R.eventName,{})}}class L extends HTMLElement{static litTagName=t.literal`devtools-linear-memory-inspector-navigator`;#e=this.attachShadow({mode:"open"});#a="0";#c=void 0;#l=!0;#d=!1;#h=!1;connectedCallback(){this.#e.adoptedStyleSheets=[x]}set data(e){this.#a=e.address,this.#c=e.error,this.#l=e.valid,this.#d=e.canGoBackInHistory,this.#h=e.canGoForwardInHistory,this.#o();const t=this.#e.querySelector(".address-input");t&&("Submitted"===e.mode?t.blur():"InvalidSubmit"===e.mode&&t.select())}#o(){const e=E` <div class="navigator"> <div class="navigator-item"> ${this.#m({icon:"undo",title:T(I.goBackInAddressHistory),event:new N("Backward"),enabled:this.#d})} ${this.#m({icon:"redo",title:T(I.goForwardInAddressHistory),event:new N("Forward"),enabled:this.#h})} </div> <div class="navigator-item"> ${this.#m({icon:"chevron-left",title:T(I.previousPage),event:new A("Backward"),enabled:!0})} ${this.#g()} ${this.#m({icon:"chevron-right",title:T(I.nextPage),event:new A("Forward"),enabled:!0})} </div> ${this.#m({icon:"refresh",title:T(I.refresh),event:new R,enabled:!0})} </div> `;S(e,this.#e,{host:this})}#g(){const e={"address-input":!0,invalid:!this.#l};return E` <input class="${t.Directives.classMap(e)}" data-input="true" .value="${this.#a}" title="${this.#l?T(I.enterAddress):this.#c}" @change="${this.#p.bind(this,"Submitted")}" @input="${this.#p.bind(this,"Edit")}/">`}#p(e,t){const i=t.target;this.dispatchEvent(new $(i.value,e))}#m(e){return E` <button class="navigator-button" ?disabled="${!e.enabled}" data-button="${e.event.type}" title="${e.title}" @click="${this.dispatchEvent.bind(this,e.event)}"> <${o.Icon.Icon.litTagName} .data="${{iconName:e.icon,color:"var(--icon-default)",width:"20px",height:"20px"}}"> </${o.Icon.Icon.litTagName}> </button>`}}i.CustomElements.defineComponent("devtools-linear-memory-inspector-navigator",L);var O=Object.freeze({__proto__:null,AddressInputChangedEvent:$,PageNavigationEvent:A,HistoryNavigationEvent:N,RefreshRequestedEvent:R,LinearMemoryNavigator:L});const C=new CSSStyleSheet;C.replaceSync(":host{flex:auto;display:flex}.value-interpreter{--override-text-highlight-color:#80868b;border:var(--legacy-divider-border);background-color:var(--color-background-elevation-1);overflow:hidden;width:400px}.settings-toolbar{min-height:26px;display:flex;flex-wrap:nowrap;justify-content:space-between;padding-left:12px;padding-right:12px;align-items:center}.settings-toolbar-button{padding:0;width:20px;height:20px;border:none;outline:none;background-color:transparent;cursor:pointer}.settings-toolbar-button.active devtools-icon{--icon-color:var(--icon-toggled)}.divider{display:block;height:1px;margin-bottom:12px;background-color:var(--color-details-hairline,#d0d0d0)}\n/*# sourceURL=linearMemoryValueInterpreter.css */\n");const H=new CSSStyleSheet;H.replaceSync('*{box-sizing:border-box;min-width:0;min-height:0}:root{height:100%;overflow:hidden;--legacy-accent-color:#1a73e8;--legacy-accent-fg-color:#1a73e8;--legacy-accent-color-hover:#3b86e8;--legacy-accent-fg-color-hover:#1567d3;--legacy-active-control-bg-color:#5a5a5a;--legacy-focus-bg-color:hsl(214deg 40% 92%);--legacy-focus-ring-inactive-shadow-color:#e0e0e0;--legacy-input-validation-error:#db1600;--legacy-toolbar-hover-bg-color:#eaeaea;--legacy-selection-fg-color:#fff;--legacy-selection-bg-color:var(--legacy-accent-color);--legacy-selection-inactive-fg-color:#5a5a5a;--legacy-selection-inactive-bg-color:#dadada;--legacy-tab-selected-fg-color:#333;--legacy-divider-border:1px solid var(--color-details-hairline);--legacy-focus-ring-inactive-shadow:0 0 0 1px var(--legacy-focus-ring-inactive-shadow-color);--legacy-focus-ring-active-shadow:0 0 0 1px var(--legacy-accent-color);--legacy-item-selection-bg-color:#cfe8fc;--legacy-item-selection-inactive-bg-color:#e0e0e0;--item-hover-color:rgb(56 121 217/10%);--monospace-font-size:10px;--monospace-font-family:monospace;--source-code-font-size:11px;--source-code-font-family:monospace;--override-force-white-icons-background:#fafafa}.-theme-with-dark-background{color-scheme:dark;--legacy-accent-color:#0e639c;--legacy-accent-fg-color:#ccc;--legacy-accent-fg-color-hover:#fff;--legacy-accent-color-hover:rgb(17 119 187);--legacy-active-control-bg-color:#cdcdcd;--legacy-focus-bg-color:hsl(214deg 19% 27%);--legacy-focus-ring-inactive-shadow-color:#5a5a5a;--legacy-toolbar-hover-bg-color:#202020;--legacy-selection-fg-color:#cdcdcd;--legacy-selection-inactive-fg-color:#cdcdcd;--legacy-selection-inactive-bg-color:hsl(0deg 0% 28%);--legacy-tab-selected-fg-color:#eaeaea;--legacy-focus-ring-inactive-shadow:0 0 0 1px var(--legacy-focus-ring-inactive-shadow-color);--legacy-item-selection-bg-color:hsl(207deg 88% 22%);--legacy-item-selection-inactive-bg-color:#454545}body{height:100%;width:100%;position:relative;overflow:hidden;margin:0;cursor:default;font-family:".SFNSDisplay-Regular","Helvetica Neue","Lucida Grande",sans-serif;font-size:12px;tab-size:4;user-select:none;color:var(--color-text-primary);background:var(--color-background)}.platform-linux{font-family:Roboto,Ubuntu,Arial,sans-serif}.platform-mac{font-family:".SFNSDisplay-Regular","Helvetica Neue","Lucida Grande",sans-serif}.platform-mac,\n.platform-linux{--override-text-color:rgb(48 57 66);color:var(--override-text-color)}.platform-windows{font-family:"Segoe UI",Tahoma,sans-serif}:focus{outline-width:0}.platform-mac,\n:host-context(.platform-mac){--monospace-font-size:11px;--monospace-font-family:menlo,monospace;--source-code-font-size:11px;--source-code-font-family:menlo,monospace}.platform-windows,\n:host-context(.platform-windows){--monospace-font-size:12px;--monospace-font-family:consolas,lucida console,courier new,monospace;--source-code-font-size:12px;--source-code-font-family:consolas,lucida console,courier new,monospace}.platform-linux,\n:host-context(.platform-linux){--monospace-font-size:11px;--monospace-font-family:dejavu sans mono,monospace;--source-code-font-size:11px;--source-code-font-family:dejavu sans mono,monospace}.-theme-with-dark-background .platform-linux,\n.-theme-with-dark-background .platform-mac,\n:host-context(.-theme-with-dark-background) .platform-linux,\n:host-context(.-theme-with-dark-background) .platform-mac{--override-text-color:rgb(189 198 207)}.monospace{font-family:var(--monospace-font-family);font-size:var(--monospace-font-size)!important}.source-code{font-family:var(--source-code-font-family);font-size:var(--source-code-font-size)!important;white-space:pre-wrap}img{-webkit-user-drag:none}iframe,\na img{border:none}.fill{position:absolute;top:0;left:0;right:0;bottom: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 > .toolbar{border-bottom:1px solid var(--color-details-hairline)}.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(--color-background)}iframe.widget{position:absolute;width:100%;height:100%;left:0;right:0;top:0;bottom:0}.hidden{display:none!important}.highlighted-search-result{--override-highlighted-search-result-background-color:rgb(255 255 0/80%);border-radius:1px;background-color:var(--override-highlighted-search-result-background-color);outline:1px solid var(--override-highlighted-search-result-background-color)}.-theme-with-dark-background .highlighted-search-result,\n:host-context(.-theme-with-dark-background) .highlighted-search-result{--override-highlighted-search-result-background-color:hsl(133deg 100% 30%);color:#333}.link{cursor:pointer;text-decoration:underline;color:var(--color-link);outline-offset:2px}button,\ninput,\nselect{font-family:inherit;font-size:inherit}select option,\nselect optgroup,\ninput{background-color:var(--color-background)}input{color:inherit}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%)}:host-context(.-theme-with-dark-background) input[type="checkbox"]:not(.-theme-preserve){accent-color:var(--color-checkbox-accent-color)}.harmony-input:not([type]),\n.harmony-input[type="number"],\n.harmony-input[type="text"]{padding:3px 6px;height:24px;border:none;box-shadow:var(--legacy-focus-ring-inactive-shadow)}.harmony-input:not([type]).error-input,\n.harmony-input[type="number"].error-input,\n.harmony-input[type="text"].error-input,\n.harmony-input:not([type]):invalid,\n.harmony-input[type="number"]:invalid,\n.harmony-input[type="text"]:invalid{box-shadow:0 0 0 1px var(--color-red)}.harmony-input:not([type]):not(.error-input):not(:invalid):hover,\n.harmony-input[type="number"]:not(.error-input):not(:invalid):hover,\n.harmony-input[type="text"]:not(.error-input):not(:invalid):hover{box-shadow:var(--legacy-focus-ring-inactive-shadow)}.harmony-input:not([type]):not(.error-input):not(:invalid):focus,\n.harmony-input[type="number"]:not(.error-input):not(:invalid):focus,\n.harmony-input[type="text"]:not(.error-input):not(:invalid):focus{box-shadow:var(--legacy-focus-ring-active-shadow)}.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(--color-background);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(--color-text-primary)!important;text-decoration:none!important}.chrome-select{--override-chrome-select-border-color:rgb(0 0 0/20%);appearance:none;user-select:none;border:1px solid var(--override-chrome-select-border-color);border-radius:2px;color:var(--color-text-primary);font:inherit;margin:0;outline:none;padding-right:20px;padding-left:6px;background-image:var(--image-file-arrow-drop-down-light);background-color:var(--color-background-elevation-0);background-position:right center;background-repeat:no-repeat;min-height:24px;min-width:80px}.chrome-select:disabled{opacity:38%}.-theme-with-dark-background .chrome-select,\n:host-context(.-theme-with-dark-background) .chrome-select{--override-chrome-select-border-color:rgb(230 230 230/20%);background-image:var(--image-file-arrow-drop-down-dark)}.chrome-select:enabled:active,\n.chrome-select:enabled:focus,\n.chrome-select:enabled:hover{--override-select-box-shadow:0 0 0 2px var(--color-button-outline-focus);background-color:var(--color-background-elevation-1);box-shadow:var(--override-select-box-shadow)}.chrome-select:enabled:active{background-color:var(--color-background-elevation-2)}.chrome-select:enabled:focus{border-color:transparent}@media (forced-colors: active) and (prefers-color-scheme: light){.chrome-select{background-image:var(--image-file-arrow-drop-down-light)}.-theme-with-dark-background .chrome-select,\n :host-context(.-theme-with-dark-background) .chrome-select{background-image:var(--image-file-arrow-drop-down-light)}}@media (forced-colors: active) and (prefers-color-scheme: dark){.chrome-select{background-image:var(--image-file-arrow-drop-down-dark)}.-theme-with-dark-background .chrome-select,\n :host-context(.-theme-with-dark-background) .chrome-select{background-image:var(--image-file-arrow-drop-down-dark)}}.-theme-with-dark-background .chrome-select:enabled:active,\n.-theme-with-dark-background .chrome-select:enabled:focus,\n.-theme-with-dark-background .chrome-select:enabled:hover,\n:host-context(.-theme-with-dark-background) .chrome-select:enabled:active,\n:host-context(.-theme-with-dark-background) .chrome-select:enabled:focus,\n:host-context(.-theme-with-dark-background) .chrome-select:enabled:hover{--override-select-box-shadow:0 0 0 2px var(--color-button-outline-focus)}.chrome-select-label{margin:0 22px;flex:none}.chrome-select-label p p{margin-top:0;color:var(--color-text-secondary)}.settings-select{margin:0}.chrome-select optgroup,\n.chrome-select option{background-color:var(--color-background-elevation-1);color:var(--color-text-primary)}.gray-info-message{text-align:center;font-style:italic;padding:6px;color:var(--color-text-secondary);white-space:nowrap}span[is="dt-icon-label"]{flex:none}.full-widget-dimmed-banner a{color:inherit}.full-widget-dimmed-banner{color:var(--color-text-secondary);background-color:var(--color-background);display:flex;justify-content:center;align-items:center;text-align:center;padding:20px;position:absolute;top:0;right:0;bottom:0;left:0;font-size:13px;overflow:auto;z-index:500}[is="ui-icon"]{display:inline-block;flex-shrink:0}.-theme-with-dark-background [is="ui-icon"].icon-invert,\n:host-context(.-theme-with-dark-background) [is="ui-icon"].icon-invert{filter:invert(80%) hue-rotate(180deg)}[is="ui-icon"].icon-mask{background-color:var(--icon-default);-webkit-mask-position:var(--spritesheet-position)}.-theme-with-dark-background [is="ui-icon"].icon-mask,\n:host-context(.-theme-with-dark-background) [is="ui-icon"].icon-mask{--override-icon-mask-background-color:rgb(145 145 145)}[is="ui-icon"]:not(.icon-mask){background-position:var(--spritesheet-position)}.spritesheet-smallicons:not(.icon-mask){background-image:var(--image-file-smallIcons)}.spritesheet-smallicons.icon-mask{-webkit-mask-image:var(--image-file-smallIcons)}.spritesheet-largeicons:not(.icon-mask){background-image:var(--image-file-largeIcons)}.spritesheet-largeicons.icon-mask{-webkit-mask-image:var(--image-file-largeIcons)}.spritesheet-mediumicons:not(.icon-mask){background-image:var(--image-file-mediumIcons)}.spritesheet-mediumicons.icon-mask{-webkit-mask-image:var(--image-file-mediumIcons)}.spritesheet-arrowicons{background-image:var(--image-file-popoverArrows)}.spritesheet-3d-center.icon-mask{-webkit-mask-image:var(--image-file-3d-center)}.spritesheet-3d-pan.icon-mask{-webkit-mask-image:var(--image-file-3d-pan)}.spritesheet-3d-rotate.icon-mask{-webkit-mask-image:var(--image-file-3d-rotate)}.spritesheet-arrow-up-down-circle.icon-mask{-webkit-mask-image:var(--image-file-arrow-up-down-circle)}.spritesheet-arrow-up-down.icon-mask{-webkit-mask-image:var(--image-file-arrow-up-down)}.spritesheet-bell.icon-mask{-webkit-mask-image:var(--image-file-bell)}.spritesheet-bezier-curve-filled.icon-mask{-webkit-mask-image:var(--image-file-bezier-curve-filled)}.spritesheet-bin.icon-mask{-webkit-mask-image:var(--image-file-bin)}.spritesheet-bottom-panel-close.icon-mask{-webkit-mask-image:var(--image-file-bottom-panel-close)}.spritesheet-bottom-panel-open.icon-mask{-webkit-mask-image:var(--image-file-bottom-panel-open)}.spritesheet-brackets.icon-mask{-webkit-mask-image:var(--image-file-brackets)}.spritesheet-breakpoint-crossed-filled.icon-mask{-webkit-mask-image:var(--image-file-breakpoint-crossed-filled)}.spritesheet-breakpoint-crossed.icon-mask{-webkit-mask-image:var(--image-file-breakpoint-crossed)}.spritesheet-brush-filled.icon-mask{-webkit-mask-image:var(--image-file-brush-filled)}.spritesheet-brush.icon-mask{-webkit-mask-image:var(--image-file-brush)}.spritesheet-bug.icon-mask{-webkit-mask-image:var(--image-file-bug)}.spritesheet-check-double.icon-mask{-webkit-mask-image:var(--image-file-check-double)}.spritesheet-checkmark.icon-mask{-webkit-mask-image:var(--image-file-checkmark)}.spritesheet-chevron-double-right.icon-mask{-webkit-mask-image:var(--image-file-chevron-double-right)}.spritesheet-chevron-down.icon-mask{-webkit-mask-image:var(--image-file-chevron-down)}.spritesheet-chevron-up.icon-mask{-webkit-mask-image:var(--image-file-chevron-up)}.spritesheet-clear-list.icon-mask{-webkit-mask-image:var(--image-file-clear-list)}.spritesheet-clear.icon-mask{-webkit-mask-image:var(--image-file-clear)}.spritesheet-cloud.icon-mask{-webkit-mask-image:var(--image-file-cloud)}.spritesheet-code-circle.icon-mask{-webkit-mask-image:var(--image-file-code-circle)}.spritesheet-color-picker-filled.icon-mask{-webkit-mask-image:var(--image-file-color-picker-filled)}.spritesheet-color-picker.icon-mask{-webkit-mask-image:var(--image-file-color-picker)}.spritesheet-cookie.icon-mask{-webkit-mask-image:var(--image-file-cookie)}.spritesheet-copy.icon-mask{-webkit-mask-image:var(--image-file-copy)}.spritesheet-credit-card.icon-mask{-webkit-mask-image:var(--image-file-credit-card)}.spritesheet-cross-circle.icon-mask{-webkit-mask-image:var(--image-file-cross-circle)}.spritesheet-cross.icon-mask{-webkit-mask-image:var(--image-file-cross)}.spritesheet-custom-typography.icon-mask{-webkit-mask-image:var(--image-file-custom-typography)}.spritesheet-database.icon-mask{-webkit-mask-image:var(--image-file-database)}.spritesheet-device-fold.icon-mask{-webkit-mask-image:var(--image-file-device-fold)}.spritesheet-devices.icon-mask{-webkit-mask-image:var(--image-file-devices)}.spritesheet-dock-bottom.icon-mask{-webkit-mask-image:var(--image-file-dock-bottom)}.spritesheet-dock-left.icon-mask{-webkit-mask-image:var(--image-file-dock-left)}.spritesheet-dock-right.icon-mask{-webkit-mask-image:var(--image-file-dock-right)}.spritesheet-dock-window.icon-mask{-webkit-mask-image:var(--image-file-dock-window)}.spritesheet-document.icon-mask{-webkit-mask-image:var(--image-file-document)}.spritesheet-dots-vertical.icon-mask{-webkit-mask-image:var(--image-file-dots-vertical)}.spritesheet-download.icon-mask{-webkit-mask-image:var(--image-file-download)}.spritesheet-edit.icon-mask{-webkit-mask-image:var(--image-file-edit)}.spritesheet-experiment-check.icon-mask{-webkit-mask-image:var(--image-file-experiment-check)}.spritesheet-eye.icon-mask{-webkit-mask-image:var(--image-file-eye)}.spritesheet-filter-clear.icon-mask{-webkit-mask-image:var(--image-file-filter-clear)}.spritesheet-filter-filled.icon-mask{-webkit-mask-image:var(--image-file-filter-filled)}.spritesheet-filter.icon-mask{-webkit-mask-image:var(--image-file-filter)}.spritesheet-frame-crossed.icon-mask{-webkit-mask-image:var(--image-file-frame-crossed)}.spritesheet-frame.icon-mask{-webkit-mask-image:var(--image-file-frame)}.spritesheet-gear-filled.icon-mask{-webkit-mask-image:var(--image-file-gear-filled)}.spritesheet-gear.icon-mask{-webkit-mask-image:var(--image-file-gear)}.spritesheet-gears.icon-mask{-webkit-mask-image:var(--image-file-gears)}.spritesheet-heap-snapshot.icon-mask{-webkit-mask-image:var(--image-file-heap-snapshot)}.spritesheet-heap-snapshots.icon-mask{-webkit-mask-image:var(--image-file-heap-snapshots)}.spritesheet-iframe-crossed.icon-mask{-webkit-mask-image:var(--image-file-iframe-crossed)}.spritesheet-iframe.icon-mask{-webkit-mask-image:var(--image-file-iframe)}.spritesheet-import.icon-mask{-webkit-mask-image:var(--image-file-import)}.spritesheet-info.icon-mask{-webkit-mask-image:var(--image-file-info)}.spritesheet-keyboard-pen.icon-mask{-webkit-mask-image:var(--image-file-keyboard-pen)}.spritesheet-layers-filled.icon-mask{-webkit-mask-image:var(--image-file-layers-filled)}.spritesheet-layers.icon-mask{-webkit-mask-image:var(--image-file-layers)}.spritesheet-left-panel-close.icon-mask{-webkit-mask-image:var(--image-file-left-panel-close)}.spritesheet-left-panel-open.icon-mask{-webkit-mask-image:var(--image-file-left-panel-open)}.spritesheet-list.icon-mask{-webkit-mask-image:var(--image-file-list)}.spritesheet-pause.icon-mask{-webkit-mask-image:var(--image-file-pause)}.spritesheet-play.icon-mask{-webkit-mask-image:var(--image-file-play)}.spritesheet-plus.icon-mask{-webkit-mask-image:var(--image-file-plus)}.spritesheet-popup.icon-mask{-webkit-mask-image:var(--image-file-popup)}.spritesheet-profile.icon-mask{-webkit-mask-image:var(--image-file-profile)}.spritesheet-record-start.icon-mask{-webkit-mask-image:var(--image-file-record-start)}.spritesheet-record-stop.icon-mask{-webkit-mask-image:var(--image-file-record-stop)}.spritesheet-refresh.icon-mask{-webkit-mask-image:var(--image-file-refresh)}.spritesheet-replace.icon-mask{-webkit-mask-image:var(--image-file-replace)}.spritesheet-resume.icon-mask{-webkit-mask-image:var(--image-file-resume)}.spritesheet-right-panel-close.icon-mask{-webkit-mask-image:var(--image-file-right-panel-close)}.spritesheet-right-panel-open.icon-mask{-webkit-mask-image:var(--image-file-right-panel-open)}.spritesheet-screen-rotation.icon-mask{-webkit-mask-image:var(--image-file-screen-rotation)}.spritesheet-search.icon-mask{-webkit-mask-image:var(--image-file-search)}.spritesheet-select-element.icon-mask{-webkit-mask-image:var(--image-file-select-element)}.spritesheet-shadow.icon-mask{-webkit-mask-image:var(--image-file-shadow)}.spritesheet-step-into.icon-mask{-webkit-mask-image:var(--image-file-step-into)}.spritesheet-step-out.icon-mask{-webkit-mask-image:var(--image-file-step-out)}.spritesheet-step-over.icon-mask{-webkit-mask-image:var(--image-file-step-over)}.spritesheet-step.icon-mask{-webkit-mask-image:var(--image-file-step)}.spritesheet-stop.icon-mask{-webkit-mask-image:var(--image-file-stop)}.spritesheet-sync.icon-mask{-webkit-mask-image:var(--image-file-sync)}.spritesheet-table.icon-mask{-webkit-mask-image:var(--image-file-table)}.spritesheet-top-panel-close.icon-mask{-webkit-mask-image:var(--image-file-top-panel-close)}.spritesheet-top-panel-open.icon-mask{-webkit-mask-image:var(--image-file-top-panel-open)}.spritesheet-replay.icon-mask{-webkit-mask-image:var(--image-file-replay)}.spritesheet-triangle-bottom-right.icon-mask{-webkit-mask-image:var(--image-file-triangle-bottom-right)}.spritesheet-triangle-down.icon-mask{-webkit-mask-image:var(--image-file-triangle-down)}.spritesheet-triangle-left.icon-mask{-webkit-mask-image:var(--image-file-triangle-left)}.spritesheet-triangle-right.icon-mask{-webkit-mask-image:var(--image-file-triangle-right)}.spritesheet-triangle-up.icon-mask{-webkit-mask-image:var(--image-file-triangle-up)}.spritesheet-undo.icon-mask{-webkit-mask-image:var(--image-file-undo)}.spritesheet-warning.icon-mask{-webkit-mask-image:var(--image-file-warning)}.spritesheet-watch.icon-mask{-webkit-mask-image:var(--image-file-watch)}.force-white-icons [is="ui-icon"].spritesheet-smallicons,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-smallicons,\n[is="ui-icon"].force-white-icons.spritesheet-smallicons,\n.-theme-preserve{-webkit-mask-image:var(--image-file-smallIcons);-webkit-mask-position:var(--spritesheet-position);background:var(--override-force-white-icons-background)!important}.force-white-icons [is="ui-icon"].spritesheet-largeicons,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-largeicons,\n[is="ui-icon"].force-white-icons.spritesheet-largeicons,\n.-theme-preserve{-webkit-mask-image:var(--image-file-largeIcons);-webkit-mask-position:var(--spritesheet-position);background:var(--override-force-white-icons-background)!important}.force-white-icons [is="ui-icon"].spritesheet-mediumicons,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-mediumicons,\n[is="ui-icon"].force-white-icons.spritesheet-mediumicons,\n.-theme-preserve{-webkit-mask-image:var(--image-file-mediumIcons);-webkit-mask-position:var(--spritesheet-position);background:var(--override-force-white-icons-background)!important}.force-white-icons [is="ui-icon"].spritesheet-arrow-up-down,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-arrow-up-down,\n[is="ui-icon"].force-white-icons.spritesheet-arrow-up-down,\n.-theme-preserve{-webkit-mask-image:var(--image-file-arrow-up-down);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-bell,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-bell,\n[is="ui-icon"].force-white-icons.spritesheet-bell,\n.-theme-preserve{-webkit-mask-image:var(--image-file-bell);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-bug,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-bug,\n[is="ui-icon"].force-white-icons.spritesheet-bug,\n.-theme-preserve{-webkit-mask-image:var(--image-file-bug);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-cloud,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-cloud,\n[is="ui-icon"].force-white-icons.spritesheet-cloud,\n.-theme-preserve{-webkit-mask-image:var(--image-file-cloud);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-cookie,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-cookie,\n[is="ui-icon"].force-white-icons.spritesheet-cookie,\n.-theme-preserve{-webkit-mask-image:var(--image-file-cookie);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-credit-card,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-credit-card,\n[is="ui-icon"].force-white-icons.spritesheet-credit-card,\n.-theme-preserve{-webkit-mask-image:var(--image-file-credit-card);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-cross-circle,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-cross-circle,\n[is="ui-icon"].force-white-icons.spritesheet-cross-circle,\n.-theme-preserve{-webkit-mask-image:var(--image-file-cross-circle);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-database,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-database,\n[is="ui-icon"].force-white-icons.spritesheet-database,\n.-theme-preserve{-webkit-mask-image:var(--image-file-database);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-dock-bottom,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-dock-bottom,\n[is="ui-icon"].force-white-icons.spritesheet-dock-bottom,\n.-theme-preserve{-webkit-mask-image:var(--image-file-dock-bottom);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-dock-left,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-dock-left,\n[is="ui-icon"].force-white-icons.spritesheet-dock-left,\n.-theme-preserve{-webkit-mask-image:var(--image-file-dock-left);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-dock-right,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-dock-right,\n[is="ui-icon"].force-white-icons.spritesheet-dock-right,\n.-theme-preserve{-webkit-mask-image:var(--image-file-dock-right);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-dock-window,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-dock-window,\n[is="ui-icon"].force-white-icons.spritesheet-dock-window,\n.-theme-preserve{-webkit-mask-image:var(--image-file-dock-window);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-document,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-document,\n[is="ui-icon"].force-white-icons.spritesheet-document,\n.-theme-preserve{-webkit-mask-image:var(--image-file-document);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-frame-crossed,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-frame-crossed,\n[is="ui-icon"].force-white-icons.spritesheet-frame-crossed,\n.-theme-preserve{-webkit-mask-image:var(--image-file-frame-crossed);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-frame,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-frame,\n[is="ui-icon"].force-white-icons.spritesheet-frame,\n.-theme-preserve{-webkit-mask-image:var(--image-file-frame);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-gears,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-gears,\n[is="ui-icon"].force-white-icons.spritesheet-gears,\n.-theme-preserve{-webkit-mask-image:var(--image-file-gears);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-heap-snapshot,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-heap-snapshot,\n[is="ui-icon"].force-white-icons.spritesheet-heap-snapshot,\n.-theme-preserve{-webkit-mask-image:var(--image-file-heap-snapshot);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-heap-snapshots,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-heap-snapshots,\n[is="ui-icon"].force-white-icons.spritesheet-heap-snapshots,\n.-theme-preserve{-webkit-mask-image:var(--image-file-heap-snapshots);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-iframe-crossed,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-iframe-crossed,\n[is="ui-icon"].force-white-icons.spritesheet-iframe-crossed,\n.-theme-preserve{-webkit-mask-image:var(--image-file-iframe-crossed);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-iframe,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-iframe,\n[is="ui-icon"].force-white-icons.spritesheet-iframe,\n.-theme-preserve{-webkit-mask-image:var(--image-file-iframe);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-info,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-info,\n[is="ui-icon"].force-white-icons.spritesheet-info,\n.-theme-preserve{-webkit-mask-image:var(--image-file-info);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-list,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-list,\n[is="ui-icon"].force-white-icons.spritesheet-list,\n.-theme-preserve{-webkit-mask-image:var(--image-file-list);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-popup,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-popup,\n[is="ui-icon"].force-white-icons.spritesheet-popup,\n.-theme-preserve{-webkit-mask-image:var(--image-file-popup);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-profile,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-profile,\n[is="ui-icon"].force-white-icons.spritesheet-profile,\n.-theme-preserve{-webkit-mask-image:var(--image-file-profile);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-sync,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-sync,\n[is="ui-icon"].force-white-icons.spritesheet-sync,\n.-theme-preserve{-webkit-mask-image:var(--image-file-sync);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-table,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-table,\n[is="ui-icon"].force-white-icons.spritesheet-table,\n.-theme-preserve{-webkit-mask-image:var(--image-file-table);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-triangle-right,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-triangle-right,\n[is="ui-icon"].force-white-icons.spritesheet-triangle-right,\n.-theme-preserve{-webkit-mask-image:var(--image-file-triangle-right);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-warning,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-warning,\n[is="ui-icon"].force-white-icons.spritesheet-warning,\n.-theme-preserve{-webkit-mask-image:var(--image-file-warning);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.force-white-icons [is="ui-icon"].spritesheet-watch,\n:host-context(.force-white-icons) [is="ui-icon"].spritesheet-watch,\n[is="ui-icon"].force-white-icons.spritesheet-watch,\n.-theme-preserve{-webkit-mask-image:var(--image-file-watch);-webkit-mask-position:var(--spritesheet-position);background:var(--icon-force-white)!important}.dot::before{content:url("Images/empty.svg");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(--color-tertiary-bright)}.purple::before{background-color:var(--color-purple-bright)}.expandable-inline-button{background-color:var(--color-background-elevation-2);color:var(--color-text-primary);cursor:pointer;border-radius:3px}.undisplayable-text,\n.expandable-inline-button{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(--color-text-disabled);font-style:italic}.expandable-inline-button:hover,\n.expandable-inline-button:focus-visible{background-color:var(--color-background-elevation-1)}.expandable-inline-button:focus-visible{background-color:var(--color-background-elevation-1)}::selection{--override-selection-background-color:rgb(141 199 248/60%);background-color:var(--override-selection-background-color)}.-theme-with-dark-background *::selection,\n:host-context(.-theme-with-dark-background) *::selection{background-color:rgb(93 93 93/60%)}.reload-warning{align-self:center;margin-left:10px}button.link{border:none;background:none;padding:3px}button.link:focus-visible{--override-link-focus-background-color:rgb(0 0 0/8%);background-color:var(--override-link-focus-background-color);border-radius:2px}.-theme-with-dark-background button.link:focus-visible,\n:host-context(.-theme-with-dark-background) button.link:focus-visible{--override-link-focus-background-color:rgb(230 230 230/8%)}@media (forced-colors: active){.dimmed,\n .chrome-select:disabled{opacity:100%}[is="ui-icon"].icon-mask,\n .force-white-icons [is="ui-icon"].spritesheet-smallicons,\n :host-context(.force-white-icons) [is="ui-icon"].spritesheet-smallicons,\n [is="ui-icon"].force-white-icons.spritesheet-smallicons,\n .force-white-icons [is="ui-icon"].spritesheet-largeicons,\n :host-context(.force-white-icons) [is="ui-icon"].spritesheet-largeicons,\n [is="ui-icon"].force-white-icons.spritesheet-largeicons,\n .force-white-icons [is="ui-icon"].spritesheet-mediumicons,\n :host-context(.force-white-icons) [is="ui-icon"].spritesheet-mediumicons,\n [is="ui-icon"].force-white-icons.spritesheet-mediumicons,\n .-theme-preserve{forced-color-adjust:none;background-color:ButtonText}.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;cursor:pointer;width:16px;height:15px;margin-right:0;background-position:-32px 32px;background-image:var(--image-file-mediumIcons)}.spinner::before{display:block;width:var(--dimension,24px);height:var(--dimension,24px);border:var(--override-spinner-size,3px) solid var(--override-spinner-color,var(--color-text-secondary));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-block}.adorner-container.hidden{display:none}.adorner-container devtools-adorner{margin-left:3px}:host-context(.-theme-with-dark-background) devtools-adorner{--override-adorner-background-color:rgb(var(--color-syntax-2-rgb)/15%);--override-adorner-border-color:rgb(var(--color-syntax-2-rgb)/50%);--override-adorner-focus-border-color:var(--color-syntax-2);--override-adorner-active-background-color:var(--color-syntax-8)}.panel{display:flex;overflow:hidden;position:absolute;top:0;left:0;right:0;bottom:0;z-index:0;background-color:var(--color-background)}.panel-sidebar{overflow-x:hidden;background-color:var(--color-background-elevation-1)}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}}\n/*# sourceURL=inspectorCommon.css */\n');const j=new CSSStyleSheet;j.replaceSync(":host{flex:auto;display:flex}.mode-type{color:var(--override-text-highlight-color)}.value-types{width:100%;display:grid;grid-template-columns:auto auto 1fr;gap:4px 24px;min-height:24px;overflow:hidden;padding:2px 12px;align-items:baseline;justify-content:start}.value-type-cell{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:flex;flex-direction:column;min-height:24px}.value-type-value-with-link{display:flex;align-items:center}.value-type-cell-no-mode{grid-column:1/3}.jump-to-button{display:flex;width:20px;height:20px;border:none;padding:0;outline:none;justify-content:center;align-items:center;cursor:pointer}.signed-divider{width:1px;height:15px;background-color:var(--color-details-hairline);margin:0 4px}.selectable-text{user-select:text}.selectable-text::selection{background-color:var(--legacy-item-selection-bg-color)}\n/*# sourceURL=valueInterpreterDisplay.css */\n");const z={notApplicable:"N/A"},P=e.i18n.registerUIStrings("ui/components/linear_memory_inspector/ValueInterpreterDisplayUtils.ts",z),B=e.i18n.getLocalizedString.bind(void 0,P);function _(){return new Map(V)}const V=new Map([["Integer 8-bit","dec"],["Integer 16-bit","dec"],["Integer 32-bit","dec"],["Integer 64-bit","dec"],["Float 32-bit","dec"],["Float 64-bit","dec"],["Pointer 32-bit","hex"],["Pointer 64-bit","hex"]]),D=["dec","hex","oct","sci"];function U(t){return e.i18n.lockedString(t)}function F(e,t){switch(e){case"Integer 8-bit":case"Integer 16-bit":case"Integer 32-bit":case"Integer 64-bit":return"dec"===t||"hex"===t||"oct"===t;case"Float 32-bit":case"Float 64-bit":return"sci"===t||"dec"===t;case"Pointer 32-bit":case"Pointer 64-bit":return"hex"===t;default:return s.assertNever(e,`Unknown value type: ${e}`)}}function q(e){switch(e){case"Integer 8-bit":case"Integer 16-bit":case"Integer 32-bit":case"Integer 64-bit":case"Float 32-bit":case"Float 64-bit":return!0;default:return!1}}function G(e,t,i){if(!W(e))return console.error(`Requesting address of a non-pointer type: ${e}.\n`),NaN;try{const o=new DataView(t),r="Little Endian"===i;return"Pointer 32-bit"===e?o.getUint32(0,r):o.getBigUint64(0,r)}catch(e){return NaN}}function W(e){return"Pointer 32-bit"===e||"Pointer 64-bit"===e}function J(e){if(!e.mode)return console.error(`No known way of showing value for ${e.type}`),B(z.notApplicable);const t=new DataView(e.buffer),i="Little Endian"===e.endianness;let o;try{switch(e.type){case"Integer 8-bit":return o=e.signed?t.getInt8(0):t.getUint8(0),X(o,e.mode);case"Integer 16-bit":return o=e.signed?t.getInt16(0,i):t.getUint16(0,i),X(o,e.mode);case"Integer 32-bit":return o=e.signed?t.getInt32(0,i):t.getUint32(0,i),X(o,e.mode);case"Integer 64-bit":return o=e.signed?t.getBigInt64(0,i):t.getBigUint64(0,i),X(o,e.mode);case"Float 32-bit":return o=t.getFloat32(0,i),K(o,e.mode);case"Float 64-bit":return o=t.getFloat64(0,i),K(o,e.mode);case"Pointer 32-bit":return o=t.getUint32(0,i),X(o,"hex");case"Pointer 64-bit":return o=t.getBigUint64(0,i),X(o,"hex");default:return s.assertNever(e.type,`Unknown value type: ${e.type}`)}}catch(e){return B(z.notApplicable)}}function K(e,t){switch(t){case"dec":return e.toFixed(2).toString();case"sci":return e.toExponential(2).toString();default:throw new Error(`Unknown mode for floats: ${t}.`)}}function X(e,t){switch(t){case"dec":return e.toString();case"hex":return e<0?B(z.notApplicable):"0x"+e.toString(16).toUpperCase();case"oct":return e<0?B(z.notApplicable):e.toString(8);default:throw new Error(`Unknown mode for integers: ${t}.`)}}var Y=Object.freeze({__proto__:null,VALUE_INTEPRETER_MAX_NUM_BYTES:8,getDefaultValueTypeMapping:_,VALUE_TYPE_MODE_LIST:D,valueTypeToLocalizedString:U,isValidMode:F,isNumber:q,getPointerAddress:G,isPointer:W,format:J,formatFloat:K,formatInteger:X});const Q={unsignedValue:"`Unsigned` value",changeValueTypeMode:"Change mode",signedValue:"`Signed` value",jumpToPointer:"Jump to address",addressOutOfRange:"Address out of memory range"},Z=e.i18n.registerUIStrings("ui/components/linear_memory_inspector/ValueInterpreterDisplay.ts",Q),ee=e.i18n.getLocalizedString.bind(void 0,Z),{render:te,html:ie}=t,oe=Array.from(_().keys());class re extends Event{static eventName="valuetypemodechanged";data;constructor(e,t){super(re.eventName,{composed:!0}),this.data={type:e,mode:t}}}class se extends Event{static eventName="jumptopointeraddress";data;constructor(e){super(se.eventName,{composed:!0}),this.data=e}}class ne extends HTMLElement{static litTagName=t.literal`devtools-linear-memory-inspector-interpreter-display`;#e=this.attachShadow({mode:"open"});#u="Little Endian";#f=new ArrayBuffer(0);#b=new Set;#v=_();#w=0;constructor(){super(),this.#e.adoptedStyleSheets=[H]}connectedCallback(){this.#e.adoptedStyleSheets=[j]}set data(e){this.#f=e.buffer,this.#u=e.endianness,this.#b=e.valueTypes,this.#w=e.memoryLength,e.valueTypeModes&&e.valueTypeModes.forEach(((e,t)=>{F(t,e)&&this.#v.set(t,e)})),this.#o()}#o(){te(ie` <div class="value-types"> ${oe.map((e=>this.#b.has(e)?this.#k(e):""))} </div> `,this.#e,{host:this})}#k(e){if(q(e))return this.#y(e);if(W(e))return this.#x(e);throw new Error(`No known way to format ${e}`)}#x(t){const i=this.#I({type:t,signed:!1}),r=G(t,this.#f,this.#u),s=Number.isNaN(r)||BigInt(r)>=BigInt(this.#w),n=ee(s?Q.addressOutOfRange:Q.jumpToPointer),a=s?"var(--icon-default)":"var(--icon-link)";return ie` <span class="value-type-cell-no-mode value-type-cell selectable-text">${e.i18n.lockedString(t)}</span> <div class="value-type-cell"> <div class="value-type-value-with-link" data-value="true"> <span class="selectable-text">${i}</span> ${ie` <button class="jump-to-button" data-jump="true" title="${n}" ?disabled="${s}" @click="${this.#M.bind(this,Number(r))}"> <${o.Icon.Icon.litTagName} .data="${{iconName:"open-externally",color:a,width:"16px"}}"> </${o.Icon.Icon.litTagName}> </button>`} </div> </div> `}#M(e){this.dispatchEvent(new se(e))}#y(t){return ie` <span class="value-type-cell selectable-text">${e.i18n.lockedString(t)}</span> <div> <select title="${ee(Q.changeValueTypeMode)}" data-mode-settings="true" class="chrome-select" style="border: none; background-color: transparent; cursor: pointer; color: var(--color-text-secondary);" @change="${this.#T.bind(this,t)}"> ${D.filter((e=>F(t,e))).map((i=>ie` <option value="${i}" .selected="${this.#v.get(t)===i}">${e.i18n.lockedString(i)} `))} </select> </div> ${this.#S(t)} `}#S(e){const t=this.#I({type:e,signed:!1}),i=this.#I({type:e,signed:!0}),o=this.#v.get(e),r=i!==t&&"hex"!==o&&"oct"!==o,s=ie`<span class="value-type-cell selectable-text" title="${ee(Q.unsignedValue)}" data-value="true">${t}</span>`;if(!r)return s;const n="Integer 32-bit"===e||"Integer 64-bit"===e,a=ie`<span class="selectable-text" data-value="true" title="${ee(Q.signedValue)}">${i}</span>`;return n?ie` <div class="value-type-cell"> ${s} ${a} </div> `:ie` <div class="value-type-cell" style="flex-direction: row;"> ${s} <span class="signed-divider"></span> ${a} </div> `}#T(e,t){t.preventDefault();const i=t.target.value;this.dispatchEvent(new re(e,i))}#I(e){const t=this.#v.get(e.type);return J({buffer:this.#f,type:e.type,endianness:this.#u,signed:e.signed||!1,mode:t})}}i.CustomElements.defineComponent("devtools-linear-memory-inspector-interpreter-display",ne);var ae=Object.freeze({__proto__:null,ValueTypeModeChangedEvent:re,JumpToPointerAddressEvent:se,ValueInterpreterDisplay:ne});const ce=new CSSStyleSheet;ce.replaceSync(":host{flex:auto;display:flex;min-height:20px}.settings{display:flex;flex-wrap:wrap;margin:0 12px 12px;column-gap:45px;row-gap:15px}.value-types-selection{display:flex;flex-direction:column}.group{font-weight:bold;margin-bottom:11px}.type-label{white-space:nowrap}.group + .type-label{margin-top:5px}.type-label input{margin:0 6px 0 0;padding:0}.type-label + .type-label{margin-top:6px}\n/*# sourceURL=valueInterpreterSettings.css */\n");const{render:le,html:de}=t,he={otherGroup:"Other"},me=e.i18n.registerUIStrings("ui/components/linear_memory_inspector/ValueInterpreterSettings.ts",he),ge=e.i18n.getLocalizedString.bind(void 0,me),pe=new Map([["Integer",["Integer 8-bit","Integer 16-bit","Integer 32-bit","Integer 64-bit"]],["Floating point",["Float 32-bit","Float 64-bit"]],["Other",["Pointer 32-bit","Pointer 64-bit"]]]);class ue extends Event{static eventName="typetoggle";data;constructor(e,t){super(ue.eventName),this.data={type:e,checked:t}}}class fe extends HTMLElement{static litTagName=t.literal`devtools-linear-memory-inspector-interpreter-settings`;#e=this.attachShadow({mode:"open"});#b=new Set;connectedCallback(){this.#e.adoptedStyleSheets=[n.checkboxStyles,ce]}set data(e){this.#b=e.valueTypes,this.#o()}#o(){le(de` <div class="settings"> ${[...pe.keys()].map((e=>de` <div class="value-types-selection"> <span class="group">${function(e){return"Other"===e?ge(he.otherGroup):e}(e)}</span> ${this.#E(e)} </div> `))} </div> `,this.#e,{host:this})}#E(e){const t=pe.get(e);if(!t)throw new Error(`Unknown group ${e}`);return de` ${t.map((e=>de` <label class="type-label" title="${U(e)}"> <input data-input="true" type="checkbox" .checked="${this.#b.has(e)}" @change="${t=>this.#$(e,t)}"> <span data-title="true">${U(e)}</span> </label> `))}`}#$(e,t){const i=t.target;this.dispatchEvent(new ue(e,i.checked))}}i.CustomElements.defineComponent("devtools-linear-memory-inspector-interpreter-settings",fe);var be=Object.freeze({__proto__:null,TypeToggleEvent:ue,ValueInterpreterSettings:fe});const ve={toggleValueTypeSettings:"Toggle value type settings",changeEndianness:"Change `Endianness`"},we=e.i18n.registerUIStrings("ui/components/linear_memory_inspector/LinearMemoryValueInterpreter.ts",ve),ke=e.i18n.getLocalizedString.bind(void 0,we),{render:ye,html:xe}=t;class Ie extends Event{static eventName="endiannesschanged";data;constructor(e){super(Ie.eventName),this.data=e}}class Me extends Event{static eventName="valuetypetoggled";data;constructor(e,t){super(Me.eventName),this.data={type:e,checked:t}}}class Te extends HTMLElement{static litTagName=t.literal`devtools-linear-memory-inspector-interpreter`;#e=this.attachShadow({mode:"open"});#u="Little Endian";#f=new ArrayBuffer(0);#b=new Set;#v=new Map;#w=0;#A=!1;connectedCallback(){this.#e.adoptedStyleSheets=[C]}set data(e){this.#u=e.endianness,this.#f=e.value,this.#b=e.valueTypes,this.#v=e.valueTypeModes||new Map,this.#w=e.memoryLength,this.#o()}#o(){ye(xe` <div class="value-interpreter"> <div class="settings-toolbar"> ${this.#N()} <button data-settings="true" class="settings-toolbar-button ${this.#A?"active":""}" title="${ke(ve.toggleValueTypeSettings)}" @click="${this.#R}"> <${o.Icon.Icon.litTagName} .data="${{iconName:"gear",color:"var(--icon-default)",width:"20px"}}"> </${o.Icon.Icon.litTagName}> </button> </div> <span class="divider"></span> <div> ${this.#A?xe` <${fe.litTagName} .data="${{valueTypes:this.#b}}" @typetoggle="${this.#$}"> </${fe.litTagName}>`:xe` <${ne.litTagName} .data="${{buffer:this.#f,valueTypes:this.#b,endianness:this.#u,valueTypeModes:this.#v,memoryLength:this.#w}}"> </${ne.litTagName}>`} </div> </div> `,this.#e,{host:this})}#L(e){e.preventDefault();const t=e.target.value;this.dispatchEvent(new Ie(t))}#N(){const t=this.#L.bind(this);return xe` <label data-endianness-setting="true" title="${ke(ve.changeEndianness)}"> <select class="chrome-select" style="border: none; background-color: transparent; cursor: pointer;" data-endianness="true" @change="${t}"> ${["Little Endian","Big Endian"].map((t=>xe`<option value="${t}" .selected="${this.#u===t}">${e.i18n.lockedString(t)}`))} </select> </label> `}#R(){this.#A=!this.#A,this.#o()}#$(e){this.dispatchEvent(new Me(e.data.type,e.data.checked))}}i.CustomElements.defineComponent("devtools-linear-memory-inspector-interpreter",Te);var Se=Object.freeze({__proto__:null,EndiannessChangedEvent:Ie,ValueTypeToggledEvent:Me,LinearMemoryValueInterpreter:Te});const Ee=/^0x[a-fA-F0-9]+$/,$e=/^0$|[1-9]\d*$/;function Ae(e){const t=e.number.toString(16).padStart(e.pad,"0").toUpperCase();return e.prefix?"0x"+t:t}function Ne(e){return Ae({number:e,pad:8,prefix:!0})}function Re(e){const t=e.match(Ee),i=e.match($e);let o;return t&&t[0].length===e.length?o=parseInt(e,16):i&&i[0].length===e.length&&(o=parseInt(e,10)),o}var Le=Object.freeze({__proto__:null,HEXADECIMAL_REGEXP:Ee,DECIMAL_REGEXP:$e,toHexString:Ae,formatAddress:Ne,parseAddress:Re});const Oe=new CSSStyleSheet;Oe.replaceSync(":host{flex:auto;display:flex;min-height:20px}.view{overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;background:var(--color-background);outline:none}.row{display:flex;height:20px;align-items:center}.cell{text-align:center;border:1px solid transparent;border-radius:2px}.cell.selected{border-color:var(--color-syntax-3);color:var(--color-syntax-3);background-color:var(--legacy-item-selection-bg-color)}.byte-cell{min-width:21px;color:var(--color-text-primary)}.byte-group-margin{margin-left:var(--byte-group-margin)}.text-cell{min-width:14px;color:var(--color-syntax-3)}.address{color:var(--color-text-disabled)}.address.selected{font-weight:bold;color:var(--color-text-primary)}.divider{width:1px;height:inherit;background-color:var(--color-details-hairline);margin:0 4px}.highlight-area{background-color:var(--color-background-elevation-2)}.cell.focused-area{background-color:var(--color-primary-variant);color:var(--color-button-primary-text)}.cell.focused-area.selected{background:rgb(1 74 195);border-color:var(--color-button-outline-focus)}:host-context(.-theme-with-dark-background) .cell.focused-area.selected{background:rgb(192 216 255);border-color:var(--color-button-outline-focus)}\n/*# sourceURL=linearMemoryViewer.css */\n");const{render:Ce,html:He}=t;class je extends Event{static eventName="byteselected";data;constructor(e){super(je.eventName),this.data=e}}class ze extends Event{static eventName="resize";data;constructor(e){super(ze.eventName),this.data=e}}class Pe extends HTMLElement{static litTagName=t.literal`devtools-linear-memory-inspector-viewer`;#e=this.attachShadow({mode:"open"});#O=new ResizeObserver((()=>this.#C()));#H=!1;#j=new Uint8Array;#a=0;#z=0;#P;#i;#B=1;#_=4;#V=!0;#D=void 0;set data(e){if(e.address<e.memoryOffset||e.address>e.memoryOffset+e.memory.length||e.address<0)throw new Error("Address is out of bounds.");if(e.memoryOffset<0)throw new Error("Memory offset has to be greater or equal to zero.");this.#j=e.memory,this.#a=e.address,this.#P=e.highlightInfo,this.#i=e.focusedMemoryHighlight,this.#z=e.memoryOffset,this.#V=e.focus,this.#U()}connectedCallback(){i.SetCSSProperty.set(this,"--byte-group-margin","8px"),this.#e.adoptedStyleSheets=[Oe]}disconnectedCallback(){this.#H=!1,this.#O.disconnect()}#U(){this.#F(),this.#o(),this.#q(),this.#G()}#q(){if(this.#V){const e=this.#e.querySelector(".view");e&&e.focus()}}#C(){this.#U(),this.dispatchEvent(new ze(this.#_*this.#B))}#F(){if(0===this.clientWidth||0===this.clientHeight||!this.shadowRoot)return this.#_=4,void(this.#B=1);const e=this.shadowRoot.querySelector(".byte-cell"),t=this.shadowRoot.querySelector(".text-cell"),i=this.shadowRoot.querySelector(".divider"),o=this.shadowRoot.querySelector(".row"),r=this.shadowRoot.querySelector(".address");if(!(e&&t&&i&&o&&r))return this.#_=4,void(this.#B=1);const s=4*(e.getBoundingClientRect().width+t.getBoundingClientRect().width)+8,n=i.getBoundingClientRect().width,a=e.getBoundingClientRect().left-r.getBoundingClientRect().left,c=this.clientWidth-1-a-n;if(c<s)return this.#_=4,void(this.#B=1);this.#_=4*Math.floor(c/s),this.#B=Math.floor(this.clientHeight/o.clientHeight)}#G(){this.#O&&!this.#H&&(this.#O.observe(this),this.#H=!0)}#o(){Ce(He` <div class="view" tabindex="0" @keydown="${this.#W}"> ${this.#J()} </div> `,this.#e,{host:this})}#W(e){const t=e;let i;"ArrowUp"===t.code?i=this.#a-this.#_:"ArrowDown"===t.code?i=this.#a+this.#_:"ArrowLeft"===t.code?i=this.#a-1:"ArrowRight"===t.code?i=this.#a+1:"PageUp"===t.code?i=this.#a-this.#_*this.#B:"PageDown"===t.code&&(i=this.#a+this.#_*this.#B),void 0!==i&&i!==this.#D&&(this.#D=i,this.dispatchEvent(new je(i)))}#J(){const e=[];for(let t=0;t<this.#B;++t)e.push(this.#K(t));return He`${e}`}#K(e){const{startIndex:i,endIndex:o}={startIndex:e*this.#_,endIndex:(e+1)*this.#_},r={address:!0,selected:Math.floor((this.#a-this.#z)/this.#_)===e};return He` <div class="row"> <span class="${t.Directives.classMap(r)}">${Ae({number:i+this.#z,pad:8,prefix:!1})}</span> <span class="divider"></span> ${this.#X(i,o)} <span class="divider"></span> ${this.#Y(i,o)} </div> `}#X(e,i){const o=[];for(let r=e;r<i;++r){const i=r+this.#z,s={cell:!0,"byte-cell":!0,"byte-group-margin":r!==e&&(r-e)%4==0,selected:r===this.#a-this.#z,"highlight-area":this.#Q(i),"focused-area":this.#Z(i)},n=r<this.#j.length,a=n?He`${Ae({number:this.#j[r],pad:2,prefix:!1})}`:"",c=n?this.#ee.bind(this,i):"";o.push(He`<span class="${t.Directives.classMap(s)}" @click="${c}">${a}</span>`)}return He`${o}`}#Y(e,i){const o=[];for(let r=e;r<i;++r){const e=r+this.#z,i=this.#Q(e),s=this.#Z(e),n={cell:!0,"text-cell":!0,selected:this.#a-this.#z===r,"highlight-area":i,"focused-area":s},a=r<this.#j.length,c=a?He`${this.#te(this.#j[r])}`:"",l=a?this.#ee.bind(this,r+this.#z):"";o.push(He`<span class="${t.Directives.classMap(n)}" @click="${l}">${c}</span>`)}return He`${o}`}#te(e){return e>=20&&e<=127?String.fromCharCode(e):"."}#ee(e){this.dispatchEvent(new je(e))}#Q(e){return void 0!==this.#P&&(this.#P.startAddress<=e&&e<this.#P.startAddress+this.#P.size)}#Z(e){return!!this.#i&&(this.#i.startAddress<=e&&e<this.#i.startAddress+this.#i.size)}}i.CustomElements.defineComponent("devtools-linear-memory-inspector-viewer",Pe);var Be=Object.freeze({__proto__:null,ByteSelectedEvent:je,ResizeEvent:ze,LinearMemoryViewer:Pe});const{render:_e,html:Ve}=t,De={addressHasToBeANumberBetweenSAnd:"Address has to be a number between {PH1} and {PH2}"},Ue=e.i18n.registerUIStrings("ui/components/linear_memory_inspector/LinearMemoryInspector.ts",De),Fe=e.i18n.getLocalizedString.bind(void 0,Ue);class qe extends Event{static eventName="memoryrequest";data;constructor(e,t,i){super(qe.eventName),this.data={start:e,end:t,address:i}}}class Ge extends Event{static eventName="addresschanged";data;constructor(e){super(Ge.eventName),this.data=e}}class We extends Event{static eventName="settingschanged";data;constructor(e){super(We.eventName),this.data=e}}class Je{#a=0;#ie;constructor(e,t){if(e<0)throw new Error("Address should be a greater or equal to zero");this.#a=e,this.#ie=t}valid(){return!0}reveal(){this.#ie(this.#a)}}class Ke extends HTMLElement{static litTagName=t.literal`devtools-linear-memory-inspector-inspector`;#e=this.attachShadow({mode:"open"});#oe=new r.SimpleHistoryManager.SimpleHistoryManager(10);#j=new Uint8Array;#z=0;#re=0;#a=-1;#P;#se="Submitted";#ne=`${this.#a}`;#ae=4;#ce=_();#b=new Set(this.#ce.keys());#u="Little Endian";connectedCallback(){this.#e.adoptedStyleSheets=[y]}set data(e){if(e.address<e.memoryOffset||e.address>e.memoryOffset+e.memory.length||e.address<0)throw new Error("Address is out of bounds.");if(e.memoryOffset<0)throw new Error("Memory offset has to be greater or equal to zero.");if(e.highlightInfo){if(e.highlightInfo.size<0)throw new Error("Object size has to be greater than or equal to zero");if(e.highlightInfo.startAddress<0||e.highlightInfo.startAddress>=e.outerMemoryLength)throw new Error("Object start address is out of bounds.")}this.#j=e.memory,this.#z=e.memoryOffset,this.#re=e.outerMemoryLength,this.#ce=e.valueTypeModes||this.#ce,this.#b=e.valueTypes||this.#b,this.#u=e.endianness||this.#u,this.#P=e.highlightInfo,this.#le(e.address),this.#o()}#o(){const{start:e,end:t}=this.#de(this.#a,this.#ae),i="Submitted"===this.#se?Ne(this.#a):this.#ne,o=this.#he(i),r=Fe(De.addressHasToBeANumberBetweenSAnd,{PH1:Ne(0),PH2:Ne(this.#re)}),s=o?void 0:r,n=this.#oe.canRollback(),a=this.#oe.canRollover(),c=this.#P?[this.#P]:[],l=this.#me(c,this.#a);_e(Ve` <div class="view"> <${L.litTagName} .data="${{address:i,valid:o,mode:this.#se,error:s,canGoBackInHistory:n,canGoForwardInHistory:a}}" @refreshrequested="${this.#ge}" @addressinputchanged="${this.#p}" @pagenavigation="${this.#pe}" @historynavigation="${this.#ue}"></${L.litTagName}> <${w.litTagName} .data="${{highlightInfos:c,focusedMemoryHighlight:l}}" @jumptohighlightedmemory="${this.#fe}"> </${w.litTagName}> <${Pe.litTagName} .data="${{memory:this.#j.slice(e-this.#z,t-this.#z),address:this.#a,memoryOffset:e,focus:"Submitted"===this.#se,highlightInfo:this.#P,focusedMemoryHighlight:l}}" @byteselected="${this.#be}" @resize="${this.#C}"> </${Pe.litTagName}> </div> <div class="value-interpreter"> <${Te.litTagName} .data="${{value:this.#j.slice(this.#a-this.#z,this.#a+8).buffer,valueTypes:this.#b,valueTypeModes:this.#ce,endianness:this.#u,memoryLength:this.#re}}" @valuetypetoggled="${this.#ve}" @valuetypemodechanged="${this.#we}" @endiannesschanged="${this.#ke}" @jumptopointeraddress="${this.#fe}"> </${Te.litTagName}> </div> `,this.#e,{host:this})}#fe(e){e.stopPropagation(),this.#se="Submitted";const t=Math.max(0,Math.min(e.data,this.#re-1));this.#ye(t)}#ge(){const{start:e,end:t}=this.#de(this.#a,this.#ae);this.dispatchEvent(new qe(e,t,this.#a))}#be(e){this.#se="Submitted";const t=Math.max(0,Math.min(e.data,this.#re-1));this.#ye(t)}#xe(){return{valueTypes:this.#b,modes:this.#ce,endianness:this.#u}}#ke(e){this.#u=e.data,this.dispatchEvent(new We(this.#xe())),this.#o()}#he(e){const t=Re(e);return void 0!==t&&t>=0&&t<this.#re}#p(e){const{address:t,mode:i}=e.data,o=this.#he(t),r=Re(t);if(this.#ne=t,void 0!==r&&o)return this.#se=i,void this.#ye(r);this.#se="Submitted"!==i||o?"Edit":"InvalidSubmit",this.#o()}#ve(e){const{type:t,checked:i}=e.data;i?this.#b.add(t):this.#b.delete(t),this.dispatchEvent(new We(this.#xe())),this.#o()}#we(e){e.stopImmediatePropagation();const{type:t,mode:i}=e.data;this.#ce.set(t,i),this.dispatchEvent(new We(this.#xe())),this.#o()}#ue(e){return"Forward"===e.data?this.#oe.rollover():this.#oe.rollback()}#pe(e){const t="Forward"===e.data?this.#a+this.#ae:this.#a-this.#ae,i=Math.max(0,Math.min(t,this.#re-1));this.#ye(i)}#ye(e){e<0||e>=this.#re?console.warn(`Specified address is out of bounds: ${e}`):(this.#le(e),this.#U())}#de(e,t){const i=Math.floor(e/t)*t;return{start:i,end:Math.min(i+t,this.#re)}}#C(e){this.#ae=e.data,this.#U()}#U(){const{start:e,end:t}=this.#de(this.#a,this.#ae);e<this.#z||t>this.#z+this.#j.length?this.dispatchEvent(new qe(e,t,this.#a)):this.#o()}#le(e){if(this.#a===e)return;const t=new Je(e,(()=>this.#ye(e)));this.#oe.push(t),this.#a=e,this.dispatchEvent(new Ge(this.#a))}#me(e,t){let i;for(const o of e)o.startAddress<=t&&t<o.startAddress+o.size&&(i?o.size<i.size&&(i=o):i=o);return i}}i.CustomElements.defineComponent("devtools-linear-memory-inspector-inspector",Ke);var Xe=Object.freeze({__proto__:null,MemoryRequestEvent:qe,AddressChangedEvent:Ge,SettingsChangedEvent:We,LinearMemoryInspector:Ke});const Ye={noOpenInspections:"No open inspections"},Qe=e.i18n.registerUIStrings("ui/components/linear_memory_inspector/LinearMemoryInspectorPane.ts",Ye),Ze=e.i18n.getLocalizedString.bind(void 0,Qe);let et,tt;class it extends l.Widget.VBox{view;constructor(){super(),this.view=ot.instance()}static instance(e={forceNew:null}){const{forceNew:t}=e;return tt&&!t||(tt=new it),tt}wasShown(){this.view.show(this.contentElement)}}class ot extends(r.ObjectWrapper.eventMixin(l.Widget.VBox)){#Ie;#Me;constructor(){super(!1);const e=document.createElement("div");e.textContent=Ze(Ye.noOpenInspections),e.style.display="flex",this.#Ie=new l.TabbedPane.TabbedPane,this.#Ie.setPlaceholderElement(e),this.#Ie.setCloseableTabs(!0),this.#Ie.setAllowTabReorder(!0,!0),this.#Ie.addEventListener(l.TabbedPane.Events.TabClosed,this.#Te,this),this.#Ie.show(this.contentElement),this.#Me=new Map}static instance(){return et||(et=new ot),et}getViewForTabId(e){const t=this.#Me.get(e);if(!t)throw new Error(`No linear memory inspector view for the given tab id: ${e}`);return t}create(e,t,i,o){const r=new rt(i,o,e);this.#Me.set(e,r),this.#Ie.appendTab(e,t,r,void 0,!1,!0),this.#Ie.selectTab(e)}close(e){this.#Ie.closeTab(e,!1)}reveal(e,t){const i=this.getViewForTabId(e);void 0!==t&&i.updateAddress(t),this.refreshView(e),this.#Ie.selectTab(e)}refreshView(e){this.getViewForTabId(e).refreshData()}#Te(e){const{tabId:t}=e.data;this.#Me.delete(t),this.dispatchEventToListeners("ViewClosed",t)}}class rt extends l.Widget.VBox{#Se;#a;#Ee;#$e;firstTimeOpen;constructor(e,t=0,i){if(super(!1),t<0||t>=e.length())throw new Error("Requested address is out of bounds.");this.#Se=e,this.#a=t,this.#Ee=i,this.#$e=new Ke,this.#$e.addEventListener(qe.eventName,(e=>{this.#Ae(e)})),this.#$e.addEventListener(Ge.eventName,(e=>{this.updateAddress(e.data)})),this.#$e.addEventListener(We.eventName,(e=>{e.stopPropagation(),this.saveSettings(e.data)})),this.#$e.addEventListener(b.eventName,(e=>{gt.instance().removeHighlight(this.#Ee,e.data),this.refreshData()})),this.contentElement.appendChild(this.#$e),this.firstTimeOpen=!0}wasShown(){this.refreshData()}saveSettings(e){gt.instance().saveSettings(e)}updateAddress(e){if(e<0||e>=this.#Se.length())throw new Error("Requested address is out of bounds.");this.#a=e}refreshData(){gt.getMemoryForAddress(this.#Se,this.#a).then((({memory:e,offset:t})=>{let i,o,r;if(this.firstTimeOpen){const e=gt.instance().loadSettings();i=e.valueTypes,o=e.modes,r=e.endianness,this.firstTimeOpen=!1}this.#$e.data={memory:e,address:this.#a,memoryOffset:t,outerMemoryLength:this.#Se.length(),valueTypes:i,valueTypeModes:o,endianness:r,highlightInfo:this.#Ne()}}))}#Ae(e){const{start:t,end:i,address:o}=e.data;if(o<t||o>=i)throw new Error("Requested address is out of bounds.");gt.getMemoryRange(this.#Se,t,i).then((e=>{this.#$e.data={memory:e,address:o,memoryOffset:t,outerMemoryLength:this.#Se.length(),highlightInfo:this.#Ne()}}))}#Ne(){const e=gt.instance().getHighlightInfo(this.#Ee);if(void 0!==e){if(e.startAddress<0||e.startAddress>=this.#Se.length())throw new Error("HighlightInfo start address is out of bounds.");if(e.size<=0)throw new Error("Highlight size must be a positive number.")}return e}}var st=Object.freeze({__proto__:null,Wrapper:it,LinearMemoryInspectorPaneImpl:ot});const nt={couldNotOpenLinearMemory:"Could not open linear memory inspector: failed locating buffer."},at=e.i18n.registerUIStrings("ui/components/linear_memory_inspector/LinearMemoryInspectorController.ts",nt),ct=e.i18n.getLocalizedString.bind(void 0,at),lt=["webassemblymemory","typedarray","dataview","arraybuffer"];let dt;class ht{#Re;constructor(e){this.#Re=e}length(){return this.#Re.byteLength()}async getRange(e,t){const i=Math.min(t,this.length());if(e<0||e>i)return console.error(`Requesting invalid range of memory: (${e}, ${t})`),new Uint8Array(0);const o=await this.#Re.bytes(e,i);return new Uint8Array(o)}}function mt(e){return e instanceof d.DebuggerLanguagePlugins.ExtensionRemoteObject&&void 0!==e.linearMemoryAddress}class gt extends c.TargetManager.SDKModelObserver{#Le=ot.instance();#Oe=new Map;#Ce=new Map;#He;constructor(){super(),c.TargetManager.TargetManager.instance().observeModels(c.RuntimeModel.RuntimeModel,this),c.TargetManager.TargetManager.instance().addModelListener(c.DebuggerModel.DebuggerModel,c.DebuggerModel.Events.GlobalObjectCleared,this.#je,this),this.#Le.addEventListener("ViewClosed",this.#ze.bind(this)),c.TargetManager.TargetManager.instance().addModelListener(c.DebuggerModel.DebuggerModel,c.DebuggerModel.Events.DebuggerPaused,this.#Pe,this);const e=_(),t={valueTypes:Array.from(e.keys()),valueTypeModes:Array.from(e),endianness:"Little Endian"};this.#He=r.Settings.Settings.instance().createSetting("lmiInterpreterSettings",t)}static instance(){return dt||(dt=new gt,dt)}static async getMemoryForAddress(e,t){const i=Math.max(0,t-500),o=i+1e3;return{memory:await e.getRange(i,o),offset:i}}static async getMemoryRange(e,t,i){if(t<0||t>i||t>=e.length())throw new Error("Requested range is out of bounds.");const o=Math.max(i,t+1e3);return await e.getRange(t,o)}async evaluateExpression(e,t){const i=await e.evaluate({expression:t});if("error"in i)console.error(`Tried to evaluate the expression '${t}' but got an error: ${i.error}`);else{if(!("exceptionDetails"in i)||!i?.exceptionDetails?.text)return i.object;console.error(`Tried to evaluate the expression '${t}' but got an exception: ${i.exceptionDetails.text}`)}}saveSettings(e){const t=Array.from(e.valueTypes),i=[...e.modes];this.#He.set({valueTypes:t,valueTypeModes:i,endianness:e.endianness})}loadSettings(){const e=this.#He.get();return{valueTypes:new Set(e.valueTypes),modes:new Map(e.valueTypeModes),endianness:e.endianness}}getHighlightInfo(e){return this.#Ce.get(e)}removeHighlight(e,t){this.getHighlightInfo(e)===t&&this.#Ce.delete(e)}setHighlightInfo(e,t){this.#Ce.set(e,t)}#Be(e){this.#Ce.delete(e)}static async retrieveDWARFMemoryObjectAndAddress(e){if(!(e instanceof d.DebuggerLanguagePlugins.ExtensionRemoteObject))return;const t=e,i=e.linearMemoryAddress;if(void 0===i)return;const o=t.callFrame,s=await e.debuggerModel().agent.invoke_evaluateOnCallFrame({callFrameId:o.id,expression:"memories[0]"}),n=s.getError();n&&(console.error(n),r.Console.Console.instance().error(ct(nt.couldNotOpenLinearMemory)));return{obj:e.debuggerModel().runtimeModel().createRemoteObject(s.result),address:i}}static extractObjectSize(e){return e.linearMemorySize??0}static extractObjectTypeDescription(e){const t=e.description;if(!t)return"";const i=t.charAt(t.length-1),o=t.charAt(t.length-2);return"*"===i||"&"===i?" "===o?t.slice(0,t.length-2):t.slice(0,t.length-1):t}static extractObjectName(e,t){const i=e.description?.charAt(e.description.length-1);return"*"===i?"*"+t:t}async openInspectorView(e,t,i){const o=await gt.retrieveDWARFMemoryObjectAndAddress(e);let r=e,s=t;void 0!==o&&(s=o.address,r=o.obj),void 0!==s?a.userMetrics.linearMemoryInspectorTarget(a.UserMetrics.LinearMemoryInspectorTarget.DWARFInspectableAddress):"arraybuffer"===r.subtype?a.userMetrics.linearMemoryInspectorTarget(a.UserMetrics.LinearMemoryInspectorTarget.ArrayBuffer):"dataview"===r.subtype?a.userMetrics.linearMemoryInspectorTarget(a.UserMetrics.LinearMemoryInspectorTarget.DataView):"typedarray"===r.subtype?a.userMetrics.linearMemoryInspectorTarget(a.UserMetrics.LinearMemoryInspectorTarget.TypedArray):(console.assert("webassemblymemory"===r.subtype),a.userMetrics.linearMemoryInspectorTarget(a.UserMetrics.LinearMemoryInspectorTarget.WebAssemblyMemory));const n=await async function(e){console.assert("object"===e.type),console.assert(void 0!==e.subtype&&lt.includes(e.subtype));const t=await e.runtimeModel().agent.invoke_callFunctionOn({objectId:e.objectId,functionDeclaration:"function() { return this instanceof ArrayBuffer || (typeof SharedArrayBuffer !== 'undefined' && this instanceof SharedArrayBuffer) ? this : this.buffer; }",silent:!0,objectGroup:"linear-memory-inspector"}),i=t.getError();if(i)throw new Error(`Remote object representing ArrayBuffer could not be retrieved: ${i}`);return e=e.runtimeModel().createRemoteObject(t.result),new c.RemoteObject.RemoteArrayBuffer(e)}(r),{internalProperties:d}=await n.object().getOwnProperties(!1),h=d?.find((({name:e})=>"[[ArrayBufferData]]"===e)),m=h?.value?.value;if(!m)throw new Error("Unable to find backing store id for array buffer");const g=d?.find((({name:e})=>"[[WebAssemblyMemory]]"===e)),p=g?.value,u=gt.extractHighlightInfo(e,i);if(u?this.setHighlightInfo(m,u):this.#Be(m),this.#Oe.has(m))return this.#Le.reveal(m,s),void l.ViewManager.ViewManager.instance().showView("linear-memory-inspector");const f=String(p?p.description:n.object().description);this.#Oe.set(m,n.object());const b=new ht(n);this.#Le.create(m,f,b,s),l.ViewManager.ViewManager.instance().showView("linear-memory-inspector")}static extractHighlightInfo(e,t){if(!(e instanceof d.DebuggerLanguagePlugins.ExtensionRemoteObject))return;const i=e.linearMemoryAddress??0;let o;try{o={startAddress:i,size:gt.extractObjectSize(e),name:t?gt.extractObjectName(e,t):t,type:gt.extractObjectTypeDescription(e)}}catch(e){o=void 0}return o}modelRemoved(e){for(const[t,i]of this.#Oe)e===i.runtimeModel()&&(this.#Oe.delete(t),this.#Be(t),this.#Le.close(t))}#Pe(e){const t=e.data;for(const[e,i]of this.#Oe)if(t.runtimeModel()===i.runtimeModel()){const i=t.debuggerPausedDetails()?.callFrames[0];i?this.updateHighlightedMemory(e,i).then((()=>this.#Le.refreshView(e))):(this.#Be(e),this.#Le.refreshView(e))}}#je(e){this.modelRemoved(e.data.runtimeModel())}#ze({data:e}){const t=this.#Oe.get(e);t&&t.release(),this.#Oe.delete(e),this.#Be(e)}async updateHighlightedMemory(e,t){const i=this.getHighlightInfo(e),o=i?.name;if(!i||!o)return void this.#Be(e);const r=await this.evaluateExpression(t,o);if(!r)return void this.#Be(e);const s=gt.extractHighlightInfo(r,o);s&&this.#_e(s,i)?this.setHighlightInfo(e,s):this.#Be(e)}#_e(e,t){return e.type===t.type&&e.startAddress===t.startAddress}}var pt=Object.freeze({__proto__:null,ACCEPTED_MEMORY_TYPES:lt,RemoteArrayBufferWrapper:ht,isDWARFMemoryObject:mt,isMemoryObjectProperty:function(e){return!!("object"===e.type&&e.subtype&&lt.includes(e.subtype)||mt(e))},LinearMemoryInspectorController:gt}),ut=Object.freeze({__proto__:null});export{k as LinearMemoryHighlightChipList,Xe as LinearMemoryInspector,pt as LinearMemoryInspectorController,st as LinearMemoryInspectorPane,Le as LinearMemoryInspectorUtils,O as LinearMemoryNavigator,Se as LinearMemoryValueInterpreter,Be as LinearMemoryViewer,ut as LinearMemoryViewerUtils,ae as ValueInterpreterDisplay,Y as ValueInterpreterDisplayUtils,be as ValueInterpreterSettings};
@@ -0,0 +1 @@
1
+ import*as e from"../../../core/platform/platform.js";import*as t from"../../lit-html/lit-html.js";import*as i from"../helpers/helpers.js";import*as r from"../render_coordinator/render_coordinator.js";import*as n from"../../../models/bindings/bindings.js";const o=new CSSStyleSheet;o.replaceSync(".link:link,\n.link:visited{color:var(--color-link);text-decoration:underline;cursor:pointer;outline-offset:2px}\n/*# sourceURL=linkifierImpl.css */\n");const s=r.RenderCoordinator.RenderCoordinator.instance();class l extends Event{data;static eventName="linkifieractivated";constructor(e){super(l.eventName,{bubbles:!0,composed:!0}),this.data=e,this.data=e}}class a extends HTMLElement{static litTagName=t.literal`devtools-linkifier`;#e=this.attachShadow({mode:"open"});#t=e.DevToolsPath.EmptyUrlString;#i;#r;set data(e){if(this.#t=e.url,this.#i=e.lineNumber,this.#r=e.columnNumber,!this.#t)throw new Error("Cannot construct a Linkifier without providing a valid string URL.");this.#n()}connectedCallback(){this.#e.adoptedStyleSheets=[o]}#o(e){e.preventDefault();const t=new l({url:this.#t,lineNumber:this.#i,columnNumber:this.#r});this.dispatchEvent(t)}async#n(){await s.write((()=>{t.render(t.html`<a class="link" href="${this.#t}" @click="${this.#o}"><slot>${function(e,t){if(e){let i=`${n.ResourceUtils.displayNameForURL(e)}`;return void 0!==t&&(i+=`:${t+1}`),i}throw new Error("New linkifier component error: don't know how to generate link text for given arguments")}(this.#t,this.#i)}</slot></a>`,this.#e,{host:this})}))}}i.CustomElements.defineComponent("devtools-linkifier",a);var c=Object.freeze({__proto__:null,LinkifierClick:l,Linkifier:a});export{c as Linkifier};
@@ -0,0 +1 @@
1
+ import*as e from"../helpers/helpers.js";import*as t from"../icon_button/icon_button.js";import*as o from"../../lit-html/lit-html.js";import"../../legacy/legacy.js";const s=new CSSStyleSheet;s.replaceSync(".markdown-image{display:block}\n/*# sourceURL=markdownImage.css */\n");const r=new Map([]),n=e=>{const t=r.get(e);if(!t)throw new Error(`Markdown image with key '${e}' is not available, please check MarkdownImagesMap.ts`);return t};var a=Object.freeze({__proto__:null,markdownImages:r,getMarkdownImage:n});class i extends HTMLElement{static litTagName=o.literal`devtools-markdown-image`;#e=this.attachShadow({mode:"open"});#t;#o;connectedCallback(){this.#e.adoptedStyleSheets=[s]}set data(e){const{key:t,title:o}=e,s=n(t);this.#t=s,this.#o=o,this.#s()}#r(){if(!this.#t)return o.html``;const{src:e,color:s,width:r="100%",height:n="100%"}=this.#t;return o.html` <${t.Icon.Icon.litTagName} .data="${{iconPath:e,color:s,width:r,height:n}}"></${t.Icon.Icon.litTagName}> `}#n(){if(!this.#t)return o.html``;const{src:e,width:t="100%",height:s="100%"}=this.#t;return o.html` <img class="markdown-image" src="${e}" alt="${this.#o}" width="${t}" height="${s}/"> `}#s(){if(!this.#t)return;const{isIcon:e}=this.#t,t=e?this.#r():this.#n();o.render(t,this.#e,{host:this})}}e.CustomElements.defineComponent("devtools-markdown-image",i);var l=Object.freeze({__proto__:null,MarkdownImage:i});const c=new CSSStyleSheet;c.replaceSync(".devtools-link{color:var(--color-link);outline-offset:2px;text-decoration:none}.devtools-link:hover{text-decoration:underline}\n/*# sourceURL=markdownLink.css */\n");const h=new Map([["issuesContrastWCAG21AA","https://www.w3.org/TR/WCAG21/#contrast-minimum"],["issuesContrastWCAG21AAA","https://www.w3.org/TR/WCAG21/#contrast-enhanced"],["issuesContrastSuggestColor","https://developers.google.com/web/updates/2020/08/devtools#accessible-color"],["issuesCSPSetStrict","https://web.dev/strict-csp"],["issuesCSPWhyStrictOverAllowlist","https://web.dev/strict-csp/#why-a-strict-csp-is-recommended-over-allowlist-csps"],["issueCorsPreflightRequest","https://web.dev/cross-origin-resource-sharing/#preflight-requests-for-complex-http-calls"],["issueQuirksModeDoctype","https://web.dev/doctype/"],["sameSiteAndSameOrigin","https://web.dev/same-site-same-origin/"],["punycodeReference","https://wikipedia.org/wiki/Punycode"],["https://xhr.spec.whatwg.org/","https://xhr.spec.whatwg.org/"],["https://goo.gle/chrome-insecure-origins","https://goo.gle/chrome-insecure-origins"],["https://webrtc.org/web-apis/chrome/unified-plan/","https://webrtc.org/web-apis/chrome/unified-plan/"],["https://developer.chrome.com/blog/enabling-shared-array-buffer/","https://developer.chrome.com/blog/enabling-shared-array-buffer/"],["https://developer.chrome.com/docs/extensions/mv3/","https://developer.chrome.com/docs/extensions/mv3/"],["https://developer.chrome.com/blog/immutable-document-domain/","https://developer.chrome.com/blog/immutable-document-domain/"],["https://github.com/WICG/shared-element-transitions/blob/main/debugging_overflow_on_images.md","https://github.com/WICG/shared-element-transitions/blob/main/debugging_overflow_on_images.md"],["https://developer.chrome.com/docs/extensions/reference/privacy/#property-websites-privacySandboxEnabled","https://developer.chrome.com/docs/extensions/reference/privacy/#property-websites-privacySandboxEnabled"]]),m=e=>{if(/^https:\/\/www.chromestatus.com\/feature\/\d+$/.test(e))return e;const t=h.get(e);if(!t)throw new Error(`Markdown link with key '${e}' is not available, please check MarkdownLinksMap.ts`);return t};var d=Object.freeze({__proto__:null,markdownLinks:h,getMarkdownLink:m});class p extends HTMLElement{static litTagName=o.literal`devtools-markdown-link`;#e=this.attachShadow({mode:"open"});#a="";#i="";connectedCallback(){this.#e.adoptedStyleSheets=[c]}set data(e){const{key:t,title:o}=e,s=m(t);this.#a=o,this.#i=s,this.#s()}#s(){const e=o.html` <x-link class="devtools-link" href="${this.#i}">${this.#a}</x-link> `;o.render(e,this.#e,{host:this})}}e.CustomElements.defineComponent("devtools-markdown-link",p);var g=Object.freeze({__proto__:null,MarkdownLink:p});const w=new CSSStyleSheet;w.replaceSync('.message{line-height:20px;font-size:14px;color:var(--color-text-secondary);margin-bottom:4px;user-select:text}.message p{margin-bottom:16px;margin-block-start:2px}.message ul{list-style-type:none;list-style-position:inside;padding-inline-start:0}.message li{margin-top:8px;display:list-item}.message li::before{content:"→";-webkit-mask-image:none;padding-right:5px;position:relative;top:-1px}.message code{color:var(--color-text-primary);font-size:12px;user-select:text;cursor:text;background:var(--color-background-elevation-1)}\n/*# sourceURL=markdownView.css */\n');const u=o.html,k=o.render;class b extends HTMLElement{static litTagName=o.literal`devtools-markdown-view`;#e=this.attachShadow({mode:"open"});#l=[];connectedCallback(){this.#e.adoptedStyleSheets=[w]}set data(e){this.#l=e.tokens,this.#c()}#c(){this.#s()}#s(){k(u` <div class="message"> ${this.#l.map(S)} </div> `,this.#e,{host:this})}}e.CustomElements.defineComponent("devtools-markdown-view",b);const v=e=>{if("tokens"in e&&e.tokens)return e.tokens.map(S);throw new Error("Tokens not found")},f=e=>{const t=new Map([["&amp;","&"],["&lt;","<"],["&gt;",">"],["&quot;",'"'],["&#39;","'"]]);return e.replace(/&(amp|lt|gt|quot|#39);/g,(e=>{const o=t.get(e);return o||e}))},x=e=>"tokens"in e&&e.tokens?u`${v(e)}`:u`${f("text"in e?e.text:"")}`;function y(e){switch(e.type){case"paragraph":return u`<p>${v(e)}`;case"list":return u`<ul>${e.items.map(S)}</ul>`;case"list_item":return u`<li>${v(e)}`;case"text":return x(e);case"codespan":return u`<code>${f(e.text)}</code>`;case"space":return u``;case"link":return u`<${p.litTagName} .data="${{key:e.href,title:e.text}}"></${p.litTagName}>`;case"image":return u`<${i.litTagName} .data="${{key:e.href,title:e.text}}"></${i.litTagName}>`;case"heading":return(e=>{switch(e.depth){case 1:return u`<h1>${x(e)}</h1>`;case 2:return u`<h2>${x(e)}</h2>`;case 3:return u`<h3>${x(e)}</h3>`;case 4:return u`<h4>${x(e)}</h4>`;case 5:return u`<h5>${x(e)}</h5>`;default:return u`<h6>${x(e)}</h6>`}})(e);case"strong":return u`<strong>${x(e)}</strong>`;case"em":return u`<em>${x(e)}</em>`;default:return null}}const S=e=>{const t=y(e);if(null===t)throw new Error(`Markdown token type '${e.type}' not supported.`);return t};var $=Object.freeze({__proto__:null,MarkdownView:b,renderToken:S});export{l as MarkdownImage,a as MarkdownImagesMap,g as MarkdownLink,d as MarkdownLinksMap,$ as MarkdownView};
@@ -0,0 +1 @@
1
+ import*as e from"../../../core/platform/platform.js";import*as t from"../helpers/helpers.js";import*as o from"../render_coordinator/render_coordinator.js";import*as n from"../../lit-html/lit-html.js";import*as s from"../dialogs/dialogs.js";const r=new CSSStyleSheet;r.replaceSync(":host{--override-transparent:rgb(0 0 0/0%);border-radius:3px;width:fit-content;display:flex;align-items:center;background-color:var(--override-menu-background-color,var(--color-background))}:host([has-open-dialog]){background-color:var(--override-menu-active-background-color,var(--color-background-elevation-2))}#container{list-style-type:none;margin:0;padding:0;width:fit-content;display:block}#container:focus{outline:none}@keyframes slideIn{from{transform:var(--translate-dialog);opacity:0%}to{transform:none;opacity:100%}}\n/*# sourceURL=menu.css */\n");const i=new CSSStyleSheet;i.replaceSync(".menu-group-label{margin:4px 30px 4px 10px;font-size:12px;line-height:16px;position:relative;color:var(--color-text-secondary);display:block}\n/*# sourceURL=menuGroup.css */\n");const d=new CSSStyleSheet;d.replaceSync('.menu-item{padding:4px 30px 4px calc(10px + var(--menu-checkmark-width));font-size:12px;line-height:16px;position:relative;display:block;color:var(--color-text-primary)}.menu-item:focus{outline:none}:host(:not(:first-child)) .menu-item{border-top:var(--override-divider-line)}:host-context(devtools-menu-group) .menu-item{padding:4px 30px 4px 36px}.is-selected-item::before{content:"";position:absolute;left:10px;top:50%;transform:translateY(-50%);display:inline-block;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;mask-position:center;-webkit-mask-position:center;width:calc(var(--menu-checkmark-width) - 10px);height:var(--menu-checkmark-height);mask-image:var(--selected-item-check);-webkit-mask-image:var(--selected-item-check);background:var(--color-text-secondary)}:host(:hover:not(.prevents-close)) .menu-item,\n:host(:focus-visible:not(.prevents-close)) .menu-item{background:var(--color-background-elevation-2)}:host(:focus){outline:none}\n/*# sourceURL=menuItem.css */\n');const l=o.RenderCoordinator.RenderCoordinator.instance(),a=new URL("../../../Images/checkmark.svg",import.meta.url).toString();class h extends HTMLElement{static litTagName=n.literal`devtools-menu`;#e=this.attachShadow({mode:"open"});#t=this.#o.bind(this);#n=null;#s=!1;#r={origin:null,open:!1,position:"auto",showConnector:!1,showDivider:!1,showSelectedItem:!0,horizontalAlignment:"auto",getConnectorCustomXPosition:null};get origin(){return this.#r.origin}set origin(e){this.#r.origin=e,t.ScheduledRender.scheduleRender(this,this.#t)}get open(){return this.#r.open}set open(e){e!==this.open&&(this.#r.open=e,this.toggleAttribute("has-open-dialog",this.open),this.#i().setDialogVisible(this.open),t.ScheduledRender.scheduleRender(this,this.#t))}get position(){return this.#r.position}set position(e){this.#r.position=e,t.ScheduledRender.scheduleRender(this,this.#t)}get showConnector(){return this.#r.showConnector}set showConnector(e){this.#r.showConnector=e,t.ScheduledRender.scheduleRender(this,this.#t)}get showDivider(){return this.#r.showDivider}set showDivider(e){this.#r.showDivider=e,t.ScheduledRender.scheduleRender(this,this.#t)}get showSelectedItem(){return this.#r.showSelectedItem}set showSelectedItem(e){this.#r.showSelectedItem=e,t.ScheduledRender.scheduleRender(this,this.#t)}get horizontalAlignment(){return this.#r.horizontalAlignment}set horizontalAlignment(e){this.#r.horizontalAlignment=e,t.ScheduledRender.scheduleRender(this,this.#t)}get getConnectorCustomXPosition(){return this.#r.getConnectorCustomXPosition}set getConnectorCustomXPosition(e){this.#r.getConnectorCustomXPosition=e,t.ScheduledRender.scheduleRender(this,this.#t)}connectedCallback(){this.#e.adoptedStyleSheets=[r],l.write((()=>{t.SetCSSProperty.set(this,"--selected-item-check",`url(${a})`),t.SetCSSProperty.set(this,"--menu-checkmark-width",this.#r.showSelectedItem?"26px":"0px"),t.SetCSSProperty.set(this,"--menu-checkmark-height",this.#r.showSelectedItem?"12px":"0px");const e=this.showDivider?"1px var(--divider-line) solid":"none";t.SetCSSProperty.set(this,"--override-divider-line",e)}))}#i(){if(!this.#n)throw new Error("Dialog not found");return this.#n}async#d(){await l.write((()=>{this.setAttribute("has-open-dialog","has-open-dialog");const e=this.#e.querySelector("#container");e instanceof HTMLElement&&e.focus()}))}#l(){this.#a().focus()}#a(){const e=this.#e.querySelector("slot")?.assignedElements();let t=e[0];if(t instanceof HTMLSlotElement&&(t=t?.assignedElements()[0]),t instanceof u){const e=t.shadowRoot?.querySelector("slot");t=e?.assignedElements()[0]}if(t instanceof HTMLElement)return t;throw new Error("First item not found")}#h(e){const t=e.composedPath();if(e.stopPropagation(),t.find((e=>e instanceof HTMLInputElement)))return;const o=e.composedPath().find((e=>e instanceof c));o instanceof c&&this.#c(o)}#u(t){const o=t.key;t.stopImmediatePropagation();let n=t.target;const s=t.composedPath(),r="ArrowDown"===o||"ArrowRight"===o;return!this.#s&&r?(this.#l(),void(this.#s=!0)):this.#s||"ArrowUp"!==o?void((n instanceof c||(n=s.find((e=>e instanceof c)),n instanceof c))&&(e.KeyboardUtilities.keyIsArrowKey(o)?this.#p(o,n):"Home"===o?this.#m(n):"End"===o?this.#w():"Enter"===o||"Space"===t.code?this.#c(n):"Escape"===o&&(t.preventDefault(),this.#g()))):(this.#w(),void(this.#s=!0))}#c(e){""!==e.value&&(this.dispatchEvent(new p(e.value)),e.preventMenuCloseOnSelection||this.#g())}#p(e,t){let o=t;"ArrowDown"===e?(o=t.nextElementSibling,null===o&&t.parentElement instanceof u&&(o=this.#b(t))):"ArrowUp"===e&&(o=t.previousElementSibling,null===o&&t.parentElement instanceof u&&(o=this.#v(t))),o instanceof c&&o.focus()}#b(e){const t=e.parentElement;if(!(t instanceof u))return null;const o=t.nextElementSibling;if(o instanceof c)return o;if(!(o instanceof u))return null;for(const e of o.children)if(e instanceof c)return e;return null}#v(e){const t=e.parentElement;if(!(t instanceof u))return null;const o=t.previousElementSibling;return o instanceof c?o:o instanceof u&&o.lastElementChild instanceof c?o.lastElementChild:null}#m(e){let t=e;for(e.parentElement instanceof u&&(t=e.parentElement);t?.previousElementSibling;)t=t?.previousElementSibling;if(t instanceof c)t.focus();else for(const e of t.children)if(e instanceof c)return void e.focus()}#w(){const e=this.#a();let t=e;for(e.parentElement instanceof u&&(t=e.parentElement);t?.nextElementSibling;)t=t?.nextElementSibling;t instanceof c?t.focus():t instanceof u&&t.lastElementChild instanceof c&&t.lastElementChild.focus()}#g(e){e&&e.stopImmediatePropagation(),this.dispatchEvent(new m),this.#i().setDialogVisible(!1),this.#s=!1}async#o(){if(!t.ScheduledRender.isScheduledRender(this))throw new Error("Menu render was not scheduled");n.render(n.html` <${s.Dialog.Dialog.litTagName} @clickoutsidedialog="${this.#g}" @forceddialogclose="${this.#g}" .position="${this.position}" .showConnector="${this.showConnector}" .origin="${this.origin}" .dialogShownCallback="${this.#d.bind(this)}" .horizontalAlignment="${this.horizontalAlignment}" .getConnectorCustomXPosition="${this.getConnectorCustomXPosition}" on-render="${t.Directives.nodeRenderedCallback((e=>{this.#n=e}))}"> <span id="container" role="menu" tabIndex="0" @keydown="${this.#u}"> <slot @click="${this.#h}"> </slot> </span> </${s.Dialog.Dialog.litTagName}> `,this.#e,{host:this})}}class c extends HTMLElement{static litTagName=n.literal`devtools-menu-item`;#e=this.attachShadow({mode:"open"});#t=this.#o.bind(this);connectedCallback(){this.#e.adoptedStyleSheets=[d],this.tabIndex=0,this.setAttribute("role","menuitem")}#r={value:"",preventMenuCloseOnSelection:!1,selected:!1};get preventMenuCloseOnSelection(){return this.#r.preventMenuCloseOnSelection}set preventMenuCloseOnSelection(e){this.#r.preventMenuCloseOnSelection=e,t.ScheduledRender.scheduleRender(this,this.#t)}get value(){return this.#r.value}set value(e){this.#r.value=e,t.ScheduledRender.scheduleRender(this,this.#t)}get selected(){return this.#r.selected}set selected(e){this.#r.selected=e,t.ScheduledRender.scheduleRender(this,this.#t)}async#o(){if(!t.ScheduledRender.isScheduledRender(this))throw new Error("MenuItem render was not scheduled");n.render(n.html` <span class="${n.Directives.classMap({"menu-item":!0,"is-selected-item":this.selected,"prevents-close":this.preventMenuCloseOnSelection})}"> <slot></slot> </span> `,this.#e,{host:this})}}class u extends HTMLElement{static litTagName=n.literal`devtools-menu-group`;#e=this.attachShadow({mode:"open"});#t=this.#o.bind(this);connectedCallback(){this.#e.adoptedStyleSheets=[i]}#r={name:null};get name(){return this.#r.name}set name(e){this.#r.name=e,t.ScheduledRender.scheduleRender(this,this.#t)}async#o(){if(!t.ScheduledRender.isScheduledRender(this))throw new Error("MenuGroup render was not scheduled");n.render(n.html` <span class="menu-group"> <span class="menu-group-label">${this.name}</span> <slot></slot> </span> `,this.#e,{host:this})}}t.CustomElements.defineComponent("devtools-menu",h),t.CustomElements.defineComponent("devtools-menu-item",c),t.CustomElements.defineComponent("devtools-menu-group",u);class p extends Event{itemValue;static eventName="menuitemselected";constructor(e){super(p.eventName,{bubbles:!0,composed:!0}),this.itemValue=e}}class m extends Event{static eventName="menucloserequest";constructor(){super(m.eventName,{bubbles:!0,composed:!0})}}var w=Object.freeze({__proto__:null,Menu:h,MenuItem:c,MenuGroup:u,MenuItemSelectedEvent:p,MenuCloseRequest:m});const g=new CSSStyleSheet;g.replaceSync(":host{--override-transparent:rgb(0 0 0/0%);border:1px solid var(--color-input-outline);border-radius:3px;width:fit-content;display:flex;align-items:center;background-color:var(--override-select-menu-background-color,var(--color-background))}:host([has-open-dialog]){background-color:var(--override-select-menu-active-background-color,var(--color-background-elevation-2))}button{background:none}#side-button{border:1px solid var(--override-select-menu-border,var(--color-background-elevation-2));border-radius:3px 0 0 3px;border-right:none;height:100%;position:relative;padding:var(--override-select-button-padding)}button:disabled{cursor:not-allowed}@keyframes slideIn{from{transform:var(--translate-dialog);opacity:0%}to{transform:none;opacity:100%}}\n/*# sourceURL=selectMenu.css */\n");const b=new CSSStyleSheet;b.replaceSync(':host{height:100%;width:100%;display:block}.show{font-size:12px;color:var(--color-text-primary);height:100%;width:100%;border:none;border-radius:var(--override-select-menu-show-button-border-radius);padding:var(--override-select-menu-show-button-padding,1px 6px)}.show:focus-visible{outline:1px auto var(--override-select-menu-show-button-outline,-webkit-focus-ring-color)}#button-label-wrapper{display:flex;justify-content:space-around;align-items:center}#label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:fit-content;height:100%}#label[witharrow].single-arrow{padding:0}#label[witharrow]{padding:var(--override-select-menu-label-with-arrow-padding,0 10px 0 0);text-align:left}.single-arrow + span#arrow{margin:0}#arrow{mask-image:var(--deploy-menu-arrow);-webkit-mask-image:var(--deploy-menu-arrow);-webkit-mask-position-y:center;margin-left:5px;width:14px;flex-shrink:0;height:14px;display:inline-block;-webkit-mask-repeat:no-repeat;background-color:var(--override-throttling-icon-and-text-color,var(--override-select-menu-arrow-color,var(--color-text-primary)));transform:rotate(var(--arrow-angle));transform-origin:center;mask-repeat:no-repeat;transition:200ms}.single-arrow{border-radius:0 3px 3px 0;border:1px solid var(--override-select-menu-border,var(--color-background-elevation-2));height:100%;aspect-ratio:1/1;padding:0;display:flex;justify-content:center;align-items:center}button[aria-expanded="true"] #arrow{transform:rotate(calc(var(--arrow-angle) + 180deg))}button{background:none}button[disabled]{color:var(--color-input-outline-disabled)}\n/*# sourceURL=selectMenuButton.css */\n');const v=o.RenderCoordinator.RenderCoordinator.instance(),S=new URL("../../../Images/triangle-down.svg",import.meta.url).toString();class f extends HTMLElement{static litTagName=n.literal`devtools-select-menu`;#e=this.attachShadow({mode:"open"});#t=this.#o.bind(this);#S=null;#f=!1;#r={buttonTitle:"",position:"bottom",horizontalAlignment:"auto",showArrow:!1,showConnector:!1,sideButton:!1,showDivider:!1,disabled:!1,showSelectedItem:!0};get buttonTitle(){return this.#r.buttonTitle}set buttonTitle(e){this.#r.buttonTitle=e,t.ScheduledRender.scheduleRender(this,this.#t)}get position(){return this.#r.position}set position(e){this.#r.position=e,t.ScheduledRender.scheduleRender(this,this.#t)}get horizontalAlignment(){return this.#r.horizontalAlignment}set horizontalAlignment(e){this.#r.horizontalAlignment=e,t.ScheduledRender.scheduleRender(this,this.#t)}get showConnector(){return this.#r.showConnector}set showConnector(e){this.#r.showArrow||(this.#r.showArrow=e),this.#r.showConnector=e,t.ScheduledRender.scheduleRender(this,this.#t)}get showArrow(){return this.#r.showArrow}set showArrow(e){this.#r.showArrow=e,t.ScheduledRender.scheduleRender(this,this.#t)}get sideButton(){return this.#r.sideButton}set sideButton(e){this.#r.sideButton=e,t.ScheduledRender.scheduleRender(this,this.#t)}get disabled(){return this.#r.disabled}set disabled(e){this.#r.disabled=e,t.ScheduledRender.scheduleRender(this,this.#t)}get showDivider(){return this.#r.showDivider}set showDivider(e){this.#r.showDivider=e,t.ScheduledRender.scheduleRender(this,this.#t)}get showSelectedItem(){return this.#r.showSelectedItem}set showSelectedItem(e){this.#r.showSelectedItem=e,t.ScheduledRender.scheduleRender(this,this.#t)}connectedCallback(){this.#e.adoptedStyleSheets=[g]}#k(){if(!this.#S&&(this.#S=this.#e.querySelector("devtools-select-menu-button"),!this.#S))throw new Error("Arrow not found");return this.#S}#C(){this.#f=!0,this.setAttribute("has-open-dialog","has-open-dialog"),t.ScheduledRender.scheduleRender(this,this.#t)}click(){this.#k().click()}#y(){this.dispatchEvent(new y)}#R(){if(this.showConnector){const e=this.#k().getBoundingClientRect();return(e.left+e.right)/2}}#x(){return this.buttonTitle instanceof Function?this.buttonTitle():this.buttonTitle}#E(){const e=this.#x();return this.sideButton?n.html` <button id="side-button" @click="${this.#y}" ?disabled="${this.disabled}"> ${e} </button> <${k.litTagName} @click="${this.#C}" @selectmenubuttontrigger="${this.#C}" .singleArrow="${!0}" .open="${this.#f}" .showArrow="${!0}" .arrowDirection="${this.position}" .disabled="${this.disabled}"> </${k.litTagName}> `:n.html` <${k.litTagName} @selectmenubuttontrigger="${this.#C}" .open="${this.#f}" .showArrow="${this.showArrow}" .arrowDirection="${this.position}" .disabled="${this.disabled}"> ${e} </${k.litTagName}> `}#B(e){e&&e.stopImmediatePropagation(),v.write((()=>{this.removeAttribute("has-open-dialog")})),this.#f=!1,t.ScheduledRender.scheduleRender(this,this.#t)}#D(e){this.dispatchEvent(new C(e.itemValue))}async#o(){if(!t.ScheduledRender.isScheduledRender(this))throw new Error("SelectMenu render was not scheduled");n.render(n.html` <${h.litTagName} @menucloserequest="${this.#B}" @menuitemselected="${this.#D}" .position="${this.position}" .origin="${this}" .showConnector="${this.showConnector}" .showDivider="${this.showDivider}" .showSelectedItem="${this.showSelectedItem}" .open="${this.#f}" .getConnectorCustomXPosition="${this.#R.bind(this)}"> <slot> </slot> </${h.litTagName}> ${this.#E()} `,this.#e,{host:this})}}class k extends HTMLElement{static litTagName=n.literal`devtools-select-menu-button`;#e=this.attachShadow({mode:"open"});#t=this.#o.bind(this);#I=null;connectedCallback(){this.#e.adoptedStyleSheets=[b],t.SetCSSProperty.set(this,"--deploy-menu-arrow",`url(${S})`),v.write((()=>{switch(this.arrowDirection){case"auto":case"top":t.SetCSSProperty.set(this,"--arrow-angle","180deg");break;case"bottom":t.SetCSSProperty.set(this,"--arrow-angle","0deg");break;default:e.assertNever(this.arrowDirection,`Unknown position type: ${this.arrowDirection}`)}}))}#r={showArrow:!1,arrowDirection:"bottom",disabled:!1,singleArrow:!1};get showArrow(){return this.#r.showArrow}set showArrow(e){this.#r.showArrow=e,t.ScheduledRender.scheduleRender(this,this.#t)}get arrowDirection(){return this.#r.arrowDirection}set arrowDirection(e){this.#r.arrowDirection=e,t.ScheduledRender.scheduleRender(this,this.#t)}get disabled(){return this.#r.disabled}set disabled(e){this.#r.disabled=e,t.ScheduledRender.scheduleRender(this,this.#t)}set open(e){v.write((()=>{this.#$()?.setAttribute("aria-expanded",String(e))}))}set singleArrow(e){this.#r.singleArrow=e,t.ScheduledRender.scheduleRender(this,this.#t)}click(){this.#$()?.click()}#$(){return this.#I||(this.#I=this.#e.querySelector("button")),this.#I}#A(t){const o=t.key,n="bottom"===this.arrowDirection&&"ArrowDown"===o,s="top"===this.arrowDirection&&"ArrowUp"===o,r=o===e.KeyboardUtilities.ENTER_KEY,i="Space"===t.code;(n||s||r||i)&&(this.dispatchEvent(new R),t.preventDefault())}#M(){this.dispatchEvent(new R)}async#o(){if(!t.ScheduledRender.isScheduledRender(this))throw new Error("SelectMenuItem render was not scheduled");const e=this.#r.showArrow?n.html`<span id="arrow"></span>`:n.nothing,o={"single-arrow":this.#r.singleArrow},s=n.html` <span id="button-label-wrapper"> <span id="label" ?witharrow="${this.showArrow}" class="${n.Directives.classMap(o)}"><slot></slot></span> ${e} </span> `;n.render(n.html` <button aria-haspopup="true" aria-expanded="false" class="show" @keydown="${this.#A}" @click="${this.#M}" ?disabled="${this.disabled}">${s}</button> `,this.#e,{host:this})}}t.CustomElements.defineComponent("devtools-select-menu",f),t.CustomElements.defineComponent("devtools-select-menu-button",k);class C extends Event{itemValue;static eventName="selectmenuselected";constructor(e){super(C.eventName,{bubbles:!0,composed:!0}),this.itemValue=e}}class y extends Event{static eventName="selectmenusidebuttonclick";constructor(){super(y.eventName,{bubbles:!0,composed:!0})}}class R extends Event{static eventName="selectmenubuttontrigger";constructor(){super(R.eventName,{bubbles:!0,composed:!0})}}var x=Object.freeze({__proto__:null,SelectMenu:f,SelectMenuButton:k,SelectMenuItemSelectedEvent:C,SelectMenuSideButtonClickEvent:y,SelectMenuButtonTriggerEvent:R,SelectMenuGroup:u});export{w as Menu,x as SelectMenu};
@@ -0,0 +1 @@
1
+ import*as e from"../../lit-html/lit-html.js";import*as o from"../helpers/helpers.js";const s=new CSSStyleSheet;s.replaceSync(".node-label-name{color:var(--override-node-text-label-color,var(--color-token-tag))}.node-label-class{color:var(--override-node-text-class-color,var(--color-token-attribute))}.node-label-id{color:var(--override-node-text-id-color,var(--color-token-attribute))}.node-label-class.node-multiple-descriptors{color:var(--override-node-text-multiple-descriptors-class,var(--override-node-text-class-color,var(--color-token-attribute)))}.node-label-id.node-multiple-descriptors{color:var(--override-node-text-multiple-descriptors-id,var(--override-node-text-id-color,var(--color-token-attribute)))}\n/*# sourceURL=nodeText.css */\n");const{render:t,html:l}=e;class d extends HTMLElement{static litTagName=e.literal`devtools-node-text`;#e=this.attachShadow({mode:"open"});#o="";#s="";#t=[];connectedCallback(){this.#e.adoptedStyleSheets=[s]}set data(e){this.#o=e.nodeTitle,this.#s=e.nodeId,this.#t=e.nodeClasses,this.#l()}#l(){const o=Boolean(this.#s),s=Boolean(this.#t&&this.#t.length>0),d=[l`<span class="node-label-name">${this.#o}</span>`];if(this.#s){const o=e.Directives.classMap({"node-label-id":!0,"node-multiple-descriptors":s});d.push(l`<span class="${o}">#${CSS.escape(this.#s)}</span>`)}if(this.#t&&this.#t.length>0){const s=this.#t.map((e=>`.${CSS.escape(e)}`)).join(""),t=e.Directives.classMap({"node-label-class":!0,"node-multiple-descriptors":o});d.push(l`<span class="${t}">${s}</span>`)}t(l` ${d} `,this.#e,{host:this})}}o.CustomElements.defineComponent("devtools-node-text",d);var a=Object.freeze({__proto__:null,NodeText:d});export{a as NodeText};
@@ -0,0 +1 @@
1
+ import*as e from"../../../core/host/host.js";import*as t from"../../../core/i18n/i18n.js";import*as i from"../../../core/platform/platform.js";import*as n from"../helpers/helpers.js";import*as r from"../../lit-html/lit-html.js";import*as o from"../buttons/buttons.js";import*as a from"../icon_button/icon_button.js";import*as s from"../../../core/root/root.js";import*as l from"../input/input.js";const d={feedback:"Feedback"},c=t.i18n.registerUIStrings("ui/components/panel_feedback/FeedbackButton.ts",d),h=t.i18n.getLocalizedString.bind(void 0,c),p=new URL("../../../Images/review.svg",import.meta.url).toString();class m extends HTMLElement{static litTagName=r.literal`devtools-feedback-button`;#e=this.attachShadow({mode:"open"});#t=this.#i.bind(this);#n={feedbackUrl:i.DevToolsPath.EmptyUrlString};set data(e){this.#n=e,n.ScheduledRender.scheduleRender(this,this.#t)}#r(){e.InspectorFrontendHost.InspectorFrontendHostInstance.openInNewTab(this.#n.feedbackUrl)}#i(){if(!n.ScheduledRender.isScheduledRender(this))throw new Error("FeedbackButton render was not scheduled");r.render(r.html` <${o.Button.Button.litTagName} @click="${this.#r}" .iconUrl="${p}" .variant="${"secondary"}">${h(d.feedback)}</${o.Button.Button.litTagName}> `,this.#e,{host:this})}}n.CustomElements.defineComponent("devtools-feedback-button",m);var k=Object.freeze({__proto__:null,FeedbackButton:m});const x=new CSSStyleSheet;x.replaceSync(":host{display:block}.preview{padding:12px 16px;border:1px solid var(--color-details-hairline);color:var(--color-text-primary);font-size:13px;line-height:20px;border-radius:12px;margin:42px 0;letter-spacing:0.01em}h2{color:var(--color-primary-old);font-size:13px;line-height:20px;letter-spacing:0.01em;margin:9px 0 14px;display:flex;align-items:center;gap:5px;font-weight:normal}h3{font-size:13px;line-height:20px;letter-spacing:0.04em;color:var(--color-text-primary);margin-bottom:2px;font-weight:normal}.preview p{margin-bottom:24px}.thumbnail{height:92px}.video{display:flex;flex-flow:row wrap;gap:20px}x-link{color:var(--color-primary-old);text-decoration-line:underline}x-link.quick-start-link{font-size:14px;line-height:22px;letter-spacing:0.04em}.video-description{min-width:min-content;flex-basis:min-content;flex-grow:1}@media (forced-colors: active){x-link{color:linktext}}\n/*# sourceURL=panelFeedback.css */\n");const b={previewText:"Our team is actively working on this feature and we would love to know what you think.",previewTextFeedbackLink:"Send us your feedback.",previewFeature:"Preview feature",videoAndDocumentation:"Video and documentation"},g=t.i18n.registerUIStrings("ui/components/panel_feedback/PanelFeedback.ts",b),v=t.i18n.getLocalizedString.bind(void 0,g),u=new URL("../../../Images/experiment.svg",import.meta.url).toString(),f=new URL("../../../Images/preview_feature_video_thumbnail.svg",import.meta.url).toString();class w extends HTMLElement{static litTagName=r.literal`devtools-panel-feedback`;#e=this.attachShadow({mode:"open"});#t=this.#i.bind(this);#n={feedbackUrl:i.DevToolsPath.EmptyUrlString,quickStartUrl:i.DevToolsPath.EmptyUrlString,quickStartLinkText:""};connectedCallback(){this.#e.adoptedStyleSheets=[x]}set data(e){this.#n=e,n.ScheduledRender.scheduleRender(this,this.#t)}#i(){if(!n.ScheduledRender.isScheduledRender(this))throw new Error("PanelFeedback render was not scheduled");r.render(r.html` <div class="preview"> <h2 class="flex"> <${a.Icon.Icon.litTagName} .data="${{iconPath:u,width:"20px",height:"20px",color:"var(--icon-primary)"}}"></${a.Icon.Icon.litTagName}> ${v(b.previewFeature)} </h2> <p>${v(b.previewText)} <x-link href="${this.#n.feedbackUrl}">${v(b.previewTextFeedbackLink)}</x-link></p> <div class="video"> <div class="thumbnail"> <img src="${f}" role="presentation"> </div> <div class="video-description"> <h3>${v(b.videoAndDocumentation)}</h3> <x-link class="quick-start-link" href="${this.#n.quickStartUrl}">${this.#n.quickStartLinkText}</x-link> </div> </div> </div> `,this.#e,{host:this})}}n.CustomElements.defineComponent("devtools-panel-feedback",w);var S=Object.freeze({__proto__:null,PanelFeedback:w});const L=new CSSStyleSheet;L.replaceSync(":host{display:block}.container{display:flex;flex-wrap:wrap;padding:4px}.experiment-preview,\n.feedback,\n.learn-more{display:flex;align-items:center}.helper{flex-basis:100%;text-align:center;font-style:italic}.spacer{flex:1}.x-link{color:var(--color-primary-old);text-decoration-line:underline;margin:0 4px}.feedback .x-link{color:var(--color-text-secondary)}\n/*# sourceURL=previewToggle.css */\n");const{render:T,html:$,nothing:R}=r,y={previewTextFeedbackLink:"Send us your feedback.",shortFeedbackLink:"Send feedback",learnMoreLink:"Learn More"},U=t.i18n.registerUIStrings("ui/components/panel_feedback/PreviewToggle.ts",y),C=t.i18n.getLocalizedString.bind(void 0,U);class F extends HTMLElement{static litTagName=r.literal`devtools-preview-toggle`;#e=this.attachShadow({mode:"open"});#o="";#a=null;#s=null;#l;#d="";#c;connectedCallback(){this.#e.adoptedStyleSheets=[l.checkboxStyles,L]}set data(e){this.#o=e.name,this.#a=e.helperText,this.#s=e.feedbackURL,this.#l=e.learnMoreURL,this.#d=e.experiment,this.#c=e.onChangeCallback,this.#i()}#i(){const e=s.Runtime.experiments.isEnabled(this.#d);T($` <div class="container"> <label class="experiment-preview"> <input type="checkbox" ?checked="${e}" @change="${this.#h}" aria-label="${this.#o}/"> <${a.Icon.Icon.litTagName} .data="${{iconName:"experiment",width:"16px",height:"16px",color:"var(--icon-default)"}}"> </${a.Icon.Icon.litTagName}>${this.#o} </label> <div class="spacer"></div> ${this.#s&&!this.#a?$`<div class="feedback"><x-link class="x-link" href="${this.#s}">${C(y.shortFeedbackLink)}</x-link></div>`:R} ${this.#l?$`<div class="learn-more"><x-link class="x-link" href="${this.#l}">${C(y.learnMoreLink)}</x-link></div>`:R} <div class="helper"> ${this.#a&&this.#s?$`<p>${this.#a} <x-link class="x-link" href="${this.#s}">${C(y.previewTextFeedbackLink)}</x-link>`:R} </div> </div>`,this.#e,{host:this})}#h(e){const t=e.target.checked;s.Runtime.experiments.setEnabled(this.#d,t),this.#c?.(t)}}n.CustomElements.defineComponent("devtools-preview-toggle",F);var _=Object.freeze({__proto__:null,PreviewToggle:F});export{k as FeedbackButton,S as PanelFeedback,_ as PreviewToggle};
@@ -0,0 +1 @@
1
+ import*as e from"../helpers/helpers.js";import*as t from"../../lit-html/lit-html.js";const o=new CSSStyleSheet;o.replaceSync(":host{display:block}h1{font-weight:normal;font-size:18px;line-height:28px;padding:0;margin-top:0;color:var(--color-text-primary)}.intro-steps{counter-reset:custom-counter;list-style:none;margin:16px 0 30px 30px;padding:0}.intro-steps li{color:var(--color-text-primary);counter-increment:custom-counter;font-size:13px;letter-spacing:0.03em;line-height:1.54;margin-bottom:9px;position:relative}.intro-steps li::before{--override-color-counter-background:rgba(26 115 232/25%);box-sizing:border-box;background:var(--override-color-counter-background);border-radius:50%;color:var(--color-primary-old);content:counter(custom-counter);font-size:12px;height:18px;left:-30px;line-height:20px;position:absolute;text-align:center;top:0;width:18px;display:flex;align-items:center;justify-content:center}\n/*# sourceURL=panelIntroductionSteps.css */\n");class n extends HTMLElement{static litTagName=t.literal`devtools-panel-introduction-steps`;#e=this.attachShadow({mode:"open"});#t=this.#o.bind(this);connectedCallback(){this.#e.adoptedStyleSheets=[o],e.ScheduledRender.scheduleRender(this,this.#t)}#o(){if(!e.ScheduledRender.isScheduledRender(this))throw new Error("FeedbackButton render was not scheduled");t.render(t.html` <h1><slot name="title">slot: title</slot></h1> <ol class="intro-steps"> <li><slot name="step-1">slot: step-1</slot></li> <li><slot name="step-2">slot: step-2</slot></li> <li><slot name="step-3">slot: step-3</slot></li> </ol> `,this.#e,{host:this})}}e.CustomElements.defineComponent("devtools-panel-introduction-steps",n);var s=Object.freeze({__proto__:null,PanelIntroductionSteps:n});export{s as PanelIntroductionSteps};
@@ -0,0 +1 @@
1
+ class e extends Event{static eventName="renderqueueempty";constructor(){super(e.eventName)}}class r extends Event{static eventName="newframe";constructor(){super(r.eventName)}}let t;const n="Unnamed read",s="Unnamed write",o="Unnamed scroll";globalThis.__getRenderCoordinatorPendingFrames=function(){return i.pendingFramesCount()};class i extends EventTarget{static instance({forceNew:e=!1}={}){return t&&!e||(t=new i),t}static pendingFramesCount(){if(!t)throw new Error("No render coordinator instance found.");return t.pendingFramesCount()}observe=!1;recordStorageLimit=100;observeOnlyNamed=!0;#e=[];#r=[];#t=0;pendingFramesCount(){return this.#r.length}done(e){return 0!==this.#r.length||e?.waitForWork?new Promise((e=>this.addEventListener("renderqueueempty",(()=>e()),{once:!0}))):(this.#n("[Queue empty]"),Promise.resolve())}async read(e,r){if("string"==typeof e){if(!r)throw new Error("Read called with label but no callback");return this.#s(r,"read",e)}return this.#s(e,"read",n)}async write(e,r){if("string"==typeof e){if(!r)throw new Error("Write called with label but no callback");return this.#s(r,"write",e)}return this.#s(e,"write",s)}takeRecords(){const e=[...this.#e];return this.#e.length=0,e}async scroll(e,r){if("string"==typeof e){if(!r)throw new Error("Scroll called with label but no callback");return this.#s(r,"read",e)}return this.#s(e,"read",o)}#s(e,r,t){const i=![n,s,o].includes(t);t=`${"read"===r?"[Read]":"[Write]"}: ${t}`,0===this.#r.length&&this.#r.push({readers:[],writers:[]});const a=this.#r[0];if(!a)throw new Error("No frame available");let l=null;switch(r){case"read":l=a.readers;break;case"write":l=a.writers;break;default:throw new Error(`Unknown action: ${r}`)}let d=i?l.find((e=>e.label===t)):null;if(!d){const e={label:t};e.promise=new Promise(((r,t)=>{e.trigger=r,e.cancel=t})).then((()=>e.handler())),d=e,l.push(d)}return d.handler=e,this.#o(),d.promise}#o(){0!==this.#t||(this.#t=requestAnimationFrame((async()=>{if(!(this.#r.length>0))return this.dispatchEvent(new e),window.dispatchEvent(new e),this.#n("[Queue empty]"),void(this.#t=0);this.dispatchEvent(new r),this.#n("[New frame]");const t=this.#r.shift();if(t){for(const e of t.readers)this.#n(e.label),e.trigger();try{await Promise.race([Promise.all(t.readers.map((e=>e.promise))),new Promise(((e,r)=>{window.setTimeout((()=>r(new Error("Readers took over 1500ms. Possible deadlock?"))),1500)}))])}catch(e){this.#i(t.readers,e)}for(const e of t.writers)this.#n(e.label),e.trigger();try{await Promise.race([Promise.all(t.writers.map((e=>e.promise))),new Promise(((e,r)=>{window.setTimeout((()=>r(new Error("Writers took over 1500ms. Possible deadlock?"))),1500)}))])}catch(e){this.#i(t.writers,e)}this.#t=0,this.#o()}})))}#i(e,r){for(const t of e)t.cancel(r)}cancelPending(){const e=new Error;for(const r of this.#r)this.#i(r.readers,e),this.#i(r.writers,e)}#n(e){if(!this.observe||!e)return;if(!(e.endsWith(n)||e.endsWith(s)||e.endsWith(o))||!this.observeOnlyNamed)for(this.#e.push({time:performance.now(),value:e});this.#e.length>this.recordStorageLimit;)this.#e.shift()}}var a=Object.freeze({__proto__:null,RenderCoordinatorQueueEmptyEvent:e,RenderCoordinatorNewFrameEvent:r,RenderCoordinator:i});export{a as RenderCoordinator};
@@ -0,0 +1 @@
1
+ import*as e from"../helpers/helpers.js";import*as t from"../../lit-html/lit-html.js";const o=new CSSStyleSheet;o.replaceSync(":host{display:block}.content{background-color:var(--color-background);display:grid;grid-template-columns:min-content 1fr;user-select:text}.report-title{padding:12px 24px;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-bottom:1px solid var(--color-details-hairline);color:var(--color-text-primary);background-color:var(--color-background);grid-column-start:span 2}\n/*# sourceURL=report.css */\n");const r=new CSSStyleSheet;r.replaceSync(":host{line-height:28px;margin:0 0 8px}.key{color:var(--color-text-secondary);padding:0 6px;text-align:right;white-space:pre}\n/*# sourceURL=reportKey.css */\n");const s=new CSSStyleSheet;s.replaceSync(":host{grid-column-start:span 2}.section{padding:12px;margin-left:18px;display:flex;flex-direction:row;align-items:center;flex:auto;overflow-wrap:break-word;overflow:hidden}\n/*# sourceURL=reportSection.css */\n");const l=new CSSStyleSheet;l.replaceSync(":host{grid-column-start:span 2}.section-divider{border-bottom:1px solid var(--color-details-hairline)}\n/*# sourceURL=reportSectionDivider.css */\n");const i=new CSSStyleSheet;i.replaceSync(":host{grid-column-start:span 2}.section-header{padding:12px;margin-left:18px;display:flex;flex-direction:row;align-items:center;flex:auto;text-overflow:ellipsis;overflow:hidden;font-weight:bold;color:var(--color-text-primary)}\n/*# sourceURL=reportSectionHeader.css */\n");const n=new CSSStyleSheet;n.replaceSync(":host{line-height:28px;margin:0 0 8px;min-width:150px}.value{color:var(--color-text-primary);margin-inline-start:0;padding:0 6px;overflow-wrap:break-word}\n/*# sourceURL=reportValue.css */\n");class a extends HTMLElement{static litTagName=t.literal`devtools-report`;#e=this.attachShadow({mode:"open"});#t="";set data({reportTitle:e}){this.#t=e,this.#o()}connectedCallback(){this.#e.adoptedStyleSheets=[o],this.#o()}#o(){t.render(t.html` <div class="content"> ${this.#t?t.html`<div class="report-title">${this.#t}</div>`:t.nothing} <slot></slot> </div> `,this.#e,{host:this})}}class d extends HTMLElement{static litTagName=t.literal`devtools-report-section`;#e=this.attachShadow({mode:"open"});connectedCallback(){this.#e.adoptedStyleSheets=[s],this.#o()}#o(){t.render(t.html` <div class="section"> <slot></slot> </div> `,this.#e,{host:this})}}class c extends HTMLElement{static litTagName=t.literal`devtools-report-section-header`;#e=this.attachShadow({mode:"open"});connectedCallback(){this.#e.adoptedStyleSheets=[i],this.#o()}#o(){t.render(t.html` <div class="section-header"> <slot></slot> </div> `,this.#e,{host:this})}}class h extends HTMLElement{static litTagName=t.literal`devtools-report-divider`;#e=this.attachShadow({mode:"open"});connectedCallback(){this.#e.adoptedStyleSheets=[l],this.#o()}#o(){t.render(t.html` <div class="section-divider"> </div> `,this.#e,{host:this})}}class p extends HTMLElement{static litTagName=t.literal`devtools-report-key`;#e=this.attachShadow({mode:"open"});connectedCallback(){this.#e.adoptedStyleSheets=[r],this.#o()}#o(){t.render(t.html` <div class="key"><slot></slot></div> `,this.#e,{host:this})}}class m extends HTMLElement{static litTagName=t.literal`devtools-report-value`;#e=this.attachShadow({mode:"open"});connectedCallback(){this.#e.adoptedStyleSheets=[n],this.#o()}#o(){t.render(t.html` <div class="value"><slot></slot></div> `,this.#e,{host:this})}}e.CustomElements.defineComponent("devtools-report",a),e.CustomElements.defineComponent("devtools-report-section",d),e.CustomElements.defineComponent("devtools-report-section-header",c),e.CustomElements.defineComponent("devtools-report-key",p),e.CustomElements.defineComponent("devtools-report-value",m),e.CustomElements.defineComponent("devtools-report-divider",h);var S=Object.freeze({__proto__:null,Report:a,ReportSection:d,ReportSectionHeader:c,ReportSectionDivider:h,ReportKey:p,ReportValue:m});export{S as ReportView};
@@ -0,0 +1 @@
1
+ import*as e from"../../../core/root/root.js";import*as t from"../../../core/i18n/i18n.js";import*as i from"../../../core/common/common.js";import*as r from"../../../panels/network/forward/forward.js";import*as s from"../helpers/helpers.js";import*as o from"../icon_button/icon_button.js";import*as n from"../../lit-html/lit-html.js";import*as a from"../render_coordinator/render_coordinator.js";const l=new CSSStyleSheet;l.replaceSync(":host{display:inline-block;white-space:nowrap;color:inherit;font-size:inherit;font-family:inherit}devtools-icon{vertical-align:middle}.link{cursor:pointer}.link span{color:var(--color-link)}\n/*# sourceURL=requestLinkIcon.css */\n");const h={clickToShowRequestInTheNetwork:"Click to open the network panel and show request for URL: {url}",requestUnavailableInTheNetwork:"Request unavailable in the network panel, try reloading the inspected page",shortenedURL:"Shortened URL"},c=t.i18n.registerUIStrings("ui/components/request_link_icon/RequestLinkIcon.ts",h),d=t.i18n.getLocalizedString.bind(void 0,c),u=e=>(/[^/]+$/.exec(e)||/[^/]+\/$/.exec(e)||[""])[0],q=a.RenderCoordinator.RenderCoordinator.instance();class R extends HTMLElement{static litTagName=n.literal`devtools-request-link-icon`;#e=this.attachShadow({mode:"open"});#t;#i;#r;#s;#o=!1;#n;#a;#l;#h=i.Revealer.reveal;#c=Promise.resolve(void 0);set data(e){this.#t=e.linkToPreflight,this.#i=e.request,e.affectedRequest&&(this.#a={...e.affectedRequest}),this.#r=e.highlightHeader,this.#n=e.networkTab,this.#s=e.requestResolver,this.#o=e.displayURL??!1,this.#l=e.additionalOnClickAction,e.revealOverride&&(this.#h=e.revealOverride),!this.#i&&e.affectedRequest&&(this.#c=this.#d(e.affectedRequest.requestId)),this.#u()}connectedCallback(){this.#e.adoptedStyleSheets=[l]}#d(e){if(!this.#s)throw new Error("A `RequestResolver` must be provided if an `affectedRequest` is provided.");return this.#s.waitFor(e).then((e=>{this.#i=e})).catch((()=>{this.#i=null}))}get data(){return{linkToPreflight:this.#t,request:this.#i,affectedRequest:this.#a,highlightHeader:this.#r,networkTab:this.#n,requestResolver:this.#s,displayURL:this.#o,additionalOnClickAction:this.#l,revealOverride:this.#h!==i.Revealer.reveal?this.#h:void 0}}#q(){return this.#i?"--icon-link":"--icon-no-request"}iconData(){return{iconName:"arrow-up-down-circle",color:`var(${this.#q()})`,width:"16px",height:"16px"}}handleClick(t){if(0!==t.button)return;const i=this.#t?this.#i?.preflightRequest():this.#i;if(i){if(this.#r){const e=r.UIRequestLocation.UIRequestLocation.header(i,this.#r.section,this.#r.name);this.#h(e)}else{const t=e.Runtime.experiments.isEnabled(e.Runtime.ExperimentName.HEADER_OVERRIDES)?r.UIRequestLocation.UIRequestTabs.HeadersComponent:r.UIRequestLocation.UIRequestTabs.Headers,s=r.UIRequestLocation.UIRequestLocation.tab(i,this.#n??t);this.#h(s)}this.#l?.()}}#R(){return this.#i?d(h.clickToShowRequestInTheNetwork,{url:this.#i.url()}):d(h.requestUnavailableInTheNetwork)}#p(){return this.#i?this.#i.url():this.#a?.url}#m(){if(!this.#o)return n.nothing;const e=this.#p();if(!e)return n.nothing;const t=u(e);return n.html`<span aria-label="${d(h.shortenedURL)}" title="${e}">${t}</span>`}#u(){return q.write((()=>{n.render(n.html` ${n.Directives.until(this.#c.then((()=>this.#f())),this.#f())} `,this.#e,{host:this})}))}#f(){return n.html` <span class="${n.Directives.classMap({link:Boolean(this.#i)})}" tabindex="0" @click="${this.handleClick}"> <${o.Icon.Icon.litTagName} .data="${this.iconData()}" title="${this.#R()}"></${o.Icon.Icon.litTagName}> ${this.#m()} </span>`}}s.CustomElements.defineComponent("devtools-request-link-icon",R);var p=Object.freeze({__proto__:null,extractShortPath:u,RequestLinkIcon:R});export{p as RequestLinkIcon};
@@ -0,0 +1 @@
1
+ import*as e from"../helpers/helpers.js";import*as t from"../../lit-html/lit-html.js";import*as i from"../input/input.js";import*as n from"../../../core/common/common.js";import*as s from"../icon_button/icon_button.js";const a=new CSSStyleSheet;a.replaceSync(":host{padding:0;margin:0}input{height:12px;width:12px;min-height:12px;min-width:12px}label{display:inline-flex;align-items:center;overflow:hidden;text-overflow:ellipsis}p{margin:12px 0}\n/*# sourceURL=settingCheckbox.css */\n");const o=new CSSStyleSheet;o.replaceSync(".clickable{cursor:pointer}devtools-icon{vertical-align:text-bottom;padding-left:2px}\n/*# sourceURL=settingDeprecationWarning.css */\n");class r extends HTMLElement{static litTagName=t.literal`devtools-setting-deprecation-warning`;#e=this.attachShadow({mode:"open"});connectedCallback(){this.#e.adoptedStyleSheets=[o]}set data(e){this.#t(e)}#t({disabled:e,warning:i,experiment:a}){const o={clickable:!1};let r;e&&a&&(o.clickable=!0,r=()=>{n.Revealer.reveal(a)}),t.render(t.html`<${s.Icon.Icon.litTagName} class="${t.Directives.classMap(o)}" .data="${{iconName:"info",color:"var(--icon-default)",width:"16px"}}" title="${i}" @click="${r}"></${s.Icon.Icon.litTagName}>`,this.#e,{host:this})}}e.CustomElements.defineComponent("devtools-setting-deprecation-warning",r);var c=Object.freeze({__proto__:null,SettingDeprecationWarning:r});class l extends HTMLElement{static litTagName=t.literal`setting-checkbox`;#e=this.attachShadow({mode:"open"});#i;#n=!1;#s;connectedCallback(){this.#e.adoptedStyleSheets=[i.checkboxStyles,a]}set data(e){this.#s&&this.#i&&this.#i.removeChangeListener(this.#s.listener),this.#i=e.setting,this.#n=Boolean(e.disabled),this.#s=this.#i.addChangeListener((()=>{this.#t()})),this.#t()}#a(){if(this.#i?.deprecation)return t.html`<${r.litTagName} .data="${this.#i.deprecation}"></${r.litTagName}>`}#t(){if(!this.#i)throw new Error('No "Setting" object provided for rendering');const e=this.#a();t.render(t.html` <p> <label> <input type="checkbox" .checked="${this.#i.get()}" ?disabled="${this.#n||this.#i.disabled()}" @change="${this.#o}" aria-label="${this.#i.title()}"> ${this.#i.title()}${e} </label> `,this.#e,{host:this})}#o(e){this.#i?.set(e.target.checked)}}e.CustomElements.defineComponent("setting-checkbox",l);var h=Object.freeze({__proto__:null,SettingCheckbox:l});export{h as SettingCheckbox,c as SettingDeprecationWarning};
@@ -0,0 +1 @@
1
+ import*as e from"../../../core/common/common.js";import*as t from"../helpers/helpers.js";import*as o from"../render_coordinator/render_coordinator.js";import*as r from"../../lit-html/lit-html.js";const s=new CSSStyleSheet;s.replaceSync(":host{position:absolute;left:0;top:0;width:100%;height:100%}.gamut-line{stroke:rgb(255 255 255/50%);fill:none}.label{position:absolute;bottom:3px;margin-right:5px;color:rgb(255 255 255/50%)}\n/*# sourceURL=srgbOverlay.css */\n");const n=o.RenderCoordinator.RenderCoordinator.instance();function l(t){const o=[0,0,0,0];e.Color.hsva2rgba([...t,1],o);const r=e.ColorConverter.ColorConverter.displayP3ToXyzd50(o[0],o[1],o[2]);return e.ColorConverter.ColorConverter.xyzd50ToSrgb(r[0],r[1],r[2]).every((e=>e+.001>=0&&e-.001<=1))}class i extends HTMLElement{static litTagName=r.literal`devtools-spectrum-srgb-overlay`;#e=this.attachShadow({mode:"open"});constructor(){super(),this.#e.adoptedStyleSheets=[s]}#t({hue:e,width:t,height:o}){if(0===t||0===o)return null;const r=1/window.devicePixelRatio,s=[];let n=0;for(let i=0;i<o;i+=r){const a=1-i/o;for(;n<t;n+=r){if(!l([e,n/t,a])){s.push({x:n,y:i});break}}}if(0===s.length)return null;const i=s[s.length-1];return i.x<t&&s.push({y:i.y,x:t}),s}#o(e,t){let o=1/0,r=null;for(const s of e)Math.abs(t-s.y)<=o&&(o=Math.abs(t-s.y),r=s);return r}render({hue:e,width:t,height:o}){return n.write("Srgb Overlay render",(()=>{const s=this.#t({hue:e,width:t,height:o});if(!s||0===s.length)return;const n=this.#o(s,o-13);n&&r.render(r.html` <span class="label" style="right: ${t-n.x}px">sRGB</span> <svg> <polyline points="${s.map((e=>`${e.x.toFixed(2)},${e.y.toFixed(2)}`)).join(" ")}" class="gamut-line"/> </svg> `,this.#e,{host:this})}))}}t.CustomElements.defineComponent("devtools-spectrum-srgb-overlay",i);var a=Object.freeze({__proto__:null,SrgbOverlay:i});export{a as SrgbOverlay};
@@ -0,0 +1 @@
1
+ import*as e from"../../../core/common/common.js";import*as t from"../../lit-html/lit-html.js";import*as i from"../../../core/i18n/i18n.js";import*as n from"../helpers/helpers.js";import*as o from"../icon_button/icon_button.js";const r=new CSSStyleSheet;r.replaceSync(".link-icon{vertical-align:sub;margin-right:0.5ch}.link{padding:var(--issue-link-padding,4px 0 0 0);text-decoration:var(--issue-link-text-decoration,underline);cursor:pointer;font-size:var(--issue-link-font-size,14px);color:var(--color-link);outline-offset:2px;border:none;background:none;font-family:inherit}.link:focus:not(:focus-visible){outline:none}.pending-link{opacity:75%;pointer-events:none;cursor:default;text-decoration:none}.disabled-link{pointer-events:none;cursor:default;text-decoration:none}\n/*# sourceURL=surveyLink.css */\n");const s={openingSurvey:"Opening survey …",thankYouForYourFeedback:"Thank you for your feedback",anErrorOccurredWithTheSurvey:"An error occurred with the survey"},a=i.i18n.registerUIStrings("ui/components/survey_link/SurveyLink.ts",s),h=i.i18n.getLocalizedString.bind(void 0,a);class c extends HTMLElement{static litTagName=t.literal`devtools-survey-link`;#e=this.attachShadow({mode:"open"});#t="";#i=e.UIString.LocalizedEmptyString;#n=()=>{};#o=()=>{};#r="Checking";connectedCallback(){this.#e.adoptedStyleSheets=[r]}set data(e){this.#t=e.trigger,this.#i=e.promptText,this.#n=e.canShowSurvey,this.#o=e.showSurvey,this.#s()}#s(){this.#r="Checking",this.#n(this.#t,(({canShowSurvey:e})=>{this.#r=e?"ShowLink":"DontShowLink",this.#a()}))}#h(){this.#r="Sending",this.#a(),this.#o(this.#t,(({surveyShown:e})=>{this.#r=e?"SurveyShown":"Failed",this.#a()}))}#a(){if("Checking"===this.#r||"DontShowLink"===this.#r)return;let e=this.#i;"Sending"===this.#r?e=h(s.openingSurvey):"SurveyShown"===this.#r?e=h(s.thankYouForYourFeedback):"Failed"===this.#r&&(e=h(s.anErrorOccurredWithTheSurvey));let i="";"Sending"===this.#r?i="pending-link":"Failed"!==this.#r&&"SurveyShown"!==this.#r||(i="disabled-link");const n="ShowLink"!==this.#r,r=t.html` <button class="link ${i}" tabindex="${n?"-1":"0"}" .disabled="${n}" aria-disabled="${n}" @click="${this.#h}"> <${o.Icon.Icon.litTagName} class="link-icon" .data="${{iconName:"review",color:"var(--color-link)",width:"var(--issue-link-icon-size, 16px)",height:"var(--issue-link-icon-size, 16px)"}}"></${o.Icon.Icon.litTagName}>${e} </button> `;t.render(r,this.#e,{host:this})}}n.CustomElements.defineComponent("devtools-survey-link",c);var l=Object.freeze({__proto__:null,SurveyLink:c});export{l as SurveyLink};
@@ -0,0 +1 @@
1
+ import*as t from"../../../core/common/common.js";import*as e from"../../../core/i18n/i18n.js";import*as o from"../../../services/window_bounds/window_bounds.js";import*as n from"../../../third_party/codemirror.next/codemirror.next.js";import*as r from"../../legacy/legacy.js";import*as i from"../code_highlighter/code_highlighter.js";import*as s from"../icon_button/icon_button.js";import*as a from"../../../core/root/root.js";import*as c from"../../../core/sdk/sdk.js";import*as l from"../../../models/bindings/bindings.js";import*as d from"../../../models/javascript_metadata/javascript_metadata.js";import*as u from"../../../models/source_map_scopes/source_map_scopes.js";import*as m from"../../legacy/theme_support/theme_support.js";import*as p from"../../lit-html/lit-html.js";import*as h from"../helpers/helpers.js";class f{static#t=300;#e;#o=[];#n=1;#r=!1;constructor(t){this.#e=t,this.#o=this.#e.get()}clear(){this.#o=[],this.#e.set([]),this.#n=1}pushHistoryItem(t){this.#r&&(this.#o.pop(),this.#r=!1),this.#n=1,t!==this.#i()&&this.#o.push(t),this.#s()}#a(t){this.#r&&this.#o.pop(),this.#r=!0,this.#o.push(t)}previous(t){if(!(this.#n>this.#o.length))return 1===this.#n&&this.#a(t),++this.#n,this.#i()}next(){if(1!==this.#n)return--this.#n,this.#i()}matchingEntries(t,e=50){const o=new Set;for(let n=this.#o.length-1;n>=0&&o.size<e;--n){const e=this.#o[n];e.startsWith(t)&&o.add(e)}return o}#i(){return this.#o[this.#o.length-this.#n]}#s(){this.#e.set(this.#o.slice(-f.#t))}}var g=Object.freeze({__proto__:null,AutocompleteHistory:f});const b=n.EditorView.theme({"&.cm-editor":{color:"color: var(--color-text-primary)",cursor:"auto","&.cm-focused":{outline:"none"}},".cm-scroller":{lineHeight:"1.2em",fontFamily:"var(--source-code-font-family)",fontSize:"var(--source-code-font-size)"},".cm-panels":{backgroundColor:"var(--color-background-elevation-1)"},".cm-selectionMatch":{backgroundColor:"var(--color-selection-highlight)"},".cm-cursor":{borderLeft:"1px solid var(--color-background-inverted)"},"&.cm-readonly .cm-cursor":{display:"none"},".cm-cursor-secondary":{borderLeft:"1px solid var(--color-secondary-cursor)"},".cm-selectionBackground":{background:"var(--color-editor-selection)"},"&.cm-focused .cm-selectionBackground":{background:"var(--color-editor-selection)"},".cm-gutters":{borderRight:"1px solid var(--color-details-hairline)",whiteSpace:"nowrap",backgroundColor:"var(--color-background)"},".cm-gutters .cm-foldGutterElement":{cursor:"pointer",opacity:"0%",transition:"opacity 0.2s"},".cm-gutters .cm-foldGutterElement-folded, .cm-gutters:hover .cm-foldGutterElement":{opacity:"100%"},".cm-lineNumbers":{overflow:"visible",minWidth:"40px"},".cm-lineNumbers .cm-gutterElement":{color:"var(--color-line-number)",padding:"0 3px 0 9px"},".cm-foldPlaceholder":{background:"transparent",border:"none",color:"var(--color-text-secondary)"},".cm-matchingBracket, .cm-nonmatchingBracket":{background:"transparent",borderBottom:"none"},"&:focus-within .cm-matchingBracket":{color:"inherit",backgroundColor:"var(--color-matching-bracket-background)",borderBottom:"1px solid var(--color-matching-bracket-underline)"},"&:focus-within .cm-nonmatchingBracket":{backgroundColor:"var(--color-nonmatching-bracket-background)",borderBottom:"1px solid var(--color-nonmatching-bracket-underline)"},".cm-trailingWhitespace":{backgroundColor:"var(--color-trailing-whitespace)"},".cm-highlightedTab":{display:"inline-block",position:"relative","&:before":{content:'""',borderBottom:"1px solid var(--color-text-secondary)",position:"absolute",left:"5%",bottom:"50%",width:"90%",pointerEvents:"none"}},".cm-highlightedSpaces:before":{color:"var(--color-text-secondary)",content:"attr(data-display)",position:"absolute",pointerEvents:"none"},".cm-placeholder":{color:"var(--color-text-secondary)"},".cm-completionHint":{color:"var(--color-text-secondary)"},".cm-tooltip":{boxShadow:"var(--drop-shadow)",backgroundColor:"var(--color-background-elevation-1)"},".cm-argumentHints":{pointerEvents:"none",padding:"0 4px",whiteSpace:"nowrap",lineHeight:"20px",marginBottom:"4px",width:"fit-content"},".cm-tooltip.cm-tooltip-autocomplete > ul":{backgroundColor:"var(--color-background)",maxHeight:"25em",minWidth:"16em","& > li":{display:"flex",justifyContent:"space-between",border:"1px solid var(--color-background)"},"& > li.cm-secondaryCompletion":{display:"flex",backgroundColor:"var(--color-background-elevation-1)",borderColor:"var(--color-background-elevation-1)",justifyContent:"space-between","&::before":{content:'">"',fontWeight:"bold",color:"var(--color-primary-variant)",marginRight:"5px"}},"& > li:hover":{backgroundColor:"var(--item-hover-color)"},"& > li[aria-selected]":{backgroundColor:"var(--color-selected-option-background)",borderColor:"var(--color-selected-option-background)","&, &.cm-secondaryCompletion::before":{color:"var(--color-selected-option)"},"&::after":{content:'"tab"',color:"var(--color-button-primary-text)",border:"1px solid var(--color-selected-option-outline)",borderRadius:"2px",marginLeft:"5px",padding:"1px 3px",fontSize:"10px",lineHeight:"10px"}}},".cm-tooltip.cm-tooltip-autocomplete.cm-conservativeCompletion > ul > li[aria-selected]":{backgroundColor:"var(--color-background)",border:"1px dotted var(--color-text-primary)","&, &.cm-secondaryCompletion::before":{color:"var(--color-text-primary)"},"&::after":{border:"1px solid var(--color-button-secondary-border)",color:"var(--color-text-secondary)"}},".cm-completionMatchedText":{textDecoration:"none",fontWeight:"bold"},".cm-highlightedLine":{animation:"cm-fading-highlight 2s 0s"},"@keyframes cm-fading-highlight":{from:{backgroundColor:"var(--color-highlighted-line)"},to:{backgroundColor:"transparent"}}}),y={codeEditor:"Code editor",sSuggestionSOfS:"{PH1}, suggestion {PH2} of {PH3}"},v=e.i18n.registerUIStrings("ui/components/text_editor/config.ts",y),x=e.i18n.getLocalizedString.bind(void 0,v),S=[],w=n.Facet.define();class E{settingName;getExtension;compartment=new n.Compartment;constructor(t,e){this.settingName=t,this.getExtension=e}settingValue(){return t.Settings.Settings.instance().moduleSetting(this.settingName).get()}instance(){return[this.compartment.of(this.getExtension(this.settingValue())),w.of(this)]}sync(t,e){const o=this.compartment.get(t),n=this.getExtension(e);return o===n?null:this.compartment.reconfigure(n)}static bool(t,e,o=S){return new E(t,(t=>t?e:o))}static none=[]}const C=E.bool("textEditorTabMovesFocus",[],n.keymap.of([{key:"Tab",run:t=>!!t.state.doc.length&&n.indentMore(t),shift:t=>!!t.state.doc.length&&n.indentLess(t)}])),k=n.StateEffect.define(),M=n.StateField.define({create:()=>!0,update:(t,e)=>"active"!==n.completionStatus(e.state)||(n.selectedCompletionIndex(e.startState)??0)===(n.selectedCompletionIndex(e.state)??0)&&!e.effects.some((t=>t.is(k)))&&t});function T(t){return!t.state.field(M,!1)&&n.acceptCompletion(t)}function P(t){const e=t.state.selection.main.head,o=t.state.doc.lineAt(e);return!!(e-o.from>=o.length)&&n.acceptCompletion(t)}function D(t,e="option"){return o=>{if("active"!==n.completionStatus(o.state))return!1;if(o.state.field(M,!1))return o.dispatch({effects:k.of(null)}),L(o),!0;const r=n.moveCompletionSelection(t,e)(o);return L(o),r}}function j(){return t=>"active"===n.completionStatus(t.state)&&(n.moveCompletionSelection(!1)(t),L(t),!0)}function L(t){const e=x(y.sSuggestionSOfS,{PH1:n.selectedCompletion(t.state)?.label||"",PH2:(n.selectedCompletionIndex(t.state)||0)+1,PH3:n.currentCompletions(t.state).length});r.ARIAUtils.alert(e)}const O=new E("textEditorAutocompletion",(t=>[n.autocompletion({activateOnTyping:t,icons:!1,optionClass:t=>"secondary"===t.type?"cm-secondaryCompletion":"",tooltipClass:t=>t.field(M,!1)?"cm-conservativeCompletion":"",defaultKeymap:!1}),n.Prec.highest(n.keymap.of([{key:"End",run:P},{key:"ArrowRight",run:P},{key:"Ctrl-Space",run:n.startCompletion},{key:"Escape",run:n.closeCompletion},{key:"ArrowDown",run:D(!0)},{key:"ArrowUp",run:j()},{mac:"Ctrl-n",run:D(!0)},{mac:"Ctrl-p",run:j()},{key:"PageDown",run:n.moveCompletionSelection(!0,"page")},{key:"PageUp",run:n.moveCompletionSelection(!1,"page")},{key:"Enter",run:T}]))])),I=E.bool("textEditorBracketMatching",n.bracketMatching()),A=E.bool("textEditorCodeFolding",[n.foldGutter({markerDOM(t){const e=t?"triangle-down":"triangle-right",o=new s.Icon.Icon;return o.setAttribute("class",t?"cm-foldGutterElement":"cm-foldGutterElement cm-foldGutterElement-folded"),o.data={iconName:e,color:"var(--icon-fold-marker)",width:"14px",height:"14px"},o}}),n.keymap.of(n.foldKeymap)]);function N(e){const o=Object.create(null);let n=0;for(let t=e.iterLines(1,Math.min(e.lines+1,1e3));!t.next().done;){let e=/^\s*/.exec(t.value)[0];if(e.length!==t.value.length&&e.length&&"*"!==t.value[e.length]){if("\t"===e[0])e="\t";else if(/[^ ]/.test(e))continue;n++,o[e]=(o[e]||0)+1}}const r=.05*n;return Object.entries(o).reduce(((t,[e,o])=>o<r||t&&t.length<e.length?t:e),null)??t.Settings.Settings.instance().moduleSetting("textEditorIndent").get()}const B=n.Prec.highest(n.indentUnit.compute([],(t=>N(t.doc)))),_=E.bool("textEditorAutoDetectIndent",B);function H(t){return n.ViewPlugin.define((e=>({decorations:t.createDeco(e),update(e){this.decorations=t.updateDeco(e,this.decorations)}})),{decorations:t=>t.decorations})}const z=new Map;const R=H(new n.MatchDecorator({regexp:/\t| +/g,decoration:t=>function(t){const e=z.get(t);if(e)return e;const o=n.Decoration.mark({attributes:"\t"===t?{class:"cm-highlightedTab"}:{class:"cm-highlightedSpaces","data-display":"·".repeat(t.length)}});return z.set(t,o),o}(t[0]),boundary:/\S/})),W=H(new n.MatchDecorator({regexp:/\s+$/g,decoration:n.Decoration.mark({class:"cm-trailingWhitespace"}),boundary:/\S/})),F=new E("showWhitespacesInEditor",(t=>"all"===t?R:"trailing"===t?W:S)),$=E.bool("allowScrollPastEof",n.scrollPastEnd()),V=Object.create(null);const U=new E("textEditorIndent",(function(t){let e=V[t];return e||(e=V[t]=n.indentUnit.of(t)),e})),G=E.bool("domWordWrap",n.EditorView.lineWrapping);function K(t){return/\r\n/.test(t)&&!/(^|[^\r])\n/.test(t)?n.EditorState.lineSeparator.of("\r\n"):[]}const J=n.keymap.of([{key:"Tab",run:n.acceptCompletion},{key:"Ctrl-m",run:n.cursorMatchingBracket,shift:n.selectMatchingBracket},{key:"Mod-/",run:n.toggleComment},{key:"Mod-d",run:n.selectNextOccurrence},{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:n.cursorSyntaxLeft,shift:n.selectSyntaxLeft},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:n.cursorSyntaxRight,shift:n.selectSyntaxRight},{key:"Ctrl-ArrowLeft",mac:"Alt-ArrowLeft",run:n.cursorSubwordBackward,shift:n.selectSubwordBackward},{key:"Ctrl-ArrowRight",mac:"Alt-ArrowRight",run:n.cursorSubwordForward,shift:n.selectSubwordForward},...n.standardKeymap,...n.historyKeymap]);function q(){const e=t.Settings.Settings.instance().moduleSetting("uiTheme").get();return"systemPreferred"===e?window.matchMedia("(prefers-color-scheme: dark)").matches:"dark"===e}const Q=n.EditorView.theme({},{dark:!0}),X=new n.Compartment;function Y(){return[b,q()?X.of(Q):X.of([])]}let Z=null;function tt(){return Z||(Z=o.WindowBoundsService.WindowBoundsServiceImpl.instance().getDevToolsBoundingElement()),Z.getBoundingClientRect()}function et(t){return[Y(),n.highlightSpecialChars(),n.highlightSelectionMatches(),n.history(),n.drawSelection(),n.EditorState.allowMultipleSelections.of(!0),n.indentOnInput(),n.syntaxHighlighting(i.CodeHighlighter.highlightStyle),J,n.EditorView.clickAddsSelectionRange.of((t=>t.altKey||t.ctrlKey)),C.instance(),I.instance(),U.instance(),n.Prec.lowest(n.EditorView.contentAttributes.of({"aria-label":x(y.codeEditor)})),t instanceof n.Text?[]:K(t),n.tooltips({parent:rt(),tooltipSpace:tt})]}const ot=[n.closeBrackets(),n.keymap.of(n.closeBracketsKeymap)];let nt=null;function rt(){if(!nt){const t=n.EditorState.create({extensions:[b,q()?Q:[],n.syntaxHighlighting(i.CodeHighlighter.highlightStyle),n.showTooltip.of({pos:0,create:()=>({dom:document.createElement("div")})})]}).facet(n.EditorView.styleModule),e=document.body.appendChild(document.createElement("div"));e.className="editor-tooltip-host",nt=e.attachShadow({mode:"open"}),n.StyleModule.mount(nt,t)}return nt}class it extends n.WidgetType{text;constructor(t){super(),this.text=t}eq(t){return this.text===t.text}toDOM(){const t=document.createElement("span");return t.className="cm-completionHint",t.textContent=this.text,t}}const st=n.ViewPlugin.fromClass(class{decorations=n.Decoration.none;currentHint=null;update(t){const e=this.currentHint=this.topCompletion(t.state);!e||t.state.field(M,!1)?this.decorations=n.Decoration.none:this.decorations=n.Decoration.set([n.Decoration.widget({widget:new it(e),side:1}).range(t.state.selection.main.head)])}topCompletion(t){const e=n.selectedCompletion(t);if(!e)return null;let{label:o,apply:r}=e;if("string"==typeof r&&(o=r,r=void 0),r||o.length>100||o.indexOf("\n")>-1||"secondary"===e.type)return null;const i=t.selection.main.head,s=t.doc.lineAt(i);if(i!==s.to)return null;const a=("'"===o[0]?/'(\\.|[^'\\])*$/:'"'===o[0]?/"(\\.|[^"\\])*$/:/#?[\w$]+$/).exec(s.text);return a&&!o.startsWith(a[0])?null:o.slice(a?a[0].length:0)}},{decorations:t=>t.decorations});var at=Object.freeze({__proto__:null,dynamicSetting:w,DynamicSetting:E,tabMovesFocus:C,conservativeCompletion:M,autocompletion:O,bracketMatching:I,codeFolding:A,guessIndent:N,autoDetectIndent:_,showWhitespace:F,allowScrollPastEof:$,indentUnit:U,domWordWrap:G,dummyDarkTheme:Q,themeSelection:X,theme:Y,baseConfiguration:et,closeBrackets:ot,showCompletionHint:st,contentIncludingHint:function(t){const e=t.plugin(st);let o=t.state.doc.toString();if(e&&e.currentHint){const{head:n}=t.state.selection.main;o=o.slice(0,n)+e.currentHint+o.slice(n)}return o}});const ct=n.StateEffect.define();class lt{completions;seen;constructor(t=[],e=new Set){this.completions=t,this.seen=e}add(t){this.seen.has(t.label)||(this.seen.add(t.label),this.completions.push(t))}copy(){return new lt(this.completions.slice(),new Set(this.seen))}}const dt=["async","await","break","case","catch","class","const","continue","debugger","default","delete","do","else","export","extends","false","finally","for","function","if","import","in","instanceof","let","new","null","of","return","static","super","switch","this","throw","true","try","typeof","var","void","while","with","yield"],ut=["clear","copy","debug","dir","dirxml","getEventListeners","inspect","keys","monitor","monitorEvents","profile","profileEnd","queryObjects","table","undebug","unmonitor","unmonitorEvents","values"],mt=["$","$$","$x","$0","$_"],pt=new lt;for(const t of dt)pt.add({label:t,type:"keyword"});for(const t of ut)pt.add({label:t,type:"function"});for(const t of mt)pt.add({label:t,type:"variable"});const ht=new Set(["TemplateString","LineComment","BlockComment","TypeDefinition","VariableDefinition","PropertyDefinition","TypeName"]);function ft(t,e,o){let n=t.resolveInner(e,-1);const r=n.parent;if(ht.has(n.name))return null;if("PropertyName"===n.name||"PrivatePropertyName"===n.name)return"MemberExpression"!==r?.name?null:{type:1,from:n.from,relatedNode:r};if("VariableName"===n.name||!n.firstChild&&n.to-n.from<20&&!/[^a-z]/.test(o.sliceString(n.from,n.to)))return{type:0,from:n.from};if("String"===n.name){const t=n.parent;return"MemberExpression"===t?.name&&"["===t.childBefore(n.from)?.name?{type:2,from:n.from,relatedNode:t}:null}if(n=n.enterUnfinishedNodesBefore(e),n.to===e&&"MemberExpression"===n.parent?.name&&(n=n.parent),"MemberExpression"===n.name){const t=n.childBefore(Math.min(e,n.to));if("["===t?.name)return{type:2,relatedNode:n};if("."===t?.name||"?."===t?.name)return{type:1,relatedNode:n}}if("("===n.name&&"ArgList"===r?.name&&"CallExpression"===r?.parent?.name){const t=r?.parent?.firstChild;if("MemberExpression"===t?.name){const e=t?.lastChild;if(e&&"get"===o.sliceString(e.from,e.to)){const e=t?.firstChild;return{type:3,relatedNode:e||void 0}}}}return{type:0}}async function gt(t){const e=ft(n.syntaxTree(t.state),t.pos,t.state.doc);if(!e||void 0===e.from&&!t.explicit&&0===e.type)return null;const o=xt()?.debuggerModel.selectedCallFrame()?.script;if(o&&l.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding.instance().pluginManager?.hasPluginForScript(o))return null;let r,i;if(0===e.type){const[t,e]=await Promise.all([Mt(),Tt()]);if(t.completions.length){r=t;for(const t of e.completions)r.add(t)}else r=e}else if(1===e.type||2===e.type){const o=e.relatedNode.getChild("Expression");if(2===e.type&&(i=void 0===e.from?"'":t.state.sliceDoc(e.from,e.from+1)),!o)return null;r=await async function(t,e,o=!1){const n=Ct.instance();if(!e){const e=n.get(t);if(e)return e}const r=xt();if(!r)return new lt;const i=kt(t,r,e,o);e||n.set(t,i);return i}(t.state.sliceDoc(o.from,o.to),i,"]"===t.state.sliceDoc(t.pos,t.pos+1))}else{if(3!==e.type)return null;{const o=e.relatedNode;if(!o)return null;r=await async function(t){const e=new lt,o=xt();if(!o)return e;const n=await St(o,`[...Map.prototype.keys.call(${t})]`,"completion");if(!n)return e;const r=c.RemoteObject.RemoteArray.objectAsArray(n),i=r.length();for(let t=0;t<i;t++)e.add({label:`"${(await r.at(t)).value}")`,type:"constant",boost:-1*t});return e}(t.state.sliceDoc(o.from,o.to))}}return{from:e.from??t.pos,options:r.completions,validFor:i?"'"===i?yt:vt:bt}}const bt=/^#?(?:[$_\p{ID_Start}])(?:[$_\u200C\u200D\p{ID_Continue}])*$/u,yt=/^\'(\\.|[^\\'\n])*'?$/,vt=/^"(\\.|[^\\"\n])*"?$/;function xt(){return r.Context.Context.instance().flavor(c.RuntimeModel.ExecutionContext)}async function St(t,e,o){const n=await t.evaluate({expression:e,objectGroup:o,includeCommandLineAPI:!0,silent:!0,returnByValue:!1,generatePreview:!1,throwOnSideEffect:!0,timeout:500},!1,!1);return"error"in n||n.exceptionDetails||!n.object?null:n.object}const wt=new Map([["string","String"],["symbol","Symbol"],["number","Number"],["boolean","Boolean"],["bigint","BigInt"]]);let Et=null;class Ct{#c=new Map;constructor(){const t=()=>this.#c.clear();c.TargetManager.TargetManager.instance().addModelListener(c.ConsoleModel.ConsoleModel,c.ConsoleModel.Events.CommandEvaluated,t),r.Context.Context.instance().addFlavorChangeListener(c.RuntimeModel.ExecutionContext,t),c.TargetManager.TargetManager.instance().addModelListener(c.DebuggerModel.DebuggerModel,c.DebuggerModel.Events.DebuggerResumed,t),c.TargetManager.TargetManager.instance().addModelListener(c.DebuggerModel.DebuggerModel,c.DebuggerModel.Events.DebuggerPaused,t)}get(t){return this.#c.get(t)}set(t,e){this.#c.set(t,e),window.setTimeout((()=>{this.#c.get(t)===e&&this.#c.delete(t)}),3e4)}static instance(){return Et||(Et=new Ct),Et}}async function kt(t,e,o,n=!1){const r=new lt;if(!e)return r;let i=await St(e,t,"completion");if(!i)return r;for(;"object"===i.type&&"proxy"===i.subtype;){const t=(await i.getOwnProperties(!1)).internalProperties?.find((t=>"[[Target]]"===t.name))?.value;if(!t)break;i=t}const s=wt.get(i.type);s&&(i=await St(e,s+".prototype","completion"));const a="globalThis"===t?"function":"method",c="globalThis"===t?"variable":"property";if(i&&("object"===i.type||"function"===i.type)){const e=await i.getAllProperties(!1,!1,!0),s="function"===i.type;for(const i of e.properties||[])if(!i.symbol&&(!s||"arguments"!==i.name&&"caller"!==i.name)&&(!i.private||"this"===t)&&(o||bt.test(i.name))){const t=o?o+i.name.replaceAll("\\","\\\\").replaceAll(o,"\\"+o)+o:i.name,e=o&&!n?`${t}]`:void 0,s=2*Number(i.isOwn)+1*Number(i.enumerable),l="function"===i.value?.type?a:c;r.add({apply:e,label:t,type:l,boost:s})}}return e.runtimeModel.releaseObjectGroup("completion"),r}async function Mt(){const t=new lt,e=xt()?.debuggerModel.selectedCallFrame();if(!e)return t;const o=await Promise.all(e.scopeChain().map((t=>(t=>a.Runtime.experiments.isEnabled("evaluateExpressionsWithSourceMaps")?u.NamesResolver.resolveScopeInObject(t):t.object())(t).getAllProperties(!1,!1))));for(const e of o)for(const o of e.properties||[])t.add({label:o.name,type:"function"===o.value?.type?"function":"variable"});return t}async function Tt(){const t=Ct.instance(),e=t.get("");if(e)return e;const o=xt();if(!o)return pt;const n=pt.copy(),r=kt("globalThis",o).then((t=>o.globalLexicalScopeNames().then((e=>{for(const e of t.completions)n.add(e);for(const t of e||[])n.add({label:t,type:"variable"});return n}))));return t.set("",r),r}async function Pt(t,e){const o=n.syntaxTree(t).resolveInner(e).enterUnfinishedNodesBefore(e);if("ArgList"!==o.name)return null;const r=o.parent?.getChild("Expression");if(!r)return null;const i=await async function(t,e){const o=xt();if(!o)return null;const n=e.sliceString(t.from,t.to),r=await St(o,n,"argumentsHint");if(!r||"function"!==r.type)return null;return jt(r,(async()=>{const n=t.firstChild;return n&&"MemberExpression"===t.name?St(o,e.sliceString(n.from,n.to),"argumentsHint"):null}),n).finally((()=>o.runtimeModel.releaseObjectGroup("argumentsHint")))}(r,t.doc);if(!i)return null;let s=0;for(let t=e;;){const e=o.childBefore(t);if(!e)break;e.type.is("Expression")&&s++,t=e.from}return()=>function(t,e){const o=document.createElement("div");o.className="cm-argumentHints";for(const n of t){const t=document.createElement("span");for(let o=0;o<n.length;o++){if(o===e||o<e&&n[o].startsWith("...")){t.appendChild(document.createElement("b")).appendChild(document.createTextNode(n[o]))}else t.appendChild(document.createTextNode(n[o]));o<n.length-1&&t.appendChild(document.createTextNode(", "))}const r=o.appendChild(document.createElement("div"));r.className="source-code",r.appendChild(document.createTextNode("ƒ(")),r.appendChild(t),r.appendChild(document.createTextNode(")"))}return{dom:o}}(i,s)}function Dt(t){function e(e){for(;"ParamList"!==e.name&&e.nextSibling(););const o=[];if("ParamList"===e.name&&e.firstChild()){let n="";do{switch(e.name){case"ArrayPattern":o.push(n+"arr"),n="";break;case"ObjectPattern":o.push(n+"obj"),n="";break;case"VariableDefinition":o.push(n+t.slice(e.from,e.to)),n="";break;case"Spread":n="..."}}while(e.nextSibling())}return o}try{try{const{parser:o}=n.javascript.javascriptLanguage.configure({strict:!0,top:"SingleClassItem"}),r=o.parse(t).cursor();if(r.firstChild()&&"MethodDeclaration"===r.name&&r.firstChild())return e(r);throw new Error("SingleClassItem rule is expected to have exactly one MethodDeclaration child")}catch{const{parser:o}=n.javascript.javascriptLanguage.configure({strict:!0,top:"SingleExpression"}),r=o.parse(t).cursor();if(!r.firstChild())throw new Error("SingleExpression rule is expected to have children");switch(r.name){case"ArrowFunction":case"FunctionExpression":if(!r.firstChild())throw new Error(`${r.name} rule is expected to have children`);return e(r);case"ClassExpression":if(!r.firstChild())throw new Error(`${r.name} rule is expected to have children`);for(;r.nextSibling()&&"ClassBody"!==r.name;);if("ClassBody"===r.name&&r.firstChild())do{if("MethodDeclaration"===r.name&&r.firstChild()){if("PropertyDefinition"===r.name&&"constructor"===t.slice(r.from,r.to))return e(r);r.parent()}}while(r.nextSibling());return[]}throw new Error("Unexpected expression")}}catch(e){throw new Error(`Failed to parse for arguments list: ${t}`,{cause:e})}}async function jt(t,e,o){const n=t.description;if(!n)return null;if(!n.endsWith("{ [native code] }"))return[Dt(n)];if("function () { [native code] }"===n){const e=await async function(t){const{internalProperties:e}=await t.getOwnProperties(!1);if(!e)return null;const o=e.find((t=>"[[TargetFunction]]"===t.name))?.value,n=e.find((t=>"[[BoundArgs]]"===t.name))?.value,r=e.find((t=>"[[BoundThis]]"===t.name))?.value;if(!r||!o||!n)return null;const i=await jt(o,(()=>Promise.resolve(r))),s=c.RemoteObject.RemoteObject.arrayLength(n);if(!i)return null;return i.map((t=>{const e=t.findIndex((t=>t.startsWith("...")));return e>-1&&e<s?t.slice(e):t.slice(s)}))}(t);if(e)return e}const r=d.JavaScriptMetadata.JavaScriptMetadataImpl.instance(),i=/^function ([^(]*)\(/.exec(n),s=i&&i[1]||o;if(!s)return null;const a=r.signaturesForNativeFunction(s);if(a)return a;const l=await e();if(!l)return null;const u=l.className;if(u){const t=r.signaturesForInstanceMethod(s,u);if(t)return t}if(l.description&&"function"===l.type&&l.description.endsWith("{ [native code] }")){const t=/^function ([^(]*)\(/.exec(l.description);if(t){const e=t[1],o=r.signaturesForStaticMethod(s,e);if(o)return o}}for(const t of await async function(t){if("number"===t.type)return["Number","Object"];if("string"===t.type)return["String","Object"];if("symbol"===t.type)return["Symbol","Object"];if("bigint"===t.type)return["BigInt","Object"];if("boolean"===t.type)return["Boolean","Object"];if("undefined"===t.type||"null"===t.subtype)return[];return await t.callFunctionJSON((function(){const t=[];for(let e=this;e;e=Object.getPrototypeOf(e))"object"==typeof e&&e.constructor&&e.constructor.name&&(t[t.length]=e.constructor.name);return t}),[])}(l)){const e=r.signaturesForInstanceMethod(s,t);if(e)return e}return null}var Lt=Object.freeze({__proto__:null,completion:function(){return n.javascript.javascriptLanguage.data.of({autocomplete:gt})},completeInContext:async function(t,e,o=!1){const r=n.EditorState.create({doc:t+e,selection:{anchor:t.length},extensions:n.javascript.javascriptLanguage}),i=await gt(new n.CompletionContext(r,r.doc.length,o));return i?i.options.filter((t=>t.label.startsWith(e))).map((t=>({text:t.label,priority:100+(t.boost||0),isSecondary:"secondary"===t.type}))):[]},getQueryType:ft,javascriptCompletionSource:gt,isExpressionComplete:async function(t){const e=r.Context.Context.instance().flavor(c.RuntimeModel.ExecutionContext);if(!e)return!0;const o=await e.runtimeModel.compileScript(t,"",!1,e.id);if(!o||!o.exceptionDetails||!o.exceptionDetails.exception)return!0;const n=o.exceptionDetails.exception.description;return!!n&&(!n.startsWith("SyntaxError: Unexpected end of input")&&!n.startsWith("SyntaxError: Unterminated template literal"))},argumentHints:function(){return function(t){const e=n.StateEffect.define();return[n.StateField.define({create:()=>null,update(t,o){if(o.selection&&(t=null),t&&!o.changes.empty){const e=o.changes.mapPos(t.pos,-1,n.MapMode.TrackDel);t=null===e?null:{pos:e,create:t.create,above:!0}}for(const n of o.effects)n.is(e)?t={pos:o.state.selection.main.from,create:n.value,above:!0}:n.is(ct)&&(t=null);return t},provide:t=>n.showTooltip.from(t)}),n.ViewPlugin.fromClass(class{pending=-1;updateID=0;update(t){this.updateID++,t.transactions.some((t=>t.selection))&&t.state.selection.main.empty&&this.#l(t.view)}#l(t){this.pending>-1&&clearTimeout(this.pending),this.pending=window.setTimeout((()=>this.#d(t)),50)}#d(o){this.pending=-1;const{main:n}=o.state.selection;if(n.empty){const{updateID:r}=this;t(o.state,n.from).then((t=>{this.updateID!==r?this.pending<0&&this.#l(o):t?o.dispatch({effects:e.of(t)}):o.dispatch({effects:ct.of(null)})}))}}})]}(Pt)},closeArgumentsHintsTooltip:function(t,e){return null!==t.state.field(e)&&(t.dispatch({effects:ct.of(null)}),!0)},argumentsList:Dt});function Ot(t,{lineNumber:e,columnNumber:o}){const n=t.line(Math.max(1,Math.min(t.lines,e+1)));return Math.max(n.from,Math.min(n.to,n.from+o))}function It(t,e){e=Math.max(0,Math.min(e,t.length));const o=t.lineAt(e);return{lineNumber:o.number-1,columnNumber:e-o.from}}var At=Object.freeze({__proto__:null,toOffset:Ot,toLineColumn:It});class Nt extends HTMLElement{static litTagName=p.literal`devtools-text-editor`;#u=this.attachShadow({mode:"open"});#m=void 0;#p=E.none;#h=[];#f;#g={left:0,top:0,changed:!1};#b=-1;#y=()=>{this.#b<0&&(this.#b=window.setTimeout((()=>{this.#b=-1,this.#m&&n.repositionTooltips(this.#m)}),50))};#v=new ResizeObserver(this.#y);constructor(t){super(),this.#f=t,this.#u.adoptedStyleSheets=[i.Style.default]}#x(){return this.#m=new n.EditorView({state:this.state,parent:this.#u,root:this.#u,dispatch:(t,e)=>{e.update([t]),t.reconfigured&&this.#S()}}),this.#w(this.#m),this.#m.scrollDOM.addEventListener("scroll",(t=>{this.#m&&(this.#E(this.#m,{scrollLeft:t.target.scrollLeft,scrollTop:t.target.scrollTop}),this.scrollEventHandledToSaveScrollPositionForTest())})),this.#S(),this.#C(),m.ThemeSupport.instance().addEventListener(m.ThemeChangeEvent.eventName,(()=>{const t="dark"===m.ThemeSupport.instance().themeName()?Q:[];this.editor.dispatch({effects:X.reconfigure(t)})})),this.#m}get editor(){return this.#m||this.#x()}dispatch(t){return this.editor.dispatch(t)}get state(){return this.#m?this.#m.state:(this.#f||(this.#f=n.EditorState.create({extensions:et("")})),this.#f)}set state(t){this.#f!==t&&(this.#f=t,this.#m&&(this.#m.setState(t),this.#S()))}#w(t){this.#g.changed&&t.dispatch({effects:n.EditorView.scrollIntoView(0,{x:"start",xMargin:-this.#g.left,y:"start",yMargin:-this.#g.top})})}#E(t,{scrollLeft:e,scrollTop:o}){const n=t.contentDOM.getBoundingClientRect(),r=t.coordsAtPos(0)??{top:n.top,left:n.left,bottom:n.bottom,right:n.right};this.#g.left=e+(n.left-r.left),this.#g.top=o+(n.top-r.top),this.#g.changed=!0}scrollEventHandledToSaveScrollPositionForTest(){}connectedCallback(){this.#m?this.#w(this.#m):this.#x()}disconnectedCallback(){this.#m&&(this.#m.dispatch({effects:Bt.of(null)}),this.#f=this.#m.state,this.#v.disconnect(),window.removeEventListener("resize",this.#y),this.#m.destroy(),this.#m=void 0,this.#S())}focus(){this.#m&&this.#m.focus()}#S(){const e=this.#m?this.#m.state.facet(w):E.none;if(e===this.#p)return;this.#p=e;for(const[t,e]of this.#h)t.removeChangeListener(e);this.#h=[];const o=t.Settings.Settings.instance();for(const t of e){const e=({data:e})=>{const o=t.sync(this.state,e);o&&this.#m&&this.#m.dispatch({effects:o})},n=o.moduleSetting(t.settingName);n.addChangeListener(e),this.#h.push([n,e])}}#C(){const t=o.WindowBoundsService.WindowBoundsServiceImpl.instance().getDevToolsBoundingElement();t&&this.#v.observe(t),window.addEventListener("resize",this.#y)}revealPosition(t,e=!0){const o=this.#m;if(!o)return;const r=o.state.doc.lineAt(t.main.head),i=[];e&&(o.state.field(Ht,!1)?o.dispatch({effects:Bt.of(null)}):o.dispatch({effects:n.StateEffect.appendConfig.of(Ht)}),i.push(_t.of(r.from)));const s=o.scrollDOM.getBoundingClientRect(),a=o.coordsAtPos(t.main.head);(!a||a.top<s.top||a.bottom>s.bottom)&&i.push(n.EditorView.scrollIntoView(t.main,{y:"center"})),o.dispatch({selection:t,effects:i,userEvent:"select.reveal"})}createSelection(t,e){const{doc:o}=this.state,r=Ot(o,t);return n.EditorSelection.single(e?Ot(o,e):r,r)}toLineColumn(t){return It(this.state.doc,t)}toOffset(t){return Ot(this.state.doc,t)}}h.CustomElements.defineComponent("devtools-text-editor",Nt);const Bt=n.StateEffect.define(),_t=n.StateEffect.define(),Ht=n.StateField.define({create:()=>n.Decoration.none,update(t,e){!e.changes.empty&&t.size&&(t=t.map(e.changes));for(const o of e.effects)o.is(Bt)?t=n.Decoration.none:o.is(_t)&&(t=n.Decoration.set([n.Decoration.line({attributes:{class:"cm-highlightedLine"}}).range(o.value)]));return t},provide:t=>n.EditorView.decorations.from(t,(t=>t))});var zt=Object.freeze({__proto__:null,TextEditor:Nt});var Rt=Object.freeze({__proto__:null,TextEditorHistory:class{#k;#M;constructor(t,e){this.#k=t,this.#M=e}moveHistory(t,e=!1){const{editor:o}=this.#k,{main:r}=o.state.selection,i=-1===t;if(!e){if(!r.empty)return!1;const t=o.coordsAtPos(r.head),e=o.coordsAtPos(i?0:o.state.doc.length);if(t&&e&&(i?t.top>e.top+5:t.bottom<e.bottom-5))return!1}const s=o.state.doc.toString(),a=this.#M,c=i?a.previous(s):a.next();if(void 0===c)return!1;const l=c.length;if(o.dispatch({changes:{from:0,to:o.state.doc.length,insert:c},selection:n.EditorSelection.cursor(l),scrollIntoView:!0}),i){const t=c.search(/\n|$/);o.dispatch({selection:n.EditorSelection.cursor(t)})}return!0}historyCompletions(t){const{explicit:e,pos:o,state:n}=t,r=n.doc.toString();if(!(o===r.length)||!r.length&&!e)return null;const i=this.#M.matchingEntries(r);if(!i.size)return null;const s=[...i].map((t=>({label:t,type:"secondary",boost:-1e5})));return{from:0,to:r.length,options:s}}}});export{g as AutocompleteHistory,at as Config,Lt as JavaScript,At as Position,zt as TextEditor,Rt as TextEditorHistory};
@@ -0,0 +1 @@
1
+ import*as t from"../../../core/platform/platform.js";import*as e from"../helpers/helpers.js";import*as s from"../../lit-html/lit-html.js";const i=new CSSStyleSheet;i.replaceSync(":host{white-space:pre;overflow:hidden;display:flex}input{font-size:14px}.prefix{flex:none;color:var(--color-primary-old)}.text-prompt-input{flex:auto;position:relative}.text-prompt-input input{width:100%;border:none;outline:none;position:absolute;left:0;padding:0;z-index:2;background-color:transparent}.text-prompt-input .suggestion{color:var(--color-background-highlight);position:absolute;left:0;z-index:1}\n/*# sourceURL=textPrompt.css */\n");class n extends Event{static eventName="promptinputchanged";data;constructor(t){super(n.eventName),this.data=t}}class o extends HTMLElement{static litTagName=s.literal`devtools-text-prompt`;#t=this.attachShadow({mode:"open"});#e="";#s="";#i="";connectedCallback(){this.#t.adoptedStyleSheets=[i]}set data(t){this.#e=t.ariaLabel,this.#s=t.prefix,this.#i=t.suggestion,this.#n()}get data(){return{ariaLabel:this.#e,prefix:this.#s,suggestion:this.#i}}focus(){this.#o().focus()}#o(){const t=this.#t.querySelector(".input");if(!t)throw new Error("Expected an input element!");return t}moveCaretToEndOfInput(){this.setSelectedRange(this.#r().length,this.#r().length)}onInput(){this.#a().value=this.#r(),this.dispatchEvent(new n(this.#r()))}onKeyDown(e){e.key===t.KeyboardUtilities.ENTER_KEY&&e.preventDefault()}setSelectedRange(t,e){if(t<0)throw new RangeError("Selected range start must be a nonnegative integer");const s=this.#r().length;e>s&&(e=s),e<t&&(e=t),this.#o().setSelectionRange(t,e)}setPrefix(t){this.#s=t,this.#n()}setSuggestion(t){this.#i=t,this.#a().value+=this.#i,this.#n()}setText(t){this.#o().value=t,this.#a().value=this.#r(),this.#o().hasFocus()&&(this.moveCaretToEndOfInput(),this.#o().scrollIntoView())}#a(){const t=this.#t.querySelector(".suggestion");if(!t)throw new Error("Expected an suggestion element!");return t}#r(){return this.#o().value||""}#n(){const t=s.html` <span class="prefix">${this.#s} </span> <span class="text-prompt-input"><input class="input" aria-label="${this.#e}" spellcheck="false" @input="${this.onInput}" @keydown="${this.onKeyDown}/"><input class="suggestion" aria-label="${this.#e+" Suggestion"}"></span>`;s.render(t,this.#t,{host:this})}}e.CustomElements.defineComponent("devtools-text-prompt",o);var r=Object.freeze({__proto__:null,PromptInputEvent:n,TextPrompt:o});export{r as TextPrompt};
@@ -0,0 +1 @@
1
+ import*as e from"../../../core/platform/platform.js";import*as t from"../../lit-html/lit-html.js";import*as r from"../code_highlighter/code_highlighter.js";import*as n from"../helpers/helpers.js";import*as o from"../render_coordinator/render_coordinator.js";const i=new CSSStyleSheet;function s(e){return"children"in e}i.replaceSync(':host{--list-group-padding:16px}li{border:2px solid transparent;list-style:none;text-overflow:ellipsis;min-height:12px}.compact{border:0}.tree-node-key{white-space:var(--override-key-whitespace-wrapping);min-width:0;flex-grow:1}.arrow-icon{display:block;user-select:none;-webkit-mask-image:var(--image-file-triangle-right);background-color:var(--icon-default);content:"";text-shadow:none;height:14px;width:14px;overflow:hidden;flex:none;transition:transform 200ms}ul{margin:0;padding:0}ul[role="group"]{padding-left:var(--list-group-padding)}li:not(.parent) > .arrow-and-key-wrapper > .arrow-icon{-webkit-mask-size:0}li.parent.expanded > .arrow-and-key-wrapper > .arrow-icon{transform:rotate(90deg)}li.is-top-level{border-top:var(--override-top-node-border)}li.is-top-level:last-child{border-bottom:var(--override-top-node-border)}:host([animated]) li:not(.is-top-level){animation-name:slideIn;animation-duration:150ms;animation-timing-function:cubic-bezier(0,0,0.3,1);animation-fill-mode:forwards}@keyframes slideIn{from{transform:translateY(-5px);opacity:0%}to{transform:none;opacity:100%}}.arrow-and-key-wrapper{display:flex;align-content:center;align-items:center}[role="treeitem"]:focus{outline:0}ul[role="tree"]:focus-within [role="treeitem"].selected > .arrow-and-key-wrapper{background-color:var(--legacy-item-selection-bg-color)}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inline-icon{vertical-align:sub}@media (forced-colors: active){.arrow-icon{background-color:ButtonText}ul[role="tree"]:focus-within [role="treeitem"].selected{outline:solid 1px ButtonText}}\n/*# sourceURL=treeOutline.css */\n');class d extends t.Directive.Directive{constructor(e){if(super(e),e.type!==t.Directive.PartType.ATTRIBUTE)throw new Error("TrackDOMNodeToTreeNode directive must be used as an attribute.")}update(e,[t,r]){const n=e.element;if(!(n instanceof HTMLLIElement))throw new Error("trackTreeNodeToDOMNode must be used on <li> elements.");t.set(n,r)}render(e,t){}}const a=t.Directive.directive(d),l=e=>{const t=e.parentElement?.parentElement;if(t&&t instanceof HTMLLIElement){const e=t.nextElementSibling;return e&&e instanceof HTMLLIElement?e:l(t)}return null},c=e=>{const t=e.querySelector(':scope > [role="group"] > [role="treeitem"]:first-child');if(!t)throw new Error("Could not find child of expanded node.");return t},h=e=>null!==e.getAttribute("aria-expanded"),p=e=>h(e)&&"true"===e.getAttribute("aria-expanded"),u=e=>{const t=e.querySelector(':scope > [role="group"] > [role="treeitem"]:last-child');if(!t)throw new Error("Could not find child of expanded node.");return p(t)?u(t):t},f=e=>{let t=e.parentElement;if(!t)return null;for(;t&&"treeitem"!==t.getAttribute("role")&&t instanceof HTMLLIElement==!1;)t=t.parentElement;return t},m=new WeakMap,w=async e=>{if(!e.children)throw new Error("Asked for children of node that does not have any children.");const t=m.get(e);if(t)return t;const r=await e.children();return m.set(e,r),r},N=async(e,t)=>{for(const r of e){const e=await g(r,t,[r]);if(null!==e)return e}return null},g=async(e,t,r)=>{if(e.id===t)return r;if(e.children){const n=await w(e);for(const e of n){const n=await g(e,t,[...r,e]);if(null!==n)return n}}return null},v=e=>{const{currentDOMNode:t,currentTreeNode:r,direction:n,setNodeExpandedState:o}=e;if(!r)return t;if("ArrowDown"===n){if(p(t))return c(t);const e=(e=>{const t=e.nextElementSibling;return t&&t instanceof HTMLLIElement?t:null})(t);if(e)return e;const r=l(t);if(r)return r}else{if("ArrowRight"===n)return h(t)?p(t)?c(t):(o(r,!0),t):t;if("ArrowUp"===n){const e=(e=>{const t=e.previousElementSibling;return t&&t instanceof HTMLLIElement?t:null})(t);if(e)return p(e)?u(e):e;const r=f(t);if(r&&r instanceof HTMLLIElement)return r}else if("ArrowLeft"===n){if(p(t))return o(r,!1),t;const e=f(t);if(e&&e instanceof HTMLLIElement)return e}}return t};var T=Object.freeze({__proto__:null,isExpandableNode:s,trackDOMNodeToTreeNode:a,getNodeChildren:w,getPathToTreeNode:N,findNextNodeForTreeOutlineKeyboardNavigation:v});const y=o.RenderCoordinator.RenderCoordinator.instance();class E extends Event{static eventName="itemselected";data;constructor(e){super(E.eventName,{bubbles:!0,composed:!0}),this.data={node:e}}}class x extends Event{static eventName="itemmouseover";data;constructor(e){super(x.eventName,{bubbles:!0,composed:!0}),this.data={node:e}}}class S extends Event{static eventName="itemmouseout";data;constructor(e){super(S.eventName,{bubbles:!0,composed:!0}),this.data={node:e}}}class b extends HTMLElement{static litTagName=t.literal`devtools-tree-outline`;#e=this.attachShadow({mode:"open"});#t=[];#r=new Map;#n=new WeakMap;#o=!1;#i=null;#s=null;#d=(e,r)=>("string"!=typeof e.treeNodeData&&console.warn(`The default TreeOutline renderer simply stringifies its given value. You passed in ${JSON.stringify(e.treeNodeData,null,2)}. Consider providing a different defaultRenderer that can handle nodes of this type.`),t.html`${String(e.treeNodeData)}`);#a;#l=!1;#c=!1;#h=!1;static get observedAttributes(){return["nowrap","toplevelbordercolor"]}attributeChangedCallback(e,t,r){switch(e){case"nowrap":this.#p(r);break;case"toplevelbordercolor":this.#u(r)}}connectedCallback(){this.#u(this.getAttribute("toplevelbordercolor")),this.#p(this.getAttribute("nowrap")),this.#e.adoptedStyleSheets=[i,r.Style.default]}get data(){return{tree:this.#t,defaultRenderer:this.#d}}set data(e){this.#d=e.defaultRenderer,this.#t=e.tree,this.#a=e.filter,this.#l=e.compact||!1,this.#o||(this.#s=this.#t[0]),this.#f()}async expandRecursively(e=2){await Promise.all(this.#t.map((t=>this.#m(t,0,e)))),await this.#f()}async collapseAllNodes(){this.#r.clear(),await this.#f()}async expandToAndSelectTreeNode(e){return this.expandToAndSelectTreeNodeId(e.id)}async expandToAndSelectTreeNodeId(e){const t=await N(this.#t,e);if(null===t)throw new Error(`Could not find node with id ${e} in the tree.`);t.forEach(((e,r)=>{r<t.length-1&&this.#w(e,!0)})),this.#i=e,await this.#f()}expandNodeIds(e){return e.forEach((e=>this.#r.set(e,!0))),this.#f()}focusNodeId(e){return this.#i=e,this.#f()}async collapseChildrenOfNode(e){const t=this.#n.get(e);t&&(await this.#N(t),await this.#f())}#p(e){n.SetCSSProperty.set(this,"--override-key-whitespace-wrapping",null!==e?"nowrap":"initial")}#u(e){n.SetCSSProperty.set(this,"--override-top-node-border",e?`1px solid ${e}`:"")}async#N(e){if(!s(e)||!this.#g(e))return;const t=await this.#v(e),r=Promise.all(t.map((e=>this.#N(e))));await r,this.#w(e,!1)}async#T(e,t){const r=await w(e),n=[];for(const e of r){const r=t(e.treeNodeData),o=this.#y(e)||e.id===this.#i,i=this.#r.get(e.id);if("SHOW"===r||o||i)n.push(e);else if("FLATTEN"===r&&s(e)){const r=await this.#T(e,t);n.push(...r)}}return n}async#v(e){const t=await w(e),r=this.#a;if(!r)return t;const n=await this.#T(e,r);return n.length?n:t}#w(e,t){this.#r.set(e.id,t)}#g(e){return this.#r.get(e.id)||!1}async#m(e,t,r){if(!s(e))return;if(this.#w(e,!0),t===r||!s(e))return;const n=await this.#v(e);await Promise.all(n.map((e=>this.#m(e,t+1,r))))}#E(e){return t=>{t.stopPropagation(),s(e)&&(this.#w(e,!this.#g(e)),this.#f())}}#x(e){e.stopPropagation();const t=null!==this.getAttribute("clickabletitle"),r=e.currentTarget,n=this.#n.get(r);t&&n&&s(n)&&this.#w(n,!this.#g(n)),this.#S(r)}async#S(e){const t=this.#n.get(e);t&&(this.#s=t,await this.#f(),this.dispatchEvent(new E(t)),y.write("DOMNode focus",(()=>{e.focus()})))}#b(e){if("Home"===e){const e=this.#e.querySelector('ul[role="tree"] > li[role="treeitem"]');e&&this.#S(e)}else if("End"===e){const e=this.#e.querySelectorAll('li[role="treeitem"]'),t=e[e.length-1];t&&this.#S(t)}}async#k(e,t){const r=this.#n.get(t);if(!r)return;const n=v({currentDOMNode:t,currentTreeNode:r,direction:e,setNodeExpandedState:(e,t)=>this.#w(e,t)});await this.#S(n)}#C(e){const t=this.#n.get(e);if(t&&s(t)){const e=this.#g(t);this.#w(t,!e),this.#f()}}async#I(t){if(!(t.target instanceof HTMLLIElement))throw new Error("event.target was not an <li> element");"Home"===t.key||"End"===t.key?(t.preventDefault(),this.#b(t.key)):e.KeyboardUtilities.keyIsArrowKey(t.key)?(t.preventDefault(),await this.#k(t.key,t.target)):"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),this.#C(t.target))}#M(e){this.#i=null,this.#S(e)}#y(e){return!!this.#s&&e.id===this.#s.id}#D(e,{depth:r,setSize:o,positionInSet:i}){let d;const l=this.#g(e);if(s(e)&&l){const n=this.#v(e).then((e=>e.map(((t,n)=>this.#D(t,{depth:r+1,setSize:e.length,positionInSet:n})))));d=t.html`<ul role="group">${t.Directives.until(n)}</ul>`}else d=t.nothing;const c=this.#y(e)?0:-1,h=t.Directives.classMap({expanded:s(e)&&l,parent:s(e),selected:this.#y(e),"is-top-level":0===r,compact:this.#l}),p=t.Directives.ifDefined(s(e)?String(l):void 0);let u;return u=e.renderer?e.renderer(e,{isExpanded:l}):this.#d(e,{isExpanded:l}),t.html` <li role="treeitem" tabindex="${c}" aria-setsize="${o}" aria-expanded="${p}" aria-level="${r+1}" aria-posinset="${i+1}" class="${h}" @click="${this.#x}" track-dom-node-to-tree-node="${a(this.#n,e)}" on-render="${n.Directives.nodeRenderedCallback((t=>{t instanceof HTMLLIElement&&this.#i&&e.id===this.#i&&this.#M(t)}))}"> <span class="arrow-and-key-wrapper" @mouseover="${()=>{this.dispatchEvent(new x(e))}}" @mouseout="${()=>{this.dispatchEvent(new S(e))}}"> <span class="arrow-icon" @click="${this.#E(e)}"> </span> <span class="tree-node-key" data-node-key="${e.treeNodeData}">${u}</span> </span> ${d} </li> `}async#f(){if(!this.#c)return this.#c=!0,await y.write("TreeOutline render",(()=>{t.render(t.html` <div class="wrapping-container"> <ul role="tree" @keydown="${this.#I}"> ${this.#t.map(((e,t)=>this.#D(e,{depth:0,setSize:this.#t.length,positionInSet:t})))} </ul> </div> `,this.#e,{host:this})})),this.#o=!0,this.#c=!1,this.#h?(this.#h=!1,this.#f()):void 0;this.#h=!0}}n.CustomElements.defineComponent("devtools-tree-outline",b);var k=Object.freeze({__proto__:null,defaultRenderer:function(e){return t.html`${e.treeNodeData}`},ItemSelectedEvent:E,ItemMouseOverEvent:x,ItemMouseOutEvent:S,TreeOutline:b});export{k as TreeOutline,T as TreeOutlineUtils};
@@ -0,0 +1 @@
1
+ import*as t from"../../lit-html/lit-html.js";import*as e from"../helpers/helpers.js";const i=new CSSStyleSheet;i.replaceSync(".active.split{border-radius:50% 0% 0% 50%}.inactive.split{border-radius:0% 50% 50% 0%}.counter{display:inline-flex;align-items:center;justify-content:center}.part{display:flex;border-radius:50%;align-items:center;justify-content:center;overflow:hidden}.active{color:var(--color-button-primary-text);background-color:var(--color-primary-old)}.inactive{color:var(--color-text-disabled);background-color:var(--color-background-elevation-2)}\n/*# sourceURL=twoStatesCounter.css */\n");const s=t=>void 0!==t;class n extends HTMLElement{static litTagName=t.literal`devtools-two-states-counter`;#t=this.#e.bind(this);#i=this.attachShadow({mode:"open"});#s=0;#n=0;#r="14px";#a="14px";#o;#c;connectedCallback(){this.#i.adoptedStyleSheets=[i],e.ScheduledRender.scheduleRender(this,this.#t)}set data(t){if(t.active<0||t.inactive<0)throw new Error("Values need to be greater or equal to zero.");this.#s=t.active,this.#n=t.inactive,this.#r=s(t.width)?t.width:this.#r,this.#a=s(t.height)?t.height:this.#a,this.#o=t.activeTitle,this.#c=t.inactiveTitle,e.ScheduledRender.scheduleRender(this,this.#t)}#e(){if(0===this.#s&&0===this.#n)return;const e={part:!0,split:this.#s>0&&this.#n>0},i={...e,active:!0},s={...e,inactive:!0};t.render(t.html` <div class="counter"> ${this.#h(this.#s,i,this.#o)} ${this.#h(this.#n,s,this.#c)} </div> `,this.#i,{host:this})}#h(e,i,s){const n={width:this.#r,height:this.#a};return e>0?t.html` <span class="${t.Directives.classMap(i)}" style="${t.Directives.styleMap(n)}" title="${s}"> ${e} </span> `:t.nothing}}e.CustomElements.defineComponent("devtools-two-states-counter",n);var r=Object.freeze({__proto__:null,TwoStatesCounter:n});export{r as TwoStatesCounter};
@@ -0,0 +1 @@
1
+ import*as r from"./color_picker.js";self.ColorPicker=self.ColorPicker||{},ColorPicker=ColorPicker||{},ColorPicker.ContrastDetails=r.ContrastDetails.ContrastDetails,ColorPicker.ContrastDetails.Events=r.ContrastDetails.Events,ColorPicker.ContrastDetails.Swatch=r.ContrastDetails.Swatch,ColorPicker.ContrastInfo=r.ContrastInfo.ContrastInfo,ColorPicker.ContrastInfo.Events=r.ContrastInfo.Events,ColorPicker.ContrastOverlay=r.ContrastOverlay.ContrastOverlay,ColorPicker.ContrastRatioLineBuilder=r.ContrastOverlay.ContrastRatioLineBuilder,ColorPicker.Spectrum=r.Spectrum.Spectrum,ColorPicker.Spectrum.PaletteGenerator=r.Spectrum.PaletteGenerator,ColorPicker.Spectrum.Swatch=r.Spectrum.Swatch,ColorPicker.Spectrum.Events=r.Spectrum.Events,ColorPicker.Spectrum._ChangeSource=r.Spectrum.ChangeSource;