@nimbus21.ai/chrome-devtools-mcp 0.6.3 → 0.12.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.
- package/README.md +311 -26
- package/build/src/DevToolsConnectionAdapter.js +69 -0
- package/build/src/DevtoolsUtils.js +208 -0
- package/build/src/McpContext.js +247 -50
- package/build/src/McpResponse.js +211 -48
- package/build/src/PageCollector.js +247 -33
- package/build/src/WaitForHelper.js +5 -0
- package/build/src/browser.js +97 -33
- package/build/src/cli.js +139 -16
- package/build/src/formatters/consoleFormatter.js +108 -60
- package/build/src/formatters/networkFormatter.js +45 -2
- package/build/src/formatters/snapshotFormatter.js +57 -59
- package/build/src/issue-descriptions.js +39 -0
- package/build/src/logger.js +1 -1
- package/build/src/main.js +68 -68
- package/build/src/polyfill.js +2 -2
- package/build/src/third_party/THIRD_PARTY_NOTICES +2010 -0
- package/build/src/third_party/devtools.js +6 -0
- package/build/src/third_party/index.js +171065 -0
- package/build/src/third_party/issue-descriptions/CoepCoopSandboxedIframeCannotNavigateToCoopPage.md +4 -0
- package/build/src/third_party/issue-descriptions/CoepCorpNotSameOrigin.md +8 -0
- package/build/src/third_party/issue-descriptions/CoepCorpNotSameOriginAfterDefaultedToSameOriginByCoep.md +18 -0
- package/build/src/third_party/issue-descriptions/CoepCorpNotSameSite.md +7 -0
- package/build/src/third_party/issue-descriptions/CoepFrameResourceNeedsCoepHeader.md +10 -0
- package/build/src/third_party/issue-descriptions/CompatibilityModeQuirks.md +5 -0
- package/build/src/third_party/issue-descriptions/CookieAttributeValueExceedsMaxSize.md +5 -0
- package/build/src/third_party/issue-descriptions/LowTextContrast.md +5 -0
- package/build/src/third_party/issue-descriptions/SameSiteExcludeContextDowngradeRead.md +8 -0
- package/build/src/third_party/issue-descriptions/SameSiteExcludeContextDowngradeSet.md +8 -0
- package/build/src/third_party/issue-descriptions/SameSiteExcludeNavigationContextDowngrade.md +8 -0
- package/build/src/third_party/issue-descriptions/SameSiteInvalidSameParty.md +8 -0
- package/build/src/third_party/issue-descriptions/SameSiteNoneInsecureErrorRead.md +8 -0
- package/build/src/third_party/issue-descriptions/SameSiteNoneInsecureErrorSet.md +8 -0
- package/build/src/third_party/issue-descriptions/SameSiteNoneInsecureWarnRead.md +8 -0
- package/build/src/third_party/issue-descriptions/SameSiteNoneInsecureWarnSet.md +8 -0
- package/build/src/third_party/issue-descriptions/SameSiteSamePartyCrossPartyContextSet.md +10 -0
- package/build/src/third_party/issue-descriptions/SameSiteUnspecifiedLaxAllowUnsafeRead.md +9 -0
- package/build/src/third_party/issue-descriptions/SameSiteUnspecifiedLaxAllowUnsafeSet.md +9 -0
- package/build/src/third_party/issue-descriptions/SameSiteWarnCrossDowngradeRead.md +8 -0
- package/build/src/third_party/issue-descriptions/SameSiteWarnCrossDowngradeSet.md +8 -0
- package/build/src/third_party/issue-descriptions/SameSiteWarnStrictLaxDowngradeStrict.md +8 -0
- package/build/src/third_party/issue-descriptions/arInsecureContext.md +7 -0
- package/build/src/third_party/issue-descriptions/arInvalidInfoHeader.md +5 -0
- package/build/src/third_party/issue-descriptions/arInvalidRegisterOsSourceHeader.md +5 -0
- package/build/src/third_party/issue-descriptions/arInvalidRegisterOsTriggerHeader.md +5 -0
- package/build/src/third_party/issue-descriptions/arInvalidRegisterSourceHeader.md +5 -0
- package/build/src/third_party/issue-descriptions/arInvalidRegisterTriggerHeader.md +5 -0
- package/build/src/third_party/issue-descriptions/arNavigationRegistrationUniqueScopeAlreadySet.md +5 -0
- package/build/src/third_party/issue-descriptions/arNavigationRegistrationWithoutTransientUserActivation.md +6 -0
- package/build/src/third_party/issue-descriptions/arNoRegisterOsSourceHeader.md +5 -0
- package/build/src/third_party/issue-descriptions/arNoRegisterOsTriggerHeader.md +5 -0
- package/build/src/third_party/issue-descriptions/arNoRegisterSourceHeader.md +5 -0
- package/build/src/third_party/issue-descriptions/arNoRegisterTriggerHeader.md +5 -0
- package/build/src/third_party/issue-descriptions/arNoWebOrOsSupport.md +4 -0
- package/build/src/third_party/issue-descriptions/arOsSourceIgnored.md +18 -0
- package/build/src/third_party/issue-descriptions/arOsTriggerIgnored.md +19 -0
- package/build/src/third_party/issue-descriptions/arPermissionPolicyDisabled.md +8 -0
- package/build/src/third_party/issue-descriptions/arSourceAndTriggerHeaders.md +9 -0
- package/build/src/third_party/issue-descriptions/arSourceIgnored.md +13 -0
- package/build/src/third_party/issue-descriptions/arTriggerIgnored.md +12 -0
- package/build/src/third_party/issue-descriptions/arUntrustworthyReportingOrigin.md +10 -0
- package/build/src/third_party/issue-descriptions/arWebAndOsHeaders.md +11 -0
- package/build/src/third_party/issue-descriptions/bounceTrackingMitigations.md +3 -0
- package/build/src/third_party/issue-descriptions/clientHintMetaTagAllowListInvalidOrigin.md +4 -0
- package/build/src/third_party/issue-descriptions/clientHintMetaTagModifiedHTML.md +4 -0
- package/build/src/third_party/issue-descriptions/cookieCrossSiteRedirectDowngrade.md +12 -0
- package/build/src/third_party/issue-descriptions/cookieExcludeBlockedWithinRelatedWebsiteSet.md +4 -0
- package/build/src/third_party/issue-descriptions/cookieExcludeDomainNonAscii.md +11 -0
- package/build/src/third_party/issue-descriptions/cookieExcludePortMismatch.md +8 -0
- package/build/src/third_party/issue-descriptions/cookieExcludeSchemeMismatch.md +7 -0
- package/build/src/third_party/issue-descriptions/cookieExcludeThirdPartyPhaseoutRead.md +6 -0
- package/build/src/third_party/issue-descriptions/cookieExcludeThirdPartyPhaseoutSet.md +6 -0
- package/build/src/third_party/issue-descriptions/cookieWarnDomainNonAscii.md +11 -0
- package/build/src/third_party/issue-descriptions/cookieWarnMetadataGrantRead.md +4 -0
- package/build/src/third_party/issue-descriptions/cookieWarnMetadataGrantSet.md +4 -0
- package/build/src/third_party/issue-descriptions/cookieWarnThirdPartyPhaseoutRead.md +6 -0
- package/build/src/third_party/issue-descriptions/cookieWarnThirdPartyPhaseoutSet.md +6 -0
- package/build/src/third_party/issue-descriptions/corsAllowCredentialsRequired.md +6 -0
- package/build/src/third_party/issue-descriptions/corsDisabledScheme.md +7 -0
- package/build/src/third_party/issue-descriptions/corsDisallowedByMode.md +7 -0
- package/build/src/third_party/issue-descriptions/corsHeaderDisallowedByPreflightResponse.md +5 -0
- package/build/src/third_party/issue-descriptions/corsInsecurePrivateNetwork.md +10 -0
- package/build/src/third_party/issue-descriptions/corsInvalidHeaderValues.md +7 -0
- package/build/src/third_party/issue-descriptions/corsLocalNetworkAccessPermissionDenied.md +19 -0
- package/build/src/third_party/issue-descriptions/corsMethodDisallowedByPreflightResponse.md +5 -0
- package/build/src/third_party/issue-descriptions/corsNoCorsRedirectModeNotFollow.md +5 -0
- package/build/src/third_party/issue-descriptions/corsOriginMismatch.md +6 -0
- package/build/src/third_party/issue-descriptions/corsPreflightAllowPrivateNetworkError.md +10 -0
- package/build/src/third_party/issue-descriptions/corsPreflightResponseInvalid.md +5 -0
- package/build/src/third_party/issue-descriptions/corsPrivateNetworkPermissionDenied.md +10 -0
- package/build/src/third_party/issue-descriptions/corsRedirectContainsCredentials.md +5 -0
- package/build/src/third_party/issue-descriptions/corsWildcardOriginNotAllowed.md +8 -0
- package/build/src/third_party/issue-descriptions/cspEvalViolation.md +9 -0
- package/build/src/third_party/issue-descriptions/cspInlineViolation.md +10 -0
- package/build/src/third_party/issue-descriptions/cspTrustedTypesPolicyViolation.md +5 -0
- package/build/src/third_party/issue-descriptions/cspTrustedTypesSinkViolation.md +8 -0
- package/build/src/third_party/issue-descriptions/cspURLViolation.md +10 -0
- package/build/src/third_party/issue-descriptions/deprecation.md +3 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestAccountsHttpNotFound.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestAccountsInvalidResponse.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestAccountsNoResponse.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestApprovalDeclined.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestCanceled.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestClientMetadataHttpNotFound.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestClientMetadataInvalidResponse.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestClientMetadataNoResponse.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestErrorFetchingSignin.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestErrorIdToken.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestIdTokenHttpNotFound.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestIdTokenInvalidRequest.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestIdTokenInvalidResponse.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestIdTokenNoResponse.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestInvalidSigninResponse.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestManifestHttpNotFound.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestManifestInvalidResponse.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestManifestNoResponse.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthRequestTooManyRequests.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthUserInfoRequestInvalidAccountsResponse.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthUserInfoRequestInvalidConfigOrWellKnown.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthUserInfoRequestNoAccountSharingPermission.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthUserInfoRequestNoApiPermission.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthUserInfoRequestNoReturningUserFromFetchedAccounts.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthUserInfoRequestNotIframe.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthUserInfoRequestNotPotentiallyTrustworthy.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthUserInfoRequestNotSameOrigin.md +1 -0
- package/build/src/third_party/issue-descriptions/federatedAuthUserInfoRequestNotSignedInWithIdp.md +1 -0
- package/build/src/third_party/issue-descriptions/fetchingPartitionedBlobURL.md +7 -0
- package/build/src/third_party/issue-descriptions/genericFormAriaLabelledByToNonExistingIdError.md +8 -0
- package/build/src/third_party/issue-descriptions/genericFormAutocompleteAttributeEmptyError.md +5 -0
- package/build/src/third_party/issue-descriptions/genericFormDuplicateIdForInputError.md +5 -0
- package/build/src/third_party/issue-descriptions/genericFormEmptyIdAndNameAttributesForInputError.md +5 -0
- package/build/src/third_party/issue-descriptions/genericFormInputAssignedAutocompleteValueToIdOrNameAttributeError.md +5 -0
- package/build/src/third_party/issue-descriptions/genericFormInputHasWrongButWellIntendedAutocompleteValueError.md +5 -0
- package/build/src/third_party/issue-descriptions/genericFormInputWithNoLabelError.md +5 -0
- package/build/src/third_party/issue-descriptions/genericFormLabelForMatchesNonExistingIdError.md +5 -0
- package/build/src/third_party/issue-descriptions/genericFormLabelForNameError.md +5 -0
- package/build/src/third_party/issue-descriptions/genericFormLabelHasNeitherForNorNestedInputError.md +5 -0
- package/build/src/third_party/issue-descriptions/genericNavigationEntryMarkedSkippable.md +7 -0
- package/build/src/third_party/issue-descriptions/genericResponseWasBlockedByORB.md +4 -0
- package/build/src/third_party/issue-descriptions/heavyAd.md +10 -0
- package/build/src/third_party/issue-descriptions/mixedContent.md +5 -0
- package/build/src/third_party/issue-descriptions/navigatingPartitionedBlobURL.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementActivationDisabled.md +7 -0
- package/build/src/third_party/issue-descriptions/permissionElementActivationDisabledWithOccluder.md +9 -0
- package/build/src/third_party/issue-descriptions/permissionElementActivationDisabledWithOccluderParent.md +9 -0
- package/build/src/third_party/issue-descriptions/permissionElementCspFrameAncestorsMissing.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementFencedFrameDisallowed.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementFontSizeTooLarge.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementFontSizeTooSmall.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementGeolocationDeprecated.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementInsetBoxShadowUnsupported.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementInvalidDisplayStyle.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementInvalidSizeValue.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementInvalidType.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementInvalidTypeActivation.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementLowContrast.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementNonOpaqueColor.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementPaddingBottomUnsupported.md +6 -0
- package/build/src/third_party/issue-descriptions/permissionElementPaddingRightUnsupported.md +6 -0
- package/build/src/third_party/issue-descriptions/permissionElementPermissionsPolicyBlocked.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementRegistrationFailed.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementRequestInProgress.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementSecurityChecksFailed.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementTypeNotSupported.md +5 -0
- package/build/src/third_party/issue-descriptions/permissionElementUntrustedEvent.md +7 -0
- package/build/src/third_party/issue-descriptions/placeholderDescriptionForInvisibleIssues.md +3 -0
- package/build/src/third_party/issue-descriptions/propertyRuleInvalidNameIssue.md +3 -0
- package/build/src/third_party/issue-descriptions/propertyRuleIssue.md +7 -0
- package/build/src/third_party/issue-descriptions/selectElementAccessibilityDisallowedOptGroupChild.md +7 -0
- package/build/src/third_party/issue-descriptions/selectElementAccessibilityDisallowedSelectChild.md +7 -0
- package/build/src/third_party/issue-descriptions/selectElementAccessibilityInteractiveContentAttributesSelectDescendant.md +3 -0
- package/build/src/third_party/issue-descriptions/selectElementAccessibilityInteractiveContentLegendChild.md +3 -0
- package/build/src/third_party/issue-descriptions/selectElementAccessibilityInteractiveContentOptionChild.md +3 -0
- package/build/src/third_party/issue-descriptions/selectElementAccessibilityNonPhrasingContentOptionChild.md +3 -0
- package/build/src/third_party/issue-descriptions/sharedArrayBuffer.md +7 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryUseErrorCrossOriginNoCorsRequest.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryUseErrorDictionaryLoadFailure.md +3 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryUseErrorMatchingDictionaryNotUsed.md +3 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryUseErrorUnexpectedContentDictionaryHeader.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorCossOriginNoCorsRequest.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorDisallowedBySettings.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorExpiredResponse.md +3 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorFeatureDisabled.md +3 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorInsufficientResources.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorInvalidMatchField.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorInvalidStructuredHeader.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorInvalidTTLField.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorNavigationRequest.md +3 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorNoMatchField.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorNonIntegerTTLField.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorNonListMatchDestField.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorNonSecureContext.md +3 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorNonStringIdField.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorNonStringInMatchDestList.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorNonStringMatchField.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorNonTokenTypeField.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorRequestAborted.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorShuttingDown.md +1 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorTooLongIdField.md +3 -0
- package/build/src/third_party/issue-descriptions/sharedDictionaryWriteErrorUnsupportedType.md +3 -0
- package/build/src/third_party/issue-descriptions/sriInvalidSignatureHeader.md +14 -0
- package/build/src/third_party/issue-descriptions/sriInvalidSignatureInputHeader.md +15 -0
- package/build/src/third_party/issue-descriptions/sriMissingSignatureHeader.md +8 -0
- package/build/src/third_party/issue-descriptions/sriMissingSignatureInputHeader.md +7 -0
- package/build/src/third_party/issue-descriptions/sriSignatureHeaderValueIsIncorrectLength.md +11 -0
- package/build/src/third_party/issue-descriptions/sriSignatureHeaderValueIsNotByteSequence.md +14 -0
- package/build/src/third_party/issue-descriptions/sriSignatureHeaderValueIsParameterized.md +15 -0
- package/build/src/third_party/issue-descriptions/sriSignatureInputHeaderInvalidComponentName.md +8 -0
- package/build/src/third_party/issue-descriptions/sriSignatureInputHeaderInvalidComponentType.md +13 -0
- package/build/src/third_party/issue-descriptions/sriSignatureInputHeaderInvalidDerivedComponentParameter.md +4 -0
- package/build/src/third_party/issue-descriptions/sriSignatureInputHeaderInvalidHeaderComponentParameter.md +5 -0
- package/build/src/third_party/issue-descriptions/sriSignatureInputHeaderInvalidParameter.md +11 -0
- package/build/src/third_party/issue-descriptions/sriSignatureInputHeaderKeyIdLength.md +12 -0
- package/build/src/third_party/issue-descriptions/sriSignatureInputHeaderMissingLabel.md +6 -0
- package/build/src/third_party/issue-descriptions/sriSignatureInputHeaderMissingRequiredParameters.md +8 -0
- package/build/src/third_party/issue-descriptions/sriSignatureInputHeaderValueMissingComponents.md +11 -0
- package/build/src/third_party/issue-descriptions/sriSignatureInputHeaderValueNotInnerList.md +11 -0
- package/build/src/third_party/issue-descriptions/sriValidationFailedIntegrityMismatch.md +10 -0
- package/build/src/third_party/issue-descriptions/sriValidationFailedInvalidLength.md +5 -0
- package/build/src/third_party/issue-descriptions/sriValidationFailedSignatureExpired.md +6 -0
- package/build/src/third_party/issue-descriptions/sriValidationFailedSignatureMismatch.md +11 -0
- package/build/src/third_party/issue-descriptions/stylesheetLateImport.md +4 -0
- package/build/src/third_party/issue-descriptions/stylesheetRequestFailed.md +3 -0
- package/build/src/third_party/issue-descriptions/summaryElementAccessibilityInteractiveContentSummaryDescendant.md +3 -0
- package/build/src/third_party/issue-descriptions/unencodedDigestIncorrectDigestLength.md +12 -0
- package/build/src/third_party/issue-descriptions/unencodedDigestIncorrectDigestType.md +17 -0
- package/build/src/third_party/issue-descriptions/unencodedDigestMalformedDictionary.md +14 -0
- package/build/src/third_party/issue-descriptions/unencodedDigestUnknownAlgorithm.md +15 -0
- package/build/src/tools/ToolDefinition.js +2 -2
- package/build/src/tools/categories.js +17 -9
- package/build/src/tools/console.js +73 -7
- package/build/src/tools/emulation.js +64 -38
- package/build/src/tools/input.js +113 -46
- package/build/src/tools/network.js +44 -14
- package/build/src/tools/pages.js +84 -52
- package/build/src/tools/performance.js +14 -12
- package/build/src/tools/screenshot.js +14 -11
- package/build/src/tools/script.js +29 -15
- package/build/src/tools/snapshot.js +27 -23
- package/build/src/tools/tools.js +29 -0
- package/build/src/trace-processing/parse.js +17 -26
- package/build/src/utils/keyboard.js +296 -0
- package/build/src/utils/types.js +6 -0
- package/package.json +34 -25
- package/build/node_modules/chrome-devtools-frontend/LICENSE +0 -27
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/App.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/AppProvider.js +0 -17
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Base64.js +0 -43
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/CharacterIdMap.js +0 -27
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Color.js +0 -2029
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/ColorConverter.js +0 -330
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/ColorUtils.js +0 -221
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Console.js +0 -86
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Debouncer.js +0 -14
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/EventTarget.js +0 -14
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Gzip.js +0 -64
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/JavaScriptMetaData.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Lazy.js +0 -29
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Linkifier.js +0 -34
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/MapWithDefault.js +0 -20
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Mutex.js +0 -49
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Object.js +0 -86
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/ParsedURL.js +0 -459
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Progress.js +0 -144
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/QueryParamHandler.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/ResolverBase.js +0 -69
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/ResourceType.js +0 -506
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/ReturnToPanel.js +0 -13
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Revealer.js +0 -159
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Runnable.js +0 -24
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/SegmentedRange.js +0 -79
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/SettingRegistration.js +0 -164
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Settings.js +0 -1252
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/SimpleHistoryManager.js +0 -97
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/StringOutputStream.js +0 -17
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/TextDictionary.js +0 -40
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Throttler.js +0 -71
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Trie.js +0 -127
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/Worker.js +0 -44
- package/build/node_modules/chrome-devtools-frontend/front_end/core/common/common.js +0 -44
- package/build/node_modules/chrome-devtools-frontend/front_end/core/host/AidaClient.js +0 -415
- package/build/node_modules/chrome-devtools-frontend/front_end/core/host/GdpClient.js +0 -186
- package/build/node_modules/chrome-devtools-frontend/front_end/core/host/InspectorFrontendHost.js +0 -513
- package/build/node_modules/chrome-devtools-frontend/front_end/core/host/InspectorFrontendHostAPI.js +0 -66
- package/build/node_modules/chrome-devtools-frontend/front_end/core/host/Platform.js +0 -59
- package/build/node_modules/chrome-devtools-frontend/front_end/core/host/ResourceLoader.js +0 -232
- package/build/node_modules/chrome-devtools-frontend/front_end/core/host/UserMetrics.js +0 -957
- package/build/node_modules/chrome-devtools-frontend/front_end/core/host/host.js +0 -12
- package/build/node_modules/chrome-devtools-frontend/front_end/core/i18n/i18n.js +0 -60
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/ArrayUtilities.js +0 -199
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/Brand.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/Constructor.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/DOMUtilities.js +0 -122
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/DateUtilities.js +0 -13
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/DevToolsPath.js +0 -27
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/KeyboardUtilities.js +0 -21
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/MapUtilities.js +0 -79
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/MimeType.js +0 -143
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/NumberUtilities.js +0 -72
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/StringUtilities.js +0 -536
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/Timing.js +0 -9
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/TypedArrayUtilities.js +0 -157
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/TypescriptUtilities.js +0 -24
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/UIString.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/UserVisibleError.js +0 -22
- package/build/node_modules/chrome-devtools-frontend/front_end/core/platform/platform.js +0 -26
- package/build/node_modules/chrome-devtools-frontend/front_end/core/protocol_client/InspectorBackend.js +0 -802
- package/build/node_modules/chrome-devtools-frontend/front_end/core/protocol_client/NodeURL.js +0 -31
- package/build/node_modules/chrome-devtools-frontend/front_end/core/protocol_client/protocol_client.js +0 -13
- package/build/node_modules/chrome-devtools-frontend/front_end/core/root/Runtime.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/core/root/root.js +0 -5
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/AccessibilityModel.js +0 -281
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/AnimationModel.js +0 -846
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/AutofillModel.js +0 -155
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CPUProfilerModel.js +0 -99
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CPUThrottlingManager.js +0 -220
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSContainerQuery.js +0 -98
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSFontFace.js +0 -31
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSLayer.js +0 -22
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSMatchedStyles.js +0 -1284
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSMedia.js +0 -100
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSMetadata.js +0 -1518
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSModel.js +0 -908
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSProperty.js +0 -315
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSPropertyParser.js +0 -572
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSPropertyParserMatchers.js +0 -1336
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSQuery.js +0 -53
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSRule.js +0 -365
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSScope.js +0 -22
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSStartingStyle.js +0 -21
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSStyleDeclaration.js +0 -275
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSStyleSheetHeader.js +0 -166
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CSSSupports.js +0 -24
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CategorizedBreakpoint.js +0 -29
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/ChildTargetManager.js +0 -232
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CompilerSourceMappingContentProvider.js +0 -47
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/Connections.js +0 -242
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/ConsoleModel.js +0 -629
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/ConsoleModelTypes.js +0 -14
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/Cookie.js +0 -241
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CookieModel.js +0 -198
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/CookieParser.js +0 -163
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/DOMDebuggerModel.js +0 -597
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/DOMModel.js +0 -1628
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/DebuggerModel.js +0 -1231
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/EmulationModel.js +0 -527
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/EnhancedTracesParser.js +0 -350
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/EventBreakpointsModel.js +0 -125
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/FrameAssociated.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/FrameManager.js +0 -199
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/HeapProfilerModel.js +0 -130
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/HttpReasonPhraseStrings.js +0 -73
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/IOModel.js +0 -83
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/IsolateManager.js +0 -208
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/IssuesModel.js +0 -41
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/LayerTreeBase.js +0 -95
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/LogModel.js +0 -34
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/NetworkManager.js +0 -1916
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/NetworkRequest.js +0 -1668
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/OverlayColorGenerator.js +0 -48
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/OverlayModel.js +0 -765
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/OverlayPersistentHighlighter.js +0 -384
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/PageLoad.js +0 -25
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/PageResourceLoader.js +0 -300
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/PaintProfiler.js +0 -67
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/PerformanceMetricsModel.js +0 -62
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/PreloadingModel.js +0 -563
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/RehydratingConnection.js +0 -290
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/RehydratingObject.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/RemoteObject.js +0 -905
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/Resource.js +0 -163
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/ResourceTreeModel.js +0 -922
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/RuntimeModel.js +0 -535
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/SDKModel.js +0 -45
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/ScreenCaptureModel.js +0 -174
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/Script.js +0 -395
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/SecurityOriginManager.js +0 -54
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/ServerSentEvents.js +0 -67
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/ServerSentEventsProtocol.js +0 -110
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/ServerTiming.js +0 -216
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/ServiceWorkerCacheModel.js +0 -271
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/ServiceWorkerManager.js +0 -511
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/SourceMap.js +0 -651
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/SourceMapCache.js +0 -41
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/SourceMapFunctionRanges.js +0 -132
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/SourceMapManager.js +0 -189
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/SourceMapScopeChainEntry.js +0 -156
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/SourceMapScopesInfo.js +0 -276
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/StorageBucketsModel.js +0 -143
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/StorageKeyManager.js +0 -53
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/Target.js +0 -262
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/TargetManager.js +0 -386
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/TraceObject.js +0 -52
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/WebAuthnModel.js +0 -66
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/sdk-meta.js +0 -1117
- package/build/node_modules/chrome-devtools-frontend/front_end/core/sdk/sdk.js +0 -90
- package/build/node_modules/chrome-devtools-frontend/front_end/generated/ARIAProperties.js +0 -1513
- package/build/node_modules/chrome-devtools-frontend/front_end/generated/Deprecation.js +0 -339
- package/build/node_modules/chrome-devtools-frontend/front_end/generated/InspectorBackendCommands.js +0 -1562
- package/build/node_modules/chrome-devtools-frontend/front_end/generated/SupportedCSSProperties.js +0 -7514
- package/build/node_modules/chrome-devtools-frontend/front_end/generated/protocol.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.js +0 -262
- package/build/node_modules/chrome-devtools-frontend/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.js +0 -979
- package/build/node_modules/chrome-devtools-frontend/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.js +0 -613
- package/build/node_modules/chrome-devtools-frontend/front_end/models/ai_assistance/data_formatters/UnitFormatters.js +0 -139
- package/build/node_modules/chrome-devtools-frontend/front_end/models/ai_assistance/performance/AICallTree.js +0 -372
- package/build/node_modules/chrome-devtools-frontend/front_end/models/ai_assistance/performance/AIContext.js +0 -132
- package/build/node_modules/chrome-devtools-frontend/front_end/models/ai_assistance/performance/AIQueries.js +0 -105
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/CSSWorkspaceBinding.js +0 -243
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/CompilerScriptMapping.js +0 -407
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/ContentProviderBasedProject.js +0 -130
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/DebuggerLanguagePlugins.js +0 -992
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/DebuggerWorkspaceBinding.js +0 -574
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/DefaultScriptMapping.js +0 -112
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/FileUtils.js +0 -186
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/LiveLocation.js +0 -60
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/NetworkProject.js +0 -107
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/PresentationConsoleMessageHelper.js +0 -244
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/ResourceMapping.js +0 -473
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/ResourceScriptMapping.js +0 -399
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/ResourceUtils.js +0 -87
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/SASSSourceMapping.js +0 -181
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/StylesSourceMapping.js +0 -268
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/TempFile.js +0 -55
- package/build/node_modules/chrome-devtools-frontend/front_end/models/bindings/bindings.js +0 -20
- package/build/node_modules/chrome-devtools-frontend/front_end/models/cpu_profile/CPUProfileDataModel.js +0 -514
- package/build/node_modules/chrome-devtools-frontend/front_end/models/cpu_profile/ProfileTreeModel.js +0 -90
- package/build/node_modules/chrome-devtools-frontend/front_end/models/cpu_profile/cpu_profile.js +0 -6
- package/build/node_modules/chrome-devtools-frontend/front_end/models/crux-manager/CrUXManager.js +0 -283
- package/build/node_modules/chrome-devtools-frontend/front_end/models/crux-manager/crux-manager.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/models/emulation/DeviceModeModel.js +0 -775
- package/build/node_modules/chrome-devtools-frontend/front_end/models/emulation/EmulatedDevices.js +0 -1706
- package/build/node_modules/chrome-devtools-frontend/front_end/models/emulation/emulation.js +0 -6
- package/build/node_modules/chrome-devtools-frontend/front_end/models/formatter/FormatterWorkerPool.js +0 -131
- package/build/node_modules/chrome-devtools-frontend/front_end/models/formatter/ScriptFormatter.js +0 -77
- package/build/node_modules/chrome-devtools-frontend/front_end/models/formatter/formatter.js +0 -6
- package/build/node_modules/chrome-devtools-frontend/front_end/models/geometry/GeometryImpl.js +0 -347
- package/build/node_modules/chrome-devtools-frontend/front_end/models/geometry/geometry.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/models/logs/LogManager.js +0 -67
- package/build/node_modules/chrome-devtools-frontend/front_end/models/logs/NetworkLog.js +0 -494
- package/build/node_modules/chrome-devtools-frontend/front_end/models/logs/RequestResolver.js +0 -49
- package/build/node_modules/chrome-devtools-frontend/front_end/models/logs/logs-meta.js +0 -73
- package/build/node_modules/chrome-devtools-frontend/front_end/models/logs/logs.js +0 -7
- package/build/node_modules/chrome-devtools-frontend/front_end/models/network_time_calculator/Calculator.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/models/network_time_calculator/NetworkTimeCalculator.js +0 -256
- package/build/node_modules/chrome-devtools-frontend/front_end/models/network_time_calculator/RequestTimeRanges.js +0 -120
- package/build/node_modules/chrome-devtools-frontend/front_end/models/network_time_calculator/network_time_calculator.js +0 -6
- package/build/node_modules/chrome-devtools-frontend/front_end/models/source_map_scopes/NamesResolver.js +0 -626
- package/build/node_modules/chrome-devtools-frontend/front_end/models/source_map_scopes/ScopeChainModel.js +0 -59
- package/build/node_modules/chrome-devtools-frontend/front_end/models/source_map_scopes/ScopeTreeCache.js +0 -32
- package/build/node_modules/chrome-devtools-frontend/front_end/models/source_map_scopes/source_map_scopes.js +0 -7
- package/build/node_modules/chrome-devtools-frontend/front_end/models/stack_trace/StackTrace.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/models/stack_trace/StackTraceImpl.js +0 -67
- package/build/node_modules/chrome-devtools-frontend/front_end/models/stack_trace/StackTraceModel.js +0 -97
- package/build/node_modules/chrome-devtools-frontend/front_end/models/stack_trace/Trie.js +0 -113
- package/build/node_modules/chrome-devtools-frontend/front_end/models/stack_trace/stack_trace.js +0 -5
- package/build/node_modules/chrome-devtools-frontend/front_end/models/stack_trace/stack_trace_impl.js +0 -7
- package/build/node_modules/chrome-devtools-frontend/front_end/models/text_utils/CodeMirrorUtils.js +0 -32
- package/build/node_modules/chrome-devtools-frontend/front_end/models/text_utils/ContentData.js +0 -173
- package/build/node_modules/chrome-devtools-frontend/front_end/models/text_utils/ContentProvider.js +0 -30
- package/build/node_modules/chrome-devtools-frontend/front_end/models/text_utils/StaticContentProvider.js +0 -32
- package/build/node_modules/chrome-devtools-frontend/front_end/models/text_utils/StreamingContentData.js +0 -79
- package/build/node_modules/chrome-devtools-frontend/front_end/models/text_utils/Text.js +0 -69
- package/build/node_modules/chrome-devtools-frontend/front_end/models/text_utils/TextCursor.js +0 -35
- package/build/node_modules/chrome-devtools-frontend/front_end/models/text_utils/TextRange.js +0 -231
- package/build/node_modules/chrome-devtools-frontend/front_end/models/text_utils/TextUtils.js +0 -355
- package/build/node_modules/chrome-devtools-frontend/front_end/models/text_utils/WasmDisassembly.js +0 -68
- package/build/node_modules/chrome-devtools-frontend/front_end/models/text_utils/text_utils.js +0 -14
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/EntityMapper.js +0 -122
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/EventsSerializer.js +0 -81
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/LanternComputationData.js +0 -370
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/ModelImpl.js +0 -166
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/Name.js +0 -114
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/Processor.js +0 -555
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/Styles.js +0 -815
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/extras/FilmStrip.js +0 -44
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/extras/MainThreadActivity.js +0 -76
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/extras/ScriptDuplication.js +0 -162
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/extras/StackTraceForEvent.js +0 -191
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/extras/ThirdParties.js +0 -118
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/extras/TraceFilter.js +0 -50
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/extras/TraceTree.js +0 -592
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/extras/extras.js +0 -10
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/AnimationFramesHandler.js +0 -109
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/AnimationHandler.js +0 -26
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/AsyncJSCallsHandler.js +0 -187
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/AuctionWorkletsHandler.js +0 -162
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/DOMStatsHandler.js +0 -21
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/ExtensionTraceDataHandler.js +0 -263
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/FlowsHandler.js +0 -148
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/FramesHandler.js +0 -483
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/GPUHandler.js +0 -35
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/ImagePaintingHandler.js +0 -147
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/InitiatorsHandler.js +0 -180
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/InvalidationsHandler.js +0 -126
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/LargestImagePaintHandler.js +0 -85
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/LargestTextPaintHandler.js +0 -27
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/LayerTreeHandler.js +0 -103
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/LayoutShiftsHandler.js +0 -445
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/MemoryHandler.js +0 -21
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/MetaHandler.js +0 -401
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/ModelHandlers.js +0 -33
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/NetworkRequestsHandler.js +0 -540
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/PageFramesHandler.js +0 -42
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/PageLoadMetricsHandler.js +0 -349
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/RendererHandler.js +0 -346
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/SamplesHandler.js +0 -207
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/ScreenshotsHandler.js +0 -97
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/ScriptsHandler.js +0 -252
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/SelectorStatsHandler.js +0 -71
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/Threads.js +0 -101
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/UserInteractionsHandler.js +0 -317
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/UserTimingsHandler.js +0 -183
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/WarningsHandler.js +0 -134
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/WorkersHandler.js +0 -33
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/handlers.js +0 -7
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/helpers.js +0 -163
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/handlers/types.js +0 -1
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/helpers/Extensions.js +0 -41
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/helpers/Network.js +0 -102
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/helpers/SamplesIntegrator.js +0 -495
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/helpers/SyntheticEvents.js +0 -74
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/helpers/Timing.js +0 -184
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/helpers/Trace.js +0 -806
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/helpers/TreeHelpers.js +0 -254
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/helpers/helpers.js +0 -10
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/CLSCulprits.js +0 -488
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/Cache.js +0 -208
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/Common.js +0 -340
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/DOMSize.js +0 -180
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/DocumentLatency.js +0 -257
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/DuplicatedJavaScript.js +0 -89
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/FontDisplay.js +0 -81
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/ForcedReflow.js +0 -160
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/INPBreakdown.js +0 -117
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/ImageDelivery.js +0 -262
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/LCPBreakdown.js +0 -188
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/LCPDiscovery.js +0 -182
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/LegacyJavaScript.js +0 -89
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/Models.js +0 -21
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/ModernHTTP.js +0 -199
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/NetworkDependencyTree.js +0 -544
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/RenderBlocking.js +0 -191
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/SlowCSSSelector.js +0 -135
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/Statistics.js +0 -92
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/ThirdParties.js +0 -97
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/Viewport.js +0 -101
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/insights.js +0 -9
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/insights/types.js +0 -18
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/core/LanternError.js +0 -6
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/core/NetworkAnalyzer.js +0 -488
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/core/core.js +0 -5
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/graph/BaseNode.js +0 -276
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/graph/CPUNode.js +0 -63
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/graph/NetworkNode.js +0 -82
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/graph/PageDependencyGraph.js +0 -551
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/graph/graph.js +0 -7
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/lantern.js +0 -9
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/metrics/FirstContentfulPaint.js +0 -136
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/metrics/Interactive.js +0 -67
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/metrics/LargestContentfulPaint.js +0 -68
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/metrics/MaxPotentialFID.js +0 -48
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/metrics/Metric.js +0 -68
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/metrics/SpeedIndex.js +0 -101
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/metrics/TBTUtils.js +0 -64
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/metrics/TotalBlockingTime.js +0 -78
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/metrics/metrics.js +0 -11
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/simulation/ConnectionPool.js +0 -115
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/simulation/Constants.js +0 -42
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/simulation/DNSCache.js +0 -47
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/simulation/SimulationTimingMap.js +0 -134
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/simulation/Simulator.js +0 -450
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/simulation/TCPConnection.js +0 -154
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/simulation/simulation.js +0 -9
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/types/Lantern.js +0 -24
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/lantern/types/types.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/trace.js +0 -17
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/types/Configuration.js +0 -18
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/types/Extensions.js +0 -37
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/types/File.js +0 -57
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/types/Overlays.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/types/Timing.js +0 -15
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/types/TraceEvents.js +0 -574
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace/types/types.js +0 -9
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace_source_maps_resolver/SourceMapsResolver.js +0 -201
- package/build/node_modules/chrome-devtools-frontend/front_end/models/trace_source_maps_resolver/trace_source_maps_resolver.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/models/workspace/FileManager.js +0 -64
- package/build/node_modules/chrome-devtools-frontend/front_end/models/workspace/IgnoreListManager.js +0 -511
- package/build/node_modules/chrome-devtools-frontend/front_end/models/workspace/SearchConfig.js +0 -113
- package/build/node_modules/chrome-devtools-frontend/front_end/models/workspace/UISourceCode.js +0 -563
- package/build/node_modules/chrome-devtools-frontend/front_end/models/workspace/WorkspaceImpl.js +0 -204
- package/build/node_modules/chrome-devtools-frontend/front_end/models/workspace/workspace.js +0 -9
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/codemirror.next/codemirror.next.js +0 -1
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/legacy-javascript/LICENSE +0 -202
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/legacy-javascript/legacy-javascript.js +0 -2
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/legacy-javascript/lib/legacy-javascript.js +0 -940
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/source-map-scopes-codec/LICENSE +0 -26
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/source-map-scopes-codec/package/src/builder/builder.js +0 -196
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/source-map-scopes-codec/package/src/builder/safe_builder.js +0 -226
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/source-map-scopes-codec/package/src/codec.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/source-map-scopes-codec/package/src/decode/decode.js +0 -394
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/source-map-scopes-codec/package/src/encode/encode.js +0 -24
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/source-map-scopes-codec/package/src/encode/encoder.js +0 -283
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/source-map-scopes-codec/package/src/mod.js +0 -7
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/source-map-scopes-codec/package/src/util.js +0 -9
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/source-map-scopes-codec/package/src/vlq.js +0 -84
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/source-map-scopes-codec/source-map-scopes-codec.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/third-party-web/LICENSE +0 -20
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/third-party-web/lib/nostats-subset.js +0 -146
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/third-party-web/package/httparchive-nostats-subset.js +0 -2
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/third-party-web/package/httparchive-subset.js +0 -2
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/third-party-web/package/lib/create-entity-finder-api.js +0 -118
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/third-party-web/package/lib/create-entity-finder-api.test.js +0 -40
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/third-party-web/package/lib/entities.test.js +0 -26
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/third-party-web/package/lib/index.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/third-party-web/package/lib/index.test.js +0 -215
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/third-party-web/package/lib/subsets/httparchive-nostats.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/third-party-web/package/lib/subsets/httparchive.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/third-party-web/package/lib/subsets/nostats.js +0 -4
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/third-party-web/package/nostats-subset.js +0 -2
- package/build/node_modules/chrome-devtools-frontend/front_end/third_party/third-party-web/third-party-web.js +0 -2
|
@@ -3,32 +3,69 @@
|
|
|
3
3
|
* Copyright 2025 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
import { FakeIssuesManager } from './DevtoolsUtils.js';
|
|
7
|
+
import { logger } from './logger.js';
|
|
8
|
+
import { DevTools } from './third_party/index.js';
|
|
9
|
+
function createIdGenerator() {
|
|
10
|
+
let i = 1;
|
|
11
|
+
return () => {
|
|
12
|
+
if (i === Number.MAX_SAFE_INTEGER) {
|
|
13
|
+
i = 0;
|
|
14
|
+
}
|
|
15
|
+
return i++;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
export const stableIdSymbol = Symbol('stableIdSymbol');
|
|
6
19
|
export class PageCollector {
|
|
7
20
|
#browser;
|
|
8
|
-
#
|
|
21
|
+
#listenersInitializer;
|
|
22
|
+
#listeners = new WeakMap();
|
|
23
|
+
#maxNavigationSaved = 3;
|
|
9
24
|
/**
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
25
|
+
* This maps a Page to a list of navigations with a sub-list
|
|
26
|
+
* of all collected resources.
|
|
27
|
+
* The newer navigations come first.
|
|
13
28
|
*/
|
|
14
29
|
storage = new WeakMap();
|
|
15
|
-
constructor(browser,
|
|
30
|
+
constructor(browser, listeners) {
|
|
16
31
|
this.#browser = browser;
|
|
17
|
-
this.#
|
|
32
|
+
this.#listenersInitializer = listeners;
|
|
18
33
|
}
|
|
19
|
-
async init() {
|
|
20
|
-
const pages = await this.#browser.pages();
|
|
34
|
+
async init(pages) {
|
|
21
35
|
for (const page of pages) {
|
|
22
|
-
this
|
|
36
|
+
this.addPage(page);
|
|
23
37
|
}
|
|
24
|
-
this.#browser.on('targetcreated',
|
|
38
|
+
this.#browser.on('targetcreated', this.#onTargetCreated);
|
|
39
|
+
this.#browser.on('targetdestroyed', this.#onTargetDestroyed);
|
|
40
|
+
}
|
|
41
|
+
dispose() {
|
|
42
|
+
this.#browser.off('targetcreated', this.#onTargetCreated);
|
|
43
|
+
this.#browser.off('targetdestroyed', this.#onTargetDestroyed);
|
|
44
|
+
}
|
|
45
|
+
#onTargetCreated = async (target) => {
|
|
46
|
+
try {
|
|
25
47
|
const page = await target.page();
|
|
26
48
|
if (!page) {
|
|
27
49
|
return;
|
|
28
50
|
}
|
|
29
|
-
this
|
|
30
|
-
}
|
|
31
|
-
|
|
51
|
+
this.addPage(page);
|
|
52
|
+
}
|
|
53
|
+
catch (err) {
|
|
54
|
+
logger('Error getting a page for a target onTargetCreated', err);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
#onTargetDestroyed = async (target) => {
|
|
58
|
+
try {
|
|
59
|
+
const page = await target.page();
|
|
60
|
+
if (!page) {
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
this.cleanupPageDestroyed(page);
|
|
64
|
+
}
|
|
65
|
+
catch (err) {
|
|
66
|
+
logger('Error getting a page for a target onTargetDestroyed', err);
|
|
67
|
+
}
|
|
68
|
+
};
|
|
32
69
|
addPage(page) {
|
|
33
70
|
this.#initializePage(page);
|
|
34
71
|
}
|
|
@@ -36,36 +73,207 @@ export class PageCollector {
|
|
|
36
73
|
if (this.storage.has(page)) {
|
|
37
74
|
return;
|
|
38
75
|
}
|
|
39
|
-
const
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
76
|
+
const idGenerator = createIdGenerator();
|
|
77
|
+
const storedLists = [[]];
|
|
78
|
+
this.storage.set(page, storedLists);
|
|
79
|
+
const listeners = this.#listenersInitializer(value => {
|
|
80
|
+
const withId = value;
|
|
81
|
+
withId[stableIdSymbol] = idGenerator();
|
|
82
|
+
const navigations = this.storage.get(page) ?? [[]];
|
|
83
|
+
navigations[0].push(withId);
|
|
84
|
+
});
|
|
85
|
+
listeners['framenavigated'] = (frame) => {
|
|
86
|
+
// Only split the storage on main frame navigation
|
|
43
87
|
if (frame !== page.mainFrame()) {
|
|
44
88
|
return;
|
|
45
89
|
}
|
|
46
|
-
this.
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}
|
|
90
|
+
this.splitAfterNavigation(page);
|
|
91
|
+
};
|
|
92
|
+
for (const [name, listener] of Object.entries(listeners)) {
|
|
93
|
+
page.on(name, listener);
|
|
94
|
+
}
|
|
95
|
+
this.#listeners.set(page, listeners);
|
|
96
|
+
}
|
|
97
|
+
splitAfterNavigation(page) {
|
|
98
|
+
const navigations = this.storage.get(page);
|
|
99
|
+
if (!navigations) {
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
// Add the latest navigation first
|
|
103
|
+
navigations.unshift([]);
|
|
104
|
+
navigations.splice(this.#maxNavigationSaved);
|
|
105
|
+
}
|
|
106
|
+
cleanupPageDestroyed(page) {
|
|
107
|
+
const listeners = this.#listeners.get(page);
|
|
108
|
+
if (listeners) {
|
|
109
|
+
for (const [name, listener] of Object.entries(listeners)) {
|
|
110
|
+
page.off(name, listener);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
this.storage.delete(page);
|
|
51
114
|
}
|
|
52
|
-
|
|
53
|
-
const
|
|
54
|
-
if (
|
|
55
|
-
|
|
56
|
-
collection.length = 0;
|
|
115
|
+
getData(page, includePreservedData) {
|
|
116
|
+
const navigations = this.storage.get(page);
|
|
117
|
+
if (!navigations) {
|
|
118
|
+
return [];
|
|
57
119
|
}
|
|
120
|
+
if (!includePreservedData) {
|
|
121
|
+
return navigations[0];
|
|
122
|
+
}
|
|
123
|
+
const data = [];
|
|
124
|
+
for (let index = this.#maxNavigationSaved; index >= 0; index--) {
|
|
125
|
+
if (navigations[index]) {
|
|
126
|
+
data.push(...navigations[index]);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
return data;
|
|
130
|
+
}
|
|
131
|
+
getIdForResource(resource) {
|
|
132
|
+
return resource[stableIdSymbol] ?? -1;
|
|
58
133
|
}
|
|
59
|
-
|
|
60
|
-
|
|
134
|
+
getById(page, stableId) {
|
|
135
|
+
const navigations = this.storage.get(page);
|
|
136
|
+
if (!navigations) {
|
|
137
|
+
throw new Error('No requests found for selected page');
|
|
138
|
+
}
|
|
139
|
+
const item = this.find(page, item => item[stableIdSymbol] === stableId);
|
|
140
|
+
if (item) {
|
|
141
|
+
return item;
|
|
142
|
+
}
|
|
143
|
+
throw new Error('Request not found for selected page');
|
|
144
|
+
}
|
|
145
|
+
find(page, filter) {
|
|
146
|
+
const navigations = this.storage.get(page);
|
|
147
|
+
if (!navigations) {
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
for (const navigation of navigations) {
|
|
151
|
+
const item = navigation.find(filter);
|
|
152
|
+
if (item) {
|
|
153
|
+
return item;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
export class ConsoleCollector extends PageCollector {
|
|
160
|
+
#subscribedPages = new WeakMap();
|
|
161
|
+
addPage(page) {
|
|
162
|
+
super.addPage(page);
|
|
163
|
+
if (!this.#subscribedPages.has(page)) {
|
|
164
|
+
const subscriber = new PageIssueSubscriber(page);
|
|
165
|
+
this.#subscribedPages.set(page, subscriber);
|
|
166
|
+
void subscriber.subscribe();
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
cleanupPageDestroyed(page) {
|
|
170
|
+
super.cleanupPageDestroyed(page);
|
|
171
|
+
this.#subscribedPages.get(page)?.unsubscribe();
|
|
172
|
+
this.#subscribedPages.delete(page);
|
|
61
173
|
}
|
|
62
174
|
}
|
|
175
|
+
class PageIssueSubscriber {
|
|
176
|
+
#issueManager = new FakeIssuesManager();
|
|
177
|
+
#issueAggregator = new DevTools.IssueAggregator(this.#issueManager);
|
|
178
|
+
#seenKeys = new Set();
|
|
179
|
+
#seenIssues = new Set();
|
|
180
|
+
#page;
|
|
181
|
+
#session;
|
|
182
|
+
constructor(page) {
|
|
183
|
+
this.#page = page;
|
|
184
|
+
// @ts-expect-error use existing CDP client (internal Puppeteer API).
|
|
185
|
+
this.#session = this.#page._client();
|
|
186
|
+
}
|
|
187
|
+
#resetIssueAggregator() {
|
|
188
|
+
this.#issueManager = new FakeIssuesManager();
|
|
189
|
+
if (this.#issueAggregator) {
|
|
190
|
+
this.#issueAggregator.removeEventListener("AggregatedIssueUpdated" /* DevTools.IssueAggregatorEvents.AGGREGATED_ISSUE_UPDATED */, this.#onAggregatedissue);
|
|
191
|
+
}
|
|
192
|
+
this.#issueAggregator = new DevTools.IssueAggregator(this.#issueManager);
|
|
193
|
+
this.#issueAggregator.addEventListener("AggregatedIssueUpdated" /* DevTools.IssueAggregatorEvents.AGGREGATED_ISSUE_UPDATED */, this.#onAggregatedissue);
|
|
194
|
+
}
|
|
195
|
+
async subscribe() {
|
|
196
|
+
this.#resetIssueAggregator();
|
|
197
|
+
this.#page.on('framenavigated', this.#onFrameNavigated);
|
|
198
|
+
this.#session.on('Audits.issueAdded', this.#onIssueAdded);
|
|
199
|
+
try {
|
|
200
|
+
await this.#session.send('Audits.enable');
|
|
201
|
+
}
|
|
202
|
+
catch (error) {
|
|
203
|
+
logger('Error subscribing to issues', error);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
unsubscribe() {
|
|
207
|
+
this.#seenKeys.clear();
|
|
208
|
+
this.#seenIssues.clear();
|
|
209
|
+
this.#page.off('framenavigated', this.#onFrameNavigated);
|
|
210
|
+
this.#session.off('Audits.issueAdded', this.#onIssueAdded);
|
|
211
|
+
if (this.#issueAggregator) {
|
|
212
|
+
this.#issueAggregator.removeEventListener("AggregatedIssueUpdated" /* DevTools.IssueAggregatorEvents.AGGREGATED_ISSUE_UPDATED */, this.#onAggregatedissue);
|
|
213
|
+
}
|
|
214
|
+
void this.#session.send('Audits.disable').catch(() => {
|
|
215
|
+
// might fail.
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
#onAggregatedissue = (event) => {
|
|
219
|
+
if (this.#seenIssues.has(event.data)) {
|
|
220
|
+
return;
|
|
221
|
+
}
|
|
222
|
+
this.#seenIssues.add(event.data);
|
|
223
|
+
this.#page.emit('issue', event.data);
|
|
224
|
+
};
|
|
225
|
+
// On navigation, we reset issue aggregation.
|
|
226
|
+
#onFrameNavigated = (frame) => {
|
|
227
|
+
// Only split the storage on main frame navigation
|
|
228
|
+
if (frame !== frame.page().mainFrame()) {
|
|
229
|
+
return;
|
|
230
|
+
}
|
|
231
|
+
this.#seenKeys.clear();
|
|
232
|
+
this.#seenIssues.clear();
|
|
233
|
+
this.#resetIssueAggregator();
|
|
234
|
+
};
|
|
235
|
+
#onIssueAdded = (data) => {
|
|
236
|
+
try {
|
|
237
|
+
const inspectorIssue = data.issue;
|
|
238
|
+
const issue = DevTools.createIssuesFromProtocolIssue(null,
|
|
239
|
+
// @ts-expect-error Protocol types diverge.
|
|
240
|
+
inspectorIssue)[0];
|
|
241
|
+
if (!issue) {
|
|
242
|
+
logger('No issue mapping for for the issue: ', inspectorIssue.code);
|
|
243
|
+
return;
|
|
244
|
+
}
|
|
245
|
+
const primaryKey = issue.primaryKey();
|
|
246
|
+
if (this.#seenKeys.has(primaryKey)) {
|
|
247
|
+
return;
|
|
248
|
+
}
|
|
249
|
+
this.#seenKeys.add(primaryKey);
|
|
250
|
+
this.#issueManager.dispatchEventToListeners("IssueAdded" /* DevTools.IssuesManagerEvents.ISSUE_ADDED */, {
|
|
251
|
+
issue,
|
|
252
|
+
// @ts-expect-error We don't care that issues model is null
|
|
253
|
+
issuesModel: null,
|
|
254
|
+
});
|
|
255
|
+
}
|
|
256
|
+
catch (error) {
|
|
257
|
+
logger('Error creating a new issue', error);
|
|
258
|
+
}
|
|
259
|
+
};
|
|
260
|
+
}
|
|
63
261
|
export class NetworkCollector extends PageCollector {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
262
|
+
constructor(browser, listeners = collect => {
|
|
263
|
+
return {
|
|
264
|
+
request: req => {
|
|
265
|
+
collect(req);
|
|
266
|
+
},
|
|
267
|
+
};
|
|
268
|
+
}) {
|
|
269
|
+
super(browser, listeners);
|
|
270
|
+
}
|
|
271
|
+
splitAfterNavigation(page) {
|
|
272
|
+
const navigations = this.storage.get(page) ?? [];
|
|
273
|
+
if (!navigations) {
|
|
67
274
|
return;
|
|
68
275
|
}
|
|
276
|
+
const requests = navigations[0];
|
|
69
277
|
const lastRequestIdx = requests.findLastIndex(request => {
|
|
70
278
|
return request.frame() === page.mainFrame()
|
|
71
279
|
? request.isNavigationRequest()
|
|
@@ -74,6 +282,12 @@ export class NetworkCollector extends PageCollector {
|
|
|
74
282
|
// Keep all requests since the last navigation request including that
|
|
75
283
|
// navigation request itself.
|
|
76
284
|
// Keep the reference
|
|
77
|
-
|
|
285
|
+
if (lastRequestIdx !== -1) {
|
|
286
|
+
const fromCurrentNavigation = requests.splice(lastRequestIdx);
|
|
287
|
+
navigations.unshift(fromCurrentNavigation);
|
|
288
|
+
}
|
|
289
|
+
else {
|
|
290
|
+
navigations.unshift([]);
|
|
291
|
+
}
|
|
78
292
|
}
|
|
79
293
|
}
|
package/build/src/browser.js
CHANGED
|
@@ -6,47 +6,109 @@
|
|
|
6
6
|
import fs from 'node:fs';
|
|
7
7
|
import os from 'node:os';
|
|
8
8
|
import path from 'node:path';
|
|
9
|
-
import puppeteer from 'puppeteer-core';
|
|
10
9
|
import puppeteerExtra from 'puppeteer-extra';
|
|
11
10
|
import StealthPlugin from 'puppeteer-extra-plugin-stealth';
|
|
11
|
+
import { logger } from './logger.js';
|
|
12
|
+
import { puppeteer } from './third_party/index.js';
|
|
12
13
|
// Add stealth plugin
|
|
13
14
|
puppeteerExtra.use(StealthPlugin());
|
|
14
15
|
let browser;
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
]);
|
|
21
|
-
function targetFilter(target) {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
25
|
-
for (const prefix of ignoredPrefixes) {
|
|
26
|
-
if (target.url().startsWith(prefix)) {
|
|
27
|
-
return false;
|
|
16
|
+
function makeTargetFilter() {
|
|
17
|
+
const ignoredPrefixes = new Set([
|
|
18
|
+
'chrome://',
|
|
19
|
+
'chrome-extension://',
|
|
20
|
+
'chrome-untrusted://',
|
|
21
|
+
]);
|
|
22
|
+
return function targetFilter(target) {
|
|
23
|
+
if (target.url() === 'chrome://newtab/') {
|
|
24
|
+
return true;
|
|
28
25
|
}
|
|
29
|
-
|
|
30
|
-
|
|
26
|
+
// Could be the only page opened in the browser.
|
|
27
|
+
if (target.url().startsWith('chrome://inspect')) {
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
for (const prefix of ignoredPrefixes) {
|
|
31
|
+
if (target.url().startsWith(prefix)) {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return true;
|
|
36
|
+
};
|
|
31
37
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
// We do not expect any single CDP command to take more than 10sec.
|
|
35
|
-
protocolTimeout: 10_000,
|
|
36
|
-
};
|
|
37
|
-
export async function ensureBrowserConnected(browserURL) {
|
|
38
|
+
export async function ensureBrowserConnected(options) {
|
|
39
|
+
const { channel } = options;
|
|
38
40
|
if (browser?.connected) {
|
|
39
41
|
return browser;
|
|
40
42
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
browserURL,
|
|
43
|
+
const connectOptions = {
|
|
44
|
+
targetFilter: makeTargetFilter(),
|
|
44
45
|
defaultViewport: null,
|
|
45
|
-
|
|
46
|
+
handleDevToolsAsPage: true,
|
|
47
|
+
};
|
|
48
|
+
if (options.wsEndpoint) {
|
|
49
|
+
connectOptions.browserWSEndpoint = options.wsEndpoint;
|
|
50
|
+
if (options.wsHeaders) {
|
|
51
|
+
connectOptions.headers = options.wsHeaders;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
else if (options.browserURL) {
|
|
55
|
+
connectOptions.browserURL = options.browserURL;
|
|
56
|
+
}
|
|
57
|
+
else if (channel || options.userDataDir) {
|
|
58
|
+
const userDataDir = options.userDataDir;
|
|
59
|
+
if (userDataDir) {
|
|
60
|
+
// TODO: re-expose this logic via Puppeteer.
|
|
61
|
+
const portPath = path.join(userDataDir, 'DevToolsActivePort');
|
|
62
|
+
try {
|
|
63
|
+
const fileContent = await fs.promises.readFile(portPath, 'utf8');
|
|
64
|
+
const [rawPort, rawPath] = fileContent
|
|
65
|
+
.split('\n')
|
|
66
|
+
.map(line => {
|
|
67
|
+
return line.trim();
|
|
68
|
+
})
|
|
69
|
+
.filter(line => {
|
|
70
|
+
return !!line;
|
|
71
|
+
});
|
|
72
|
+
if (!rawPort || !rawPath) {
|
|
73
|
+
throw new Error(`Invalid DevToolsActivePort '${fileContent}' found`);
|
|
74
|
+
}
|
|
75
|
+
const port = parseInt(rawPort, 10);
|
|
76
|
+
if (isNaN(port) || port <= 0 || port > 65535) {
|
|
77
|
+
throw new Error(`Invalid port '${rawPort}' found`);
|
|
78
|
+
}
|
|
79
|
+
const browserWSEndpoint = `ws://127.0.0.1:${port}${rawPath}`;
|
|
80
|
+
connectOptions.browserWSEndpoint = browserWSEndpoint;
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
83
|
+
throw new Error(`Could not connect to Chrome in ${userDataDir}. Check if Chrome is running and remote debugging is enabled.`, {
|
|
84
|
+
cause: error,
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
if (!channel) {
|
|
90
|
+
throw new Error('Channel must be provided if userDataDir is missing');
|
|
91
|
+
}
|
|
92
|
+
connectOptions.channel = (channel === 'stable' ? 'chrome' : `chrome-${channel}`);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
96
|
+
throw new Error('Either browserURL, wsEndpoint, channel or userDataDir must be provided');
|
|
97
|
+
}
|
|
98
|
+
logger('Connecting Puppeteer to ', JSON.stringify(connectOptions));
|
|
99
|
+
try {
|
|
100
|
+
browser = await puppeteer.connect(connectOptions);
|
|
101
|
+
}
|
|
102
|
+
catch (err) {
|
|
103
|
+
throw new Error('Could not connect to Chrome. Check if Chrome is running and remote debugging is enabled by going to chrome://inspect/#remote-debugging.', {
|
|
104
|
+
cause: err,
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
logger('Connected Puppeteer');
|
|
46
108
|
return browser;
|
|
47
109
|
}
|
|
48
110
|
export async function launch(options) {
|
|
49
|
-
const { channel, executablePath,
|
|
111
|
+
const { channel, executablePath, headless, isolated } = options;
|
|
50
112
|
const profileDirName = channel && channel !== 'stable'
|
|
51
113
|
? `chrome-profile-${channel}`
|
|
52
114
|
: 'chrome-profile';
|
|
@@ -69,10 +131,13 @@ export async function launch(options) {
|
|
|
69
131
|
if (options.stealth) {
|
|
70
132
|
args.push('--disable-blink-features=AutomationControlled', '--disable-features=IsolateOrigins,site-per-process', '--no-first-run', '--no-service-autorun', '--password-store=basic');
|
|
71
133
|
}
|
|
72
|
-
if (
|
|
73
|
-
args.push(
|
|
134
|
+
if (headless) {
|
|
135
|
+
args.push('--screen-info={3840x2160}');
|
|
74
136
|
}
|
|
75
137
|
let puppeteerChannel;
|
|
138
|
+
if (options.devtools) {
|
|
139
|
+
args.push('--auto-open-devtools-for-tabs');
|
|
140
|
+
}
|
|
76
141
|
if (!executablePath) {
|
|
77
142
|
puppeteerChannel =
|
|
78
143
|
channel && channel !== 'stable'
|
|
@@ -83,8 +148,8 @@ export async function launch(options) {
|
|
|
83
148
|
// Use puppeteer-extra with stealth plugin if stealth mode is enabled
|
|
84
149
|
const puppeteerInstance = options.stealth ? puppeteerExtra : puppeteer;
|
|
85
150
|
const launchOptions = {
|
|
86
|
-
...connectOptions,
|
|
87
151
|
channel: puppeteerChannel,
|
|
152
|
+
targetFilter: makeTargetFilter(),
|
|
88
153
|
executablePath,
|
|
89
154
|
defaultViewport: null,
|
|
90
155
|
userDataDir,
|
|
@@ -92,6 +157,7 @@ export async function launch(options) {
|
|
|
92
157
|
headless,
|
|
93
158
|
args,
|
|
94
159
|
acceptInsecureCerts: options.acceptInsecureCerts,
|
|
160
|
+
handleDevToolsAsPage: true,
|
|
95
161
|
};
|
|
96
162
|
// Add ignoreDefaultArgs when stealth is enabled to remove automation flags
|
|
97
163
|
if (options.stealth) {
|
|
@@ -116,9 +182,7 @@ export async function launch(options) {
|
|
|
116
182
|
}
|
|
117
183
|
catch (error) {
|
|
118
184
|
if (userDataDir &&
|
|
119
|
-
|
|
120
|
-
error.message.includes('Target closed') ||
|
|
121
|
-
error.message.includes('Connection closed'))) {
|
|
185
|
+
error.message.includes('The browser is already running')) {
|
|
122
186
|
throw new Error(`The browser is already running for ${userDataDir}. Use --isolated to run multiple browser instances.`, {
|
|
123
187
|
cause: error,
|
|
124
188
|
});
|