chrome-devtools-mcp 0.10.1 → 0.10.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 (328) hide show
  1. package/README.md +10 -0
  2. package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Debouncer.js +2 -2
  3. package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Gzip.js +1 -1
  4. package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Revealer.js +5 -0
  5. package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Settings.js +106 -98
  6. package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Throttler.js +2 -2
  7. package/build/node_modules/chrome-devtools-frontend/front_end/core/common/common.js +1 -2
  8. package/build/node_modules/chrome-devtools-frontend/front_end/core/host/AidaClient.js +2 -2
  9. package/build/node_modules/chrome-devtools-frontend/front_end/core/host/DispatchHttpRequestClient.js +15 -3
  10. package/build/node_modules/chrome-devtools-frontend/front_end/core/host/GdpClient.js +4 -0
  11. package/build/node_modules/chrome-devtools-frontend/front_end/core/host/InspectorFrontendHost.js +10 -13
  12. package/build/node_modules/chrome-devtools-frontend/front_end/core/host/UserMetrics.js +3 -0
  13. package/build/node_modules/chrome-devtools-frontend/front_end/core/i18n/ByteUtilities.js +72 -0
  14. package/build/node_modules/chrome-devtools-frontend/front_end/core/i18n/DevToolsLocale.js +64 -0
  15. package/build/node_modules/chrome-devtools-frontend/front_end/core/i18n/NumberFormatter.js +67 -0
  16. package/build/node_modules/chrome-devtools-frontend/front_end/core/i18n/collect-ui-strings.js +73 -0
  17. package/build/node_modules/chrome-devtools-frontend/front_end/core/i18n/generate-locales-js.js +51 -0
  18. package/build/node_modules/chrome-devtools-frontend/front_end/core/i18n/i18n.js +9 -60
  19. package/build/node_modules/chrome-devtools-frontend/front_end/core/i18n/i18nImpl.js +135 -0
  20. package/build/node_modules/chrome-devtools-frontend/front_end/core/{common/QueryParamHandler.js → i18n/i18nTypes.js} +1 -1
  21. package/build/node_modules/chrome-devtools-frontend/front_end/core/i18n/locales.js +14 -0
  22. package/build/node_modules/chrome-devtools-frontend/front_end/core/i18n/time-utilities.js +148 -0
  23. package/build/node_modules/chrome-devtools-frontend/front_end/core/protocol_client/DevToolsCDPConnection.js +138 -0
  24. package/build/node_modules/chrome-devtools-frontend/front_end/core/protocol_client/InspectorBackend.js +19 -150
  25. package/build/node_modules/chrome-devtools-frontend/front_end/core/protocol_client/protocol_client.js +2 -2
  26. package/build/node_modules/chrome-devtools-frontend/front_end/core/root/DevToolsContext.js +50 -0
  27. package/build/node_modules/chrome-devtools-frontend/front_end/core/root/root.js +2 -1
  28. package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CPUThrottlingManager.js +0 -3
  29. package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSMatchedStyles.js +6 -7
  30. package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSModel.js +1 -1
  31. package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSRule.js +14 -4
  32. package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/ChildTargetManager.js +1 -2
  33. package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/DebuggerModel.js +1 -16
  34. package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/IOModel.js +1 -4
  35. package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/NetworkManager.js +18 -9
  36. package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/NetworkRequest.js +0 -8
  37. package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/RemoteObject.js +3 -0
  38. package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/ServerSentEventsProtocol.js +3 -0
  39. package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/Target.js +1 -3
  40. package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/TargetManager.js +4 -5
  41. package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/sdk-meta.js +0 -30
  42. package/build/node_modules/chrome-devtools-frontend/front_end/foundation/Universe.js +30 -0
  43. package/build/node_modules/chrome-devtools-frontend/front_end/foundation/foundation.js +5 -0
  44. package/build/node_modules/chrome-devtools-frontend/front_end/generated/Deprecation.js +8 -14
  45. package/build/node_modules/chrome-devtools-frontend/front_end/generated/InspectorBackendCommands.js +9 -6
  46. package/build/node_modules/chrome-devtools-frontend/front_end/generated/SupportedCSSProperties.js +62 -8
  47. package/build/node_modules/chrome-devtools-frontend/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.js +86 -51
  48. package/build/node_modules/chrome-devtools-frontend/front_end/models/ai_assistance/performance/AIQueries.js +46 -2
  49. package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/CSSWorkspaceBinding.js +6 -5
  50. package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/CompilerScriptMapping.js +3 -1
  51. package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/DebuggerWorkspaceBinding.js +17 -14
  52. package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/ResourceMapping.js +46 -14
  53. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/AttributionReportingIssue.js +202 -0
  54. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/BounceTrackingIssue.js +57 -0
  55. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/CheckFormsIssuesTrigger.js +31 -0
  56. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/ClientHintIssue.js +76 -0
  57. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/ContentSecurityPolicyIssue.js +140 -0
  58. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/ContrastCheckTrigger.js +59 -0
  59. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/CookieDeprecationMetadataIssue.js +64 -0
  60. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/CookieIssue.js +513 -0
  61. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/CorsIssue.js +251 -0
  62. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/CrossOriginEmbedderPolicyIssue.js +112 -0
  63. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/DeprecationIssue.js +95 -0
  64. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/ElementAccessibilityIssue.js +100 -0
  65. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/FederatedAuthRequestIssue.js +236 -0
  66. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/FederatedAuthUserInfoRequestIssue.js +146 -0
  67. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/GenericIssue.js +197 -0
  68. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/HeavyAdIssue.js +57 -0
  69. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/Issue.js +147 -0
  70. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/IssueAggregator.js +309 -0
  71. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/IssueResolver.js +40 -0
  72. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/IssuesManager.js +416 -0
  73. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/IssuesManagerEvents.js +4 -0
  74. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/LowTextContrastIssue.js +53 -0
  75. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/MarkdownIssueDescription.js +104 -0
  76. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/MixedContentIssue.js +59 -0
  77. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/PartitioningBlobURLIssue.js +63 -0
  78. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/PropertyRuleIssue.js +63 -0
  79. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/QuirksModeIssue.js +53 -0
  80. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/RelatedIssue.js +70 -0
  81. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/SRIMessageSignatureIssue.js +91 -0
  82. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/SharedArrayBufferIssue.js +54 -0
  83. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/SharedDictionaryIssue.js +297 -0
  84. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/SourceFrameIssuesManager.js +81 -0
  85. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/StylesheetLoadingIssue.js +63 -0
  86. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/UnencodedDigestIssue.js +67 -0
  87. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/CoepCoopSandboxedIframeCannotNavigateToCoopPage.md +4 -0
  88. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/CoepCorpNotSameOrigin.md +8 -0
  89. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/CoepCorpNotSameOriginAfterDefaultedToSameOriginByCoep.md +18 -0
  90. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/CoepCorpNotSameSite.md +7 -0
  91. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/CoepFrameResourceNeedsCoepHeader.md +10 -0
  92. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/CompatibilityModeQuirks.md +5 -0
  93. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/CookieAttributeValueExceedsMaxSize.md +5 -0
  94. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/LowTextContrast.md +5 -0
  95. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/SameSiteExcludeContextDowngradeRead.md +8 -0
  96. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/SameSiteExcludeContextDowngradeSet.md +8 -0
  97. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/SameSiteExcludeNavigationContextDowngrade.md +8 -0
  98. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/SameSiteInvalidSameParty.md +8 -0
  99. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/SameSiteNoneInsecureErrorRead.md +8 -0
  100. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/SameSiteNoneInsecureErrorSet.md +8 -0
  101. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/SameSiteNoneInsecureWarnRead.md +8 -0
  102. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/SameSiteNoneInsecureWarnSet.md +8 -0
  103. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/SameSiteSamePartyCrossPartyContextSet.md +10 -0
  104. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/SameSiteUnspecifiedLaxAllowUnsafeRead.md +9 -0
  105. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/SameSiteUnspecifiedLaxAllowUnsafeSet.md +9 -0
  106. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/SameSiteWarnCrossDowngradeRead.md +8 -0
  107. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/SameSiteWarnCrossDowngradeSet.md +8 -0
  108. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/SameSiteWarnStrictLaxDowngradeStrict.md +8 -0
  109. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arInsecureContext.md +7 -0
  110. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arInvalidInfoHeader.md +5 -0
  111. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arInvalidRegisterOsSourceHeader.md +5 -0
  112. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arInvalidRegisterOsTriggerHeader.md +5 -0
  113. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arInvalidRegisterSourceHeader.md +5 -0
  114. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arInvalidRegisterTriggerHeader.md +5 -0
  115. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arNavigationRegistrationUniqueScopeAlreadySet.md +5 -0
  116. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arNavigationRegistrationWithoutTransientUserActivation.md +6 -0
  117. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arNoRegisterOsSourceHeader.md +5 -0
  118. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arNoRegisterOsTriggerHeader.md +5 -0
  119. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arNoRegisterSourceHeader.md +5 -0
  120. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arNoRegisterTriggerHeader.md +5 -0
  121. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arNoWebOrOsSupport.md +4 -0
  122. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arOsSourceIgnored.md +18 -0
  123. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arOsTriggerIgnored.md +19 -0
  124. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arPermissionPolicyDisabled.md +8 -0
  125. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arSourceAndTriggerHeaders.md +9 -0
  126. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arSourceIgnored.md +13 -0
  127. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arTriggerIgnored.md +12 -0
  128. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arUntrustworthyReportingOrigin.md +10 -0
  129. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/arWebAndOsHeaders.md +11 -0
  130. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/bounceTrackingMitigations.md +3 -0
  131. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/clientHintMetaTagAllowListInvalidOrigin.md +4 -0
  132. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/clientHintMetaTagModifiedHTML.md +4 -0
  133. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cookieCrossSiteRedirectDowngrade.md +12 -0
  134. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cookieExcludeBlockedWithinRelatedWebsiteSet.md +4 -0
  135. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cookieExcludeDomainNonAscii.md +11 -0
  136. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cookieExcludePortMismatch.md +8 -0
  137. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cookieExcludeSchemeMismatch.md +7 -0
  138. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cookieExcludeThirdPartyPhaseoutRead.md +6 -0
  139. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cookieExcludeThirdPartyPhaseoutSet.md +6 -0
  140. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cookieWarnDomainNonAscii.md +11 -0
  141. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cookieWarnMetadataGrantRead.md +4 -0
  142. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cookieWarnMetadataGrantSet.md +4 -0
  143. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cookieWarnThirdPartyPhaseoutRead.md +6 -0
  144. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cookieWarnThirdPartyPhaseoutSet.md +6 -0
  145. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsAllowCredentialsRequired.md +6 -0
  146. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsDisabledScheme.md +7 -0
  147. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsDisallowedByMode.md +7 -0
  148. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsHeaderDisallowedByPreflightResponse.md +5 -0
  149. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsInsecurePrivateNetwork.md +10 -0
  150. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsInvalidHeaderValues.md +7 -0
  151. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsLocalNetworkAccessPermissionDenied.md +19 -0
  152. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsMethodDisallowedByPreflightResponse.md +5 -0
  153. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsNoCorsRedirectModeNotFollow.md +5 -0
  154. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsOriginMismatch.md +6 -0
  155. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsPreflightAllowPrivateNetworkError.md +10 -0
  156. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsPreflightResponseInvalid.md +5 -0
  157. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsPrivateNetworkPermissionDenied.md +10 -0
  158. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsRedirectContainsCredentials.md +5 -0
  159. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/corsWildcardOriginNotAllowed.md +8 -0
  160. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cspEvalViolation.md +9 -0
  161. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cspInlineViolation.md +10 -0
  162. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cspTrustedTypesPolicyViolation.md +5 -0
  163. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cspTrustedTypesSinkViolation.md +8 -0
  164. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/cspURLViolation.md +10 -0
  165. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/deprecation.md +3 -0
  166. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestAccountsHttpNotFound.md +1 -0
  167. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestAccountsInvalidResponse.md +1 -0
  168. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestAccountsNoResponse.md +1 -0
  169. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestApprovalDeclined.md +1 -0
  170. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestCanceled.md +1 -0
  171. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestClientMetadataHttpNotFound.md +1 -0
  172. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestClientMetadataInvalidResponse.md +1 -0
  173. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestClientMetadataNoResponse.md +1 -0
  174. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestErrorFetchingSignin.md +1 -0
  175. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestErrorIdToken.md +1 -0
  176. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestIdTokenHttpNotFound.md +1 -0
  177. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestIdTokenInvalidRequest.md +1 -0
  178. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestIdTokenInvalidResponse.md +1 -0
  179. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestIdTokenNoResponse.md +1 -0
  180. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestInvalidSigninResponse.md +1 -0
  181. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestManifestHttpNotFound.md +1 -0
  182. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestManifestInvalidResponse.md +1 -0
  183. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestManifestNoResponse.md +1 -0
  184. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthRequestTooManyRequests.md +1 -0
  185. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestInvalidAccountsResponse.md +1 -0
  186. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestInvalidConfigOrWellKnown.md +1 -0
  187. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoAccountSharingPermission.md +1 -0
  188. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoApiPermission.md +1 -0
  189. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNoReturningUserFromFetchedAccounts.md +1 -0
  190. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotIframe.md +1 -0
  191. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotPotentiallyTrustworthy.md +1 -0
  192. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotSameOrigin.md +1 -0
  193. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/federatedAuthUserInfoRequestNotSignedInWithIdp.md +1 -0
  194. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/fetchingPartitionedBlobURL.md +7 -0
  195. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/genericFormAriaLabelledByToNonExistingId.md +8 -0
  196. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/genericFormAutocompleteAttributeEmptyError.md +5 -0
  197. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/genericFormDuplicateIdForInputError.md +5 -0
  198. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/genericFormEmptyIdAndNameAttributesForInputError.md +5 -0
  199. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/genericFormInputAssignedAutocompleteValueToIdOrNameAttributeError.md +5 -0
  200. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/genericFormInputHasWrongButWellIntendedAutocompleteValueError.md +5 -0
  201. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/genericFormInputWithNoLabelError.md +5 -0
  202. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/genericFormLabelForMatchesNonExistingIdError.md +5 -0
  203. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/genericFormLabelForNameError.md +5 -0
  204. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/genericFormLabelHasNeitherForNorNestedInput.md +5 -0
  205. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/genericResponseWasBlockedByORB.md +4 -0
  206. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/heavyAd.md +10 -0
  207. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/mixedContent.md +5 -0
  208. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/navigatingPartitionedBlobURL.md +5 -0
  209. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/placeholderDescriptionForInvisibleIssues.md +3 -0
  210. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/propertyRuleInvalidNameIssue.md +3 -0
  211. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/propertyRuleIssue.md +7 -0
  212. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/selectElementAccessibilityDisallowedOptGroupChild.md +7 -0
  213. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/selectElementAccessibilityDisallowedSelectChild.md +7 -0
  214. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/selectElementAccessibilityInteractiveContentAttributesSelectDescendant.md +3 -0
  215. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/selectElementAccessibilityInteractiveContentLegendChild.md +3 -0
  216. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/selectElementAccessibilityInteractiveContentOptionChild.md +3 -0
  217. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/selectElementAccessibilityNonPhrasingContentOptionChild.md +3 -0
  218. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedArrayBuffer.md +7 -0
  219. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryUseErrorCrossOriginNoCorsRequest.md +1 -0
  220. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryUseErrorDictionaryLoadFailure.md +3 -0
  221. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryUseErrorMatchingDictionaryNotUsed.md +3 -0
  222. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryUseErrorUnexpectedContentDictionaryHeader.md +1 -0
  223. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorCossOriginNoCorsRequest.md +1 -0
  224. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorDisallowedBySettings.md +1 -0
  225. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorExpiredResponse.md +3 -0
  226. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorFeatureDisabled.md +3 -0
  227. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorInsufficientResources.md +1 -0
  228. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorInvalidMatchField.md +1 -0
  229. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorInvalidStructuredHeader.md +1 -0
  230. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorInvalidTTLField.md +1 -0
  231. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorNavigationRequest.md +3 -0
  232. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorNoMatchField.md +1 -0
  233. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonIntegerTTLField.md +1 -0
  234. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonListMatchDestField.md +1 -0
  235. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonSecureContext.md +3 -0
  236. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonStringIdField.md +1 -0
  237. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonStringInMatchDestList.md +1 -0
  238. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonStringMatchField.md +1 -0
  239. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonTokenTypeField.md +1 -0
  240. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorRequestAborted.md +1 -0
  241. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorShuttingDown.md +1 -0
  242. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorTooLongIdField.md +3 -0
  243. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorUnsupportedType.md +3 -0
  244. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriInvalidSignatureHeader.md +14 -0
  245. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriInvalidSignatureInputHeader.md +15 -0
  246. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriMissingSignatureHeader.md +8 -0
  247. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriMissingSignatureInputHeader.md +7 -0
  248. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriSignatureHeaderValueIsIncorrectLength.md +11 -0
  249. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriSignatureHeaderValueIsNotByteSequence.md +14 -0
  250. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriSignatureHeaderValueIsParameterized.md +15 -0
  251. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidComponentName.md +8 -0
  252. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidComponentType.md +13 -0
  253. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidDerivedComponentParameter.md +4 -0
  254. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidHeaderComponentParameter.md +5 -0
  255. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriSignatureInputHeaderInvalidParameter.md +11 -0
  256. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriSignatureInputHeaderKeyIdLength.md +12 -0
  257. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriSignatureInputHeaderMissingLabel.md +6 -0
  258. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriSignatureInputHeaderMissingRequiredParameters.md +8 -0
  259. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriSignatureInputHeaderValueMissingComponents.md +11 -0
  260. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriSignatureInputHeaderValueNotInnerList.md +11 -0
  261. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriValidationFailedIntegrityMismatch.md +10 -0
  262. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriValidationFailedInvalidLength.md +5 -0
  263. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriValidationFailedSignatureExpired.md +6 -0
  264. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/sriValidationFailedSignatureMismatch.md +11 -0
  265. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/stylesheetLateImport.md +4 -0
  266. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/stylesheetRequestFailed.md +3 -0
  267. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/summaryElementAccessibilityInteractiveContentSummaryDescendant.md +3 -0
  268. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/unencodedDigestIncorrectDigestLength.md +12 -0
  269. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/unencodedDigestIncorrectDigestType.md +17 -0
  270. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/unencodedDigestMalformedDictionary.md +14 -0
  271. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/descriptions/unencodedDigestUnknownAlgorithm.md +15 -0
  272. package/build/node_modules/chrome-devtools-frontend/front_end/models/issues_manager/issues_manager.js +35 -0
  273. package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/Processor.js +4 -4
  274. package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/Styles.js +1 -1
  275. package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/SamplesHandler.js +56 -6
  276. package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/ScriptsHandler.js +24 -0
  277. package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/types/TraceEvents.js +1 -0
  278. package/build/node_modules/chrome-devtools-frontend/front_end/models/workspace/IgnoreListManager.js +40 -47
  279. package/build/node_modules/chrome-devtools-frontend/front_end/models/workspace/WorkspaceImpl.js +5 -8
  280. package/build/node_modules/chrome-devtools-frontend/front_end/models/workspace/workspace-meta.js +34 -0
  281. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/i18n/LICENSE +202 -0
  282. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/i18n/i18n-impl.js +46 -0
  283. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/i18n/i18n.js +6 -0
  284. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/i18n/localized-string-set.js +122 -0
  285. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/intl-messageformat/LICENSE +33 -0
  286. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/intl-messageformat/intl-messageformat.js +5 -0
  287. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/intl-messageformat/package/index.js +13 -0
  288. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/intl-messageformat/package/intl-messageformat.esm.js +1725 -0
  289. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/intl-messageformat/package/intl-messageformat.iife.js +1840 -0
  290. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/intl-messageformat/package/lib/index.js +10 -0
  291. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/intl-messageformat/package/lib/src/core.js +233 -0
  292. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/intl-messageformat/package/lib/src/error.js +48 -0
  293. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/intl-messageformat/package/lib/src/formatters.js +177 -0
  294. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/intl-messageformat/package/src/core.js +236 -0
  295. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/intl-messageformat/package/src/error.js +51 -0
  296. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/intl-messageformat/package/src/formatters.js +182 -0
  297. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/LICENSE +39 -0
  298. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/marked.js +2 -0
  299. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/bin/main.js +255 -0
  300. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/bin/marked.js +11 -0
  301. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/lib/marked.esm.js +2695 -0
  302. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/lib/marked.js +2233 -0
  303. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/lib/marked.umd.js +2719 -0
  304. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/src/Lexer.js +453 -0
  305. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/src/Parser.js +233 -0
  306. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/src/Renderer.js +137 -0
  307. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/src/Slugger.js +46 -0
  308. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/src/TextRenderer.js +34 -0
  309. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/src/Tokenizer.js +683 -0
  310. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/src/defaults.js +27 -0
  311. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/src/helpers.js +240 -0
  312. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/src/marked.js +318 -0
  313. package/build/node_modules/chrome-devtools-frontend/front_end/third_party/marked/package/src/rules.js +243 -0
  314. package/build/node_modules/chrome-devtools-frontend/mcp/mcp.js +7 -0
  315. package/build/src/DevToolsConnectionAdapter.js +1 -2
  316. package/build/src/DevtoolsUtils.js +20 -0
  317. package/build/src/McpContext.js +9 -2
  318. package/build/src/McpResponse.js +38 -2
  319. package/build/src/PageCollector.js +131 -16
  320. package/build/src/features.js +14 -0
  321. package/build/src/formatters/consoleFormatter.js +3 -0
  322. package/build/src/issue-descriptions.js +35 -0
  323. package/build/src/main.js +6 -1
  324. package/build/src/third_party/THIRD_PARTY_NOTICES +3 -3
  325. package/build/src/third_party/index.js +726 -675
  326. package/build/src/tools/console.js +5 -0
  327. package/package.json +6 -6
  328. package/build/node_modules/chrome-devtools-frontend/front_end/core/protocol_client/NodeURL.js +0 -31
