ember-native-devtools 1.0.2

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 (468) hide show
  1. package/bin/devtools.js +95 -0
  2. package/download/chrome-devtools-frontend.appspot.com/robots.txt/index.html +4 -0
  3. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/3d-center.svg +1 -0
  4. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/3d-pan.svg +1 -0
  5. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/3d-rotate.svg +1 -0
  6. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/Images.js +259 -0
  7. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/accelerometer-back.svg +1 -0
  8. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/accelerometer-bottom.png +0 -0
  9. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/accelerometer-front.svg +1 -0
  10. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/accelerometer-left.png +0 -0
  11. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/accelerometer-right.png +0 -0
  12. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/accelerometer-top.png +0 -0
  13. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/account-box.svg +1 -0
  14. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-content-center.svg +1 -0
  15. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-content-end.svg +1 -0
  16. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-content-space-around.svg +1 -0
  17. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-content-space-between.svg +1 -0
  18. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-content-space-evenly.svg +1 -0
  19. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-content-start.svg +1 -0
  20. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-content-stretch.svg +1 -0
  21. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-items-baseline.svg +1 -0
  22. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-items-center.svg +1 -0
  23. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-items-end.svg +1 -0
  24. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-items-start.svg +1 -0
  25. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-items-stretch.svg +1 -0
  26. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-self-center.svg +1 -0
  27. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-self-end.svg +1 -0
  28. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-self-start.svg +1 -0
  29. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/align-self-stretch.svg +1 -0
  30. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/arrow-back.svg +1 -0
  31. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/arrow-down.svg +1 -0
  32. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/arrow-drop-down-dark.svg +1 -0
  33. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/arrow-drop-down-light.svg +1 -0
  34. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/arrow-forward.svg +1 -0
  35. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/arrow-up-down-circle.svg +1 -0
  36. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/arrow-up-down.svg +1 -0
  37. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/arrow-up.svg +1 -0
  38. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/bell.svg +1 -0
  39. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/bezier-curve-filled.svg +1 -0
  40. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/bin.svg +1 -0
  41. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/bottom-panel-close.svg +1 -0
  42. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/bottom-panel-open.svg +1 -0
  43. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/brackets.svg +1 -0
  44. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/breakpoint-circle.svg +1 -0
  45. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/breakpoint-crossed-filled.svg +1 -0
  46. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/breakpoint-crossed.svg +1 -0
  47. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/brush-filled.svg +1 -0
  48. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/brush.svg +1 -0
  49. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/bug.svg +1 -0
  50. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/bundle.svg +1 -0
  51. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/calendar-today.svg +1 -0
  52. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/check-circle.svg +1 -0
  53. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/check-double.svg +1 -0
  54. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/checker.svg +1 -0
  55. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/checkmark.svg +1 -0
  56. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/chevron-double-right.svg +1 -0
  57. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/chevron-down.svg +1 -0
  58. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/chevron-left-dot.svg +1 -0
  59. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/chevron-left.svg +1 -0
  60. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/chevron-right.svg +1 -0
  61. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/chevron-up.svg +1 -0
  62. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/chromeLeft.avif +0 -0
  63. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/chromeMiddle.avif +0 -0
  64. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/chromeRight.avif +0 -0
  65. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/class.svg +1 -0
  66. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/clear-list.svg +1 -0
  67. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/clear.svg +1 -0
  68. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/cloud.svg +1 -0
  69. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/code-circle.svg +1 -0
  70. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/code.svg +1 -0
  71. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/colon.svg +1 -0
  72. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/color-picker-filled.svg +1 -0
  73. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/color-picker.svg +1 -0
  74. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/console-conditional-breakpoint.svg +1 -0
  75. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/console-logpoint.svg +1 -0
  76. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/cookie.svg +1 -0
  77. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/copy.svg +1 -0
  78. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/corporate-fare.svg +1 -0
  79. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/credit-card.svg +1 -0
  80. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/cross-circle-filled.svg +1 -0
  81. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/cross-circle.svg +1 -0
  82. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/cross.svg +1 -0
  83. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/cssoverview_icons_2x.avif +0 -0
  84. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/custom-typography.svg +1 -0
  85. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/database.svg +1 -0
  86. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/deployed.svg +1 -0
  87. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/device-fold.svg +1 -0
  88. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/devices.svg +1 -0
  89. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/devtools.svg +1 -0
  90. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/dock-bottom.svg +1 -0
  91. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/dock-left.svg +1 -0
  92. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/dock-right.svg +1 -0
  93. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/dock-window.svg +1 -0
  94. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/document.svg +1 -0
  95. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/dog-paw.svg +1 -0
  96. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/dots-horizontal.svg +1 -0
  97. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/dots-vertical.svg +1 -0
  98. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/download.svg +1 -0
  99. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/edit.svg +1 -0
  100. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/empty.svg +1 -0
  101. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/errorWave.svg +1 -0
  102. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/exclamation.svg +1 -0
  103. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/experiment-check.svg +1 -0
  104. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/experiment.svg +1 -0
  105. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/extension.svg +1 -0
  106. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/eye.svg +1 -0
  107. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/file-document.svg +1 -0
  108. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/file-fetch-xhr.svg +1 -0
  109. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/file-font.svg +1 -0
  110. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/file-generic.svg +1 -0
  111. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/file-image.svg +1 -0
  112. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/file-json.svg +1 -0
  113. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/file-manifest.svg +1 -0
  114. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/file-media.svg +1 -0
  115. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/file-script.svg +1 -0
  116. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/file-snippet.svg +1 -0
  117. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/file-stylesheet.svg +1 -0
  118. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/file-wasm.svg +1 -0
  119. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/file-websocket.svg +1 -0
  120. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/filter-clear.svg +1 -0
  121. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/filter-filled.svg +1 -0
  122. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/filter.svg +1 -0
  123. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/flex-direction.svg +1 -0
  124. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/flex-no-wrap.svg +1 -0
  125. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/flex-wrap.svg +1 -0
  126. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/flow.svg +1 -0
  127. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/fold-more.svg +1 -0
  128. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/folder.svg +1 -0
  129. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/frame-crossed.svg +1 -0
  130. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/frame-icon.svg +1 -0
  131. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/frame.svg +1 -0
  132. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/gear-filled.svg +1 -0
  133. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/gear.svg +1 -0
  134. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/gears.svg +1 -0
  135. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/globe.svg +1 -0
  136. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/google.svg +1 -0
  137. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/goto-filled.svg +1 -0
  138. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/heap-snapshot.svg +1 -0
  139. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/heap-snapshots.svg +1 -0
  140. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/help.svg +1 -0
  141. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/hover.svg +1 -0
  142. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/iframe-crossed.svg +1 -0
  143. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/iframe.svg +1 -0
  144. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/import.svg +1 -0
  145. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/indeterminate-question-box.svg +1 -0
  146. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/info-filled.svg +1 -0
  147. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/info.svg +1 -0
  148. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/issue-cross-filled.svg +1 -0
  149. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/issue-exclamation-filled.svg +1 -0
  150. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/issue-questionmark-filled.svg +1 -0
  151. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/issue-text-filled.svg +1 -0
  152. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/justify-content-center.svg +1 -0
  153. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/justify-content-end.svg +1 -0
  154. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/justify-content-space-around.svg +1 -0
  155. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/justify-content-space-between.svg +1 -0
  156. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/justify-content-space-evenly.svg +1 -0
  157. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/justify-content-start.svg +1 -0
  158. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/justify-items-center.svg +1 -0
  159. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/justify-items-end.svg +1 -0
  160. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/justify-items-start.svg +1 -0
  161. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/justify-items-stretch.svg +1 -0
  162. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/keyboard-arrow-right.svg +1 -0
  163. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/keyboard-pen.svg +1 -0
  164. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/keyboard.svg +1 -0
  165. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/large-arrow-right-filled.svg +1 -0
  166. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/layers-filled.svg +1 -0
  167. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/layers.svg +1 -0
  168. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/left-panel-close.svg +1 -0
  169. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/left-panel-open.svg +1 -0
  170. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/lightbulb-spark.svg +1 -0
  171. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/lightbulb.svg +1 -0
  172. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/lighthouse_logo.svg +1 -0
  173. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/list.svg +1 -0
  174. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/location-on.svg +1 -0
  175. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/lock.svg +1 -0
  176. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/match-case.svg +1 -0
  177. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/match-whole-word.svg +1 -0
  178. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/memory.svg +1 -0
  179. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/minus.svg +1 -0
  180. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/mop.svg +1 -0
  181. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/mouse.svg +1 -0
  182. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/navigationControls.png +0 -0
  183. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/navigationControls_2x.png +0 -0
  184. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/network-settings.svg +1 -0
  185. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/nodeIcon.avif +0 -0
  186. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/open-externally.svg +1 -0
  187. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/pause.svg +1 -0
  188. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/pen-spark.svg +1 -0
  189. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/performance.svg +1 -0
  190. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/person.svg +1 -0
  191. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/play.svg +1 -0
  192. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/plus.svg +1 -0
  193. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/policy.svg +1 -0
  194. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/popoverArrows.png +0 -0
  195. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/popup.svg +1 -0
  196. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/preview_feature_video_thumbnail.svg +1 -0
  197. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/profile.svg +1 -0
  198. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/psychiatry.svg +1 -0
  199. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/record-start.svg +1 -0
  200. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/record-stop.svg +1 -0
  201. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/redo.svg +1 -0
  202. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/refresh.svg +1 -0
  203. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/regular-expression.svg +1 -0
  204. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/replace.svg +1 -0
  205. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/replay.svg +1 -0
  206. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/report.svg +1 -0
  207. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/resizeDiagonal.svg +1 -0
  208. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/resizeHorizontal.svg +1 -0
  209. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/resizeVertical.svg +1 -0
  210. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/resume.svg +1 -0
  211. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/review.svg +1 -0
  212. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/right-panel-close.svg +1 -0
  213. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/right-panel-open.svg +1 -0
  214. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/scissors.svg +1 -0
  215. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/screen-rotation.svg +1 -0
  216. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/search.svg +1 -0
  217. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/select-element.svg +1 -0
  218. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/send.svg +1 -0
  219. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/shadow.svg +1 -0
  220. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/small-status-dot.svg +1 -0
  221. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/snippet.svg +1 -0
  222. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/spark-info.svg +1 -0
  223. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/spark.svg +1 -0
  224. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/star.svg +1 -0
  225. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/step-into.svg +1 -0
  226. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/step-out.svg +1 -0
  227. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/step-over.svg +1 -0
  228. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/step.svg +1 -0
  229. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/stop.svg +1 -0
  230. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/symbol.svg +1 -0
  231. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/sync.svg +1 -0
  232. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/table.svg +1 -0
  233. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/thumb-down.svg +1 -0
  234. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/thumb-up.svg +1 -0
  235. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/toolbarResizerVertical.png +0 -0
  236. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/top-panel-close.svg +1 -0
  237. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/top-panel-open.svg +1 -0
  238. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/touch-app.svg +1 -0
  239. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/touchCursor.png +0 -0
  240. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/touchCursor_2x.png +0 -0
  241. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/triangle-bottom-right.svg +1 -0
  242. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/triangle-down.svg +1 -0
  243. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/triangle-left.svg +1 -0
  244. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/triangle-right.svg +1 -0
  245. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/triangle-up.svg +1 -0
  246. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/tune.svg +1 -0
  247. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/undo.svg +1 -0
  248. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/warning-filled.svg +1 -0
  249. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/warning.svg +1 -0
  250. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/watch.svg +1 -0
  251. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/whatsnew.avif +0 -0
  252. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/width.svg +1 -0
  253. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/Images/zoom-in.svg +1 -0
  254. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/core/common/common.js +1 -0
  255. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/core/dom_extension/dom_extension.js +1 -0
  256. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/core/host/host.js +1 -0
  257. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/core/i18n/i18n.js +1 -0
  258. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/core/i18n/locales/en-US.json +1 -0
  259. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/core/platform/platform.js +1 -0
  260. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/core/protocol_client/protocol_client.js +1 -0
  261. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/core/root/root.js +1 -0
  262. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/core/sdk/sdk.js +1 -0
  263. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/devtools_app.html +18 -0
  264. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/devtools_compatibility.js +1774 -0
  265. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ember_app.html +26 -0
  266. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/entrypoints/devtools_app/devtools_app.js +1 -0
  267. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/entrypoints/formatter_worker/formatter_worker-entrypoint.js +1 -0
  268. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/entrypoints/formatter_worker/formatter_worker.js +1 -0
  269. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/entrypoints/heap_snapshot_worker/heap_snapshot_worker-entrypoint.js +1 -0
  270. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/entrypoints/heap_snapshot_worker/heap_snapshot_worker.js +1 -0
  271. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/entrypoints/inspector/inspector.js +1 -0
  272. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/entrypoints/inspector_main/inspector_main.js +1 -0
  273. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/entrypoints/lighthouse_worker/lighthouse_worker.js +1 -0
  274. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/entrypoints/main/main.js +1 -0
  275. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/entrypoints/shell/shell.js +1 -0
  276. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/entrypoints/wasmparser_worker/wasmparser_worker-entrypoint.js +1 -0
  277. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/entrypoints/wasmparser_worker/wasmparser_worker.js +1 -0
  278. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/inspector.html +18 -0
  279. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/autofill_manager/autofill_manager.js +1 -0
  280. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/bindings/bindings.js +1 -0
  281. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/breakpoints/breakpoints.js +1 -0
  282. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/cpu_profile/cpu_profile.js +1 -0
  283. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/crux-manager/crux-manager.js +1 -0
  284. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/emulation/emulation.js +1 -0
  285. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/extensions/extensions.js +1 -0
  286. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/formatter/formatter.js +1 -0
  287. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/har/har.js +1 -0
  288. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/heap_snapshot_model/heap_snapshot_model.js +1 -0
  289. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/issues_manager/issues_manager.js +1 -0
  290. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/javascript_metadata/javascript_metadata.js +1 -0
  291. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/live-metrics/live-metrics.js +1 -0
  292. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/live-metrics/web-vitals-injected/spec/spec.js +1 -0
  293. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/live-metrics/web-vitals-injected/web-vitals-injected.generated.js +1 -0
  294. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/logs/logs.js +1 -0
  295. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/persistence/persistence.js +1 -0
  296. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/source_map_scopes/source_map_scopes.js +1 -0
  297. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/text_utils/text_utils.js +1 -0
  298. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/timeline_model/timeline_model.js +1 -0
  299. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/trace/extras/extras.js +1 -0
  300. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/trace/handlers/handlers.js +1 -0
  301. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/trace/helpers/helpers.js +1 -0
  302. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/trace/insights/insights.js +1 -0
  303. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/trace/lantern/core/core.js +1 -0
  304. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/trace/lantern/graph/graph.js +1 -0
  305. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/trace/lantern/lantern.js +1 -0
  306. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/trace/lantern/metrics/metrics.js +1 -0
  307. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/trace/lantern/simulation/simulation.js +1 -0
  308. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/trace/lantern/types/types.js +1 -0
  309. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/trace/root-causes/root-causes.js +1 -0
  310. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/trace/trace.js +1 -0
  311. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/trace/types/types.js +1 -0
  312. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/workspace/workspace.js +1 -0
  313. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/models/workspace_diff/workspace_diff.js +1 -0
  314. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/accessibility/accessibility.js +1 -0
  315. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/animation/animation.js +1 -0
  316. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/application/application.js +41 -0
  317. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/application/components/components.js +614 -0
  318. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/application/preloading/components/components.js +292 -0
  319. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/application/preloading/helper/helper.js +1 -0
  320. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/autofill/autofill.js +88 -0
  321. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/browser_debugger/browser_debugger.js +1 -0
  322. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/changes/changes.js +1 -0
  323. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/console/console.js +6 -0
  324. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/console_counters/console_counters.js +1 -0
  325. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/coverage/coverage.js +1 -0
  326. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/css_overview/components/components.js +23 -0
  327. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/css_overview/css_overview.js +147 -0
  328. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/developer_resources/developer_resources.js +1 -0
  329. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/elements/components/components.js +272 -0
  330. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/elements/elements.js +8 -0
  331. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/emulation/components/components.js +39 -0
  332. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/emulation/emulation.js +1 -0
  333. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/event_listeners/event_listeners.js +1 -0
  334. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/explain/explain.js +203 -0
  335. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/freestyler/freestyler.js +177 -0
  336. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/issues/components/components.js +14 -0
  337. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/issues/issues.js +1 -0
  338. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/layer_viewer/layer_viewer.js +1 -0
  339. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/layers/layers.js +1 -0
  340. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/lighthouse/lighthouse.js +64 -0
  341. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/linear_memory_inspector/components/components.js +177 -0
  342. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/linear_memory_inspector/linear_memory_inspector.js +1 -0
  343. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/media/media.js +25 -0
  344. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/mobile_throttling/mobile_throttling.js +1 -0
  345. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/network/components/components.js +315 -0
  346. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/network/forward/forward.js +1 -0
  347. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/network/network.js +1 -0
  348. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/performance_monitor/performance_monitor.js +1 -0
  349. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/profiler/profiler.js +8 -0
  350. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/protocol_monitor/components/components.js +180 -0
  351. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/protocol_monitor/protocol_monitor.js +1 -0
  352. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/recorder/components/components.js +714 -0
  353. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/recorder/controllers/controllers.js +1 -0
  354. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/recorder/converters/converters.js +1 -0
  355. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/recorder/extensions/extensions.js +1 -0
  356. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/recorder/injected/injected.generated.js +1 -0
  357. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/recorder/models/models.js +1 -0
  358. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/recorder/recorder.js +120 -0
  359. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/recorder/util/util.js +1 -0
  360. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/screencast/screencast.js +1 -0
  361. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/search/search.js +1 -0
  362. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/security/security.js +1 -0
  363. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/sensors/sensors.js +1 -0
  364. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/settings/components/components.js +23 -0
  365. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/settings/emulation/components/components.js +222 -0
  366. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/settings/emulation/emulation.js +1 -0
  367. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/settings/emulation/utils/utils.js +1 -0
  368. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/settings/settings.js +130 -0
  369. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/snippets/snippets.js +1 -0
  370. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/sources/components/components.js +162 -0
  371. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/sources/sources.js +14 -0
  372. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/timeline/components/components.js +623 -0
  373. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/timeline/components/insights/insights.js +85 -0
  374. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/timeline/extensions/extensions.js +1 -0
  375. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/timeline/overlays/components/components.js +52 -0
  376. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/timeline/overlays/overlays.js +1 -0
  377. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/timeline/timeline.js +4 -0
  378. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/timeline/utils/utils.js +1 -0
  379. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/utils/utils.js +1 -0
  380. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/web_audio/graph_visualizer/graph_visualizer.js +1 -0
  381. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/web_audio/web_audio.js +23 -0
  382. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/panels/webauthn/webauthn.js +6 -0
  383. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/services/puppeteer/puppeteer.js +1 -0
  384. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/services/trace_bounds/trace_bounds.js +1 -0
  385. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/services/tracing/tracing.js +1 -0
  386. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/services/window_bounds/window_bounds.js +1 -0
  387. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/setup-ember-extension.js +160 -0
  388. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/acorn/acorn.js +1 -0
  389. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/chromium/client-variations/client-variations.js +1 -0
  390. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/chunk/angular.js +2 -0
  391. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/chunk/codemirror.js +2 -0
  392. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/chunk/cpp.js +2 -0
  393. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/chunk/java.js +2 -0
  394. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/chunk/legacy.js +2 -0
  395. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/chunk/less.js +2 -0
  396. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/chunk/markdown.js +2 -0
  397. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/chunk/php.js +2 -0
  398. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/chunk/python.js +2 -0
  399. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/chunk/sass.js +2 -0
  400. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/chunk/svelte.js +2 -0
  401. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/chunk/vue.js +2 -0
  402. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/chunk/wast.js +2 -0
  403. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/chunk/xml.js +2 -0
  404. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/codemirror.next/codemirror.next.js +2 -0
  405. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/csp_evaluator/csp_evaluator.js +194 -0
  406. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/diff/diff.js +1 -0
  407. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/i18n/i18n.js +1 -0
  408. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/intl-messageformat/intl-messageformat.js +15 -0
  409. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/lighthouse/lighthouse-dt-bundle.js +2137 -0
  410. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/lighthouse/report/report.js +39 -0
  411. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/lit/lit.js +110 -0
  412. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/marked/marked.js +1 -0
  413. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/puppeteer/debug/index.html +4 -0
  414. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/puppeteer/puppeteer.js +378 -0
  415. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/puppeteer-replay/lighthouse/index.html +4 -0
  416. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/puppeteer-replay/puppeteer/index.html +4 -0
  417. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/puppeteer-replay/puppeteer-replay.js +1 -0
  418. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/third_party/wasmparser/wasmparser.js +1 -0
  419. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/adorners/adorners.js +3 -0
  420. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/buttons/buttons.js +11 -0
  421. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/chrome_link/chrome_link.js +5 -0
  422. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/code_highlighter/code_highlighter.js +1 -0
  423. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/data_grid/data_grid.js +69 -0
  424. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/dialogs/dialogs.js +81 -0
  425. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/diff_view/diff_view.js +8 -0
  426. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/expandable_list/expandable_list.js +17 -0
  427. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/helpers/helpers.js +1 -0
  428. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/highlighting/highlighting.js +1 -0
  429. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/icon_button/icon_button.js +12 -0
  430. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/input/input.js +1 -0
  431. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/issue_counter/issue_counter.js +9 -0
  432. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/legacy_wrapper/legacy_wrapper.js +1 -0
  433. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/linkifier/linkifier.js +1 -0
  434. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/markdown_view/markdown_view.js +41 -0
  435. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/menus/menus.js +73 -0
  436. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/node_text/node_text.js +3 -0
  437. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/panel_feedback/panel_feedback.js +37 -0
  438. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/panel_introduction_steps/panel_introduction_steps.js +9 -0
  439. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/render_coordinator/render_coordinator.js +1 -0
  440. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/report_view/report_view.js +21 -0
  441. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/request_link_icon/request_link_icon.js +8 -0
  442. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/settings/settings.js +16 -0
  443. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/split_view/split_view.js +9 -0
  444. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/srgb_overlay/srgb_overlay.js +6 -0
  445. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/suggestion_input/suggestion_input.js +29 -0
  446. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/switch/switch.js +10 -0
  447. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/text_editor/text_editor.js +1 -0
  448. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/text_prompt/text_prompt.js +3 -0
  449. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/components/tree_outline/tree_outline.js +30 -0
  450. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/legacy/components/color_picker/color_picker.js +1 -0
  451. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/legacy/components/cookie_table/cookie_table.js +1 -0
  452. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/legacy/components/data_grid/data_grid.js +1 -0
  453. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/legacy/components/inline_editor/inline_editor.js +46 -0
  454. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/legacy/components/object_ui/object_ui.js +9 -0
  455. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/legacy/components/perf_ui/perf_ui.js +59 -0
  456. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/legacy/components/quick_open/quick_open.js +1 -0
  457. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/legacy/components/source_frame/source_frame.js +1 -0
  458. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/legacy/components/utils/utils.js +1 -0
  459. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/legacy/legacy.js +3 -0
  460. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/legacy/theme_support/theme_support.js +1 -0
  461. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/lit-html/lit-html.js +1 -0
  462. package/download/chrome-devtools-frontend.appspot.com/serve_file/@abb728f8afc6a86cc66b1313f5056728ce422ddd/ui/visual_logging/visual_logging.js +1 -0
  463. package/download/googlechrome.github.io/lighthouse/scorecalc/calc.js +838 -0
  464. package/download/googlechrome.github.io/lighthouse/scorecalc/index.html +78 -0
  465. package/download/googlechrome.github.io/lighthouse/scorecalc/style.css +554 -0
  466. package/download/wicg.github.io/attribution-reporting-api/validate-headers/index.html +104 -0
  467. package/download/wicg.github.io/attribution-reporting-api/validate-headers.js +1 -0
  468. package/package.json +31 -0
@@ -0,0 +1,714 @@
1
+ import*as e from"../../../ui/lit-html/lit-html.js";import*as t from"../../../ui/legacy/legacy.js";import*as s from"../../../core/i18n/i18n.js";import*as i from"../../../ui/components/buttons/buttons.js";import*as r from"../../../ui/components/icon_button/icon_button.js";import*as o from"../../../ui/components/input/input.js";import*as n from"../../../ui/visual_logging/visual_logging.js";import*as a from"../models/models.js";import*as l from"../../../ui/components/helpers/helpers.js";import*as c from"../../../core/host/host.js";import*as d from"../../../core/platform/platform.js";import*as p from"../../../core/sdk/sdk.js";import*as u from"../../../third_party/codemirror.next/codemirror.next.js";import*as h from"../../../ui/components/code_highlighter/code_highlighter.js";import"../../../ui/components/dialogs/dialogs.js";import*as g from"../../../ui/components/menus/menus.js";import*as v from"../../../ui/components/split_view/split_view.js";import*as m from"../../../ui/components/text_editor/text_editor.js";import*as b from"../extensions/extensions.js";import*as f from"../../../ui/components/panel_feedback/panel_feedback.js";import*as w from"../../../ui/components/panel_introduction_steps/panel_introduction_steps.js";import*as y from"../../../ui/components/suggestion_input/suggestion_input.js";import*as S from"../controllers/controllers.js";import*as x from"../util/util.js";const $=new CSSStyleSheet;$.replaceSync('*{margin:0;padding:0;box-sizing:border-box;font-size:inherit}.control{background:none;border:none;display:flex;flex-direction:column;align-items:center}.control[disabled]{filter:grayscale(100%);cursor:auto}.icon{display:flex;width:40px;height:40px;border-radius:50%;background:var(--sys-color-error-bright);margin-bottom:8px;position:relative;transition:background 200ms;justify-content:center;align-content:center;align-items:center}.icon::before{--override-white:#fff;box-sizing:border-box;content:"";display:block;width:14px;height:14px;border:1px solid var(--override-white);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--override-white)}.icon.square::before{border-radius:0}.icon.circle::before{border-radius:50%}.icon:hover{background:color-mix(in sRGB,var(--sys-color-error-bright),var(--sys-color-state-hover-on-prominent) 10%)}.icon:active{background:color-mix(in sRGB,var(--sys-color-error-bright),var(--sys-color-state-ripple-neutral-on-prominent) 16%)}.control[disabled] .icon:hover{background:var(--sys-color-error)}.label{font-size:12px;line-height:16px;text-align:center;letter-spacing:0.02em;color:var(--sys-color-on-surface)}\n/*# sourceURL=controlButton.css */\n');var k=self&&self.__decorate||function(e,t,s,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,s):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,s,i);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(n=(o<3?r(n):o>3?r(t,s,n):r(t,s))||n);return o>3&&n&&Object.defineProperty(t,s,n),n};const{html:T,Decorators:E,LitElement:R}=e,{customElement:C,property:I}=E;let N=class extends R{static styles=[$];constructor(){super(),this.label="",this.shape="square",this.disabled=!1}#e=e=>{this.disabled&&(e.stopPropagation(),e.preventDefault())};render(){return T`
2
+ <button
3
+ @click=${this.#e}
4
+ .disabled=${this.disabled}
5
+ class="control"
6
+ >
7
+ <div class="icon ${this.shape}"></div>
8
+ <div class="label">${this.label}</div>
9
+ </button>
10
+ `}};k([I()],N.prototype,"label",void 0),k([I()],N.prototype,"shape",void 0),k([I()],N.prototype,"disabled",void 0),N=k([C("devtools-control-button")],N);var B=Object.freeze({__proto__:null,get ControlButton(){return N}});const j=new CSSStyleSheet;j.replaceSync('*{margin:0;padding:0;outline:none;box-sizing:border-box;font-size:inherit}.wrapper{padding:24px;flex:1}h1{font-size:18px;line-height:24px;letter-spacing:0.02em;color:var(--sys-color-on-surface);margin:0;font-weight:normal}.row-label{font-weight:500;font-size:11px;line-height:16px;letter-spacing:0.8px;text-transform:uppercase;color:var(--sys-color-secondary);margin-bottom:8px;margin-top:32px;display:flex;align-items:center;gap:3px}.footer{display:flex;justify-content:center;border-top:1px solid var(--sys-color-divider);padding:12px;background:var(--sys-color-cdt-base-container)}.controls{display:flex}.error{margin:16px 0 0;padding:8px;background:var(--sys-color-error-container);color:var(--sys-color-error)}.row-label .link:focus-visible{outline:var(--sys-color-state-focus-ring) auto 1px}.header-wrapper{display:flex;align-items:baseline;justify-content:space-between}.checkbox-label{display:inline-flex;align-items:center;overflow:hidden;text-overflow:ellipsis;gap:4px;line-height:1.1;padding:4px}.checkbox-container{display:flex;flex-flow:row wrap;gap:10px}input[type="checkbox"]:focus-visible{outline:var(--sys-color-state-focus-ring) auto 1px}devtools-icon[name="help"]{width:16px;height:16px}\n/*# sourceURL=createRecordingView.css */\n');const M={recordingName:"Recording name",startRecording:"Start recording",createRecording:"Create a new recording",recordingNameIsRequired:"Recording name is required",selectorAttribute:"Selector attribute",cancelRecording:"Cancel recording",selectorTypeCSS:"CSS",selectorTypePierce:"Pierce",selectorTypeARIA:"ARIA",selectorTypeText:"Text",selectorTypeXPath:"XPath",selectorTypes:"Selector types to record",includeNecessarySelectors:"You must choose CSS, Pierce, or XPath as one of your options. Only these selectors are guaranteed to be recorded since ARIA and text selectors may not be unique.",learnMore:"Learn more"},A=s.i18n.registerUIStrings("panels/recorder/components/CreateRecordingView.ts",M),P=s.i18n.getLocalizedString.bind(void 0,A);class L extends Event{static eventName="recordingstarted";name;selectorAttribute;selectorTypesToRecord;constructor(e,t,s){super(L.eventName,{}),this.name=e,this.selectorAttribute=s||void 0,this.selectorTypesToRecord=t}}class F extends Event{static eventName="recordingcancelled";constructor(){super(F.eventName)}}class O extends HTMLElement{static litTagName=e.literal`devtools-create-recording-view`;#t=this.attachShadow({mode:"open"});#s="";#i;#r;constructor(){super(),this.setAttribute("jslog",`${n.section("create-recording-view")}`)}connectedCallback(){this.#t.adoptedStyleSheets=[j,o.textInputStyles,o.checkboxStyles],this.#o(),this.#t.querySelector("input")?.focus()}set data(e){this.#r=e.recorderSettings,this.#s=this.#r.defaultTitle}#n(e){this.#i&&(this.#i=void 0,this.#o());"Enter"===e.key&&(this.startRecording(),e.stopPropagation(),e.preventDefault())}startRecording(){const e=this.#t.querySelector("#user-flow-name");if(!e)throw new Error("input#user-flow-name not found");if(!this.#r)throw new Error("settings not set");if(!e.value.trim())return this.#i=new Error(P(M.recordingNameIsRequired)),void this.#o();const t=this.#t.querySelectorAll(".selector-type input[type=checkbox]"),s=[];for(const e of t){const t=e,i=t.value;t.checked&&s.push(i)}if(!s.includes(a.Schema.SelectorType.CSS)&&!s.includes(a.Schema.SelectorType.XPath)&&!s.includes(a.Schema.SelectorType.Pierce))return this.#i=new Error(P(M.includeNecessarySelectors)),void this.#o();for(const e of Object.values(a.Schema.SelectorType))this.#r.setSelectorByType(e,s.includes(e));const i=this.#t.querySelector("#selector-attribute").value.trim();this.#r.selectorAttribute=i,this.dispatchEvent(new L(e.value.trim(),s,i))}#a(){this.dispatchEvent(new F)}#l=()=>{this.#t.querySelector("#user-flow-name")?.select()};#o(){const t=new Map([[a.Schema.SelectorType.ARIA,P(M.selectorTypeARIA)],[a.Schema.SelectorType.CSS,P(M.selectorTypeCSS)],[a.Schema.SelectorType.Text,P(M.selectorTypeText)],[a.Schema.SelectorType.XPath,P(M.selectorTypeXPath)],[a.Schema.SelectorType.Pierce,P(M.selectorTypePierce)]]);e.render(e.html`
11
+ <div class="wrapper">
12
+ <div class="header-wrapper">
13
+ <h1>${P(M.createRecording)}</h1>
14
+ <${i.Button.Button.litTagName}
15
+ title=${P(M.cancelRecording)}
16
+ jslog=${n.close().track({click:!0})}
17
+ .data=${{variant:"icon",size:"SMALL",iconName:"cross"}}
18
+ @click=${this.#a}
19
+ ></${i.Button.Button.litTagName}>
20
+ </div>
21
+ <label class="row-label" for="user-flow-name">${P(M.recordingName)}</label>
22
+ <input
23
+ value=${this.#s}
24
+ @focus=${this.#l}
25
+ @keydown=${this.#n}
26
+ jslog=${n.textField("user-flow-name").track({change:!0})}
27
+ class="devtools-text-input"
28
+ id="user-flow-name"
29
+ />
30
+ <label class="row-label" for="selector-attribute">
31
+ <span>${P(M.selectorAttribute)}</span>
32
+ <x-link
33
+ class="link" href="https://g.co/devtools/recorder#selector"
34
+ title=${P(M.learnMore)}
35
+ jslog=${n.link("recorder-selector-help").track({click:!0})}>
36
+ <${r.Icon.Icon.litTagName} name="help">
37
+ </${r.Icon.Icon.litTagName}>
38
+ </x-link>
39
+ </label>
40
+ <input
41
+ value=${this.#r?.selectorAttribute}
42
+ placeholder="data-testid"
43
+ @keydown=${this.#n}
44
+ jslog=${n.textField("selector-attribute").track({change:!0})}
45
+ class="devtools-text-input"
46
+ id="selector-attribute"
47
+ />
48
+ <label class="row-label">
49
+ <span>${P(M.selectorTypes)}</span>
50
+ <x-link
51
+ class="link" href="https://g.co/devtools/recorder#selector"
52
+ title=${P(M.learnMore)}
53
+ jslog=${n.link("recorder-selector-help").track({click:!0})}>
54
+ <${r.Icon.Icon.litTagName} name="help">
55
+ </${r.Icon.Icon.litTagName}>
56
+ </x-link>
57
+ </label>
58
+ <div class="checkbox-container">
59
+ ${Object.values(a.Schema.SelectorType).map((s=>{const i=this.#r?.getSelectorByType(s);return e.html`
60
+ <label class="checkbox-label selector-type">
61
+ <input
62
+ @keydown=${this.#n}
63
+ .value=${s}
64
+ jslog=${n.toggle().track({click:!0}).context(`selector-${s}`)}
65
+ checked=${e.Directives.ifDefined(i||void 0)}
66
+ type="checkbox"
67
+ />
68
+ ${t.get(s)||s}
69
+ </label>
70
+ `}))}
71
+ </div>
72
+
73
+ ${this.#i&&e.html`
74
+ <div class="error" role="alert">
75
+ ${this.#i.message}
76
+ </div>
77
+ `}
78
+ </div>
79
+ <div class="footer">
80
+ <div class="controls">
81
+ <devtools-control-button
82
+ @click=${this.startRecording}
83
+ .label=${P(M.startRecording)}
84
+ .shape=${"circle"}
85
+ jslog=${n.action("chrome-recorder.start-recording").track({click:!0})}
86
+ title=${a.Tooltip.getTooltipForActions(P(M.startRecording),"chrome-recorder.start-recording")}
87
+ ></devtools-control-button>
88
+ </div>
89
+ </div>
90
+ `,this.#t,{host:this})}}customElements.define("devtools-create-recording-view",O);var D=Object.freeze({__proto__:null,RecordingStartedEvent:L,RecordingCancelledEvent:F,CreateRecordingView:O});const z=new CSSStyleSheet;z.replaceSync("*{margin:0;padding:0;box-sizing:border-box;font-size:inherit}*:focus,\n*:focus-visible{outline:none}.wrapper{padding:24px}.header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}h1{font-size:16px;line-height:19px;color:var(--sys-color-on-surface);font-weight:normal}.icon,\n.icon devtools-icon{width:20px;height:20px;color:var(--sys-color-primary)}.table{margin-top:35px}.title{font-size:13px;color:var(--sys-color-on-surface);margin-left:10px;flex:1;overflow-x:hidden;white-space:nowrap;text-overflow:ellipsis}.row{display:flex;align-items:center;padding-right:5px;height:28px;border-bottom:1px solid var(--sys-color-divider)}.row:focus-within,\n.row:hover{background-color:var(--sys-color-state-hover-on-subtle)}.row:last-child{border-bottom:none}.actions{display:flex;align-items:center}.actions button{border:none;background-color:transparent;width:24px;height:24px;border-radius:50%}.actions .divider{width:1px;height:17px;background-color:var(--sys-color-divider);margin:0 6px}\n/*# sourceURL=recordingListView.css */\n");const V={savedRecordings:"Saved recordings",createRecording:"Create a new recording",playRecording:"Play recording",deleteRecording:"Delete recording",openRecording:"Open recording"},_=s.i18n.registerUIStrings("panels/recorder/components/RecordingListView.ts",V),U=s.i18n.getLocalizedString.bind(void 0,_);class K extends Event{static eventName="createrecording";constructor(){super(K.eventName)}}class q extends Event{storageName;static eventName="deleterecording";constructor(e){super(q.eventName),this.storageName=e}}class G extends Event{storageName;static eventName="openrecording";constructor(e){super(G.eventName),this.storageName=e}}class H extends Event{storageName;static eventName="playrecording";constructor(e){super(H.eventName),this.storageName=e}}class W extends HTMLElement{static litTagName=e.literal`devtools-recording-list-view`;#t=this.attachShadow({mode:"open"});#c={recordings:[],replayAllowed:!0};constructor(){super()}connectedCallback(){this.#t.adoptedStyleSheets=[z],l.ScheduledRender.scheduleRender(this,this.#o)}set recordings(e){this.#c.recordings=e,l.ScheduledRender.scheduleRender(this,this.#o)}set replayAllowed(e){this.#c.replayAllowed=e,l.ScheduledRender.scheduleRender(this,this.#o)}#d(){this.dispatchEvent(new K)}#p(e,t){t.stopPropagation(),this.dispatchEvent(new q(e))}#u(e,t){t.stopPropagation(),this.dispatchEvent(new G(e))}#h(e,t){t.stopPropagation(),this.dispatchEvent(new H(e))}#n(e,t){"Enter"===t.key&&this.#u(e,t)}#g(e){e.stopPropagation()}#o=()=>{e.render(e.html`
91
+ <div class="wrapper">
92
+ <div class="header">
93
+ <h1>${U(V.savedRecordings)}</h1>
94
+ <${i.Button.Button.litTagName}
95
+ .variant=${"primary"}
96
+ @click=${this.#d}
97
+ title=${a.Tooltip.getTooltipForActions(U(V.createRecording),"chrome-recorder.create-recording")}
98
+ .jslogContext=${"create-recording"}
99
+ >
100
+ ${U(V.createRecording)}
101
+ </${i.Button.Button.litTagName}>
102
+ </div>
103
+ <div class="table">
104
+ ${this.#c.recordings.map((t=>e.html`
105
+ <div
106
+ role="button"
107
+ tabindex="0"
108
+ aria-label=${U(V.openRecording)}
109
+ class="row"
110
+ @keydown=${this.#n.bind(this,t.storageName)}
111
+ @click=${this.#u.bind(this,t.storageName)}
112
+ jslog=${n.item().track({click:!0}).context("recording")}>
113
+ <div class="icon">
114
+ <${r.Icon.Icon.litTagName} name="flow">
115
+ </${r.Icon.Icon.litTagName}>
116
+ </div>
117
+ <div class="title">${t.name}</div>
118
+ <div class="actions">
119
+ ${this.#c.replayAllowed?e.html`
120
+ <${i.Button.Button.litTagName}
121
+ title=${U(V.playRecording)}
122
+ .data=${{variant:"icon",iconName:"play",jslogContext:"play-recording"}}
123
+ @click=${this.#h.bind(this,t.storageName)}
124
+ @keydown=${this.#g}
125
+ ></${i.Button.Button.litTagName}>
126
+ <div class="divider"></div>`:""}
127
+ <${i.Button.Button.litTagName}
128
+ class="delete-recording-button"
129
+ title=${U(V.deleteRecording)}
130
+ .data=${{variant:"icon",iconName:"bin",jslogContext:"delete-recording"}}
131
+ @click=${this.#p.bind(this,t.storageName)}
132
+ @keydown=${this.#g}
133
+ ></${i.Button.Button.litTagName}>
134
+ </div>
135
+ </div>
136
+ `))}
137
+ </div>
138
+ </div>
139
+ `,this.#t,{host:this})}}customElements.define("devtools-recording-list-view",W);var X=Object.freeze({__proto__:null,CreateRecordingEvent:K,DeleteRecordingEvent:q,OpenRecordingEvent:G,PlayRecordingEvent:H,RecordingListView:W});const Y=new CSSStyleSheet;Y.replaceSync("*{margin:0;padding:0;outline:none;box-sizing:border-box;font-size:inherit}.extension-view{display:flex;flex-direction:column;height:100%}main{flex:1}iframe{border:none;height:100%;width:100%}header{display:flex;padding:3px 8px;justify-content:space-between;border-bottom:1px solid var(--sys-color-divider)}header > div{align-self:center}.icon{display:block;width:16px;height:16px;color:var(--sys-color-secondary)}.title{display:flex;flex-direction:row;gap:6px;color:var(--sys-color-secondary);align-items:center;font-weight:500}\n/*# sourceURL=extensionView.css */\n");const J={closeView:"Close",extension:"Content provided by a browser extension"},Q=s.i18n.registerUIStrings("panels/recorder/components/ExtensionView.ts",J),Z=s.i18n.getLocalizedString.bind(void 0,Q);class ee extends Event{static eventName="recorderextensionviewclosed";constructor(){super(ee.eventName,{bubbles:!0,composed:!0})}}class te extends HTMLElement{static litTagName=e.literal`devtools-recorder-extension-view`;#t=this.attachShadow({mode:"open"});#v;constructor(){super(),this.setAttribute("jslog",`${n.section("extension-view")}`)}connectedCallback(){this.#t.adoptedStyleSheets=[Y],this.#o()}disconnectedCallback(){this.#v&&b.ExtensionManager.ExtensionManager.instance().getView(this.#v.id).hide()}set descriptor(e){this.#v=e,this.#o(),b.ExtensionManager.ExtensionManager.instance().getView(e.id).show()}#m(){this.dispatchEvent(new ee)}#o(){if(!this.#v)return;const t=b.ExtensionManager.ExtensionManager.instance().getView(this.#v.id).frame();e.render(e.html`
140
+ <div class="extension-view">
141
+ <header>
142
+ <div class="title">
143
+ <${r.Icon.Icon.litTagName}
144
+ class="icon"
145
+ title=${Z(J.extension)}
146
+ name="extension">
147
+ </${r.Icon.Icon.litTagName}>
148
+ ${this.#v.title}
149
+ </div>
150
+ <${i.Button.Button.litTagName}
151
+ title=${Z(J.closeView)}
152
+ jslog=${n.close().track({click:!0})}
153
+ .data=${{variant:"icon",size:"SMALL",iconName:"cross"}}
154
+ @click=${this.#m}
155
+ ></${i.Button.Button.litTagName}>
156
+ </header>
157
+ <main>
158
+ ${t}
159
+ <main>
160
+ </div>
161
+ `,this.#t,{host:this})}}customElements.define("devtools-recorder-extension-view",te);const se=new CSSStyleSheet;se.replaceSync('*{padding:0;margin:0;box-sizing:border-box;font-size:inherit}.wrapper{display:flex;flex-direction:row;flex:1;height:100%}.main{overflow:hidden;display:flex;flex-direction:column;flex:1}.sections{flex:1;min-height:0;overflow:hidden auto;background-color:var(--sys-color-cdt-base-container);z-index:0;position:relative;container:sections/inline-size}.section{display:flex;padding:0 16px;gap:8px;position:relative}.section::after{content:"";border-bottom:1px solid var(--sys-color-divider);position:absolute;left:0;right:0;bottom:0;z-index:-1}.section:last-child{margin-bottom:70px}.section:last-child::after{content:none}.screenshot-wrapper{flex:0 0 80px;padding-top:32px;z-index:2}@container sections (max-width: 400px){.screenshot-wrapper{display:none}}.screenshot{object-fit:cover;object-position:top center;max-width:100%;width:200px;height:auto;border:1px solid var(--sys-color-divider);border-radius:1px}.content{flex:1;min-width:0}.steps{flex:1;position:relative;align-self:flex-start;overflow:visible}.step{position:relative;padding-left:40px;margin:16px 0}.step .action{font-size:13px;line-height:16px;letter-spacing:0.03em}.recording{color:var(--sys-color-primary);font-style:italic;margin-top:8px;margin-bottom:0}.add-assertion-button{margin-top:8px}.details{max-width:240px;display:flex;flex-direction:column;align-items:flex-end}.url{font-size:12px;line-height:16px;letter-spacing:0.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--sys-color-secondary);max-width:100%;margin-bottom:16px}.header{align-items:center;border-bottom:1px solid var(--sys-color-divider);display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding:16px}.header-title-wrapper{max-width:100%}.header-title{align-items:center;display:flex;flex:1;max-width:100%}.header-title::before{content:"";min-width:12px;height:12px;display:inline-block;background:var(--sys-color-primary);border-radius:50%;margin-right:7px}#title-input{box-sizing:content-box;font-family:inherit;font-size:18px;line-height:22px;letter-spacing:0.02em;padding:1px 4px;border:1px solid transparent;border-radius:1px;word-break:break-all}#title-input:hover{border-color:var(--input-outline)}#title-input.has-error{border-color:var(--sys-color-error)}#title-input.disabled{color:var(--sys-color-state-disabled)}.title-input-error-text{margin-top:4px;margin-left:19px;color:var(--sys-color-error)}.title-button-bar{padding-left:2px;display:flex}#title-input:focus + .title-button-bar{display:none}.settings-row{padding:16px 28px;border-bottom:1px solid var(--sys-color-divider);display:flex;flex-flow:row wrap;justify-content:space-between}.settings-title{font-size:14px;line-height:24px;letter-spacing:0.03em;color:var(--sys-color-on-surface);display:flex;align-items:center;align-content:center;gap:5px;width:fit-content}.settings{margin-top:4px;display:flex;font-size:12px;line-height:20px;letter-spacing:0.03em;color:var(--sys-color-on-surface-subtle)}.settings.expanded{gap:10px}.settings .separator{width:1px;height:20px;background-color:var(--sys-color-divider);margin:0 5px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.actions .separator{width:1px;height:24px;background-color:var(--sys-color-divider)}.is-recording .header-title::before{background:var(--sys-color-error-bright)}.footer{display:flex;justify-content:center;border-top:1px solid var(--sys-color-divider);padding:12px;background:var(--sys-color-cdt-base-container);z-index:1}.controls{align-items:center;display:flex;justify-content:center;position:relative;width:100%}.chevron{width:14px;height:14px;transform:rotate(-90deg);color:var(--sys-color-on-surface)}.expanded .chevron{transform:rotate(0)}.editable-setting{display:flex;flex-direction:row;gap:12px;align-items:center}.editable-setting devtools-select-menu{height:32px}.editable-setting .devtools-text-input{width:fit-content}.wrapping-label{display:inline-flex;align-items:center;gap:12px}.text-editor{height:100%;overflow:auto}.section-toolbar{display:flex;align-items:center;padding:3px 5px;justify-content:space-between;gap:3px}.section-toolbar > devtools-select-menu{height:24px;min-width:50px}.sections .section-toolbar{justify-content:flex-end}devtools-split-view{flex:1 1 0%;min-height:0}[slot="sidebar"]{display:flex;flex-direction:column;overflow:auto;height:100%;width:100%}[slot="sidebar"] .section-toolbar{border-bottom:1px solid var(--sys-color-divider)}.show-code{margin-right:14px;margin-top:8px}devtools-recorder-extension-view{flex:1}\n/*# sourceURL=recordingView.css */\n');const ie=new CSSStyleSheet;ie.replaceSync(".select-button{display:flex;gap:12px}.select-button devtools-button{position:relative}.select-menu-item-content-with-icon{display:flex;align-items:center}\n/*# sourceURL=selectButton.css */\n");class re extends Event{value;static eventName="selectbuttonclick";constructor(e){super(re.eventName,{bubbles:!0,composed:!0}),this.value=e}}class oe extends Event{value;static eventName="selectmenuselected";constructor(e){super(oe.eventName,{bubbles:!0,composed:!0}),this.value=e}}class ne extends HTMLElement{static litTagName=e.literal`devtools-select-button`;#t=this.attachShadow({mode:"open"});#c={disabled:!1,value:"",items:[],buttonLabel:"",groups:[],variant:"primary"};connectedCallback(){this.#t.adoptedStyleSheets=[ie],l.ScheduledRender.scheduleRender(this,this.#o)}get disabled(){return this.#c.disabled}set disabled(e){this.#c.disabled=e,l.ScheduledRender.scheduleRender(this,this.#o)}get items(){return this.#c.items}set items(e){this.#c.items=e,l.ScheduledRender.scheduleRender(this,this.#o)}set buttonLabel(e){this.#c.buttonLabel=e}set groups(e){this.#c.groups=e,l.ScheduledRender.scheduleRender(this,this.#o)}get value(){return this.#c.value}set value(e){this.#c.value=e,l.ScheduledRender.scheduleRender(this,this.#o)}get variant(){return this.#c.variant}set variant(e){this.#c.variant=e,l.ScheduledRender.scheduleRender(this,this.#o)}set action(e){this.#c.action=e,l.ScheduledRender.scheduleRender(this,this.#o)}#b(e){e.stopPropagation(),this.dispatchEvent(new re(this.#c.value))}#f(e){this.dispatchEvent(new oe(e.itemValue)),l.ScheduledRender.scheduleRender(this,this.#o)}#w(t,s){return e.html`
162
+ <${g.Menu.MenuItem.litTagName} .value=${t.value} .selected=${t.value===s.value} jslog=${n.item(d.StringUtilities.toKebabCase(t.value)).track({click:!0})}>
163
+ ${t.label()}
164
+ </${g.Menu.MenuItem.litTagName}>
165
+ `}#y(t,s){return e.html`
166
+ <${g.Menu.MenuGroup.litTagName} .name=${t.name}>
167
+ ${t.items.map((e=>this.#w(e,s)))}
168
+ </${g.Menu.MenuGroup.litTagName}>
169
+ `}#S(e){return this.#c.action?a.Tooltip.getTooltipForActions(e,this.#c.action):""}#o=()=>{const t=Boolean(this.#c.groups.length),s=t?this.#c.groups.flatMap((e=>e.items)):this.#c.items,r=s.find((e=>e.value===this.#c.value))||s[0];if(!r)return;const o={primary:"primary"===this.#c.variant,secondary:"outlined"===this.#c.variant},n="outlined"===this.#c.variant?"outlined":"primary",a=r.buttonLabel?r.buttonLabel():r.label();e.render(e.html`
170
+ <div class="select-button" title=${this.#S(a)||e.nothing}>
171
+ <${g.SelectMenu.SelectMenu.litTagName}
172
+ class=${e.Directives.classMap(o)}
173
+ @selectmenuselected=${this.#f}
174
+ ?disabled=${this.#c.disabled}
175
+ .showArrow=${!0}
176
+ .sideButton=${!1}
177
+ .showSelectedItem=${!0}
178
+ .disabled=${this.#c.disabled}
179
+ .buttonTitle=${e.html`${a}`}
180
+ .position=${"bottom"}
181
+ .horizontalAlignment=${"right"}
182
+ >
183
+ ${t?this.#c.groups.map((e=>this.#y(e,r))):this.#c.items.map((e=>this.#w(e,r)))}
184
+ </${g.SelectMenu.SelectMenu.litTagName}>
185
+ ${r?e.html`
186
+ <${i.Button.Button.litTagName}
187
+ .disabled=${this.#c.disabled}
188
+ .variant=${n}
189
+ .iconName=${r.buttonIconName}
190
+ @click=${this.#b}>
191
+ ${this.#c.buttonLabel}
192
+ </${i.Button.Button.litTagName}>`:""}
193
+ </div>`,this.#t,{host:this})}}customElements.define("devtools-select-button",ne);var ae=Object.freeze({__proto__:null,SelectButtonClickEvent:re,SelectMenuSelectedEvent:oe,SelectButton:ne});const le={Replay:"Replay",ReplayNormalButtonLabel:"Normal speed",ReplayNormalItemLabel:"Normal (Default)",ReplaySlowButtonLabel:"Slow speed",ReplaySlowItemLabel:"Slow",ReplayVerySlowButtonLabel:"Very slow speed",ReplayVerySlowItemLabel:"Very slow",ReplayExtremelySlowButtonLabel:"Extremely slow speed",ReplayExtremelySlowItemLabel:"Extremely slow",speedGroup:"Speed",extensionGroup:"Extensions"},ce=[{value:"normal",buttonIconName:"play",buttonLabel:()=>ue(le.ReplayNormalButtonLabel),label:()=>ue(le.ReplayNormalItemLabel)},{value:"slow",buttonIconName:"play",buttonLabel:()=>ue(le.ReplaySlowButtonLabel),label:()=>ue(le.ReplaySlowItemLabel)},{value:"very_slow",buttonIconName:"play",buttonLabel:()=>ue(le.ReplayVerySlowButtonLabel),label:()=>ue(le.ReplayVerySlowItemLabel)},{value:"extremely_slow",buttonIconName:"play",buttonLabel:()=>ue(le.ReplayExtremelySlowButtonLabel),label:()=>ue(le.ReplayExtremelySlowItemLabel)}],de={normal:1,slow:2,very_slow:3,extremely_slow:4},pe=s.i18n.registerUIStrings("panels/recorder/components/ReplaySection.ts",le),ue=s.i18n.getLocalizedString.bind(void 0,pe);class he extends Event{speed;extension;static eventName="startreplay";constructor(e,t){super(he.eventName,{bubbles:!0,composed:!0}),this.speed=e,this.extension=t}}const ge="extension";class ve extends HTMLElement{static litTagName=e.literal`devtools-replay-section`;#t=this.attachShadow({mode:"open"});#x=this.#o.bind(this);#c={disabled:!1};#$;#k=[];set data(e){this.#$=e.settings,this.#k=e.replayExtensions}get disabled(){return this.#c.disabled}set disabled(e){this.#c.disabled=e,l.ScheduledRender.scheduleRender(this,this.#x)}connectedCallback(){l.ScheduledRender.scheduleRender(this,this.#x)}#T(e){const t=e.value;this.#$&&e.value&&(this.#$.speed=t,this.#$.replayExtension=""),c.userMetrics.recordingReplaySpeed(de[t]),l.ScheduledRender.scheduleRender(this,this.#x)}#E(e){if(e.stopPropagation(),e.value&&e.value.startsWith(ge)){this.#$&&(this.#$.replayExtension=e.value);const t=Number(e.value.substring(9));return this.dispatchEvent(new he("normal",this.#k[t])),void l.ScheduledRender.scheduleRender(this,this.#x)}this.dispatchEvent(new he(this.#$?this.#$.speed:"normal")),l.ScheduledRender.scheduleRender(this,this.#x)}#o(){const t=[{name:ue(le.speedGroup),items:ce}];this.#k.length&&t.push({name:ue(le.extensionGroup),items:this.#k.map(((e,t)=>({value:ge+t,buttonIconName:"play",buttonLabel:()=>e.getName(),label:()=>e.getName()})))}),e.render(e.html`
194
+ <${ne.litTagName}
195
+ @selectmenuselected=${this.#T}
196
+ @selectbuttonclick=${this.#E}
197
+ .variant=${"primary"}
198
+ .showItemDivider=${!1}
199
+ .disabled=${this.#c.disabled}
200
+ .action=${"chrome-recorder.replay-recording"}
201
+ .value=${this.#$?.replayExtension||this.#$?.speed}
202
+ .buttonLabel=${ue(le.Replay)}
203
+ .groups=${t}
204
+ jslog=${n.action("chrome-recorder.replay-recording").track({click:!0})}>
205
+ </${ne.litTagName}>`,this.#t,{host:this})}}customElements.define("devtools-replay-section",ve);var me=Object.freeze({__proto__:null,StartReplayEvent:he,ReplaySection:ve});const be=new CSSStyleSheet;be.replaceSync("*{margin:0;padding:0;box-sizing:border-box;font-size:inherit}.title-container{max-width:calc(100% - 18px);font-size:13px;line-height:16px;letter-spacing:0.03em;display:flex;flex-direction:row;gap:3px;outline-offset:3px}.action{display:flex;align-items:flex-start}.title{flex:1;min-width:0}.is-start-of-group .title{font-weight:bold}.error-icon{display:none}.breakpoint-icon{visibility:hidden;cursor:pointer;opacity:0%;fill:var(--sys-color-primary);stroke:#1a73e8;transform:translate(-1.92px,-3px)}.circle-icon{fill:var(--sys-color-primary);stroke:var(--sys-color-cdt-base-container);stroke-width:4px;r:5px;cx:8px;cy:8px}.is-start-of-group .circle-icon{r:7px;fill:var(--sys-color-cdt-base-container);stroke:var(--sys-color-primary);stroke-width:2px}.step.is-success .circle-icon{fill:var(--sys-color-primary);stroke:var(--sys-color-primary)}.step.is-current .circle-icon{stroke-dasharray:24 10;animation:rotate 1s linear infinite;fill:var(--sys-color-cdt-base-container);stroke:var(--sys-color-primary);stroke-width:2px}.error{margin:16px 0 0;padding:8px;background:var(--sys-color-error-container);color:var(--sys-color-error);position:relative}@keyframes rotate{0%{transform:translate(8px,8px) rotate(0) translate(-8px,-8px)}100%{transform:translate(8px,8px) rotate(360deg) translate(-8px,-8px)}}.step.is-error .circle-icon{fill:var(--sys-color-error);stroke:var(--sys-color-error)}.step.is-error .error-icon{display:block;transform:translate(4px,4px)}:host-context(.was-successful) .circle-icon{animation:flash-circle 2s}:host-context(.was-successful) .breakpoint-icon{animation:flash-breakpoint-icon 2s}@keyframes flash-circle{25%{fill:var(--override-color-recording-successful-text);stroke:var(--override-color-recording-successful-text)}75%{fill:var(--override-color-recording-successful-text);stroke:var(--override-color-recording-successful-text)}}@keyframes flash-breakpoint-icon{25%{fill:var(--override-color-recording-successful-text);stroke:var(--override-color-recording-successful-text)}75%{fill:var(--override-color-recording-successful-text);stroke:var(--override-color-recording-successful-text)}}.chevron{width:14px;height:14px;transition:200ms;position:absolute;top:18px;left:24px;transform:rotate(-90deg);color:var(--sys-color-on-surface)}.expanded .chevron{transform:rotate(0deg)}.is-start-of-group .chevron{top:34px}.details{display:none;margin-top:8px;position:relative}.expanded .details{display:block}.step-details{overflow:auto}devtools-recorder-step-editor{border:1px solid var(--sys-color-neutral-outline);padding:3px 6px 6px;margin-left:-6px;border-radius:3px}devtools-recorder-step-editor:hover{border:1px solid var(--sys-color-neutral-outline)}devtools-recorder-step-editor.is-selected{background-color:color-mix(in sRGB,var(--sys-color-tonal-container),var(--sys-color-cdt-base-container) 50%);border:1px solid var(--sys-color-tonal-outline)}.summary{display:flex;flex-flow:row nowrap}.filler{flex-grow:1}.subtitle{font-weight:normal;color:var(--sys-color-on-surface-subtle);word-break:break-all;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main-title{word-break:break-all;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.step-actions{border:none;border-radius:0;height:24px;--override-select-menu-show-button-border-radius:0;--override-select-menu-show-button-outline:none;--override-select-menu-show-button-padding:0}.step.has-breakpoint .circle-icon{visibility:hidden}.step:not(.is-start-of-group).has-breakpoint .breakpoint-icon{visibility:visible;opacity:100%}.step:not(.is-start-of-group):not(.has-breakpoint) .icon:hover .circle-icon{transition:opacity 0.2s;opacity:0%}.step:not(.is-start-of-group):not(.has-breakpoint) .icon:hover .error-icon{visibility:hidden}.step:not(.is-start-of-group):not(.has-breakpoint) .icon:hover .breakpoint-icon{transition:opacity 0.2s;visibility:visible;opacity:50%}\n/*# sourceURL=stepView.css */\n");const fe=new CSSStyleSheet;fe.replaceSync("*{margin:0;padding:0;box-sizing:border-box;font-size:inherit}.timeline-section{position:relative;padding:16px 0 16px 40px;margin-left:8px;--override-color-recording-successful-text:#36a854;--override-color-recording-successful-background:#e6f4ea}.overlay{position:absolute;width:100vw;height:100%;left:calc(-32px - 80px);top:0;z-index:-1;pointer-events:none}@container (max-width: 400px){.overlay{left:-32px}}:hover .overlay{background:var(--sys-color-state-hover-on-subtle)}.is-selected .overlay{background:var(--sys-color-tonal-container)}:host-context(.is-stopped) .overlay{background:var(--sys-color-state-ripple-primary);outline:1px solid var(--sys-color-state-focus-ring);z-index:4}.is-start-of-group{padding-top:28px}.is-end-of-group{padding-bottom:24px}.icon{position:absolute;left:4px;transform:translateX(-50%);z-index:2}.bar{position:absolute;left:4px;display:block;transform:translateX(-50%);top:18px;height:calc(100% + 8px);z-index:1}.bar .background{fill:var(--sys-color-state-hover-on-subtle)}.bar .line{fill:var(--sys-color-primary)}.is-first-section .bar{top:32px;height:calc(100% - 8px);display:none}.is-first-section:not(.is-last-section) .bar{display:block}.is-last-section .bar .line{display:none}.is-last-section .bar .background{display:none}:host-context(.is-error) .bar .line{fill:var(--sys-color-error)}:host-context(.is-error) .bar .background{fill:var(--sys-color-error-container)}:host-context(.was-successful) .bar .background{animation:flash-background 2s}:host-context(.was-successful) .bar .line{animation:flash-line 2s}@keyframes flash-background{25%{fill:var(--override-color-recording-successful-background)}75%{fill:var(--override-color-recording-successful-background)}}@keyframes flash-line{25%{fill:var(--override-color-recording-successful-text)}75%{fill:var(--override-color-recording-successful-text)}}\n/*# sourceURL=timelineSection.css */\n");class we extends HTMLElement{static litTagName=e.literal`devtools-timeline-section`;#R=!1;#C=!1;#I=!1;#N=!1;#B=!1;constructor(){super();this.attachShadow({mode:"open"}).adoptedStyleSheets=[fe]}set data(e){this.#I=e.isFirstSection,this.#N=e.isLastSection,this.#R=e.isEndOfGroup,this.#C=e.isStartOfGroup,this.#B=e.isSelected,this.#o()}connectedCallback(){this.#o()}#o(){const t={"timeline-section":!0,"is-end-of-group":this.#R,"is-start-of-group":this.#C,"is-first-section":this.#I,"is-last-section":this.#N,"is-selected":this.#B};e.render(e.html`
206
+ <div class=${e.Directives.classMap(t)}>
207
+ <div class="overlay"></div>
208
+ <div class="icon"><slot name="icon"></slot></div>
209
+ <svg width="24" height="100%" class="bar">
210
+ <rect class="line" x="7" y="0" width="2" height="100%" />
211
+ </svg>
212
+ <slot></slot>
213
+ </div>
214
+ `,this.shadowRoot,{host:this})}}customElements.define("devtools-timeline-section",we);var ye=Object.freeze({__proto__:null,TimelineSection:we});const Se={setViewportClickTitle:"Set viewport",customStepTitle:"Custom step",clickStepTitle:"Click",doubleClickStepTitle:"Double click",hoverStepTitle:"Hover",emulateNetworkConditionsStepTitle:"Emulate network conditions",changeStepTitle:"Change",closeStepTitle:"Close",scrollStepTitle:"Scroll",keyUpStepTitle:"Key up",navigateStepTitle:"Navigate",keyDownStepTitle:"Key down",waitForElementStepTitle:"Wait for element",waitForExpressionStepTitle:"Wait for expression",elementRoleButton:"Button",elementRoleInput:"Input",elementRoleFallback:"Element",addStepBefore:"Add step before",addStepAfter:"Add step after",removeStep:"Remove step",openStepActions:"Open step actions",addBreakpoint:"Add breakpoint",removeBreakpoint:"Remove breakpoint",copyAs:"Copy as",stepManagement:"Manage steps",breakpoints:"Breakpoints"},xe=s.i18n.registerUIStrings("panels/recorder/components/StepView.ts",Se),$e=s.i18n.getLocalizedString.bind(void 0,xe);class ke extends Event{static eventName="captureselectors";data;constructor(e){super(ke.eventName,{bubbles:!0,composed:!0}),this.data=e}}class Te extends Event{static eventName="stopselectorscapture";constructor(){super(Te.eventName,{bubbles:!0,composed:!0})}}class Ee extends Event{static eventName="copystep";step;constructor(e){super(Ee.eventName,{bubbles:!0,composed:!0}),this.step=e}}class Re extends Event{static eventName="stepchanged";currentStep;newStep;constructor(e,t){super(Re.eventName,{bubbles:!0,composed:!0}),this.currentStep=e,this.newStep=t}}class Ce extends Event{static eventName="addstep";position;stepOrSection;constructor(e,t){super(Ce.eventName,{bubbles:!0,composed:!0}),this.stepOrSection=e,this.position=t}}class Ie extends Event{static eventName="removestep";step;constructor(e){super(Ie.eventName,{bubbles:!0,composed:!0}),this.step=e}}class Ne extends Event{static eventName="addbreakpoint";index;constructor(e){super(Ne.eventName,{bubbles:!0,composed:!0}),this.index=e}}class Be extends Event{static eventName="removebreakpoint";index;constructor(e){super(Be.eventName,{bubbles:!0,composed:!0}),this.index=e}}const je="copy-step-as-";function Me(e){if(!e||!("selectors"in e))return"";const t=e.selectors.flat().find((e=>e.startsWith("aria/")));if(!t)return"";const s=t.match(/^aria\/(.+?)(\[role="(.+)"\])?$/);return s?`${function(e){switch(e){case"button":return $e(Se.elementRoleButton);case"input":return $e(Se.elementRoleInput);default:return $e(Se.elementRoleFallback)}}(s[3])} "${s[1]}"`:""}function Ae(t,s,o){if(!t.step&&!t.section)return;const l={step:!0,expanded:t.showDetails,"is-success":"success"===t.state,"is-current":"current"===t.state,"is-outstanding":"outstanding"===t.state,"is-error":"error"===t.state,"is-stopped":"stopped"===t.state,"is-start-of-group":t.isStartOfGroup,"is-first-section":t.isFirstSection,"has-breakpoint":t.hasBreakpoint},c=Boolean(t.step),d=function(t){if(t.section)return t.section.title?t.section.title:e.html`<span class="fallback">(No Title)</span>`;if(!t.step)throw new Error("Missing both step and section");switch(t.step.type){case a.Schema.StepType.CustomStep:return $e(Se.customStepTitle);case a.Schema.StepType.SetViewport:return $e(Se.setViewportClickTitle);case a.Schema.StepType.Click:return $e(Se.clickStepTitle);case a.Schema.StepType.DoubleClick:return $e(Se.doubleClickStepTitle);case a.Schema.StepType.Hover:return $e(Se.hoverStepTitle);case a.Schema.StepType.EmulateNetworkConditions:return $e(Se.emulateNetworkConditionsStepTitle);case a.Schema.StepType.Change:return $e(Se.changeStepTitle);case a.Schema.StepType.Close:return $e(Se.closeStepTitle);case a.Schema.StepType.Scroll:return $e(Se.scrollStepTitle);case a.Schema.StepType.KeyUp:return $e(Se.keyUpStepTitle);case a.Schema.StepType.KeyDown:return $e(Se.keyDownStepTitle);case a.Schema.StepType.WaitForElement:return $e(Se.waitForElementStepTitle);case a.Schema.StepType.WaitForExpression:return $e(Se.waitForExpressionStepTitle);case a.Schema.StepType.Navigate:return $e(Se.navigateStepTitle)}}({step:t.step,section:t.section}),p=t.step?Me():u?u.url:"";var u;e.render(e.html`
215
+ <${we.litTagName} .data=${{isFirstSection:t.isFirstSection,isLastSection:t.isLastSection,isStartOfGroup:t.isStartOfGroup,isEndOfGroup:t.isEndOfGroup,isSelected:t.isSelected}} @contextmenu=${t.onStepContextMenu} data-step-index=${t.stepIndex} data-section-index=${t.sectionIndex} class=${e.Directives.classMap(l)}>
216
+ <svg slot="icon" width="24" height="24" height="100%" class="icon">
217
+ <circle class="circle-icon"/>
218
+ <g class="error-icon">
219
+ <path d="M1.5 1.5L6.5 6.5" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
220
+ <path d="M1.5 6.5L6.5 1.5" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
221
+ </g>
222
+ <path @click=${t.onBreakpointClick} jslog=${n.action("breakpoint").track({click:!0})} class="breakpoint-icon" d="M2.5 5.5H17.7098L21.4241 12L17.7098 18.5H2.5V5.5Z"/>
223
+ </svg>
224
+ <div class="summary">
225
+ <div class="title-container ${c?"action":""}"
226
+ @click=${c&&t.toggleShowDetails}
227
+ @keydown=${c&&t.onToggleShowDetailsKeydown}
228
+ tabindex="0"
229
+ jslog=${n.sectionHeader().track({click:!0})}
230
+ aria-role=${c?"button":""}
231
+ aria-label=${c?"Show details for step":""}
232
+ >
233
+ ${c?e.html`<${r.Icon.Icon.litTagName}
234
+ class="chevron"
235
+ jslog=${n.expand().track({click:!0})}
236
+ name="triangle-down">
237
+ </${r.Icon.Icon.litTagName}>`:""}
238
+ <div class="title">
239
+ <div class="main-title" title=${d}>${d}</div>
240
+ <div class="subtitle" title=${p}>${p}</div>
241
+ </div>
242
+ </div>
243
+ <div class="filler"></div>
244
+ ${function(t){return e.html`
245
+ <${i.Button.Button.litTagName}
246
+ class="step-actions"
247
+ title=${$e(Se.openStepActions)}
248
+ aria-label=${$e(Se.openStepActions)}
249
+ @click=${t.onStepContextMenu}
250
+ @keydown=${e=>{e.stopPropagation()}}
251
+ jslog=${n.dropDown("step-actions").track({click:!0})}
252
+ .data=${{variant:"icon",iconName:"dots-vertical",title:$e(Se.openStepActions)}}
253
+ ></${i.Button.Button.litTagName}>
254
+ `}(t)}
255
+ </div>
256
+ <div class="details">
257
+ ${t.step&&e.html`<devtools-recorder-step-editor
258
+ class=${t.isSelected?"is-selected":""}
259
+ .step=${t.step}
260
+ .disabled=${t.isPlaying}
261
+ @stepedited=${t.stepEdited}>
262
+ </devtools-recorder-step-editor>`}
263
+ ${t.section?.causingStep&&e.html`<devtools-recorder-step-editor
264
+ .step=${t.section.causingStep}
265
+ .isTypeEditable=${!1}
266
+ .disabled=${t.isPlaying}
267
+ @stepedited=${t.stepEdited}>
268
+ </devtools-recorder-step-editor>`}
269
+ </div>
270
+ ${t.error&&e.html`
271
+ <div class="error" role="alert">
272
+ ${t.error.message}
273
+ </div>
274
+ `}
275
+ </${we.litTagName}>
276
+ `,o)}class Pe extends HTMLElement{static litTagName=e.literal`devtools-step-view`;#t=this.attachShadow({mode:"open"});#j=new IntersectionObserver((e=>{this.#M.isVisible=e[0].isIntersecting}));#M={state:"default",showDetails:!1,isEndOfGroup:!1,isStartOfGroup:!1,stepIndex:0,sectionIndex:0,isFirstSection:!1,isLastSection:!1,isRecording:!1,isPlaying:!1,isVisible:!1,hasBreakpoint:!1,removable:!0,builtInConverters:[],extensionConverters:[],isSelected:!1,recorderSettings:void 0,actions:[],stepEdited:this.#A.bind(this),onBreakpointClick:this.#P.bind(this),handleStepAction:this.#L.bind(this),toggleShowDetails:this.#F.bind(this),onToggleShowDetailsKeydown:this.#O.bind(this),onStepContextMenu:this.#D.bind(this)};#z=Ae;constructor(e){super(),e&&(this.#z=e),this.setAttribute("jslog",`${n.section("step-view")}`)}set data(e){const t=this.#M.state;this.#M.step=e.step,this.#M.section=e.section,this.#M.state=e.state,this.#M.error=e.error,this.#M.isEndOfGroup=e.isEndOfGroup,this.#M.isStartOfGroup=e.isStartOfGroup,this.#M.stepIndex=e.stepIndex,this.#M.sectionIndex=e.sectionIndex,this.#M.isFirstSection=e.isFirstSection,this.#M.isLastSection=e.isLastSection,this.#M.isRecording=e.isRecording,this.#M.isPlaying=e.isPlaying,this.#M.hasBreakpoint=e.hasBreakpoint,this.#M.removable=e.removable,this.#M.builtInConverters=e.builtInConverters,this.#M.extensionConverters=e.extensionConverters,this.#M.isSelected=e.isSelected,this.#M.recorderSettings=e.recorderSettings,this.#M.actions=this.#V(),this.#o(),this.#M.state===t||"current"!==this.#M.state||this.#M.isVisible||this.scrollIntoView()}get step(){return this.#M.step}get section(){return this.#M.section}connectedCallback(){this.#t.adoptedStyleSheets=[be],this.#j.observe(this),this.#o()}disconnectedCallback(){this.#j.unobserve(this)}#F(){this.#M.showDetails=!this.#M.showDetails,this.#o()}#O(e){const t=e;"Enter"!==t.key&&" "!==t.key||(this.#F(),e.stopPropagation(),e.preventDefault())}#A(e){const t=this.#M.step||this.#M.section?.causingStep;if(!t)throw new Error("Expected step.");this.dispatchEvent(new Re(t,e.data))}#L(e){switch(e.itemValue){case"add-step-before":{const e=this.#M.step||this.#M.section;if(!e)throw new Error("Expected step or section.");this.dispatchEvent(new Ce(e,"before"));break}case"add-step-after":{const e=this.#M.step||this.#M.section;if(!e)throw new Error("Expected step or section.");this.dispatchEvent(new Ce(e,"after"));break}case"remove-step":{const e=this.#M.section?.causingStep;if(!this.#M.step&&!e)throw new Error("Expected step.");this.dispatchEvent(new Ie(this.#M.step||e));break}case"add-breakpoint":if(!this.#M.step)throw new Error("Expected step");this.dispatchEvent(new Ne(this.#M.stepIndex));break;case"remove-breakpoint":if(!this.#M.step)throw new Error("Expected step");this.dispatchEvent(new Be(this.#M.stepIndex));break;default:{const t=e.itemValue;if(!t.startsWith(je))throw new Error("Unknown step action.");const s=this.#M.step||this.#M.section?.causingStep;if(!s)throw new Error("Step not found.");const i=t.substring(13);this.#M.recorderSettings&&(this.#M.recorderSettings.preferredCopyFormat=i),this.dispatchEvent(new Ee(structuredClone(s)))}}}#P(){this.#M.hasBreakpoint?this.dispatchEvent(new Be(this.#M.stepIndex)):this.dispatchEvent(new Ne(this.#M.stepIndex)),this.#o()}#V=()=>{const e=[];if(this.#M.isPlaying||(this.#M.step&&e.push({id:"add-step-before",label:$e(Se.addStepBefore),group:"stepManagement",groupTitle:$e(Se.stepManagement)}),e.push({id:"add-step-after",label:$e(Se.addStepAfter),group:"stepManagement",groupTitle:$e(Se.stepManagement)}),this.#M.removable&&e.push({id:"remove-step",group:"stepManagement",groupTitle:$e(Se.stepManagement),label:$e(Se.removeStep)})),this.#M.step&&!this.#M.isRecording&&(this.#M.hasBreakpoint?e.push({id:"remove-breakpoint",label:$e(Se.removeBreakpoint),group:"breakPointManagement",groupTitle:$e(Se.breakpoints)}):e.push({id:"add-breakpoint",label:$e(Se.addBreakpoint),group:"breakPointManagement",groupTitle:$e(Se.breakpoints)})),this.#M.step){for(const t of this.#M.builtInConverters||[])e.push({id:je+d.StringUtilities.toKebabCase(t.getId()),label:t.getFormatName(),group:"copy",groupTitle:$e(Se.copyAs)});for(const t of this.#M.extensionConverters||[])e.push({id:je+d.StringUtilities.toKebabCase(t.getId()),label:t.getFormatName(),group:"copy",groupTitle:$e(Se.copyAs),jslogContext:je+"extension"})}return e};#D(e){const s=e.target instanceof i.Button.Button?e.target:void 0,r=new t.ContextMenu.ContextMenu(e,{x:s?.getBoundingClientRect().left,y:s?.getBoundingClientRect().bottom}),o=this.#V(),n=o.filter((e=>e.id.startsWith(je))),a=o.filter((e=>!e.id.startsWith(je)));for(const e of a){r.section(e.group).appendItem(e.label,(()=>{this.#L(new g.Menu.MenuItemSelectedEvent(e.id))}),{jslogContext:e.id})}const l=n.find((e=>e.id===je+this.#M.recorderSettings?.preferredCopyFormat));if(l&&r.section("copy").appendItem(l.label,(()=>{this.#L(new g.Menu.MenuItemSelectedEvent(l.id))}),{jslogContext:l.id}),n.length){const e=r.section("copy").appendSubMenuItem($e(Se.copyAs),!1,"copy");for(const t of n)t!==l&&e.section(t.group).appendItem(t.label,(()=>{this.#L(new g.Menu.MenuItemSelectedEvent(t.id))}),{jslogContext:t.id})}r.show()}#o(){this.#z(this.#M,{},this.#t)}}customElements.define("devtools-step-view",Pe);var Le=Object.freeze({__proto__:null,CaptureSelectorsEvent:ke,StopSelectorsCaptureEvent:Te,CopyStepEvent:Ee,StepChanged:Re,AddStep:Ce,RemoveStep:Ie,AddBreakpointEvent:Ne,RemoveBreakpointEvent:Be,StepView:Pe});const Fe={mobile:"Mobile",desktop:"Desktop",latency:"Latency: {value} ms",upload:"Upload: {value}",download:"Download: {value}",editReplaySettings:"Edit replay settings",replaySettings:"Replay settings",default:"Default",environment:"Environment",screenshotForSection:"Screenshot for this section",editTitle:"Edit title",requiredTitleError:"Title is required",recording:"Recording…",endRecording:"End recording",recordingIsBeingStopped:"Stopping recording…",timeout:"Timeout: {value} ms",network:"Network",timeoutLabel:"Timeout",timeoutExplanation:"The timeout setting (in milliseconds) applies to every action when replaying the recording. For example, if a DOM element identified by a CSS selector does not appear on the page within the specified timeout, the replay fails with an error.",cancelReplay:"Cancel replay",showCode:"Show code",hideCode:"Hide code",addAssertion:"Add assertion",performancePanel:"Performance panel"},Oe=s.i18n.registerUIStrings("panels/recorder/components/RecordingView.ts",Fe),De=s.i18n.getLocalizedString.bind(void 0,Oe);class ze extends Event{static eventName="recordingfinished";constructor(){super(ze.eventName)}}class Ve extends Event{static eventName="playrecording";data;constructor(e={targetPanel:"chrome-recorder",speed:"normal"}){super(Ve.eventName),this.data=e}}class _e extends Event{static eventName="abortreplay";constructor(){super(_e.eventName)}}class Ue extends Event{static eventName="recordingchanged";data;constructor(e,t){super(Ue.eventName),this.data={currentStep:e,newStep:t}}}class Ke extends Event{static eventName="addassertion";constructor(){super(Ke.eventName)}}class qe extends Event{static eventName="recordingtitlechanged";title;constructor(e){super(qe.eventName,{}),this.title=e}}class Ge extends Event{static eventName="networkconditionschanged";data;constructor(e){super(Ge.eventName,{composed:!0,bubbles:!0}),this.data=e}}class He extends Event{static eventName="timeoutchanged";data;constructor(e){super(He.eventName,{composed:!0,bubbles:!0}),this.data=e}}const We=[p.NetworkManager.NoThrottlingConditions,p.NetworkManager.OfflineConditions,p.NetworkManager.Slow3GConditions,p.NetworkManager.Slow4GConditions,p.NetworkManager.Fast4GConditions];class Xe extends HTMLElement{static litTagName=e.literal`devtools-recording-view`;#t=this.attachShadow({mode:"open"});#_={isPlaying:!1,isPausedOnBreakpoint:!1};#U=null;#K=!1;#q=!1;#G=!1;#H;#W=[];#X;#Y=[];#$;#r;#J;#Q=new Set;#Z;#ee=!1;#te=!0;#se=[];#ie=[];#k;#re=!1;#oe="";#ne="";#ae;#le;#ce;#de=this.#pe.bind(this);constructor(){super()}set data(e){this.#K=e.isRecording,this.#_=e.replayState,this.#q=e.recordingTogglingInProgress,this.#H=e.currentStep,this.#U=e.recording,this.#W=this.#U.steps,this.#Y=e.sections,this.#$=e.settings,this.#r=e.recorderSettings,this.#X=e.currentError,this.#J=e.lastReplayResult,this.#te=e.replayAllowed,this.#G=!1,this.#Q=e.breakpointIndexes,this.#se=e.builtInConverters,this.#ie=e.extensionConverters,this.#k=e.replayExtensions,this.#ce=e.extensionDescriptor,this.#ne=this.#r?.preferredCopyFormat??e.builtInConverters[0]?.getId(),this.#ue(),this.#o()}connectedCallback(){this.#t.adoptedStyleSheets=[se,o.textInputStyles],document.addEventListener("copy",this.#de),this.#o()}disconnectedCallback(){document.removeEventListener("copy",this.#de)}scrollToBottom(){const e=this.shadowRoot?.querySelector(".sections");e&&(e.scrollTop=e.scrollHeight)}#he(){this.dispatchEvent(new Ke)}#ge(){this.dispatchEvent(new ze)}#ve(){this.dispatchEvent(new _e)}#me(e){this.dispatchEvent(new Ve({targetPanel:"chrome-recorder",speed:e.speed,extension:e.extension}))}#be(e){if(!this.#H)return"default";if(e===this.#H)return this.#X?"error":this.#_.isPlaying?this.#_.isPausedOnBreakpoint?"stopped":"current":"success";const t=this.#W.indexOf(this.#H);if(-1===t)return"default";return this.#W.indexOf(e)<t?"success":"outstanding"}#fe(e){const t=this.#H;if(!t)return"default";const s=this.#Y.find((e=>e.steps.includes(t)));if(!s&&this.#X)return"error";if(e===s)return"success";return this.#Y.indexOf(s)>=this.#Y.indexOf(e)?"success":"outstanding"}#we(t,s,i){const r=this.#W.indexOf(s);return e.html`
277
+ <${Pe.litTagName}
278
+ @click=${this.#ye}
279
+ @mouseover=${this.#Se}
280
+ @copystep=${this.#xe}
281
+ .data=${{step:s,state:this.#be(s),error:this.#H===s?this.#X:void 0,isFirstSection:!1,isLastSection:i&&this.#W[this.#W.length-1]===s,isStartOfGroup:!1,isEndOfGroup:t.steps[t.steps.length-1]===s,stepIndex:r,hasBreakpoint:this.#Q.has(r),sectionIndex:-1,isRecording:this.#K,isPlaying:this.#_.isPlaying,removable:this.#W.length>1,builtInConverters:this.#se,extensionConverters:this.#ie,isSelected:this.#Z===s,recorderSettings:this.#r}}
282
+ jslog=${n.section("step").track({click:!0})}
283
+ ></${Pe.litTagName}>
284
+ `}#Se=e=>{const t=e.target,s=t.step||t.section?.causingStep;s&&!this.#Z&&this.#$e(s)};#ye(e){e.stopPropagation();const t=e.target,s=t.step||t.section?.causingStep||null;this.#Z!==s&&(this.#Z=s,this.#o(),s&&this.#$e(s,!0))}#ke(){void 0!==this.#Z&&(this.#Z=void 0,this.#o())}#Te(e){"Enter"===e.key&&(e.preventDefault(),this.#Ee(e))}#Ee(e){e.stopPropagation(),this.#ee=!this.#ee,this.#o()}#Re(e){const t=We.find((t=>t.i18nTitleKey===e.itemValue));this.dispatchEvent(new Ge(t?.i18nTitleKey===p.NetworkManager.NoThrottlingConditions.i18nTitleKey?void 0:t))}#Ce(e){const t=e.target;t.checkValidity()?this.dispatchEvent(new He(Number(t.value))):t.reportValidity()}#Ie=e=>{const t=e.target.innerText.trim();if(!t)return this.#G=!0,void this.#o();this.dispatchEvent(new qe(t))};#Ne=e=>{switch(e.code){case"Escape":case"Enter":e.target.blur(),e.stopPropagation()}};#Be=()=>{const e=this.#t.getElementById("title-input");e.focus();const t=document.createRange();t.selectNodeContents(e),t.collapse(!1);const s=window.getSelection();s?.removeAllRanges(),s?.addRange(t)};#je=e=>{const t=e.target;t.matches(".wrapping-label")&&t.querySelector("devtools-select-menu")?.click()};async#Me(e){let t=[...this.#se,...this.#ie].find((e=>e.getId()===this.#r?.preferredCopyFormat));if(t||(t=this.#se[0]),!t)throw new Error("No default converter found");let s="";e?s=await t.stringifyStep(e):this.#U&&([s]=await t.stringify(this.#U)),c.InspectorFrontendHost.InspectorFrontendHostInstance.copyText(s);const i=e?function(e){switch(e){case"puppeteer":case"puppeteer-firefox":return 5;case"json":return 6;case"@puppeteer/replay":return 7;default:return 8}}(t.getId()):function(e){switch(e){case"puppeteer":case"puppeteer-firefox":return 1;case"json":return 2;case"@puppeteer/replay":return 3;default:return 4}}(t.getId());c.userMetrics.recordingCopiedToClipboard(i)}#xe(e){e.stopPropagation(),this.#Me(e.step)}async#pe(e){e.target===document.body&&(e.preventDefault(),await this.#Me(this.#Z),c.userMetrics.keyboardShortcutFired("chrome-recorder.copy-recording-or-step"))}#Ae(){if(!this.#$)return e.html``;const t=[];this.#$.viewportSettings&&(t.push(e.html`<div>${this.#$.viewportSettings.isMobile?De(Fe.mobile):De(Fe.desktop)}</div>`),t.push(e.html`<div class="separator"></div>`),t.push(e.html`<div>${this.#$.viewportSettings.width}×${this.#$.viewportSettings.height} px</div>`));const s=[];if(this.#ee){const t=this.#$.networkConditionsSettings?.i18nTitleKey||p.NetworkManager.NoThrottlingConditions.i18nTitleKey,i=We.find((e=>e.i18nTitleKey===t));let r="";i&&(r=i.title instanceof Function?i.title():i.title),s.push(e.html`<div class="editable-setting">
285
+ <label class="wrapping-label" @click=${this.#je}>
286
+ ${De(Fe.network)}
287
+ <${g.SelectMenu.SelectMenu.litTagName}
288
+ @selectmenuselected=${this.#Re}
289
+ .disabled=${!this.#W.find((e=>"navigate"===e.type))}
290
+ .showDivider=${!0}
291
+ .showArrow=${!0}
292
+ .sideButton=${!1}
293
+ .showSelectedItem=${!0}
294
+ .showConnector=${!1}
295
+ .jslogContext=${"network-conditions"}
296
+ .position=${"bottom"}
297
+ .buttonTitle=${r}
298
+ >
299
+ ${We.map((s=>e.html`<${g.Menu.MenuItem.litTagName}
300
+ .value=${s.i18nTitleKey}
301
+ .selected=${t===s.i18nTitleKey}
302
+ jslog=${n.item(d.StringUtilities.toKebabCase(s.i18nTitleKey||""))}
303
+ >
304
+ ${s.title instanceof Function?s.title():s.title}
305
+ </${g.Menu.MenuItem.litTagName}>`))}
306
+ </${g.SelectMenu.SelectMenu.litTagName}>
307
+ </label>
308
+ </div>`),s.push(e.html`<div class="editable-setting">
309
+ <label class="wrapping-label" title=${De(Fe.timeoutExplanation)}>
310
+ ${De(Fe.timeoutLabel)}
311
+ <input
312
+ @input=${this.#Ce}
313
+ required
314
+ min=${a.SchemaUtils.minTimeout}
315
+ max=${a.SchemaUtils.maxTimeout}
316
+ value=${this.#$.timeout||a.RecordingPlayer.defaultTimeout}
317
+ jslog=${n.textField("timeout").track({change:!0})}
318
+ class="devtools-text-input"
319
+ type="number">
320
+ </label>
321
+ </div>`)}else this.#$.networkConditionsSettings?this.#$.networkConditionsSettings.title?s.push(e.html`<div>${this.#$.networkConditionsSettings.title}</div>`):s.push(e.html`<div>
322
+ ${De(Fe.download,{value:d.NumberUtilities.bytesToString(this.#$.networkConditionsSettings.download)})},
323
+ ${De(Fe.upload,{value:d.NumberUtilities.bytesToString(this.#$.networkConditionsSettings.upload)})},
324
+ ${De(Fe.latency,{value:this.#$.networkConditionsSettings.latency})}
325
+ </div>`):s.push(e.html`<div>${p.NetworkManager.NoThrottlingConditions.title instanceof Function?p.NetworkManager.NoThrottlingConditions.title():p.NetworkManager.NoThrottlingConditions.title}</div>`),s.push(e.html`<div class="separator"></div>`),s.push(e.html`<div>${De(Fe.timeout,{value:this.#$.timeout||a.RecordingPlayer.defaultTimeout})}</div>`);const i=!this.#K&&!this.#_.isPlaying,o={"settings-title":!0,expanded:this.#ee},l={expanded:this.#ee,settings:!0};return e.html`
326
+ <div class="settings-row">
327
+ <div class="settings-container">
328
+ <div
329
+ class=${e.Directives.classMap(o)}
330
+ @keydown=${i&&this.#Te}
331
+ @click=${i&&this.#Ee}
332
+ tabindex="0"
333
+ role="button"
334
+ jslog=${n.action("replay-settings").track({click:!0})}
335
+ aria-label=${De(Fe.editReplaySettings)}>
336
+ <span>${De(Fe.replaySettings)}</span>
337
+ ${i?e.html`<${r.Icon.Icon.litTagName}
338
+ class="chevron"
339
+ name="triangle-down">
340
+ </${r.Icon.Icon.litTagName}>`:""}
341
+ </div>
342
+ <div class=${e.Directives.classMap(l)}>
343
+ ${s.length?s:e.html`<div>${De(Fe.default)}</div>`}
344
+ </div>
345
+ </div>
346
+ <div class="settings-container">
347
+ <div class="settings-title">${De(Fe.environment)}</div>
348
+ <div class="settings">
349
+ ${t.length?t:e.html`<div>${De(Fe.default)}</div>`}
350
+ </div>
351
+ </div>
352
+ </div>
353
+ `}#Pe(){const e=[...this.#se||[],...this.#ie||[]].find((e=>e.getId()===this.#ne));return e||this.#se[0]}#Le(){if(this.#ce)return e.html`
354
+ <${te.litTagName} .descriptor=${this.#ce}>
355
+ </${te.litTagName}>
356
+ `;const t=this.#Pe(),s=t?.getFormatName();return this.#re?e.html`
357
+ <${v.SplitView.SplitView.litTagName}>
358
+ <div slot="main">
359
+ ${this.#Fe()}
360
+ </div>
361
+ <div slot="sidebar" jslog=${n.pane("source-code").track({resize:!0})}>
362
+ <div class="section-toolbar" jslog=${n.toolbar()}>
363
+ <${g.SelectMenu.SelectMenu.litTagName}
364
+ @selectmenuselected=${this.#Oe}
365
+ .showDivider=${!0}
366
+ .showArrow=${!0}
367
+ .sideButton=${!1}
368
+ .showSelectedItem=${!0}
369
+ .showConnector=${!1}
370
+ .position=${"bottom"}
371
+ .buttonTitle=${s}
372
+ .jslogContext=${"code-format"}
373
+ >
374
+ ${this.#se.map((t=>e.html`<${g.Menu.MenuItem.litTagName}
375
+ .value=${t.getId()}
376
+ .selected=${this.#ne===t.getId()}
377
+ jslog=${n.action().track({click:!0}).context(`converter-${d.StringUtilities.toKebabCase(t.getId())}`)}
378
+ >
379
+ ${t.getFormatName()}
380
+ </${g.Menu.MenuItem.litTagName}>`))}
381
+ ${this.#ie.map((t=>e.html`<${g.Menu.MenuItem.litTagName}
382
+ .value=${t.getId()}
383
+ .selected=${this.#ne===t.getId()}
384
+ jslog=${n.action().track({click:!0}).context("converter-extension")}
385
+ >
386
+ ${t.getFormatName()}
387
+ </${g.Menu.MenuItem.litTagName}>`))}
388
+ </${g.SelectMenu.SelectMenu.litTagName}>
389
+ <${i.Button.Button.litTagName}
390
+ title=${a.Tooltip.getTooltipForActions(De(Fe.hideCode),"chrome-recorder.toggle-code-view")}
391
+ .data=${{variant:"icon",size:"SMALL",iconName:"cross"}}
392
+ @click=${this.showCodeToggle}
393
+ jslog=${n.close().track({click:!0})}
394
+ ></${i.Button.Button.litTagName}>
395
+ </div>
396
+ <div class="text-editor" jslog=${n.textField().track({change:!0})}>
397
+ <${m.TextEditor.TextEditor.litTagName} .state=${this.#ae}></${m.TextEditor.TextEditor.litTagName}>
398
+ </div>
399
+ </div>
400
+ </${v.SplitView.SplitView.litTagName}>
401
+ `:this.#Fe()}#De(t){return t.screenshot?e.html`
402
+ <img class="screenshot" src=${t.screenshot} alt=${De(Fe.screenshotForSection)} />
403
+ `:null}#ze(){return this.#_.isPlaying?e.html`
404
+ <${i.Button.Button.litTagName} .jslogContext=${"abort-replay"} @click=${this.#ve} .iconName=${"pause"} .variant=${"outlined"}>
405
+ ${De(Fe.cancelReplay)}
406
+ </${i.Button.Button.litTagName}>`:e.html`<${ve.litTagName}
407
+ .data=${{settings:this.#r,replayExtensions:this.#k}}
408
+ .disabled=${this.#_.isPlaying}
409
+ @startreplay=${this.#me}
410
+ >
411
+ </${ve.litTagName}>`}#Ve(e){e.stopPropagation(),this.dispatchEvent(new Ve({targetPanel:"timeline",speed:"normal"}))}showCodeToggle=()=>{this.#re=!this.#re,c.userMetrics.recordingCodeToggled(this.#re?1:2),this.#ue()};#ue=async()=>{if(!this.#U)return;const e=this.#Pe();if(!e)return;const[t,s]=await e.stringify(this.#U);this.#oe=t,this.#le=s,this.#le?.shift();const i=e.getMediaType(),r=i?await h.CodeHighlighter.languageFromMIME(i):null;this.#ae=u.EditorState.create({doc:this.#oe,extensions:[m.Config.baseConfiguration(this.#oe),u.EditorState.readOnly.of(!0),u.EditorView.lineWrapping,r||[]]}),this.#o(),this.dispatchEvent(new Event("code-generated"))};#$e=(e,t=!1)=>{if(!this.#le)return;const s=this.#W.indexOf(e);if(-1===s)return;const i=this.#t.querySelector("devtools-text-editor");if(!i)return;const r=i.editor;if(!r)return;const o=this.#le[2*s],n=this.#le[2*s+1];let a=i.createSelection({lineNumber:o+n,columnNumber:0},{lineNumber:o,columnNumber:0});const l=i.state.doc.lineAt(a.main.anchor);a=i.createSelection({lineNumber:o+n-1,columnNumber:l.length+1},{lineNumber:o,columnNumber:0}),r.dispatch({selection:a,effects:t?[u.EditorView.scrollIntoView(a.main,{y:"nearest"})]:void 0})};#Oe=e=>{this.#ne=e.itemValue,this.#r&&(this.#r.preferredCopyFormat=e.itemValue),this.#ue()};#Fe(){return e.html`
412
+ <div class="sections">
413
+ ${this.#re?"":e.html`<div class="section-toolbar">
414
+ <${i.Button.Button.litTagName}
415
+ @click=${this.showCodeToggle}
416
+ class="show-code"
417
+ .data=${{variant:"outlined",title:a.Tooltip.getTooltipForActions(De(Fe.showCode),"chrome-recorder.toggle-code-view")}}
418
+ jslog=${n.toggleSubpane("chrome-recorder.toggle-code-view").track({click:!0})}
419
+ >
420
+ ${De(Fe.showCode)}
421
+ </${i.Button.Button.litTagName}>
422
+ </div>`}
423
+ ${this.#Y.map(((t,s)=>e.html`
424
+ <div class="section">
425
+ <div class="screenshot-wrapper">
426
+ ${this.#De(t)}
427
+ </div>
428
+ <div class="content">
429
+ <div class="steps">
430
+ <${Pe.litTagName}
431
+ @click=${this.#ye}
432
+ @mouseover=${this.#Se}
433
+ .data=${{section:t,state:this.#fe(t),isStartOfGroup:!0,isEndOfGroup:0===t.steps.length,isFirstSection:0===s,isLastSection:s===this.#Y.length-1&&0===t.steps.length,isSelected:this.#Z===(t.causingStep||null),sectionIndex:s,isRecording:this.#K,isPlaying:this.#_.isPlaying,error:"error"===this.#fe(t)?this.#X:void 0,hasBreakpoint:!1,removable:this.#W.length>1&&t.causingStep}}
434
+ >
435
+ </${Pe.litTagName}>
436
+ ${t.steps.map((e=>this.#we(t,e,s===this.#Y.length-1)))}
437
+ ${!this.#q&&this.#K&&s===this.#Y.length-1?e.html`<devtools-button
438
+ class="step add-assertion-button"
439
+ .data=${{variant:"outlined",title:De(Fe.addAssertion),jslogContext:"add-assertion"}}
440
+ @click=${this.#he}
441
+ >${De(Fe.addAssertion)}</devtools-button>`:void 0}
442
+ ${this.#K&&s===this.#Y.length-1?e.html`<div class="step recording">${De(Fe.recording)}</div>`:null}
443
+ </div>
444
+ </div>
445
+ </div>
446
+ `))}
447
+ </div>
448
+ `}#_e(){if(!this.#U)return"";const{title:t}=this.#U,s=!this.#_.isPlaying&&!this.#K;return e.html`
449
+ <div class="header">
450
+ <div class="header-title-wrapper">
451
+ <div class="header-title">
452
+ <span @blur=${this.#Ie}
453
+ @keydown=${this.#Ne}
454
+ id="title-input"
455
+ .contentEditable=${s?"true":"false"}
456
+ jslog=${n.value("title").track({change:!0})}
457
+ class=${e.Directives.classMap({"has-error":this.#G,disabled:!s})}
458
+ .innerText=${e.Directives.live(t)}></span>
459
+ <div class="title-button-bar">
460
+ <${i.Button.Button.litTagName}
461
+ @click=${this.#Be}
462
+ .data=${{disabled:!s,variant:"toolbar",iconName:"edit",title:De(Fe.editTitle),jslogContext:"edit-title"}}
463
+ ></${i.Button.Button.litTagName}>
464
+ </div>
465
+ </div>
466
+ ${this.#G?e.html`<div class="title-input-error-text">
467
+ ${De(Fe.requiredTitleError)}
468
+ </div>`:""}
469
+ </div>
470
+ ${!this.#K&&this.#te?e.html`<div class="actions">
471
+ <${i.Button.Button.litTagName}
472
+ @click=${this.#Ve}
473
+ .data=${{disabled:this.#_.isPlaying,variant:"outlined",iconName:"performance",title:De(Fe.performancePanel),jslogContext:"measure-performance"}}
474
+ >
475
+ ${De(Fe.performancePanel)}
476
+ </${i.Button.Button.litTagName}>
477
+ <div class="separator"></div>
478
+ ${this.#ze()}
479
+ </div>`:""}
480
+ </div>`}#Ue(){if(!this.#K)return"";const t=this.#q?De(Fe.recordingIsBeingStopped):De(Fe.endRecording);return e.html`
481
+ <div class="footer">
482
+ <div class="controls">
483
+ <devtools-control-button
484
+ jslog=${n.toggle("toggle-recording").track({click:!0})}
485
+ @click=${this.#ge}
486
+ .disabled=${this.#q}
487
+ .shape=${"square"}
488
+ .label=${t}
489
+ title=${a.Tooltip.getTooltipForActions(t,"chrome-recorder.start-recording")}
490
+ >
491
+ </devtools-control-button>
492
+ </div>
493
+ </div>
494
+ `}#o(){const t={wrapper:!0,"is-recording":this.#K,"is-playing":this.#_.isPlaying,"was-successful":"Success"===this.#J,"was-failure":"Failure"===this.#J};e.render(e.html`
495
+ <div @click=${this.#ke} class=${e.Directives.classMap(t)}>
496
+ <div class="main">
497
+ ${this.#_e()}
498
+ ${this.#ce?e.html`
499
+ <${te.litTagName} .descriptor=${this.#ce}>
500
+ </${te.litTagName}>
501
+ `:e.html`
502
+ ${this.#Ae()}
503
+ ${this.#Le()}
504
+ `}
505
+ ${this.#Ue()}
506
+ </div>
507
+ </div>
508
+ `,this.#t,{host:this})}}customElements.define("devtools-recording-view",Xe);var Ye=Object.freeze({__proto__:null,RecordingFinishedEvent:ze,PlayRecordingEvent:Ve,AbortReplayEvent:_e,RecordingChangedEvent:Ue,AddAssertionEvent:Ke,RecordingTitleChangedEvent:qe,NetworkConditionsChanged:Ge,TimeoutChanged:He,RecordingView:Xe});const Je=new CSSStyleSheet;Je.replaceSync("*{margin:0;padding:0;box-sizing:border-box;font-weight:normal;font-size:inherit}:host{flex:1;display:block;overflow:auto}.wrapper{padding:24px;background-color:var(--sys-color-cdt-base-container);height:100%;display:flex;flex-direction:column}.fit-content{width:fit-content}.align-right{width:auto;display:flex;flex-direction:row;justify-content:flex-end}\n/*# sourceURL=startView.css */\n");const Qe={header:"Measure performance across an entire user journey",step1:"Record a common user journey on your website or app",step2:"Replay the recording to check if the flow is working",step3:"Generate a detailed performance trace or export a Puppeteer script for testing",createRecording:"Create a new recording",quickStart:"Quick start: learn the new Recorder panel in DevTools"},Ze=s.i18n.registerUIStrings("panels/recorder/components/StartView.ts",Qe),et=s.i18n.getLocalizedString.bind(void 0,Ze),tt="https://goo.gle/recorder-feedback";class st extends Event{static eventName="createrecording";constructor(){super(st.eventName)}}class it extends HTMLElement{static litTagName=e.literal`devtools-start-view`;#t=this.attachShadow({mode:"open"});constructor(){super(),this.setAttribute("jslog",`${n.section("start-view")}`)}connectedCallback(){this.#t.adoptedStyleSheets=[Je],l.ScheduledRender.scheduleRender(this,this.#o)}#Ke(){this.dispatchEvent(new st)}#o=()=>{e.render(e.html`
509
+ <div class="wrapper">
510
+ <${w.PanelIntroductionSteps.PanelIntroductionSteps.litTagName}>
511
+ <span slot="title">${et(Qe.header)}</span>
512
+ <span slot="step-1">${et(Qe.step1)}</span>
513
+ <span slot="step-2">${et(Qe.step2)}</span>
514
+ <span slot="step-3">${et(Qe.step3)}</span>
515
+ </${w.PanelIntroductionSteps.PanelIntroductionSteps.litTagName}>
516
+ <div class="fit-content">
517
+ <${i.Button.Button.litTagName} .variant=${"primary"} @click=${this.#Ke}
518
+ .jslogContext=${"chrome-recorder.create-recording"}>
519
+ ${et(Qe.createRecording)}
520
+ </${i.Button.Button.litTagName}>
521
+ </div>
522
+ <${f.PanelFeedback.PanelFeedback.litTagName} .data=${{feedbackUrl:tt,quickStartUrl:"https://developer.chrome.com/docs/devtools/recorder",quickStartLinkText:et(Qe.quickStart)}}>
523
+ </${f.PanelFeedback.PanelFeedback.litTagName}>
524
+ <div class="align-right">
525
+ <${f.FeedbackButton.FeedbackButton.litTagName} .data=${{feedbackUrl:tt}}>
526
+ </${f.FeedbackButton.FeedbackButton.litTagName}>
527
+ </div>
528
+ </div>
529
+ `,this.#t,{host:this})}}customElements.define("devtools-start-view",it);var rt=Object.freeze({__proto__:null,FEEDBACK_URL:tt,CreateRecordingEvent:st,StartView:it});const ot=new CSSStyleSheet;ot.replaceSync("*{box-sizing:border-box;padding:0;margin:0;font-size:inherit}:host{display:block}.row{display:flex;flex-direction:row;color:var(--sys-color-token-property-special);font-family:var(--monospace-font-family);font-size:var(--monospace-font-size);align-items:center;line-height:18px;margin-top:3px}.row devtools-button{line-height:1;margin-left:0.5em}.separator{margin-right:0.5em;color:var(--sys-color-on-surface)}.padded{margin-left:2em}.padded.double{margin-left:4em}.selector-picker{width:18px;height:18px}.inline-button{width:18px;height:18px;opacity:0%;visibility:hidden;transition:opacity 200ms;flex-shrink:0}.row:focus-within .inline-button,\n.row:hover .inline-button{opacity:100%;visibility:visible}.wrapped.row{flex-wrap:wrap}.gap.row{gap:5px}.gap.row devtools-button{margin-left:0}.regular-font{font-family:inherit;font-size:inherit}.no-margin{margin:0}.row-buttons{margin-top:3px}.error{margin:3px 0 6px;padding:8px 12px;background:var(--sys-color-error-container);color:var(--sys-color-error)}\n/*# sourceURL=stepEditor.css */\n");function nt(e,t="Assertion failed!"){if(!e)throw new Error(t)}const at=e=>{for(const t of Reflect.ownKeys(e)){const s=e[t];(s&&"object"==typeof s||"function"==typeof s)&&at(s)}return Object.freeze(e)};class lt{value;constructor(e){this.value=e}}class ct{value;constructor(e){this.value=e}}const dt=(e,t)=>{if(t instanceof ct){nt(Array.isArray(e),`Expected an array. Got ${typeof e}.`);const s=[...e],i=Object.keys(t.value).sort(((e,t)=>Number(t)-Number(e)));for(const e of i){const i=t.value[Number(e)];void 0===i?s.splice(Number(e),1):i instanceof lt?s.splice(Number(e),0,i.value):s[Number(e)]=dt(s[e],i)}return Object.freeze(s)}if("object"==typeof t&&!Array.isArray(t)){nt(!Array.isArray(e),"Expected an object. Got an array.");const s={...e},i=Object.keys(t);for(const e of i){const i=t[e];void 0===i?delete s[e]:s[e]=dt(s[e],i)}return Object.freeze(s)}return t};var pt=self&&self.__decorate||function(e,t,s,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,s):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,s,i);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(n=(o<3?r(n):o>3?r(t,s,n):r(t,s))||n);return o>3&&n&&Object.defineProperty(t,s,n),n};const{html:ut,Decorators:ht,Directives:gt,LitElement:vt}=e,{customElement:mt,property:bt,state:ft}=ht,{live:wt}=gt,yt=Object.freeze({string:e=>e.trim(),number:e=>{const t=parseFloat(e);return Number.isNaN(t)?0:t},boolean:e=>"true"===e.toLowerCase()}),St=Object.freeze({selectors:"string",offsetX:"number",offsetY:"number",target:"string",frame:"number",assertedEvents:"string",value:"string",key:"string",operator:"string",count:"number",expression:"string",x:"number",y:"number",url:"string",type:"string",timeout:"number",duration:"number",button:"string",deviceType:"string",width:"number",height:"number",deviceScaleFactor:"number",isMobile:"boolean",hasTouch:"boolean",isLandscape:"boolean",download:"number",upload:"number",latency:"number",name:"string",parameters:"string",visible:"boolean",properties:"string",attributes:"string"}),xt=at({selectors:[[".cls"]],offsetX:1,offsetY:1,target:"main",frame:[0],assertedEvents:[{type:"navigation",url:"https://example.com",title:"Title"}],value:"Value",key:"Enter",operator:">=",count:1,expression:"true",x:0,y:0,url:"https://example.com",timeout:5e3,duration:50,deviceType:"mouse",button:"primary",type:"click",width:800,height:600,deviceScaleFactor:1,isMobile:!1,hasTouch:!1,isLandscape:!0,download:1e3,upload:1e3,latency:25,name:"customParam",parameters:"{}",properties:"{}",attributes:[{name:"attribute",value:"value"}],visible:!0}),$t=at({[a.Schema.StepType.Click]:{required:["selectors","offsetX","offsetY"],optional:["assertedEvents","button","deviceType","duration","frame","target","timeout"]},[a.Schema.StepType.DoubleClick]:{required:["offsetX","offsetY","selectors"],optional:["assertedEvents","button","deviceType","frame","target","timeout"]},[a.Schema.StepType.Hover]:{required:["selectors"],optional:["assertedEvents","frame","target","timeout"]},[a.Schema.StepType.Change]:{required:["selectors","value"],optional:["assertedEvents","frame","target","timeout"]},[a.Schema.StepType.KeyDown]:{required:["key"],optional:["assertedEvents","target","timeout"]},[a.Schema.StepType.KeyUp]:{required:["key"],optional:["assertedEvents","target","timeout"]},[a.Schema.StepType.Scroll]:{required:[],optional:["assertedEvents","frame","target","timeout","x","y"]},[a.Schema.StepType.Close]:{required:[],optional:["assertedEvents","target","timeout"]},[a.Schema.StepType.Navigate]:{required:["url"],optional:["assertedEvents","target","timeout"]},[a.Schema.StepType.WaitForElement]:{required:["selectors"],optional:["assertedEvents","attributes","count","frame","operator","properties","target","timeout","visible"]},[a.Schema.StepType.WaitForExpression]:{required:["expression"],optional:["assertedEvents","frame","target","timeout"]},[a.Schema.StepType.CustomStep]:{required:["name","parameters"],optional:["assertedEvents","target","timeout"]},[a.Schema.StepType.EmulateNetworkConditions]:{required:["download","latency","upload"],optional:["assertedEvents","target","timeout"]},[a.Schema.StepType.SetViewport]:{required:["deviceScaleFactor","hasTouch","height","isLandscape","isMobile","width"],optional:["assertedEvents","target","timeout"]}}),kt={notSaved:"Not saved: {error}",addAttribute:"Add {attributeName}",deleteRow:"Delete row",selectorPicker:"Select an element in the page to update selectors",addFrameIndex:"Add frame index within the frame tree",removeFrameIndex:"Remove frame index",addSelectorPart:"Add a selector part",removeSelectorPart:"Remove a selector part",addSelector:"Add a selector",removeSelector:"Remove a selector",unknownActionType:"Unknown action type."},Tt=s.i18n.registerUIStrings("panels/recorder/components/StepEditor.ts",kt),Et=s.i18n.getLocalizedString.bind(void 0,Tt);class Rt extends Event{static eventName="stepedited";data;constructor(e){super(Rt.eventName,{bubbles:!0,composed:!0}),this.data=e}}class Ct{static#qe=new x.SharedObject.SharedObject((()=>a.RecordingPlayer.RecordingPlayer.connectPuppeteer()),(({browser:e})=>a.RecordingPlayer.RecordingPlayer.disconnectPuppeteer(e)));static async default(e){const t={type:e},s=$t[t.type];let i=Promise.resolve();for(const e of s.required)i=Promise.all([i,(async()=>Object.assign(t,{[e]:await this.defaultByAttribute(t,e)}))()]);return await i,Object.freeze(t)}static async defaultByAttribute(e,t){return this.#qe.run((e=>{switch(t){case"assertedEvents":return dt(xt.assertedEvents,new ct({0:{url:e.page.url()||xt.assertedEvents[0].url}}));case"url":return e.page.url()||xt.url;case"height":return e.page.evaluate((()=>visualViewport.height))||xt.height;case"width":return e.page.evaluate((()=>visualViewport.width))||xt.width;default:return xt[t]}}))}static fromStep(e){const t=structuredClone(e);for(const s of["parameters","properties"])s in e&&void 0!==e[s]&&(t[s]=JSON.stringify(e[s]));if("attributes"in e&&e.attributes){t.attributes=[];for(const[s,i]of Object.entries(e.attributes))t.attributes.push({name:s,value:i})}return"selectors"in e&&(t.selectors=e.selectors.map((e=>"string"==typeof e?[e]:[...e]))),at(t)}static toStep(e){const t=structuredClone(e);for(const s of["parameters","properties"]){const i=e[s];i&&Object.assign(t,{[s]:JSON.parse(i)})}if(e.attributes)if(0!==e.attributes.length){const s={};for(const{name:t,value:i}of e.attributes)Object.assign(s,{[t]:i});Object.assign(t,{attributes:s})}else"attributes"in t&&delete t.attributes;if(e.selectors){const s=e.selectors.filter((e=>e.length>0)).map((e=>1===e.length?e[0]:[...e]));0!==s.length?Object.assign(t,{selectors:s}):"selectors"in t&&delete t.selectors}return e.frame&&0===e.frame.length&&"frame"in t&&delete t.frame,s=a.SchemaUtils.parseStep(t),JSON.parse(JSON.stringify(s));var s}}let It=class extends vt{static styles=[ot];#Ge=new S.SelectorPicker.SelectorPicker(this);constructor(){super(),this.disabled=!1}#e=e=>{e.preventDefault(),e.stopPropagation(),this.#Ge.toggle()};disconnectedCallback(){super.disconnectedCallback(),this.#Ge.stop()}render(){if(!this.disabled)return ut`<devtools-button
530
+ @click=${this.#e}
531
+ .title=${Et(kt.selectorPicker)}
532
+ class="selector-picker"
533
+ .size=${"SMALL"}
534
+ .iconName=${"select-element"}
535
+ .active=${this.#Ge.active}
536
+ .variant=${"icon"}
537
+ jslog=${n.toggle("selector-picker").track({click:!0})}
538
+ ></devtools-button>`}};pt([bt()],It.prototype,"disabled",void 0),It=pt([mt("devtools-recorder-selector-picker-button")],It);let Nt=class extends vt{static styles=[ot];#He=new Set;constructor(){super(),this.state={type:a.Schema.StepType.WaitForElement},this.isTypeEditable=!0,this.disabled=!1}createRenderRoot(){const e=super.createRenderRoot();return e.addEventListener("keydown",this.#We),e}set step(e){this.state=at(Ct.fromStep(e)),this.error=void 0}#Xe(e){try{this.dispatchEvent(new Rt(Ct.toStep(e))),this.state=e}catch(e){this.error=e.message}}#Ye=e=>{e.preventDefault(),e.stopPropagation(),this.#Xe(dt(this.state,{target:e.data.target,frame:e.data.frame,selectors:e.data.selectors.map((e=>"string"==typeof e?[e]:e)),offsetX:e.data.offsetX,offsetY:e.data.offsetY}))};#Je=(e,t,s)=>i=>{i.preventDefault(),i.stopPropagation(),this.#Xe(dt(this.state,e)),this.#Qe(t),s&&c.userMetrics.recordingEdited(s)};#We=e=>{if(nt(e instanceof KeyboardEvent),e.target instanceof y.SuggestionInput.SuggestionInput&&"Enter"===e.key){e.preventDefault(),e.stopPropagation();const t=this.renderRoot.querySelectorAll("devtools-suggestion-input"),s=[...t].findIndex((t=>t===e.target));s>=0&&s+1<t.length?t[s+1].focus():e.target.blur()}};#Ze=e=>t=>{if(nt(t.target instanceof y.SuggestionInput.SuggestionInput),t.target.disabled)return;const s=St[e.attribute],i=yt[s](t.target.value),r=e.from.bind(this)(i);r&&(this.#Xe(dt(this.state,r)),e.metric&&c.userMetrics.recordingEdited(e.metric))};#et=async e=>{if(nt(e.target instanceof y.SuggestionInput.SuggestionInput),e.target.disabled)return;const t=e.target.value;t!==this.state.type&&(Object.values(a.Schema.StepType).includes(t)?(this.#Xe(await Ct.default(t)),c.userMetrics.recordingEdited(9)):this.error=Et(kt.unknownActionType))};#tt=async e=>{e.preventDefault(),e.stopPropagation();const t=e.target.dataset.attribute;this.#Xe(dt(this.state,{[t]:await Ct.defaultByAttribute(this.state,t)})),this.#Qe(`[data-attribute=${t}].attribute devtools-suggestion-input`)};#st(e){if(!this.disabled)return ut`
539
+ <devtools-button
540
+ title=${e.title}
541
+ .size=${"SMALL"}
542
+ .iconName=${e.iconName}
543
+ .variant=${"icon"}
544
+ jslog=${n.action(e.class).track({click:!0})}
545
+ class="inline-button ${e.class}"
546
+ @click=${e.onClick}
547
+ ></devtools-button>
548
+ `}#it(e){if(this.disabled)return;return[...$t[this.state.type].optional].includes(e)&&!this.disabled?ut`<devtools-button
549
+ .size=${"SMALL"}
550
+ .iconName=${"bin"}
551
+ .variant=${"icon"}
552
+ .title=${Et(kt.deleteRow)}
553
+ class="inline-button delete-row"
554
+ data-attribute=${e}
555
+ jslog=${n.action("delete").track({click:!0})}
556
+ @click=${t=>{t.preventDefault(),t.stopPropagation(),this.#Xe(dt(this.state,{[e]:void 0}))}}
557
+ ></devtools-button>`:void 0}#rt(e){return this.#He.add("type"),ut`<div class="row attribute" data-attribute="type" jslog=${n.treeItem("type")}>
558
+ <div>type<span class="separator">:</span></div>
559
+ <devtools-suggestion-input
560
+ .disabled=${!e||this.disabled}
561
+ .options=${Object.values(a.Schema.StepType)}
562
+ .placeholder=${xt.type}
563
+ .value=${wt(this.state.type)}
564
+ @blur=${this.#et}
565
+ ></devtools-suggestion-input>
566
+ </div>`}#ot(e){this.#He.add(e);const t=this.state[e]?.toString();if(void 0!==t)return ut`<div class="row attribute" data-attribute=${e} jslog=${n.treeItem(d.StringUtilities.toKebabCase(e))}>
567
+ <div>${e}<span class="separator">:</span></div>
568
+ <devtools-suggestion-input
569
+ .disabled=${this.disabled}
570
+ .placeholder=${xt[e].toString()}
571
+ .value=${wt(t)}
572
+ .mimeType=${(()=>{switch(e){case"expression":return"text/javascript";case"properties":return"application/json";default:return""}})()}
573
+ @blur=${this.#Ze({attribute:e,from(t){if(void 0!==this.state[e]){if("properties"===e)c.userMetrics.recordingAssertion(2);return{[e]:t}}},metric:10})}
574
+ ></devtools-suggestion-input>
575
+ ${this.#it(e)}
576
+ </div>`}#nt(){if(this.#He.add("frame"),void 0!==this.state.frame)return ut`
577
+ <div class="attribute" data-attribute="frame" jslog=${n.treeItem("frame")}>
578
+ <div class="row">
579
+ <div>frame<span class="separator">:</span></div>
580
+ ${this.#it("frame")}
581
+ </div>
582
+ ${this.state.frame.map(((e,t,s)=>ut`
583
+ <div class="padded row">
584
+ <devtools-suggestion-input
585
+ .disabled=${this.disabled}
586
+ .placeholder=${xt.frame[0].toString()}
587
+ .value=${wt(e.toString())}
588
+ data-path=${`frame.${t}`}
589
+ @blur=${this.#Ze({attribute:"frame",from(e){if(void 0!==this.state.frame?.[t])return{frame:new ct({[t]:e})}},metric:10})}
590
+ ></devtools-suggestion-input>
591
+ ${this.#st({class:"add-frame",title:Et(kt.addFrameIndex),iconName:"plus",onClick:this.#Je({frame:new ct({[t+1]:new lt(xt.frame[0])})},`devtools-suggestion-input[data-path="frame.${t+1}"]`,10)})}
592
+ ${this.#st({class:"remove-frame",title:Et(kt.removeFrameIndex),iconName:"minus",onClick:this.#Je({frame:new ct({[t]:void 0})},`devtools-suggestion-input[data-path="frame.${Math.min(t,s.length-2)}"]`,10)})}
593
+ </div>
594
+ `))}
595
+ </div>
596
+ `}#at(){if(this.#He.add("selectors"),void 0!==this.state.selectors)return ut`<div class="attribute" data-attribute="selectors" jslog=${n.treeItem("selectors")}>
597
+ <div class="row">
598
+ <div>selectors<span class="separator">:</span></div>
599
+ <devtools-recorder-selector-picker-button
600
+ @selectorpicked=${this.#Ye}
601
+ .disabled=${this.disabled}
602
+ ></devtools-recorder-selector-picker-button>
603
+ ${this.#it("selectors")}
604
+ </div>
605
+ ${this.state.selectors.map(((e,t,s)=>ut`<div class="padded row" data-selector-path=${t}>
606
+ <div>selector #${t+1}<span class="separator">:</span></div>
607
+ ${this.#st({class:"add-selector",title:Et(kt.addSelector),iconName:"plus",onClick:this.#Je({selectors:new ct({[t+1]:new lt(structuredClone(xt.selectors[0]))})},`devtools-suggestion-input[data-path="selectors.${t+1}.0"]`,4)})}
608
+ ${this.#st({class:"remove-selector",title:Et(kt.removeSelector),iconName:"minus",onClick:this.#Je({selectors:new ct({[t]:void 0})},`devtools-suggestion-input[data-path="selectors.${Math.min(t,s.length-2)}.0"]`,5)})}
609
+ </div>
610
+ ${e.map(((e,s,i)=>ut`<div
611
+ class="double padded row"
612
+ data-selector-path="${t}.${s}"
613
+ >
614
+ <devtools-suggestion-input
615
+ .disabled=${this.disabled}
616
+ .placeholder=${xt.selectors[0][0]}
617
+ .value=${wt(e)}
618
+ data-path=${`selectors.${t}.${s}`}
619
+ @blur=${this.#Ze({attribute:"selectors",from(e){if(void 0!==this.state.selectors?.[t]?.[s])return{selectors:new ct({[t]:new ct({[s]:e})})}},metric:7})}
620
+ ></devtools-suggestion-input>
621
+ ${this.#st({class:"add-selector-part",title:Et(kt.addSelectorPart),iconName:"plus",onClick:this.#Je({selectors:new ct({[t]:new ct({[s+1]:new lt(xt.selectors[0][0])})})},`devtools-suggestion-input[data-path="selectors.${t}.${s+1}"]`,6)})}
622
+ ${this.#st({class:"remove-selector-part",title:Et(kt.removeSelectorPart),iconName:"minus",onClick:this.#Je({selectors:new ct({[t]:new ct({[s]:void 0})})},`devtools-suggestion-input[data-path="selectors.${t}.${Math.min(s,i.length-2)}"]`,8)})}
623
+ </div>`))}`))}
624
+ </div>`}#lt(){if(this.#He.add("assertedEvents"),void 0!==this.state.assertedEvents)return ut`<div class="attribute" data-attribute="assertedEvents" jslog=${n.treeItem("asserted-events")}>
625
+ <div class="row">
626
+ <div>asserted events<span class="separator">:</span></div>
627
+ ${this.#it("assertedEvents")}
628
+ </div>
629
+ ${this.state.assertedEvents.map(((e,t)=>ut` <div class="padded row" jslog=${n.treeItem("event-type")}>
630
+ <div>type<span class="separator">:</span></div>
631
+ <div>${e.type}</div>
632
+ </div>
633
+ <div class="padded row" jslog=${n.treeItem("event-title")}>
634
+ <div>title<span class="separator">:</span></div>
635
+ <devtools-suggestion-input
636
+ .disabled=${this.disabled}
637
+ .placeholder=${xt.assertedEvents[0].title}
638
+ .value=${wt(e.title??"")}
639
+ @blur=${this.#Ze({attribute:"assertedEvents",from(e){if(void 0!==this.state.assertedEvents?.[t]?.title)return{assertedEvents:new ct({[t]:{title:e}})}},metric:10})}
640
+ ></devtools-suggestion-input>
641
+ </div>
642
+ <div class="padded row" jslog=${n.treeItem("event-url")}>
643
+ <div>url<span class="separator">:</span></div>
644
+ <devtools-suggestion-input
645
+ .disabled=${this.disabled}
646
+ .placeholder=${xt.assertedEvents[0].url}
647
+ .value=${wt(e.url??"")}
648
+ @blur=${this.#Ze({attribute:"url",from(e){if(void 0!==this.state.assertedEvents?.[t]?.url)return{assertedEvents:new ct({[t]:{url:e}})}},metric:10})}
649
+ ></devtools-suggestion-input>
650
+ </div>`))}
651
+ </div> `}#ct(){if(this.#He.add("attributes"),void 0!==this.state.attributes)return ut`<div class="attribute" data-attribute="attributes" jslog=${n.treeItem("attributes")}>
652
+ <div class="row">
653
+ <div>attributes<span class="separator">:</span></div>
654
+ ${this.#it("attributes")}
655
+ </div>
656
+ ${this.state.attributes.map((({name:e,value:t},s,i)=>ut`<div class="padded row" jslog=${n.treeItem("attribute")}>
657
+ <devtools-suggestion-input
658
+ .disabled=${this.disabled}
659
+ .placeholder=${xt.attributes[0].name}
660
+ .value=${wt(e)}
661
+ data-path=${`attributes.${s}.name`}
662
+ jslog=${n.key().track({change:!0})}
663
+ @blur=${this.#Ze({attribute:"attributes",from(e){if(void 0!==this.state.attributes?.[s]?.name)return c.userMetrics.recordingAssertion(3),{attributes:new ct({[s]:{name:e}})}},metric:10})}
664
+ ></devtools-suggestion-input>
665
+ <span class="separator">:</span>
666
+ <devtools-suggestion-input
667
+ .disabled=${this.disabled}
668
+ .placeholder=${xt.attributes[0].value}
669
+ .value=${wt(t)}
670
+ data-path=${`attributes.${s}.value`}
671
+ @blur=${this.#Ze({attribute:"attributes",from(e){if(void 0!==this.state.attributes?.[s]?.value)return c.userMetrics.recordingAssertion(3),{attributes:new ct({[s]:{value:e}})}},metric:10})}
672
+ ></devtools-suggestion-input>
673
+ ${this.#st({class:"add-attribute-assertion",title:Et(kt.addSelectorPart),iconName:"plus",onClick:this.#Je({attributes:new ct({[s+1]:new lt((()=>{{const e=new Set(i.map((({name:e})=>e))),t=xt.attributes[0];let s=t.name,r=0;for(;e.has(s);)++r,s=`${t.name}-${r}`;return{...t,name:s}}})())})},`devtools-suggestion-input[data-path="attributes.${s+1}.name"]`,10)})}
674
+ ${this.#st({class:"remove-attribute-assertion",title:Et(kt.removeSelectorPart),iconName:"minus",onClick:this.#Je({attributes:new ct({[s]:void 0})},`devtools-suggestion-input[data-path="attributes.${Math.min(s,i.length-2)}.value"]`,10)})}
675
+ </div>`))}
676
+ </div>`}#dt(){return[...$t[this.state.type].optional].filter((e=>void 0===this.state[e])).map((e=>ut`<devtools-button
677
+ .variant=${"outlined"}
678
+ class="add-row"
679
+ data-attribute=${e}
680
+ jslog=${n.action(`add-${d.StringUtilities.toKebabCase(e)}`)}
681
+ @click=${this.#tt}
682
+ >
683
+ ${Et(kt.addAttribute,{attributeName:e})}
684
+ </devtools-button>`))}#Qe=e=>{this.updateComplete.then((()=>{const t=this.renderRoot.querySelector(e);t?.focus()}))};render(){this.#He=new Set;const e=ut`
685
+ <div class="wrapper" jslog=${n.tree("step-editor")}>
686
+ ${this.#rt(this.isTypeEditable)} ${this.#ot("target")}
687
+ ${this.#nt()} ${this.#at()}
688
+ ${this.#ot("deviceType")} ${this.#ot("button")}
689
+ ${this.#ot("url")} ${this.#ot("x")}
690
+ ${this.#ot("y")} ${this.#ot("offsetX")}
691
+ ${this.#ot("offsetY")} ${this.#ot("value")}
692
+ ${this.#ot("key")} ${this.#ot("operator")}
693
+ ${this.#ot("count")} ${this.#ot("expression")}
694
+ ${this.#ot("duration")} ${this.#lt()}
695
+ ${this.#ot("timeout")} ${this.#ot("width")}
696
+ ${this.#ot("height")} ${this.#ot("deviceScaleFactor")}
697
+ ${this.#ot("isMobile")} ${this.#ot("hasTouch")}
698
+ ${this.#ot("isLandscape")} ${this.#ot("download")}
699
+ ${this.#ot("upload")} ${this.#ot("latency")}
700
+ ${this.#ot("name")} ${this.#ot("parameters")}
701
+ ${this.#ot("visible")} ${this.#ot("properties")}
702
+ ${this.#ct()}
703
+ ${this.error?ut`
704
+ <div class="error">
705
+ ${Et(kt.notSaved,{error:this.error})}
706
+ </div>
707
+ `:void 0}
708
+ ${this.disabled?void 0:ut`<div
709
+ class="row-buttons wrapped gap row regular-font no-margin"
710
+ >
711
+ ${this.#dt()}
712
+ </div>`}
713
+ </div>
714
+ `;for(const e of Object.keys(St))if(!this.#He.has(e))throw new Error(`The editable attribute ${e} does not have UI`);return e}};pt([ft()],Nt.prototype,"state",void 0),pt([ft()],Nt.prototype,"error",void 0),pt([bt()],Nt.prototype,"isTypeEditable",void 0),pt([bt()],Nt.prototype,"disabled",void 0),Nt=pt([mt("devtools-recorder-step-editor")],Nt);var Bt=Object.freeze({__proto__:null,StepEditedEvent:Rt,EditorState:Ct,get StepEditor(){return Nt}});export{B as ControlButton,D as CreateRecordingView,X as RecordingListView,Ye as RecordingView,me as ReplaySection,ae as SelectButton,rt as StartView,Bt as StepEditor,Le as StepView,ye as TimelineSection};