@@ -3,6 +3,7 @@
3
3
  // found in the LICENSE file.
4
4
  import * as Common from '../../core/common/common.js';
5
5
  import * as Platform from '../../core/platform/platform.js';
6
+ import * as Root from '../../core/root/root.js';
6
7
  import * as SDK from '../../core/sdk/sdk.js';
7
8
  // eslint-disable-next-line @devtools/es-modules-import
8
9
  import * as StackTraceImpl from '../stack_trace/stack_trace_impl.js';
@@ -13,19 +14,23 @@ import { DefaultScriptMapping } from './DefaultScriptMapping.js';
13
14
  import { LiveLocationWithPool } from './LiveLocation.js';
14
15
  import { NetworkProject } from './NetworkProject.js';
15
16
  import { ResourceScriptMapping } from './ResourceScriptMapping.js';
16
- let debuggerWorkspaceBindingInstance;
17
17
  export class DebuggerWorkspaceBinding {
18
18
  resourceMapping;
19
19
  #debuggerModelToData;
20
20
  #liveLocationPromises;
21
21
  pluginManager;
22
- constructor(resourceMapping, targetManager, ignoreListManager) {
22
+ ignoreListManager;
23
+ workspace;
24
+ constructor(resourceMapping, targetManager, ignoreListManager, workspace) {
23
25
  this.resourceMapping = resourceMapping;
26
+ this.resourceMapping.debuggerWorkspaceBinding = this;
27
+ this.ignoreListManager = ignoreListManager;
28
+ this.workspace = workspace;
24
29
  this.#debuggerModelToData = new Map();
25
30
  targetManager.addModelListener(SDK.DebuggerModel.DebuggerModel, SDK.DebuggerModel.Events.GlobalObjectCleared, this.globalObjectCleared, this);
26
31
  targetManager.addModelListener(SDK.DebuggerModel.DebuggerModel, SDK.DebuggerModel.Events.DebuggerResumed, this.debuggerResumed, this);
27
32
  targetManager.observeModels(SDK.DebuggerModel.DebuggerModel, this);
28
- ignoreListManager.addEventListener("IGNORED_SCRIPT_RANGES_UPDATED" /* Workspace.IgnoreListManager.Events.IGNORED_SCRIPT_RANGES_UPDATED */, event => this.updateLocations(event.data));
33
+ this.ignoreListManager.addEventListener("IGNORED_SCRIPT_RANGES_UPDATED" /* Workspace.IgnoreListManager.Events.IGNORED_SCRIPT_RANGES_UPDATED */, event => this.updateLocations(event.data));
29
34
  this.#liveLocationPromises = new Set();
30
35
  this.pluginManager = new DebuggerLanguagePluginManager(targetManager, resourceMapping.workspace, this);
31
36
  }
@@ -34,19 +39,18 @@ export class DebuggerWorkspaceBinding {
34
39
  modelData.compilerMapping.setFunctionRanges(uiSourceCode, ranges);
35
40
  }
36
41
  }
37
- static instance(opts = { forceNew: null, resourceMapping: null, targetManager: null, ignoreListManager: null }) {
38
- const { forceNew, resourceMapping, targetManager, ignoreListManager } = opts;
39
- if (!debuggerWorkspaceBindingInstance || forceNew) {
40
- if (!resourceMapping || !targetManager || !ignoreListManager) {
42
+ static instance(opts = { forceNew: null, resourceMapping: null, targetManager: null, ignoreListManager: null, workspace: null }) {
43
+ const { forceNew, resourceMapping, targetManager, ignoreListManager, workspace } = opts;
44
+ if (forceNew) {
45
+ if (!resourceMapping || !targetManager || !ignoreListManager || !workspace) {
41
46
  throw new Error(`Unable to create DebuggerWorkspaceBinding: resourceMapping, targetManager and IgnoreLIstManager must be provided: ${new Error().stack}`);
42
47
  }
43
- debuggerWorkspaceBindingInstance =
44
- new DebuggerWorkspaceBinding(resourceMapping, targetManager, ignoreListManager);
48
+ Root.DevToolsContext.globalInstance().set(DebuggerWorkspaceBinding, new DebuggerWorkspaceBinding(resourceMapping, targetManager, ignoreListManager, workspace));
45
49
  }
46
- return debuggerWorkspaceBindingInstance;
50
+ return Root.DevToolsContext.globalInstance().get(DebuggerWorkspaceBinding);
47
51
  }
48
52
  static removeInstance() {
49
- debuggerWorkspaceBindingInstance = undefined;
53
+ Root.DevToolsContext.globalInstance().delete(DebuggerWorkspaceBinding);
50
54
  }
51
55
  async computeAutoStepRanges(mode, callFrame) {
52
56
  function contained(location, range) {
@@ -199,11 +203,10 @@ export class DebuggerWorkspaceBinding {
199
203
  }
200
204
  waitForUISourceCodeAdded(url, target) {
201
205
  return new Promise(resolve => {
202
- const workspace = Workspace.Workspace.WorkspaceImpl.instance();
203
- const descriptor = workspace.addEventListener(Workspace.Workspace.Events.UISourceCodeAdded, event => {
206
+ const descriptor = this.workspace.addEventListener(Workspace.Workspace.Events.UISourceCodeAdded, event => {
204
207
  const uiSourceCode = event.data;
205
208
  if (uiSourceCode.url() === url && NetworkProject.targetForUISourceCode(uiSourceCode) === target) {
206
- workspace.removeEventListener(Workspace.Workspace.Events.UISourceCodeAdded, descriptor.listener);
209
+ this.workspace.removeEventListener(Workspace.Workspace.Events.UISourceCodeAdded, descriptor.listener);
207
210
  resolve(uiSourceCode);
208
211
  }
209
212
  });
@@ -6,8 +6,6 @@ import * as SDK from '../../core/sdk/sdk.js';
6
6
  import * as TextUtils from '../text_utils/text_utils.js';
7
7
  import * as Workspace from '../workspace/workspace.js';
8
8
  import { ContentProviderBasedProject } from './ContentProviderBasedProject.js';
9
- import { CSSWorkspaceBinding } from './CSSWorkspaceBinding.js';
10
- import { DebuggerWorkspaceBinding } from './DebuggerWorkspaceBinding.js';
11
9
  import { NetworkProject } from './NetworkProject.js';
12
10
  import { resourceMetadata } from './ResourceUtils.js';
13
11
  const styleSheetRangeMap = new WeakMap();
@@ -22,12 +20,40 @@ function computeStyleSheetRange(header) {
22
20
  export class ResourceMapping {
23
21
  workspace;
24
22
  #modelToInfo = new Map();
23
+ #debuggerWorkspaceBinding = null;
24
+ #cssWorkspaceBinding = null;
25
25
  constructor(targetManager, workspace) {
26
26
  this.workspace = workspace;
27
27
  targetManager.observeModels(SDK.ResourceTreeModel.ResourceTreeModel, this);
28
28
  }
29
+ get debuggerWorkspaceBinding() {
30
+ // TODO(crbug.com/458180550): Throw when this.#debuggerWorkspaceBinding is null and never return null.
31
+ // The only reason we don't throw and return an instance unconditionally
32
+ // is that unit tests often don't set-up both the *WorkspaceBindings.
33
+ return this.#debuggerWorkspaceBinding;
34
+ }
35
+ /* {@link DebuggerWorkspaceBinding} and ResourceMapping form a cycle so we can't wire it up at ctor time. */
36
+ set debuggerWorkspaceBinding(debuggerWorkspaceBinding) {
37
+ if (this.#debuggerWorkspaceBinding) {
38
+ throw new Error('DebuggerWorkspaceBinding already set');
39
+ }
40
+ this.#debuggerWorkspaceBinding = debuggerWorkspaceBinding;
41
+ }
42
+ get cssWorkspaceBinding() {
43
+ // TODO(crbug.com/458180550): Throw when this.#cssWorkspaceBinding is null and never return null.
44
+ // The only reason we don't throw and return an instance unconditionally
45
+ // is that unit tests often don't set-up both the *WorkspaceBindings.
46
+ return this.#cssWorkspaceBinding;
47
+ }
48
+ /* {@link CSSWorkspaceBinding} and ResourceMapping form a cycle so we can't wire it up at ctor time. */
49
+ set cssWorkspaceBinding(cssWorkspaceBinding) {
50
+ if (this.#cssWorkspaceBinding) {
51
+ throw new Error('CSSWorkspaceBinding already set');
52
+ }
53
+ this.#cssWorkspaceBinding = cssWorkspaceBinding;
54
+ }
29
55
  modelAdded(resourceTreeModel) {
30
- const info = new ModelInfo(this.workspace, resourceTreeModel);
56
+ const info = new ModelInfo(this, resourceTreeModel);
31
57
  this.#modelToInfo.set(resourceTreeModel, info);
32
58
  }
33
59
  modelRemoved(resourceTreeModel) {
@@ -225,9 +251,11 @@ class ModelInfo {
225
251
  #bindings = new Map();
226
252
  #cssModel;
227
253
  #eventListeners;
228
- constructor(workspace, resourceTreeModel) {
254
+ resourceMapping;
255
+ constructor(resourceMapping, resourceTreeModel) {
229
256
  const target = resourceTreeModel.target();
230
- this.project = new ContentProviderBasedProject(workspace, 'resources:' + target.id(), Workspace.Workspace.projectTypes.Network, '', false /* isServiceProject */);
257
+ this.resourceMapping = resourceMapping;
258
+ this.project = new ContentProviderBasedProject(resourceMapping.workspace, 'resources:' + target.id(), Workspace.Workspace.projectTypes.Network, '', false /* isServiceProject */);
231
259
  NetworkProject.setTargetForProject(this.project, target);
232
260
  const cssModel = target.model(SDK.CSSModel.CSSModel);
233
261
  console.assert(Boolean(cssModel));
@@ -293,7 +321,7 @@ class ModelInfo {
293
321
  }
294
322
  let binding = this.#bindings.get(resource.url);
295
323
  if (!binding) {
296
- binding = new Binding(this.project, resource);
324
+ binding = new Binding(this, resource);
297
325
  this.#bindings.set(resource.url, binding);
298
326
  }
299
327
  else {
@@ -347,9 +375,13 @@ class Binding {
347
375
  #project;
348
376
  #uiSourceCode;
349
377
  #edits = [];
350
- constructor(project, resource) {
378
+ #debuggerWorkspaceBinding;
379
+ #cssWorkspaceBinding;
380
+ constructor(modelInfo, resource) {
351
381
  this.resources = new Set([resource]);
352
- this.#project = project;
382
+ this.#project = modelInfo.project;
383
+ this.#debuggerWorkspaceBinding = modelInfo.resourceMapping.debuggerWorkspaceBinding;
384
+ this.#cssWorkspaceBinding = modelInfo.resourceMapping.cssWorkspaceBinding;
353
385
  this.#uiSourceCode = this.#project.createUISourceCode(resource.url, resource.contentType());
354
386
  boundUISourceCodes.add(this.#uiSourceCode);
355
387
  if (resource.frameId) {
@@ -357,8 +389,8 @@ class Binding {
357
389
  }
358
390
  this.#project.addUISourceCodeWithProvider(this.#uiSourceCode, this, resourceMetadata(resource), resource.mimeType);
359
391
  void Promise.all([
360
- ...this.inlineScripts().map(script => DebuggerWorkspaceBinding.instance().updateLocations(script)),
361
- ...this.inlineStyles().map(style => CSSWorkspaceBinding.instance().updateLocations(style)),
392
+ ...this.inlineScripts().map(script => this.#debuggerWorkspaceBinding?.updateLocations(script)),
393
+ ...this.inlineStyles().map(style => this.#cssWorkspaceBinding?.updateLocations(style)),
362
394
  ]);
363
395
  }
364
396
  inlineStyles() {
@@ -421,7 +453,7 @@ class Binding {
421
453
  continue;
422
454
  }
423
455
  scriptRangeMap.set(script, range.rebaseAfterTextEdit(oldRange, newRange));
424
- updatePromises.push(DebuggerWorkspaceBinding.instance().updateLocations(script));
456
+ updatePromises.push(this.#debuggerWorkspaceBinding?.updateLocations(script));
425
457
  }
426
458
  for (const style of styles) {
427
459
  const range = styleSheetRangeMap.get(style) ?? computeStyleSheetRange(style);
@@ -429,7 +461,7 @@ class Binding {
429
461
  continue;
430
462
  }
431
463
  styleSheetRangeMap.set(style, range.rebaseAfterTextEdit(oldRange, newRange));
432
- updatePromises.push(CSSWorkspaceBinding.instance().updateLocations(style));
464
+ updatePromises.push(this.#cssWorkspaceBinding?.updateLocations(style));
433
465
  }
434
466
  await Promise.all(updatePromises);
435
467
  }
@@ -450,8 +482,8 @@ class Binding {
450
482
  dispose() {
451
483
  this.#project.removeUISourceCode(this.#uiSourceCode.url());
452
484
  void Promise.all([
453
- ...this.inlineScripts().map(script => DebuggerWorkspaceBinding.instance().updateLocations(script)),
454
- ...this.inlineStyles().map(style => CSSWorkspaceBinding.instance().updateLocations(style)),
485
+ ...this.inlineScripts().map(script => this.#debuggerWorkspaceBinding?.updateLocations(script)),
486
+ ...this.inlineStyles().map(style => this.#cssWorkspaceBinding?.updateLocations(style)),
455
487
  ]);
456
488
  }
457
489
  firstResource() {
@@ -0,0 +1,202 @@
1
+ // Copyright 2021 The Chromium Authors
2
+ // Use of this source code is governed by a BSD-style license that can be
3
+ // found in the LICENSE file.
4
+ import { Issue } from './Issue.js';
5
+ function getIssueCode(details) {
6
+ switch (details.violationType) {
7
+ case "PermissionPolicyDisabled" /* Protocol.Audits.AttributionReportingIssueType.PermissionPolicyDisabled */:
8
+ return "AttributionReportingIssue::PermissionPolicyDisabled" /* IssueCode.PERMISSION_POLICY_DISABLED */;
9
+ case "UntrustworthyReportingOrigin" /* Protocol.Audits.AttributionReportingIssueType.UntrustworthyReportingOrigin */:
10
+ return "AttributionReportingIssue::UntrustworthyReportingOrigin" /* IssueCode.UNTRUSTWORTHY_REPORTING_ORIGIN */;
11
+ case "InsecureContext" /* Protocol.Audits.AttributionReportingIssueType.InsecureContext */:
12
+ return "AttributionReportingIssue::InsecureContext" /* IssueCode.INSECURE_CONTEXT */;
13
+ case "InvalidHeader" /* Protocol.Audits.AttributionReportingIssueType.InvalidHeader */:
14
+ return "AttributionReportingIssue::InvalidRegisterSourceHeader" /* IssueCode.INVALID_REGISTER_SOURCE_HEADER */;
15
+ case "InvalidRegisterTriggerHeader" /* Protocol.Audits.AttributionReportingIssueType.InvalidRegisterTriggerHeader */:
16
+ return "AttributionReportingIssue::InvalidRegisterTriggerHeader" /* IssueCode.INVALID_REGISTER_TRIGGER_HEADER */;
17
+ case "SourceAndTriggerHeaders" /* Protocol.Audits.AttributionReportingIssueType.SourceAndTriggerHeaders */:
18
+ return "AttributionReportingIssue::SourceAndTriggerHeaders" /* IssueCode.SOURCE_AND_TRIGGER_HEADERS */;
19
+ case "SourceIgnored" /* Protocol.Audits.AttributionReportingIssueType.SourceIgnored */:
20
+ return "AttributionReportingIssue::SourceIgnored" /* IssueCode.SOURCE_IGNORED */;
21
+ case "TriggerIgnored" /* Protocol.Audits.AttributionReportingIssueType.TriggerIgnored */:
22
+ return "AttributionReportingIssue::TriggerIgnored" /* IssueCode.TRIGGER_IGNORED */;
23
+ case "OsSourceIgnored" /* Protocol.Audits.AttributionReportingIssueType.OsSourceIgnored */:
24
+ return "AttributionReportingIssue::OsSourceIgnored" /* IssueCode.OS_SOURCE_IGNORED */;
25
+ case "OsTriggerIgnored" /* Protocol.Audits.AttributionReportingIssueType.OsTriggerIgnored */:
26
+ return "AttributionReportingIssue::OsTriggerIgnored" /* IssueCode.OS_TRIGGER_IGNORED */;
27
+ case "InvalidRegisterOsSourceHeader" /* Protocol.Audits.AttributionReportingIssueType.InvalidRegisterOsSourceHeader */:
28
+ return "AttributionReportingIssue::InvalidRegisterOsSourceHeader" /* IssueCode.INVALID_REGISTER_OS_SOURCE_HEADER */;
29
+ case "InvalidRegisterOsTriggerHeader" /* Protocol.Audits.AttributionReportingIssueType.InvalidRegisterOsTriggerHeader */:
30
+ return "AttributionReportingIssue::InvalidRegisterOsTriggerHeader" /* IssueCode.INVALID_REGISTER_OS_TRIGGER_HEADER */;
31
+ case "WebAndOsHeaders" /* Protocol.Audits.AttributionReportingIssueType.WebAndOsHeaders */:
32
+ return "AttributionReportingIssue::WebAndOsHeaders" /* IssueCode.WEB_AND_OS_HEADERS */;
33
+ case "NoWebOrOsSupport" /* Protocol.Audits.AttributionReportingIssueType.NoWebOrOsSupport */:
34
+ return "AttributionReportingIssue::NoWebOrOsSupport" /* IssueCode.NO_WEB_OR_OS_SUPPORT */;
35
+ case "NavigationRegistrationWithoutTransientUserActivation" /* Protocol.Audits.AttributionReportingIssueType.NavigationRegistrationWithoutTransientUserActivation */:
36
+ return "AttributionReportingIssue::NavigationRegistrationWithoutTransientUserActivation" /* IssueCode.NAVIGATION_REGISTRATION_WITHOUT_TRANSIENT_USER_ACTIVATION */;
37
+ case "InvalidInfoHeader" /* Protocol.Audits.AttributionReportingIssueType.InvalidInfoHeader */:
38
+ return "AttributionReportingIssue::InvalidInfoHeader" /* IssueCode.INVALID_INFO_HEADER */;
39
+ case "NoRegisterSourceHeader" /* Protocol.Audits.AttributionReportingIssueType.NoRegisterSourceHeader */:
40
+ return "AttributionReportingIssue::NoRegisterSourceHeader" /* IssueCode.NO_REGISTER_SOURCE_HEADER */;
41
+ case "NoRegisterTriggerHeader" /* Protocol.Audits.AttributionReportingIssueType.NoRegisterTriggerHeader */:
42
+ return "AttributionReportingIssue::NoRegisterTriggerHeader" /* IssueCode.NO_REGISTER_TRIGGER_HEADER */;
43
+ case "NoRegisterOsSourceHeader" /* Protocol.Audits.AttributionReportingIssueType.NoRegisterOsSourceHeader */:
44
+ return "AttributionReportingIssue::NoRegisterOsSourceHeader" /* IssueCode.NO_REGISTER_OS_SOURCE_HEADER */;
45
+ case "NoRegisterOsTriggerHeader" /* Protocol.Audits.AttributionReportingIssueType.NoRegisterOsTriggerHeader */:
46
+ return "AttributionReportingIssue::NoRegisterOsTriggerHeader" /* IssueCode.NO_REGISTER_OS_TRIGGER_HEADER */;
47
+ case "NavigationRegistrationUniqueScopeAlreadySet" /* Protocol.Audits.AttributionReportingIssueType.NavigationRegistrationUniqueScopeAlreadySet */:
48
+ return "AttributionReportingIssue::NavigationRegistrationUniqueScopeAlreadySet" /* IssueCode.NAVIGATION_REGISTRATION_UNIQUE_SCOPE_ALREADY_SET */;
49
+ default:
50
+ return "AttributionReportingIssue::Unknown" /* IssueCode.UNKNOWN */;
51
+ }
52
+ }
53
+ const structuredHeaderLink = {
54
+ link: 'https://tools.ietf.org/id/draft-ietf-httpbis-header-structure-15.html#rfc.section.4.2.2',
55
+ linkTitle: 'Structured Headers RFC',
56
+ };
57
+ export class AttributionReportingIssue extends Issue {
58
+ issueDetails;
59
+ constructor(issueDetails, issuesModel) {
60
+ super(getIssueCode(issueDetails), issuesModel);
61
+ this.issueDetails = issueDetails;
62
+ }
63
+ getCategory() {
64
+ return "AttributionReporting" /* IssueCategory.ATTRIBUTION_REPORTING */;
65
+ }
66
+ getHeaderValidatorLink(name) {
67
+ const url = new URL('https://wicg.github.io/attribution-reporting-api/validate-headers');
68
+ url.searchParams.set('header', name);
69
+ if (this.issueDetails.invalidParameter) {
70
+ url.searchParams.set('json', this.issueDetails.invalidParameter);
71
+ }
72
+ return {
73
+ link: url.toString(),
74
+ linkTitle: 'Header Validator',
75
+ };
76
+ }
77
+ getDescription() {
78
+ switch (this.code()) {
79
+ case "AttributionReportingIssue::PermissionPolicyDisabled" /* IssueCode.PERMISSION_POLICY_DISABLED */:
80
+ return {
81
+ file: 'arPermissionPolicyDisabled.md',
82
+ links: [],
83
+ };
84
+ case "AttributionReportingIssue::UntrustworthyReportingOrigin" /* IssueCode.UNTRUSTWORTHY_REPORTING_ORIGIN */:
85
+ return {
86
+ file: 'arUntrustworthyReportingOrigin.md',
87
+ links: [],
88
+ };
89
+ case "AttributionReportingIssue::InsecureContext" /* IssueCode.INSECURE_CONTEXT */:
90
+ return {
91
+ file: 'arInsecureContext.md',
92
+ links: [],
93
+ };
94
+ case "AttributionReportingIssue::InvalidRegisterSourceHeader" /* IssueCode.INVALID_REGISTER_SOURCE_HEADER */:
95
+ return {
96
+ file: 'arInvalidRegisterSourceHeader.md',
97
+ links: [this.getHeaderValidatorLink('source')],
98
+ };
99
+ case "AttributionReportingIssue::InvalidRegisterTriggerHeader" /* IssueCode.INVALID_REGISTER_TRIGGER_HEADER */:
100
+ return {
101
+ file: 'arInvalidRegisterTriggerHeader.md',
102
+ links: [this.getHeaderValidatorLink('trigger')],
103
+ };
104
+ case "AttributionReportingIssue::InvalidRegisterOsSourceHeader" /* IssueCode.INVALID_REGISTER_OS_SOURCE_HEADER */:
105
+ return {
106
+ file: 'arInvalidRegisterOsSourceHeader.md',
107
+ links: [this.getHeaderValidatorLink('os-source')],
108
+ };
109
+ case "AttributionReportingIssue::InvalidRegisterOsTriggerHeader" /* IssueCode.INVALID_REGISTER_OS_TRIGGER_HEADER */:
110
+ return {
111
+ file: 'arInvalidRegisterOsTriggerHeader.md',
112
+ links: [this.getHeaderValidatorLink('os-trigger')],
113
+ };
114
+ case "AttributionReportingIssue::SourceAndTriggerHeaders" /* IssueCode.SOURCE_AND_TRIGGER_HEADERS */:
115
+ return {
116
+ file: 'arSourceAndTriggerHeaders.md',
117
+ links: [],
118
+ };
119
+ case "AttributionReportingIssue::WebAndOsHeaders" /* IssueCode.WEB_AND_OS_HEADERS */:
120
+ return {
121
+ file: 'arWebAndOsHeaders.md',
122
+ links: [],
123
+ };
124
+ case "AttributionReportingIssue::SourceIgnored" /* IssueCode.SOURCE_IGNORED */:
125
+ return {
126
+ file: 'arSourceIgnored.md',
127
+ links: [structuredHeaderLink],
128
+ };
129
+ case "AttributionReportingIssue::TriggerIgnored" /* IssueCode.TRIGGER_IGNORED */:
130
+ return {
131
+ file: 'arTriggerIgnored.md',
132
+ links: [structuredHeaderLink],
133
+ };
134
+ case "AttributionReportingIssue::OsSourceIgnored" /* IssueCode.OS_SOURCE_IGNORED */:
135
+ return {
136
+ file: 'arOsSourceIgnored.md',
137
+ links: [structuredHeaderLink],
138
+ };
139
+ case "AttributionReportingIssue::OsTriggerIgnored" /* IssueCode.OS_TRIGGER_IGNORED */:
140
+ return {
141
+ file: 'arOsTriggerIgnored.md',
142
+ links: [structuredHeaderLink],
143
+ };
144
+ case "AttributionReportingIssue::NavigationRegistrationWithoutTransientUserActivation" /* IssueCode.NAVIGATION_REGISTRATION_WITHOUT_TRANSIENT_USER_ACTIVATION */:
145
+ return {
146
+ file: 'arNavigationRegistrationWithoutTransientUserActivation.md',
147
+ links: [],
148
+ };
149
+ case "AttributionReportingIssue::NoWebOrOsSupport" /* IssueCode.NO_WEB_OR_OS_SUPPORT */:
150
+ return {
151
+ file: 'arNoWebOrOsSupport.md',
152
+ links: [],
153
+ };
154
+ case "AttributionReportingIssue::InvalidInfoHeader" /* IssueCode.INVALID_INFO_HEADER */:
155
+ return {
156
+ file: 'arInvalidInfoHeader.md',
157
+ links: [],
158
+ };
159
+ case "AttributionReportingIssue::NoRegisterSourceHeader" /* IssueCode.NO_REGISTER_SOURCE_HEADER */:
160
+ return {
161
+ file: 'arNoRegisterSourceHeader.md',
162
+ links: [],
163
+ };
164
+ case "AttributionReportingIssue::NoRegisterTriggerHeader" /* IssueCode.NO_REGISTER_TRIGGER_HEADER */:
165
+ return {
166
+ file: 'arNoRegisterTriggerHeader.md',
167
+ links: [],
168
+ };
169
+ case "AttributionReportingIssue::NoRegisterOsSourceHeader" /* IssueCode.NO_REGISTER_OS_SOURCE_HEADER */:
170
+ return {
171
+ file: 'arNoRegisterOsSourceHeader.md',
172
+ links: [],
173
+ };
174
+ case "AttributionReportingIssue::NoRegisterOsTriggerHeader" /* IssueCode.NO_REGISTER_OS_TRIGGER_HEADER */:
175
+ return {
176
+ file: 'arNoRegisterOsTriggerHeader.md',
177
+ links: [],
178
+ };
179
+ case "AttributionReportingIssue::NavigationRegistrationUniqueScopeAlreadySet" /* IssueCode.NAVIGATION_REGISTRATION_UNIQUE_SCOPE_ALREADY_SET */:
180
+ return {
181
+ file: 'arNavigationRegistrationUniqueScopeAlreadySet.md',
182
+ links: [],
183
+ };
184
+ case "AttributionReportingIssue::Unknown" /* IssueCode.UNKNOWN */:
185
+ return null;
186
+ }
187
+ }
188
+ primaryKey() {
189
+ return JSON.stringify(this.issueDetails);
190
+ }
191
+ getKind() {
192
+ return "PageError" /* IssueKind.PAGE_ERROR */;
193
+ }
194
+ static fromInspectorIssue(issuesModel, inspectorIssue) {
195
+ const { attributionReportingIssueDetails } = inspectorIssue.details;
196
+ if (!attributionReportingIssueDetails) {
197
+ console.warn('Attribution Reporting issue without details received.');
198
+ return [];
199
+ }
200
+ return [new AttributionReportingIssue(attributionReportingIssueDetails, issuesModel)];
201
+ }
202
+ }
@@ -0,0 +1,57 @@
1
+ // Copyright 2023 The Chromium Authors
2
+ // Use of this source code is governed by a BSD-style license that can be
3
+ // found in the LICENSE file.
4
+ import * as i18n from '../../core/i18n/i18n.js';
5
+ import { Issue } from './Issue.js';
6
+ const UIStrings = {
7
+ /**
8
+ * @description Title for Bounce Tracking Mitigation explainer url link.
9
+ */
10
+ bounceTrackingMitigations: 'Bounce tracking mitigations',
11
+ };
12
+ const str_ = i18n.i18n.registerUIStrings('models/issues_manager/BounceTrackingIssue.ts', UIStrings);
13
+ const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
14
+ export class BounceTrackingIssue extends Issue {
15
+ #issueDetails;
16
+ constructor(issueDetails, issuesModel) {
17
+ super("BounceTrackingIssue" /* Protocol.Audits.InspectorIssueCode.BounceTrackingIssue */, issuesModel);
18
+ this.#issueDetails = issueDetails;
19
+ }
20
+ getCategory() {
21
+ return "Other" /* IssueCategory.OTHER */;
22
+ }
23
+ getDescription() {
24
+ return {
25
+ file: 'bounceTrackingMitigations.md',
26
+ links: [
27
+ {
28
+ link: 'https://privacycg.github.io/nav-tracking-mitigations/#bounce-tracking-mitigations',
29
+ linkTitle: i18nString(UIStrings.bounceTrackingMitigations),
30
+ },
31
+ ],
32
+ };
33
+ }
34
+ details() {
35
+ return this.#issueDetails;
36
+ }
37
+ getKind() {
38
+ return "BreakingChange" /* IssueKind.BREAKING_CHANGE */;
39
+ }
40
+ primaryKey() {
41
+ return JSON.stringify(this.#issueDetails);
42
+ }
43
+ trackingSites() {
44
+ if (this.#issueDetails.trackingSites) {
45
+ return this.#issueDetails.trackingSites;
46
+ }
47
+ return [];
48
+ }
49
+ static fromInspectorIssue(issuesModel, inspectorIssue) {
50
+ const details = inspectorIssue.details.bounceTrackingIssueDetails;
51
+ if (!details) {
52
+ console.warn('Bounce tracking issue without details received.');
53
+ return [];
54
+ }
55
+ return [new BounceTrackingIssue(details, issuesModel)];
56
+ }
57
+ }
@@ -0,0 +1,31 @@
1
+ import * as SDK from '../../core/sdk/sdk.js';
2
+ /**
3
+ * Responsible for asking autofill for current form issues. This currently happens when devtools is first open.
4
+ */
5
+ // TODO(crbug.com/1399414): Trigger check form issues when an element with an associated issue is editted in the issues panel.
6
+ let checkFormsIssuesTriggerInstance = null;
7
+ export class CheckFormsIssuesTrigger {
8
+ constructor() {
9
+ SDK.TargetManager.TargetManager.instance().addModelListener(SDK.ResourceTreeModel.ResourceTreeModel, SDK.ResourceTreeModel.Events.Load, this.#pageLoaded, this, { scoped: true });
10
+ for (const model of SDK.TargetManager.TargetManager.instance().models(SDK.ResourceTreeModel.ResourceTreeModel)) {
11
+ if (model.target().outermostTarget() !== model.target()) {
12
+ continue;
13
+ }
14
+ this.#checkFormsIssues(model);
15
+ }
16
+ }
17
+ static instance({ forceNew } = { forceNew: false }) {
18
+ if (!checkFormsIssuesTriggerInstance || forceNew) {
19
+ checkFormsIssuesTriggerInstance = new CheckFormsIssuesTrigger();
20
+ }
21
+ return checkFormsIssuesTriggerInstance;
22
+ }
23
+ // TODO(crbug.com/1399414): Handle response by dropping current issues in favor of new ones.
24
+ #checkFormsIssues(resourceTreeModel) {
25
+ void resourceTreeModel.target().auditsAgent().invoke_checkFormsIssues();
26
+ }
27
+ #pageLoaded(event) {
28
+ const { resourceTreeModel } = event.data;
29
+ this.#checkFormsIssues(resourceTreeModel);
30
+ }
31
+ }
@@ -0,0 +1,76 @@
1
+ // Copyright 2021 The Chromium Authors
2
+ // Use of this source code is governed by a BSD-style license that can be
3
+ // found in the LICENSE file.
4
+ import * as i18n from '../../core/i18n/i18n.js';
5
+ import { Issue } from './Issue.js';
6
+ import { resolveLazyDescription, } from './MarkdownIssueDescription.js';
7
+ const UIStrings = {
8
+ /**
9
+ * @description Title for Client Hint specification url link
10
+ */
11
+ clientHintsInfrastructure: 'Client Hints Infrastructure',
12
+ };
13
+ const str_ = i18n.i18n.registerUIStrings('models/issues_manager/ClientHintIssue.ts', UIStrings);
14
+ const i18nLazyString = i18n.i18n.getLazilyComputedLocalizedString.bind(undefined, str_);
15
+ export class ClientHintIssue extends Issue {
16
+ issueDetails;
17
+ constructor(issueDetails, issuesModel) {
18
+ super({
19
+ code: "ClientHintIssue" /* Protocol.Audits.InspectorIssueCode.ClientHintIssue */,
20
+ umaCode: ["ClientHintIssue" /* Protocol.Audits.InspectorIssueCode.ClientHintIssue */, issueDetails.clientHintIssueReason].join('::'),
21
+ }, issuesModel);
22
+ this.issueDetails = issueDetails;
23
+ }
24
+ getCategory() {
25
+ return "Other" /* IssueCategory.OTHER */;
26
+ }
27
+ details() {
28
+ return this.issueDetails;
29
+ }
30
+ getDescription() {
31
+ const description = issueDescriptions.get(this.issueDetails.clientHintIssueReason);
32
+ if (!description) {
33
+ return null;
34
+ }
35
+ return resolveLazyDescription(description);
36
+ }
37
+ sources() {
38
+ return [this.issueDetails.sourceCodeLocation];
39
+ }
40
+ primaryKey() {
41
+ return JSON.stringify(this.issueDetails);
42
+ }
43
+ getKind() {
44
+ return "BreakingChange" /* IssueKind.BREAKING_CHANGE */;
45
+ }
46
+ static fromInspectorIssue(issuesModel, inspectorIssue) {
47
+ const details = inspectorIssue.details.clientHintIssueDetails;
48
+ if (!details) {
49
+ console.warn('Client Hint issue without details received.');
50
+ return [];
51
+ }
52
+ return [new ClientHintIssue(details, issuesModel)];
53
+ }
54
+ }
55
+ const issueDescriptions = new Map([
56
+ [
57
+ "MetaTagAllowListInvalidOrigin" /* Protocol.Audits.ClientHintIssueReason.MetaTagAllowListInvalidOrigin */,
58
+ {
59
+ file: 'clientHintMetaTagAllowListInvalidOrigin.md',
60
+ links: [{
61
+ link: 'https://wicg.github.io/client-hints-infrastructure/',
62
+ linkTitle: i18nLazyString(UIStrings.clientHintsInfrastructure),
63
+ }],
64
+ },
65
+ ],
66
+ [
67
+ "MetaTagModifiedHTML" /* Protocol.Audits.ClientHintIssueReason.MetaTagModifiedHTML */,
68
+ {
69
+ file: 'clientHintMetaTagModifiedHTML.md',
70
+ links: [{
71
+ link: 'https://wicg.github.io/client-hints-infrastructure/',
72
+ linkTitle: i18nLazyString(UIStrings.clientHintsInfrastructure),
73
+ }],
74
+ },
75
+ ],
76
+ ]);