Full Code of DataDog/browser-sdk for AI

main b7fdb7bddd51 cached
1305 files
8.6 MB
2.3M tokens
10315 symbols
1 requests
Download .txt
Showing preview only (9,337K chars total). Download the full file or copy to clipboard to get everything.
Repository: DataDog/browser-sdk
Branch: main
Commit: b7fdb7bddd51
Files: 1305
Total size: 8.6 MB

Directory structure:
gitextract_310k3zcl/

├── .claude/
│   ├── commands/
│   │   └── revise-agents-md.md
│   ├── settings.json
│   └── skills/
│       └── manual-testing/
│           └── SKILL.md
├── .cursor/
│   └── rules/
│       ├── test-driven-development.mdc
│       └── unit-test-best-practices.mdc
├── .env.example
├── .github/
│   ├── CODEOWNERS
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.md
│   │   ├── feature_request.md
│   │   └── support-needed.md
│   ├── PULL_REQUEST_TEMPLATE.md
│   ├── chainguard/
│   │   ├── self.gitlab.pull_request.sts.yaml
│   │   ├── self.gitlab.read.sts.yaml
│   │   └── self.gitlab.release.sts.yaml
│   ├── codeql-config.yml
│   ├── dependabot.yml
│   └── workflows/
│       ├── changelog-to-confluence.yml
│       ├── cla.yml
│       ├── codeql-analysis.yml
│       ├── deploy-generated-docs.yml
│       ├── shadow-review.yml
│       └── stale.yml
├── .gitignore
├── .gitlab/
│   ├── deploy-auto.yml
│   └── deploy-manual.yml
├── .gitlab-ci.yml
├── .gitmodules
├── .prettierignore
├── .prettierrc.yml
├── .wokeignore
├── .yarn/
│   └── releases/
│       └── yarn-4.13.0.cjs
├── .yarnrc.yml
├── AGENTS.md
├── CHANGELOG.md
├── CLAUDE.md
├── CONTRIBUTING.md
├── Dockerfile
├── LEGAL
├── LICENSE
├── LICENSE-3rdparty.csv
├── NOTICE
├── README.md
├── developer-extension/
│   ├── README.md
│   ├── package.json
│   ├── src/
│   │   ├── background/
│   │   │   ├── devtoolsPanelConnection.ts
│   │   │   ├── domain/
│   │   │   │   ├── messageRelay.ts
│   │   │   │   └── syncRules.ts
│   │   │   ├── index.ts
│   │   │   └── monitoring.ts
│   │   ├── common/
│   │   │   ├── eventListeners.ts
│   │   │   ├── extension.types.ts
│   │   │   ├── intakeDomainConstants.ts
│   │   │   ├── isDisconnectError.ts
│   │   │   ├── logger.ts
│   │   │   ├── monitoringConfig.ts
│   │   │   ├── packagesUrlConstants.ts
│   │   │   ├── panelTabConstants.ts
│   │   │   └── sessionKeyConstant.ts
│   │   ├── content-scripts/
│   │   │   ├── isolated.ts
│   │   │   └── main.ts
│   │   ├── devtools/
│   │   │   └── index.ts
│   │   ├── entrypoints/
│   │   │   ├── background.ts
│   │   │   ├── contentScriptIsolated.ts
│   │   │   ├── contentScriptMain.ts
│   │   │   ├── devtools.html
│   │   │   └── panel.html
│   │   └── panel/
│   │       ├── backgroundScriptConnection.ts
│   │       ├── components/
│   │       │   ├── alert.tsx
│   │       │   ├── app.tsx
│   │       │   ├── columns.tsx
│   │       │   ├── json.module.css
│   │       │   ├── json.tsx
│   │       │   ├── lazyCollapse.tsx
│   │       │   ├── panel.module.css
│   │       │   ├── panel.tsx
│   │       │   ├── tabBase.module.css
│   │       │   ├── tabBase.tsx
│   │       │   └── tabs/
│   │       │       ├── eventsTab/
│   │       │       │   ├── addColumnPopover.module.css
│   │       │       │   ├── addColumnPopover.tsx
│   │       │       │   ├── columnDrag.module.css
│   │       │       │   ├── columnDrag.tsx
│   │       │       │   ├── columnUtils.ts
│   │       │       │   ├── computeFacetState.spec.ts
│   │       │       │   ├── computeFacetState.ts
│   │       │       │   ├── copyEvent.spec.ts
│   │       │       │   ├── copyEvent.ts
│   │       │       │   ├── drag.ts
│   │       │       │   ├── eventRow.module.css
│   │       │       │   ├── eventRow.tsx
│   │       │       │   ├── eventsList.module.css
│   │       │       │   ├── eventsList.tsx
│   │       │       │   ├── eventsListHeader.module.css
│   │       │       │   ├── eventsListHeader.tsx
│   │       │       │   ├── eventsTab.tsx
│   │       │       │   ├── eventsTabSide.tsx
│   │       │       │   ├── eventsTabTop.module.css
│   │       │       │   ├── eventsTabTop.tsx
│   │       │       │   ├── facetList.module.css
│   │       │       │   ├── facetList.tsx
│   │       │       │   ├── index.ts
│   │       │       │   ├── rowButton.module.css
│   │       │       │   └── rowButton.tsx
│   │       │       ├── infosTab.tsx
│   │       │       ├── replayTab.module.css
│   │       │       ├── replayTab.tsx
│   │       │       ├── settingsTab.module.css
│   │       │       └── settingsTab.tsx
│   │       ├── copy.ts
│   │       ├── evalInWindow.ts
│   │       ├── facets.constants.ts
│   │       ├── flushEvents.spec.ts
│   │       ├── flushEvents.ts
│   │       ├── formatNumber.ts
│   │       ├── global.css
│   │       ├── hooks/
│   │       │   ├── useAutoFlushEvents.ts
│   │       │   ├── useDebugMode.ts
│   │       │   ├── useDevServerStatus.ts
│   │       │   ├── useEvents/
│   │       │   │   ├── eventCollection.ts
│   │       │   │   ├── eventFilters.spec.ts
│   │       │   │   ├── eventFilters.ts
│   │       │   │   ├── facetRegistry.spec.ts
│   │       │   │   ├── facetRegistry.ts
│   │       │   │   ├── index.ts
│   │       │   │   └── useEvents.ts
│   │       │   ├── useNetworkRules.ts
│   │       │   ├── useSdkInfos.ts
│   │       │   └── useSettings.ts
│   │       ├── index.tsx
│   │       ├── monitoring.ts
│   │       ├── overrides.d.ts
│   │       ├── sampler.ts
│   │       ├── sdkEvent.ts
│   │       ├── sessionReplayPlayer/
│   │       │   ├── sessionReplayPlayer.types.ts
│   │       │   └── startSessionReplayPlayer.ts
│   │       └── setDebugMode.ts
│   ├── tsconfig.json
│   └── wxt.config.ts
├── docs/
│   ├── ARCHITECTURE.md
│   ├── CONVENTIONS.md
│   ├── DEVELOPMENT.md
│   ├── README.md
│   └── TESTING.md
├── eslint-local-rules/
│   ├── disallowEnumExports.js
│   ├── disallowGenericUtils.js
│   ├── disallowNonScripts.js
│   ├── disallowProtectedDirectoryImport.js
│   ├── disallowSideEffects.js
│   ├── disallowSpecImport.js
│   ├── disallowTestImportExportFromSrc.js
│   ├── disallowUrlConstructorPatchValues.js
│   ├── disallowZoneJsPatchedValues.js
│   ├── enforceProdDepsImports.js
│   ├── index.js
│   ├── monitorUntilCommentRules.js
│   └── secureCommandExecution.js
├── eslint.config.mjs
├── package.json
├── packages/
│   ├── core/
│   │   ├── .yarnrc
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── boot/
│   │   │   │   ├── displayAlreadyInitializedError.spec.ts
│   │   │   │   ├── displayAlreadyInitializedError.ts
│   │   │   │   ├── init.spec.ts
│   │   │   │   └── init.ts
│   │   │   ├── browser/
│   │   │   │   ├── addEventListener.spec.ts
│   │   │   │   ├── addEventListener.ts
│   │   │   │   ├── browser.types.ts
│   │   │   │   ├── cookie.spec.ts
│   │   │   │   ├── cookie.ts
│   │   │   │   ├── fetch.spec.ts
│   │   │   │   ├── fetch.ts
│   │   │   │   ├── fetchObservable.spec.ts
│   │   │   │   ├── fetchObservable.ts
│   │   │   │   ├── pageMayExitObservable.spec.ts
│   │   │   │   ├── pageMayExitObservable.ts
│   │   │   │   ├── runOnReadyState.ts
│   │   │   │   ├── xhrObservable.spec.ts
│   │   │   │   └── xhrObservable.ts
│   │   │   ├── domain/
│   │   │   │   ├── allowedTrackingOrigins.spec.ts
│   │   │   │   ├── allowedTrackingOrigins.ts
│   │   │   │   ├── bufferedData.spec.ts
│   │   │   │   ├── bufferedData.ts
│   │   │   │   ├── configuration/
│   │   │   │   │   ├── configuration.spec.ts
│   │   │   │   │   ├── configuration.ts
│   │   │   │   │   ├── endpointBuilder.spec.ts
│   │   │   │   │   ├── endpointBuilder.ts
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── transportConfiguration.spec.ts
│   │   │   │   │   └── transportConfiguration.ts
│   │   │   │   ├── connectivity/
│   │   │   │   │   ├── connectivity.spec.ts
│   │   │   │   │   ├── connectivity.ts
│   │   │   │   │   └── index.ts
│   │   │   │   ├── console/
│   │   │   │   │   ├── consoleObservable.spec.ts
│   │   │   │   │   └── consoleObservable.ts
│   │   │   │   ├── context/
│   │   │   │   │   ├── contextConstants.ts
│   │   │   │   │   ├── contextManager.spec.ts
│   │   │   │   │   ├── contextManager.ts
│   │   │   │   │   ├── contextUtils.spec.ts
│   │   │   │   │   ├── contextUtils.ts
│   │   │   │   │   ├── defineContextMethod.ts
│   │   │   │   │   ├── storeContextManager.spec.ts
│   │   │   │   │   └── storeContextManager.ts
│   │   │   │   ├── contexts/
│   │   │   │   │   ├── accountContext.spec.ts
│   │   │   │   │   ├── accountContext.ts
│   │   │   │   │   ├── globalContext.spec.ts
│   │   │   │   │   ├── globalContext.ts
│   │   │   │   │   ├── rumInternalContext.type.ts
│   │   │   │   │   ├── tabContext.spec.ts
│   │   │   │   │   ├── tabContext.ts
│   │   │   │   │   ├── userContext.spec.ts
│   │   │   │   │   └── userContext.ts
│   │   │   │   ├── deflate/
│   │   │   │   │   ├── deflate.types.ts
│   │   │   │   │   └── index.ts
│   │   │   │   ├── error/
│   │   │   │   │   ├── error.spec.ts
│   │   │   │   │   ├── error.ts
│   │   │   │   │   ├── error.types.ts
│   │   │   │   │   ├── trackRuntimeError.spec.ts
│   │   │   │   │   └── trackRuntimeError.ts
│   │   │   │   ├── eventRateLimiter/
│   │   │   │   │   ├── createEventRateLimiter.spec.ts
│   │   │   │   │   └── createEventRateLimiter.ts
│   │   │   │   ├── extension/
│   │   │   │   │   ├── extensionUtils.spec.ts
│   │   │   │   │   └── extensionUtils.ts
│   │   │   │   ├── intakeSites.ts
│   │   │   │   ├── report/
│   │   │   │   │   ├── browser.types.ts
│   │   │   │   │   ├── reportObservable.spec.ts
│   │   │   │   │   └── reportObservable.ts
│   │   │   │   ├── resourceUtils.ts
│   │   │   │   ├── session/
│   │   │   │   │   ├── README.md
│   │   │   │   │   ├── oldCookiesMigration.spec.ts
│   │   │   │   │   ├── oldCookiesMigration.ts
│   │   │   │   │   ├── sessionConstants.ts
│   │   │   │   │   ├── sessionManager.spec.ts
│   │   │   │   │   ├── sessionManager.ts
│   │   │   │   │   ├── sessionState.spec.ts
│   │   │   │   │   ├── sessionState.ts
│   │   │   │   │   ├── sessionStateValidation.ts
│   │   │   │   │   ├── sessionStore.spec.ts
│   │   │   │   │   ├── sessionStore.ts
│   │   │   │   │   ├── sessionStoreOperations.spec.ts
│   │   │   │   │   ├── sessionStoreOperations.ts
│   │   │   │   │   └── storeStrategies/
│   │   │   │   │       ├── sessionInCookie.spec.ts
│   │   │   │   │       ├── sessionInCookie.ts
│   │   │   │   │       ├── sessionInLocalStorage.spec.ts
│   │   │   │   │       ├── sessionInLocalStorage.ts
│   │   │   │   │       ├── sessionInMemory.spec.ts
│   │   │   │   │       ├── sessionInMemory.ts
│   │   │   │   │       └── sessionStoreStrategy.ts
│   │   │   │   ├── synthetics/
│   │   │   │   │   ├── syntheticsWorkerValues.spec.ts
│   │   │   │   │   └── syntheticsWorkerValues.ts
│   │   │   │   ├── tags.spec.ts
│   │   │   │   ├── tags.ts
│   │   │   │   ├── telemetry/
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── rawTelemetryEvent.types.ts
│   │   │   │   │   ├── telemetry.spec.ts
│   │   │   │   │   ├── telemetry.ts
│   │   │   │   │   └── telemetryEvent.types.ts
│   │   │   │   ├── trackingConsent.spec.ts
│   │   │   │   └── trackingConsent.ts
│   │   │   ├── index.ts
│   │   │   ├── tools/
│   │   │   │   ├── abstractHooks.spec.ts
│   │   │   │   ├── abstractHooks.ts
│   │   │   │   ├── abstractLifeCycle.spec.ts
│   │   │   │   ├── abstractLifeCycle.ts
│   │   │   │   ├── boundedBuffer.spec.ts
│   │   │   │   ├── boundedBuffer.ts
│   │   │   │   ├── catchUserErrors.spec.ts
│   │   │   │   ├── catchUserErrors.ts
│   │   │   │   ├── display.ts
│   │   │   │   ├── encoder.spec.ts
│   │   │   │   ├── encoder.ts
│   │   │   │   ├── experimentalFeatures.spec.ts
│   │   │   │   ├── experimentalFeatures.ts
│   │   │   │   ├── getZoneJsOriginalValue.spec.ts
│   │   │   │   ├── getZoneJsOriginalValue.ts
│   │   │   │   ├── globalObject.ts
│   │   │   │   ├── instrumentMethod.spec.ts
│   │   │   │   ├── instrumentMethod.ts
│   │   │   │   ├── matchOption.spec.ts
│   │   │   │   ├── matchOption.ts
│   │   │   │   ├── mergeInto.spec.ts
│   │   │   │   ├── mergeInto.ts
│   │   │   │   ├── mockable.ts
│   │   │   │   ├── monitor.spec.ts
│   │   │   │   ├── monitor.ts
│   │   │   │   ├── observable.spec.ts
│   │   │   │   ├── observable.ts
│   │   │   │   ├── queueMicrotask.spec.ts
│   │   │   │   ├── queueMicrotask.ts
│   │   │   │   ├── readBytesFromStream.spec.ts
│   │   │   │   ├── readBytesFromStream.ts
│   │   │   │   ├── requestIdleCallback.spec.ts
│   │   │   │   ├── requestIdleCallback.ts
│   │   │   │   ├── sendToExtension.ts
│   │   │   │   ├── serialisation/
│   │   │   │   │   ├── context.ts
│   │   │   │   │   ├── jsonStringify.spec.ts
│   │   │   │   │   ├── jsonStringify.ts
│   │   │   │   │   ├── sanitize.spec.ts
│   │   │   │   │   └── sanitize.ts
│   │   │   │   ├── stackTrace/
│   │   │   │   │   ├── capturedExceptions.specHelper.ts
│   │   │   │   │   ├── computeStackTrace.spec.ts
│   │   │   │   │   ├── computeStackTrace.ts
│   │   │   │   │   ├── handlingStack.spec.ts
│   │   │   │   │   └── handlingStack.ts
│   │   │   │   ├── taskQueue.spec.ts
│   │   │   │   ├── taskQueue.ts
│   │   │   │   ├── timer.spec.ts
│   │   │   │   ├── timer.ts
│   │   │   │   ├── utils/
│   │   │   │   │   ├── arrayUtils.ts
│   │   │   │   │   ├── browserDetection.spec.ts
│   │   │   │   │   ├── browserDetection.ts
│   │   │   │   │   ├── byteUtils.spec.ts
│   │   │   │   │   ├── byteUtils.ts
│   │   │   │   │   ├── functionUtils.spec.ts
│   │   │   │   │   ├── functionUtils.ts
│   │   │   │   │   ├── numberUtils.spec.ts
│   │   │   │   │   ├── numberUtils.ts
│   │   │   │   │   ├── objectUtils.ts
│   │   │   │   │   ├── polyfills.ts
│   │   │   │   │   ├── responseUtils.ts
│   │   │   │   │   ├── stringUtils.spec.ts
│   │   │   │   │   ├── stringUtils.ts
│   │   │   │   │   ├── timeUtils.ts
│   │   │   │   │   ├── timezone.ts
│   │   │   │   │   ├── typeUtils.spec.ts
│   │   │   │   │   ├── typeUtils.ts
│   │   │   │   │   ├── urlPolyfill.spec.ts
│   │   │   │   │   └── urlPolyfill.ts
│   │   │   │   ├── valueHistory.spec.ts
│   │   │   │   └── valueHistory.ts
│   │   │   └── transport/
│   │   │       ├── batch.spec.ts
│   │   │       ├── batch.ts
│   │   │       ├── eventBridge.spec.ts
│   │   │       ├── eventBridge.ts
│   │   │       ├── flushController.spec.ts
│   │   │       ├── flushController.ts
│   │   │       ├── httpRequest.spec.ts
│   │   │       ├── httpRequest.ts
│   │   │       ├── index.ts
│   │   │       ├── sendWithRetryStrategy.spec.ts
│   │   │       └── sendWithRetryStrategy.ts
│   │   └── test/
│   │       ├── browserChecks.ts
│   │       ├── browserExtension.ts
│   │       ├── buildEnv.ts
│   │       ├── collectAsyncCalls.ts
│   │       ├── consoleLog.ts
│   │       ├── cookie.ts
│   │       ├── coreConfiguration.ts
│   │       ├── createHooks.ts
│   │       ├── disableJasmineUncaughtExceptionTracking.ts
│   │       ├── emulate/
│   │       │   ├── buildLocation.ts
│   │       │   ├── createNewEvent.ts
│   │       │   ├── mockClock.ts
│   │       │   ├── mockEventBridge.ts
│   │       │   ├── mockEventTarget.ts
│   │       │   ├── mockFetch.ts
│   │       │   ├── mockFlushController.ts
│   │       │   ├── mockNavigator.ts
│   │       │   ├── mockReportingObserver.ts
│   │       │   ├── mockRequestIdleCallback.ts
│   │       │   ├── mockSyntheticsWorkerValues.ts
│   │       │   ├── mockTelemetry.ts
│   │       │   ├── mockVisibilityState.ts
│   │       │   ├── mockXhr.ts
│   │       │   └── mockZoneJs.ts
│   │       ├── fakeSessionStoreStrategy.ts
│   │       ├── forEach.spec.ts
│   │       ├── getCurrentJasmineSpec.ts
│   │       ├── index.ts
│   │       ├── instrumentation.ts
│   │       ├── interceptRequests.ts
│   │       ├── leakDetection.ts
│   │       ├── mockGlobalContext.ts
│   │       ├── readFormData.ts
│   │       ├── registerCleanupTask.ts
│   │       ├── replaceMockable.ts
│   │       ├── typeUtils.ts
│   │       └── wait.ts
│   ├── logs/
│   │   ├── .yarnrc
│   │   ├── BROWSER_SUPPORT.md
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── boot/
│   │   │   │   ├── logsPublicApi.spec.ts
│   │   │   │   ├── logsPublicApi.ts
│   │   │   │   ├── preStartLogs.spec.ts
│   │   │   │   ├── preStartLogs.ts
│   │   │   │   ├── startLogs.spec.ts
│   │   │   │   └── startLogs.ts
│   │   │   ├── domain/
│   │   │   │   ├── assembly.spec.ts
│   │   │   │   ├── assembly.ts
│   │   │   │   ├── configuration.spec.ts
│   │   │   │   ├── configuration.ts
│   │   │   │   ├── console/
│   │   │   │   │   ├── consoleCollection.spec.ts
│   │   │   │   │   └── consoleCollection.ts
│   │   │   │   ├── contexts/
│   │   │   │   │   ├── commonContext.ts
│   │   │   │   │   ├── internalContext.spec.ts
│   │   │   │   │   ├── internalContext.ts
│   │   │   │   │   ├── rumInternalContext.spec.ts
│   │   │   │   │   ├── rumInternalContext.ts
│   │   │   │   │   ├── sessionContext.spec.ts
│   │   │   │   │   ├── sessionContext.ts
│   │   │   │   │   ├── trackingConsentContext.spec.ts
│   │   │   │   │   └── trackingConsentContext.ts
│   │   │   │   ├── createErrorFieldFromRawError.spec.ts
│   │   │   │   ├── createErrorFieldFromRawError.ts
│   │   │   │   ├── hooks.ts
│   │   │   │   ├── lifeCycle.ts
│   │   │   │   ├── logger/
│   │   │   │   │   ├── isAuthorized.ts
│   │   │   │   │   ├── loggerCollection.spec.ts
│   │   │   │   │   └── loggerCollection.ts
│   │   │   │   ├── logger.spec.ts
│   │   │   │   ├── logger.ts
│   │   │   │   ├── logsSessionManager.spec.ts
│   │   │   │   ├── logsSessionManager.ts
│   │   │   │   ├── networkError/
│   │   │   │   │   ├── networkErrorCollection.spec.ts
│   │   │   │   │   └── networkErrorCollection.ts
│   │   │   │   ├── report/
│   │   │   │   │   ├── reportCollection.spec.ts
│   │   │   │   │   └── reportCollection.ts
│   │   │   │   ├── reportError.ts
│   │   │   │   └── runtimeError/
│   │   │   │       ├── runtimeErrorCollection.spec.ts
│   │   │   │       └── runtimeErrorCollection.ts
│   │   │   ├── domainContext.types.ts
│   │   │   ├── entries/
│   │   │   │   └── main.ts
│   │   │   ├── logsEvent.types.ts
│   │   │   ├── rawLogsEvent.types.ts
│   │   │   └── transport/
│   │   │       ├── startLogsBatch.ts
│   │   │       └── startLogsBridge.ts
│   │   ├── test/
│   │   │   └── mockLogsSessionManager.ts
│   │   └── typedoc.json
│   ├── rum/
│   │   ├── .yarnrc
│   │   ├── BROWSER_SUPPORT.md
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── internal/
│   │   │   └── package.json
│   │   ├── internal-synthetics/
│   │   │   └── package.json
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── boot/
│   │   │   │   ├── isBrowserSupported.ts
│   │   │   │   ├── lazyLoadProfiler.ts
│   │   │   │   ├── lazyLoadRecorder.spec.ts
│   │   │   │   ├── lazyLoadRecorder.ts
│   │   │   │   ├── postStartStrategy.ts
│   │   │   │   ├── preStartStrategy.ts
│   │   │   │   ├── profilerApi.ts
│   │   │   │   ├── recorderApi.spec.ts
│   │   │   │   ├── recorderApi.ts
│   │   │   │   ├── startRecording.spec.ts
│   │   │   │   └── startRecording.ts
│   │   │   ├── domain/
│   │   │   │   ├── deflate/
│   │   │   │   │   ├── deflateEncoder.spec.ts
│   │   │   │   │   ├── deflateEncoder.ts
│   │   │   │   │   ├── deflateWorker.spec.ts
│   │   │   │   │   ├── deflateWorker.ts
│   │   │   │   │   └── index.ts
│   │   │   │   ├── getSessionReplayLink.spec.ts
│   │   │   │   ├── getSessionReplayLink.ts
│   │   │   │   ├── profiling/
│   │   │   │   │   ├── actionHistory.spec.ts
│   │   │   │   │   ├── actionHistory.ts
│   │   │   │   │   ├── longTaskHistory.spec.ts
│   │   │   │   │   ├── longTaskHistory.ts
│   │   │   │   │   ├── profiler.spec.ts
│   │   │   │   │   ├── profiler.ts
│   │   │   │   │   ├── profilingContext.spec.ts
│   │   │   │   │   ├── profilingContext.ts
│   │   │   │   │   ├── profilingSupported.ts
│   │   │   │   │   ├── test-utils/
│   │   │   │   │   │   └── mockedTrace.ts
│   │   │   │   │   ├── transport/
│   │   │   │   │   │   ├── assembly.ts
│   │   │   │   │   │   ├── buildProfileEventAttributes.spec.ts
│   │   │   │   │   │   └── buildProfileEventAttributes.ts
│   │   │   │   │   ├── types/
│   │   │   │   │   │   ├── index.ts
│   │   │   │   │   │   ├── profilerApi.types.ts
│   │   │   │   │   │   └── rumProfiler.types.ts
│   │   │   │   │   ├── utils/
│   │   │   │   │   │   ├── getCustomOrDefaultViewName.spec.ts
│   │   │   │   │   │   ├── getCustomOrDefaultViewName.ts
│   │   │   │   │   │   ├── getDefaultViewName.spec.ts
│   │   │   │   │   │   ├── getDefaultViewName.ts
│   │   │   │   │   │   ├── getNumberOfSamples.spec.ts
│   │   │   │   │   │   └── getNumberOfSamples.ts
│   │   │   │   │   ├── vitalHistory.spec.ts
│   │   │   │   │   └── vitalHistory.ts
│   │   │   │   ├── record/
│   │   │   │   │   ├── assembly.ts
│   │   │   │   │   ├── elementsScrollPositions.ts
│   │   │   │   │   ├── eventsUtils.ts
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── internalApi.spec.ts
│   │   │   │   │   ├── internalApi.ts
│   │   │   │   │   ├── itemIds.spec.ts
│   │   │   │   │   ├── itemIds.ts
│   │   │   │   │   ├── mutationBatch.spec.ts
│   │   │   │   │   ├── mutationBatch.ts
│   │   │   │   │   ├── record.spec.ts
│   │   │   │   │   ├── record.ts
│   │   │   │   │   ├── record.types.ts
│   │   │   │   │   ├── recordingScope.ts
│   │   │   │   │   ├── serialization/
│   │   │   │   │   │   ├── changeEncoder.spec.ts
│   │   │   │   │   │   ├── changeEncoder.ts
│   │   │   │   │   │   ├── conversions/
│   │   │   │   │   │   │   ├── changeConverter.ts
│   │   │   │   │   │   │   ├── changeDecoder.ts
│   │   │   │   │   │   │   ├── index.ts
│   │   │   │   │   │   │   ├── mutationLog.ts
│   │   │   │   │   │   │   ├── nodeIdRemapper.ts
│   │   │   │   │   │   │   ├── renderOptions.ts
│   │   │   │   │   │   │   ├── stringTable.ts
│   │   │   │   │   │   │   ├── vDocument.spec.ts
│   │   │   │   │   │   │   ├── vDocument.ts
│   │   │   │   │   │   │   ├── vDom.specHelper.ts
│   │   │   │   │   │   │   ├── vNode.spec.ts
│   │   │   │   │   │   │   ├── vNode.ts
│   │   │   │   │   │   │   ├── vStyleSheet.spec.ts
│   │   │   │   │   │   │   └── vStyleSheet.ts
│   │   │   │   │   │   ├── experimentalFeatures.ts
│   │   │   │   │   │   ├── htmlAst.specHelper.ts
│   │   │   │   │   │   ├── index.ts
│   │   │   │   │   │   ├── insertionCursor.spec.ts
│   │   │   │   │   │   ├── insertionCursor.ts
│   │   │   │   │   │   ├── serialization.types.ts
│   │   │   │   │   │   ├── serializationStats.spec.ts
│   │   │   │   │   │   ├── serializationStats.ts
│   │   │   │   │   │   ├── serializationTransaction.ts
│   │   │   │   │   │   ├── serializationUtils.spec.ts
│   │   │   │   │   │   ├── serializationUtils.ts
│   │   │   │   │   │   ├── serializeAttribute.spec.ts
│   │   │   │   │   │   ├── serializeAttribute.ts
│   │   │   │   │   │   ├── serializeAttributes.spec.ts
│   │   │   │   │   │   ├── serializeAttributes.ts
│   │   │   │   │   │   ├── serializeFullSnapshot.ts
│   │   │   │   │   │   ├── serializeFullSnapshotAsChange.ts
│   │   │   │   │   │   ├── serializeHtml.specHelper.ts
│   │   │   │   │   │   ├── serializeMutations.spec.ts
│   │   │   │   │   │   ├── serializeMutations.ts
│   │   │   │   │   │   ├── serializeMutationsAsChange.ts
│   │   │   │   │   │   ├── serializeNode.spec.ts
│   │   │   │   │   │   ├── serializeNode.ts
│   │   │   │   │   │   ├── serializeNodeAsChange.form.spec.ts
│   │   │   │   │   │   ├── serializeNodeAsChange.node.spec.ts
│   │   │   │   │   │   ├── serializeNodeAsChange.snapshot.spec.ts
│   │   │   │   │   │   ├── serializeNodeAsChange.stylesheet.spec.ts
│   │   │   │   │   │   ├── serializeNodeAsChange.ts
│   │   │   │   │   │   ├── serializeStyleSheets.spec.ts
│   │   │   │   │   │   └── serializeStyleSheets.ts
│   │   │   │   │   ├── serializationVerifier.ts
│   │   │   │   │   ├── shadowRootsController.ts
│   │   │   │   │   ├── startFullSnapshots.spec.ts
│   │   │   │   │   ├── startFullSnapshots.ts
│   │   │   │   │   ├── test/
│   │   │   │   │   │   ├── recordingScope.specHelper.ts
│   │   │   │   │   │   ├── rumConfiguration.specHelper.ts
│   │   │   │   │   │   ├── serialization.specHelper.ts
│   │   │   │   │   │   └── shadowRootsController.specHelper.ts
│   │   │   │   │   ├── trackers/
│   │   │   │   │   │   ├── index.ts
│   │   │   │   │   │   ├── trackFocus.spec.ts
│   │   │   │   │   │   ├── trackFocus.ts
│   │   │   │   │   │   ├── trackInput.spec.ts
│   │   │   │   │   │   ├── trackInput.ts
│   │   │   │   │   │   ├── trackMediaInteraction.spec.ts
│   │   │   │   │   │   ├── trackMediaInteraction.ts
│   │   │   │   │   │   ├── trackMouseInteraction.spec.ts
│   │   │   │   │   │   ├── trackMouseInteraction.ts
│   │   │   │   │   │   ├── trackMove.spec.ts
│   │   │   │   │   │   ├── trackMove.ts
│   │   │   │   │   │   ├── trackMutation.spec.ts
│   │   │   │   │   │   ├── trackMutation.ts
│   │   │   │   │   │   ├── trackScroll.spec.ts
│   │   │   │   │   │   ├── trackScroll.ts
│   │   │   │   │   │   ├── trackStyleSheet.spec.ts
│   │   │   │   │   │   ├── trackStyleSheet.ts
│   │   │   │   │   │   ├── trackViewEnd.spec.ts
│   │   │   │   │   │   ├── trackViewEnd.ts
│   │   │   │   │   │   ├── trackViewportResize.spec.ts
│   │   │   │   │   │   ├── trackViewportResize.ts
│   │   │   │   │   │   └── tracker.types.ts
│   │   │   │   │   └── viewports.ts
│   │   │   │   ├── replayStats.spec.ts
│   │   │   │   ├── replayStats.ts
│   │   │   │   ├── scriptLoadingError.ts
│   │   │   │   ├── segmentCollection/
│   │   │   │   │   ├── buildReplayPayload.spec.ts
│   │   │   │   │   ├── buildReplayPayload.ts
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── segment.spec.ts
│   │   │   │   │   ├── segment.ts
│   │   │   │   │   ├── segmentCollection.spec.ts
│   │   │   │   │   ├── segmentCollection.ts
│   │   │   │   │   ├── startSegmentTelemetry.spec.ts
│   │   │   │   │   └── startSegmentTelemetry.ts
│   │   │   │   ├── startRecordBridge.ts
│   │   │   │   ├── startRecorderInitTelemetry.spec.ts
│   │   │   │   └── startRecorderInitTelemetry.ts
│   │   │   ├── entries/
│   │   │   │   ├── internal.ts
│   │   │   │   ├── internalSynthetics.ts
│   │   │   │   └── main.ts
│   │   │   └── types/
│   │   │       ├── index.ts
│   │   │       ├── profiling.ts
│   │   │       ├── sessionReplay.ts
│   │   │       └── sessionReplayConstants.ts
│   │   ├── test/
│   │   │   ├── index.ts
│   │   │   ├── mockProfiler.ts
│   │   │   ├── mockWorker.ts
│   │   │   ├── record/
│   │   │   │   ├── changes.ts
│   │   │   │   ├── elements.ts
│   │   │   │   ├── index.ts
│   │   │   │   ├── mutationPayloadValidator.ts
│   │   │   │   ├── nodes.ts
│   │   │   │   ├── readReplayPayload.ts
│   │   │   │   ├── recordsPerFullSnapshot.ts
│   │   │   │   ├── segments.ts
│   │   │   │   └── toto.css
│   │   │   └── rumFrustrationEvent.ts
│   │   └── typedoc.json
│   ├── rum-angular/
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── domain/
│   │   │   │   ├── angularPlugin.spec.ts
│   │   │   │   ├── angularPlugin.ts
│   │   │   │   ├── angularRouter/
│   │   │   │   │   ├── provideDatadogRouter.ts
│   │   │   │   │   ├── startAngularView.spec.ts
│   │   │   │   │   ├── startAngularView.ts
│   │   │   │   │   └── types.ts
│   │   │   │   └── error/
│   │   │   │       ├── addAngularError.spec.ts
│   │   │   │       ├── addAngularError.ts
│   │   │   │       ├── index.ts
│   │   │   │       ├── provideDatadogErrorHandler.spec.ts
│   │   │   │       └── provideDatadogErrorHandler.ts
│   │   │   └── entries/
│   │   │       └── main.ts
│   │   ├── test/
│   │   │   └── initializeAngularPlugin.ts
│   │   └── tsconfig.json
│   ├── rum-core/
│   │   ├── .yarnrc
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── boot/
│   │   │   │   ├── preStartRum.spec.ts
│   │   │   │   ├── preStartRum.ts
│   │   │   │   ├── rumPublicApi.spec.ts
│   │   │   │   ├── rumPublicApi.ts
│   │   │   │   ├── startRum.spec.ts
│   │   │   │   └── startRum.ts
│   │   │   ├── browser/
│   │   │   │   ├── cookieObservable.spec.ts
│   │   │   │   ├── cookieObservable.ts
│   │   │   │   ├── domMutationObservable.spec.ts
│   │   │   │   ├── domMutationObservable.ts
│   │   │   │   ├── firstInputPolyfill.ts
│   │   │   │   ├── htmlDomUtils.spec.ts
│   │   │   │   ├── htmlDomUtils.ts
│   │   │   │   ├── locationChangeObservable.spec.ts
│   │   │   │   ├── locationChangeObservable.ts
│   │   │   │   ├── performanceObservable.spec.ts
│   │   │   │   ├── performanceObservable.ts
│   │   │   │   ├── performanceUtils.spec.ts
│   │   │   │   ├── performanceUtils.ts
│   │   │   │   ├── scroll.spec.ts
│   │   │   │   ├── scroll.ts
│   │   │   │   ├── viewportObservable.spec.ts
│   │   │   │   ├── viewportObservable.ts
│   │   │   │   ├── windowOpenObservable.spec.ts
│   │   │   │   └── windowOpenObservable.ts
│   │   │   ├── domain/
│   │   │   │   ├── action/
│   │   │   │   │   ├── actionCollection.spec.ts
│   │   │   │   │   ├── actionCollection.ts
│   │   │   │   │   ├── actionNameConstants.ts
│   │   │   │   │   ├── clickChain.spec.ts
│   │   │   │   │   ├── clickChain.ts
│   │   │   │   │   ├── computeFrustration.spec.ts
│   │   │   │   │   ├── computeFrustration.ts
│   │   │   │   │   ├── getActionNameFromElement.spec.ts
│   │   │   │   │   ├── getActionNameFromElement.ts
│   │   │   │   │   ├── interactionSelectorCache.spec.ts
│   │   │   │   │   ├── interactionSelectorCache.ts
│   │   │   │   │   ├── isActionChildEvent.ts
│   │   │   │   │   ├── listenActionEvents.spec.ts
│   │   │   │   │   ├── listenActionEvents.ts
│   │   │   │   │   ├── trackClickActions.spec.ts
│   │   │   │   │   ├── trackClickActions.ts
│   │   │   │   │   ├── trackManualActions.spec.ts
│   │   │   │   │   └── trackManualActions.ts
│   │   │   │   ├── assembly.spec.ts
│   │   │   │   ├── assembly.ts
│   │   │   │   ├── configuration/
│   │   │   │   │   ├── configuration.spec.ts
│   │   │   │   │   ├── configuration.ts
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── jsonPathParser.spec.ts
│   │   │   │   │   ├── jsonPathParser.ts
│   │   │   │   │   ├── remoteConfiguration.spec.ts
│   │   │   │   │   ├── remoteConfiguration.ts
│   │   │   │   │   └── remoteConfiguration.types.ts
│   │   │   │   ├── contexts/
│   │   │   │   │   ├── ciVisibilityContext.spec.ts
│   │   │   │   │   ├── ciVisibilityContext.ts
│   │   │   │   │   ├── connectivityContext.spec.ts
│   │   │   │   │   ├── connectivityContext.ts
│   │   │   │   │   ├── defaultContext.spec.ts
│   │   │   │   │   ├── defaultContext.ts
│   │   │   │   │   ├── displayContext.spec.ts
│   │   │   │   │   ├── displayContext.ts
│   │   │   │   │   ├── featureFlagContext.spec.ts
│   │   │   │   │   ├── featureFlagContext.ts
│   │   │   │   │   ├── internalContext.spec.ts
│   │   │   │   │   ├── internalContext.ts
│   │   │   │   │   ├── pageStateHistory.spec.ts
│   │   │   │   │   ├── pageStateHistory.ts
│   │   │   │   │   ├── sessionContext.spec.ts
│   │   │   │   │   ├── sessionContext.ts
│   │   │   │   │   ├── sourceCodeContext.spec.ts
│   │   │   │   │   ├── sourceCodeContext.ts
│   │   │   │   │   ├── syntheticsContext.spec.ts
│   │   │   │   │   ├── syntheticsContext.ts
│   │   │   │   │   ├── trackingConsentContext.spec.ts
│   │   │   │   │   ├── trackingConsentContext.ts
│   │   │   │   │   ├── urlContexts.spec.ts
│   │   │   │   │   ├── urlContexts.ts
│   │   │   │   │   ├── viewHistory.spec.ts
│   │   │   │   │   └── viewHistory.ts
│   │   │   │   ├── discardNegativeDuration.ts
│   │   │   │   ├── error/
│   │   │   │   │   ├── errorCollection.spec.ts
│   │   │   │   │   ├── errorCollection.ts
│   │   │   │   │   ├── trackConsoleError.spec.ts
│   │   │   │   │   ├── trackConsoleError.ts
│   │   │   │   │   ├── trackReportError.spec.ts
│   │   │   │   │   └── trackReportError.ts
│   │   │   │   ├── event/
│   │   │   │   │   ├── eventCollection.spec.ts
│   │   │   │   │   └── eventCollection.ts
│   │   │   │   ├── eventTracker.spec.ts
│   │   │   │   ├── eventTracker.ts
│   │   │   │   ├── extractRegexMatch.ts
│   │   │   │   ├── getComposedPathSelector.spec.ts
│   │   │   │   ├── getComposedPathSelector.ts
│   │   │   │   ├── getSelectorFromElement.spec.ts
│   │   │   │   ├── getSelectorFromElement.ts
│   │   │   │   ├── getSessionReplayUrl.spec.ts
│   │   │   │   ├── getSessionReplayUrl.ts
│   │   │   │   ├── hooks.ts
│   │   │   │   ├── lifeCycle.ts
│   │   │   │   ├── limitModification.spec.ts
│   │   │   │   ├── limitModification.ts
│   │   │   │   ├── longTask/
│   │   │   │   │   ├── longTaskCollection.spec.ts
│   │   │   │   │   └── longTaskCollection.ts
│   │   │   │   ├── plugins.spec.ts
│   │   │   │   ├── plugins.ts
│   │   │   │   ├── privacy.spec.ts
│   │   │   │   ├── privacy.ts
│   │   │   │   ├── privacyConstants.ts
│   │   │   │   ├── requestCollection.spec.ts
│   │   │   │   ├── requestCollection.ts
│   │   │   │   ├── resource/
│   │   │   │   │   ├── graphql.spec.ts
│   │   │   │   │   ├── graphql.ts
│   │   │   │   │   ├── matchRequestResourceEntry.spec.ts
│   │   │   │   │   ├── matchRequestResourceEntry.ts
│   │   │   │   │   ├── requestRegistry.spec.ts
│   │   │   │   │   ├── requestRegistry.ts
│   │   │   │   │   ├── resourceCollection.spec.ts
│   │   │   │   │   ├── resourceCollection.ts
│   │   │   │   │   ├── resourceUtils.spec.ts
│   │   │   │   │   ├── resourceUtils.ts
│   │   │   │   │   ├── retrieveInitialDocumentResourceTiming.spec.ts
│   │   │   │   │   ├── retrieveInitialDocumentResourceTiming.ts
│   │   │   │   │   ├── trackManualResources.spec.ts
│   │   │   │   │   └── trackManualResources.ts
│   │   │   │   ├── rumSessionManager.spec.ts
│   │   │   │   ├── rumSessionManager.ts
│   │   │   │   ├── sampler/
│   │   │   │   │   ├── sampler.spec.ts
│   │   │   │   │   └── sampler.ts
│   │   │   │   ├── startCustomerDataTelemetry.spec.ts
│   │   │   │   ├── startCustomerDataTelemetry.ts
│   │   │   │   ├── tracing/
│   │   │   │   │   ├── getDocumentTraceId.spec.ts
│   │   │   │   │   ├── getDocumentTraceId.ts
│   │   │   │   │   ├── identifier.spec.ts
│   │   │   │   │   ├── identifier.ts
│   │   │   │   │   ├── tracer.spec.ts
│   │   │   │   │   ├── tracer.ts
│   │   │   │   │   └── tracer.types.ts
│   │   │   │   ├── trackEventCounts.spec.ts
│   │   │   │   ├── trackEventCounts.ts
│   │   │   │   ├── view/
│   │   │   │   │   ├── bfCacheSupport.spec.ts
│   │   │   │   │   ├── bfCacheSupport.ts
│   │   │   │   │   ├── setupViewTest.specHelper.ts
│   │   │   │   │   ├── trackViewEventCounts.spec.ts
│   │   │   │   │   ├── trackViewEventCounts.ts
│   │   │   │   │   ├── trackViews.spec.ts
│   │   │   │   │   ├── trackViews.ts
│   │   │   │   │   ├── viewCollection.spec.ts
│   │   │   │   │   ├── viewCollection.ts
│   │   │   │   │   └── viewMetrics/
│   │   │   │   │       ├── getClsAttributionImpactedArea.spec.ts
│   │   │   │   │       ├── getClsAttributionImpactedArea.ts
│   │   │   │   │       ├── interactionCountPolyfill.ts
│   │   │   │   │       ├── startInitialViewMetricsTelemetry.spec.ts
│   │   │   │   │       ├── startInitialViewMetricsTelemetry.ts
│   │   │   │   │       ├── trackBfcacheMetrics.spec.ts
│   │   │   │   │       ├── trackBfcacheMetrics.ts
│   │   │   │   │       ├── trackCommonViewMetrics.spec.ts
│   │   │   │   │       ├── trackCommonViewMetrics.ts
│   │   │   │   │       ├── trackCumulativeLayoutShift.spec.ts
│   │   │   │   │       ├── trackCumulativeLayoutShift.ts
│   │   │   │   │       ├── trackFirstContentfulPaint.spec.ts
│   │   │   │   │       ├── trackFirstContentfulPaint.ts
│   │   │   │   │       ├── trackFirstHidden.spec.ts
│   │   │   │   │       ├── trackFirstHidden.ts
│   │   │   │   │       ├── trackFirstInput.spec.ts
│   │   │   │   │       ├── trackFirstInput.ts
│   │   │   │   │       ├── trackInitialViewMetrics.spec.ts
│   │   │   │   │       ├── trackInitialViewMetrics.ts
│   │   │   │   │       ├── trackInteractionToNextPaint.spec.ts
│   │   │   │   │       ├── trackInteractionToNextPaint.ts
│   │   │   │   │       ├── trackLargestContentfulPaint.spec.ts
│   │   │   │   │       ├── trackLargestContentfulPaint.ts
│   │   │   │   │       ├── trackLoadingTime.spec.ts
│   │   │   │   │       ├── trackLoadingTime.ts
│   │   │   │   │       ├── trackNavigationTimings.spec.ts
│   │   │   │   │       ├── trackNavigationTimings.ts
│   │   │   │   │       ├── trackScrollMetrics.spec.ts
│   │   │   │   │       └── trackScrollMetrics.ts
│   │   │   │   ├── vital/
│   │   │   │   │   ├── vitalCollection.spec.ts
│   │   │   │   │   └── vitalCollection.ts
│   │   │   │   ├── waitPageActivityEnd.spec.ts
│   │   │   │   └── waitPageActivityEnd.ts
│   │   │   ├── domainContext.types.ts
│   │   │   ├── index.ts
│   │   │   ├── rawRumEvent.types.ts
│   │   │   ├── rumEvent.types.ts
│   │   │   └── transport/
│   │   │       ├── formDataTransport.spec.ts
│   │   │       ├── formDataTransport.ts
│   │   │       ├── startRumBatch.ts
│   │   │       └── startRumEventBridge.ts
│   │   └── test/
│   │       ├── allJsonSchemas.d.ts
│   │       ├── allJsonSchemas.js
│   │       ├── createFakeClick.ts
│   │       ├── dom.ts
│   │       ├── emulate/
│   │       │   ├── mockDocumentReadyState.ts
│   │       │   ├── mockGlobalPerformanceBuffer.ts
│   │       │   └── mockPerformanceObserver.ts
│   │       ├── fixtures.ts
│   │       ├── formatValidation.ts
│   │       ├── index.ts
│   │       ├── locationChangeSetup.ts
│   │       ├── mockCiVisibilityValues.ts
│   │       ├── mockContexts.ts
│   │       ├── mockPageStateHistory.ts
│   │       ├── mockRumConfiguration.ts
│   │       ├── mockRumSessionManager.ts
│   │       ├── noopProfilerApi.ts
│   │       └── noopRecorderApi.ts
│   ├── rum-nextjs/
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── domain/
│   │   │   │   ├── error/
│   │   │   │   │   ├── addNextjsError.spec.ts
│   │   │   │   │   ├── addNextjsError.ts
│   │   │   │   │   ├── errorBoundary.spec.tsx
│   │   │   │   │   └── errorBoundary.ts
│   │   │   │   ├── nextJSRouter/
│   │   │   │   │   ├── computeViewNameFromParams.spec.ts
│   │   │   │   │   ├── computeViewNameFromParams.ts
│   │   │   │   │   ├── datadogAppRouter.tsx
│   │   │   │   │   └── datadogPagesRouter.tsx
│   │   │   │   ├── nextjsPlugin.spec.ts
│   │   │   │   └── nextjsPlugin.ts
│   │   │   └── entries/
│   │   │       └── main.ts
│   │   ├── test/
│   │   │   └── initializeNextjsPlugin.ts
│   │   └── tsconfig.json
│   ├── rum-nuxt/
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── domain/
│   │   │   │   ├── nuxtPlugin.spec.ts
│   │   │   │   ├── nuxtPlugin.ts
│   │   │   │   └── router/
│   │   │   │       ├── nuxtRouter.spec.ts
│   │   │   │       └── nuxtRouter.ts
│   │   │   └── entries/
│   │   │       └── main.ts
│   │   └── test/
│   │       └── initializeNuxtPlugin.ts
│   ├── rum-react/
│   │   ├── .yarnrc
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── internal/
│   │   │   └── package.json
│   │   ├── package.json
│   │   ├── react-router-v6/
│   │   │   ├── package.json
│   │   │   └── typedoc.json
│   │   ├── react-router-v7/
│   │   │   ├── package.json
│   │   │   └── typedoc.json
│   │   ├── src/
│   │   │   ├── domain/
│   │   │   │   ├── error/
│   │   │   │   │   ├── addReactError.spec.ts
│   │   │   │   │   ├── addReactError.ts
│   │   │   │   │   ├── createErrorBoundary.spec.tsx
│   │   │   │   │   ├── errorBoundary.spec.tsx
│   │   │   │   │   ├── errorBoundary.ts
│   │   │   │   │   └── index.ts
│   │   │   │   ├── performance/
│   │   │   │   │   ├── addDurationVital.ts
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── reactComponentTracker.spec.tsx
│   │   │   │   │   ├── reactComponentTracker.tsx
│   │   │   │   │   ├── timer.spec.ts
│   │   │   │   │   └── timer.ts
│   │   │   │   ├── reactPlugin.spec.ts
│   │   │   │   ├── reactPlugin.ts
│   │   │   │   ├── reactRouter/
│   │   │   │   │   ├── createRouter.spec.ts
│   │   │   │   │   ├── createRouter.ts
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── reactRouter.specHelper.ts
│   │   │   │   │   ├── routesComponent.spec.tsx
│   │   │   │   │   ├── routesComponent.ts
│   │   │   │   │   ├── startReactRouterView.spec.ts
│   │   │   │   │   ├── startReactRouterView.ts
│   │   │   │   │   ├── types.ts
│   │   │   │   │   ├── useRoutes.spec.tsx
│   │   │   │   │   └── useRoutes.ts
│   │   │   │   └── tanstackRouter/
│   │   │   │       ├── startTanStackRouterView.spec.ts
│   │   │   │       ├── startTanStackRouterView.ts
│   │   │   │       ├── types.ts
│   │   │   │       ├── wrapCreateRouter.spec.ts
│   │   │   │       └── wrapCreateRouter.ts
│   │   │   └── entries/
│   │   │       ├── internal.ts
│   │   │       ├── main.ts
│   │   │       ├── reactRouterV6.ts
│   │   │       ├── reactRouterV7.ts
│   │   │       └── tanstackRouter.ts
│   │   ├── tanstack-router/
│   │   │   └── package.json
│   │   ├── test/
│   │   │   ├── appendComponent.ts
│   │   │   ├── initializeReactPlugin.ts
│   │   │   └── reactOldBrowsersSupport.ts
│   │   └── typedoc.json
│   ├── rum-slim/
│   │   ├── .yarnrc
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── boot/
│   │   │   │   ├── stubProfilerApi.ts
│   │   │   │   └── stubRecorderApi.ts
│   │   │   ├── domain/
│   │   │   │   ├── getSessionReplayLink.spec.ts
│   │   │   │   └── getSessionReplayLink.ts
│   │   │   └── entries/
│   │   │       └── main.ts
│   │   └── typedoc.json
│   ├── rum-vue/
│   │   ├── .yarnrc
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── domain/
│   │   │   │   ├── error/
│   │   │   │   │   ├── addVueError.spec.ts
│   │   │   │   │   └── addVueError.ts
│   │   │   │   ├── router/
│   │   │   │   │   ├── startVueRouterView.spec.ts
│   │   │   │   │   ├── startVueRouterView.ts
│   │   │   │   │   ├── vueRouter.spec.ts
│   │   │   │   │   └── vueRouter.ts
│   │   │   │   ├── vuePlugin.spec.ts
│   │   │   │   └── vuePlugin.ts
│   │   │   └── entries/
│   │   │       ├── main.ts
│   │   │       └── vueRouter.ts
│   │   ├── test/
│   │   │   └── initializeVuePlugin.ts
│   │   ├── typedoc.json
│   │   └── vue-router-v4/
│   │       ├── package.json
│   │       └── typedoc.json
│   └── worker/
│       ├── .yarnrc
│       ├── LICENSE
│       ├── README.md
│       ├── package.json
│       ├── src/
│       │   ├── boot/
│       │   │   ├── startWorker.spec.ts
│       │   │   └── startWorker.ts
│       │   ├── domain/
│       │   │   ├── deflate.d.ts
│       │   │   └── deflate.js
│       │   └── entries/
│       │       └── main.ts
│       └── tsconfig.json
├── remote-configuration/
│   ├── README.md
│   └── rum-sdk-config.json
├── renovate.json
├── repository.datadog.yml
├── scripts/
│   ├── AGENTS.md
│   ├── CLAUDE.md
│   ├── build/
│   │   ├── build-package.ts
│   │   └── build-test-apps.ts
│   ├── check-licenses.ts
│   ├── check-node-version.ts
│   ├── check-packages.ts
│   ├── check-schemas.ts
│   ├── check-typescript-compatibility.ts
│   ├── cli
│   ├── deploy/
│   │   ├── deploy-prod-dc.spec.ts
│   │   ├── deploy-prod-dc.ts
│   │   ├── deploy.spec.ts
│   │   ├── deploy.ts
│   │   ├── lib/
│   │   │   ├── checkTelemetryErrors.spec.ts
│   │   │   ├── checkTelemetryErrors.ts
│   │   │   ├── deploymentUtils.ts
│   │   │   └── testHelpers.ts
│   │   ├── publish-developer-extension.ts
│   │   ├── publish-npm.ts
│   │   ├── upload-source-maps.spec.ts
│   │   └── upload-source-maps.ts
│   ├── dev-server/
│   │   ├── index.ts
│   │   └── lib/
│   │       ├── commands/
│   │       │   ├── intake.ts
│   │       │   ├── logs.ts
│   │       │   ├── start.ts
│   │       │   ├── status.ts
│   │       │   └── stop.ts
│   │       ├── daemon.ts
│   │       ├── server.ts
│   │       └── state.ts
│   ├── generate-schema-types.ts
│   ├── lib/
│   │   ├── browserSdkVersion.ts
│   │   ├── bsUtils.ts
│   │   ├── buildEnv.ts
│   │   ├── checkBrowserSdkPackageJsonFiles.ts
│   │   ├── command.spec.ts
│   │   ├── command.ts
│   │   ├── computeBundleSize.ts
│   │   ├── datacenter.spec.ts
│   │   ├── datacenter.ts
│   │   ├── executionUtils.spec.ts
│   │   ├── executionUtils.ts
│   │   ├── filesUtils.ts
│   │   ├── generatedSchemaTypes.ts
│   │   ├── gitUtils.ts
│   │   ├── global.d.ts
│   │   ├── packagesDirectoryNames.ts
│   │   └── secrets.ts
│   ├── performance/
│   │   ├── index.ts
│   │   └── lib/
│   │       ├── bundleSizes.ts
│   │       ├── constants.ts
│   │       ├── cpuPerformance.ts
│   │       ├── fetchPerformanceMetrics.ts
│   │       ├── memoryPerformance.ts
│   │       ├── reportAsAPrComment.spec.ts
│   │       ├── reportAsAPrComment.ts
│   │       └── reportToDatadog.ts
│   ├── release/
│   │   ├── check-release.ts
│   │   ├── create-github-release.ts
│   │   ├── generate-changelog/
│   │   │   ├── index.ts
│   │   │   └── lib/
│   │   │       ├── addNewChangesToChangelog.ts
│   │   │       ├── constants.ts
│   │   │       └── getAffectedPackages.ts
│   │   ├── prepare-release.ts
│   │   └── renew-token.ts
│   ├── show-bundle-size.ts
│   ├── staging-ci/
│   │   ├── check-squash-into-staging.ts
│   │   ├── check-staging-merge.ts
│   │   └── staging-reset.ts
│   ├── test/
│   │   ├── bs-kill.ts
│   │   ├── bs-wrapper.ts
│   │   ├── bump-chrome-version.ts
│   │   ├── ci-bs.ts
│   │   └── export-test-result.ts
│   └── update-branch.ts
├── static-analysis.datadog.yml
├── test/
│   ├── apps/
│   │   ├── .gitignore
│   │   ├── angular-app/
│   │   │   ├── .gitignore
│   │   │   ├── main.ts
│   │   │   ├── package.json
│   │   │   ├── tsconfig.json
│   │   │   └── webpack.config.js
│   │   ├── base-extension/
│   │   │   ├── .gitignore
│   │   │   ├── README.md
│   │   │   ├── manifest.json
│   │   │   ├── package.json
│   │   │   ├── src/
│   │   │   │   ├── appendChild.ts
│   │   │   │   ├── base.ts
│   │   │   │   └── cdn.ts
│   │   │   ├── tsconfig.json
│   │   │   └── webpack.config.js
│   │   ├── microfrontend/
│   │   │   ├── .gitignore
│   │   │   ├── app1.ts
│   │   │   ├── app2.ts
│   │   │   ├── bootstrap.ts
│   │   │   ├── common.ts
│   │   │   ├── package.json
│   │   │   ├── shell.ts
│   │   │   ├── tsconfig.json
│   │   │   ├── types.d.ts
│   │   │   ├── webpack.app1.js
│   │   │   ├── webpack.app2.js
│   │   │   ├── webpack.base.js
│   │   │   └── webpack.shell.js
│   │   ├── nextjs/
│   │   │   ├── .gitignore
│   │   │   ├── app/
│   │   │   │   ├── @sidebar/
│   │   │   │   │   ├── default.tsx
│   │   │   │   │   ├── guides/
│   │   │   │   │   │   └── [...slug]/
│   │   │   │   │   │       └── page.tsx
│   │   │   │   │   ├── page.tsx
│   │   │   │   │   └── user/
│   │   │   │   │       └── [id]/
│   │   │   │   │           └── page.tsx
│   │   │   │   ├── error-test/
│   │   │   │   │   ├── error.tsx
│   │   │   │   │   ├── page.tsx
│   │   │   │   │   └── server-error/
│   │   │   │   │       └── page.tsx
│   │   │   │   ├── global-error-test/
│   │   │   │   │   └── page.tsx
│   │   │   │   ├── global-error.tsx
│   │   │   │   ├── guides/
│   │   │   │   │   └── [...slug]/
│   │   │   │   │       └── page.tsx
│   │   │   │   ├── layout.tsx
│   │   │   │   ├── page.tsx
│   │   │   │   └── user/
│   │   │   │       └── [id]/
│   │   │   │           └── page.tsx
│   │   │   ├── instrumentation-client.js
│   │   │   ├── next.config.js
│   │   │   ├── package.json
│   │   │   ├── pages/
│   │   │   │   ├── _app.tsx
│   │   │   │   └── pages-router/
│   │   │   │       ├── error-test.tsx
│   │   │   │       ├── guides/
│   │   │   │       │   └── [...slug].tsx
│   │   │   │       ├── index.tsx
│   │   │   │       └── user/
│   │   │   │           └── [id].tsx
│   │   │   └── tsconfig.json
│   │   ├── nuxt-app/
│   │   │   ├── .gitignore
│   │   │   ├── app.vue
│   │   │   ├── nuxt.config.ts
│   │   │   ├── package.json
│   │   │   ├── pages/
│   │   │   │   ├── guides/
│   │   │   │   │   └── [...slug].vue
│   │   │   │   ├── index.vue
│   │   │   │   └── user/
│   │   │   │       └── [id].vue
│   │   │   ├── plugins/
│   │   │   │   └── datadog-rum.client.ts
│   │   │   └── tsconfig.json
│   │   ├── react-heavy-spa/
│   │   │   ├── .gitignore
│   │   │   ├── README.md
│   │   │   ├── index.html
│   │   │   ├── package.json
│   │   │   ├── public/
│   │   │   │   └── data/
│   │   │   │       ├── infrastructure.json
│   │   │   │       ├── logs.json
│   │   │   │       ├── metrics.json
│   │   │   │       └── traces.json
│   │   │   ├── src/
│   │   │   │   ├── App.css
│   │   │   │   ├── App.tsx
│   │   │   │   ├── components/
│   │   │   │   │   ├── Dashboard/
│   │   │   │   │   │   ├── ActivityFeed.css
│   │   │   │   │   │   ├── ActivityFeed.tsx
│   │   │   │   │   │   ├── Dashboard.css
│   │   │   │   │   │   ├── Dashboard.tsx
│   │   │   │   │   │   ├── MetricCard.css
│   │   │   │   │   │   ├── MetricCard.tsx
│   │   │   │   │   │   ├── ServiceGrid.css
│   │   │   │   │   │   ├── ServiceGrid.tsx
│   │   │   │   │   │   ├── ServiceStatusPieChart.css
│   │   │   │   │   │   ├── ServiceStatusPieChart.tsx
│   │   │   │   │   │   ├── TimeSeriesChart.css
│   │   │   │   │   │   └── TimeSeriesChart.tsx
│   │   │   │   │   ├── Infrastructure/
│   │   │   │   │   │   ├── HostDetails.css
│   │   │   │   │   │   ├── HostDetails.tsx
│   │   │   │   │   │   ├── HostList.css
│   │   │   │   │   │   ├── HostList.tsx
│   │   │   │   │   │   ├── HostMap.css
│   │   │   │   │   │   ├── HostMap.tsx
│   │   │   │   │   │   ├── Infrastructure.css
│   │   │   │   │   │   └── Infrastructure.tsx
│   │   │   │   │   ├── Layout/
│   │   │   │   │   │   ├── MainLayout.css
│   │   │   │   │   │   ├── MainLayout.tsx
│   │   │   │   │   │   ├── Sidebar.css
│   │   │   │   │   │   ├── Sidebar.tsx
│   │   │   │   │   │   ├── TopBar.css
│   │   │   │   │   │   └── TopBar.tsx
│   │   │   │   │   ├── Logs/
│   │   │   │   │   │   ├── FilterSidebar.css
│   │   │   │   │   │   ├── FilterSidebar.tsx
│   │   │   │   │   │   ├── LogDetails.css
│   │   │   │   │   │   ├── LogDetails.tsx
│   │   │   │   │   │   ├── LogTable.css
│   │   │   │   │   │   ├── LogTable.tsx
│   │   │   │   │   │   ├── LogsExplorer.css
│   │   │   │   │   │   ├── LogsExplorer.tsx
│   │   │   │   │   │   ├── SearchBar.css
│   │   │   │   │   │   └── SearchBar.tsx
│   │   │   │   │   └── Settings/
│   │   │   │   │       ├── Integrations.css
│   │   │   │   │       ├── Integrations.tsx
│   │   │   │   │       ├── Settings.css
│   │   │   │   │       ├── Settings.tsx
│   │   │   │   │       ├── TeamManagement.css
│   │   │   │   │       ├── TeamManagement.tsx
│   │   │   │   │       ├── UserSettings.css
│   │   │   │   │       └── UserSettings.tsx
│   │   │   │   ├── hooks/
│   │   │   │   │   ├── useData.ts
│   │   │   │   │   └── useDebounce.ts
│   │   │   │   ├── index.css
│   │   │   │   ├── main.tsx
│   │   │   │   ├── types/
│   │   │   │   │   └── data.ts
│   │   │   │   ├── utils/
│   │   │   │   │   ├── api.ts
│   │   │   │   │   ├── constants.ts
│   │   │   │   │   ├── generateMetrics.ts
│   │   │   │   │   └── performanceThrottle.ts
│   │   │   │   └── vite-env.d.ts
│   │   │   ├── tsconfig.app.json
│   │   │   ├── tsconfig.json
│   │   │   ├── tsconfig.node.json
│   │   │   └── vite.config.ts
│   │   ├── react-router-v6-app/
│   │   │   ├── .gitignore
│   │   │   ├── app.tsx
│   │   │   ├── package.json
│   │   │   ├── tsconfig.json
│   │   │   └── webpack.config.js
│   │   ├── react-shopist-like/
│   │   │   ├── .gitignore
│   │   │   ├── README.md
│   │   │   ├── index.html
│   │   │   ├── package.json
│   │   │   ├── public/
│   │   │   │   └── products.json
│   │   │   ├── src/
│   │   │   │   ├── App.css
│   │   │   │   ├── App.tsx
│   │   │   │   ├── components/
│   │   │   │   │   ├── Footer.tsx
│   │   │   │   │   ├── Header.tsx
│   │   │   │   │   ├── ProductCard.tsx
│   │   │   │   │   └── PromoBanner.tsx
│   │   │   │   ├── data/
│   │   │   │   │   └── products.ts
│   │   │   │   ├── main.tsx
│   │   │   │   ├── pages/
│   │   │   │   │   ├── Cart.tsx
│   │   │   │   │   ├── EditProfile.tsx
│   │   │   │   │   ├── Home.tsx
│   │   │   │   │   ├── ProductDetail.tsx
│   │   │   │   │   └── Profile.tsx
│   │   │   │   └── vite-env.d.ts
│   │   │   ├── tsconfig.app.json
│   │   │   ├── tsconfig.json
│   │   │   └── vite.config.ts
│   │   ├── tanstack-router-app/
│   │   │   ├── .gitignore
│   │   │   ├── app.tsx
│   │   │   ├── package.json
│   │   │   ├── tsconfig.json
│   │   │   └── webpack.config.js
│   │   ├── vanilla/
│   │   │   ├── .gitignore
│   │   │   ├── app.ts
│   │   │   ├── package.json
│   │   │   ├── tsconfig.json
│   │   │   ├── webpack.base.js
│   │   │   ├── webpack.ssr.js
│   │   │   └── webpack.web.js
│   │   └── vue-router-app/
│   │       ├── .gitignore
│   │       ├── index.html
│   │       ├── package.json
│   │       ├── src/
│   │       │   ├── App.vue
│   │       │   ├── main.ts
│   │       │   └── pages/
│   │       │       ├── ErrorPage.vue
│   │       │       ├── GuidesPage.vue
│   │       │       ├── HomePage.vue
│   │       │       └── UserPage.vue
│   │       ├── tsconfig.json
│   │       └── vite.config.ts
│   ├── browsers.conf.d.ts
│   ├── e2e/
│   │   ├── AGENTS.md
│   │   ├── CLAUDE.md
│   │   ├── browsers.conf.js
│   │   ├── lib/
│   │   │   ├── framework/
│   │   │   │   ├── createExtension.ts
│   │   │   │   ├── createTest.ts
│   │   │   │   ├── createWorker.ts
│   │   │   │   ├── environment.ts
│   │   │   │   ├── flushEvents.ts
│   │   │   │   ├── httpServers.ts
│   │   │   │   ├── index.ts
│   │   │   │   ├── intakeProxyMiddleware.ts
│   │   │   │   ├── intakeRegistry.ts
│   │   │   │   ├── pageSetups.ts
│   │   │   │   ├── sdkBuilds.ts
│   │   │   │   ├── serverApps/
│   │   │   │   │   ├── intake.ts
│   │   │   │   │   └── mock.ts
│   │   │   │   └── waitForRequests.ts
│   │   │   ├── helpers/
│   │   │   │   ├── browser.ts
│   │   │   │   ├── configuration.ts
│   │   │   │   ├── extensionFixture.ts
│   │   │   │   ├── playwright.ts
│   │   │   │   ├── session.ts
│   │   │   │   ├── tags.ts
│   │   │   │   └── validation.ts
│   │   │   └── types/
│   │   │       └── global.ts
│   │   ├── noticeReporter.ts
│   │   ├── package.json
│   │   ├── playwright.base.config.ts
│   │   ├── playwright.bs.config.ts
│   │   ├── playwright.local.config.ts
│   │   ├── scenario/
│   │   │   ├── browser-extensions/
│   │   │   │   └── browserExtensions.scenario.ts
│   │   │   ├── context.scenario.ts
│   │   │   ├── developer-extension/
│   │   │   │   └── developerExtension.scenario.ts
│   │   │   ├── eventBridge.scenario.ts
│   │   │   ├── logs.scenario.ts
│   │   │   ├── microfrontend.scenario.ts
│   │   │   ├── plugins/
│   │   │   │   ├── angularPlugin.scenario.ts
│   │   │   │   ├── basePluginErrorTests.ts
│   │   │   │   ├── basePluginRouterTests.ts
│   │   │   │   ├── nextjsPlugin.scenario.ts
│   │   │   │   ├── nuxtPlugin.scenario.ts
│   │   │   │   ├── plugin.scenario.ts
│   │   │   │   ├── reactPlugin.scenario.ts
│   │   │   │   └── vuePlugin.scenario.ts
│   │   │   ├── profiling.scenario.ts
│   │   │   ├── recorder/
│   │   │   │   ├── recorder.scenario.ts
│   │   │   │   ├── shadowDom.scenario.ts
│   │   │   │   └── viewports.scenario.ts
│   │   │   ├── rum/
│   │   │   │   ├── actions.scenario.ts
│   │   │   │   ├── errors.scenario.ts
│   │   │   │   ├── graphql.scenario.ts
│   │   │   │   ├── init.scenario.ts
│   │   │   │   ├── remoteConfiguration.scenario.ts
│   │   │   │   ├── resources.scenario.ts
│   │   │   │   ├── s8sInject.scenario.ts
│   │   │   │   ├── sessions.scenario.ts
│   │   │   │   ├── tracing.scenario.ts
│   │   │   │   ├── views.scenario.ts
│   │   │   │   └── vitals.scenario.ts
│   │   │   ├── sessionStore.scenario.ts
│   │   │   ├── tanstackRouterPlugin.scenario.ts
│   │   │   ├── telemetry.scenario.ts
│   │   │   ├── trackingConsent.scenario.ts
│   │   │   └── transport.scenario.ts
│   │   └── tsconfig.json
│   ├── envUtils.ts
│   ├── performance/
│   │   ├── configuration.ts
│   │   ├── createBenchmarkTest.ts
│   │   ├── environment.ts
│   │   ├── playwright.config.ts
│   │   ├── profilers/
│   │   │   ├── index.ts
│   │   │   ├── startCpuProfiling.ts
│   │   │   ├── startMemoryProfiling.ts
│   │   │   ├── startNetworkProfiling.ts
│   │   │   ├── startProfiling.ts
│   │   │   └── startWebVitalsProfiling.ts
│   │   ├── profiling.type.ts
│   │   ├── reporters/
│   │   │   ├── reportToConsole.ts
│   │   │   └── reportToDatadog.ts
│   │   ├── scenarios/
│   │   │   ├── heavy.scenario.ts
│   │   │   └── shopistLike.scenario.ts
│   │   ├── server.ts
│   │   └── tsconfig.json
│   └── unit/
│       ├── browsers.conf.ts
│       ├── globalThisPolyfill.js
│       ├── jasmineSeedReporterPlugin.js
│       ├── karma.base.conf.js
│       ├── karma.bs.conf.js
│       ├── karma.local.conf.js
│       ├── karmaDuplicateTestNameReporterPlugin.js
│       └── karmaSkippedFailedReporterPlugin.js
├── tsconfig.base.json
├── tsconfig.default.json
├── tsconfig.json
├── tsconfig.scripts.json
├── tsconfig.webpack.json
├── typedoc.css
├── typedoc.json
└── webpack.base.ts

================================================
FILE CONTENTS
================================================

================================================
FILE: .claude/commands/revise-agents-md.md
================================================
Review this session for learnings about working with Agents in this codebase. Update AGENTS.md with context that would help future Agent sessions be more effective.

## Step 1: Reflect

What context was missing that would have helped Agents work more effectively?

- Bash commands that were used or discovered
- Code style patterns followed
- Testing approaches that worked
- Environment/configuration quirks
- Warnings or gotchas encountered

## Step 2: Find AGENTS.md Files

```bash
find . -name "AGENTS.md" 2>/dev/null | head -20
```

## Step 3: Draft Additions

**Keep it concise** - one line per concept. AGENTS.md is part of the prompt, so brevity matters.

Format: `<command or pattern>` - `<brief description>`

Avoid:

- Verbose explanations
- Obvious information
- One-off fixes unlikely to recur

## Step 4: Show Proposed Changes

For each addition:

```
### Update: ./AGENTS.md

**Why:** [one-line reason]

\`\`\`diff
+ [the addition - keep it brief]
\`\`\`
```

## Step 5: Apply with Approval

Ask if the user wants to apply the changes. Only edit files they approve.


================================================
FILE: .claude/settings.json
================================================
{
  "permissions": {
    "allow": ["Bash(yarn dev-server:*)", "Bash(agent-browser:*)"]
  }
}


================================================
FILE: .claude/skills/manual-testing/SKILL.md
================================================
---
name: manual-testing
description: Run a manual test of the current change end-to-end and output reproducible test instructions for the PR "Test instructions" section.
---

## Step 1: Understand the change

Review the current diff to identify what SDK behavior changed and what events/fields need to be verified.

## Step 2: Start the dev server

The dev server serves the `sandbox/` directory and proxies intake requests locally. Use `yarn dev-server --help` to list all available commands.

```bash
yarn dev-server start
```

## Step 3: Create a temporary sandbox page

Create `sandbox/test-<topic>.html`. See `sandbox/index.html` for a minimal example. Include only the elements needed to exercise the change. Always use `proxy: '/proxy'`.

```bash
cat > sandbox/test-<topic>.html << 'EOF'
<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Test <topic></title>
    <script src="/datadog-rum.js"></script>
    <script>
      DD_RUM.init({ clientToken: 'xxx', applicationId: 'xxx', proxy: '/proxy', trackUserInteractions: true })
    </script>
  </head>
  <body>
    <!-- elements needed to exercise the change -->
  </body>
</html>
EOF
```

## Step 4: Run the test flow

Get the dev server URL from `yarn dev-server status`. Clear any previous intake data, open the page, interact with it using CSS selectors, flush events by opening a new tab or reloading, then inspect the intake:

```bash
yarn dev-server intake clear
agent-browser open <dev-server-url>/test-<topic>.html
agent-browser click '#...'
agent-browser tab new
yarn dev-server intake <selector> | jq '<field>'
```

Use `yarn dev-server intake --help` to find the right selector.

## Step 5: Verify the output matches expectations, then present the test instructions

Output a self-contained bash snippet with the exact commands run and the expected output. This goes directly into the PR "Test instructions" section.

## Step 6: Clean up

```bash
yarn dev-server stop
rm sandbox/test-<topic>.html
```


================================================
FILE: .cursor/rules/test-driven-development.mdc
================================================
---
description: Standards for Test-Driven Development in the Browser SDK project
globs:
tags:
  - jasmine
  - karma
alwaysApply: true
---

# Test-Driven Development (TDD) Rule

## 1. RED-GREEN-REFACTOR Cycle

**ALWAYS follow this sequence:**
1. 🔴 **RED**: Write failing test first
2. 🟢 **GREEN**: Write minimal code to make test pass
3. 🔵 **REFACTOR**: Improve code while keeping tests green

## 2. Spec First, Code Second

**Before writing ANY implementation:**
```bash
# Check for existing spec file
ls packages/some-package/src/path/to/feature.spec.ts

# If missing, create spec file first
touch packages/some-package/src/path/to/feature.spec.ts
```

**Spec file must exist BEFORE implementation file**

## 3. Spec Structure (Jasmine/Karma)

```typescript
describe('FeatureName', () => {
// Setup variables
let feature: FeatureType
let mockDependency: MockType

beforeEach(() => {
    // Setup for each test
    mockDependency = jasmine.createSpy()
    feature = new FeatureName(mockDependency)

    // Use registerCleanupTask for cleanup
    registerCleanupTask(() => {
    feature.dispose()
    })
})

describe('when condition', () => {
    it('should behave correctly', () => {
    // Arrange
    const input = 'test-input'

    // Act
    const result = feature.process(input)

    // Assert
    expect(result).toBe(expectedOutput)
    expect(mockDependency).toHaveBeenCalledWith(input)
    })

    it('should handle edge cases', () => {
    // Test edge cases, errors, boundaries
    })
})
})
```

## 4. Implementation Process

**Step-by-step workflow:**

1. **Analyze Requirements**
    - Understand the feature/bug
    - Identify acceptance criteria
    - Consider edge cases

2. **Create/Review Spec**

3. **Run Tests (Should Fail)**
    ```bash
    yarn test:unit
    # Verify test fails for the right reason
    ```

4. **Implement Minimal Code**

5. **Run Tests (Should Pass)**
    ```bash
    yarn test:unit
    # Verify test passes
    ```

6. **Refactor & Add More Tests**
    - Improve implementation
    - Add edge case tests
    - Ensure all tests still pass

## 5. Browser SDK Specific Patterns

**Use established test utilities:**
[unit-test.mdc](mdc:.cursor/rules/unit-test.mdc)

**Follow co-location pattern:**
```
src/
├── domain/
│   ├── feature.ts          ← Implementation
│   ├── feature.spec.ts     ← Tests (co-located)
│   └── anotherFeature.ts
```

## 8. Error Prevention Rules

**❌ NEVER do this:**
- Write implementation without tests
- Skip edge case testing
- Leave failing tests
- Forget cleanup tasks
- Use real timers in tests
- Test multiple behaviors in one test

**✅ ALWAYS do this:**
- Write test first
- Use `registerCleanupTask` for cleanup
- Mock external dependencies
- Test both success and failure paths
- Use descriptive test names
- Follow existing patterns in codebase

Remember: **Tests are documentation**. Write them as if explaining the feature to a new team member.


================================================
FILE: .cursor/rules/unit-test-best-practices.mdc
================================================
---
description: 
globs: **/*.spec.ts
alwaysApply: false
---
## Running Unit Tests

### Basic Commands

- **Run all unit tests**: `yarn test:unit`
- **Run a specific spec file**: `yarn test:unit --spec <file-path>`
- **Focus on specific tests**: Prepend `f` to `describe` and `it` (e.g., `fdescribe`, `fit`)

### Examples

#### Run All Tests
```bash
yarn test:unit
```

#### Run Single File
```bash
# Full path
yarn test:unit --spec packages/core/src/browser/addEventListener.spec.ts

# Pattern matching (if filename is unique)
yarn test:unit --spec "packages/**/addEventListener.spec.ts"

# Multiple files with wildcards
yarn test:unit --spec "packages/core/**/browser/*.spec.ts"
```

#### Focus on Specific Tests
```typescript
// Run only this describe block
fdescribe('addEventListener', () => {
  // All tests in this block will run
  it('should add event listener', () => {})
  it('should remove event listener', () => {})
})

// Run only this single test
describe('addEventListener', () => {
  fit('should add event listener', () => {
    // Only this test will run
  })

  it('should remove event listener', () => {
    // This test will be skipped
  })
})
```

#### Test observable/callback cleanup
- **Subscription Management**: Testing that event subscriptions are properly cleaned up
- **DOM Event Cleanup**: Ensuring event listeners are removed from DOM elements
- **Timer Cleanup**: Verifying that intervals and timeouts are cleared
- **Async Operation Cancellation**: Testing that pending promises/callbacks are cancelled
- **Observable**: Ensuring observers are unsubscribed and streams are completed
- **Memory Leak Detection**: Patterns for detecting memory leaks in tests

## Debugging Flaky Tests

```bash
# 1. Check test output for randomization seed
yarn test:unit
# Look for: "Randomized with seed 65781"

# 2. Set seed in karma configuration
# Edit test/unit/karma.base.conf.js:
module.exports = {
  // ... other config
  client: {
    jasmine: {
      // ... other jasmine config
      seed: 65781  // Use the seed from step 1
    }
  }
}

# 3. Run tests with the same order
yarn test:unit

# 4. Remove seed after debugging
```

### File Organization
- **Co-location**: Test files use `.spec.ts` extension and are placed next to source files
- **Naming pattern**: `sourceFile.ts` → `sourceFile.spec.ts`
- **Auto-discovery**: Tests are found via glob: `packages/*/@(src|test)/**/*.spec.@(ts|tsx)`

## Common Anti-Patterns to Avoid

### ❌ Don't Do This

```typescript
// DON'T: Use afterEach for cleanup - may not run if test fails
afterEach(() => {
  subscription.unsubscribe()  // Might not execute
  element.remove()           // Memory leak potential
})

// DON'T: Create DOM manually
it('should test DOM interaction', () => {
  const element = document.createElement('div')
  document.body.appendChild(element)
  // Missing cleanup - memory leak!
  // use appendElement helper!
})

// DON'T: Use real timers - makes tests slow and flaky
it('should handle delayed action', (done) => {
  setTimeout(() => {
    expect(something).toBeTruthy()
    done()
  }, 1000) // Real 1-second delay!
})

// DON'T: Test multiple unrelated behaviors
it('should do everything', () => {
  // Setup user
  const user = createUser()
  expect(user.id).toBeDefined()

  // Test login
  user.login()
  expect(user.isLoggedIn).toBeTruthy()

  // Test permissions
  expect(user.hasPermission('admin')).toBeFalsy()

  // Test logout
  user.logout()
  expect(user.isLoggedIn).toBeFalsy()
  // Hard to debug when one part fails!
})

// DON'T: Use vague test names
it('should work', () => {
  // What should work? How?
})

it('should test the function', () => {
  // Which function? What aspect?
})
```

### ✅ Do This Instead

```typescript
// DO: Use registerCleanupTask for reliable cleanup
beforeEach(() => {
  const subscription = observable.subscribe(handler)
  registerCleanupTask(() => subscription.unsubscribe())

  const element = document.createElement('div')
  document.body.appendChild(element)
  registerCleanupTask(() => element.parentNode?.removeChild(element))
})

// DO: use existing helpers
  it('should add DOM with appendElement helper', () => {
  appendElement('<input type="checkbox" id="test-checkbox" />')
  const label = appendElement('<label for="test-checkbox">Check me</label>')
})

// DO: Use mocked clock for time-based tests
beforeEach(() => {
  clock = mockClock()
})
it('should handle delayed operations', () => {
  const callback = jasmine.createSpy()
  setTimeout(callback, 1000)

  clock.tick(1000) // Instant!
  expect(callback).toHaveBeenCalled()
})

// DO: One focused assertion per test
describe('User', () => {
  it('should generate unique ID on creation', () => {
    const user = createUser()
    expect(user.id).toMatch(/^user-\d+$/)
  })

  it('should start in logged-out state', () => {
    const user = createUser()
    expect(user.isLoggedIn).toBeFalsy()
  })

  it('should allow login with valid credentials', () => {
    const user = createUser()
    user.login('valid@email.com', 'password')
    expect(user.isLoggedIn).toBeTruthy()
  })

  it('should deny admin permissions to regular user', () => {
    const user = createUser()
    expect(user.hasPermission('admin')).toBeFalsy()
  })
})

// DO: Use descriptive, specific test names
it('should generate SHA-256 hash for user password', () => {
  // Clear what's being tested
})

it('should throw ValidationError when email format is invalid', () => {
  // Clear behavior and expected outcome
})
```


================================================
FILE: .env.example
================================================
# BROWSERSTACK CREDENTIALS
BS_USERNAME=xxx
BS_ACCESS_KEY=xxx


================================================
FILE: .github/CODEOWNERS
================================================
# Order is important, the last matching pattern takes the most precedence.

# Default
*    @Datadog/rum-browser

# Global
packages/rum/src/domain/record/**               @Datadog/rum-browser @Datadog/session-replay-sdk
packages/rum/src/domain/segmentCollection/**    @Datadog/rum-browser @Datadog/session-replay-sdk
packages/rum/src/domain/*.ts                    @Datadog/rum-browser @Datadog/session-replay-sdk
packages/rum/test/record/**                     @Datadog/rum-browser @Datadog/session-replay-sdk
test/e2e/scenario/recorder/**                   @Datadog/rum-browser @Datadog/session-replay-sdk

# Docs
/README.md    @Datadog/rum-browser @DataDog/documentation


================================================
FILE: .github/ISSUE_TEMPLATE/bug_report.md
================================================
---
name: Bug report
about: Create a report to help us improve
title: "\U0001F41B My bug title"
labels: bug
assignees: ''
---

<!-- Guidelines -->
<!-- Please check if an issue does not exist already for it: https://github.com/DataDog/browser-sdk/issues -->
<!-- Please check if the issue happens with latest version -->

**Describe the bug**
A clear and concise description of what the bug is and on which product (`rum`, `logs`).

**To Reproduce**
Steps to reproduce the behavior:

1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.


================================================
FILE: .github/ISSUE_TEMPLATE/feature_request.md
================================================
---
name: Feature request
about: Suggest an idea for this project
title: "\U0001F4A1 My feature title"
labels: enhancement
assignees: ''
---

Please contact [support](https://www.datadoghq.com/support/) to open a feature request.


================================================
FILE: .github/ISSUE_TEMPLATE/support-needed.md
================================================
---
name: Support needed
about: Request some support related to this project
title: "\U0001F64F My support need"
labels: ''
assignees: ''
---

<!-- Guidelines -->
<!-- Please check if an issue does not exist already for it: https://github.com/DataDog/browser-sdk/issues -->
<!-- Please check if the issue happens with latest version -->

**What are you trying to achieve and what is your issue? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.


================================================
FILE: .github/PULL_REQUEST_TEMPLATE.md
================================================
## Motivation

<!-- Why are you making this change, what problem does it solve? Include links to relevant tickets. -->

## Changes

<!-- What does this change exactly? Who will be affected? Include relevant screenshots, videos, links. Please highlight all the changes that you are not sure about (ex: AI agent generated) -->

## Test instructions

<!-- How can the reviewer test this change? Include relevant steps to reproduce the issue, if any. -->

## Checklist

<!-- By submitting this test, you confirm the following: -->

- [ ] Tested locally
- [ ] Tested on staging
- [ ] Added unit tests for this change.
- [ ] Added e2e/integration tests for this change.
- [ ] Updated documentation and/or relevant AGENTS.md file

<!-- Also, please read the contribution guidelines: https://github.com/DataDog/browser-sdk/blob/main/CONTRIBUTING.md -->


================================================
FILE: .github/chainguard/self.gitlab.pull_request.sts.yaml
================================================
issuer: https://gitlab.ddbuild.io

subject_pattern: 'project_path:DataDog/browser-sdk:ref_type:branch:ref:main'

claim_pattern:
  project_path: 'DataDog/browser-sdk'
  ref_type: 'branch'
  ref: 'main'

permissions:
  pull_requests: write


================================================
FILE: .github/chainguard/self.gitlab.read.sts.yaml
================================================
issuer: https://gitlab.ddbuild.io

subject_pattern: 'project_path:DataDog/browser-sdk:.*'

claim_pattern:
  project_path: 'DataDog/browser-sdk'

permissions:
  contents: read


================================================
FILE: .github/chainguard/self.gitlab.release.sts.yaml
================================================
issuer: https://gitlab.ddbuild.io

subject_pattern: 'project_path:DataDog/browser-sdk:ref_type:tag.*'

claim_pattern:
  project_path: 'DataDog/browser-sdk'
  ref_type: 'tag'

permissions:
  contents: write


================================================
FILE: .github/codeql-config.yml
================================================
name: 'CodeQL config'

paths:
  - packages/core/src
  - packages/logs/src
  - packages/rum/src
  - packages/rum-core/src
  - packages/rum-slim/src
  - packages/worker/src
paths-ignore:
  - '**/*.spec.ts'


================================================
FILE: .github/dependabot.yml
================================================
# Note: While we mainly use Renovate, Dependabot is used for security updates

version: 2
updates:
  - package-ecosystem: github-actions
    directory: /
    schedule:
      interval: 'daily'
    open-pull-requests-limit: 0
    commit-message:
      prefix: '👷'

  - package-ecosystem: npm
    directory: /
    schedule:
      interval: 'daily'
    open-pull-requests-limit: 0
    commit-message:
      prefix: '👷'
    ignore:
      # update karma-webpack: RUM-3130
      - dependency-name: 'karma-webpack'


================================================
FILE: .github/workflows/changelog-to-confluence.yml
================================================
name: Publish Changelog to Confluence
permissions:
  contents: read
on:
  push:
    tags:
      - 'v*.*.*' # Matches version tags like v1.0.0, v6.7.0, etc.
jobs:
  publish:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

      - name: Prepare Only Changelog
        run: |
          mkdir -p publish_folder
          cp CHANGELOG.md publish_folder/browser-sdk-changelog.md
          echo "Publishing only CHANGELOG.md"

      - name: Publish Markdown to Confluence
        uses: markdown-confluence/publish-action@7767a0a7f438bb1497ee7ffd7d3d685b81dfe700 # v5
        with:
          confluenceBaseUrl: ${{ secrets.DATADOG_CONFLUENCE_BASE_URL }}
          confluenceParentId: ${{ secrets.CONFLUENCE_PARENT_ID }}
          atlassianUserName: ${{ secrets.CONFLUENCE_ROBOT_RUM_EMAIL }}
          atlassianApiToken: ${{ secrets.CONFLUENCE_ROBOT_RUM_API_KEY }}
          contentRoot: '.'
          folderToPublish: 'publish_folder'


================================================
FILE: .github/workflows/cla.yml
================================================
name: 'CLA Assistant'
on:
  issue_comment:
    types: [created]
  pull_request_target:
    types: [opened, closed, synchronize]
  merge_group:
    types: [checks_requested]

permissions:
  contents: read
  pull-requests: write
  id-token: write # Needed to federate tokens.
  actions: write

jobs:
  CLAAssistant:
    runs-on: ubuntu-latest
    steps:
      - name: CLA already verified on PR
        if: github.event_name == 'merge_group'
        run: echo "CLA verification not needed for merge queue - already checked on PR"

      - uses: DataDog/dd-octo-sts-action@96a25462dbcb10ebf0bfd6e2ccc917d2ab235b9a # v1.0.4
        if: github.event_name != 'merge_group'
        id: octo-sts
        with:
          scope: DataDog/cla-signatures
          policy: self.write-signatures-browser-sdk

      - name: 'CLA Assistant'
        if: github.event_name != 'merge_group' && ((github.event.comment.body == 'recheck' || github.event.comment.body == 'I have read the CLA Document and I hereby sign the CLA') || github.event_name == 'pull_request_target')
        uses: contributor-assistant/github-action@ca4a40a7d1004f18d9960b404b97e5f30a505a08 # v2.6.1
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          PERSONAL_ACCESS_TOKEN: ${{ steps.octo-sts.outputs.token }}
        with:
          path-to-signatures: 'browser-sdk.json'
          path-to-document: 'https://gist.github.com/bits-bot/55bdc97a4fdad52d97feb4d6c3d1d618' # Datadog CLA Document
          branch: 'browser-sdk'
          remote-repository-name: cla-signatures
          remote-organization-name: DataDog
          allowlist: renovate,renovate[bot],campaigner-prod,gh-worker-dd-devflow-*,dd-devflow[bot],ci.browser-sdk

          # the followings are the optional inputs - If the optional inputs are not given, then default values will be taken
          #allowlist: user1,bot*
          #create-file-commit-message: 'For example: Creating file for storing CLA Signatures'
          #signed-commit-message: 'For example: $contributorName has signed the CLA in $owner/$repo#$pullRequestNo'
          #custom-notsigned-prcomment: 'pull request comment with Introductory message to ask new contributors to sign'
          #custom-pr-sign-comment: 'The signature to be committed in order to sign the CLA'
          #custom-allsigned-prcomment: 'pull request comment when all contributors has signed, defaults to **CLA Assistant Lite bot** All Contributors have signed the CLA.'
          #lock-pullrequest-aftermerge: false - if you don't want this bot to automatically lock the pull request after merging (default - true)


================================================
FILE: .github/workflows/codeql-analysis.yml
================================================
name: 'CodeQL'

on:
  push:
    branches: ['main']
  pull_request:
    branches: ['main']

jobs:
  analyze:
    name: Analyze
    runs-on: ubuntu-latest
    permissions:
      actions: read
      contents: read
      security-events: write

    steps:
      - name: Checkout repository
        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

      - name: Initialize CodeQL
        uses: github/codeql-action/init@c10b8064de6f491fea524254123dbe5e09572f13 # v4.35.1
        with:
          languages: javascript
          config-file: .github/codeql-config.yml

      - name: Perform CodeQL Analysis
        uses: github/codeql-action/analyze@c10b8064de6f491fea524254123dbe5e09572f13 # v4.35.1


================================================
FILE: .github/workflows/deploy-generated-docs.yml
================================================
name: Deploy docs on tag

on:
  push:
    tags:
      - 'v*.*.*'

  workflow_dispatch:

permissions:
  contents: read
  pages: write
  id-token: write

concurrency:
  group: 'pages'
  cancel-in-progress: false

jobs:
  deploy:
    environment:
      name: github-pages
      url: ${{ steps.deployment.outputs.page_url }}
    runs-on: ubuntu-latest

    steps:
      - name: Check out code at tag
        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
        with:
          fetch-depth: 0

      - name: Setup Node.js
        uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
        with:
          node-version: '23'
          cache: 'yarn'

      - name: Install dependencies
        run: yarn install --immutable

      - name: Build SDK
        run: yarn build

      - name: Build documentation
        run: yarn build:docs:html

      - name: Setup Pages
        uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0

      - name: Upload artifact
        uses: actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b # v4.0.0
        with:
          path: './generated-docs'

      - name: Deploy to GitHub Pages
        id: deployment
        uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5


================================================
FILE: .github/workflows/shadow-review.yml
================================================
# shadow-review.yml — Shadow Reviewer workflow
# Source: https://github.com/DataDog/rum-ai-toolkit
name: Shadow Review

on:
  pull_request:
    types: [opened, synchronize, ready_for_review]

jobs:
  # Mirror PR to shadow fork (review + post-close disabled for now)
  # Fork sync not needed — each shadow PR targets its own base ref
  shadow-mirror:
    if: >-
      github.event_name == 'pull_request'
      && github.event.pull_request.draft != true
      && github.event.pull_request.user.type != 'Bot'
    runs-on: ubuntu-latest
    steps:
      - name: Mirror PR to shadow fork
        env:
          GITHUB_TOKEN: ${{ github.token }}
          SHADOW_FORK_TOKEN: ${{ secrets.SHADOW_FORK_TOKEN }}
          SOURCE_REPO: ${{ github.repository }}
          SHADOW_FORK: ${{ vars.SHADOW_FORK }}
          PR_NUMBER: ${{ github.event.pull_request.number }}
          PR_HEAD_SHA: ${{ github.event.pull_request.head.sha }}
          PR_BASE_REF: ${{ github.event.pull_request.base.ref }}
          PR_TITLE: ${{ github.event.pull_request.title }}
          PR_BODY: ${{ github.event.pull_request.body }}
        run: |
          set -euo pipefail
          # Mask tokens in trace output
          echo "::add-mask::${SHADOW_FORK_TOKEN}"
          echo "::add-mask::${GITHUB_TOKEN}"
          set -x

          WORK_DIR=$(mktemp -d)
          trap 'rm -rf "${WORK_DIR}"' EXIT

          echo "=== Pre-flight checks ==="
          echo "SOURCE_REPO: ${SOURCE_REPO}"
          echo "SHADOW_FORK: ${SHADOW_FORK}"
          echo "PR_NUMBER: ${PR_NUMBER}"
          echo "PR_HEAD_SHA: ${PR_HEAD_SHA}"
          echo "PR_BASE_REF: ${PR_BASE_REF}"

          # Verify shadow fork access (using shadow fork token)
          echo "Verifying access to shadow fork..."
          if ! GITHUB_TOKEN="${SHADOW_FORK_TOKEN}" gh repo view "${SHADOW_FORK}" > /dev/null 2>&1; then
            echo "ERROR: Cannot access shadow fork ${SHADOW_FORK}"
            echo "Ensure SHADOW_FORK_TOKEN has repo access and SHADOW_FORK variable is set correctly"
            exit 1
          fi
          echo "Shadow fork accessible"

          # Verify source repo access (using default token)
          echo "Verifying access to source repo..."
          if ! gh repo view "${SOURCE_REPO}" > /dev/null 2>&1; then
            echo "ERROR: Cannot access source repo ${SOURCE_REPO}"
            exit 1
          fi
          echo "Source repo accessible"

          echo "=== Mirroring PR #${PR_NUMBER} (${PR_HEAD_SHA}) to ${SHADOW_FORK} ==="

          # Determine version number by counting existing shadow branches (exclude -base)
          VERSION=$(git ls-remote --heads "https://x-access-token:${SHADOW_FORK_TOKEN}@github.com/${SHADOW_FORK}.git" "shadow/${PR_NUMBER}/v*" 2>/dev/null \
            | { grep -v '\-base$' || true; } | wc -l | tr -d ' ')
          VERSION=$((VERSION + 1))
          echo "Version: v${VERSION}"

          SHADOW_BRANCH="shadow/${PR_NUMBER}/v${VERSION}"
          BASE_BRANCH="shadow/${PR_NUMBER}/v${VERSION}-base"

          # Clone source repo and fetch PR ref
          echo "Cloning source repo..."
          git clone --no-checkout "https://x-access-token:${GITHUB_TOKEN}@github.com/${SOURCE_REPO}.git" "${WORK_DIR}/repo"
          cd "${WORK_DIR}/repo"
          echo "Fetching PR head..."
          git fetch origin "pull/${PR_NUMBER}/head:pr-head"
          echo "Fetching base ref..."
          git fetch origin "${PR_BASE_REF}:base-ref"

          # Compute merge base
          MERGE_BASE=$(git merge-base pr-head base-ref)
          echo "Merge base: ${MERGE_BASE}"

          # Push base and head branches to shadow fork
          git remote add shadow "https://x-access-token:${SHADOW_FORK_TOKEN}@github.com/${SHADOW_FORK}.git"

          echo "Pushing base branch..."
          git push shadow "${MERGE_BASE}:refs/heads/${BASE_BRANCH}" 2>&1 || {
            echo "Push failed — retrying with incremented version..."
            VERSION=$((VERSION + 1))
            SHADOW_BRANCH="shadow/${PR_NUMBER}/v${VERSION}"
            BASE_BRANCH="shadow/${PR_NUMBER}/v${VERSION}-base"
            git push shadow "${MERGE_BASE}:refs/heads/${BASE_BRANCH}" 2>&1
          }

          echo "Pushing head branch..."
          git push shadow "${PR_HEAD_SHA}:refs/heads/${SHADOW_BRANCH}" 2>&1

          # Create shadow PR
          # Escape #123-style references to prevent GitHub cross-linking
          ESCAPED_PR_BODY=$(echo "${PR_BODY}" | sed -E 's/#([0-9]+)/`#\1`/g')

          echo "Creating shadow PR..."
          SHADOW_PR_URL=$(GITHUB_TOKEN="${SHADOW_FORK_TOKEN}" gh pr create \
            --repo "${SHADOW_FORK}" \
            --base "${BASE_BRANCH}" \
            --head "${SHADOW_BRANCH}" \
            --title "Shadow: ${PR_TITLE} (v${VERSION})" \
            --body "## Shadow Review — PR \`#${PR_NUMBER}\` v${VERSION}

          **Source:** \`${SOURCE_REPO}#${PR_NUMBER}\`
          **Commit:** \`${PR_HEAD_SHA}\`
          **Timestamp:** $(date -u +%Y-%m-%dT%H:%M:%SZ)

          ---

          ## Original PR Description

          ${ESCAPED_PR_BODY}")

          echo "Shadow PR created: ${SHADOW_PR_URL}"


================================================
FILE: .github/workflows/stale.yml
================================================
name: 'Automatically close stale issues'

on:
  schedule:
    # Runs every day at 8:00 AM CET
    - cron: '0 7 * * *'
  workflow_dispatch:

permissions:
  issues: write
  pull-requests: write

jobs:
  stale:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/stale@b5d41d4e1d5dceea10e7104786b73624c18a190f # v10.2.0
        with:
          # See documentation at https://github.com/actions/stale?tab=readme-ov-file#all-options
          repo-token: ${{ secrets.GITHUB_TOKEN }}

          stale-issue-message: |
            This issue has been automatically marked as stale because it has not had recent activity and has the `need-info` label.

            It will be closed if no further activity occurs within 3 days.

          stale-pr-message: |
            This pull request has been automatically marked as stale because it has not had recent activity and has the `need-info` label.

            It will be closed if no further activity occurs within 3 days.

          stale-issue-label: 'stale'
          close-issue-label: 'automatically closed'
          only-labels: 'need-info'
          days-before-issue-stale: 14
          days-before-issue-close: 3


================================================
FILE: .gitignore
================================================
bundle
cjs
esm
node_modules
coverage
tunnel.log
local.log
.dev-server/
specs.log
/test-report/
browserstack.err
package.tgz
generated-docs/
*.tsbuildinfo
/developer-extension/dist
/developer-extension/.wxt
.env*
!.env.example
.rum-ai-toolkit/

# https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored
.pnp.*
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/sdks
!.yarn/versions
/blob-report/
/playwright/.cache/
test-results/
playwright-report/
.vscode

# Claude Code local files
*.local.md
.claude/settings.local.json


================================================
FILE: .gitlab/deploy-auto.yml
================================================
stages:
  - pre-notify
  - deploy
  - post-notify

.base-configuration:
  tags:
    - 'arch:amd64'
  image: $CI_IMAGE
  id_tokens:
    DDOCTOSTS_ID_TOKEN:
      aud: dd-octo-sts

.deploy-prod:
  stage: deploy
  script:
    - export BUILD_MODE=release
    - VERSION=$(node -p -e "require('./package.json').version")
    - yarn
    - yarn build:bundle
    - node ./scripts/deploy/deploy-prod-dc.ts v${VERSION%%.*} $DATACENTER --check-telemetry-errors

step-1_deploy-prod-minor-dcs:
  when: manual
  allow_failure: false
  extends:
    - .base-configuration
    - .deploy-prod
  variables:
    DATACENTER: minor-dcs

step-2_deploy-prod-private-regions:
  needs:
    - step-1_deploy-prod-minor-dcs
  extends:
    - .base-configuration
    - .deploy-prod
  variables:
    DATACENTER: private-regions

step-3_deploy-prod-eu1:
  needs:
    - step-2_deploy-prod-private-regions
  extends:
    - .base-configuration
    - .deploy-prod
  variables:
    DATACENTER: eu1

step-4_deploy-prod-us1:
  needs:
    - step-3_deploy-prod-eu1
  extends:
    - .base-configuration
    - .deploy-prod
  variables:
    DATACENTER: us1

step-5_deploy-prod-gov:
  needs:
    - step-4_deploy-prod-us1
  extends:
    - .base-configuration
    - .deploy-prod
  variables:
    DATACENTER: gov

step-6_publish-npm:
  needs:
    - step-5_deploy-prod-gov
  stage: deploy
  extends:
    - .base-configuration
  allow_failure: false
  script:
    - yarn
    - node ./scripts/deploy/publish-npm.ts

step-7_publish-developer-extension:
  needs:
    - step-6_publish-npm
  stage: deploy
  extends:
    - .base-configuration
  allow_failure: false
  script:
    - yarn
    - node ./scripts/deploy/publish-developer-extension.ts

step-8_create-github-release:
  needs:
    - step-7_publish-developer-extension
  stage: deploy
  extends:
    - .base-configuration
  allow_failure: false
  script:
    - yarn
    - node scripts/release/create-github-release.ts

########################################################################################################################
# Notify
########################################################################################################################

include: 'https://gitlab-templates.ddbuild.io/slack-notifier/v3-sdm/template.yml'

.prepare_notification:
  extends: .slack-notifier-base
  before_script:
    - COMMIT_MESSAGE=`git show-branch --no-name HEAD`
    - BUILD_URL="$CI_PROJECT_URL/pipelines/$CI_PIPELINE_ID"
    - COMMIT_URL="$CI_PROJECT_URL/commits/$CI_COMMIT_SHA"

notify-deploy-ready:
  stage: pre-notify
  extends:
    - .prepare_notification
  script:
    - 'MESSAGE_TEXT=":i: $CI_PROJECT_NAME <$BUILD_URL|$COMMIT_MESSAGE> ready to be deployed *automatically* to :datadog:"'
    - postmessage "#browser-sdk-deploy" "$MESSAGE_TEXT"

notify-deploy-success:
  stage: post-notify
  needs:
    - step-8_create-github-release
  extends:
    - .prepare_notification
  script:
    - 'MESSAGE_TEXT=":rocket: $CI_PROJECT_NAME <$COMMIT_URL|$COMMIT_MESSAGE> *automatically* deployed to :earth_americas:."'
    - postmessage "#browser-sdk-deploy" "$MESSAGE_TEXT"
    - postmessage "#rum-browser-sdk-ops" "$MESSAGE_TEXT"

notify-deploy-failure:
  stage: post-notify
  extends:
    - .prepare_notification
  when: on_failure
  script:
    - 'MESSAGE_TEXT=":host-red: $CI_PROJECT_NAME *automatic* deployment of <$BUILD_URL|$COMMIT_MESSAGE> failed."'
    - postmessage "#browser-sdk-deploy" "$MESSAGE_TEXT"


================================================
FILE: .gitlab/deploy-manual.yml
================================================
stages:
  - pre-notify
  - deploy
  - post-notify

.base-configuration:
  tags:
    - 'arch:amd64'
  image: $CI_IMAGE
  id_tokens:
    DDOCTOSTS_ID_TOKEN:
      aud: dd-octo-sts

.deploy-prod:
  stage: deploy
  when: manual
  allow_failure: false
  script:
    - export BUILD_MODE=release
    - VERSION=$(node -p -e "require('./package.json').version")
    - yarn
    - yarn build:bundle
    - node ./scripts/deploy/deploy-prod-dc.ts v${VERSION%%.*} $DATACENTER --no-check-telemetry-errors

step-1_deploy-prod-minor-dcs:
  extends:
    - .base-configuration
    - .deploy-prod
  variables:
    DATACENTER: minor-dcs

step-2_deploy-prod-private-regions:
  extends:
    - .base-configuration
    - .deploy-prod
  variables:
    DATACENTER: private-regions

step-3_deploy-prod-eu1:
  extends:
    - .base-configuration
    - .deploy-prod
  variables:
    DATACENTER: eu1

step-4_deploy-prod-us1:
  extends:
    - .base-configuration
    - .deploy-prod
  variables:
    DATACENTER: us1

step-5_deploy-prod-gov:
  extends:
    - .base-configuration
    - .deploy-prod
  variables:
    DATACENTER: gov

step-6_publish-npm:
  stage: deploy
  extends:
    - .base-configuration
  when: manual
  allow_failure: false
  script:
    - yarn
    - node ./scripts/deploy/publish-npm.ts

step-7_publish-developer-extension:
  stage: deploy
  extends:
    - .base-configuration
  when: manual
  allow_failure: false
  script:
    - yarn
    - node ./scripts/deploy/publish-developer-extension.ts

step-8_create-github-release:
  stage: deploy
  extends:
    - .base-configuration
  when: manual
  allow_failure: false
  script:
    - yarn
    - node scripts/release/create-github-release.ts

# This step is used to deploy the SDK to a new datacenter.
# the `DATACENTER` variable needs to be provided as an argument when starting the manual job
optional_step-deploy-to-new-datacenter:
  extends:
    - .base-configuration
    - .deploy-prod

########################################################################################################################
# Notify
########################################################################################################################

include: 'https://gitlab-templates.ddbuild.io/slack-notifier/v3-sdm/template.yml'

.prepare_notification:
  extends: .slack-notifier-base
  before_script:
    - COMMIT_MESSAGE=`git show-branch --no-name HEAD`
    - BUILD_URL="$CI_PROJECT_URL/pipelines/$CI_PIPELINE_ID"
    - COMMIT_URL="$CI_PROJECT_URL/commits/$CI_COMMIT_SHA"

notify-deploy-ready:
  stage: pre-notify
  extends:
    - .prepare_notification
  script:
    - 'MESSAGE_TEXT=":i: $CI_PROJECT_NAME <$BUILD_URL|$COMMIT_MESSAGE> ready to be deployed *manually* to :datadog:"'
    - postmessage "#browser-sdk-deploy" "$MESSAGE_TEXT"

notify-deploy-success:
  stage: post-notify
  extends:
    - .prepare_notification
  script:
    - 'MESSAGE_TEXT=":rocket: $CI_PROJECT_NAME <$COMMIT_URL|$COMMIT_MESSAGE> *manually* deployed to :earth_americas:."'
    - postmessage "#browser-sdk-deploy" "$MESSAGE_TEXT"
    - postmessage "#rum-browser-sdk-ops" "$MESSAGE_TEXT"

notify-deploy-failure:
  stage: post-notify
  extends:
    - .prepare_notification
  when: on_failure
  script:
    - 'MESSAGE_TEXT=":host-red: $CI_PROJECT_NAME *manual* deployment of <$BUILD_URL|$COMMIT_MESSAGE> failed."'
    - postmessage "#browser-sdk-deploy" "$MESSAGE_TEXT"


================================================
FILE: .gitlab-ci.yml
================================================
variables:
  CURRENT_STAGING: staging-17
  APP: 'browser-sdk'
  CURRENT_CI_IMAGE: 103
  BUILD_STABLE_REGISTRY: 'registry.ddbuild.io'
  CI_IMAGE: '$BUILD_STABLE_REGISTRY/ci/$APP:$CURRENT_CI_IMAGE'
  GIT_REPOSITORY: 'git@github.com:DataDog/browser-sdk.git'
  MAIN_BRANCH: 'main'
  NEXT_MAJOR_BRANCH: 'v7'
  CHROME_PACKAGE_VERSION: 146.0.7680.71-1
  FF_TIMESTAMPS: 'true' # Enable timestamps for gitlab-ci logs

cache:
  key:
    files:
      - yarn.lock
  paths:
    - .yarn/cache

stages:
  - task
  - ci-image
  - test
  - after-tests
  - browserstack
  - pre-deploy
  - deploy:canary
  - notify:canary
  - deploy
  - notify

.base-configuration:
  tags:
    - 'arch:amd64'
  image: $CI_IMAGE
  id_tokens:
    DDOCTOSTS_ID_TOKEN:
      aud: dd-octo-sts
  retry:
    max: 2
    when:
      - runner_system_failure

########################################################################################################################
# Branch selection helpers
########################################################################################################################

.test-allowed-branches:
  except:
    refs:
      - /^release\//
      - schedules

.bs-allowed-branches:
  except:
    refs:
      - main
      - /^mq-working-branch-staging-[0-9]+-[a-z0-9]+$/
      - /^staging-[0-9]+$/
      - /^release\//
      - schedules
    variables:
      - $CI_COMMIT_REF_NAME == $NEXT_MAJOR_BRANCH

.feature-branches:
  except:
    refs:
      - main
      - tags
      - /^staging-[0-9]+$/
      - /^release\//
      - schedules
    variables:
      - $CI_COMMIT_REF_NAME == $NEXT_MAJOR_BRANCH

.next-major-branch:
  only:
    variables:
      - $CI_COMMIT_REF_NAME == $NEXT_MAJOR_BRANCH

.staging:
  only:
    variables:
      - $CI_COMMIT_REF_NAME == $CURRENT_STAGING

.main:
  only:
    refs:
      - main
  except:
    refs:
      - schedules
    variables:
      - $CI_COMMIT_TITLE =~ /^v[0-9.]+/

.tags:
  only:
    refs:
      - tags

###########################################################################################################################
# Resource allocation
###########################################################################################################################
.resource-allocation-4-cpus:
  variables:
    WORKERS: 2
    KUBERNETES_CPU_REQUEST: 4
    KUBERNETES_CPU_LIMIT: 4
    KUBERNETES_MEMORY_REQUEST: 16Gi
    KUBERNETES_MEMORY_LIMIT: 16Gi
    NODE_OPTIONS: '--max-old-space-size=16000'

########################################################################################################################
# CI image
########################################################################################################################

ci-image:
  stage: ci-image
  extends:
    - .base-configuration
    - .feature-branches
  when: manual
  tags: ['arch:amd64']
  image: $BUILD_STABLE_REGISTRY/images/docker:27.3.1
  id_tokens:
    DDSIGN_ID_TOKEN:
      aud: image-integrity
  script:
    - METADATA_FILE=$(mktemp)
    - docker buildx build --platform linux/amd64 --build-arg CHROME_PACKAGE_VERSION=$CHROME_PACKAGE_VERSION --tag $CI_IMAGE --push --metadata-file $METADATA_FILE .
    - ddsign sign $CI_IMAGE --docker-metadata-file $METADATA_FILE

########################################################################################################################
# Tests
########################################################################################################################

format:
  extends:
    - .base-configuration
    - .test-allowed-branches
  interruptible: true
  script:
    - yarn
    - yarn format

woke:
  extends:
    - .base-configuration
    - .test-allowed-branches
  interruptible: true
  script:
    - yarn
    - yarn woke

typecheck:
  extends:
    - .base-configuration
    - .test-allowed-branches
  interruptible: true
  script:
    - yarn
    - yarn build
    - yarn typecheck
    - scripts/cli typecheck test/apps/vanilla
    - scripts/cli typecheck test/e2e

build-and-lint:
  extends:
    - .base-configuration
    - .test-allowed-branches
  interruptible: true
  script:
    - yarn
    - yarn build
    - yarn lint
    - node scripts/check-packages.ts

test-performance:
  extends:
    - .base-configuration
    - .test-allowed-branches
  except:
    variables:
      - $CI_COMMIT_REF_NAME == $CURRENT_STAGING
  interruptible: true
  allow_failure: true
  script:
    - yarn
    - yarn build:bundle
    - node ./scripts/deploy/deploy.ts staging pull-request pull-request
    - node ./scripts/performance/index.ts

build-bundle:
  extends:
    - .base-configuration
    - .test-allowed-branches
  interruptible: true
  script:
    - yarn
    - yarn build:bundle

compatibility:
  extends:
    - .base-configuration
    - .test-allowed-branches
  interruptible: true
  script:
    - yarn
    - yarn test:compat:tsc
    - yarn test:compat:ssr

unit:
  extends:
    - .base-configuration
    - .test-allowed-branches
  interruptible: true
  artifacts:
    reports:
      junit: test-report/unit/*.xml
  script:
    - yarn
    - yarn test:unit
  after_script:
    - node ./scripts/test/export-test-result.ts unit

e2e:
  extends:
    - .base-configuration
    - .test-allowed-branches
  interruptible: true
  artifacts:
    when: always
    reports:
      junit: test-report/e2e/*.xml
  script:
    - yarn
    - FORCE_COLOR=1 yarn test:e2e:ci
  after_script:
    - node ./scripts/test/export-test-result.ts e2e

check-licenses:
  extends:
    - .base-configuration
    - .test-allowed-branches
  interruptible: true
  script:
    - yarn
    - node scripts/check-licenses.ts

check-node-version:
  extends:
    - .base-configuration
    - .test-allowed-branches
  interruptible: true
  script:
    - yarn
    - node scripts/check-node-version.ts

check-release:
  extends:
    - .base-configuration
    - .tags
  interruptible: true
  script:
    - yarn
    - BUILD_MODE=release yarn build
    - node scripts/release/check-release.ts

check-schemas:
  extends:
    - .base-configuration
    - .test-allowed-branches
  interruptible: true
  script:
    - yarn
    - node scripts/check-schemas.ts

unit-bs:
  stage: browserstack
  needs: ['unit']
  extends:
    - .base-configuration
    - .bs-allowed-branches
  interruptible: true
  resource_group: browserstack
  artifacts:
    reports:
      junit: test-report/unit-bs/*.xml
  script:
    - yarn
    - node scripts/test/ci-bs.ts test:unit
  after_script:
    - node ./scripts/test/export-test-result.ts unit-bs

e2e-bs:
  stage: browserstack
  needs: ['e2e']
  extends:
    - .base-configuration
    - .bs-allowed-branches
    - .resource-allocation-4-cpus
  interruptible: true
  resource_group: browserstack
  timeout: 35 minutes
  artifacts:
    when: always
    reports:
      junit: test-report/e2e-bs/*.xml
  script:
    - yarn
    - FORCE_COLOR=1 node scripts/test/ci-bs.ts test:e2e:ci
  after_script:
    - node ./scripts/test/export-test-result.ts e2e-bs

script-tests:
  extends:
    - .base-configuration
    - .test-allowed-branches
  interruptible: true
  script:
    - yarn
    - yarn build:bundle
    - yarn test:script
########################################################################################################################
# Deploy
########################################################################################################################

deploy-feature:
  stage: deploy
  when: manual
  variables:
    SUFFIX: 'my-feature' #/datadog-[product]-${SUFFIX}.js
  extends:
    - .base-configuration
    - .feature-branches
  script:
    - export BUILD_MODE=canary
    - yarn
    - yarn build:bundle
    - node ./scripts/deploy/deploy.ts staging $SUFFIX root

deploy-staging:
  stage: deploy
  extends:
    - .base-configuration
    - .staging
  script:
    - export BUILD_MODE=canary
    - yarn
    - yarn build:bundle
    - node ./scripts/deploy/deploy.ts staging staging root
    - node ./scripts/deploy/upload-source-maps.ts staging root

deploy-prod-canary:
  stage: deploy:canary
  extends:
    - .base-configuration
    - .main
  script:
    - export BUILD_MODE=canary
    - yarn
    - yarn build:bundle
    - node ./scripts/deploy/deploy.ts prod canary root
    - node ./scripts/deploy/upload-source-maps.ts canary root

deploy-next-major-canary:
  stage: deploy
  extends:
    - .base-configuration
    - .next-major-branch
  script:
    - export BUILD_MODE=canary
    - VERSION=$(node -p -e "require('./package.json').version")
    - yarn
    - yarn build:bundle
    - node ./scripts/deploy/deploy.ts prod v${VERSION%%.*}-canary root
    - node ./scripts/deploy/upload-source-maps.ts v${VERSION%%.*}-canary root

deploy-manual:
  stage: deploy
  extends:
    - .tags
  trigger:
    include:
      - local: .gitlab/deploy-manual.yml

deploy-auto:
  stage: deploy
  extends:
    - .tags
  trigger:
    include:
      - local: .gitlab/deploy-auto.yml

########################################################################################################################
# Notify
########################################################################################################################

include: 'https://gitlab-templates.ddbuild.io/slack-notifier/v3-sdm/template.yml'

notify-feature-branch-failure:
  extends:
    - .slack-notifier.on-failure
    - .feature-branches

.prepare_notification:
  extends: .slack-notifier-base
  before_script:
    - COMMIT_MESSAGE=`git show-branch --no-name HEAD`
    - BUILD_URL="$CI_PROJECT_URL/pipelines/$CI_PIPELINE_ID"
    - COMMIT_URL="$CI_PROJECT_URL/commits/$CI_COMMIT_SHA"

notify-staging-failure:
  extends:
    - .prepare_notification
    - .staging
  when: on_failure
  script:
    - 'MESSAGE_TEXT=":host-red: $CI_PROJECT_NAME main pipeline for <$BUILD_URL|$COMMIT_MESSAGE> failed."'
    - postmessage "#browser-sdk-deploy" "$MESSAGE_TEXT"

notify-prod-canary-success:
  stage: notify:canary
  extends:
    - .prepare_notification
    - .main
  script:
    - 'MESSAGE_TEXT=":rocket: $CI_PROJECT_NAME <$COMMIT_URL|$COMMIT_MESSAGE> deployed to :datadog:."'
    - postmessage "#browser-sdk-deploy" "$MESSAGE_TEXT"
    - postmessage "#rum-browser-sdk-ops" "$MESSAGE_TEXT"

notify-prod-canary-failure:
  stage: notify:canary
  extends:
    - .prepare_notification
    - .main
  when: on_failure
  script:
    - 'MESSAGE_TEXT=":host-red: $CI_PROJECT_NAME release pipeline <$BUILD_URL|$COMMIT_MESSAGE> failed."'
    - postmessage "#browser-sdk-deploy" "$MESSAGE_TEXT"

########################################################################################################################
# To staging CI
########################################################################################################################

staging-reset-scheduled:
  stage: task
  extends: .base-configuration
  only:
    variables:
      - $TARGET_TASK_NAME == "staging-reset-scheduled"
  before_script:
    - eval $(ssh-agent -s)
  script:
    - yarn
    - node scripts/staging-ci/staging-reset.ts
  artifacts:
    reports:
      dotenv: build.env

staging-reset-scheduled-success:
  extends: .prepare_notification
  only:
    variables:
      - $TARGET_TASK_NAME == "staging-reset-scheduled"
  script:
    - 'MESSAGE_TEXT=":white_check_mark: [*$CI_PROJECT_NAME*] Staging has been reset from *${CURRENT_STAGING}* to *${NEW_STAGING}* on pipeline <$BUILD_URL|$COMMIT_MESSAGE>."'
    - postmessage "#browser-sdk-deploy" "$MESSAGE_TEXT"
  dependencies:
    - staging-reset-scheduled

staging-reset-scheduled-failure:
  extends: .prepare_notification
  only:
    variables:
      - $TARGET_TASK_NAME == "staging-reset-scheduled"
  when: on_failure
  script:
    - 'MESSAGE_TEXT=":x: [*$CI_PROJECT_NAME*] Staging failed to reset from *${CURRENT_STAGING}* to *${NEW_STAGING}* on pipeline <$BUILD_URL|$COMMIT_MESSAGE>."'
    - postmessage "#browser-sdk-deploy" "$MESSAGE_TEXT"
  dependencies:
    - staging-reset-scheduled

merge-into-staging:
  stage: pre-deploy
  allow_failure: true
  extends:
    - .base-configuration
    - .main
  before_script:
    - eval $(ssh-agent -s)
  script:
    - yarn
    - node scripts/update-branch.ts $CURRENT_STAGING

merge-into-next-major:
  stage: pre-deploy
  allow_failure: true
  extends:
    - .base-configuration
  only:
    refs:
      - main
    variables:
      - $NEXT_MAJOR_BRANCH
  except:
    refs:
      - schedules
  before_script:
    - eval $(ssh-agent -s)
  script:
    - yarn
    - node scripts/update-branch.ts $NEXT_MAJOR_BRANCH

check-staging-merge:
  stage: test
  extends:
    - .base-configuration
    - .feature-branches
  interruptible: true
  before_script:
    - eval $(ssh-agent -s)
  script:
    - yarn
    - node scripts/staging-ci/check-staging-merge.ts

# A noop job that's used to signal to `to-staging` that it can merge to the
# staging branch, even though the pipeline is still running
tests-passed:
  stage: after-tests
  extends:
    - .base-configuration
    - .feature-branches
  interruptible: true
  script:
    - 'true'

# in after-tests to not block `to-staging` merge
check-squash-into-staging:
  stage: after-tests
  allow_failure: true
  extends:
    - .base-configuration
    - .feature-branches
  interruptible: true
  before_script:
    - eval $(ssh-agent -s)
  script:
    - yarn
    - node scripts/staging-ci/check-squash-into-staging.ts

########################################################################################################################
# Bump e2e chrome version
########################################################################################################################

bump-chrome-version-scheduled:
  stage: task
  extends: .base-configuration
  only:
    variables:
      - $TARGET_TASK_NAME == "bump-chrome-version-scheduled"
  before_script:
    - eval $(ssh-agent -s)
  script:
    - yarn
    - node scripts/test/bump-chrome-version.ts
  artifacts:
    reports:
      dotenv: build.env

bump-chrome-version-scheduled-success:
  extends: .prepare_notification
  only:
    variables:
      - $TARGET_TASK_NAME == "bump-chrome-version-scheduled"
  before_script:
    - '[ -z "$BUMP_CHROME_PULL_REQUEST_URL" ] && exit'
  script:
    - 'MESSAGE_TEXT=":chrome: [*$CI_PROJECT_NAME*] New Chrome version available on <$BUMP_CHROME_PULL_REQUEST_URL|PR>."'
    - postmessage "#browser-sdk-deploy" "$MESSAGE_TEXT"
  dependencies:
    - bump-chrome-version-scheduled

bump-chrome-version-scheduled-failure:
  extends: .prepare_notification
  only:
    variables:
      - $TARGET_TASK_NAME == "bump-chrome-version-scheduled"
  when: on_failure
  script:
    - 'MESSAGE_TEXT=":x: [*$CI_PROJECT_NAME*] Chrome version bumped failed on pipeline <$BUILD_URL|$COMMIT_MESSAGE>."'
    - postmessage "#browser-sdk-deploy" "$MESSAGE_TEXT"
  dependencies:
    - bump-chrome-version-scheduled

########################################################################################################################
# Performance benchmark
########################################################################################################################

performance-benchmark:
  stage: task
  extends: .base-configuration
  only:
    variables:
      - $TARGET_TASK_NAME == "performance-benchmark-scheduled"
  script:
    - yarn
    - yarn test:performance

########################################################################################################################
# Check expired telemetry
########################################################################################################################

check-expired-telemetry-scheduled:
  stage: task
  extends: .base-configuration
  only:
    variables:
      - $TARGET_TASK_NAME == "check-expired-telemetry"
  script:
    - yarn
    - yarn build
    - MONITOR_UNTIL_COMMENT_EXPIRED_LEVEL=error yarn lint

check-expired-telemetry-scheduled-failure:
  extends: .prepare_notification
  only:
    variables:
      - $TARGET_TASK_NAME == "check-expired-telemetry"
  when: on_failure
  script:
    - 'MESSAGE_TEXT=":fire: [*$CI_PROJECT_NAME*] <$BUILD_URL|Expired telemetry detected> :fire:"'
    - postmessage "#rum-browser-sdk-ops" "$MESSAGE_TEXT"
  dependencies:
    - check-expired-telemetry-scheduled


================================================
FILE: .gitmodules
================================================
[submodule "rum-events-format"]
	path = rum-events-format
	url = https://github.com/DataDog/rum-events-format
	branch = master


================================================
FILE: .prettierignore
================================================
bundle
cjs
esm
coverage
rum-events-format
.yarn
test/**/dist
test/**/.next
test/**/.nuxt
test/**/.output
test/apps/nextjs/next-env.d.ts
yarn.lock
/generated-docs
/developer-extension/.output
/developer-extension/.wxt


================================================
FILE: .prettierrc.yml
================================================
arrowParens: 'always'
printWidth: 120
semi: false
singleQuote: true
tabWidth: 2
trailingComma: 'es5'
overrides:
  - files: '*.json'
    options:
      trailingComma: 'none'


================================================
FILE: .wokeignore
================================================
**/dist/**
yarn.lock
.yarn/releases
generated-docs

# code import
packages/worker/src/domain/deflate.js


================================================
FILE: .yarn/releases/yarn-4.13.0.cjs
================================================
#!/usr/bin/env node
/* eslint-disable */
//prettier-ignore
(()=>{var gje=Object.create;var tU=Object.defineProperty;var dje=Object.getOwnPropertyDescriptor;var mje=Object.getOwnPropertyNames;var yje=Object.getPrototypeOf,Eje=Object.prototype.hasOwnProperty;var Ie=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var Ze=(e,t)=>()=>(e&&(t=e(e=0)),t);var G=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Yt=(e,t)=>{for(var r in t)tU(e,r,{get:t[r],enumerable:!0})},Ije=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of mje(t))!Eje.call(e,a)&&a!==r&&tU(e,a,{get:()=>t[a],enumerable:!(s=dje(t,a))||s.enumerable});return e};var et=(e,t,r)=>(r=e!=null?gje(yje(e)):{},Ije(t||!e||!e.__esModule?tU(r,"default",{value:e,enumerable:!0}):r,e));var Ai={};Yt(Ai,{SAFE_TIME:()=>lX,S_IFDIR:()=>KP,S_IFLNK:()=>JP,S_IFMT:()=>_f,S_IFREG:()=>bB});var _f,KP,bB,JP,lX,cX=Ze(()=>{_f=61440,KP=16384,bB=32768,JP=40960,lX=456789e3});var or={};Yt(or,{EBADF:()=>Go,EBUSY:()=>Cje,EEXIST:()=>bje,EINVAL:()=>Bje,EISDIR:()=>Dje,ENOENT:()=>vje,ENOSYS:()=>wje,ENOTDIR:()=>Sje,ENOTEMPTY:()=>xje,EOPNOTSUPP:()=>kje,EROFS:()=>Pje,ERR_DIR_CLOSED:()=>rU});function wc(e,t){return Object.assign(new Error(`${e}: ${t}`),{code:e})}function Cje(e){return wc("EBUSY",e)}function wje(e,t){return wc("ENOSYS",`${e}, ${t}`)}function Bje(e){return wc("EINVAL",`invalid argument, ${e}`)}function Go(e){return wc("EBADF",`bad file descriptor, ${e}`)}function vje(e){return wc("ENOENT",`no such file or directory, ${e}`)}function Sje(e){return wc("ENOTDIR",`not a directory, ${e}`)}function Dje(e){return wc("EISDIR",`illegal operation on a directory, ${e}`)}function bje(e){return wc("EEXIST",`file already exists, ${e}`)}function Pje(e){return wc("EROFS",`read-only filesystem, ${e}`)}function xje(e){return wc("ENOTEMPTY",`directory not empty, ${e}`)}function kje(e){return wc("EOPNOTSUPP",`operation not supported, ${e}`)}function rU(){return wc("ERR_DIR_CLOSED","Directory handle was closed")}var zP=Ze(()=>{});var sl={};Yt(sl,{BigIntStatsEntry:()=>aE,DEFAULT_MODE:()=>sU,DirEntry:()=>nU,StatEntry:()=>oE,areStatsEqual:()=>oU,clearStats:()=>ZP,convertToBigIntStats:()=>Rje,makeDefaultStats:()=>uX,makeEmptyStats:()=>Qje});function uX(){return new oE}function Qje(){return ZP(uX())}function ZP(e){for(let t in e)if(Object.hasOwn(e,t)){let r=e[t];typeof r=="number"?e[t]=0:typeof r=="bigint"?e[t]=BigInt(0):iU.types.isDate(r)&&(e[t]=new Date(0))}return e}function Rje(e){let t=new aE;for(let r in e)if(Object.hasOwn(e,r)){let s=e[r];typeof s=="number"?t[r]=BigInt(Math.floor(s)):iU.types.isDate(s)&&(t[r]=new Date(s))}return t.atimeNs=t.atimeMs*BigInt(1e6)+BigInt(Math.floor(e.atimeMs%1*1e3))*BigInt(1e3),t.mtimeNs=t.mtimeMs*BigInt(1e6)+BigInt(Math.floor(e.mtimeMs%1*1e3))*BigInt(1e3),t.ctimeNs=t.ctimeMs*BigInt(1e6)+BigInt(Math.floor(e.ctimeMs%1*1e3))*BigInt(1e3),t.birthtimeNs=t.birthtimeMs*BigInt(1e6)+BigInt(Math.floor(e.birthtimeMs%1*1e3))*BigInt(1e3),t}function oU(e,t){if(e.atimeMs!==t.atimeMs||e.birthtimeMs!==t.birthtimeMs||e.blksize!==t.blksize||e.blocks!==t.blocks||e.ctimeMs!==t.ctimeMs||e.dev!==t.dev||e.gid!==t.gid||e.ino!==t.ino||e.isBlockDevice()!==t.isBlockDevice()||e.isCharacterDevice()!==t.isCharacterDevice()||e.isDirectory()!==t.isDirectory()||e.isFIFO()!==t.isFIFO()||e.isFile()!==t.isFile()||e.isSocket()!==t.isSocket()||e.isSymbolicLink()!==t.isSymbolicLink()||e.mode!==t.mode||e.mtimeMs!==t.mtimeMs||e.nlink!==t.nlink||e.rdev!==t.rdev||e.size!==t.size||e.uid!==t.uid)return!1;let r=e,s=t;return!(r.atimeNs!==s.atimeNs||r.mtimeNs!==s.mtimeNs||r.ctimeNs!==s.ctimeNs||r.birthtimeNs!==s.birthtimeNs)}var iU,sU,nU,oE,aE,aU=Ze(()=>{iU=et(Ie("util")),sU=33188,nU=class{constructor(){this.name="";this.path="";this.mode=0}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&61440)===16384}isFIFO(){return!1}isFile(){return(this.mode&61440)===32768}isSocket(){return!1}isSymbolicLink(){return(this.mode&61440)===40960}},oE=class{constructor(){this.uid=0;this.gid=0;this.size=0;this.blksize=0;this.atimeMs=0;this.mtimeMs=0;this.ctimeMs=0;this.birthtimeMs=0;this.atime=new Date(0);this.mtime=new Date(0);this.ctime=new Date(0);this.birthtime=new Date(0);this.dev=0;this.ino=0;this.mode=sU;this.nlink=1;this.rdev=0;this.blocks=1}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&61440)===16384}isFIFO(){return!1}isFile(){return(this.mode&61440)===32768}isSocket(){return!1}isSymbolicLink(){return(this.mode&61440)===40960}},aE=class{constructor(){this.uid=BigInt(0);this.gid=BigInt(0);this.size=BigInt(0);this.blksize=BigInt(0);this.atimeMs=BigInt(0);this.mtimeMs=BigInt(0);this.ctimeMs=BigInt(0);this.birthtimeMs=BigInt(0);this.atimeNs=BigInt(0);this.mtimeNs=BigInt(0);this.ctimeNs=BigInt(0);this.birthtimeNs=BigInt(0);this.atime=new Date(0);this.mtime=new Date(0);this.ctime=new Date(0);this.birthtime=new Date(0);this.dev=BigInt(0);this.ino=BigInt(0);this.mode=BigInt(sU);this.nlink=BigInt(1);this.rdev=BigInt(0);this.blocks=BigInt(1)}isBlockDevice(){return!1}isCharacterDevice(){return!1}isDirectory(){return(this.mode&BigInt(61440))===BigInt(16384)}isFIFO(){return!1}isFile(){return(this.mode&BigInt(61440))===BigInt(32768)}isSocket(){return!1}isSymbolicLink(){return(this.mode&BigInt(61440))===BigInt(40960)}}});function Lje(e){let t,r;if(t=e.match(Nje))e=t[1];else if(r=e.match(Oje))e=`\\\\${r[1]?".\\":""}${r[2]}`;else return e;return e.replace(/\//g,"\\")}function Mje(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(Tje))?e=`/${t[1]}`:(r=e.match(Fje))&&(e=`/unc/${r[1]?".dot/":""}${r[2]}`),e}function XP(e,t){return e===fe?AX(t):lU(t)}var PB,vt,Er,fe,K,fX,Tje,Fje,Nje,Oje,lU,AX,ol=Ze(()=>{PB=et(Ie("path")),vt={root:"/",dot:".",parent:".."},Er={home:"~",nodeModules:"node_modules",manifest:"package.json",lockfile:"yarn.lock",virtual:"__virtual__",pnpJs:".pnp.js",pnpCjs:".pnp.cjs",pnpData:".pnp.data.json",pnpEsmLoader:".pnp.loader.mjs",rc:".yarnrc.yml",env:".env"},fe=Object.create(PB.default),K=Object.create(PB.default.posix);fe.cwd=()=>process.cwd();K.cwd=process.platform==="win32"?()=>lU(process.cwd()):process.cwd;process.platform==="win32"&&(K.resolve=(...e)=>e.length>0&&K.isAbsolute(e[0])?PB.default.posix.resolve(...e):PB.default.posix.resolve(K.cwd(),...e));fX=function(e,t,r){return t=e.normalize(t),r=e.normalize(r),t===r?".":(t.endsWith(e.sep)||(t=t+e.sep),r.startsWith(t)?r.slice(t.length):null)};fe.contains=(e,t)=>fX(fe,e,t);K.contains=(e,t)=>fX(K,e,t);Tje=/^([a-zA-Z]:.*)$/,Fje=/^\/\/(\.\/)?(.*)$/,Nje=/^\/([a-zA-Z]:.*)$/,Oje=/^\/unc\/(\.dot\/)?(.*)$/;lU=process.platform==="win32"?Mje:e=>e,AX=process.platform==="win32"?Lje:e=>e;fe.fromPortablePath=AX;fe.toPortablePath=lU});async function $P(e,t){let r="0123456789abcdef";await e.mkdirPromise(t.indexPath,{recursive:!0});let s=[];for(let a of r)for(let n of r)s.push(e.mkdirPromise(e.pathUtils.join(t.indexPath,`${a}${n}`),{recursive:!0}));return await Promise.all(s),t.indexPath}async function pX(e,t,r,s,a){let n=e.pathUtils.normalize(t),c=r.pathUtils.normalize(s),f=[],p=[],{atime:h,mtime:E}=a.stableTime?{atime:hd,mtime:hd}:await r.lstatPromise(c);await e.mkdirpPromise(e.pathUtils.dirname(t),{utimes:[h,E]}),await cU(f,p,e,n,r,c,{...a,didParentExist:!0});for(let C of f)await C();await Promise.all(p.map(C=>C()))}async function cU(e,t,r,s,a,n,c){let f=c.didParentExist?await hX(r,s):null,p=await a.lstatPromise(n),{atime:h,mtime:E}=c.stableTime?{atime:hd,mtime:hd}:p,C;switch(!0){case p.isDirectory():C=await _je(e,t,r,s,f,a,n,p,c);break;case p.isFile():C=await Gje(e,t,r,s,f,a,n,p,c);break;case p.isSymbolicLink():C=await qje(e,t,r,s,f,a,n,p,c);break;default:throw new Error(`Unsupported file type (${p.mode})`)}return(c.linkStrategy?.type!=="HardlinkFromIndex"||!p.isFile())&&((C||f?.mtime?.getTime()!==E.getTime()||f?.atime?.getTime()!==h.getTime())&&(t.push(()=>r.lutimesPromise(s,h,E)),C=!0),(f===null||(f.mode&511)!==(p.mode&511))&&(t.push(()=>r.chmodPromise(s,p.mode&511)),C=!0)),C}async function hX(e,t){try{return await e.lstatPromise(t)}catch{return null}}async function _je(e,t,r,s,a,n,c,f,p){if(a!==null&&!a.isDirectory())if(p.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;let h=!1;a===null&&(e.push(async()=>{try{await r.mkdirPromise(s,{mode:f.mode})}catch(S){if(S.code!=="EEXIST")throw S}}),h=!0);let E=await n.readdirPromise(c),C=p.didParentExist&&!a?{...p,didParentExist:!1}:p;if(p.stableSort)for(let S of E.sort())await cU(e,t,r,r.pathUtils.join(s,S),n,n.pathUtils.join(c,S),C)&&(h=!0);else(await Promise.all(E.map(async x=>{await cU(e,t,r,r.pathUtils.join(s,x),n,n.pathUtils.join(c,x),C)}))).some(x=>x)&&(h=!0);return h}async function Hje(e,t,r,s,a,n,c,f,p,h){let E=await n.checksumFilePromise(c,{algorithm:"sha1"}),C=420,S=f.mode&511,x=`${E}${S!==C?S.toString(8):""}`,I=r.pathUtils.join(h.indexPath,E.slice(0,2),`${x}.dat`),T;(ae=>(ae[ae.Lock=0]="Lock",ae[ae.Rename=1]="Rename"))(T||={});let O=1,U=await hX(r,I);if(a){let ie=U&&a.dev===U.dev&&a.ino===U.ino,ue=U?.mtimeMs!==Uje;if(ie&&ue&&h.autoRepair&&(O=0,U=null),!ie)if(p.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1}let Y=!U&&O===1?`${I}.${Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0")}`:null,te=!1;return e.push(async()=>{if(!U&&(O===0&&await r.lockPromise(I,async()=>{let ie=await n.readFilePromise(c);await r.writeFilePromise(I,ie)}),O===1&&Y)){let ie=await n.readFilePromise(c);await r.writeFilePromise(Y,ie);try{await r.linkPromise(Y,I)}catch(ue){if(ue.code==="EEXIST")te=!0,await r.unlinkPromise(Y);else throw ue}}a||await r.linkPromise(I,s)}),t.push(async()=>{U||(await r.lutimesPromise(I,hd,hd),S!==C&&await r.chmodPromise(I,S)),Y&&!te&&await r.unlinkPromise(Y)}),!1}async function jje(e,t,r,s,a,n,c,f,p){if(a!==null)if(p.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;return e.push(async()=>{let h=await n.readFilePromise(c);await r.writeFilePromise(s,h)}),!0}async function Gje(e,t,r,s,a,n,c,f,p){return p.linkStrategy?.type==="HardlinkFromIndex"?Hje(e,t,r,s,a,n,c,f,p,p.linkStrategy):jje(e,t,r,s,a,n,c,f,p)}async function qje(e,t,r,s,a,n,c,f,p){if(a!==null)if(p.overwrite)e.push(async()=>r.removePromise(s)),a=null;else return!1;return e.push(async()=>{await r.symlinkPromise(XP(r.pathUtils,await n.readlinkPromise(c)),s)}),!0}var hd,Uje,uU=Ze(()=>{ol();hd=new Date(456789e3*1e3),Uje=hd.getTime()});function ex(e,t,r,s){let a=()=>{let n=r.shift();if(typeof n>"u")return null;let c=e.pathUtils.join(t,n);return Object.assign(e.statSync(c),{name:n,path:void 0})};return new xB(t,a,s)}var xB,gX=Ze(()=>{zP();xB=class{constructor(t,r,s={}){this.path=t;this.nextDirent=r;this.opts=s;this.closed=!1}throwIfClosed(){if(this.closed)throw rU()}async*[Symbol.asyncIterator](){try{let t;for(;(t=await this.read())!==null;)yield t}finally{await this.close()}}read(t){let r=this.readSync();return typeof t<"u"?t(null,r):Promise.resolve(r)}readSync(){return this.throwIfClosed(),this.nextDirent()}close(t){return this.closeSync(),typeof t<"u"?t(null):Promise.resolve()}closeSync(){this.throwIfClosed(),this.opts.onClose?.(),this.closed=!0}}});function dX(e,t){if(e!==t)throw new Error(`Invalid StatWatcher status: expected '${t}', got '${e}'`)}var mX,tx,yX=Ze(()=>{mX=Ie("events");aU();tx=class e extends mX.EventEmitter{constructor(r,s,{bigint:a=!1}={}){super();this.status="ready";this.changeListeners=new Map;this.startTimeout=null;this.fakeFs=r,this.path=s,this.bigint=a,this.lastStats=this.stat()}static create(r,s,a){let n=new e(r,s,a);return n.start(),n}start(){dX(this.status,"ready"),this.status="running",this.startTimeout=setTimeout(()=>{this.startTimeout=null,this.fakeFs.existsSync(this.path)||this.emit("change",this.lastStats,this.lastStats)},3)}stop(){dX(this.status,"running"),this.status="stopped",this.startTimeout!==null&&(clearTimeout(this.startTimeout),this.startTimeout=null),this.emit("stop")}stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}catch{let r=this.bigint?new aE:new oE;return ZP(r)}}makeInterval(r){let s=setInterval(()=>{let a=this.stat(),n=this.lastStats;oU(a,n)||(this.lastStats=a,this.emit("change",a,n))},r.interval);return r.persistent?s:s.unref()}registerChangeListener(r,s){this.addListener("change",r),this.changeListeners.set(r,this.makeInterval(s))}unregisterChangeListener(r){this.removeListener("change",r);let s=this.changeListeners.get(r);typeof s<"u"&&clearInterval(s),this.changeListeners.delete(r)}unregisterAllChangeListeners(){for(let r of this.changeListeners.keys())this.unregisterChangeListener(r)}hasChangeListeners(){return this.changeListeners.size>0}ref(){for(let r of this.changeListeners.values())r.ref();return this}unref(){for(let r of this.changeListeners.values())r.unref();return this}}});function lE(e,t,r,s){let a,n,c,f;switch(typeof r){case"function":a=!1,n=!0,c=5007,f=r;break;default:({bigint:a=!1,persistent:n=!0,interval:c=5007}=r),f=s;break}let p=rx.get(e);typeof p>"u"&&rx.set(e,p=new Map);let h=p.get(t);return typeof h>"u"&&(h=tx.create(e,t,{bigint:a}),p.set(t,h)),h.registerChangeListener(f,{persistent:n,interval:c}),h}function gd(e,t,r){let s=rx.get(e);if(typeof s>"u")return;let a=s.get(t);typeof a>"u"||(typeof r>"u"?a.unregisterAllChangeListeners():a.unregisterChangeListener(r),a.hasChangeListeners()||(a.stop(),s.delete(t)))}function dd(e){let t=rx.get(e);if(!(typeof t>"u"))for(let r of t.keys())gd(e,r)}var rx,fU=Ze(()=>{yX();rx=new WeakMap});function Wje(e){let t=e.match(/\r?\n/g);if(t===null)return IX.EOL;let r=t.filter(a=>a===`\r
`).length,s=t.length-r;return r>s?`\r
`:`
`}function md(e,t){return t.replace(/\r?\n/g,Wje(e))}var EX,IX,yp,Hf,yd=Ze(()=>{EX=Ie("crypto"),IX=Ie("os");uU();ol();yp=class{constructor(t){this.pathUtils=t}async*genTraversePromise(t,{stableSort:r=!1}={}){let s=[t];for(;s.length>0;){let a=s.shift();if((await this.lstatPromise(a)).isDirectory()){let c=await this.readdirPromise(a);if(r)for(let f of c.sort())s.push(this.pathUtils.join(a,f));else throw new Error("Not supported")}else yield a}}async checksumFilePromise(t,{algorithm:r="sha512"}={}){let s=await this.openPromise(t,"r");try{let n=Buffer.allocUnsafeSlow(65536),c=(0,EX.createHash)(r),f=0;for(;(f=await this.readPromise(s,n,0,65536))!==0;)c.update(f===65536?n:n.slice(0,f));return c.digest("hex")}finally{await this.closePromise(s)}}async removePromise(t,{recursive:r=!0,maxRetries:s=5}={}){let a;try{a=await this.lstatPromise(t)}catch(n){if(n.code==="ENOENT")return;throw n}if(a.isDirectory()){if(r){let n=await this.readdirPromise(t);await Promise.all(n.map(c=>this.removePromise(this.pathUtils.resolve(t,c))))}for(let n=0;n<=s;n++)try{await this.rmdirPromise(t);break}catch(c){if(c.code!=="EBUSY"&&c.code!=="ENOTEMPTY")throw c;n<s&&await new Promise(f=>setTimeout(f,n*100))}}else await this.unlinkPromise(t)}removeSync(t,{recursive:r=!0}={}){let s;try{s=this.lstatSync(t)}catch(a){if(a.code==="ENOENT")return;throw a}if(s.isDirectory()){if(r)for(let a of this.readdirSync(t))this.removeSync(this.pathUtils.resolve(t,a));this.rmdirSync(t)}else this.unlinkSync(t)}async mkdirpPromise(t,{chmod:r,utimes:s}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),n;for(let c=2;c<=a.length;++c){let f=a.slice(0,c).join(this.pathUtils.sep);if(!this.existsSync(f)){try{await this.mkdirPromise(f)}catch(p){if(p.code==="EEXIST")continue;throw p}if(n??=f,r!=null&&await this.chmodPromise(f,r),s!=null)await this.utimesPromise(f,s[0],s[1]);else{let p=await this.statPromise(this.pathUtils.dirname(f));await this.utimesPromise(f,p.atime,p.mtime)}}}return n}mkdirpSync(t,{chmod:r,utimes:s}={}){if(t=this.resolve(t),t===this.pathUtils.dirname(t))return;let a=t.split(this.pathUtils.sep),n;for(let c=2;c<=a.length;++c){let f=a.slice(0,c).join(this.pathUtils.sep);if(!this.existsSync(f)){try{this.mkdirSync(f)}catch(p){if(p.code==="EEXIST")continue;throw p}if(n??=f,r!=null&&this.chmodSync(f,r),s!=null)this.utimesSync(f,s[0],s[1]);else{let p=this.statSync(this.pathUtils.dirname(f));this.utimesSync(f,p.atime,p.mtime)}}}return n}async copyPromise(t,r,{baseFs:s=this,overwrite:a=!0,stableSort:n=!1,stableTime:c=!1,linkStrategy:f=null}={}){return await pX(this,t,s,r,{overwrite:a,stableSort:n,stableTime:c,linkStrategy:f})}copySync(t,r,{baseFs:s=this,overwrite:a=!0}={}){let n=s.lstatSync(r),c=this.existsSync(t);if(n.isDirectory()){this.mkdirpSync(t);let p=s.readdirSync(r);for(let h of p)this.copySync(this.pathUtils.join(t,h),s.pathUtils.join(r,h),{baseFs:s,overwrite:a})}else if(n.isFile()){if(!c||a){c&&this.removeSync(t);let p=s.readFileSync(r);this.writeFileSync(t,p)}}else if(n.isSymbolicLink()){if(!c||a){c&&this.removeSync(t);let p=s.readlinkSync(r);this.symlinkSync(XP(this.pathUtils,p),t)}}else throw new Error(`Unsupported file type (file: ${r}, mode: 0o${n.mode.toString(8).padStart(6,"0")})`);let f=n.mode&511;this.chmodSync(t,f)}async changeFilePromise(t,r,s={}){return Buffer.isBuffer(r)?this.changeFileBufferPromise(t,r,s):this.changeFileTextPromise(t,r,s)}async changeFileBufferPromise(t,r,{mode:s}={}){let a=Buffer.alloc(0);try{a=await this.readFilePromise(t)}catch{}Buffer.compare(a,r)!==0&&await this.writeFilePromise(t,r,{mode:s})}async changeFileTextPromise(t,r,{automaticNewlines:s,mode:a}={}){let n="";try{n=await this.readFilePromise(t,"utf8")}catch{}let c=s?md(n,r):r;n!==c&&await this.writeFilePromise(t,c,{mode:a})}changeFileSync(t,r,s={}){return Buffer.isBuffer(r)?this.changeFileBufferSync(t,r,s):this.changeFileTextSync(t,r,s)}changeFileBufferSync(t,r,{mode:s}={}){let a=Buffer.alloc(0);try{a=this.readFileSync(t)}catch{}Buffer.compare(a,r)!==0&&this.writeFileSync(t,r,{mode:s})}changeFileTextSync(t,r,{automaticNewlines:s=!1,mode:a}={}){let n="";try{n=this.readFileSync(t,"utf8")}catch{}let c=s?md(n,r):r;n!==c&&this.writeFileSync(t,c,{mode:a})}async movePromise(t,r){try{await this.renamePromise(t,r)}catch(s){if(s.code==="EXDEV")await this.copyPromise(r,t),await this.removePromise(t);else throw s}}moveSync(t,r){try{this.renameSync(t,r)}catch(s){if(s.code==="EXDEV")this.copySync(r,t),this.removeSync(t);else throw s}}async lockPromise(t,r){let s=`${t}.flock`,a=1e3/60,n=Date.now(),c=null,f=async()=>{let p;try{[p]=await this.readJsonPromise(s)}catch{return Date.now()-n<500}try{return process.kill(p,0),!0}catch{return!1}};for(;c===null;)try{c=await this.openPromise(s,"wx")}catch(p){if(p.code==="EEXIST"){if(!await f())try{await this.unlinkPromise(s);continue}catch{}if(Date.now()-n<60*1e3)await new Promise(h=>setTimeout(h,a));else throw new Error(`Couldn't acquire a lock in a reasonable time (via ${s})`)}else throw p}await this.writePromise(c,JSON.stringify([process.pid]));try{return await r()}finally{try{await this.closePromise(c),await this.unlinkPromise(s)}catch{}}}async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{return JSON.parse(r)}catch(s){throw s.message+=` (in ${t})`,s}}readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(r)}catch(s){throw s.message+=` (in ${t})`,s}}async writeJsonPromise(t,r,{compact:s=!1}={}){let a=s?0:2;return await this.writeFilePromise(t,`${JSON.stringify(r,null,a)}
`)}writeJsonSync(t,r,{compact:s=!1}={}){let a=s?0:2;return this.writeFileSync(t,`${JSON.stringify(r,null,a)}
`)}async preserveTimePromise(t,r){let s=await this.lstatPromise(t),a=await r();typeof a<"u"&&(t=a),await this.lutimesPromise(t,s.atime,s.mtime)}async preserveTimeSync(t,r){let s=this.lstatSync(t),a=r();typeof a<"u"&&(t=a),this.lutimesSync(t,s.atime,s.mtime)}},Hf=class extends yp{constructor(){super(K)}}});var Gs,Ep=Ze(()=>{yd();Gs=class extends yp{getExtractHint(t){return this.baseFs.getExtractHint(t)}resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}async openPromise(t,r,s){return this.baseFs.openPromise(this.mapToBase(t),r,s)}openSync(t,r,s){return this.baseFs.openSync(this.mapToBase(t),r,s)}async opendirPromise(t,r){return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(t),r),{path:t})}opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapToBase(t),r),{path:t})}async readPromise(t,r,s,a,n){return await this.baseFs.readPromise(t,r,s,a,n)}readSync(t,r,s,a,n){return this.baseFs.readSync(t,r,s,a,n)}async writePromise(t,r,s,a,n){return typeof r=="string"?await this.baseFs.writePromise(t,r,s):await this.baseFs.writePromise(t,r,s,a,n)}writeSync(t,r,s,a,n){return typeof r=="string"?this.baseFs.writeSync(t,r,s):this.baseFs.writeSync(t,r,s,a,n)}async closePromise(t){return this.baseFs.closePromise(t)}closeSync(t){this.baseFs.closeSync(t)}createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this.mapToBase(t):t,r)}createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?this.mapToBase(t):t,r)}async realpathPromise(t){return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(t)))}realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(t)))}async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase(t),r)}async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}fstatSync(t,r){return this.baseFs.fstatSync(t,r)}lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t),r)}chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}async fchownPromise(t,r,s){return this.baseFs.fchownPromise(t,r,s)}fchownSync(t,r,s){return this.baseFs.fchownSync(t,r,s)}async chownPromise(t,r,s){return this.baseFs.chownPromise(this.mapToBase(t),r,s)}chownSync(t,r,s){return this.baseFs.chownSync(this.mapToBase(t),r,s)}async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase(t),this.mapToBase(r))}renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.mapToBase(r))}async copyFilePromise(t,r,s=0){return this.baseFs.copyFilePromise(this.mapToBase(t),this.mapToBase(r),s)}copyFileSync(t,r,s=0){return this.baseFs.copyFileSync(this.mapToBase(t),this.mapToBase(r),s)}async appendFilePromise(t,r,s){return this.baseFs.appendFilePromise(this.fsMapToBase(t),r,s)}appendFileSync(t,r,s){return this.baseFs.appendFileSync(this.fsMapToBase(t),r,s)}async writeFilePromise(t,r,s){return this.baseFs.writeFilePromise(this.fsMapToBase(t),r,s)}writeFileSync(t,r,s){return this.baseFs.writeFileSync(this.fsMapToBase(t),r,s)}async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}async utimesPromise(t,r,s){return this.baseFs.utimesPromise(this.mapToBase(t),r,s)}utimesSync(t,r,s){return this.baseFs.utimesSync(this.mapToBase(t),r,s)}async lutimesPromise(t,r,s){return this.baseFs.lutimesPromise(this.mapToBase(t),r,s)}lutimesSync(t,r,s){return this.baseFs.lutimesSync(this.mapToBase(t),r,s)}async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t),r)}mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t),r)}rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),this.mapToBase(r))}linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBase(r))}async symlinkPromise(t,r,s){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkPromise(this.mapToBase(t),a,s);let n=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),c=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),n);return this.baseFs.symlinkPromise(c,a,s)}symlinkSync(t,r,s){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(t))return this.baseFs.symlinkSync(this.mapToBase(t),a,s);let n=this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(r),t)),c=this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(a),n);return this.baseFs.symlinkSync(c,a,s)}async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMapToBase(t),r)}readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(t)))}readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(t)))}async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapToBase(t),r)}truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}watch(t,r,s){return this.baseFs.watch(this.mapToBase(t),r,s)}watchFile(t,r,s){return this.baseFs.watchFile(this.mapToBase(t),r,s)}unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}}});var jf,CX=Ze(()=>{Ep();jf=class extends Gs{constructor(t,{baseFs:r,pathUtils:s}){super(s),this.target=t,this.baseFs=r}getRealPath(){return this.target}getBaseFs(){return this.baseFs}mapFromBase(t){return t}mapToBase(t){return t}}});function wX(e){let t=e;return typeof e.path=="string"&&(t.path=fe.toPortablePath(e.path)),t}var BX,Yn,Ed=Ze(()=>{BX=et(Ie("fs"));yd();ol();Yn=class extends Hf{constructor(t=BX.default){super(),this.realFs=t}getExtractHint(){return!1}getRealPath(){return vt.root}resolve(t){return K.resolve(t)}async openPromise(t,r,s){return await new Promise((a,n)=>{this.realFs.open(fe.fromPortablePath(t),r,s,this.makeCallback(a,n))})}openSync(t,r,s){return this.realFs.openSync(fe.fromPortablePath(t),r,s)}async opendirPromise(t,r){return await new Promise((s,a)=>{typeof r<"u"?this.realFs.opendir(fe.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.opendir(fe.fromPortablePath(t),this.makeCallback(s,a))}).then(s=>{let a=s;return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a})}opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(fe.fromPortablePath(t),r):this.realFs.opendirSync(fe.fromPortablePath(t));return Object.defineProperty(a,"path",{value:t,configurable:!0,writable:!0}),a}async readPromise(t,r,s=0,a=0,n=-1){return await new Promise((c,f)=>{this.realFs.read(t,r,s,a,n,(p,h)=>{p?f(p):c(h)})})}readSync(t,r,s,a,n){return this.realFs.readSync(t,r,s,a,n)}async writePromise(t,r,s,a,n){return await new Promise((c,f)=>typeof r=="string"?this.realFs.write(t,r,s,this.makeCallback(c,f)):this.realFs.write(t,r,s,a,n,this.makeCallback(c,f)))}writeSync(t,r,s,a,n){return typeof r=="string"?this.realFs.writeSync(t,r,s):this.realFs.writeSync(t,r,s,a,n)}async closePromise(t){await new Promise((r,s)=>{this.realFs.close(t,this.makeCallback(r,s))})}closeSync(t){this.realFs.closeSync(t)}createReadStream(t,r){let s=t!==null?fe.fromPortablePath(t):t;return this.realFs.createReadStream(s,r)}createWriteStream(t,r){let s=t!==null?fe.fromPortablePath(t):t;return this.realFs.createWriteStream(s,r)}async realpathPromise(t){return await new Promise((r,s)=>{this.realFs.realpath(fe.fromPortablePath(t),{},this.makeCallback(r,s))}).then(r=>fe.toPortablePath(r))}realpathSync(t){return fe.toPortablePath(this.realFs.realpathSync(fe.fromPortablePath(t),{}))}async existsPromise(t){return await new Promise(r=>{this.realFs.exists(fe.fromPortablePath(t),r)})}accessSync(t,r){return this.realFs.accessSync(fe.fromPortablePath(t),r)}async accessPromise(t,r){return await new Promise((s,a)=>{this.realFs.access(fe.fromPortablePath(t),r,this.makeCallback(s,a))})}existsSync(t){return this.realFs.existsSync(fe.fromPortablePath(t))}async statPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.stat(fe.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.stat(fe.fromPortablePath(t),this.makeCallback(s,a))})}statSync(t,r){return r?this.realFs.statSync(fe.fromPortablePath(t),r):this.realFs.statSync(fe.fromPortablePath(t))}async fstatPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.fstat(t,r,this.makeCallback(s,a)):this.realFs.fstat(t,this.makeCallback(s,a))})}fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync(t)}async lstatPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.lstat(fe.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.lstat(fe.fromPortablePath(t),this.makeCallback(s,a))})}lstatSync(t,r){return r?this.realFs.lstatSync(fe.fromPortablePath(t),r):this.realFs.lstatSync(fe.fromPortablePath(t))}async fchmodPromise(t,r){return await new Promise((s,a)=>{this.realFs.fchmod(t,r,this.makeCallback(s,a))})}fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}async chmodPromise(t,r){return await new Promise((s,a)=>{this.realFs.chmod(fe.fromPortablePath(t),r,this.makeCallback(s,a))})}chmodSync(t,r){return this.realFs.chmodSync(fe.fromPortablePath(t),r)}async fchownPromise(t,r,s){return await new Promise((a,n)=>{this.realFs.fchown(t,r,s,this.makeCallback(a,n))})}fchownSync(t,r,s){return this.realFs.fchownSync(t,r,s)}async chownPromise(t,r,s){return await new Promise((a,n)=>{this.realFs.chown(fe.fromPortablePath(t),r,s,this.makeCallback(a,n))})}chownSync(t,r,s){return this.realFs.chownSync(fe.fromPortablePath(t),r,s)}async renamePromise(t,r){return await new Promise((s,a)=>{this.realFs.rename(fe.fromPortablePath(t),fe.fromPortablePath(r),this.makeCallback(s,a))})}renameSync(t,r){return this.realFs.renameSync(fe.fromPortablePath(t),fe.fromPortablePath(r))}async copyFilePromise(t,r,s=0){return await new Promise((a,n)=>{this.realFs.copyFile(fe.fromPortablePath(t),fe.fromPortablePath(r),s,this.makeCallback(a,n))})}copyFileSync(t,r,s=0){return this.realFs.copyFileSync(fe.fromPortablePath(t),fe.fromPortablePath(r),s)}async appendFilePromise(t,r,s){return await new Promise((a,n)=>{let c=typeof t=="string"?fe.fromPortablePath(t):t;s?this.realFs.appendFile(c,r,s,this.makeCallback(a,n)):this.realFs.appendFile(c,r,this.makeCallback(a,n))})}appendFileSync(t,r,s){let a=typeof t=="string"?fe.fromPortablePath(t):t;s?this.realFs.appendFileSync(a,r,s):this.realFs.appendFileSync(a,r)}async writeFilePromise(t,r,s){return await new Promise((a,n)=>{let c=typeof t=="string"?fe.fromPortablePath(t):t;s?this.realFs.writeFile(c,r,s,this.makeCallback(a,n)):this.realFs.writeFile(c,r,this.makeCallback(a,n))})}writeFileSync(t,r,s){let a=typeof t=="string"?fe.fromPortablePath(t):t;s?this.realFs.writeFileSync(a,r,s):this.realFs.writeFileSync(a,r)}async unlinkPromise(t){return await new Promise((r,s)=>{this.realFs.unlink(fe.fromPortablePath(t),this.makeCallback(r,s))})}unlinkSync(t){return this.realFs.unlinkSync(fe.fromPortablePath(t))}async utimesPromise(t,r,s){return await new Promise((a,n)=>{this.realFs.utimes(fe.fromPortablePath(t),r,s,this.makeCallback(a,n))})}utimesSync(t,r,s){this.realFs.utimesSync(fe.fromPortablePath(t),r,s)}async lutimesPromise(t,r,s){return await new Promise((a,n)=>{this.realFs.lutimes(fe.fromPortablePath(t),r,s,this.makeCallback(a,n))})}lutimesSync(t,r,s){this.realFs.lutimesSync(fe.fromPortablePath(t),r,s)}async mkdirPromise(t,r){return await new Promise((s,a)=>{this.realFs.mkdir(fe.fromPortablePath(t),r,this.makeCallback(s,a))})}mkdirSync(t,r){return this.realFs.mkdirSync(fe.fromPortablePath(t),r)}async rmdirPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.rmdir(fe.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.rmdir(fe.fromPortablePath(t),this.makeCallback(s,a))})}rmdirSync(t,r){return this.realFs.rmdirSync(fe.fromPortablePath(t),r)}async rmPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.rm(fe.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.rm(fe.fromPortablePath(t),this.makeCallback(s,a))})}rmSync(t,r){return this.realFs.rmSync(fe.fromPortablePath(t),r)}async linkPromise(t,r){return await new Promise((s,a)=>{this.realFs.link(fe.fromPortablePath(t),fe.fromPortablePath(r),this.makeCallback(s,a))})}linkSync(t,r){return this.realFs.linkSync(fe.fromPortablePath(t),fe.fromPortablePath(r))}async symlinkPromise(t,r,s){return await new Promise((a,n)=>{this.realFs.symlink(fe.fromPortablePath(t.replace(/\/+$/,"")),fe.fromPortablePath(r),s,this.makeCallback(a,n))})}symlinkSync(t,r,s){return this.realFs.symlinkSync(fe.fromPortablePath(t.replace(/\/+$/,"")),fe.fromPortablePath(r),s)}async readFilePromise(t,r){return await new Promise((s,a)=>{let n=typeof t=="string"?fe.fromPortablePath(t):t;this.realFs.readFile(n,r,this.makeCallback(s,a))})}readFileSync(t,r){let s=typeof t=="string"?fe.fromPortablePath(t):t;return this.realFs.readFileSync(s,r)}async readdirPromise(t,r){return await new Promise((s,a)=>{r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdir(fe.fromPortablePath(t),r,this.makeCallback(n=>s(n.map(wX)),a)):this.realFs.readdir(fe.fromPortablePath(t),r,this.makeCallback(n=>s(n.map(fe.toPortablePath)),a)):this.realFs.readdir(fe.fromPortablePath(t),r,this.makeCallback(s,a)):this.realFs.readdir(fe.fromPortablePath(t),this.makeCallback(s,a))})}readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.withFileTypes?this.realFs.readdirSync(fe.fromPortablePath(t),r).map(wX):this.realFs.readdirSync(fe.fromPortablePath(t),r).map(fe.toPortablePath):this.realFs.readdirSync(fe.fromPortablePath(t),r):this.realFs.readdirSync(fe.fromPortablePath(t))}async readlinkPromise(t){return await new Promise((r,s)=>{this.realFs.readlink(fe.fromPortablePath(t),this.makeCallback(r,s))}).then(r=>fe.toPortablePath(r))}readlinkSync(t){return fe.toPortablePath(this.realFs.readlinkSync(fe.fromPortablePath(t)))}async truncatePromise(t,r){return await new Promise((s,a)=>{this.realFs.truncate(fe.fromPortablePath(t),r,this.makeCallback(s,a))})}truncateSync(t,r){return this.realFs.truncateSync(fe.fromPortablePath(t),r)}async ftruncatePromise(t,r){return await new Promise((s,a)=>{this.realFs.ftruncate(t,r,this.makeCallback(s,a))})}ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}watch(t,r,s){return this.realFs.watch(fe.fromPortablePath(t),r,s)}watchFile(t,r,s){return this.realFs.watchFile(fe.fromPortablePath(t),r,s)}unwatchFile(t,r){return this.realFs.unwatchFile(fe.fromPortablePath(t),r)}makeCallback(t,r){return(s,a)=>{s?r(s):t(a)}}}});var bn,vX=Ze(()=>{Ed();Ep();ol();bn=class extends Gs{constructor(t,{baseFs:r=new Yn}={}){super(K),this.target=this.pathUtils.normalize(t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.target)}resolve(t){return this.pathUtils.isAbsolute(t)?K.normalize(t):this.baseFs.resolve(K.join(this.target,t))}mapFromBase(t){return t}mapToBase(t){return this.pathUtils.isAbsolute(t)?t:this.pathUtils.join(this.target,t)}}});var SX,Gf,DX=Ze(()=>{Ed();Ep();ol();SX=vt.root,Gf=class extends Gs{constructor(t,{baseFs:r=new Yn}={}){super(K),this.target=this.pathUtils.resolve(vt.root,t),this.baseFs=r}getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),this.pathUtils.relative(vt.root,this.target))}getTarget(){return this.target}getBaseFs(){return this.baseFs}mapToBase(t){let r=this.pathUtils.normalize(t);if(this.pathUtils.isAbsolute(t))return this.pathUtils.resolve(this.target,this.pathUtils.relative(SX,t));if(r.match(/^\.\.\/?/))throw new Error(`Resolving this path (${t}) would escape the jail`);return this.pathUtils.resolve(this.target,t)}mapFromBase(t){return this.pathUtils.resolve(SX,this.pathUtils.relative(this.target,t))}}});var cE,bX=Ze(()=>{Ep();cE=class extends Gs{constructor(r,s){super(s);this.instance=null;this.factory=r}get baseFs(){return this.instance||(this.instance=this.factory()),this.instance}set baseFs(r){this.instance=r}mapFromBase(r){return r}mapToBase(r){return r}}});var Id,al,Xh,PX=Ze(()=>{Id=Ie("fs");yd();Ed();fU();zP();ol();al=4278190080,Xh=class extends Hf{constructor({baseFs:r=new Yn,filter:s=null,magicByte:a=42,maxOpenFiles:n=1/0,useCache:c=!0,maxAge:f=5e3,typeCheck:p=Id.constants.S_IFREG,getMountPoint:h,factoryPromise:E,factorySync:C}){if(Math.floor(a)!==a||!(a>1&&a<=127))throw new Error("The magic byte must be set to a round value between 1 and 127 included");super();this.fdMap=new Map;this.nextFd=3;this.isMount=new Set;this.notMount=new Set;this.realPaths=new Map;this.limitOpenFilesTimeout=null;this.baseFs=r,this.mountInstances=c?new Map:null,this.factoryPromise=E,this.factorySync=C,this.filter=s,this.getMountPoint=h,this.magic=a<<24,this.maxAge=f,this.maxOpenFiles=n,this.typeCheck=p}getExtractHint(r){return this.baseFs.getExtractHint(r)}getRealPath(){return this.baseFs.getRealPath()}saveAndClose(){if(dd(this),this.mountInstances)for(let[r,{childFs:s}]of this.mountInstances.entries())s.saveAndClose?.(),this.mountInstances.delete(r)}discardAndClose(){if(dd(this),this.mountInstances)for(let[r,{childFs:s}]of this.mountInstances.entries())s.discardAndClose?.(),this.mountInstances.delete(r)}resolve(r){return this.baseFs.resolve(r)}remapFd(r,s){let a=this.nextFd++|this.magic;return this.fdMap.set(a,[r,s]),a}async openPromise(r,s,a){return await this.makeCallPromise(r,async()=>await this.baseFs.openPromise(r,s,a),async(n,{subPath:c})=>this.remapFd(n,await n.openPromise(c,s,a)))}openSync(r,s,a){return this.makeCallSync(r,()=>this.baseFs.openSync(r,s,a),(n,{subPath:c})=>this.remapFd(n,n.openSync(c,s,a)))}async opendirPromise(r,s){return await this.makeCallPromise(r,async()=>await this.baseFs.opendirPromise(r,s),async(a,{subPath:n})=>await a.opendirPromise(n,s),{requireSubpath:!1})}opendirSync(r,s){return this.makeCallSync(r,()=>this.baseFs.opendirSync(r,s),(a,{subPath:n})=>a.opendirSync(n,s),{requireSubpath:!1})}async readPromise(r,s,a,n,c){if((r&al)!==this.magic)return await this.baseFs.readPromise(r,s,a,n,c);let f=this.fdMap.get(r);if(typeof f>"u")throw Go("read");let[p,h]=f;return await p.readPromise(h,s,a,n,c)}readSync(r,s,a,n,c){if((r&al)!==this.magic)return this.baseFs.readSync(r,s,a,n,c);let f=this.fdMap.get(r);if(typeof f>"u")throw Go("readSync");let[p,h]=f;return p.readSync(h,s,a,n,c)}async writePromise(r,s,a,n,c){if((r&al)!==this.magic)return typeof s=="string"?await this.baseFs.writePromise(r,s,a):await this.baseFs.writePromise(r,s,a,n,c);let f=this.fdMap.get(r);if(typeof f>"u")throw Go("write");let[p,h]=f;return typeof s=="string"?await p.writePromise(h,s,a):await p.writePromise(h,s,a,n,c)}writeSync(r,s,a,n,c){if((r&al)!==this.magic)return typeof s=="string"?this.baseFs.writeSync(r,s,a):this.baseFs.writeSync(r,s,a,n,c);let f=this.fdMap.get(r);if(typeof f>"u")throw Go("writeSync");let[p,h]=f;return typeof s=="string"?p.writeSync(h,s,a):p.writeSync(h,s,a,n,c)}async closePromise(r){if((r&al)!==this.magic)return await this.baseFs.closePromise(r);let s=this.fdMap.get(r);if(typeof s>"u")throw Go("close");this.fdMap.delete(r);let[a,n]=s;return await a.closePromise(n)}closeSync(r){if((r&al)!==this.magic)return this.baseFs.closeSync(r);let s=this.fdMap.get(r);if(typeof s>"u")throw Go("closeSync");this.fdMap.delete(r);let[a,n]=s;return a.closeSync(n)}createReadStream(r,s){return r===null?this.baseFs.createReadStream(r,s):this.makeCallSync(r,()=>this.baseFs.createReadStream(r,s),(a,{archivePath:n,subPath:c})=>{let f=a.createReadStream(c,s);return f.path=fe.fromPortablePath(this.pathUtils.join(n,c)),f})}createWriteStream(r,s){return r===null?this.baseFs.createWriteStream(r,s):this.makeCallSync(r,()=>this.baseFs.createWriteStream(r,s),(a,{subPath:n})=>a.createWriteStream(n,s))}async realpathPromise(r){return await this.makeCallPromise(r,async()=>await this.baseFs.realpathPromise(r),async(s,{archivePath:a,subPath:n})=>{let c=this.realPaths.get(a);return typeof c>"u"&&(c=await this.baseFs.realpathPromise(a),this.realPaths.set(a,c)),this.pathUtils.join(c,this.pathUtils.relative(vt.root,await s.realpathPromise(n)))})}realpathSync(r){return this.makeCallSync(r,()=>this.baseFs.realpathSync(r),(s,{archivePath:a,subPath:n})=>{let c=this.realPaths.get(a);return typeof c>"u"&&(c=this.baseFs.realpathSync(a),this.realPaths.set(a,c)),this.pathUtils.join(c,this.pathUtils.relative(vt.root,s.realpathSync(n)))})}async existsPromise(r){return await this.makeCallPromise(r,async()=>await this.baseFs.existsPromise(r),async(s,{subPath:a})=>await s.existsPromise(a))}existsSync(r){return this.makeCallSync(r,()=>this.baseFs.existsSync(r),(s,{subPath:a})=>s.existsSync(a))}async accessPromise(r,s){return await this.makeCallPromise(r,async()=>await this.baseFs.accessPromise(r,s),async(a,{subPath:n})=>await a.accessPromise(n,s))}accessSync(r,s){return this.makeCallSync(r,()=>this.baseFs.accessSync(r,s),(a,{subPath:n})=>a.accessSync(n,s))}async statPromise(r,s){return await this.makeCallPromise(r,async()=>await this.baseFs.statPromise(r,s),async(a,{subPath:n})=>await a.statPromise(n,s))}statSync(r,s){return this.makeCallSync(r,()=>this.baseFs.statSync(r,s),(a,{subPath:n})=>a.statSync(n,s))}async fstatPromise(r,s){if((r&al)!==this.magic)return this.baseFs.fstatPromise(r,s);let a=this.fdMap.get(r);if(typeof a>"u")throw Go("fstat");let[n,c]=a;return n.fstatPromise(c,s)}fstatSync(r,s){if((r&al)!==this.magic)return this.baseFs.fstatSync(r,s);let a=this.fdMap.get(r);if(typeof a>"u")throw Go("fstatSync");let[n,c]=a;return n.fstatSync(c,s)}async lstatPromise(r,s){return await this.makeCallPromise(r,async()=>await this.baseFs.lstatPromise(r,s),async(a,{subPath:n})=>await a.lstatPromise(n,s))}lstatSync(r,s){return this.makeCallSync(r,()=>this.baseFs.lstatSync(r,s),(a,{subPath:n})=>a.lstatSync(n,s))}async fchmodPromise(r,s){if((r&al)!==this.magic)return this.baseFs.fchmodPromise(r,s);let a=this.fdMap.get(r);if(typeof a>"u")throw Go("fchmod");let[n,c]=a;return n.fchmodPromise(c,s)}fchmodSync(r,s){if((r&al)!==this.magic)return this.baseFs.fchmodSync(r,s);let a=this.fdMap.get(r);if(typeof a>"u")throw Go("fchmodSync");let[n,c]=a;return n.fchmodSync(c,s)}async chmodPromise(r,s){return await this.makeCallPromise(r,async()=>await this.baseFs.chmodPromise(r,s),async(a,{subPath:n})=>await a.chmodPromise(n,s))}chmodSync(r,s){return this.makeCallSync(r,()=>this.baseFs.chmodSync(r,s),(a,{subPath:n})=>a.chmodSync(n,s))}async fchownPromise(r,s,a){if((r&al)!==this.magic)return this.baseFs.fchownPromise(r,s,a);let n=this.fdMap.get(r);if(typeof n>"u")throw Go("fchown");let[c,f]=n;return c.fchownPromise(f,s,a)}fchownSync(r,s,a){if((r&al)!==this.magic)return this.baseFs.fchownSync(r,s,a);let n=this.fdMap.get(r);if(typeof n>"u")throw Go("fchownSync");let[c,f]=n;return c.fchownSync(f,s,a)}async chownPromise(r,s,a){return await this.makeCallPromise(r,async()=>await this.baseFs.chownPromise(r,s,a),async(n,{subPath:c})=>await n.chownPromise(c,s,a))}chownSync(r,s,a){return this.makeCallSync(r,()=>this.baseFs.chownSync(r,s,a),(n,{subPath:c})=>n.chownSync(c,s,a))}async renamePromise(r,s){return await this.makeCallPromise(r,async()=>await this.makeCallPromise(s,async()=>await this.baseFs.renamePromise(r,s),async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),async(a,{subPath:n})=>await this.makeCallPromise(s,async()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},async(c,{subPath:f})=>{if(a!==c)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return await a.renamePromise(n,f)}))}renameSync(r,s){return this.makeCallSync(r,()=>this.makeCallSync(s,()=>this.baseFs.renameSync(r,s),()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})}),(a,{subPath:n})=>this.makeCallSync(s,()=>{throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"})},(c,{subPath:f})=>{if(a!==c)throw Object.assign(new Error("EEXDEV: cross-device link not permitted"),{code:"EEXDEV"});return a.renameSync(n,f)}))}async copyFilePromise(r,s,a=0){let n=async(c,f,p,h)=>{if(a&Id.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${f}' -> ${h}'`),{code:"EXDEV"});if(a&Id.constants.COPYFILE_EXCL&&await this.existsPromise(f))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${f}' -> '${h}'`),{code:"EEXIST"});let E;try{E=await c.readFilePromise(f)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${f}' -> '${h}'`),{code:"EINVAL"})}await p.writeFilePromise(h,E)};return await this.makeCallPromise(r,async()=>await this.makeCallPromise(s,async()=>await this.baseFs.copyFilePromise(r,s,a),async(c,{subPath:f})=>await n(this.baseFs,r,c,f)),async(c,{subPath:f})=>await this.makeCallPromise(s,async()=>await n(c,f,this.baseFs,s),async(p,{subPath:h})=>c!==p?await n(c,f,p,h):await c.copyFilePromise(f,h,a)))}copyFileSync(r,s,a=0){let n=(c,f,p,h)=>{if(a&Id.constants.COPYFILE_FICLONE_FORCE)throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${f}' -> ${h}'`),{code:"EXDEV"});if(a&Id.constants.COPYFILE_EXCL&&this.existsSync(f))throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${f}' -> '${h}'`),{code:"EEXIST"});let E;try{E=c.readFileSync(f)}catch{throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${f}' -> '${h}'`),{code:"EINVAL"})}p.writeFileSync(h,E)};return this.makeCallSync(r,()=>this.makeCallSync(s,()=>this.baseFs.copyFileSync(r,s,a),(c,{subPath:f})=>n(this.baseFs,r,c,f)),(c,{subPath:f})=>this.makeCallSync(s,()=>n(c,f,this.baseFs,s),(p,{subPath:h})=>c!==p?n(c,f,p,h):c.copyFileSync(f,h,a)))}async appendFilePromise(r,s,a){return await this.makeCallPromise(r,async()=>await this.baseFs.appendFilePromise(r,s,a),async(n,{subPath:c})=>await n.appendFilePromise(c,s,a))}appendFileSync(r,s,a){return this.makeCallSync(r,()=>this.baseFs.appendFileSync(r,s,a),(n,{subPath:c})=>n.appendFileSync(c,s,a))}async writeFilePromise(r,s,a){return await this.makeCallPromise(r,async()=>await this.baseFs.writeFilePromise(r,s,a),async(n,{subPath:c})=>await n.writeFilePromise(c,s,a))}writeFileSync(r,s,a){return this.makeCallSync(r,()=>this.baseFs.writeFileSync(r,s,a),(n,{subPath:c})=>n.writeFileSync(c,s,a))}async unlinkPromise(r){return await this.makeCallPromise(r,async()=>await this.baseFs.unlinkPromise(r),async(s,{subPath:a})=>await s.unlinkPromise(a))}unlinkSync(r){return this.makeCallSync(r,()=>this.baseFs.unlinkSync(r),(s,{subPath:a})=>s.unlinkSync(a))}async utimesPromise(r,s,a){return await this.makeCallPromise(r,async()=>await this.baseFs.utimesPromise(r,s,a),async(n,{subPath:c})=>await n.utimesPromise(c,s,a))}utimesSync(r,s,a){return this.makeCallSync(r,()=>this.baseFs.utimesSync(r,s,a),(n,{subPath:c})=>n.utimesSync(c,s,a))}async lutimesPromise(r,s,a){return await this.makeCallPromise(r,async()=>await this.baseFs.lutimesPromise(r,s,a),async(n,{subPath:c})=>await n.lutimesPromise(c,s,a))}lutimesSync(r,s,a){return this.makeCallSync(r,()=>this.baseFs.lutimesSync(r,s,a),(n,{subPath:c})=>n.lutimesSync(c,s,a))}async mkdirPromise(r,s){return await this.makeCallPromise(r,async()=>await this.baseFs.mkdirPromise(r,s),async(a,{subPath:n})=>await a.mkdirPromise(n,s))}mkdirSync(r,s){return this.makeCallSync(r,()=>this.baseFs.mkdirSync(r,s),(a,{subPath:n})=>a.mkdirSync(n,s))}async rmdirPromise(r,s){return await this.makeCallPromise(r,async()=>await this.baseFs.rmdirPromise(r,s),async(a,{subPath:n})=>await a.rmdirPromise(n,s))}rmdirSync(r,s){return this.makeCallSync(r,()=>this.baseFs.rmdirSync(r,s),(a,{subPath:n})=>a.rmdirSync(n,s))}async rmPromise(r,s){return await this.makeCallPromise(r,async()=>await this.baseFs.rmPromise(r,s),async(a,{subPath:n})=>await a.rmPromise(n,s))}rmSync(r,s){return this.makeCallSync(r,()=>this.baseFs.rmSync(r,s),(a,{subPath:n})=>a.rmSync(n,s))}async linkPromise(r,s){return await this.makeCallPromise(s,async()=>await this.baseFs.linkPromise(r,s),async(a,{subPath:n})=>await a.linkPromise(r,n))}linkSync(r,s){return this.makeCallSync(s,()=>this.baseFs.linkSync(r,s),(a,{subPath:n})=>a.linkSync(r,n))}async symlinkPromise(r,s,a){return await this.makeCallPromise(s,async()=>await this.baseFs.symlinkPromise(r,s,a),async(n,{subPath:c})=>await n.symlinkPromise(r,c))}symlinkSync(r,s,a){return this.makeCallSync(s,()=>this.baseFs.symlinkSync(r,s,a),(n,{subPath:c})=>n.symlinkSync(r,c))}async readFilePromise(r,s){return this.makeCallPromise(r,async()=>await this.baseFs.readFilePromise(r,s),async(a,{subPath:n})=>await a.readFilePromise(n,s))}readFileSync(r,s){return this.makeCallSync(r,()=>this.baseFs.readFileSync(r,s),(a,{subPath:n})=>a.readFileSync(n,s))}async readdirPromise(r,s){return await this.makeCallPromise(r,async()=>await this.baseFs.readdirPromise(r,s),async(a,{subPath:n})=>await a.readdirPromise(n,s),{requireSubpath:!1})}readdirSync(r,s){return this.makeCallSync(r,()=>this.baseFs.readdirSync(r,s),(a,{subPath:n})=>a.readdirSync(n,s),{requireSubpath:!1})}async readlinkPromise(r){return await this.makeCallPromise(r,async()=>await this.baseFs.readlinkPromise(r),async(s,{subPath:a})=>await s.readlinkPromise(a))}readlinkSync(r){return this.makeCallSync(r,()=>this.baseFs.readlinkSync(r),(s,{subPath:a})=>s.readlinkSync(a))}async truncatePromise(r,s){return await this.makeCallPromise(r,async()=>await this.baseFs.truncatePromise(r,s),async(a,{subPath:n})=>await a.truncatePromise(n,s))}truncateSync(r,s){return this.makeCallSync(r,()=>this.baseFs.truncateSync(r,s),(a,{subPath:n})=>a.truncateSync(n,s))}async ftruncatePromise(r,s){if((r&al)!==this.magic)return this.baseFs.ftruncatePromise(r,s);let a=this.fdMap.get(r);if(typeof a>"u")throw Go("ftruncate");let[n,c]=a;return n.ftruncatePromise(c,s)}ftruncateSync(r,s){if((r&al)!==this.magic)return this.baseFs.ftruncateSync(r,s);let a=this.fdMap.get(r);if(typeof a>"u")throw Go("ftruncateSync");let[n,c]=a;return n.ftruncateSync(c,s)}watch(r,s,a){return this.makeCallSync(r,()=>this.baseFs.watch(r,s,a),(n,{subPath:c})=>n.watch(c,s,a))}watchFile(r,s,a){return this.makeCallSync(r,()=>this.baseFs.watchFile(r,s,a),()=>lE(this,r,s,a))}unwatchFile(r,s){return this.makeCallSync(r,()=>this.baseFs.unwatchFile(r,s),()=>gd(this,r,s))}async makeCallPromise(r,s,a,{requireSubpath:n=!0}={}){if(typeof r!="string")return await s();let c=this.resolve(r),f=this.findMount(c);return f?n&&f.subPath==="/"?await s():await this.getMountPromise(f.archivePath,async p=>await a(p,f)):await s()}makeCallSync(r,s,a,{requireSubpath:n=!0}={}){if(typeof r!="string")return s();let c=this.resolve(r),f=this.findMount(c);return!f||n&&f.subPath==="/"?s():this.getMountSync(f.archivePath,p=>a(p,f))}findMount(r){if(this.filter&&!this.filter.test(r))return null;let s="";for(;;){let a=r.substring(s.length),n=this.getMountPoint(a,s);if(!n)return null;if(s=this.pathUtils.join(s,n),!this.isMount.has(s)){if(this.notMount.has(s))continue;try{if(this.typeCheck!==null&&(this.baseFs.statSync(s).mode&Id.constants.S_IFMT)!==this.typeCheck){this.notMount.add(s);continue}}catch{return null}this.isMount.add(s)}return{archivePath:s,subPath:this.pathUtils.join(vt.root,r.substring(s.length))}}}limitOpenFiles(r){if(this.mountInstances===null)return;let s=Date.now(),a=s+this.maxAge,n=r===null?0:this.mountInstances.size-r;for(let[c,{childFs:f,expiresAt:p,refCount:h}]of this.mountInstances.entries())if(!(h!==0||f.hasOpenFileHandles?.())){if(s>=p){f.saveAndClose?.(),this.mountInstances.delete(c),n-=1;continue}else if(r===null||n<=0){a=p;break}f.saveAndClose?.(),this.mountInstances.delete(c),n-=1}this.limitOpenFilesTimeout===null&&(r===null&&this.mountInstances.size>0||r!==null)&&isFinite(a)&&(this.limitOpenFilesTimeout=setTimeout(()=>{this.limitOpenFilesTimeout=null,this.limitOpenFiles(null)},a-s).unref())}async getMountPromise(r,s){if(this.mountInstances){let a=this.mountInstances.get(r);if(!a){let n=await this.factoryPromise(this.baseFs,r);a=this.mountInstances.get(r),a||(a={childFs:n(),expiresAt:0,refCount:0})}this.mountInstances.delete(r),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(r,a),a.expiresAt=Date.now()+this.maxAge,a.refCount+=1;try{return await s(a.childFs)}finally{a.refCount-=1}}else{let a=(await this.factoryPromise(this.baseFs,r))();try{return await s(a)}finally{a.saveAndClose?.()}}}getMountSync(r,s){if(this.mountInstances){let a=this.mountInstances.get(r);return a||(a={childFs:this.factorySync(this.baseFs,r),expiresAt:0,refCount:0}),this.mountInstances.delete(r),this.limitOpenFiles(this.maxOpenFiles-1),this.mountInstances.set(r,a),a.expiresAt=Date.now()+this.maxAge,s(a.childFs)}else{let a=this.factorySync(this.baseFs,r);try{return s(a)}finally{a.saveAndClose?.()}}}}});var er,nx,xX=Ze(()=>{yd();ol();er=()=>Object.assign(new Error("ENOSYS: unsupported filesystem access"),{code:"ENOSYS"}),nx=class e extends yp{static{this.instance=new e}constructor(){super(K)}getExtractHint(){throw er()}getRealPath(){throw er()}resolve(){throw er()}async openPromise(){throw er()}openSync(){throw er()}async opendirPromise(){throw er()}opendirSync(){throw er()}async readPromise(){throw er()}readSync(){throw er()}async writePromise(){throw er()}writeSync(){throw er()}async closePromise(){throw er()}closeSync(){throw er()}createWriteStream(){throw er()}createReadStream(){throw er()}async realpathPromise(){throw er()}realpathSync(){throw er()}async readdirPromise(){throw er()}readdirSync(){throw er()}async existsPromise(t){throw er()}existsSync(t){throw er()}async accessPromise(){throw er()}accessSync(){throw er()}async statPromise(){throw er()}statSync(){throw er()}async fstatPromise(t){throw er()}fstatSync(t){throw er()}async lstatPromise(t){throw er()}lstatSync(t){throw er()}async fchmodPromise(){throw er()}fchmodSync(){throw er()}async chmodPromise(){throw er()}chmodSync(){throw er()}async fchownPromise(){throw er()}fchownSync(){throw er()}async chownPromise(){throw er()}chownSync(){throw er()}async mkdirPromise(){throw er()}mkdirSync(){throw er()}async rmdirPromise(){throw er()}rmdirSync(){throw er()}async rmPromise(){throw er()}rmSync(){throw er()}async linkPromise(){throw er()}linkSync(){throw er()}async symlinkPromise(){throw er()}symlinkSync(){throw er()}async renamePromise(){throw er()}renameSync(){throw er()}async copyFilePromise(){throw er()}copyFileSync(){throw er()}async appendFilePromise(){throw er()}appendFileSync(){throw er()}async writeFilePromise(){throw er()}writeFileSync(){throw er()}async unlinkPromise(){throw er()}unlinkSync(){throw er()}async utimesPromise(){throw er()}utimesSync(){throw er()}async lutimesPromise(){throw er()}lutimesSync(){throw er()}async readFilePromise(){throw er()}readFileSync(){throw er()}async readlinkPromise(){throw er()}readlinkSync(){throw er()}async truncatePromise(){throw er()}truncateSync(){throw er()}async ftruncatePromise(t,r){throw er()}ftruncateSync(t,r){throw er()}watch(){throw er()}watchFile(){throw er()}unwatchFile(){throw er()}}});var $h,kX=Ze(()=>{Ep();ol();$h=class extends Gs{constructor(t){super(fe),this.baseFs=t}mapFromBase(t){return fe.fromPortablePath(t)}mapToBase(t){return fe.toPortablePath(t)}}});var Vje,AU,Yje,mo,QX=Ze(()=>{Ed();Ep();ol();Vje=/^[0-9]+$/,AU=/^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/,Yje=/^([^/]+-)?[a-f0-9]+$/,mo=class e extends Gs{static makeVirtualPath(t,r,s){if(K.basename(t)!=="__virtual__")throw new Error('Assertion failed: Virtual folders must be named "__virtual__"');if(!K.basename(r).match(Yje))throw new Error("Assertion failed: Virtual components must be ended by an hexadecimal hash");let n=K.relative(K.dirname(t),s).split("/"),c=0;for(;c<n.length&&n[c]==="..";)c+=1;let f=n.slice(c);return K.join(t,r,String(c),...f)}static resolveVirtual(t){let r=t.match(AU);if(!r||!r[3]&&r[5])return t;let s=K.dirname(r[1]);if(!r[3]||!r[4])return s;if(!Vje.test(r[4]))return t;let n=Number(r[4]),c="../".repeat(n),f=r[5]||".";return e.resolveVirtual(K.join(s,c,f))}constructor({baseFs:t=new Yn}={}){super(K),this.baseFs=t}getExtractHint(t){return this.baseFs.getExtractHint(t)}getRealPath(){return this.baseFs.getRealPath()}realpathSync(t){let r=t.match(AU);if(!r)return this.baseFs.realpathSync(t);if(!r[5])return t;let s=this.baseFs.realpathSync(this.mapToBase(t));return e.makeVirtualPath(r[1],r[3],s)}async realpathPromise(t){let r=t.match(AU);if(!r)return await this.baseFs.realpathPromise(t);if(!r[5])return t;let s=await this.baseFs.realpathPromise(this.mapToBase(t));return e.makeVirtualPath(r[1],r[3],s)}mapToBase(t){if(t==="")return t;if(this.pathUtils.isAbsolute(t))return e.resolveVirtual(t);let r=e.resolveVirtual(this.baseFs.resolve(vt.dot)),s=e.resolveVirtual(this.baseFs.resolve(t));return K.relative(r,s)||vt.dot}mapFromBase(t){return t}}});function Kje(e,t){return typeof pU.default.isUtf8<"u"?pU.default.isUtf8(e):Buffer.byteLength(t)===e.byteLength}var pU,RX,TX,ix,FX=Ze(()=>{pU=et(Ie("buffer")),RX=Ie("url"),TX=Ie("util");Ep();ol();ix=class extends Gs{constructor(t){super(fe),this.baseFs=t}mapFromBase(t){return t}mapToBase(t){if(typeof t=="string")return t;if(t instanceof URL)return(0,RX.fileURLToPath)(t);if(Buffer.isBuffer(t)){let r=t.toString();if(!Kje(t,r))throw new Error("Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942");return r}throw new Error(`Unsupported path type: ${(0,TX.inspect)(t)}`)}}});var UX,qo,Ip,e0,sx,ox,uE,Qu,Ru,NX,OX,LX,MX,kB,_X=Ze(()=>{UX=Ie("readline"),qo=Symbol("kBaseFs"),Ip=Symbol("kFd"),e0=Symbol("kClosePromise"),sx=Symbol("kCloseResolve"),ox=Symbol("kCloseReject"),uE=Symbol("kRefs"),Qu=Symbol("kRef"),Ru=Symbol("kUnref"),kB=class{constructor(t,r){this[MX]=1;this[LX]=void 0;this[OX]=void 0;this[NX]=void 0;this[qo]=r,this[Ip]=t}get fd(){return this[Ip]}async appendFile(t,r){try{this[Qu](this.appendFile);let s=(typeof r=="string"?r:r?.encoding)??void 0;return await this[qo].appendFilePromise(this.fd,t,s?{encoding:s}:void 0)}finally{this[Ru]()}}async chown(t,r){try{return this[Qu](this.chown),await this[qo].fchownPromise(this.fd,t,r)}finally{this[Ru]()}}async chmod(t){try{return this[Qu](this.chmod),await this[qo].fchmodPromise(this.fd,t)}finally{this[Ru]()}}createReadStream(t){return this[qo].createReadStream(null,{...t,fd:this.fd})}createWriteStream(t){return this[qo].createWriteStream(null,{...t,fd:this.fd})}datasync(){throw new Error("Method not implemented.")}sync(){throw new Error("Method not implemented.")}async read(t,r,s,a){try{this[Qu](this.read);let n,c;return ArrayBuffer.isView(t)?typeof r=="object"&&r!==null?(n=t,c=r?.offset??0,s=r?.length??n.byteLength-c,a=r?.position??null):(n=t,c=r??0,s??=0):(n=t?.buffer??Buffer.alloc(16384),c=t?.offset??0,s=t?.length??n.byteLength-c,a=t?.position??null),s===0?{bytesRead:s,buffer:n}:{bytesRead:await this[qo].readPromise(this.fd,Buffer.isBuffer(n)?n:Buffer.from(n.buffer,n.byteOffset,n.byteLength),c,s,a),buffer:n}}finally{this[Ru]()}}async readFile(t){try{this[Qu](this.readFile);let r=(typeof t=="string"?t:t?.encoding)??void 0;return await this[qo].readFilePromise(this.fd,r)}finally{this[Ru]()}}readLines(t){return(0,UX.createInterface)({input:this.createReadStream(t),crlfDelay:1/0})}async stat(t){try{return this[Qu](this.stat),await this[qo].fstatPromise(this.fd,t)}finally{this[Ru]()}}async truncate(t){try{return this[Qu](this.truncate),await this[qo].ftruncatePromise(this.fd,t)}finally{this[Ru]()}}utimes(t,r){throw new Error("Method not implemented.")}async writeFile(t,r){try{this[Qu](this.writeFile);let s=(typeof r=="string"?r:r?.encoding)??void 0;await this[qo].writeFilePromise(this.fd,t,s)}finally{this[Ru]()}}async write(...t){try{if(this[Qu](this.write),ArrayBuffer.isView(t[0])){let[r,s,a,n]=t;return{bytesWritten:await this[qo].writePromise(this.fd,r,s??void 0,a??void 0,n??void 0),buffer:r}}else{let[r,s,a]=t;return{bytesWritten:await this[qo].writePromise(this.fd,r,s,a),buffer:r}}}finally{this[Ru]()}}async writev(t,r){try{this[Qu](this.writev);let s=0;if(typeof r<"u")for(let a of t){let n=await this.write(a,void 0,void 0,r);s+=n.bytesWritten,r+=n.bytesWritten}else for(let a of t){let n=await this.write(a);s+=n.bytesWritten}return{buffers:t,bytesWritten:s}}finally{this[Ru]()}}readv(t,r){throw new Error("Method not implemented.")}close(){if(this[Ip]===-1)return Promise.resolve();if(this[e0])return this[e0];if(this[uE]--,this[uE]===0){let t=this[Ip];this[Ip]=-1,this[e0]=this[qo].closePromise(t).finally(()=>{this[e0]=void 0})}else this[e0]=new Promise((t,r)=>{this[sx]=t,this[ox]=r}).finally(()=>{this[e0]=void 0,this[ox]=void 0,this[sx]=void 0});return this[e0]}[(qo,Ip,MX=uE,LX=e0,OX=sx,NX=ox,Qu)](t){if(this[Ip]===-1){let r=new Error("file closed");throw r.code="EBADF",r.syscall=t.name,r}this[uE]++}[Ru](){if(this[uE]--,this[uE]===0){let t=this[Ip];this[Ip]=-1,this[qo].closePromise(t).then(this[sx],this[ox])}}}});function QB(e,t){t=new ix(t);let r=(s,a,n)=>{let c=s[a];s[a]=n,typeof c?.[fE.promisify.custom]<"u"&&(n[fE.promisify.custom]=c[fE.promisify.custom])};{r(e,"exists",(s,...a)=>{let c=typeof a[a.length-1]=="function"?a.pop():()=>{};process.nextTick(()=>{t.existsPromise(s).then(f=>{c(f)},()=>{c(!1)})})}),r(e,"read",(...s)=>{let[a,n,c,f,p,h]=s;if(s.length<=3){let E={};s.length<3?h=s[1]:(E=s[1],h=s[2]),{buffer:n=Buffer.alloc(16384),offset:c=0,length:f=n.byteLength,position:p}=E}if(c==null&&(c=0),f|=0,f===0){process.nextTick(()=>{h(null,0,n)});return}p==null&&(p=-1),process.nextTick(()=>{t.readPromise(a,n,c,f,p).then(E=>{h(null,E,n)},E=>{h(E,0,n)})})});for(let s of HX){let a=s.replace(/Promise$/,"");if(typeof e[a]>"u")continue;let n=t[s];if(typeof n>"u")continue;r(e,a,(...f)=>{let h=typeof f[f.length-1]=="function"?f.pop():()=>{};process.nextTick(()=>{n.apply(t,f).then(E=>{h(null,E)},E=>{h(E)})})})}e.realpath.native=e.realpath}{r(e,"existsSync",s=>{try{return t.existsSync(s)}catch{return!1}}),r(e,"readSync",(...s)=>{let[a,n,c,f,p]=s;return s.length<=3&&({offset:c=0,length:f=n.byteLength,position:p}=s[2]||{}),c==null&&(c=0),f|=0,f===0?0:(p==null&&(p=-1),t.readSync(a,n,c,f,p))});for(let s of Jje){let a=s;if(typeof e[a]>"u")continue;let n=t[s];typeof n>"u"||r(e,a,n.bind(t))}e.realpathSync.native=e.realpathSync}{let s=e.promises;for(let a of HX){let n=a.replace(/Promise$/,"");if(typeof s[n]>"u")continue;let c=t[a];typeof c>"u"||a!=="open"&&r(s,n,(f,...p)=>f instanceof kB?f[n].apply(f,p):c.call(t,f,...p))}r(s,"open",async(...a)=>{let n=await t.openPromise(...a);return new kB(n,t)})}e.read[fE.promisify.custom]=async(s,a,...n)=>({bytesRead:await t.readPromise(s,a,...n),buffer:a}),e.write[fE.promisify.custom]=async(s,a,...n)=>({bytesWritten:await t.writePromise(s,a,...n),buffer:a})}function ax(e,t){let r=Object.create(e);return QB(r,t),r}var fE,Jje,HX,jX=Ze(()=>{fE=Ie("util");FX();_X();Jje=new Set(["accessSync","appendFileSync","createReadStream","createWriteStream","chmodSync","fchmodSync","chownSync","fchownSync","closeSync","copyFileSync","linkSync","lstatSync","fstatSync","lutimesSync","mkdirSync","openSync","opendirSync","readlinkSync","readFileSync","readdirSync","readlinkSync","realpathSync","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","ftruncateSync","unlinkSync","unwatchFile","utimesSync","watch","watchFile","writeFileSync","writeSync"]),HX=new Set(["accessPromise","appendFilePromise","fchmodPromise","chmodPromise","fchownPromise","chownPromise","closePromise","copyFilePromise","linkPromise","fstatPromise","lstatPromise","lutimesPromise","mkdirPromise","openPromise","opendirPromise","readdirPromise","realpathPromise","readFilePromise","readdirPromise","readlinkPromise","renamePromise","rmdirPromise","rmPromise","statPromise","symlinkPromise","truncatePromise","ftruncatePromise","unlinkPromise","utimesPromise","writeFilePromise","writeSync"])});function GX(e){let t=Math.ceil(Math.random()*4294967296).toString(16).padStart(8,"0");return`${e}${t}`}function qX(){if(hU)return hU;let e=fe.toPortablePath(WX.default.tmpdir()),t=le.realpathSync(e);return process.once("exit",()=>{le.rmtempSync()}),hU={tmpdir:e,realTmpdir:t}}var WX,Tu,hU,le,VX=Ze(()=>{WX=et(Ie("os"));Ed();ol();Tu=new Set,hU=null;le=Object.assign(new Yn,{detachTemp(e){Tu.delete(e)},mktempSync(e){let{tmpdir:t,realTmpdir:r}=qX();for(;;){let s=GX("xfs-");try{this.mkdirSync(K.join(t,s))}catch(n){if(n.code==="EEXIST")continue;throw n}let a=K.join(r,s);if(Tu.add(a),typeof e>"u")return a;try{return e(a)}finally{if(Tu.has(a)){Tu.delete(a);try{this.removeSync(a)}catch{}}}}},async mktempPromise(e){let{tmpdir:t,realTmpdir:r}=qX();for(;;){let s=GX("xfs-");try{await this.mkdirPromise(K.join(t,s))}catch(n){if(n.code==="EEXIST")continue;throw n}let a=K.join(r,s);if(Tu.add(a),typeof e>"u")return a;try{return await e(a)}finally{if(Tu.has(a)){Tu.delete(a);try{await this.removePromise(a)}catch{}}}}},async rmtempPromise(){await Promise.all(Array.from(Tu.values()).map(async e=>{try{await le.removePromise(e,{maxRetries:0}),Tu.delete(e)}catch{}}))},rmtempSync(){for(let e of Tu)try{le.removeSync(e),Tu.delete(e)}catch{}}})});var RB={};Yt(RB,{AliasFS:()=>jf,BasePortableFakeFS:()=>Hf,CustomDir:()=>xB,CwdFS:()=>bn,FakeFS:()=>yp,Filename:()=>Er,JailFS:()=>Gf,LazyFS:()=>cE,MountFS:()=>Xh,NoFS:()=>nx,NodeFS:()=>Yn,PortablePath:()=>vt,PosixFS:()=>$h,ProxiedFS:()=>Gs,VirtualFS:()=>mo,constants:()=>Ai,errors:()=>or,extendFs:()=>ax,normalizeLineEndings:()=>md,npath:()=>fe,opendir:()=>ex,patchFs:()=>QB,ppath:()=>K,setupCopyIndex:()=>$P,statUtils:()=>sl,unwatchAllFiles:()=>dd,unwatchFile:()=>gd,watchFile:()=>lE,xfs:()=>le});var Dt=Ze(()=>{cX();zP();aU();uU();gX();fU();yd();ol();ol();CX();yd();vX();DX();bX();PX();xX();Ed();kX();Ep();QX();jX();VX()});var ZX=G((_bt,zX)=>{zX.exports=JX;JX.sync=Zje;var YX=Ie("fs");function zje(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var s=0;s<r.length;s++){var a=r[s].toLowerCase();if(a&&e.substr(-a.length).toLowerCase()===a)return!0}return!1}function KX(e,t,r){return!e.isSymbolicLink()&&!e.isFile()?!1:zje(t,r)}function JX(e,t,r){YX.stat(e,function(s,a){r(s,s?!1:KX(a,e,t))})}function Zje(e,t){return KX(YX.statSync(e),e,t)}});var r$=G((Hbt,t$)=>{t$.exports=$X;$X.sync=Xje;var XX=Ie("fs");function $X(e,t,r){XX.stat(e,function(s,a){r(s,s?!1:e$(a,t))})}function Xje(e,t){return e$(XX.statSync(e),t)}function e$(e,t){return e.isFile()&&$je(e,t)}function $je(e,t){var r=e.mode,s=e.uid,a=e.gid,n=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),c=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),f=parseInt("100",8),p=parseInt("010",8),h=parseInt("001",8),E=f|p,C=r&h||r&p&&a===c||r&f&&s===n||r&E&&n===0;return C}});var i$=G((Gbt,n$)=>{var jbt=Ie("fs"),lx;process.platform==="win32"||global.TESTING_WINDOWS?lx=ZX():lx=r$();n$.exports=gU;gU.sync=e6e;function gU(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(s,a){gU(e,t||{},function(n,c){n?a(n):s(c)})})}lx(e,t||{},function(s,a){s&&(s.code==="EACCES"||t&&t.ignoreErrors)&&(s=null,a=!1),r(s,a)})}function e6e(e,t){try{return lx.sync(e,t||{})}catch(r){if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var f$=G((qbt,u$)=>{var AE=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",s$=Ie("path"),t6e=AE?";":":",o$=i$(),a$=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),l$=(e,t)=>{let r=t.colon||t6e,s=e.match(/\//)||AE&&e.match(/\\/)?[""]:[...AE?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],a=AE?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",n=AE?a.split(r):[""];return AE&&e.indexOf(".")!==-1&&n[0]!==""&&n.unshift(""),{pathEnv:s,pathExt:n,pathExtExe:a}},c$=(e,t,r)=>{typeof t=="function"&&(r=t,t={}),t||(t={});let{pathEnv:s,pathExt:a,pathExtExe:n}=l$(e,t),c=[],f=h=>new Promise((E,C)=>{if(h===s.length)return t.all&&c.length?E(c):C(a$(e));let S=s[h],x=/^".*"$/.test(S)?S.slice(1,-1):S,I=s$.join(x,e),T=!x&&/^\.[\\\/]/.test(e)?e.slice(0,2)+I:I;E(p(T,h,0))}),p=(h,E,C)=>new Promise((S,x)=>{if(C===a.length)return S(f(E+1));let I=a[C];o$(h+I,{pathExt:n},(T,O)=>{if(!T&&O)if(t.all)c.push(h+I);else return S(h+I);return S(p(h,E,C+1))})});return r?f(0).then(h=>r(null,h),r):f(0)},r6e=(e,t)=>{t=t||{};let{pathEnv:r,pathExt:s,pathExtExe:a}=l$(e,t),n=[];for(let c=0;c<r.length;c++){let f=r[c],p=/^".*"$/.test(f)?f.slice(1,-1):f,h=s$.join(p,e),E=!p&&/^\.[\\\/]/.test(e)?e.slice(0,2)+h:h;for(let C=0;C<s.length;C++){let S=E+s[C];try{if(o$.sync(S,{pathExt:a}))if(t.all)n.push(S);else return S}catch{}}}if(t.all&&n.length)return n;if(t.nothrow)return null;throw a$(e)};u$.exports=c$;c$.sync=r6e});var p$=G((Wbt,dU)=>{"use strict";var A$=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(s=>s.toUpperCase()==="PATH")||"Path"};dU.exports=A$;dU.exports.default=A$});var m$=G((Vbt,d$)=>{"use strict";var h$=Ie("path"),n6e=f$(),i6e=p$();function g$(e,t){let r=e.options.env||process.env,s=process.cwd(),a=e.options.cwd!=null,n=a&&process.chdir!==void 0&&!process.chdir.disabled;if(n)try{process.chdir(e.options.cwd)}catch{}let c;try{c=n6e.sync(e.command,{path:r[i6e({env:r})],pathExt:t?h$.delimiter:void 0})}catch{}finally{n&&process.chdir(s)}return c&&(c=h$.resolve(a?e.options.cwd:"",c)),c}function s6e(e){return g$(e)||g$(e,!0)}d$.exports=s6e});var y$=G((Ybt,yU)=>{"use strict";var mU=/([()\][%!^"`<>&|;, *?])/g;function o6e(e){return e=e.replace(mU,"^$1"),e}function a6e(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(mU,"^$1"),t&&(e=e.replace(mU,"^$1")),e}yU.exports.command=o6e;yU.exports.argument=a6e});var I$=G((Kbt,E$)=>{"use strict";E$.exports=/^#!(.*)/});var w$=G((Jbt,C$)=>{"use strict";var l6e=I$();C$.exports=(e="")=>{let t=e.match(l6e);if(!t)return null;let[r,s]=t[0].replace(/#! ?/,"").split(" "),a=r.split("/").pop();return a==="env"?s:s?`${a} ${s}`:a}});var v$=G((zbt,B$)=>{"use strict";var EU=Ie("fs"),c6e=w$();function u6e(e){let r=Buffer.alloc(150),s;try{s=EU.openSync(e,"r"),EU.readSync(s,r,0,150,0),EU.closeSync(s)}catch{}return c6e(r.toString())}B$.exports=u6e});var P$=G((Zbt,b$)=>{"use strict";var f6e=Ie("path"),S$=m$(),D$=y$(),A6e=v$(),p6e=process.platform==="win32",h6e=/\.(?:com|exe)$/i,g6e=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function d6e(e){e.file=S$(e);let t=e.file&&A6e(e.file);return t?(e.args.unshift(e.file),e.command=t,S$(e)):e.file}function m6e(e){if(!p6e)return e;let t=d6e(e),r=!h6e.test(t);if(e.options.forceShell||r){let s=g6e.test(t);e.command=f6e.normalize(e.command),e.command=D$.command(e.command),e.args=e.args.map(n=>D$.argument(n,s));let a=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${a}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function y6e(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let s={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?s:m6e(s)}b$.exports=y6e});var Q$=G((Xbt,k$)=>{"use strict";var IU=process.platform==="win32";function CU(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function E6e(e,t){if(!IU)return;let r=e.emit;e.emit=function(s,a){if(s==="exit"){let n=x$(a,t);if(n)return r.call(e,"error",n)}return r.apply(e,arguments)}}function x$(e,t){return IU&&e===1&&!t.file?CU(t.original,"spawn"):null}function I6e(e,t){return IU&&e===1&&!t.file?CU(t.original,"spawnSync"):null}k$.exports={hookChildProcess:E6e,verifyENOENT:x$,verifyENOENTSync:I6e,notFoundError:CU}});var vU=G(($bt,pE)=>{"use strict";var R$=Ie("child_process"),wU=P$(),BU=Q$();function T$(e,t,r){let s=wU(e,t,r),a=R$.spawn(s.command,s.args,s.options);return BU.hookChildProcess(a,s),a}function C6e(e,t,r){let s=wU(e,t,r),a=R$.spawnSync(s.command,s.args,s.options);return a.error=a.error||BU.verifyENOENTSync(a.status,s),a}pE.exports=T$;pE.exports.spawn=T$;pE.exports.sync=C6e;pE.exports._parse=wU;pE.exports._enoent=BU});var N$=G((ePt,F$)=>{"use strict";function w6e(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Cd(e,t,r,s){this.message=e,this.expected=t,this.found=r,this.location=s,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Cd)}w6e(Cd,Error);Cd.buildMessage=function(e,t){var r={literal:function(h){return'"'+a(h.text)+'"'},class:function(h){var E="",C;for(C=0;C<h.parts.length;C++)E+=h.parts[C]instanceof Array?n(h.parts[C][0])+"-"+n(h.parts[C][1]):n(h.parts[C]);return"["+(h.inverted?"^":"")+E+"]"},any:function(h){return"any character"},end:function(h){return"end of input"},other:function(h){return h.description}};function s(h){return h.charCodeAt(0).toString(16).toUpperCase()}function a(h){return h.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(E){return"\\x0"+s(E)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(E){return"\\x"+s(E)})}function n(h){return h.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(E){return"\\x0"+s(E)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(E){return"\\x"+s(E)})}function c(h){return r[h.type](h)}function f(h){var E=new Array(h.length),C,S;for(C=0;C<h.length;C++)E[C]=c(h[C]);if(E.sort(),E.length>0){for(C=1,S=1;C<E.length;C++)E[C-1]!==E[C]&&(E[S]=E[C],S++);E.length=S}switch(E.length){case 1:return E[0];case 2:return E[0]+" or "+E[1];default:return E.slice(0,-1).join(", ")+", or "+E[E.length-1]}}function p(h){return h?'"'+a(h)+'"':"end of input"}return"Expected "+f(e)+" but "+p(t)+" found."};function B6e(e,t){t=t!==void 0?t:{};var r={},s={Start:Za},a=Za,n=function(N){return N||[]},c=function(N,J,re){return[{command:N,type:J}].concat(re||[])},f=function(N,J){return[{command:N,type:J||";"}]},p=function(N){return N},h=";",E=ur(";",!1),C="&",S=ur("&",!1),x=function(N,J){return J?{chain:N,then:J}:{chain:N}},I=function(N,J){return{type:N,line:J}},T="&&",O=ur("&&",!1),U="||",Y=ur("||",!1),te=function(N,J){return J?{...N,then:J}:N},ie=function(N,J){return{type:N,chain:J}},ue="|&",ae=ur("|&",!1),de="|",Ae=ur("|",!1),Ce="=",Ee=ur("=",!1),g=function(N,J){return{name:N,args:[J]}},Se=function(N){return{name:N,args:[]}},Be="(",me=ur("(",!1),ce=")",X=ur(")",!1),De=function(N,J){return{type:"subshell",subshell:N,args:J}},Qe="{",it=ur("{",!1),_="}",tt=ur("}",!1),Ne=function(N,J){return{type:"group",group:N,args:J}},ke=function(N,J){return{type:"command",args:J,envs:N}},be=function(N){return{type:"envs",envs:N}},je=function(N){return N},Re=function(N){return N},ct=/^[0-9]/,Me=zi([["0","9"]],!1,!1),P=function(N,J,re){return{type:"redirection",subtype:J,fd:N!==null?parseInt(N):null,args:[re]}},w=">>",b=ur(">>",!1),y=">&",F=ur(">&",!1),z=">",Z=ur(">",!1),$="<<<",se=ur("<<<",!1),xe="<&",Fe=ur("<&",!1),ut="<",Ct=ur("<",!1),qt=function(N){return{type:"argument",segments:[].concat(...N)}},ir=function(N){return N},Pt="$'",dn=ur("$'",!1),Pr="'",Ir=ur("'",!1),Or=function(N){return[{type:"text",text:N}]},on='""',li=ur('""',!1),So=function(){return{type:"text",text:""}},ns='"',so=ur('"',!1),Do=function(N){return N},ji=function(N){return{type:"arithmetic",arithmetic:N,quoted:!0}},oo=function(N){return{type:"shell",shell:N,quoted:!0}},bo=function(N){return{type:"variable",...N,quoted:!0}},RA=function(N){return{type:"text",text:N}},hf=function(N){return{type:"arithmetic",arithmetic:N,quoted:!1}},hh=function(N){return{type:"shell",shell:N,quoted:!1}},gh=function(N){return{type:"variable",...N,quoted:!1}},ao=function(N){return{type:"glob",pattern:N}},Gn=/^[^']/,Ns=zi(["'"],!0,!1),lo=function(N){return N.join("")},iu=/^[^$"]/,su=zi(["$",'"'],!0,!1),ou=`\\
`,TA=ur(`\\
`,!1),FA=function(){return""},ua="\\",fa=ur("\\",!1),NA=/^[\\$"`]/,gr=zi(["\\","$",'"',"`"],!1,!1),Po=function(N){return N},Ue="\\a",au=ur("\\a",!1),Cr=function(){return"a"},gf="\\b",OA=ur("\\b",!1),LA=function(){return"\b"},lu=/^[Ee]/,cu=zi(["E","e"],!1,!1),ac=function(){return"\x1B"},we="\\f",Nt=ur("\\f",!1),lc=function(){return"\f"},Oi="\\n",co=ur("\\n",!1),Tt=function(){return`
`},Qn="\\r",Aa=ur("\\r",!1),Gi=function(){return"\r"},Li="\\t",ja=ur("\\t",!1),mn=function(){return"	"},Zn="\\v",uu=ur("\\v",!1),dh=function(){return"\v"},Ga=/^[\\'"?]/,qa=zi(["\\","'",'"',"?"],!1,!1),Wa=function(N){return String.fromCharCode(parseInt(N,16))},$e="\\x",Va=ur("\\x",!1),df="\\u",cc=ur("\\u",!1),vn="\\U",pa=ur("\\U",!1),MA=function(N){return String.fromCodePoint(parseInt(N,16))},UA=/^[0-7]/,ha=zi([["0","7"]],!1,!1),xl=/^[0-9a-fA-f]/,Mt=zi([["0","9"],["a","f"],["A","f"]],!1,!1),Rn=If(),ga="{}",Ya=ur("{}",!1),is=function(){return"{}"},uc="-",fu=ur("-",!1),fc="+",Ka=ur("+",!1),Mi=".",Bs=ur(".",!1),kl=function(N,J,re){return{type:"number",value:(N==="-"?-1:1)*parseFloat(J.join("")+"."+re.join(""))}},mf=function(N,J){return{type:"number",value:(N==="-"?-1:1)*parseInt(J.join(""))}},Ac=function(N){return{type:"variable",...N}},Bi=function(N){return{type:"variable",name:N}},Tn=function(N){return N},pc="*",Je=ur("*",!1),ot="/",St=ur("/",!1),lr=function(N,J,re){return{type:J==="*"?"multiplication":"division",right:re}},ee=function(N,J){return J.reduce((re,ge)=>({left:re,...ge}),N)},ye=function(N,J,re){return{type:J==="+"?"addition":"subtraction",right:re}},Oe="$((",mt=ur("$((",!1),Et="))",bt=ur("))",!1),tr=function(N){return N},pn="$(",ci=ur("$(",!1),qi=function(N){return N},Fn="${",Ja=ur("${",!1),Iy=":-",q1=ur(":-",!1),xo=function(N,J){return{name:N,defaultValue:J}},Cy=":-}",mh=ur(":-}",!1),W1=function(N){return{name:N,defaultValue:[]}},ko=":+",yh=ur(":+",!1),Eh=function(N,J){return{name:N,alternativeValue:J}},Au=":+}",Ih=ur(":+}",!1),Rg=function(N){return{name:N,alternativeValue:[]}},Tg=function(N){return{name:N}},Fg="$",wy=ur("$",!1),yf=function(N){return t.isGlobPattern(N)},Qo=function(N){return N},Ql=/^[a-zA-Z0-9_]/,Ch=zi([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),Ng=function(){return Dy()},Rl=/^[$@*?#a-zA-Z0-9_\-]/,Tl=zi(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),By=/^[()}<>$|&; \t"']/,_A=zi(["(",")","}","<",">","$","|","&",";"," ","	",'"',"'"],!1,!1),vy=/^[<>&; \t"']/,Sy=zi(["<",">","&",";"," ","	",'"',"'"],!1,!1),HA=/^[ \t]/,jA=zi([" ","	"],!1,!1),W=0,xt=0,GA=[{line:1,column:1}],Ro=0,Ef=[],yt=0,pu;if("startRule"in t){if(!(t.startRule in s))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=s[t.startRule]}function Dy(){return e.substring(xt,W)}function Og(){return Cf(xt,W)}function V1(N,J){throw J=J!==void 0?J:Cf(xt,W),qA([Lg(N)],e.substring(xt,W),J)}function wh(N,J){throw J=J!==void 0?J:Cf(xt,W),mi(N,J)}function ur(N,J){return{type:"literal",text:N,ignoreCase:J}}function zi(N,J,re){return{type:"class",parts:N,inverted:J,ignoreCase:re}}function If(){return{type:"any"}}function za(){return{type:"end"}}function Lg(N){return{type:"other",description:N}}function hu(N){var J=GA[N],re;if(J)return J;for(re=N-1;!GA[re];)re--;for(J=GA[re],J={line:J.line,column:J.column};re<N;)e.charCodeAt(re)===10?(J.line++,J.column=1):J.column++,re++;return GA[N]=J,J}function Cf(N,J){var re=hu(N),ge=hu(J);return{start:{offset:N,line:re.line,column:re.column},end:{offset:J,line:ge.line,column:ge.column}}}function wt(N){W<Ro||(W>Ro&&(Ro=W,Ef=[]),Ef.push(N))}function mi(N,J){return new Cd(N,null,null,J)}function qA(N,J,re){return new Cd(Cd.buildMessage(N,J),N,J,re)}function Za(){var N,J,re;for(N=W,J=[],re=kt();re!==r;)J.push(re),re=kt();return J!==r?(re=da(),re===r&&(re=null),re!==r?(xt=N,J=n(re),N=J):(W=N,N=r)):(W=N,N=r),N}function da(){var N,J,re,ge,Ke;if(N=W,J=Bh(),J!==r){for(re=[],ge=kt();ge!==r;)re.push(ge),ge=kt();re!==r?(ge=Mg(),ge!==r?(Ke=Xa(),Ke===r&&(Ke=null),Ke!==r?(xt=N,J=c(J,ge,Ke),N=J):(W=N,N=r)):(W=N,N=r)):(W=N,N=r)}else W=N,N=r;if(N===r)if(N=W,J=Bh(),J!==r){for(re=[],ge=kt();ge!==r;)re.push(ge),ge=kt();re!==r?(ge=Mg(),ge===r&&(ge=null),ge!==r?(xt=N,J=f(J,ge),N=J):(W=N,N=r)):(W=N,N=r)}else W=N,N=r;return N}function Xa(){var N,J,re,ge,Ke;for(N=W,J=[],re=kt();re!==r;)J.push(re),re=kt();if(J!==r)if(re=da(),re!==r){for(ge=[],Ke=kt();Ke!==r;)ge.push(Ke),Ke=kt();ge!==r?(xt=N,J=p(re),N=J):(W=N,N=r)}else W=N,N=r;else W=N,N=r;return N}function Mg(){var N;return e.charCodeAt(W)===59?(N=h,W++):(N=r,yt===0&&wt(E)),N===r&&(e.charCodeAt(W)===38?(N=C,W++):(N=r,yt===0&&wt(S))),N}function Bh(){var N,J,re;return N=W,J=WA(),J!==r?(re=Ug(),re===r&&(re=null),re!==r?(xt=N,J=x(J,re),N=J):(W=N,N=r)):(W=N,N=r),N}function Ug(){var N,J,re,ge,Ke,pt,dr;for(N=W,J=[],re=kt();re!==r;)J.push(re),re=kt();if(J!==r)if(re=by(),re!==r){for(ge=[],Ke=kt();Ke!==r;)ge.push(Ke),Ke=kt();if(ge!==r)if(Ke=Bh(),Ke!==r){for(pt=[],dr=kt();dr!==r;)pt.push(dr),dr=kt();pt!==r?(xt=N,J=I(re,Ke),N=J):(W=N,N=r)}else W=N,N=r;else W=N,N=r}else W=N,N=r;else W=N,N=r;return N}function by(){var N;return e.substr(W,2)===T?(N=T,W+=2):(N=r,yt===0&&wt(O)),N===r&&(e.substr(W,2)===U?(N=U,W+=2):(N=r,yt===0&&wt(Y))),N}function WA(){var N,J,re;return N=W,J=wf(),J!==r?(re=_g(),re===r&&(re=null),re!==r?(xt=N,J=te(J,re),N=J):(W=N,N=r)):(W=N,N=r),N}function _g(){var N,J,re,ge,Ke,pt,dr;for(N=W,J=[],re=kt();re!==r;)J.push(re),re=kt();if(J!==r)if(re=gu(),re!==r){for(ge=[],Ke=kt();Ke!==r;)ge.push(Ke),Ke=kt();if(ge!==r)if(Ke=WA(),Ke!==r){for(pt=[],dr=kt();dr!==r;)pt.push(dr),dr=kt();pt!==r?(xt=N,J=ie(re,Ke),N=J):(W=N,N=r)}else W=N,N=r;else W=N,N=r}else W=N,N=r;else W=N,N=r;return N}function gu(){var N;return e.substr(W,2)===ue?(N=ue,W+=2):(N=r,yt===0&&wt(ae)),N===r&&(e.charCodeAt(W)===124?(N=de,W++):(N=r,yt===0&&wt(Ae))),N}function du(){var N,J,re,ge,Ke,pt;if(N=W,J=Dh(),J!==r)if(e.charCodeAt(W)===61?(re=Ce,W++):(re=r,yt===0&&wt(Ee)),re!==r)if(ge=VA(),ge!==r){for(Ke=[],pt=kt();pt!==r;)Ke.push(pt),pt=kt();Ke!==r?(xt=N,J=g(J,ge),N=J):(W=N,N=r)}else W=N,N=r;else W=N,N=r;else W=N,N=r;if(N===r)if(N=W,J=Dh(),J!==r)if(e.charCodeAt(W)===61?(re=Ce,W++):(re=r,yt===0&&wt(Ee)),re!==r){for(ge=[],Ke=kt();Ke!==r;)ge.push(Ke),Ke=kt();ge!==r?(xt=N,J=Se(J),N=J):(W=N,N=r)}else W=N,N=r;else W=N,N=r;return N}function wf(){var N,J,re,ge,Ke,pt,dr,vr,_n,yi,vs;for(N=W,J=[],re=kt();re!==r;)J.push(re),re=kt();if(J!==r)if(e.charCodeAt(W)===40?(re=Be,W++):(re=r,yt===0&&wt(me)),re!==r){for(ge=[],Ke=kt();Ke!==r;)ge.push(Ke),Ke=kt();if(ge!==r)if(Ke=da(),Ke!==r){for(pt=[],dr=kt();dr!==r;)pt.push(dr),dr=kt();if(pt!==r)if(e.charCodeAt(W)===41?(dr=ce,W++):(dr=r,yt===0&&wt(X)),dr!==r){for(vr=[],_n=kt();_n!==r;)vr.push(_n),_n=kt();if(vr!==r){for(_n=[],yi=qn();yi!==r;)_n.push(yi),yi=qn();if(_n!==r){for(yi=[],vs=kt();vs!==r;)yi.push(vs),vs=kt();yi!==r?(xt=N,J=De(Ke,_n),N=J):(W=N,N=r)}else W=N,N=r}else W=N,N=r}else W=N,N=r;else W=N,N=r}else W=N,N=r;else W=N,N=r}else W=N,N=r;else W=N,N=r;if(N===r){for(N=W,J=[],re=kt();re!==r;)J.push(re),re=kt();if(J!==r)if(e.charCodeAt(W)===123?(re=Qe,W++):(re=r,yt===0&&wt(it)),re!==r){for(ge=[],Ke=kt();Ke!==r;)ge.push(Ke),Ke=kt();if(ge!==r)if(Ke=da(),Ke!==r){for(pt=[],dr=kt();dr!==r;)pt.push(dr),dr=kt();if(pt!==r)if(e.charCodeAt(W)===125?(dr=_,W++):(dr=r,yt===0&&wt(tt)),dr!==r){for(vr=[],_n=kt();_n!==r;)vr.push(_n),_n=kt();if(vr!==r){for(_n=[],yi=qn();yi!==r;)_n.push(yi),yi=qn();if(_n!==r){for(yi=[],vs=kt();vs!==r;)yi.push(vs),vs=kt();yi!==r?(xt=N,J=Ne(Ke,_n),N=J):(W=N,N=r)}else W=N,N=r}else W=N,N=r}else W=N,N=r;else W=N,N=r}else W=N,N=r;else W=N,N=r}else W=N,N=r;else W=N,N=r;if(N===r){for(N=W,J=[],re=kt();re!==r;)J.push(re),re=kt();if(J!==r){for(re=[],ge=du();ge!==r;)re.push(ge),ge=du();if(re!==r){for(ge=[],Ke=kt();Ke!==r;)ge.push(Ke),Ke=kt();if(ge!==r){if(Ke=[],pt=mu(),pt!==r)for(;pt!==r;)Ke.push(pt),pt=mu();else Ke=r;if(Ke!==r){for(pt=[],dr=kt();dr!==r;)pt.push(dr),dr=kt();pt!==r?(xt=N,J=ke(re,Ke),N=J):(W=N,N=r)}else W=N,N=r}else W=N,N=r}else W=N,N=r}else W=N,N=r;if(N===r){for(N=W,J=[],re=kt();re!==r;)J.push(re),re=kt();if(J!==r){if(re=[],ge=du(),ge!==r)for(;ge!==r;)re.push(ge),ge=du();else re=r;if(re!==r){for(ge=[],Ke=kt();Ke!==r;)ge.push(Ke),Ke=kt();ge!==r?(xt=N,J=be(re),N=J):(W=N,N=r)}else W=N,N=r}else W=N,N=r}}}return N}function Os(){var N,J,re,ge,Ke;for(N=W,J=[],re=kt();re!==r;)J.push(re),re=kt();if(J!==r){if(re=[],ge=Pi(),ge!==r)for(;ge!==r;)re.push(ge),ge=Pi();else re=r;if(re!==r){for(ge=[],Ke=kt();Ke!==r;)ge.push(Ke),Ke=kt();ge!==r?(xt=N,J=je(re),N=J):(W=N,N=r)}else W=N,N=r}else W=N,N=r;return N}function mu(){var N,J,re;for(N=W,J=[],re=kt();re!==r;)J.push(re),re=kt();if(J!==r?(re=qn(),re!==r?(xt=N,J=Re(re),N=J):(W=N,N=r)):(W=N,N=r),N===r){for(N=W,J=[],re=kt();re!==r;)J.push(re),re=kt();J!==r?(re=Pi(),re!==r?(xt=N,J=Re(re),N=J):(W=N,N=r)):(W=N,N=r)}return N}function qn(){var N,J,re,ge,Ke;for(N=W,J=[],re=kt();re!==r;)J.push(re),re=kt();return J!==r?(ct.test(e.charAt(W))?(re=e.charAt(W),W++):(re=r,yt===0&&wt(Me)),re===r&&(re=null),re!==r?(ge=ss(),ge!==r?(Ke=Pi(),Ke!==r?(xt=N,J=P(re,ge,Ke),N=J):(W=N,N=r)):(W=N,N=r)):(W=N,N=r)):(W=N,N=r),N}function ss(){var N;return e.substr(W,2)===w?(N=w,W+=2):(N=r,yt===0&&wt(b)),N===r&&(e.substr(W,2)===y?(N=y,W+=2):(N=r,yt===0&&wt(F)),N===r&&(e.charCodeAt(W)===62?(N=z,W++):(N=r,yt===0&&wt(Z)),N===r&&(e.substr(W,3)===$?(N=$,W+=3):(N=r,yt===0&&wt(se)),N===r&&(e.substr(W,2)===xe?(N=xe,W+=2):(N=r,yt===0&&wt(Fe)),N===r&&(e.charCodeAt(W)===60?(N=ut,W++):(N=r,yt===0&&wt(Ct))))))),N}function Pi(){var N,J,re;for(N=W,J=[],re=kt();re!==r;)J.push(re),re=kt();return J!==r?(re=VA(),re!==r?(xt=N,J=Re(re),N=J):(W=N,N=r)):(W=N,N=r),N}function VA(){var N,J,re;if(N=W,J=[],re=Bf(),re!==r)for(;re!==r;)J.push(re),re=Bf();else J=r;return J!==r&&(xt=N,J=qt(J)),N=J,N}function Bf(){var N,J;return N=W,J=yn(),J!==r&&(xt=N,J=ir(J)),N=J,N===r&&(N=W,J=Hg(),J!==r&&(xt=N,J=ir(J)),N=J,N===r&&(N=W,J=jg(),J!==r&&(xt=N,J=ir(J)),N=J,N===r&&(N=W,J=os(),J!==r&&(xt=N,J=ir(J)),N=J))),N}function yn(){var N,J,re,ge;return N=W,e.substr(W,2)===Pt?(J=Pt,W+=2):(J=r,yt===0&&wt(dn)),J!==r?(re=En(),re!==r?(e.charCodeAt(W)===39?(ge=Pr,W++):(ge=r,yt===0&&wt(Ir)),ge!==r?(xt=N,J=Or(re),N=J):(W=N,N=r)):(W=N,N=r)):(W=N,N=r),N}function Hg(){var N,J,re,ge;return N=W,e.charCodeAt(W)===39?(J=Pr,W++):(J=r,yt===0&&wt(Ir)),J!==r?(re=vf(),re!==r?(e.charCodeAt(W)===39?(ge=Pr,W++):(ge=r,yt===0&&wt(Ir)),ge!==r?(xt=N,J=Or(re),N=J):(W=N,N=r)):(W=N,N=r)):(W=N,N=r),N}function jg(){var N,J,re,ge;if(N=W,e.substr(W,2)===on?(J=on,W+=2):(J=r,yt===0&&wt(li)),J!==r&&(xt=N,J=So()),N=J,N===r)if(N=W,e.charCodeAt(W)===34?(J=ns,W++):(J=r,yt===0&&wt(so)),J!==r){for(re=[],ge=Fl();ge!==r;)re.push(ge),ge=Fl();re!==r?(e.charCodeAt(W)===34?(ge=ns,W++):(ge=r,yt===0&&wt(so)),ge!==r?(xt=N,J=Do(re),N=J):(W=N,N=r)):(W=N,N=r)}else W=N,N=r;return N}function os(){var N,J,re;if(N=W,J=[],re=To(),re!==r)for(;re!==r;)J.push(re),re=To();else J=r;return J!==r&&(xt=N,J=Do(J)),N=J,N}function Fl(){var N,J;return N=W,J=Xr(),J!==r&&(xt=N,J=ji(J)),N=J,N===r&&(N=W,J=Sh(),J!==r&&(xt=N,J=oo(J)),N=J,N===r&&(N=W,J=KA(),J!==r&&(xt=N,J=bo(J)),N=J,N===r&&(N=W,J=Sf(),J!==r&&(xt=N,J=RA(J)),N=J))),N}function To(){var N,J;return N=W,J=Xr(),J!==r&&(xt=N,J=hf(J)),N=J,N===r&&(N=W,J=Sh(),J!==r&&(xt=N,J=hh(J)),N=J,N===r&&(N=W,J=KA(),J!==r&&(xt=N,J=gh(J)),N=J,N===r&&(N=W,J=Py(),J!==r&&(xt=N,J=ao(J)),N=J,N===r&&(N=W,J=vh(),J!==r&&(xt=N,J=RA(J)),N=J)))),N}function vf(){var N,J,re;for(N=W,J=[],Gn.test(e.charAt(W))?(re=e.charAt(W),W++):(re=r,yt===0&&wt(Ns));re!==r;)J.push(re),Gn.test(e.charAt(W))?(re=e.charAt(W),W++):(re=r,yt===0&&wt(Ns));return J!==r&&(xt=N,J=lo(J)),N=J,N}function Sf(){var N,J,re;if(N=W,J=[],re=Nl(),re===r&&(iu.test(e.charAt(W))?(re=e.charAt(W),W++):(re=r,yt===0&&wt(su))),re!==r)for(;re!==r;)J.push(re),re=Nl(),re===r&&(iu.test(e.charAt(W))?(re=e.charAt(W),W++):(re=r,yt===0&&wt(su)));else J=r;return J!==r&&(xt=N,J=lo(J)),N=J,N}function Nl(){var N,J,re;return N=W,e.substr(W,2)===ou?(J=ou,W+=2):(J=r,yt===0&&wt(TA)),J!==r&&(xt=N,J=FA()),N=J,N===r&&(N=W,e.charCodeAt(W)===92?(J=ua,W++):(J=r,yt===0&&wt(fa)),J!==r?(NA.test(e.charAt(W))?(re=e.charAt(W),W++):(re=r,yt===0&&wt(gr)),re!==r?(xt=N,J=Po(re),N=J):(W=N,N=r)):(W=N,N=r)),N}function En(){var N,J,re;for(N=W,J=[],re=Fo(),re===r&&(Gn.test(e.charAt(W))?(re=e.charAt(W),W++):(re=r,yt===0&&wt(Ns)));re!==r;)J.push(re),re=Fo(),re===r&&(Gn.test(e.charAt(W))?(re=e.charAt(W),W++):(re=r,yt===0&&wt(Ns)));return J!==r&&(xt=N,J=lo(J)),N=J,N}function Fo(){var N,J,re;return N=W,e.substr(W,2)===Ue?(J=Ue,W+=2):(J=r,yt===0&&wt(au)),J!==r&&(xt=N,J=Cr()),N=J,N===r&&(N=W,e.substr(W,2)===gf?(J=gf,W+=2):(J=r,yt===0&&wt(OA)),J!==r&&(xt=N,J=LA()),N=J,N===r&&(N=W,e.charCodeAt(W)===92?(J=ua,W++):(J=r,yt===0&&wt(fa)),J!==r?(lu.test(e.charAt(W))?(re=e.charAt(W),W++):(re=r,yt===0&&wt(cu)),re!==r?(xt=N,J=ac(),N=J):(W=N,N=r)):(W=N,N=r),N===r&&(N=W,e.substr(W,2)===we?(J=we,W+=2):(J=r,yt===0&&wt(Nt)),J!==r&&(xt=N,J=lc()),N=J,N===r&&(N=W,e.substr(W,2)===Oi?(J=Oi,W+=2):(J=r,yt===0&&wt(co)),J!==r&&(xt=N,J=Tt()),N=J,N===r&&(N=W,e.substr(W,2)===Qn?(J=Qn,W+=2):(J=r,yt===0&&wt(Aa)),J!==r&&(xt=N,J=Gi()),N=J,N===r&&(N=W,e.substr(W,2)===Li?(J=Li,W+=2):(J=r,yt===0&&wt(ja)),J!==r&&(xt=N,J=mn()),N=J,N===r&&(N=W,e.substr(W,2)===Zn?(J=Zn,W+=2):(J=r,yt===0&&wt(uu)),J!==r&&(xt=N,J=dh()),N=J,N===r&&(N=W,e.charCodeAt(W)===92?(J=ua,W++):(J=r,yt===0&&wt(fa)),J!==r?(Ga.test(e.charAt(W))?(re=e.charAt(W),W++):(re=r,yt===0&&wt(qa)),re!==r?(xt=N,J=Po(re),N=J):(W=N,N=r)):(W=N,N=r),N===r&&(N=yu()))))))))),N}function yu(){var N,J,re,ge,Ke,pt,dr,vr,_n,yi,vs,JA;return N=W,e.charCodeAt(W)===92?(J=ua,W++):(J=r,yt===0&&wt(fa)),J!==r?(re=ma(),re!==r?(xt=N,J=Wa(re),N=J):(W=N,N=r)):(W=N,N=r),N===r&&(N=W,e.substr(W,2)===$e?(J=$e,W+=2):(J=r,yt===0&&wt(Va)),J!==r?(re=W,ge=W,Ke=ma(),Ke!==r?(pt=Ls(),pt!==r?(Ke=[Ke,pt],ge=Ke):(W=ge,ge=r)):(W=ge,ge=r),ge===r&&(ge=ma()),ge!==r?re=e.substring(re,W):re=ge,re!==r?(xt=N,J=Wa(re),N=J):(W=N,N=r)):(W=N,N=r),N===r&&(N=W,e.substr(W,2)===df?(J=df,W+=2):(J=r,yt===0&&wt(cc)),J!==r?(re=W,ge=W,Ke=Ls(),Ke!==r?(pt=Ls(),pt!==r?(dr=Ls(),dr!==r?(vr=Ls(),vr!==r?(Ke=[Ke,pt,dr,vr],ge=Ke):(W=ge,ge=r)):(W=ge,ge=r)):(W=ge,ge=r)):(W=ge,ge=r),ge!==r?re=e.substring(re,W):re=ge,re!==r?(xt=N,J=Wa(re),N=J):(W=N,N=r)):(W=N,N=r),N===r&&(N=W,e.substr(W,2)===vn?(J=vn,W+=2):(J=r,yt===0&&wt(pa)),J!==r?(re=W,ge=W,Ke=Ls(),Ke!==r?(pt=Ls(),pt!==r?(dr=Ls(),dr!==r?(vr=Ls(),vr!==r?(_n=Ls(),_n!==r?(yi=Ls(),yi!==r?(vs=Ls(),vs!==r?(JA=Ls(),JA!==r?(Ke=[Ke,pt,dr,vr,_n,yi,vs,JA],ge=Ke):(W=ge,ge=r)):(W=ge,ge=r)):(W=ge,ge=r)):(W=ge,ge=r)):(W=ge,ge=r)):(W=ge,ge=r)):(W=ge,ge=r)):(W=ge,ge=r),ge!==r?re=e.substring(re,W):re=ge,re!==r?(xt=N,J=MA(re),N=J):(W=N,N=r)):(W=N,N=r)))),N}function ma(){var N;return UA.test(e.charAt(W))?(N=e.charAt(W),W++):(N=r,yt===0&&wt(ha)),N}function Ls(){var N;return xl.test(e.charAt(W))?(N=e.charAt(W),W++):(N=r,yt===0&&wt(Mt)),N}function vh(){var N,J,re,ge,Ke;if(N=W,J=[],re=W,e.charCodeAt(W)===92?(ge=ua,W++):(ge=r,yt===0&&wt(fa)),ge!==r?(e.length>W?(Ke=e.charAt(W),W++):(Ke=r,yt===0&&wt(Rn)),Ke!==r?(xt=re,ge=Po(Ke),re=ge):(W=re,re=r)):(W=re,re=r),re===r&&(re=W,e.substr(W,2)===ga?(ge=ga,W+=2):(ge=r,yt===0&&wt(Ya)),ge!==r&&(xt=re,ge=is()),re=ge,re===r&&(re=W,ge=W,yt++,Ke=xy(),yt--,Ke===r?ge=void 0:(W=ge,ge=r),ge!==r?(e.length>W?(Ke=e.charAt(W),W++):(Ke=r,yt===0&&wt(Rn)),Ke!==r?(xt=re,ge=Po(Ke),re=ge):(W=re,re=r)):(W=re,re=r))),re!==r)for(;re!==r;)J.push(re),re=W,e.charCodeAt(W)===92?(ge=ua,W++):(ge=r,yt===0&&wt(fa)),ge!==r?(e.length>W?(Ke=e.charAt(W),W++):(Ke=r,yt===0&&wt(Rn)),Ke!==r?(xt=re,ge=Po(Ke),re=ge):(W=re,re=r)):(W=re,re=r),re===r&&(re=W,e.substr(W,2)===ga?(ge=ga,W+=2):(ge=r,yt===0&&wt(Ya)),ge!==r&&(xt=re,ge=is()),re=ge,re===r&&(re=W,ge=W,yt++,Ke=xy(),yt--,Ke===r?ge=void 0:(W=ge,ge=r),ge!==r?(e.length>W?(Ke=e.charAt(W),W++):(Ke=r,yt===0&&wt(Rn)),Ke!==r?(xt=re,ge=Po(Ke),re=ge):(W=re,re=r)):(W=re,re=r)));else J=r;return J!==r&&(xt=N,J=lo(J)),N=J,N}function YA(){var N,J,re,ge,Ke,pt;if(N=W,e.charCodeAt(W)===45?(J=uc,W++):(J=r,yt===0&&wt(fu)),J===r&&(e.charCodeAt(W)===43?(J=fc,W++):(J=r,yt===0&&wt(Ka))),J===r&&(J=null),J!==r){if(re=[],ct.test(e.charAt(W))?(ge=e.charAt(W),W++):(ge=r,yt===0&&wt(Me)),ge!==r)for(;ge!==r;)re.push(ge),ct.test(e.charAt(W))?(ge=e.charAt(W),W++):(ge=r,yt===0&&wt(Me));else re=r;if(re!==r)if(e.charCodeAt(W)===46?(ge=Mi,W++):(ge=r,yt===0&&wt(Bs)),ge!==r){if(Ke=[],ct.test(e.charAt(W))?(pt=e.charAt(W),W++):(pt=r,yt===0&&wt(Me)),pt!==r)for(;pt!==r;)Ke.push(pt),ct.test(e.charAt(W))?(pt=e.charAt(W),W++):(pt=r,yt===0&&wt(Me));else Ke=r;Ke!==r?(xt=N,J=kl(J,re,Ke),N=J):(W=N,N=r)}else W=N,N=r;else W=N,N=r}else W=N,N=r;if(N===r){if(N=W,e.charCodeAt(W)===45?(J=uc,W++):(J=r,yt===0&&wt(fu)),J===r&&(e.charCodeAt(W)===43?(J=fc,W++):(J=r,yt===0&&wt(Ka))),J===r&&(J=null),J!==r){if(re=[],ct.test(e.charAt(W))?(ge=e.charAt(W),W++):(ge=r,yt===0&&wt(Me)),ge!==r)for(;ge!==r;)re.push(ge),ct.test(e.charAt(W))?(ge=e.charAt(W),W++):(ge=r,yt===0&&wt(Me));else re=r;re!==r?(xt=N,J=mf(J,re),N=J):(W=N,N=r)}else W=N,N=r;if(N===r&&(N=W,J=KA(),J!==r&&(xt=N,J=Ac(J)),N=J,N===r&&(N=W,J=hc(),J!==r&&(xt=N,J=Bi(J)),N=J,N===r)))if(N=W,e.charCodeAt(W)===40?(J=Be,W++):(J=r,yt===0&&wt(me)),J!==r){for(re=[],ge=kt();ge!==r;)re.push(ge),ge=kt();if(re!==r)if(ge=uo(),ge!==r){for(Ke=[],pt=kt();pt!==r;)Ke.push(pt),pt=kt();Ke!==r?(e.charCodeAt(W)===41?(pt=ce,W++):(pt=r,yt===0&&wt(X)),pt!==r?(xt=N,J=Tn(ge),N=J):(W=N,N=r)):(W=N,N=r)}else W=N,N=r;else W=N,N=r}else W=N,N=r}return N}function Df(){var N,J,re,ge,Ke,pt,dr,vr;if(N=W,J=YA(),J!==r){for(re=[],ge=W,Ke=[],pt=kt();pt!==r;)Ke.push(pt),pt=kt();if(Ke!==r)if(e.charCodeAt(W)===42?(pt=pc,W++):(pt=r,yt===0&&wt(Je)),pt===r&&(e.charCodeAt(W)===47?(pt=ot,W++):(pt=r,yt===0&&wt(St))),pt!==r){for(dr=[],vr=kt();vr!==r;)dr.push(vr),vr=kt();dr!==r?(vr=YA(),vr!==r?(xt=ge,Ke=lr(J,pt,vr),ge=Ke):(W=ge,ge=r)):(W=ge,ge=r)}else W=ge,ge=r;else W=ge,ge=r;for(;ge!==r;){for(re.push(ge),ge=W,Ke=[],pt=kt();pt!==r;)Ke.push(pt),pt=kt();if(Ke!==r)if(e.charCodeAt(W)===42?(pt=pc,W++):(pt=r,yt===0&&wt(Je)),pt===r&&(e.charCodeAt(W)===47?(pt=ot,W++):(pt=r,yt===0&&wt(St))),pt!==r){for(dr=[],vr=kt();vr!==r;)dr.push(vr),vr=kt();dr!==r?(vr=YA(),vr!==r?(xt=ge,Ke=lr(J,pt,vr),ge=Ke):(W=ge,ge=r)):(W=ge,ge=r)}else W=ge,ge=r;else W=ge,ge=r}re!==r?(xt=N,J=ee(J,re),N=J):(W=N,N=r)}else W=N,N=r;return N}function uo(){var N,J,re,ge,Ke,pt,dr,vr;if(N=W,J=Df(),J!==r){for(re=[],ge=W,Ke=[],pt=kt();pt!==r;)Ke.push(pt),pt=kt();if(Ke!==r)if(e.charCodeAt(W)===43?(pt=fc,W++):(pt=r,yt===0&&wt(Ka)),pt===r&&(e.charCodeAt(W)===45?(pt=uc,W++):(pt=r,yt===0&&wt(fu))),pt!==r){for(dr=[],vr=kt();vr!==r;)dr.push(vr),vr=kt();dr!==r?(vr=Df(),vr!==r?(xt=ge,Ke=ye(J,pt,vr),ge=Ke):(W=ge,ge=r)):(W=ge,ge=r)}else W=ge,ge=r;else W=ge,ge=r;for(;ge!==r;){for(re.push(ge),ge=W,Ke=[],pt=kt();pt!==r;)Ke.push(pt),pt=kt();if(Ke!==r)if(e.charCodeAt(W)===43?(pt=fc,W++):(pt=r,yt===0&&wt(Ka)),pt===r&&(e.charCodeAt(W)===45?(pt=uc,W++):(pt=r,yt===0&&wt(fu))),pt!==r){for(dr=[],vr=kt();vr!==r;)dr.push(vr),vr=kt();dr!==r?(vr=Df(),vr!==r?(xt=ge,Ke=ye(J,pt,vr),ge=Ke):(W=ge,ge=r)):(W=ge,ge=r)}else W=ge,ge=r;else W=ge,ge=r}re!==r?(xt=N,J=ee(J,re),N=J):(W=N,N=r)}else W=N,N=r;return N}function Xr(){var N,J,re,ge,Ke,pt;if(N=W,e.substr(W,3)===Oe?(J=Oe,W+=3):(J=r,yt===0&&wt(mt)),J!==r){for(re=[],ge=kt();ge!==r;)re.push(ge),ge=kt();if(re!==r)if(ge=uo(),ge!==r){for(Ke=[],pt=kt();pt!==r;)Ke.push(pt),pt=kt();Ke!==r?(e.substr(W,2)===Et?(pt=Et,W+=2):(pt=r,yt===0&&wt(bt)),pt!==r?(xt=N,J=tr(ge),N=J):(W=N,N=r)):(W=N,N=r)}else W=N,N=r;else W=N,N=r}else W=N,N=r;return N}function Sh(){var N,J,re,ge;return N=W,e.substr(W,2)===pn?(J=pn,W+=2):(J=r,yt===0&&wt(ci)),J!==r?(re=da(),re!==r?(e.charCodeAt(W)===41?(ge=ce,W++):(ge=r,yt===0&&wt(X)),ge!==r?(xt=N,J=qi(re),N=J):(W=N,N=r)):(W=N,N=r)):(W=N,N=r),N}function KA(){var N,J,re,ge,Ke,pt;return N=W,e.substr(W,2)===Fn?(J=Fn,W+=2):(J=r,yt===0&&wt(Ja)),J!==r?(re=hc(),re!==r?(e.substr(W,2)===Iy?(ge=Iy,W+=2):(ge=r,yt===0&&wt(q1)),ge!==r?(Ke=Os(),Ke!==r?(e.charCodeAt(W)===125?(pt=_,W++):(pt=r,yt===0&&wt(tt)),pt!==r?(xt=N,J=xo(re,Ke),N=J):(W=N,N=r)):(W=N,N=r)):(W=N,N=r)):(W=N,N=r)):(W=N,N=r),N===r&&(N=W,e.substr(W,2)===Fn?(J=Fn,W+=2):(J=r,yt===0&&wt(Ja)),J!==r?(re=hc(),re!==r?(e.substr(W,3)===Cy?(ge=Cy,W+=3):(ge=r,yt===0&&wt(mh)),ge!==r?(xt=N,J=W1(re),N=J):(W=N,N=r)):(W=N,N=r)):(W=N,N=r),N===r&&(N=W,e.substr(W,2)===Fn?(J=Fn,W+=2):(J=r,yt===0&&wt(Ja)),J!==r?(re=hc(),re!==r?(e.substr(W,2)===ko?(ge=ko,W+=2):(ge=r,yt===0&&wt(yh)),ge!==r?(Ke=Os(),Ke!==r?(e.charCodeAt(W)===125?(pt=_,W++):(pt=r,yt===0&&wt(tt)),pt!==r?(xt=N,J=Eh(re,Ke),N=J):(W=N,N=r)):(W=N,N=r)):(W=N,N=r)):(W=N,N=r)):(W=N,N=r),N===r&&(N=W,e.substr(W,2)===Fn?(J=Fn,W+=2):(J=r,yt===0&&wt(Ja)),J!==r?(re=hc(),re!==r?(e.substr(W,3)===Au?(ge=Au,W+=3):(ge=r,yt===0&&wt(Ih)),ge!==r?(xt=N,J=Rg(re),N=J):(W=N,N=r)):(W=N,N=r)):(W=N,N=r),N===r&&(N=W,e.substr(W,2)===Fn?(J=Fn,W+=2):(J=r,yt===0&&wt(Ja)),J!==r?(re=hc(),re!==r?(e.charCodeAt(W)===125?(ge=_,W++):(ge=r,yt===0&&wt(tt)),ge!==r?(xt=N,J=Tg(re),N=J):(W=N,N=r)):(W=N,N=r)):(W=N,N=r),N===r&&(N=W,e.charCodeAt(W)===36?(J=Fg,W++):(J=r,yt===0&&wt(wy)),J!==r?(re=hc(),re!==r?(xt=N,J=Tg(re),N=J):(W=N,N=r)):(W=N,N=r)))))),N}function Py(){var N,J,re;return N=W,J=Gg(),J!==r?(xt=W,re=yf(J),re?re=void 0:re=r,re!==r?(xt=N,J=Qo(J),N=J):(W=N,N=r)):(W=N,N=r),N}function Gg(){var N,J,re,ge,Ke;if(N=W,J=[],re=W,ge=W,yt++,Ke=bh(),yt--,Ke===r?ge=void 0:(W=ge,ge=r),ge!==r?(e.length>W?(Ke=e.charAt(W),W++):(Ke=r,yt===0&&wt(Rn)),Ke!==r?(xt=re,ge=Po(Ke),re=ge):(W=re,re=r)):(W=re,re=r),re!==r)for(;re!==r;)J.push(re),re=W,ge=W,yt++,Ke=bh(),yt--,Ke===r?ge=void 0:(W=ge,ge=r),ge!==r?(e.length>W?(Ke=e.charAt(W),W++):(Ke=r,yt===0&&wt(Rn)),Ke!==r?(xt=re,ge=Po(Ke),re=ge):(W=re,re=r)):(W=re,re=r);else J=r;return J!==r&&(xt=N,J=lo(J)),N=J,N}function Dh(){var N,J,re;if(N=W,J=[],Ql.test(e.charAt(W))?(re=e.charAt(W),W++):(re=r,yt===0&&wt(Ch)),re!==r)for(;re!==r;)J.push(re),Ql.test(e.charAt(W))?(re=e.charAt(W),W++):(re=r,yt===0&&wt(Ch));else J=r;return J!==r&&(xt=N,J=Ng()),N=J,N}function hc(){var N,J,re;if(N=W,J=[],Rl.test(e.charAt(W))?(re=e.charAt(W),W++):(re=r,yt===0&&wt(Tl)),re!==r)for(;re!==r;)J.push(re),Rl.test(e.charAt(W))?(re=e.charAt(W),W++):(re=r,yt===0&&wt(Tl));else J=r;return J!==r&&(xt=N,J=Ng()),N=J,N}function xy(){var N;return By.test(e.charAt(W))?(N=e.charAt(W),W++):(N=r,yt===0&&wt(_A)),N}function bh(){var N;return vy.test(e.charAt(W))?(N=e.charAt(W),W++):(N=r,yt===0&&wt(Sy)),N}function kt(){var N,J;if(N=[],HA.test(e.charAt(W))?(J=e.charAt(W),W++):(J=r,yt===0&&wt(jA)),J!==r)for(;J!==r;)N.push(J),HA.test(e.charAt(W))?(J=e.charAt(W),W++):(J=r,yt===0&&wt(jA));else N=r;return N}if(pu=a(),pu!==r&&W===e.length)return pu;throw pu!==r&&W<e.length&&wt(za()),qA(Ef,Ro<e.length?e.charAt(Ro):null,Ro<e.length?Cf(Ro,Ro+1):Cf(Ro,Ro))}F$.exports={SyntaxError:Cd,parse:B6e}});function ux(e,t={isGlobPattern:()=>!1}){try{return(0,O$.parse)(e,t)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function hE(e,{endSemicolon:t=!1}={}){return e.map(({command:r,type:s},a)=>`${fx(r)}${s===";"?a!==e.length-1||t?";":"":" &"}`).join(" ")}function fx(e){return`${gE(e.chain)}${e.then?` ${SU(e.then)}`:""}`}function SU(e){return`${e.type} ${fx(e.line)}`}function gE(e){return`${bU(e)}${e.then?` ${DU(e.then)}`:""}`}function DU(e){return`${e.type} ${gE(e.chain)}`}function bU(e){switch(e.type){case"command":return`${e.envs.length>0?`${e.envs.map(t=>cx(t)).join(" ")} `:""}${e.args.map(t=>PU(t)).join(" ")}`;case"subshell":return`(${hE(e.subshell)})${e.args.length>0?` ${e.args.map(t=>TB(t)).join(" ")}`:""}`;case"group":return`{ ${hE(e.group,{endSemicolon:!0})} }${e.args.length>0?` ${e.args.map(t=>TB(t)).join(" ")}`:""}`;case"envs":return e.envs.map(t=>cx(t)).join(" ");default:throw new Error(`Unsupported command type:  "${e.type}"`)}}function cx(e){return`${e.name}=${e.args[0]?wd(e.args[0]):""}`}function PU(e){switch(e.type){case"redirection":return TB(e);case"argument":return wd(e);default:throw new Error(`Unsupported argument type: "${e.type}"`)}}function TB(e){return`${e.subtype} ${e.args.map(t=>wd(t)).join(" ")}`}function wd(e){return e.segments.map(t=>xU(t)).join("")}function xU(e){let t=(s,a)=>a?`"${s}"`:s,r=s=>s===""?"''":s.match(/[()}<>$|&;"'\n\t ]/)?s.match(/['\t\p{C}]/u)?s.match(/'/)?`"${s.replace(/["$\t\p{C}]/u,S6e)}"`:`$'${s.replace(/[\t\p{C}]/u,M$)}'`:`'${s}'`:s;switch(e.type){case"text":return r(e.text);case"glob":return e.pattern;case"shell":return t(`$(${hE(e.shell)})`,e.quoted);case"variable":return t(typeof e.defaultValue>"u"?typeof e.alternativeValue>"u"?`\${${e.name}}`:e.alternativeValue.length===0?`\${${e.name}:+}`:`\${${e.name}:+${e.alternativeValue.map(s=>wd(s)).join(" ")}}`:e.defaultValue.length===0?`\${${e.name}:-}`:`\${${e.name}:-${e.defaultValue.map(s=>wd(s)).join(" ")}}`,e.quoted);case"arithmetic":return`$(( ${Ax(e.arithmetic)} ))`;default:throw new Error(`Unsupported argument segment type: "${e.type}"`)}}function Ax(e){let t=a=>{switch(a){case"addition":return"+";case"subtraction":return"-";case"multiplication":return"*";case"division":return"/";default:throw new Error(`Can't extract operator from arithmetic expression of type "${a}"`)}},r=(a,n)=>n?`( ${a} )`:a,s=a=>r(Ax(a),!["number","variable"].includes(a.type));switch(e.type){case"number":return String(e.value);case"variable":return e.name;default:return`${s(e.left)} ${t(e.type)} ${s(e.right)}`}}var O$,L$,v6e,M$,S6e,U$=Ze(()=>{O$=et(N$());L$=new Map([["\f","\\f"],[`
`,"\\n"],["\r","\\r"],["	","\\t"],["\v","\\v"],["\0","\\0"]]),v6e=new Map([["\\","\\\\"],["$","\\$"],['"','\\"'],...Array.from(L$,([e,t])=>[e,`"$'${t}'"`])]),M$=e=>L$.get(e)??`\\x${e.charCodeAt(0).toString(16).padStart(2,"0")}`,S6e=e=>v6e.get(e)??`"$'${M$(e)}'"`});var H$=G((hPt,_$)=>{"use strict";function D6e(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function Bd(e,t,r,s){this.message=e,this.expected=t,this.found=r,this.location=s,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Bd)}D6e(Bd,Error);Bd.buildMessage=function(e,t){var r={literal:function(h){return'"'+a(h.text)+'"'},class:function(h){var E="",C;for(C=0;C<h.parts.length;C++)E+=h.parts[C]instanceof Array?n(h.parts[C][0])+"-"+n(h.parts[C][1]):n(h.parts[C]);return"["+(h.inverted?"^":"")+E+"]"},any:function(h){return"any character"},end:function(h){return"end of input"},other:function(h){return h.description}};function s(h){return h.charCodeAt(0).toString(16).toUpperCase()}function a(h){return h.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(E){return"\\x0"+s(E)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(E){return"\\x"+s(E)})}function n(h){return h.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(E){return"\\x0"+s(E)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(E){return"\\x"+s(E)})}function c(h){return r[h.type](h)}function f(h){var E=new Array(h.length),C,S;for(C=0;C<h.length;C++)E[C]=c(h[C]);if(E.sort(),E.length>0){for(C=1,S=1;C<E.length;C++)E[C-1]!==E[C]&&(E[S]=E[C],S++);E.length=S}switch(E.length){case 1:return E[0];case 2:return E[0]+" or "+E[1];default:return E.slice(0,-1).join(", ")+", or "+E[E.length-1]}}function p(h){return h?'"'+a(h)+'"':"end of input"}return"Expected "+f(e)+" but "+p(t)+" found."};function b6e(e,t){t=t!==void 0?t:{};var r={},s={resolution:ke},a=ke,n="/",c=Be("/",!1),f=function(Me,P){return{from:Me,descriptor:P}},p=function(Me){return{descriptor:Me}},h="@",E=Be("@",!1),C=function(Me,P){return{fullName:Me,description:P}},S=function(Me){return{fullName:Me}},x=function(){return Ce()},I=/^[^\/@]/,T=me(["/","@"],!0,!1),O=/^[^\/]/,U=me(["/"],!0,!1),Y=0,te=0,ie=[{line:1,column:1}],ue=0,ae=[],de=0,Ae;if("startRule"in t){if(!(t.startRule in s))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');a=s[t.startRule]}function Ce(){return e.substring(te,Y)}function Ee(){return it(te,Y)}function g(Me,P){throw P=P!==void 0?P:it(te,Y),Ne([De(Me)],e.substring(te,Y),P)}function Se(Me,P){throw P=P!==void 0?P:it(te,Y),tt(Me,P)}function Be(Me,P){return{type:"literal",text:Me,ignoreCase:P}}function me(Me,P,w){return{type:"class",parts:Me,inverted:P,ignoreCase:w}}function ce(){return{type:"any"}}function X(){return{type:"end"}}function De(Me){return{type:"other",description:Me}}function Qe(Me){var P=ie[Me],w;if(P)return P;for(w=Me-1;!ie[w];)w--;for(P=ie[w],P={line:P.line,column:P.column};w<Me;)e.charCodeAt(w)===10?(P.line++,P.column=1):P.column++,w++;return ie[Me]=P,P}function it(Me,P){var w=Qe(Me),b=Qe(P);return{start:{offset:Me,line:w.line,column:w.column},end:{offset:P,line:b.line,column:b.column}}}function _(Me){Y<ue||(Y>ue&&(ue=Y,ae=[]),ae.push(Me))}function tt(Me,P){return new Bd(Me,null,null,P)}function Ne(Me,P,w){return new Bd(Bd.buildMessage(Me,P),Me,P,w)}function ke(){var Me,P,w,b;return Me=Y,P=be(),P!==r?(e.charCodeAt(Y)===47?(w=n,Y++):(w=r,de===0&&_(c)),w!==r?(b=be(),b!==r?(te=Me,P=f(P,b),Me=P):(Y=Me,Me=r)):(Y=Me,Me=r)):(Y=Me,Me=r),Me===r&&(Me=Y,P=be(),P!==r&&(te=Me,P=p(P)),Me=P),Me}function be(){var Me,P,w,b;return Me=Y,P=je(),P!==r?(e.charCodeAt(Y)===64?(w=h,Y++):(w=r,de===0&&_(E)),w!==r?(b=ct(),b!==r?(te=Me,P=C(P,b),Me=P):(Y=Me,Me=r)):(Y=Me,Me=r)):(Y=Me,Me=r),Me===r&&(Me=Y,P=je(),P!==r&&(te=Me,P=S(P)),Me=P),Me}function je(){var Me,P,w,b,y;return Me=Y,e.charCodeAt(Y)===64?(P=h,Y++):(P=r,de===0&&_(E)),P!==r?(w=Re(),w!==r?(e.charCodeAt(Y)===47?(b=n,Y++):(b=r,de===0&&_(c)),b!==r?(y=Re(),y!==r?(te=Me,P=x(),Me=P):(Y=Me,Me=r)):(Y=Me,Me=r)):(Y=Me,Me=r)):(Y=Me,Me=r),Me===r&&(Me=Y,P=Re(),P!==r&&(te=Me,P=x()),Me=P),Me}function Re(){var Me,P,w;if(Me=Y,P=[],I.test(e.charAt(Y))?(w=e.charAt(Y),Y++):(w=r,de===0&&_(T)),w!==r)for(;w!==r;)P.push(w),I.test(e.charAt(Y))?(w=e.charAt(Y),Y++):(w=r,de===0&&_(T));else P=r;return P!==r&&(te=Me,P=x()),Me=P,Me}function ct(){var Me,P,w;if(Me=Y,P=[],O.test(e.charAt(Y))?(w=e.charAt(Y),Y++):(w=r,de===0&&_(U)),w!==r)for(;w!==r;)P.push(w),O.test(e.charAt(Y))?(w=e.charAt(Y),Y++):(w=r,de===0&&_(U));else P=r;return P!==r&&(te=Me,P=x()),Me=P,Me}if(Ae=a(),Ae!==r&&Y===e.length)return Ae;throw Ae!==r&&Y<e.length&&_(X()),Ne(ae,ue<e.length?e.charAt(ue):null,ue<e.length?it(ue,ue+1):it(ue,ue))}_$.exports={SyntaxError:Bd,parse:b6e}});function px(e){let t=e.match(/^\*{1,2}\/(.*)/);if(t)throw new Error(`The override for '${e}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${t[1]}' instead.`);try{return(0,j$.parse)(e)}catch(r){throw r.location&&(r.message=r.message.replace(/(\.)?$/,` (line ${r.location.start.line}, column ${r.location.start.column})$1`)),r}}function hx(e){let t="";return e.from&&(t+=e.from.fullName,e.from.description&&(t+=`@${e.from.description}`),t+="/"),t+=e.descriptor.fullName,e.descriptor.description&&(t+=`@${e.descriptor.description}`),t}var j$,G$=Ze(()=>{j$=et(H$())});var Sd=G((dPt,vd)=>{"use strict";function q$(e){return typeof e>"u"||e===null}function P6e(e){return typeof e=="object"&&e!==null}function x6e(e){return Array.isArray(e)?e:q$(e)?[]:[e]}function k6e(e,t){var r,s,a,n;if(t)for(n=Object.keys(t),r=0,s=n.length;r<s;r+=1)a=n[r],e[a]=t[a];return e}function Q6e(e,t){var r="",s;for(s=0;s<t;s+=1)r+=e;return r}function R6e(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}vd.exports.isNothing=q$;vd.exports.isObject=P6e;vd.exports.toArray=x6e;vd.exports.repeat=Q6e;vd.exports.isNegativeZero=R6e;vd.exports.extend=k6e});var dE=G((mPt,W$)=>{"use strict";function FB(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}FB.prototype=Object.create(Error.prototype);FB.prototype.constructor=FB;FB.prototype.toString=function(t){var r=this.name+": ";return r+=this.reason||"(unknown reason)",!t&&this.mark&&(r+=" "+this.mark.toString()),r};W$.exports=FB});var K$=G((yPt,Y$)=>{"use strict";var V$=Sd();function kU(e,t,r,s,a){this.name=e,this.buffer=t,this.position=r,this.line=s,this.column=a}kU.prototype.getSnippet=function(t,r){var s,a,n,c,f;if(!this.buffer)return null;for(t=t||4,r=r||75,s="",a=this.position;a>0&&`\0\r
\x85\u2028\u2029`.indexOf(this.buffer.charAt(a-1))===-1;)if(a-=1,this.position-a>r/2-1){s=" ... ",a+=5;break}for(n="",c=this.position;c<this.buffer.length&&`\0\r
\x85\u2028\u2029`.indexOf(this.buffer.charAt(c))===-1;)if(c+=1,c-this.position>r/2-1){n=" ... ",c-=5;break}return f=this.buffer.slice(a,c),V$.repeat(" ",t)+s+f+n+`
`+V$.repeat(" ",t+this.position-a+s.length)+"^"};kU.prototype.toString=function(t){var r,s="";return this.name&&(s+='in "'+this.name+'" '),s+="at line "+(this.line+1)+", column "+(this.column+1),t||(r=this.getSnippet(),r&&(s+=`:
`+r)),s};Y$.exports=kU});var Ps=G((EPt,z$)=>{"use strict";var J$=dE(),T6e=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],F6e=["scalar","sequence","mapping"];function N6e(e){var t={};return e!==null&&Object.keys(e).forEach(function(r){e[r].forEach(function(s){t[String(s)]=r})}),t}function O6e(e,t){if(t=t||{},Object.keys(t).forEach(function(r){if(T6e.indexOf(r)===-1)throw new J$('Unknown option "'+r+'" is met in definition of "'+e+'" YAML type.')}),this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(r){return r},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.defaultStyle=t.defaultStyle||null,this.styleAliases=N6e(t.styleAliases||null),F6e.indexOf(this.kind)===-1)throw new J$('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}z$.exports=O6e});var Dd=G((IPt,X$)=>{"use strict";var Z$=Sd(),gx=dE(),L6e=Ps();function QU(e,t,r){var s=[];return e.include.forEach(function(a){r=QU(a,t,r)}),e[t].forEach(function(a){r.forEach(function(n,c){n.tag===a.tag&&n.kind===a.kind&&s.push(c)}),r.push(a)}),r.filter(function(a,n){return s.indexOf(n)===-1})}function M6e(){var e={scalar:{},sequence:{},mapping:{},fallback:{}},t,r;function s(a){e[a.kind][a.tag]=e.fallback[a.tag]=a}for(t=0,r=arguments.length;t<r;t+=1)arguments[t].forEach(s);return e}function mE(e){this.include=e.include||[],this.implicit=e.implicit||[],this.explicit=e.explicit||[],this.implicit.forEach(function(t){if(t.loadKind&&t.loadKind!=="scalar")throw new gx("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.")}),this.compiledImplicit=QU(this,"implicit",[]),this.compiledExplicit=QU(this,"explicit",[]),this.compiledTypeMap=M6e(this.compiledImplicit,this.compiledExplicit)}mE.DEFAULT=null;mE.create=function(){var t,r;switch(arguments.length){case 1:t=mE.DEFAULT,r=arguments[0];break;case 2:t=arguments[0],r=arguments[1];break;default:throw new gx("Wrong number of arguments for Schema.create function")}if(t=Z$.toArray(t),r=Z$.toArray(r),!t.every(function(s){return s instanceof mE}))throw new gx("Specified list of super schemas (or a single Schema object) contains a non-Schema object.");if(!r.every(function(s){return s instanceof L6e}))throw new gx("Specified list of YAML types (or a single Type object) contains a non-Type object.");return new mE({include:t,explicit:r})};X$.exports=mE});var eee=G((CPt,$$)=>{"use strict";var U6e=Ps();$$.exports=new U6e("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}})});var ree=G((wPt,tee)=>{"use strict";var _6e=Ps();tee.exports=new _6e("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}})});var iee=G((BPt,nee)=>{"use strict";var H6e=Ps();nee.exports=new H6e("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}})});var dx=G((vPt,see)=>{"use strict";var j6e=Dd();see.exports=new j6e({explicit:[eee(),ree(),iee()]})});var aee=G((SPt,oee)=>{"use strict";var G6e=Ps();function q6e(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function W6e(){return null}function V6e(e){return e===null}oee.exports=new G6e("tag:yaml.org,2002:null",{kind:"scalar",resolve:q6e,construct:W6e,predicate:V6e,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var cee=G((DPt,lee)=>{"use strict";var Y6e=Ps();function K6e(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function J6e(e){return e==="true"||e==="True"||e==="TRUE"}function z6e(e){return Object.prototype.toString.call(e)==="[object Boolean]"}lee.exports=new Y6e("tag:yaml.org,2002:bool",{kind:"scalar",resolve:K6e,construct:J6e,predicate:z6e,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})});var fee=G((bPt,uee)=>{"use strict";var Z6e=Sd(),X6e=Ps();function $6e(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function eGe(e){return 48<=e&&e<=55}function tGe(e){return 48<=e&&e<=57}function rGe(e){if(e===null)return!1;var t=e.length,r=0,s=!1,a;if(!t)return!1;if(a=e[r],(a==="-"||a==="+")&&(a=e[++r]),a==="0"){if(r+1===t)return!0;if(a=e[++r],a==="b"){for(r++;r<t;r++)if(a=e[r],a!=="_"){if(a!=="0"&&a!=="1")return!1;s=!0}return s&&a!=="_"}if(a==="x"){for(r++;r<t;r++)if(a=e[r],a!=="_"){if(!$6e(e.charCodeAt(r)))return!1;s=!0}return s&&a!=="_"}for(;r<t;r++)if(a=e[r],a!=="_"){if(!eGe(e.charCodeAt(r)))return!1;s=!0}return s&&a!=="_"}if(a==="_")return!1;for(;r<t;r++)if(a=e[r],a!=="_"){if(a===":")break;if(!tGe(e.charCodeAt(r)))return!1;s=!0}return!s||a==="_"?!1:a!==":"?!0:/^(:[0-5]?[0-9])+$/.test(e.slice(r))}function nGe(e){var t=e,r=1,s,a,n=[];return t.indexOf("_")!==-1&&(t=t.replace(/_/g,"")),s=t[0],(s==="-"||s==="+")&&(s==="-"&&(r=-1),t=t.slice(1),s=t[0]),t==="0"?0:s==="0"?t[1]==="b"?r*parseInt(t.slice(2),2):t[1]==="x"?r*parseInt(t,16):r*parseInt(t,8):t.indexOf(":")!==-1?(t.split(":").forEach(function(c){n.unshift(parseInt(c,10))}),t=0,a=1,n.forEach(function(c){t+=c*a,a*=60}),r*t):r*parseInt(t,10)}function iGe(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!Z6e.isNegativeZero(e)}uee.exports=new X6e("tag:yaml.org,2002:int",{kind:"scalar",resolve:rGe,construct:nGe,predicate:iGe,represent:{binary:function(e){return e>=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0"+e.toString(8):"-0"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var hee=G((PPt,pee)=>{"use strict";var Aee=Sd(),sGe=Ps(),oGe=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function aGe(e){return!(e===null||!oGe.test(e)||e[e.length-1]==="_")}function lGe(e){var t,r,s,a;return t=e.replace(/_/g,"").toLowerCase(),r=t[0]==="-"?-1:1,a=[],"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:t.indexOf(":")>=0?(t.split(":").forEach(function(n){a.unshift(parseFloat(n,10))}),t=0,s=1,a.forEach(function(n){t+=n*s,s*=60}),r*t):r*parseFloat(t,10)}var cGe=/^[-+]?[0-9]+e/;function uGe(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Aee.isNegativeZero(e))return"-0.0";return r=e.toString(10),cGe.test(r)?r.replace("e",".e"):r}function fGe(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||Aee.isNegativeZero(e))}pee.exports=new sGe("tag:yaml.org,2002:float",{kind:"scalar",resolve:aGe,construct:lGe,predicate:fGe,represent:uGe,defaultStyle:"lowercase"})});var RU=G((xPt,gee)=>{"use strict";var AGe=Dd();gee.exports=new AGe({include:[dx()],implicit:[aee(),cee(),fee(),hee()]})});var TU=G((kPt,dee)=>{"use strict";var pGe=Dd();dee.exports=new pGe({include:[RU()]})});var Iee=G((QPt,Eee)=>{"use strict";var hGe=Ps(),mee=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),yee=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function gGe(e){return e===null?!1:mee.exec(e)!==null||yee.exec(e)!==null}function dGe(e){var t,r,s,a,n,c,f,p=0,h=null,E,C,S;if(t=mee.exec(e),t===null&&(t=yee.exec(e)),t===null)throw new Error("Date resolve error");if(r=+t[1],s=+t[2]-1,a=+t[3],!t[4])return new Date(Date.UTC(r,s,a));if(n=+t[4],c=+t[5],f=+t[6],t[7]){for(p=t[7].slice(0,3);p.length<3;)p+="0";p=+p}return t[9]&&(E=+t[10],C=+(t[11]||0),h=(E*60+C)*6e4,t[9]==="-"&&(h=-h)),S=new Date(Date.UTC(r,s,a,n,c,f,p)),h&&S.setTime(S.getTime()-h),S}function mGe(e){return e.toISOString()}Eee.exports=new hGe("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:gGe,construct:dGe,instanceOf:Date,represent:mGe})});var wee=G((RPt,Cee)=>{"use strict";var yGe=Ps();function EGe(e){return e==="<<"||e===null}Cee.exports=new yGe("tag:yaml.org,2002:merge",{kind:"scalar",resolve:EGe})});var See=G((TPt,vee)=>{"use strict";var bd;try{Bee=Ie,bd=Bee("buffer").Buffer}catch{}var Bee,IGe=Ps(),FU=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
\r`;function CGe(e){if(e===null)return!1;var t,r,s=0,a=e.length,n=FU;for(r=0;r<a;r++)if(t=n.indexOf(e.charAt(r)),!(t>64)){if(t<0)return!1;s+=6}return s%8===0}function wGe(e){var t,r,s=e.replace(/[\r\n=]/g,""),a=s.length,n=FU,c=0,f=[];for(t=0;t<a;t++)t%4===0&&t&&(f.push(c>>16&255),f.push(c>>8&255),f.push(c&255)),c=c<<6|n.indexOf(s.charAt(t));return r=a%4*6,r===0?(f.push(c>>16&255),f.push(c>>8&255),f.push(c&255)):r===18?(f.push(c>>10&255),f.push(c>>2&255)):r===12&&f.push(c>>4&255),bd?bd.from?bd.from(f):new bd(f):f}function BGe(e){var t="",r=0,s,a,n=e.length,c=FU;for(s=0;s<n;s++)s%3===0&&s&&(t+=c[r>>18&63],t+=c[r>>12&63],t+=c[r>>6&63],t+=c[r&63]),r=(r<<8)+e[s];return a=n%3,a===0?(t+=c[r>>18&63],t+=c[r>>12&63],t+=c[r>>6&63],t+=c[r&63]):a===2?(t+=c[r>>10&63],t+=c[r>>4&63],t+=c[r<<2&63],t+=c[64]):a===1&&(t+=c[r>>2&63],t+=c[r<<4&63],t+=c[64],t+=c[64]),t}function vGe(e){return bd&&bd.isBuffer(e)}vee.exports=new IGe("tag:yaml.org,2002:binary",{kind:"scalar",resolve:CGe,construct:wGe,predicate:vGe,represent:BGe})});var bee=G((NPt,Dee)=>{"use strict";var SGe=Ps(),DGe=Object.prototype.hasOwnProperty,bGe=Object.prototype.toString;function PGe(e){if(e===null)return!0;var t=[],r,s,a,n,c,f=e;for(r=0,s=f.length;r<s;r+=1){if(a=f[r],c=!1,bGe.call(a)!=="[object Object]")return!1;for(n in a)if(DGe.call(a,n))if(!c)c=!0;else return!1;if(!c)return!1;if(t.indexOf(n)===-1)t.push(n);else return!1}return!0}function xGe(e){return e!==null?e:[]}Dee.exports=new SGe("tag:yaml.org,2002:omap",{kind:"sequence",resolve:PGe,construct:xGe})});var xee=G((OPt,Pee)=>{"use strict";var kGe=Ps(),QGe=Object.prototype.toString;function RGe(e){if(e===null)return!0;var t,r,s,a,n,c=e;for(n=new Array(c.length),t=0,r=c.length;t<r;t+=1){if(s=c[t],QGe.call(s)!=="[object Object]"||(a=Object.keys(s),a.length!==1))return!1;n[t]=[a[0],s[a[0]]]}return!0}function TGe(e){if(e===null)return[];var t,r,s,a,n,c=e;for(n=new Array(c.length),t=0,r=c.length;t<r;t+=1)s=c[t],a=Object.keys(s),n[t]=[a[0],s[a[0]]];return n}Pee.exports=new kGe("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:RGe,construct:TGe})});var Qee=G((LPt,kee)=>{"use strict";var FGe=Ps(),NGe=Object.prototype.hasOwnProperty;function OGe(e){if(e===null)return!0;var t,r=e;for(t in r)if(NGe.call(r,t)&&r[t]!==null)return!1;return!0}function LGe(e){return e!==null?e:{}}kee.exports=new FGe("tag:yaml.org,2002:set",{kind:"mapping",resolve:OGe,construct:LGe})});var yE=G((MPt,Ree)=>{"use strict";var MGe=Dd();Ree.exports=new MGe({include:[TU()],implicit:[Iee(),wee()],explicit:[See(),bee(),xee(),Qee()]})});var Fee=G((UPt,Tee)=>{"use strict";var UGe=Ps();function _Ge(){return!0}function HGe(){}function jGe(){return""}function GGe(e){return typeof e>"u"}Tee.exports=new UGe("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:_Ge,construct:HGe,predicate:GGe,represent:jGe})});var Oee=G((_Pt,Nee)=>{"use strict";var qGe=Ps();function WGe(e){if(e===null||e.length===0)return!1;var t=e,r=/\/([gim]*)$/.exec(e),s="";return!(t[0]==="/"&&(r&&(s=r[1]),s.length>3||t[t.length-s.length-1]!=="/"))}function VGe(e){var t=e,r=/\/([gim]*)$/.exec(e),s="";return t[0]==="/"&&(r&&(s=r[1]),t=t.slice(1,t.length-s.length-1)),new RegExp(t,s)}function YGe(e){var t="/"+e.source+"/";return e.global&&(t+="g"),e.multiline&&(t+="m"),e.ignoreCase&&(t+="i"),t}function KGe(e){return Object.prototype.toString.call(e)==="[object RegExp]"}Nee.exports=new qGe("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:WGe,construct:VGe,predicate:KGe,represent:YGe})});var Uee=G((HPt,Mee)=>{"use strict";var mx;try{Lee=Ie,mx=Lee("esprima")}catch{typeof window<"u"&&(mx=window.esprima)}var Lee,JGe=Ps();function zGe(e){if(e===null)return!1;try{var t="("+e+")",r=mx.parse(t,{range:!0});return!(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")}catch{return!1}}function ZGe(e){var t="("+e+")",r=mx.parse(t,{range:!0}),s=[],a;if(r.type!=="Program"||r.body.length!==1||r.body[0].type!=="ExpressionStatement"||r.body[0].expression.type!=="ArrowFunctionExpression"&&r.body[0].expression.type!=="FunctionExpression")throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(n){s.push(n.name)}),a=r.body[0].expression.body.range,r.body[0].expression.body.type==="BlockStatement"?new Function(s,t.slice(a[0]+1,a[1]-1)):new Function(s,"return "+t.slice(a[0],a[1]))}function XGe(e){return e.toString()}function $Ge(e){return Object.prototype.toString.call(e)==="[object Function]"}Mee.exports=new JGe("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:zGe,construct:ZGe,predicate:$Ge,represent:XGe})});var NB=G((GPt,Hee)=>{"use strict";var _ee=Dd();Hee.exports=_ee.DEFAULT=new _ee({include:[yE()],explicit:[Fee(),Oee(),Uee()]})});var ote=G((qPt,OB)=>{"use strict";var Cp=Sd(),Kee=dE(),e5e=K$(),Jee=yE(),t5e=NB(),r0=Object.prototype.hasOwnProperty,yx=1,zee=2,Zee=3,Ex=4,NU=1,r5e=2,jee=3,n5e=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,i5e=/[\x85\u2028\u2029]/,s5e=/[,\[\]\{\}]/,Xee=/^(?:!|!!|![a-z\-]+!)$/i,$ee=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Gee(e){return Object.prototype.toString.call(e)}function qf(e){return e===10||e===13}function xd(e){return e===9||e===32}function ll(e){return e===9||e===32||e===10||e===13}function EE(e){return e===44||e===91||e===93||e===123||e===125}function o5e(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function a5e(e){return e===120?2:e===117?4:e===85?8:0}function l5e(e){return 48<=e&&e<=57?e-48:-1}function qee(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?"	":e===110?`
`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function c5e(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}var ete=new Array(256),tte=new Array(256);for(Pd=0;Pd<256;Pd++)ete[Pd]=qee(Pd)?1:0,tte[Pd]=qee(Pd);var Pd;function u5e(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||t5e,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function rte(e,t){return new Kee(t,new e5e(e.filename,e.input,e.position,e.line,e.position-e.lineStart))}function Tr(e,t){throw rte(e,t)}function Ix(e,t){e.onWarning&&e.onWarning.call(null,rte(e,t))}var Wee={YAML:function(t,r,s){var a,n,c;t.version!==null&&Tr(t,"duplication of %YAML directive"),s.length!==1&&Tr(t,"YAML directive accepts exactly one argument"),a=/^([0-9]+)\.([0-9]+)$/.exec(s[0]),a===null&&Tr(t,"ill-formed argument of the YAML directive"),n=parseInt(a[1],10),c=parseInt(a[2],10),n!==1&&Tr(t,"unacceptable YAML version of the document"),t.version=s[0],t.checkLineBreaks=c<2,c!==1&&c!==2&&Ix(t,"unsupported YAML version of the document")},TAG:function(t,r,s){var a,n;s.length!==2&&Tr(t,"TAG directive accepts exactly two arguments"),a=s[0],n=s[1],Xee.test(a)||Tr(t,"ill-formed tag handle (first argument) of the TAG directive"),r0.call(t.tagMap,a)&&Tr(t,'there is a previously declared suffix for "'+a+'" tag handle'),$ee.test(n)||Tr(t,"ill-formed tag prefix (second argument) of the TAG directive"),t.tagMap[a]=n}};function t0(e,t,r,s){var a,n,c,f;if(t<r){if(f=e.input.slice(t,r),s)for(a=0,n=f.length;a<n;a+=1)c=f.charCodeAt(a),c===9||32<=c&&c<=1114111||Tr(e,"expected valid JSON character");else n5e.test(f)&&Tr(e,"the stream contains non-printable characters");e.result+=f}}function Vee(e,t,r,s){var a,n,c,f;for(Cp.isObject(r)||Tr(e,"cannot merge mappings; the provided source object is unacceptable"),a=Object.keys(r),c=0,f=a.length;c<f;c+=1)n=a[c],r0.call(t,n)||(t[n]=r[n],s[n]=!0)}function IE(e,t,r,s,a,n,c,f){var p,h;if(Array.isArray(a))for(a=Array.prototype.slice.call(a),p=0,h=a.length;p<h;p+=1)Array.isArray(a[p])&&Tr(e,"nested arrays are not supported inside keys"),typeof a=="object"&&Gee(a[p])==="[object Object]"&&(a[p]="[object Object]");if(typeof a=="object"&&Gee(a)==="[object Object]"&&(a="[object Object]"),a=String(a),t===null&&(t={}),s==="tag:yaml.org,2002:merge")if(Array.isArray(n))for(p=0,h=n.length;p<h;p+=1)Vee(e,t,n[p],r);else Vee(e,t,n,r);else!e.json&&!r0.call(r,a)&&r0.call(t,a)&&(e.line=c||e.line,e.position=f||e.position,Tr(e,"duplicated mapping key")),t[a]=n,delete r[a];return t}function OU(e){var t;t=e.input.charCodeAt(e.position),t===10?e.position++:t===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):Tr(e,"a line break is expected"),e.line+=1,e.lineStart=e.position}function ls(e,t,r){for(var s=0,a=e.input.charCodeAt(e.position);a!==0;){for(;xd(a);)a=e.input.charCodeAt(++e.position);if(t&&a===35)do a=e.input.charCodeAt(++e.position);while(a!==10&&a!==13&&a!==0);if(qf(a))for(OU(e),a=e.input.charCodeAt(e.position),s++,e.lineIndent=0;a===32;)e.lineIndent++,a=e.input.charCodeAt(++e.position);else break}return r!==-1&&s!==0&&e.lineIndent<r&&Ix(e,"deficient indentation"),s}function Cx(e){var t=e.position,r;return r=e.input.charCodeAt(t),!!((r===45||r===46)&&r===e.input.charCodeAt(t+1)&&r===e.input.charCodeAt(t+2)&&(t+=3,r=e.input.charCodeAt(t),r===0||ll(r)))}function LU(e,t){t===1?e.result+=" ":t>1&&(e.result+=Cp.repeat(`
`,t-1))}function f5e(e,t,r){var s,a,n,c,f,p,h,E,C=e.kind,S=e.result,x;if(x=e.input.charCodeAt(e.position),ll(x)||EE(x)||x===35||x===38||x===42||x===33||x===124||x===62||x===39||x===34||x===37||x===64||x===96||(x===63||x===45)&&(a=e.input.charCodeAt(e.position+1),ll(a)||r&&EE(a)))return!1;for(e.kind="scalar",e.result="",n=c=e.position,f=!1;x!==0;){if(x===58){if(a=e.input.charCodeAt(e.position+1),ll(a)||r&&EE(a))break}else if(x===35){if(s=e.input.charCodeAt(e.position-1),ll(s))break}else{if(e.position===e.lineStart&&Cx(e)||r&&EE(x))break;if(qf(x))if(p=e.line,h=e.lineStart,E=e.lineIndent,ls(e,!1,-1),e.lineIndent>=t){f=!0,x=e.input.charCodeAt(e.position);continue}else{e.position=c,e.line=p,e.lineStart=h,e.lineIndent=E;break}}f&&(t0(e,n,c,!1),LU(e,e.line-p),n=c=e.position,f=!1),xd(x)||(c=e.position+1),x=e.input.charCodeAt(++e.position)}return t0(e,n,c,!1),e.result?!0:(e.kind=C,e.result=S,!1)}function A5e(e,t){var r,s,a;if(r=e.input.charCodeAt(e.position),r!==39)return!1;for(e.kind="scalar",e.result="",e.position++,s=a=e.position;(r=e.input.charCodeAt(e.position))!==0;)if(r===39)if(t0(e,s,e.position,!0),r=e.input.charCodeAt(++e.position),r===39)s=e.position,e.position++,a=e.position;else return!0;else qf(r)?(t0(e,s,a,!0),LU(e,ls(e,!1,t)),s=a=e.position):e.position===e.lineStart&&Cx(e)?Tr(e,"unexpected end of the document within a single quoted scalar"):(e.position++,a=e.position);Tr(e,"unexpected end of the stream within a single quoted scalar")}function p5e(e,t){var r,s,a,n,c,f;if(f=e.input.charCodeAt(e.position),f!==34)return!1;for(e.kind="scalar",e.result="",e.position++,r=s=e.position;(f=e.input.charCodeAt(e.position))!==0;){if(f===34)return t0(e,r,e.position,!0),e.position++,!0;if(f===92){if(t0(e,r,e.position,!0),f=e.input.charCodeAt(++e.position),qf(f))ls(e,!1,t);else if(f<256&&ete[f])e.result+=tte[f],e.position++;else if((c=a5e(f))>0){for(a=c,n=0;a>0;a--)f=e.input.charCodeAt(++e.position),(c=o5e(f))>=0?n=(n<<4)+c:Tr(e,"expected hexadecimal character");e.result+=c5e(n),e.position++}else Tr(e,"unknown escape sequence");r=s=e.position}else qf(f)?(t0(e,r,s,!0),LU(e,ls(e,!1,t)),r=s=e.position):e.position===e.lineStart&&Cx(e)?Tr(e,"unexpected end of the document within a double quoted scalar"):(e.position++,s=e.position)}Tr(e,"unexpected end of the stream within a double quoted scalar")}function h5e(e,t){var r=!0,s,a=e.tag,n,c=e.anchor,f,p,h,E,C,S={},x,I,T,O;if(O=e.input.charCodeAt(e.position),O===91)p=93,C=!1,n=[];else if(O===123)p=125,C=!0,n={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=n),O=e.input.charCodeAt(++e.position);O!==0;){if(ls(e,!0,t),O=e.input.charCodeAt(e.position),O===p)return e.position++,e.tag=a,e.anchor=c,e.kind=C?"mapping":"sequence",e.result=n,!0;r||Tr(e,"missed comma between flow collection entries"),I=x=T=null,h=E=!1,O===63&&(f=e.input.charCodeAt(e.position+1),ll(f)&&(h=E=!0,e.position++,ls(e,!0,t))),s=e.line,CE(e,t,yx,!1,!0),I=e.tag,x=e.result,ls(e,!0,t),O=e.input.charCodeAt(e.position),(E||e.line===s)&&O===58&&(h=!0,O=e.input.charCodeAt(++e.position),ls(e,!0,t),CE(e,t,yx,!1,!0),T=e.result),C?IE(e,n,S,I,x,T):h?n.push(IE(e,null,S,I,x,T)):n.push(x),ls(e,!0,t),O=e.input.charCodeAt(e.position),O===44?(r=!0,O=e.input.charCodeAt(++e.position)):r=!1}Tr(e,"unexpected end of the stream within a flow collection")}function g5e(e,t){var r,s,a=NU,n=!1,c=!1,f=t,p=0,h=!1,E,C;if(C=e.input.charCodeAt(e.position),C===124)s=!1;else if(C===62)s=!0;else return!1;for(e.kind="scalar",e.result="";C!==0;)if(C=e.input.charCodeAt(++e.position),C===43||C===45)NU===a?a=C===43?jee:r5e:Tr(e,"repeat of a chomping mode identifier");else if((E=l5e(C))>=0)E===0?Tr(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):c?Tr(e,"repeat of an indentation width identifier"):(f=t+E-1,c=!0);else break;if(xd(C)){do C=e.input.charCodeAt(++e.position);while(xd(C));if(C===35)do C=e.input.charCodeAt(++e.position);while(!qf(C)&&C!==0)}for(;C!==0;){for(OU(e),e.lineIndent=0,C=e.input.charCodeAt(e.position);(!c||e.lineIndent<f)&&C===32;)e.lineIndent++,C=e.input.charCodeAt(++e.position);if(!c&&e.lineIndent>f&&(f=e.lineIndent),qf(C)){p++;continue}if(e.lineIndent<f){a===jee?e.result+=Cp.repeat(`
`,n?1+p:p):a===NU&&n&&(e.result+=`
`);break}for(s?xd(C)?(h=!0,e.result+=Cp.repeat(`
`,n?1+p:p)):h?(h=!1,e.result+=Cp.repeat(`
`,p+1)):p===0?n&&(e.result+=" "):e.result+=Cp.repeat(`
`,p):e.result+=Cp.repeat(`
`,n?1+p:p),n=!0,c=!0,p=0,r=e.position;!qf(C)&&C!==0;)C=e.input.charCodeAt(++e.position);t0(e,r,e.position,!1)}return!0}function Yee(e,t){var r,s=e.tag,a=e.anchor,n=[],c,f=!1,p;for(e.anchor!==null&&(e.anchorMap[e.anchor]=n),p=e.input.charCodeAt(e.position);p!==0&&!(p!==45||(c=e.input.charCodeAt(e.position+1),!ll(c)));){if(f=!0,e.position++,ls(e,!0,-1)&&e.lineIndent<=t){n.push(null),p=e.input.charCodeAt(e.position);continue}if(r=e.line,CE(e,t,Zee,!1,!0),n.push(e.result),ls(e,!0,-1),p=e.input.charCodeAt(e.position),(e.line===r||e.lineIndent>t)&&p!==0)Tr(e,"bad indentation of a sequence entry");else if(e.lineIndent<t)break}return f?(e.tag=s,e.anchor=a,e.kind="sequence",e.result=n,!0):!1}function d5e(e,t,r){var s,a,n,c,f=e.tag,p=e.anchor,h={},E={},C=null,S=null,x=null,I=!1,T=!1,O;for(e.anchor!==null&&(e.anchorMap[e.anchor]=h),O=e.input.charCodeAt(e.position);O!==0;){if(s=e.input.charCodeAt(e.position+1),n=e.line,c=e.position,(O===63||O===58)&&ll(s))O===63?(I&&(IE(e,h,E,C,S,null),C=S=x=null),T=!0,I=!0,a=!0):I?(I=!1,a=!0):Tr(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,O=s;else if(CE(e,r,zee,!1,!0))if(e.line===n){for(O=e.input.charCodeAt(e.position);xd(O);)O=e.input.charCodeAt(++e.position);if(O===58)O=e.input.charCodeAt(++e.position),ll(O)||Tr(e,"a whitespace character is expected after the key-value separator within a block mapping"),I&&(IE(e,h,E,C,S,null),C=S=x=null),T=!0,I=!1,a=!1,C=e.tag,S=e.result;else if(T)Tr(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=f,e.anchor=p,!0}else if(T)Tr(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=f,e.anchor=p,!0;else break;if((e.line===n||e.lineIndent>t)&&(CE(e,t,Ex,!0,a)&&(I?S=e.result:x=e.result),I||(IE(e,h,E,C,S,x,n,c),C=S=x=null),ls(e,!0,-1),O=e.input.charCodeAt(e.position)),e.lineIndent>t&&O!==0)Tr(e,"bad indentation of a mapping entry");else if(e.lineIndent<t)break}return I&&IE(e,h,E,C,S,null),T&&(e.tag=f,e.anchor=p,e.kind="mapping",e.result=h),T}function m5e(e){var t,r=!1,s=!1,a,n,c;if(c=e.input.charCodeAt(e.position),c!==33)return!1;if(e.tag!==null&&Tr(e,"duplication of a tag property"),c=e.input.charCodeAt(++e.position),c===60?(r=!0,c=e.input.charCodeAt(++e.position)):c===33?(s=!0,a="!!",c=e.input.charCodeAt(++e.position)):a="!",t=e.position,r){do c=e.input.charCodeAt(++e.position);while(c!==0&&c!==62);e.position<e.length?(n=e.input.slice(t,e.position),c=e.input.charCodeAt(++e.position)):Tr(e,"unexpected end of the stream within a verbatim tag")}else{for(;c!==0&&!ll(c);)c===33&&(s?Tr(e,"tag suffix cannot contain exclamation marks"):(a=e.input.slice(t-1,e.position+1),Xee.test(a)||Tr(e,"named tag handle cannot contain such characters"),s=!0,t=e.position+1)),c=e.input.charCodeAt(++e.position);n=e.input.slice(t,e.position),s5e.test(n)&&Tr(e,"tag suffix cannot contain flow indicator characters")}return n&&!$ee.test(n)&&Tr(e,"tag name cannot contain such characters: "+n),r?e.tag=n:r0.call(e.tagMap,a)?e.tag=e.tagMap[a]+n:a==="!"?e.tag="!"+n:a==="!!"?e.tag="tag:yaml.org,2002:"+n:Tr(e,'undeclared tag handle "'+a+'"'),!0}function y5e(e){var t,r;if(r=e.input.charCodeAt(e.position),r!==38)return!1;for(e.anchor!==null&&Tr(e,"duplication of an anchor property"),r=e.input.charCodeAt(++e.position),t=e.position;r!==0&&!ll(r)&&!EE(r);)r=e.input.charCodeAt(++e.position);return e.position===t&&Tr(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(t,e.position),!0}function E5e(e){var t,r,s;if(s=e.input.charCodeAt(e.position),s!==42)return!1;for(s=e.input.charCodeAt(++e.position),t=e.position;s!==0&&!ll(s)&&!EE(s);)s=e.input.charCodeAt(++e.position);return e.position===t&&Tr(e,"name of an alias node must contain at least one character"),r=e.input.slice(t,e.position),r0.call(e.anchorMap,r)||Tr(e,'unidentified alias "'+r+'"'),e.result=e.anchorMap[r],ls(e,!0,-1),!0}function CE(e,t,r,s,a){var n,c,f,p=1,h=!1,E=!1,C,S,x,I,T;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,n=c=f=Ex===r||Zee===r,s&&ls(e,!0,-1)&&(h=!0,e.lineIndent>t?p=1:e.lineIndent===t?p=0:e.lineIndent<t&&(p=-1)),p===1)for(;m5e(e)||y5e(e);)ls(e,!0,-1)?(h=!0,f=n,e.lineIndent>t?p=1:e.lineIndent===t?p=0:e.lineIndent<t&&(p=-1)):f=!1;if(f&&(f=h||a),(p===1||Ex===r)&&(yx===r||zee===r?I=t:I=t+1,T=e.position-e.lineStart,p===1?f&&(Yee(e,T)||d5e(e,T,I))||h5e(e,I)?E=!0:(c&&g5e(e,I)||A5e(e,I)||p5e(e,I)?E=!0:E5e(e)?(E=!0,(e.tag!==null||e.anchor!==null)&&Tr(e,"alias node should not have any properties")):f5e(e,I,yx===r)&&(E=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):p===0&&(E=f&&Yee(e,T))),e.tag!==null&&e.tag!=="!")if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&Tr(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),C=0,S=e.implicitTypes.length;C<S;C+=1)if(x=e.implicitTypes[C],x.resolve(e.result)){e.result=x.construct(e.result),e.tag=x.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else r0.call(e.typeMap[e.kind||"fallback"],e.tag)?(x=e.typeMap[e.kind||"fallback"][e.tag],e.result!==null&&x.kind!==e.kind&&Tr(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+x.kind+'", not "'+e.kind+'"'),x.resolve(e.result)?(e.result=x.construct(e.result),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):Tr(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")):Tr(e,"unknown tag !<"+e.tag+">");return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||E}function I5e(e){var t=e.position,r,s,a,n=!1,c;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap={},e.anchorMap={};(c=e.input.charCodeAt(e.position))!==0&&(ls(e,!0,-1),c=e.input.charCodeAt(e.position),!(e.lineIndent>0||c!==37));){for(n=!0,c=e.input.charCodeAt(++e.position),r=e.position;c!==0&&!ll(c);)c=e.input.charCodeAt(++e.position);for(s=e.input.slice(r,e.position),a=[],s.length<1&&Tr(e,"directive name must not be less than one character in length");c!==0;){for(;xd(c);)c=e.input.charCodeAt(++e.position);if(c===35){do c=e.input.charCodeAt(++e.position);while(c!==0&&!qf(c));break}if(qf(c))break;for(r=e.position;c!==0&&!ll(c);)c=e.input.charCodeAt(++e.position);a.push(e.input.slice(r,e.position))}c!==0&&OU(e),r0.call(Wee,s)?Wee[s](e,s,a):Ix(e,'unknown document directive "'+s+'"')}if(ls(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,ls(e,!0,-1)):n&&Tr(e,"directives end mark is expected"),CE(e,e.lineIndent-1,Ex,!1,!0),ls(e,!0,-1),e.checkLineBreaks&&i5e.test(e.input.slice(t,e.position))&&Ix(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&Cx(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,ls(e,!0,-1));return}if(e.position<e.length-1)Tr(e,"end of the stream or a document separator is expected");else return}function nte(e,t){e=String(e),t=t||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
`),e.charCodeAt(0)===65279&&(e=e.slice(1)));var r=new u5e(e,t),s=e.indexOf("\0");for(s!==-1&&(r.position=s,Tr(r,"null byte is not allowed in input")),r.input+="\0";r.input.charCodeAt(r.position)===32;)r.lineIndent+=1,r.position+=1;for(;r.position<r.length-1;)I5e(r);return r.documents}function ite(e,t,r){t!==null&&typeof t=="object"&&typeof r>"u"&&(r=t,t=null);var s=nte(e,r);if(typeof t!="function")return s;for(var a=0,n=s.length;a<n;a+=1)t(s[a])}function ste(e,t){var r=nte(e,t);if(r.length!==0){if(r.length===1)return r[0];throw new Kee("expected a single document in the stream, but found more")}}function C5e(e,t,r){return typeof t=="object"&&t!==null&&typeof r>"u"&&(r=t,t=null),ite(e,t,Cp.extend({schema:Jee},r))}function w5e(e,t){return ste(e,Cp.extend({schema:Jee},t))}OB.exports.loadAll=ite;OB.exports.load=ste;OB.exports.safeLoadAll=C5e;OB.exports.safeLoad=w5e});var xte=G((WPt,HU)=>{"use strict";var MB=Sd(),UB=dE(),B5e=NB(),v5e=yE(),hte=Object.prototype.toString,gte=Object.prototype.hasOwnProperty,S5e=9,LB=10,D5e=13,b5e=32,P5e=33,x5e=34,dte=35,k5e=37,Q5e=38,R5e=39,T5e=42,mte=44,F5e=45,yte=58,N5e=61,O5e=62,L5e=63,M5e=64,Ete=91,Ite=93,U5e=96,Cte=123,_5e=124,wte=125,Wo={};Wo[0]="\\0";Wo[7]="\\a";Wo[8]="\\b";Wo[9]="\\t";Wo[10]="\\n";Wo[11]="\\v";Wo[12]="\\f";Wo[13]="\\r";Wo[27]="\\e";Wo[34]='\\"';Wo[92]="\\\\";Wo[133]="\\N";Wo[160]="\\_";Wo[8232]="\\L";Wo[8233]="\\P";var H5e=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function j5e(e,t){var r,s,a,n,c,f,p;if(t===null)return{};for(r={},s=Object.keys(t),a=0,n=s.length;a<n;a+=1)c=s[a],f=String(t[c]),c.slice(0,2)==="!!"&&(c="tag:yaml.org,2002:"+c.slice(2)),p=e.compiledTypeMap.fallback[c],p&&gte.call(p.styleAliases,f)&&(f=p.styleAliases[f]),r[c]=f;return r}function ate(e){var t,r,s;if(t=e.toString(16).toUpperCase(),e<=255)r="x",s=2;else if(e<=65535)r="u",s=4;else if(e<=4294967295)r="U",s=8;else throw new UB("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+r+MB.repeat("0",s-t.length)+t}function G5e(e){this.schema=e.schema||B5e,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=MB.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=j5e(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function lte(e,t){for(var r=MB.repeat(" ",t),s=0,a=-1,n="",c,f=e.length;s<f;)a=e.indexOf(`
`,s),a===-1?(c=e.slice(s),s=f):(c=e.slice(s,a+1),s=a+1),c.length&&c!==`
`&&(n+=r),n+=c;return n}function MU(e,t){return`
`+MB.repeat(" ",e.indent*t)}function q5e(e,t){var r,s,a;for(r=0,s=e.implicitTypes.length;r<s;r+=1)if(a=e.implicitTypes[r],a.resolve(t))return!0;return!1}function _U(e){return e===b5e||e===S5e}function wE(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==65279||65536<=e&&e<=1114111}function W5e(e){return wE(e)&&!_U(e)&&e!==65279&&e!==D5e&&e!==LB}function cte(e,t){return wE(e)&&e!==65279&&e!==mte&&e!==Ete&&e!==Ite&&e!==Cte&&e!==wte&&e!==yte&&(e!==dte||t&&W5e(t))}function V5e(e){return wE(e)&&e!==65279&&!_U(e)&&e!==F5e&&e!==L5e&&e!==yte&&e!==mte&&e!==Ete&&e!==Ite&&e!==Cte&&e!==wte&&e!==dte&&e!==Q5e&&e!==T5e&&e!==P5e&&e!==_5e&&e!==N5e&&e!==O5e&&e!==R5e&&e!==x5e&&e!==k5e&&e!==M5e&&e!==U5e}function Bte(e){var t=/^\n* /;return t.test(e)}var vte=1,Ste=2,Dte=3,bte=4,wx=5;function Y5e(e,t,r,s,a){var n,c,f,p=!1,h=!1,E=s!==-1,C=-1,S=V5e(e.charCodeAt(0))&&!_U(e.charCodeAt(e.length-1));if(t)for(n=0;n<e.length;n++){if(c=e.charCodeAt(n),!wE(c))return wx;f=n>0?e.charCodeAt(n-1):null,S=S&&cte(c,f)}else{for(n=0;n<e.length;n++){if(c=e.charCodeAt(n),c===LB)p=!0,E&&(h=h||n-C-1>s&&e[C+1]!==" ",C=n);else if(!wE(c))return wx;f=n>0?e.charCodeAt(n-1):null,S=S&&cte(c,f)}h=h||E&&n-C-1>s&&e[C+1]!==" "}return!p&&!h?S&&!a(e)?vte:Ste:r>9&&Bte(e)?wx:h?bte:Dte}function K5e(e,t,r,s){e.dump=function(){if(t.length===0)return"''";if(!e.noCompatMode&&H5e.indexOf(t)!==-1)return"'"+t+"'";var a=e.indent*Math.max(1,r),n=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidt
Download .txt
gitextract_310k3zcl/

├── .claude/
│   ├── commands/
│   │   └── revise-agents-md.md
│   ├── settings.json
│   └── skills/
│       └── manual-testing/
│           └── SKILL.md
├── .cursor/
│   └── rules/
│       ├── test-driven-development.mdc
│       └── unit-test-best-practices.mdc
├── .env.example
├── .github/
│   ├── CODEOWNERS
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.md
│   │   ├── feature_request.md
│   │   └── support-needed.md
│   ├── PULL_REQUEST_TEMPLATE.md
│   ├── chainguard/
│   │   ├── self.gitlab.pull_request.sts.yaml
│   │   ├── self.gitlab.read.sts.yaml
│   │   └── self.gitlab.release.sts.yaml
│   ├── codeql-config.yml
│   ├── dependabot.yml
│   └── workflows/
│       ├── changelog-to-confluence.yml
│       ├── cla.yml
│       ├── codeql-analysis.yml
│       ├── deploy-generated-docs.yml
│       ├── shadow-review.yml
│       └── stale.yml
├── .gitignore
├── .gitlab/
│   ├── deploy-auto.yml
│   └── deploy-manual.yml
├── .gitlab-ci.yml
├── .gitmodules
├── .prettierignore
├── .prettierrc.yml
├── .wokeignore
├── .yarn/
│   └── releases/
│       └── yarn-4.13.0.cjs
├── .yarnrc.yml
├── AGENTS.md
├── CHANGELOG.md
├── CLAUDE.md
├── CONTRIBUTING.md
├── Dockerfile
├── LEGAL
├── LICENSE
├── LICENSE-3rdparty.csv
├── NOTICE
├── README.md
├── developer-extension/
│   ├── README.md
│   ├── package.json
│   ├── src/
│   │   ├── background/
│   │   │   ├── devtoolsPanelConnection.ts
│   │   │   ├── domain/
│   │   │   │   ├── messageRelay.ts
│   │   │   │   └── syncRules.ts
│   │   │   ├── index.ts
│   │   │   └── monitoring.ts
│   │   ├── common/
│   │   │   ├── eventListeners.ts
│   │   │   ├── extension.types.ts
│   │   │   ├── intakeDomainConstants.ts
│   │   │   ├── isDisconnectError.ts
│   │   │   ├── logger.ts
│   │   │   ├── monitoringConfig.ts
│   │   │   ├── packagesUrlConstants.ts
│   │   │   ├── panelTabConstants.ts
│   │   │   └── sessionKeyConstant.ts
│   │   ├── content-scripts/
│   │   │   ├── isolated.ts
│   │   │   └── main.ts
│   │   ├── devtools/
│   │   │   └── index.ts
│   │   ├── entrypoints/
│   │   │   ├── background.ts
│   │   │   ├── contentScriptIsolated.ts
│   │   │   ├── contentScriptMain.ts
│   │   │   ├── devtools.html
│   │   │   └── panel.html
│   │   └── panel/
│   │       ├── backgroundScriptConnection.ts
│   │       ├── components/
│   │       │   ├── alert.tsx
│   │       │   ├── app.tsx
│   │       │   ├── columns.tsx
│   │       │   ├── json.module.css
│   │       │   ├── json.tsx
│   │       │   ├── lazyCollapse.tsx
│   │       │   ├── panel.module.css
│   │       │   ├── panel.tsx
│   │       │   ├── tabBase.module.css
│   │       │   ├── tabBase.tsx
│   │       │   └── tabs/
│   │       │       ├── eventsTab/
│   │       │       │   ├── addColumnPopover.module.css
│   │       │       │   ├── addColumnPopover.tsx
│   │       │       │   ├── columnDrag.module.css
│   │       │       │   ├── columnDrag.tsx
│   │       │       │   ├── columnUtils.ts
│   │       │       │   ├── computeFacetState.spec.ts
│   │       │       │   ├── computeFacetState.ts
│   │       │       │   ├── copyEvent.spec.ts
│   │       │       │   ├── copyEvent.ts
│   │       │       │   ├── drag.ts
│   │       │       │   ├── eventRow.module.css
│   │       │       │   ├── eventRow.tsx
│   │       │       │   ├── eventsList.module.css
│   │       │       │   ├── eventsList.tsx
│   │       │       │   ├── eventsListHeader.module.css
│   │       │       │   ├── eventsListHeader.tsx
│   │       │       │   ├── eventsTab.tsx
│   │       │       │   ├── eventsTabSide.tsx
│   │       │       │   ├── eventsTabTop.module.css
│   │       │       │   ├── eventsTabTop.tsx
│   │       │       │   ├── facetList.module.css
│   │       │       │   ├── facetList.tsx
│   │       │       │   ├── index.ts
│   │       │       │   ├── rowButton.module.css
│   │       │       │   └── rowButton.tsx
│   │       │       ├── infosTab.tsx
│   │       │       ├── replayTab.module.css
│   │       │       ├── replayTab.tsx
│   │       │       ├── settingsTab.module.css
│   │       │       └── settingsTab.tsx
│   │       ├── copy.ts
│   │       ├── evalInWindow.ts
│   │       ├── facets.constants.ts
│   │       ├── flushEvents.spec.ts
│   │       ├── flushEvents.ts
│   │       ├── formatNumber.ts
│   │       ├── global.css
│   │       ├── hooks/
│   │       │   ├── useAutoFlushEvents.ts
│   │       │   ├── useDebugMode.ts
│   │       │   ├── useDevServerStatus.ts
│   │       │   ├── useEvents/
│   │       │   │   ├── eventCollection.ts
│   │       │   │   ├── eventFilters.spec.ts
│   │       │   │   ├── eventFilters.ts
│   │       │   │   ├── facetRegistry.spec.ts
│   │       │   │   ├── facetRegistry.ts
│   │       │   │   ├── index.ts
│   │       │   │   └── useEvents.ts
│   │       │   ├── useNetworkRules.ts
│   │       │   ├── useSdkInfos.ts
│   │       │   └── useSettings.ts
│   │       ├── index.tsx
│   │       ├── monitoring.ts
│   │       ├── overrides.d.ts
│   │       ├── sampler.ts
│   │       ├── sdkEvent.ts
│   │       ├── sessionReplayPlayer/
│   │       │   ├── sessionReplayPlayer.types.ts
│   │       │   └── startSessionReplayPlayer.ts
│   │       └── setDebugMode.ts
│   ├── tsconfig.json
│   └── wxt.config.ts
├── docs/
│   ├── ARCHITECTURE.md
│   ├── CONVENTIONS.md
│   ├── DEVELOPMENT.md
│   ├── README.md
│   └── TESTING.md
├── eslint-local-rules/
│   ├── disallowEnumExports.js
│   ├── disallowGenericUtils.js
│   ├── disallowNonScripts.js
│   ├── disallowProtectedDirectoryImport.js
│   ├── disallowSideEffects.js
│   ├── disallowSpecImport.js
│   ├── disallowTestImportExportFromSrc.js
│   ├── disallowUrlConstructorPatchValues.js
│   ├── disallowZoneJsPatchedValues.js
│   ├── enforceProdDepsImports.js
│   ├── index.js
│   ├── monitorUntilCommentRules.js
│   └── secureCommandExecution.js
├── eslint.config.mjs
├── package.json
├── packages/
│   ├── core/
│   │   ├── .yarnrc
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── boot/
│   │   │   │   ├── displayAlreadyInitializedError.spec.ts
│   │   │   │   ├── displayAlreadyInitializedError.ts
│   │   │   │   ├── init.spec.ts
│   │   │   │   └── init.ts
│   │   │   ├── browser/
│   │   │   │   ├── addEventListener.spec.ts
│   │   │   │   ├── addEventListener.ts
│   │   │   │   ├── browser.types.ts
│   │   │   │   ├── cookie.spec.ts
│   │   │   │   ├── cookie.ts
│   │   │   │   ├── fetch.spec.ts
│   │   │   │   ├── fetch.ts
│   │   │   │   ├── fetchObservable.spec.ts
│   │   │   │   ├── fetchObservable.ts
│   │   │   │   ├── pageMayExitObservable.spec.ts
│   │   │   │   ├── pageMayExitObservable.ts
│   │   │   │   ├── runOnReadyState.ts
│   │   │   │   ├── xhrObservable.spec.ts
│   │   │   │   └── xhrObservable.ts
│   │   │   ├── domain/
│   │   │   │   ├── allowedTrackingOrigins.spec.ts
│   │   │   │   ├── allowedTrackingOrigins.ts
│   │   │   │   ├── bufferedData.spec.ts
│   │   │   │   ├── bufferedData.ts
│   │   │   │   ├── configuration/
│   │   │   │   │   ├── configuration.spec.ts
│   │   │   │   │   ├── configuration.ts
│   │   │   │   │   ├── endpointBuilder.spec.ts
│   │   │   │   │   ├── endpointBuilder.ts
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── transportConfiguration.spec.ts
│   │   │   │   │   └── transportConfiguration.ts
│   │   │   │   ├── connectivity/
│   │   │   │   │   ├── connectivity.spec.ts
│   │   │   │   │   ├── connectivity.ts
│   │   │   │   │   └── index.ts
│   │   │   │   ├── console/
│   │   │   │   │   ├── consoleObservable.spec.ts
│   │   │   │   │   └── consoleObservable.ts
│   │   │   │   ├── context/
│   │   │   │   │   ├── contextConstants.ts
│   │   │   │   │   ├── contextManager.spec.ts
│   │   │   │   │   ├── contextManager.ts
│   │   │   │   │   ├── contextUtils.spec.ts
│   │   │   │   │   ├── contextUtils.ts
│   │   │   │   │   ├── defineContextMethod.ts
│   │   │   │   │   ├── storeContextManager.spec.ts
│   │   │   │   │   └── storeContextManager.ts
│   │   │   │   ├── contexts/
│   │   │   │   │   ├── accountContext.spec.ts
│   │   │   │   │   ├── accountContext.ts
│   │   │   │   │   ├── globalContext.spec.ts
│   │   │   │   │   ├── globalContext.ts
│   │   │   │   │   ├── rumInternalContext.type.ts
│   │   │   │   │   ├── tabContext.spec.ts
│   │   │   │   │   ├── tabContext.ts
│   │   │   │   │   ├── userContext.spec.ts
│   │   │   │   │   └── userContext.ts
│   │   │   │   ├── deflate/
│   │   │   │   │   ├── deflate.types.ts
│   │   │   │   │   └── index.ts
│   │   │   │   ├── error/
│   │   │   │   │   ├── error.spec.ts
│   │   │   │   │   ├── error.ts
│   │   │   │   │   ├── error.types.ts
│   │   │   │   │   ├── trackRuntimeError.spec.ts
│   │   │   │   │   └── trackRuntimeError.ts
│   │   │   │   ├── eventRateLimiter/
│   │   │   │   │   ├── createEventRateLimiter.spec.ts
│   │   │   │   │   └── createEventRateLimiter.ts
│   │   │   │   ├── extension/
│   │   │   │   │   ├── extensionUtils.spec.ts
│   │   │   │   │   └── extensionUtils.ts
│   │   │   │   ├── intakeSites.ts
│   │   │   │   ├── report/
│   │   │   │   │   ├── browser.types.ts
│   │   │   │   │   ├── reportObservable.spec.ts
│   │   │   │   │   └── reportObservable.ts
│   │   │   │   ├── resourceUtils.ts
│   │   │   │   ├── session/
│   │   │   │   │   ├── README.md
│   │   │   │   │   ├── oldCookiesMigration.spec.ts
│   │   │   │   │   ├── oldCookiesMigration.ts
│   │   │   │   │   ├── sessionConstants.ts
│   │   │   │   │   ├── sessionManager.spec.ts
│   │   │   │   │   ├── sessionManager.ts
│   │   │   │   │   ├── sessionState.spec.ts
│   │   │   │   │   ├── sessionState.ts
│   │   │   │   │   ├── sessionStateValidation.ts
│   │   │   │   │   ├── sessionStore.spec.ts
│   │   │   │   │   ├── sessionStore.ts
│   │   │   │   │   ├── sessionStoreOperations.spec.ts
│   │   │   │   │   ├── sessionStoreOperations.ts
│   │   │   │   │   └── storeStrategies/
│   │   │   │   │       ├── sessionInCookie.spec.ts
│   │   │   │   │       ├── sessionInCookie.ts
│   │   │   │   │       ├── sessionInLocalStorage.spec.ts
│   │   │   │   │       ├── sessionInLocalStorage.ts
│   │   │   │   │       ├── sessionInMemory.spec.ts
│   │   │   │   │       ├── sessionInMemory.ts
│   │   │   │   │       └── sessionStoreStrategy.ts
│   │   │   │   ├── synthetics/
│   │   │   │   │   ├── syntheticsWorkerValues.spec.ts
│   │   │   │   │   └── syntheticsWorkerValues.ts
│   │   │   │   ├── tags.spec.ts
│   │   │   │   ├── tags.ts
│   │   │   │   ├── telemetry/
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── rawTelemetryEvent.types.ts
│   │   │   │   │   ├── telemetry.spec.ts
│   │   │   │   │   ├── telemetry.ts
│   │   │   │   │   └── telemetryEvent.types.ts
│   │   │   │   ├── trackingConsent.spec.ts
│   │   │   │   └── trackingConsent.ts
│   │   │   ├── index.ts
│   │   │   ├── tools/
│   │   │   │   ├── abstractHooks.spec.ts
│   │   │   │   ├── abstractHooks.ts
│   │   │   │   ├── abstractLifeCycle.spec.ts
│   │   │   │   ├── abstractLifeCycle.ts
│   │   │   │   ├── boundedBuffer.spec.ts
│   │   │   │   ├── boundedBuffer.ts
│   │   │   │   ├── catchUserErrors.spec.ts
│   │   │   │   ├── catchUserErrors.ts
│   │   │   │   ├── display.ts
│   │   │   │   ├── encoder.spec.ts
│   │   │   │   ├── encoder.ts
│   │   │   │   ├── experimentalFeatures.spec.ts
│   │   │   │   ├── experimentalFeatures.ts
│   │   │   │   ├── getZoneJsOriginalValue.spec.ts
│   │   │   │   ├── getZoneJsOriginalValue.ts
│   │   │   │   ├── globalObject.ts
│   │   │   │   ├── instrumentMethod.spec.ts
│   │   │   │   ├── instrumentMethod.ts
│   │   │   │   ├── matchOption.spec.ts
│   │   │   │   ├── matchOption.ts
│   │   │   │   ├── mergeInto.spec.ts
│   │   │   │   ├── mergeInto.ts
│   │   │   │   ├── mockable.ts
│   │   │   │   ├── monitor.spec.ts
│   │   │   │   ├── monitor.ts
│   │   │   │   ├── observable.spec.ts
│   │   │   │   ├── observable.ts
│   │   │   │   ├── queueMicrotask.spec.ts
│   │   │   │   ├── queueMicrotask.ts
│   │   │   │   ├── readBytesFromStream.spec.ts
│   │   │   │   ├── readBytesFromStream.ts
│   │   │   │   ├── requestIdleCallback.spec.ts
│   │   │   │   ├── requestIdleCallback.ts
│   │   │   │   ├── sendToExtension.ts
│   │   │   │   ├── serialisation/
│   │   │   │   │   ├── context.ts
│   │   │   │   │   ├── jsonStringify.spec.ts
│   │   │   │   │   ├── jsonStringify.ts
│   │   │   │   │   ├── sanitize.spec.ts
│   │   │   │   │   └── sanitize.ts
│   │   │   │   ├── stackTrace/
│   │   │   │   │   ├── capturedExceptions.specHelper.ts
│   │   │   │   │   ├── computeStackTrace.spec.ts
│   │   │   │   │   ├── computeStackTrace.ts
│   │   │   │   │   ├── handlingStack.spec.ts
│   │   │   │   │   └── handlingStack.ts
│   │   │   │   ├── taskQueue.spec.ts
│   │   │   │   ├── taskQueue.ts
│   │   │   │   ├── timer.spec.ts
│   │   │   │   ├── timer.ts
│   │   │   │   ├── utils/
│   │   │   │   │   ├── arrayUtils.ts
│   │   │   │   │   ├── browserDetection.spec.ts
│   │   │   │   │   ├── browserDetection.ts
│   │   │   │   │   ├── byteUtils.spec.ts
│   │   │   │   │   ├── byteUtils.ts
│   │   │   │   │   ├── functionUtils.spec.ts
│   │   │   │   │   ├── functionUtils.ts
│   │   │   │   │   ├── numberUtils.spec.ts
│   │   │   │   │   ├── numberUtils.ts
│   │   │   │   │   ├── objectUtils.ts
│   │   │   │   │   ├── polyfills.ts
│   │   │   │   │   ├── responseUtils.ts
│   │   │   │   │   ├── stringUtils.spec.ts
│   │   │   │   │   ├── stringUtils.ts
│   │   │   │   │   ├── timeUtils.ts
│   │   │   │   │   ├── timezone.ts
│   │   │   │   │   ├── typeUtils.spec.ts
│   │   │   │   │   ├── typeUtils.ts
│   │   │   │   │   ├── urlPolyfill.spec.ts
│   │   │   │   │   └── urlPolyfill.ts
│   │   │   │   ├── valueHistory.spec.ts
│   │   │   │   └── valueHistory.ts
│   │   │   └── transport/
│   │   │       ├── batch.spec.ts
│   │   │       ├── batch.ts
│   │   │       ├── eventBridge.spec.ts
│   │   │       ├── eventBridge.ts
│   │   │       ├── flushController.spec.ts
│   │   │       ├── flushController.ts
│   │   │       ├── httpRequest.spec.ts
│   │   │       ├── httpRequest.ts
│   │   │       ├── index.ts
│   │   │       ├── sendWithRetryStrategy.spec.ts
│   │   │       └── sendWithRetryStrategy.ts
│   │   └── test/
│   │       ├── browserChecks.ts
│   │       ├── browserExtension.ts
│   │       ├── buildEnv.ts
│   │       ├── collectAsyncCalls.ts
│   │       ├── consoleLog.ts
│   │       ├── cookie.ts
│   │       ├── coreConfiguration.ts
│   │       ├── createHooks.ts
│   │       ├── disableJasmineUncaughtExceptionTracking.ts
│   │       ├── emulate/
│   │       │   ├── buildLocation.ts
│   │       │   ├── createNewEvent.ts
│   │       │   ├── mockClock.ts
│   │       │   ├── mockEventBridge.ts
│   │       │   ├── mockEventTarget.ts
│   │       │   ├── mockFetch.ts
│   │       │   ├── mockFlushController.ts
│   │       │   ├── mockNavigator.ts
│   │       │   ├── mockReportingObserver.ts
│   │       │   ├── mockRequestIdleCallback.ts
│   │       │   ├── mockSyntheticsWorkerValues.ts
│   │       │   ├── mockTelemetry.ts
│   │       │   ├── mockVisibilityState.ts
│   │       │   ├── mockXhr.ts
│   │       │   └── mockZoneJs.ts
│   │       ├── fakeSessionStoreStrategy.ts
│   │       ├── forEach.spec.ts
│   │       ├── getCurrentJasmineSpec.ts
│   │       ├── index.ts
│   │       ├── instrumentation.ts
│   │       ├── interceptRequests.ts
│   │       ├── leakDetection.ts
│   │       ├── mockGlobalContext.ts
│   │       ├── readFormData.ts
│   │       ├── registerCleanupTask.ts
│   │       ├── replaceMockable.ts
│   │       ├── typeUtils.ts
│   │       └── wait.ts
│   ├── logs/
│   │   ├── .yarnrc
│   │   ├── BROWSER_SUPPORT.md
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── boot/
│   │   │   │   ├── logsPublicApi.spec.ts
│   │   │   │   ├── logsPublicApi.ts
│   │   │   │   ├── preStartLogs.spec.ts
│   │   │   │   ├── preStartLogs.ts
│   │   │   │   ├── startLogs.spec.ts
│   │   │   │   └── startLogs.ts
│   │   │   ├── domain/
│   │   │   │   ├── assembly.spec.ts
│   │   │   │   ├── assembly.ts
│   │   │   │   ├── configuration.spec.ts
│   │   │   │   ├── configuration.ts
│   │   │   │   ├── console/
│   │   │   │   │   ├── consoleCollection.spec.ts
│   │   │   │   │   └── consoleCollection.ts
│   │   │   │   ├── contexts/
│   │   │   │   │   ├── commonContext.ts
│   │   │   │   │   ├── internalContext.spec.ts
│   │   │   │   │   ├── internalContext.ts
│   │   │   │   │   ├── rumInternalContext.spec.ts
│   │   │   │   │   ├── rumInternalContext.ts
│   │   │   │   │   ├── sessionContext.spec.ts
│   │   │   │   │   ├── sessionContext.ts
│   │   │   │   │   ├── trackingConsentContext.spec.ts
│   │   │   │   │   └── trackingConsentContext.ts
│   │   │   │   ├── createErrorFieldFromRawError.spec.ts
│   │   │   │   ├── createErrorFieldFromRawError.ts
│   │   │   │   ├── hooks.ts
│   │   │   │   ├── lifeCycle.ts
│   │   │   │   ├── logger/
│   │   │   │   │   ├── isAuthorized.ts
│   │   │   │   │   ├── loggerCollection.spec.ts
│   │   │   │   │   └── loggerCollection.ts
│   │   │   │   ├── logger.spec.ts
│   │   │   │   ├── logger.ts
│   │   │   │   ├── logsSessionManager.spec.ts
│   │   │   │   ├── logsSessionManager.ts
│   │   │   │   ├── networkError/
│   │   │   │   │   ├── networkErrorCollection.spec.ts
│   │   │   │   │   └── networkErrorCollection.ts
│   │   │   │   ├── report/
│   │   │   │   │   ├── reportCollection.spec.ts
│   │   │   │   │   └── reportCollection.ts
│   │   │   │   ├── reportError.ts
│   │   │   │   └── runtimeError/
│   │   │   │       ├── runtimeErrorCollection.spec.ts
│   │   │   │       └── runtimeErrorCollection.ts
│   │   │   ├── domainContext.types.ts
│   │   │   ├── entries/
│   │   │   │   └── main.ts
│   │   │   ├── logsEvent.types.ts
│   │   │   ├── rawLogsEvent.types.ts
│   │   │   └── transport/
│   │   │       ├── startLogsBatch.ts
│   │   │       └── startLogsBridge.ts
│   │   ├── test/
│   │   │   └── mockLogsSessionManager.ts
│   │   └── typedoc.json
│   ├── rum/
│   │   ├── .yarnrc
│   │   ├── BROWSER_SUPPORT.md
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── internal/
│   │   │   └── package.json
│   │   ├── internal-synthetics/
│   │   │   └── package.json
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── boot/
│   │   │   │   ├── isBrowserSupported.ts
│   │   │   │   ├── lazyLoadProfiler.ts
│   │   │   │   ├── lazyLoadRecorder.spec.ts
│   │   │   │   ├── lazyLoadRecorder.ts
│   │   │   │   ├── postStartStrategy.ts
│   │   │   │   ├── preStartStrategy.ts
│   │   │   │   ├── profilerApi.ts
│   │   │   │   ├── recorderApi.spec.ts
│   │   │   │   ├── recorderApi.ts
│   │   │   │   ├── startRecording.spec.ts
│   │   │   │   └── startRecording.ts
│   │   │   ├── domain/
│   │   │   │   ├── deflate/
│   │   │   │   │   ├── deflateEncoder.spec.ts
│   │   │   │   │   ├── deflateEncoder.ts
│   │   │   │   │   ├── deflateWorker.spec.ts
│   │   │   │   │   ├── deflateWorker.ts
│   │   │   │   │   └── index.ts
│   │   │   │   ├── getSessionReplayLink.spec.ts
│   │   │   │   ├── getSessionReplayLink.ts
│   │   │   │   ├── profiling/
│   │   │   │   │   ├── actionHistory.spec.ts
│   │   │   │   │   ├── actionHistory.ts
│   │   │   │   │   ├── longTaskHistory.spec.ts
│   │   │   │   │   ├── longTaskHistory.ts
│   │   │   │   │   ├── profiler.spec.ts
│   │   │   │   │   ├── profiler.ts
│   │   │   │   │   ├── profilingContext.spec.ts
│   │   │   │   │   ├── profilingContext.ts
│   │   │   │   │   ├── profilingSupported.ts
│   │   │   │   │   ├── test-utils/
│   │   │   │   │   │   └── mockedTrace.ts
│   │   │   │   │   ├── transport/
│   │   │   │   │   │   ├── assembly.ts
│   │   │   │   │   │   ├── buildProfileEventAttributes.spec.ts
│   │   │   │   │   │   └── buildProfileEventAttributes.ts
│   │   │   │   │   ├── types/
│   │   │   │   │   │   ├── index.ts
│   │   │   │   │   │   ├── profilerApi.types.ts
│   │   │   │   │   │   └── rumProfiler.types.ts
│   │   │   │   │   ├── utils/
│   │   │   │   │   │   ├── getCustomOrDefaultViewName.spec.ts
│   │   │   │   │   │   ├── getCustomOrDefaultViewName.ts
│   │   │   │   │   │   ├── getDefaultViewName.spec.ts
│   │   │   │   │   │   ├── getDefaultViewName.ts
│   │   │   │   │   │   ├── getNumberOfSamples.spec.ts
│   │   │   │   │   │   └── getNumberOfSamples.ts
│   │   │   │   │   ├── vitalHistory.spec.ts
│   │   │   │   │   └── vitalHistory.ts
│   │   │   │   ├── record/
│   │   │   │   │   ├── assembly.ts
│   │   │   │   │   ├── elementsScrollPositions.ts
│   │   │   │   │   ├── eventsUtils.ts
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── internalApi.spec.ts
│   │   │   │   │   ├── internalApi.ts
│   │   │   │   │   ├── itemIds.spec.ts
│   │   │   │   │   ├── itemIds.ts
│   │   │   │   │   ├── mutationBatch.spec.ts
│   │   │   │   │   ├── mutationBatch.ts
│   │   │   │   │   ├── record.spec.ts
│   │   │   │   │   ├── record.ts
│   │   │   │   │   ├── record.types.ts
│   │   │   │   │   ├── recordingScope.ts
│   │   │   │   │   ├── serialization/
│   │   │   │   │   │   ├── changeEncoder.spec.ts
│   │   │   │   │   │   ├── changeEncoder.ts
│   │   │   │   │   │   ├── conversions/
│   │   │   │   │   │   │   ├── changeConverter.ts
│   │   │   │   │   │   │   ├── changeDecoder.ts
│   │   │   │   │   │   │   ├── index.ts
│   │   │   │   │   │   │   ├── mutationLog.ts
│   │   │   │   │   │   │   ├── nodeIdRemapper.ts
│   │   │   │   │   │   │   ├── renderOptions.ts
│   │   │   │   │   │   │   ├── stringTable.ts
│   │   │   │   │   │   │   ├── vDocument.spec.ts
│   │   │   │   │   │   │   ├── vDocument.ts
│   │   │   │   │   │   │   ├── vDom.specHelper.ts
│   │   │   │   │   │   │   ├── vNode.spec.ts
│   │   │   │   │   │   │   ├── vNode.ts
│   │   │   │   │   │   │   ├── vStyleSheet.spec.ts
│   │   │   │   │   │   │   └── vStyleSheet.ts
│   │   │   │   │   │   ├── experimentalFeatures.ts
│   │   │   │   │   │   ├── htmlAst.specHelper.ts
│   │   │   │   │   │   ├── index.ts
│   │   │   │   │   │   ├── insertionCursor.spec.ts
│   │   │   │   │   │   ├── insertionCursor.ts
│   │   │   │   │   │   ├── serialization.types.ts
│   │   │   │   │   │   ├── serializationStats.spec.ts
│   │   │   │   │   │   ├── serializationStats.ts
│   │   │   │   │   │   ├── serializationTransaction.ts
│   │   │   │   │   │   ├── serializationUtils.spec.ts
│   │   │   │   │   │   ├── serializationUtils.ts
│   │   │   │   │   │   ├── serializeAttribute.spec.ts
│   │   │   │   │   │   ├── serializeAttribute.ts
│   │   │   │   │   │   ├── serializeAttributes.spec.ts
│   │   │   │   │   │   ├── serializeAttributes.ts
│   │   │   │   │   │   ├── serializeFullSnapshot.ts
│   │   │   │   │   │   ├── serializeFullSnapshotAsChange.ts
│   │   │   │   │   │   ├── serializeHtml.specHelper.ts
│   │   │   │   │   │   ├── serializeMutations.spec.ts
│   │   │   │   │   │   ├── serializeMutations.ts
│   │   │   │   │   │   ├── serializeMutationsAsChange.ts
│   │   │   │   │   │   ├── serializeNode.spec.ts
│   │   │   │   │   │   ├── serializeNode.ts
│   │   │   │   │   │   ├── serializeNodeAsChange.form.spec.ts
│   │   │   │   │   │   ├── serializeNodeAsChange.node.spec.ts
│   │   │   │   │   │   ├── serializeNodeAsChange.snapshot.spec.ts
│   │   │   │   │   │   ├── serializeNodeAsChange.stylesheet.spec.ts
│   │   │   │   │   │   ├── serializeNodeAsChange.ts
│   │   │   │   │   │   ├── serializeStyleSheets.spec.ts
│   │   │   │   │   │   └── serializeStyleSheets.ts
│   │   │   │   │   ├── serializationVerifier.ts
│   │   │   │   │   ├── shadowRootsController.ts
│   │   │   │   │   ├── startFullSnapshots.spec.ts
│   │   │   │   │   ├── startFullSnapshots.ts
│   │   │   │   │   ├── test/
│   │   │   │   │   │   ├── recordingScope.specHelper.ts
│   │   │   │   │   │   ├── rumConfiguration.specHelper.ts
│   │   │   │   │   │   ├── serialization.specHelper.ts
│   │   │   │   │   │   └── shadowRootsController.specHelper.ts
│   │   │   │   │   ├── trackers/
│   │   │   │   │   │   ├── index.ts
│   │   │   │   │   │   ├── trackFocus.spec.ts
│   │   │   │   │   │   ├── trackFocus.ts
│   │   │   │   │   │   ├── trackInput.spec.ts
│   │   │   │   │   │   ├── trackInput.ts
│   │   │   │   │   │   ├── trackMediaInteraction.spec.ts
│   │   │   │   │   │   ├── trackMediaInteraction.ts
│   │   │   │   │   │   ├── trackMouseInteraction.spec.ts
│   │   │   │   │   │   ├── trackMouseInteraction.ts
│   │   │   │   │   │   ├── trackMove.spec.ts
│   │   │   │   │   │   ├── trackMove.ts
│   │   │   │   │   │   ├── trackMutation.spec.ts
│   │   │   │   │   │   ├── trackMutation.ts
│   │   │   │   │   │   ├── trackScroll.spec.ts
│   │   │   │   │   │   ├── trackScroll.ts
│   │   │   │   │   │   ├── trackStyleSheet.spec.ts
│   │   │   │   │   │   ├── trackStyleSheet.ts
│   │   │   │   │   │   ├── trackViewEnd.spec.ts
│   │   │   │   │   │   ├── trackViewEnd.ts
│   │   │   │   │   │   ├── trackViewportResize.spec.ts
│   │   │   │   │   │   ├── trackViewportResize.ts
│   │   │   │   │   │   └── tracker.types.ts
│   │   │   │   │   └── viewports.ts
│   │   │   │   ├── replayStats.spec.ts
│   │   │   │   ├── replayStats.ts
│   │   │   │   ├── scriptLoadingError.ts
│   │   │   │   ├── segmentCollection/
│   │   │   │   │   ├── buildReplayPayload.spec.ts
│   │   │   │   │   ├── buildReplayPayload.ts
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── segment.spec.ts
│   │   │   │   │   ├── segment.ts
│   │   │   │   │   ├── segmentCollection.spec.ts
│   │   │   │   │   ├── segmentCollection.ts
│   │   │   │   │   ├── startSegmentTelemetry.spec.ts
│   │   │   │   │   └── startSegmentTelemetry.ts
│   │   │   │   ├── startRecordBridge.ts
│   │   │   │   ├── startRecorderInitTelemetry.spec.ts
│   │   │   │   └── startRecorderInitTelemetry.ts
│   │   │   ├── entries/
│   │   │   │   ├── internal.ts
│   │   │   │   ├── internalSynthetics.ts
│   │   │   │   └── main.ts
│   │   │   └── types/
│   │   │       ├── index.ts
│   │   │       ├── profiling.ts
│   │   │       ├── sessionReplay.ts
│   │   │       └── sessionReplayConstants.ts
│   │   ├── test/
│   │   │   ├── index.ts
│   │   │   ├── mockProfiler.ts
│   │   │   ├── mockWorker.ts
│   │   │   ├── record/
│   │   │   │   ├── changes.ts
│   │   │   │   ├── elements.ts
│   │   │   │   ├── index.ts
│   │   │   │   ├── mutationPayloadValidator.ts
│   │   │   │   ├── nodes.ts
│   │   │   │   ├── readReplayPayload.ts
│   │   │   │   ├── recordsPerFullSnapshot.ts
│   │   │   │   ├── segments.ts
│   │   │   │   └── toto.css
│   │   │   └── rumFrustrationEvent.ts
│   │   └── typedoc.json
│   ├── rum-angular/
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── domain/
│   │   │   │   ├── angularPlugin.spec.ts
│   │   │   │   ├── angularPlugin.ts
│   │   │   │   ├── angularRouter/
│   │   │   │   │   ├── provideDatadogRouter.ts
│   │   │   │   │   ├── startAngularView.spec.ts
│   │   │   │   │   ├── startAngularView.ts
│   │   │   │   │   └── types.ts
│   │   │   │   └── error/
│   │   │   │       ├── addAngularError.spec.ts
│   │   │   │       ├── addAngularError.ts
│   │   │   │       ├── index.ts
│   │   │   │       ├── provideDatadogErrorHandler.spec.ts
│   │   │   │       └── provideDatadogErrorHandler.ts
│   │   │   └── entries/
│   │   │       └── main.ts
│   │   ├── test/
│   │   │   └── initializeAngularPlugin.ts
│   │   └── tsconfig.json
│   ├── rum-core/
│   │   ├── .yarnrc
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── boot/
│   │   │   │   ├── preStartRum.spec.ts
│   │   │   │   ├── preStartRum.ts
│   │   │   │   ├── rumPublicApi.spec.ts
│   │   │   │   ├── rumPublicApi.ts
│   │   │   │   ├── startRum.spec.ts
│   │   │   │   └── startRum.ts
│   │   │   ├── browser/
│   │   │   │   ├── cookieObservable.spec.ts
│   │   │   │   ├── cookieObservable.ts
│   │   │   │   ├── domMutationObservable.spec.ts
│   │   │   │   ├── domMutationObservable.ts
│   │   │   │   ├── firstInputPolyfill.ts
│   │   │   │   ├── htmlDomUtils.spec.ts
│   │   │   │   ├── htmlDomUtils.ts
│   │   │   │   ├── locationChangeObservable.spec.ts
│   │   │   │   ├── locationChangeObservable.ts
│   │   │   │   ├── performanceObservable.spec.ts
│   │   │   │   ├── performanceObservable.ts
│   │   │   │   ├── performanceUtils.spec.ts
│   │   │   │   ├── performanceUtils.ts
│   │   │   │   ├── scroll.spec.ts
│   │   │   │   ├── scroll.ts
│   │   │   │   ├── viewportObservable.spec.ts
│   │   │   │   ├── viewportObservable.ts
│   │   │   │   ├── windowOpenObservable.spec.ts
│   │   │   │   └── windowOpenObservable.ts
│   │   │   ├── domain/
│   │   │   │   ├── action/
│   │   │   │   │   ├── actionCollection.spec.ts
│   │   │   │   │   ├── actionCollection.ts
│   │   │   │   │   ├── actionNameConstants.ts
│   │   │   │   │   ├── clickChain.spec.ts
│   │   │   │   │   ├── clickChain.ts
│   │   │   │   │   ├── computeFrustration.spec.ts
│   │   │   │   │   ├── computeFrustration.ts
│   │   │   │   │   ├── getActionNameFromElement.spec.ts
│   │   │   │   │   ├── getActionNameFromElement.ts
│   │   │   │   │   ├── interactionSelectorCache.spec.ts
│   │   │   │   │   ├── interactionSelectorCache.ts
│   │   │   │   │   ├── isActionChildEvent.ts
│   │   │   │   │   ├── listenActionEvents.spec.ts
│   │   │   │   │   ├── listenActionEvents.ts
│   │   │   │   │   ├── trackClickActions.spec.ts
│   │   │   │   │   ├── trackClickActions.ts
│   │   │   │   │   ├── trackManualActions.spec.ts
│   │   │   │   │   └── trackManualActions.ts
│   │   │   │   ├── assembly.spec.ts
│   │   │   │   ├── assembly.ts
│   │   │   │   ├── configuration/
│   │   │   │   │   ├── configuration.spec.ts
│   │   │   │   │   ├── configuration.ts
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── jsonPathParser.spec.ts
│   │   │   │   │   ├── jsonPathParser.ts
│   │   │   │   │   ├── remoteConfiguration.spec.ts
│   │   │   │   │   ├── remoteConfiguration.ts
│   │   │   │   │   └── remoteConfiguration.types.ts
│   │   │   │   ├── contexts/
│   │   │   │   │   ├── ciVisibilityContext.spec.ts
│   │   │   │   │   ├── ciVisibilityContext.ts
│   │   │   │   │   ├── connectivityContext.spec.ts
│   │   │   │   │   ├── connectivityContext.ts
│   │   │   │   │   ├── defaultContext.spec.ts
│   │   │   │   │   ├── defaultContext.ts
│   │   │   │   │   ├── displayContext.spec.ts
│   │   │   │   │   ├── displayContext.ts
│   │   │   │   │   ├── featureFlagContext.spec.ts
│   │   │   │   │   ├── featureFlagContext.ts
│   │   │   │   │   ├── internalContext.spec.ts
│   │   │   │   │   ├── internalContext.ts
│   │   │   │   │   ├── pageStateHistory.spec.ts
│   │   │   │   │   ├── pageStateHistory.ts
│   │   │   │   │   ├── sessionContext.spec.ts
│   │   │   │   │   ├── sessionContext.ts
│   │   │   │   │   ├── sourceCodeContext.spec.ts
│   │   │   │   │   ├── sourceCodeContext.ts
│   │   │   │   │   ├── syntheticsContext.spec.ts
│   │   │   │   │   ├── syntheticsContext.ts
│   │   │   │   │   ├── trackingConsentContext.spec.ts
│   │   │   │   │   ├── trackingConsentContext.ts
│   │   │   │   │   ├── urlContexts.spec.ts
│   │   │   │   │   ├── urlContexts.ts
│   │   │   │   │   ├── viewHistory.spec.ts
│   │   │   │   │   └── viewHistory.ts
│   │   │   │   ├── discardNegativeDuration.ts
│   │   │   │   ├── error/
│   │   │   │   │   ├── errorCollection.spec.ts
│   │   │   │   │   ├── errorCollection.ts
│   │   │   │   │   ├── trackConsoleError.spec.ts
│   │   │   │   │   ├── trackConsoleError.ts
│   │   │   │   │   ├── trackReportError.spec.ts
│   │   │   │   │   └── trackReportError.ts
│   │   │   │   ├── event/
│   │   │   │   │   ├── eventCollection.spec.ts
│   │   │   │   │   └── eventCollection.ts
│   │   │   │   ├── eventTracker.spec.ts
│   │   │   │   ├── eventTracker.ts
│   │   │   │   ├── extractRegexMatch.ts
│   │   │   │   ├── getComposedPathSelector.spec.ts
│   │   │   │   ├── getComposedPathSelector.ts
│   │   │   │   ├── getSelectorFromElement.spec.ts
│   │   │   │   ├── getSelectorFromElement.ts
│   │   │   │   ├── getSessionReplayUrl.spec.ts
│   │   │   │   ├── getSessionReplayUrl.ts
│   │   │   │   ├── hooks.ts
│   │   │   │   ├── lifeCycle.ts
│   │   │   │   ├── limitModification.spec.ts
│   │   │   │   ├── limitModification.ts
│   │   │   │   ├── longTask/
│   │   │   │   │   ├── longTaskCollection.spec.ts
│   │   │   │   │   └── longTaskCollection.ts
│   │   │   │   ├── plugins.spec.ts
│   │   │   │   ├── plugins.ts
│   │   │   │   ├── privacy.spec.ts
│   │   │   │   ├── privacy.ts
│   │   │   │   ├── privacyConstants.ts
│   │   │   │   ├── requestCollection.spec.ts
│   │   │   │   ├── requestCollection.ts
│   │   │   │   ├── resource/
│   │   │   │   │   ├── graphql.spec.ts
│   │   │   │   │   ├── graphql.ts
│   │   │   │   │   ├── matchRequestResourceEntry.spec.ts
│   │   │   │   │   ├── matchRequestResourceEntry.ts
│   │   │   │   │   ├── requestRegistry.spec.ts
│   │   │   │   │   ├── requestRegistry.ts
│   │   │   │   │   ├── resourceCollection.spec.ts
│   │   │   │   │   ├── resourceCollection.ts
│   │   │   │   │   ├── resourceUtils.spec.ts
│   │   │   │   │   ├── resourceUtils.ts
│   │   │   │   │   ├── retrieveInitialDocumentResourceTiming.spec.ts
│   │   │   │   │   ├── retrieveInitialDocumentResourceTiming.ts
│   │   │   │   │   ├── trackManualResources.spec.ts
│   │   │   │   │   └── trackManualResources.ts
│   │   │   │   ├── rumSessionManager.spec.ts
│   │   │   │   ├── rumSessionManager.ts
│   │   │   │   ├── sampler/
│   │   │   │   │   ├── sampler.spec.ts
│   │   │   │   │   └── sampler.ts
│   │   │   │   ├── startCustomerDataTelemetry.spec.ts
│   │   │   │   ├── startCustomerDataTelemetry.ts
│   │   │   │   ├── tracing/
│   │   │   │   │   ├── getDocumentTraceId.spec.ts
│   │   │   │   │   ├── getDocumentTraceId.ts
│   │   │   │   │   ├── identifier.spec.ts
│   │   │   │   │   ├── identifier.ts
│   │   │   │   │   ├── tracer.spec.ts
│   │   │   │   │   ├── tracer.ts
│   │   │   │   │   └── tracer.types.ts
│   │   │   │   ├── trackEventCounts.spec.ts
│   │   │   │   ├── trackEventCounts.ts
│   │   │   │   ├── view/
│   │   │   │   │   ├── bfCacheSupport.spec.ts
│   │   │   │   │   ├── bfCacheSupport.ts
│   │   │   │   │   ├── setupViewTest.specHelper.ts
│   │   │   │   │   ├── trackViewEventCounts.spec.ts
│   │   │   │   │   ├── trackViewEventCounts.ts
│   │   │   │   │   ├── trackViews.spec.ts
│   │   │   │   │   ├── trackViews.ts
│   │   │   │   │   ├── viewCollection.spec.ts
│   │   │   │   │   ├── viewCollection.ts
│   │   │   │   │   └── viewMetrics/
│   │   │   │   │       ├── getClsAttributionImpactedArea.spec.ts
│   │   │   │   │       ├── getClsAttributionImpactedArea.ts
│   │   │   │   │       ├── interactionCountPolyfill.ts
│   │   │   │   │       ├── startInitialViewMetricsTelemetry.spec.ts
│   │   │   │   │       ├── startInitialViewMetricsTelemetry.ts
│   │   │   │   │       ├── trackBfcacheMetrics.spec.ts
│   │   │   │   │       ├── trackBfcacheMetrics.ts
│   │   │   │   │       ├── trackCommonViewMetrics.spec.ts
│   │   │   │   │       ├── trackCommonViewMetrics.ts
│   │   │   │   │       ├── trackCumulativeLayoutShift.spec.ts
│   │   │   │   │       ├── trackCumulativeLayoutShift.ts
│   │   │   │   │       ├── trackFirstContentfulPaint.spec.ts
│   │   │   │   │       ├── trackFirstContentfulPaint.ts
│   │   │   │   │       ├── trackFirstHidden.spec.ts
│   │   │   │   │       ├── trackFirstHidden.ts
│   │   │   │   │       ├── trackFirstInput.spec.ts
│   │   │   │   │       ├── trackFirstInput.ts
│   │   │   │   │       ├── trackInitialViewMetrics.spec.ts
│   │   │   │   │       ├── trackInitialViewMetrics.ts
│   │   │   │   │       ├── trackInteractionToNextPaint.spec.ts
│   │   │   │   │       ├── trackInteractionToNextPaint.ts
│   │   │   │   │       ├── trackLargestContentfulPaint.spec.ts
│   │   │   │   │       ├── trackLargestContentfulPaint.ts
│   │   │   │   │       ├── trackLoadingTime.spec.ts
│   │   │   │   │       ├── trackLoadingTime.ts
│   │   │   │   │       ├── trackNavigationTimings.spec.ts
│   │   │   │   │       ├── trackNavigationTimings.ts
│   │   │   │   │       ├── trackScrollMetrics.spec.ts
│   │   │   │   │       └── trackScrollMetrics.ts
│   │   │   │   ├── vital/
│   │   │   │   │   ├── vitalCollection.spec.ts
│   │   │   │   │   └── vitalCollection.ts
│   │   │   │   ├── waitPageActivityEnd.spec.ts
│   │   │   │   └── waitPageActivityEnd.ts
│   │   │   ├── domainContext.types.ts
│   │   │   ├── index.ts
│   │   │   ├── rawRumEvent.types.ts
│   │   │   ├── rumEvent.types.ts
│   │   │   └── transport/
│   │   │       ├── formDataTransport.spec.ts
│   │   │       ├── formDataTransport.ts
│   │   │       ├── startRumBatch.ts
│   │   │       └── startRumEventBridge.ts
│   │   └── test/
│   │       ├── allJsonSchemas.d.ts
│   │       ├── allJsonSchemas.js
│   │       ├── createFakeClick.ts
│   │       ├── dom.ts
│   │       ├── emulate/
│   │       │   ├── mockDocumentReadyState.ts
│   │       │   ├── mockGlobalPerformanceBuffer.ts
│   │       │   └── mockPerformanceObserver.ts
│   │       ├── fixtures.ts
│   │       ├── formatValidation.ts
│   │       ├── index.ts
│   │       ├── locationChangeSetup.ts
│   │       ├── mockCiVisibilityValues.ts
│   │       ├── mockContexts.ts
│   │       ├── mockPageStateHistory.ts
│   │       ├── mockRumConfiguration.ts
│   │       ├── mockRumSessionManager.ts
│   │       ├── noopProfilerApi.ts
│   │       └── noopRecorderApi.ts
│   ├── rum-nextjs/
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── domain/
│   │   │   │   ├── error/
│   │   │   │   │   ├── addNextjsError.spec.ts
│   │   │   │   │   ├── addNextjsError.ts
│   │   │   │   │   ├── errorBoundary.spec.tsx
│   │   │   │   │   └── errorBoundary.ts
│   │   │   │   ├── nextJSRouter/
│   │   │   │   │   ├── computeViewNameFromParams.spec.ts
│   │   │   │   │   ├── computeViewNameFromParams.ts
│   │   │   │   │   ├── datadogAppRouter.tsx
│   │   │   │   │   └── datadogPagesRouter.tsx
│   │   │   │   ├── nextjsPlugin.spec.ts
│   │   │   │   └── nextjsPlugin.ts
│   │   │   └── entries/
│   │   │       └── main.ts
│   │   ├── test/
│   │   │   └── initializeNextjsPlugin.ts
│   │   └── tsconfig.json
│   ├── rum-nuxt/
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── domain/
│   │   │   │   ├── nuxtPlugin.spec.ts
│   │   │   │   ├── nuxtPlugin.ts
│   │   │   │   └── router/
│   │   │   │       ├── nuxtRouter.spec.ts
│   │   │   │       └── nuxtRouter.ts
│   │   │   └── entries/
│   │   │       └── main.ts
│   │   └── test/
│   │       └── initializeNuxtPlugin.ts
│   ├── rum-react/
│   │   ├── .yarnrc
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── internal/
│   │   │   └── package.json
│   │   ├── package.json
│   │   ├── react-router-v6/
│   │   │   ├── package.json
│   │   │   └── typedoc.json
│   │   ├── react-router-v7/
│   │   │   ├── package.json
│   │   │   └── typedoc.json
│   │   ├── src/
│   │   │   ├── domain/
│   │   │   │   ├── error/
│   │   │   │   │   ├── addReactError.spec.ts
│   │   │   │   │   ├── addReactError.ts
│   │   │   │   │   ├── createErrorBoundary.spec.tsx
│   │   │   │   │   ├── errorBoundary.spec.tsx
│   │   │   │   │   ├── errorBoundary.ts
│   │   │   │   │   └── index.ts
│   │   │   │   ├── performance/
│   │   │   │   │   ├── addDurationVital.ts
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── reactComponentTracker.spec.tsx
│   │   │   │   │   ├── reactComponentTracker.tsx
│   │   │   │   │   ├── timer.spec.ts
│   │   │   │   │   └── timer.ts
│   │   │   │   ├── reactPlugin.spec.ts
│   │   │   │   ├── reactPlugin.ts
│   │   │   │   ├── reactRouter/
│   │   │   │   │   ├── createRouter.spec.ts
│   │   │   │   │   ├── createRouter.ts
│   │   │   │   │   ├── index.ts
│   │   │   │   │   ├── reactRouter.specHelper.ts
│   │   │   │   │   ├── routesComponent.spec.tsx
│   │   │   │   │   ├── routesComponent.ts
│   │   │   │   │   ├── startReactRouterView.spec.ts
│   │   │   │   │   ├── startReactRouterView.ts
│   │   │   │   │   ├── types.ts
│   │   │   │   │   ├── useRoutes.spec.tsx
│   │   │   │   │   └── useRoutes.ts
│   │   │   │   └── tanstackRouter/
│   │   │   │       ├── startTanStackRouterView.spec.ts
│   │   │   │       ├── startTanStackRouterView.ts
│   │   │   │       ├── types.ts
│   │   │   │       ├── wrapCreateRouter.spec.ts
│   │   │   │       └── wrapCreateRouter.ts
│   │   │   └── entries/
│   │   │       ├── internal.ts
│   │   │       ├── main.ts
│   │   │       ├── reactRouterV6.ts
│   │   │       ├── reactRouterV7.ts
│   │   │       └── tanstackRouter.ts
│   │   ├── tanstack-router/
│   │   │   └── package.json
│   │   ├── test/
│   │   │   ├── appendComponent.ts
│   │   │   ├── initializeReactPlugin.ts
│   │   │   └── reactOldBrowsersSupport.ts
│   │   └── typedoc.json
│   ├── rum-slim/
│   │   ├── .yarnrc
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── boot/
│   │   │   │   ├── stubProfilerApi.ts
│   │   │   │   └── stubRecorderApi.ts
│   │   │   ├── domain/
│   │   │   │   ├── getSessionReplayLink.spec.ts
│   │   │   │   └── getSessionReplayLink.ts
│   │   │   └── entries/
│   │   │       └── main.ts
│   │   └── typedoc.json
│   ├── rum-vue/
│   │   ├── .yarnrc
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── src/
│   │   │   ├── domain/
│   │   │   │   ├── error/
│   │   │   │   │   ├── addVueError.spec.ts
│   │   │   │   │   └── addVueError.ts
│   │   │   │   ├── router/
│   │   │   │   │   ├── startVueRouterView.spec.ts
│   │   │   │   │   ├── startVueRouterView.ts
│   │   │   │   │   ├── vueRouter.spec.ts
│   │   │   │   │   └── vueRouter.ts
│   │   │   │   ├── vuePlugin.spec.ts
│   │   │   │   └── vuePlugin.ts
│   │   │   └── entries/
│   │   │       ├── main.ts
│   │   │       └── vueRouter.ts
│   │   ├── test/
│   │   │   └── initializeVuePlugin.ts
│   │   ├── typedoc.json
│   │   └── vue-router-v4/
│   │       ├── package.json
│   │       └── typedoc.json
│   └── worker/
│       ├── .yarnrc
│       ├── LICENSE
│       ├── README.md
│       ├── package.json
│       ├── src/
│       │   ├── boot/
│       │   │   ├── startWorker.spec.ts
│       │   │   └── startWorker.ts
│       │   ├── domain/
│       │   │   ├── deflate.d.ts
│       │   │   └── deflate.js
│       │   └── entries/
│       │       └── main.ts
│       └── tsconfig.json
├── remote-configuration/
│   ├── README.md
│   └── rum-sdk-config.json
├── renovate.json
├── repository.datadog.yml
├── scripts/
│   ├── AGENTS.md
│   ├── CLAUDE.md
│   ├── build/
│   │   ├── build-package.ts
│   │   └── build-test-apps.ts
│   ├── check-licenses.ts
│   ├── check-node-version.ts
│   ├── check-packages.ts
│   ├── check-schemas.ts
│   ├── check-typescript-compatibility.ts
│   ├── cli
│   ├── deploy/
│   │   ├── deploy-prod-dc.spec.ts
│   │   ├── deploy-prod-dc.ts
│   │   ├── deploy.spec.ts
│   │   ├── deploy.ts
│   │   ├── lib/
│   │   │   ├── checkTelemetryErrors.spec.ts
│   │   │   ├── checkTelemetryErrors.ts
│   │   │   ├── deploymentUtils.ts
│   │   │   └── testHelpers.ts
│   │   ├── publish-developer-extension.ts
│   │   ├── publish-npm.ts
│   │   ├── upload-source-maps.spec.ts
│   │   └── upload-source-maps.ts
│   ├── dev-server/
│   │   ├── index.ts
│   │   └── lib/
│   │       ├── commands/
│   │       │   ├── intake.ts
│   │       │   ├── logs.ts
│   │       │   ├── start.ts
│   │       │   ├── status.ts
│   │       │   └── stop.ts
│   │       ├── daemon.ts
│   │       ├── server.ts
│   │       └── state.ts
│   ├── generate-schema-types.ts
│   ├── lib/
│   │   ├── browserSdkVersion.ts
│   │   ├── bsUtils.ts
│   │   ├── buildEnv.ts
│   │   ├── checkBrowserSdkPackageJsonFiles.ts
│   │   ├── command.spec.ts
│   │   ├── command.ts
│   │   ├── computeBundleSize.ts
│   │   ├── datacenter.spec.ts
│   │   ├── datacenter.ts
│   │   ├── executionUtils.spec.ts
│   │   ├── executionUtils.ts
│   │   ├── filesUtils.ts
│   │   ├── generatedSchemaTypes.ts
│   │   ├── gitUtils.ts
│   │   ├── global.d.ts
│   │   ├── packagesDirectoryNames.ts
│   │   └── secrets.ts
│   ├── performance/
│   │   ├── index.ts
│   │   └── lib/
│   │       ├── bundleSizes.ts
│   │       ├── constants.ts
│   │       ├── cpuPerformance.ts
│   │       ├── fetchPerformanceMetrics.ts
│   │       ├── memoryPerformance.ts
│   │       ├── reportAsAPrComment.spec.ts
│   │       ├── reportAsAPrComment.ts
│   │       └── reportToDatadog.ts
│   ├── release/
│   │   ├── check-release.ts
│   │   ├── create-github-release.ts
│   │   ├── generate-changelog/
│   │   │   ├── index.ts
│   │   │   └── lib/
│   │   │       ├── addNewChangesToChangelog.ts
│   │   │       ├── constants.ts
│   │   │       └── getAffectedPackages.ts
│   │   ├── prepare-release.ts
│   │   └── renew-token.ts
│   ├── show-bundle-size.ts
│   ├── staging-ci/
│   │   ├── check-squash-into-staging.ts
│   │   ├── check-staging-merge.ts
│   │   └── staging-reset.ts
│   ├── test/
│   │   ├── bs-kill.ts
│   │   ├── bs-wrapper.ts
│   │   ├── bump-chrome-version.ts
│   │   ├── ci-bs.ts
│   │   └── export-test-result.ts
│   └── update-branch.ts
├── static-analysis.datadog.yml
├── test/
│   ├── apps/
│   │   ├── .gitignore
│   │   ├── angular-app/
│   │   │   ├── .gitignore
│   │   │   ├── main.ts
│   │   │   ├── package.json
│   │   │   ├── tsconfig.json
│   │   │   └── webpack.config.js
│   │   ├── base-extension/
│   │   │   ├── .gitignore
│   │   │   ├── README.md
│   │   │   ├── manifest.json
│   │   │   ├── package.json
│   │   │   ├── src/
│   │   │   │   ├── appendChild.ts
│   │   │   │   ├── base.ts
│   │   │   │   └── cdn.ts
│   │   │   ├── tsconfig.json
│   │   │   └── webpack.config.js
│   │   ├── microfrontend/
│   │   │   ├── .gitignore
│   │   │   ├── app1.ts
│   │   │   ├── app2.ts
│   │   │   ├── bootstrap.ts
│   │   │   ├── common.ts
│   │   │   ├── package.json
│   │   │   ├── shell.ts
│   │   │   ├── tsconfig.json
│   │   │   ├── types.d.ts
│   │   │   ├── webpack.app1.js
│   │   │   ├── webpack.app2.js
│   │   │   ├── webpack.base.js
│   │   │   └── webpack.shell.js
│   │   ├── nextjs/
│   │   │   ├── .gitignore
│   │   │   ├── app/
│   │   │   │   ├── @sidebar/
│   │   │   │   │   ├── default.tsx
│   │   │   │   │   ├── guides/
│   │   │   │   │   │   └── [...slug]/
│   │   │   │   │   │       └── page.tsx
│   │   │   │   │   ├── page.tsx
│   │   │   │   │   └── user/
│   │   │   │   │       └── [id]/
│   │   │   │   │           └── page.tsx
│   │   │   │   ├── error-test/
│   │   │   │   │   ├── error.tsx
│   │   │   │   │   ├── page.tsx
│   │   │   │   │   └── server-error/
│   │   │   │   │       └── page.tsx
│   │   │   │   ├── global-error-test/
│   │   │   │   │   └── page.tsx
│   │   │   │   ├── global-error.tsx
│   │   │   │   ├── guides/
│   │   │   │   │   └── [...slug]/
│   │   │   │   │       └── page.tsx
│   │   │   │   ├── layout.tsx
│   │   │   │   ├── page.tsx
│   │   │   │   └── user/
│   │   │   │       └── [id]/
│   │   │   │           └── page.tsx
│   │   │   ├── instrumentation-client.js
│   │   │   ├── next.config.js
│   │   │   ├── package.json
│   │   │   ├── pages/
│   │   │   │   ├── _app.tsx
│   │   │   │   └── pages-router/
│   │   │   │       ├── error-test.tsx
│   │   │   │       ├── guides/
│   │   │   │       │   └── [...slug].tsx
│   │   │   │       ├── index.tsx
│   │   │   │       └── user/
│   │   │   │           └── [id].tsx
│   │   │   └── tsconfig.json
│   │   ├── nuxt-app/
│   │   │   ├── .gitignore
│   │   │   ├── app.vue
│   │   │   ├── nuxt.config.ts
│   │   │   ├── package.json
│   │   │   ├── pages/
│   │   │   │   ├── guides/
│   │   │   │   │   └── [...slug].vue
│   │   │   │   ├── index.vue
│   │   │   │   └── user/
│   │   │   │       └── [id].vue
│   │   │   ├── plugins/
│   │   │   │   └── datadog-rum.client.ts
│   │   │   └── tsconfig.json
│   │   ├── react-heavy-spa/
│   │   │   ├── .gitignore
│   │   │   ├── README.md
│   │   │   ├── index.html
│   │   │   ├── package.json
│   │   │   ├── public/
│   │   │   │   └── data/
│   │   │   │       ├── infrastructure.json
│   │   │   │       ├── logs.json
│   │   │   │       ├── metrics.json
│   │   │   │       └── traces.json
│   │   │   ├── src/
│   │   │   │   ├── App.css
│   │   │   │   ├── App.tsx
│   │   │   │   ├── components/
│   │   │   │   │   ├── Dashboard/
│   │   │   │   │   │   ├── ActivityFeed.css
│   │   │   │   │   │   ├── ActivityFeed.tsx
│   │   │   │   │   │   ├── Dashboard.css
│   │   │   │   │   │   ├── Dashboard.tsx
│   │   │   │   │   │   ├── MetricCard.css
│   │   │   │   │   │   ├── MetricCard.tsx
│   │   │   │   │   │   ├── ServiceGrid.css
│   │   │   │   │   │   ├── ServiceGrid.tsx
│   │   │   │   │   │   ├── ServiceStatusPieChart.css
│   │   │   │   │   │   ├── ServiceStatusPieChart.tsx
│   │   │   │   │   │   ├── TimeSeriesChart.css
│   │   │   │   │   │   └── TimeSeriesChart.tsx
│   │   │   │   │   ├── Infrastructure/
│   │   │   │   │   │   ├── HostDetails.css
│   │   │   │   │   │   ├── HostDetails.tsx
│   │   │   │   │   │   ├── HostList.css
│   │   │   │   │   │   ├── HostList.tsx
│   │   │   │   │   │   ├── HostMap.css
│   │   │   │   │   │   ├── HostMap.tsx
│   │   │   │   │   │   ├── Infrastructure.css
│   │   │   │   │   │   └── Infrastructure.tsx
│   │   │   │   │   ├── Layout/
│   │   │   │   │   │   ├── MainLayout.css
│   │   │   │   │   │   ├── MainLayout.tsx
│   │   │   │   │   │   ├── Sidebar.css
│   │   │   │   │   │   ├── Sidebar.tsx
│   │   │   │   │   │   ├── TopBar.css
│   │   │   │   │   │   └── TopBar.tsx
│   │   │   │   │   ├── Logs/
│   │   │   │   │   │   ├── FilterSidebar.css
│   │   │   │   │   │   ├── FilterSidebar.tsx
│   │   │   │   │   │   ├── LogDetails.css
│   │   │   │   │   │   ├── LogDetails.tsx
│   │   │   │   │   │   ├── LogTable.css
│   │   │   │   │   │   ├── LogTable.tsx
│   │   │   │   │   │   ├── LogsExplorer.css
│   │   │   │   │   │   ├── LogsExplorer.tsx
│   │   │   │   │   │   ├── SearchBar.css
│   │   │   │   │   │   └── SearchBar.tsx
│   │   │   │   │   └── Settings/
│   │   │   │   │       ├── Integrations.css
│   │   │   │   │       ├── Integrations.tsx
│   │   │   │   │       ├── Settings.css
│   │   │   │   │       ├── Settings.tsx
│   │   │   │   │       ├── TeamManagement.css
│   │   │   │   │       ├── TeamManagement.tsx
│   │   │   │   │       ├── UserSettings.css
│   │   │   │   │       └── UserSettings.tsx
│   │   │   │   ├── hooks/
│   │   │   │   │   ├── useData.ts
│   │   │   │   │   └── useDebounce.ts
│   │   │   │   ├── index.css
│   │   │   │   ├── main.tsx
│   │   │   │   ├── types/
│   │   │   │   │   └── data.ts
│   │   │   │   ├── utils/
│   │   │   │   │   ├── api.ts
│   │   │   │   │   ├── constants.ts
│   │   │   │   │   ├── generateMetrics.ts
│   │   │   │   │   └── performanceThrottle.ts
│   │   │   │   └── vite-env.d.ts
│   │   │   ├── tsconfig.app.json
│   │   │   ├── tsconfig.json
│   │   │   ├── tsconfig.node.json
│   │   │   └── vite.config.ts
│   │   ├── react-router-v6-app/
│   │   │   ├── .gitignore
│   │   │   ├── app.tsx
│   │   │   ├── package.json
│   │   │   ├── tsconfig.json
│   │   │   └── webpack.config.js
│   │   ├── react-shopist-like/
│   │   │   ├── .gitignore
│   │   │   ├── README.md
│   │   │   ├── index.html
│   │   │   ├── package.json
│   │   │   ├── public/
│   │   │   │   └── products.json
│   │   │   ├── src/
│   │   │   │   ├── App.css
│   │   │   │   ├── App.tsx
│   │   │   │   ├── components/
│   │   │   │   │   ├── Footer.tsx
│   │   │   │   │   ├── Header.tsx
│   │   │   │   │   ├── ProductCard.tsx
│   │   │   │   │   └── PromoBanner.tsx
│   │   │   │   ├── data/
│   │   │   │   │   └── products.ts
│   │   │   │   ├── main.tsx
│   │   │   │   ├── pages/
│   │   │   │   │   ├── Cart.tsx
│   │   │   │   │   ├── EditProfile.tsx
│   │   │   │   │   ├── Home.tsx
│   │   │   │   │   ├── ProductDetail.tsx
│   │   │   │   │   └── Profile.tsx
│   │   │   │   └── vite-env.d.ts
│   │   │   ├── tsconfig.app.json
│   │   │   ├── tsconfig.json
│   │   │   └── vite.config.ts
│   │   ├── tanstack-router-app/
│   │   │   ├── .gitignore
│   │   │   ├── app.tsx
│   │   │   ├── package.json
│   │   │   ├── tsconfig.json
│   │   │   └── webpack.config.js
│   │   ├── vanilla/
│   │   │   ├── .gitignore
│   │   │   ├── app.ts
│   │   │   ├── package.json
│   │   │   ├── tsconfig.json
│   │   │   ├── webpack.base.js
│   │   │   ├── webpack.ssr.js
│   │   │   └── webpack.web.js
│   │   └── vue-router-app/
│   │       ├── .gitignore
│   │       ├── index.html
│   │       ├── package.json
│   │       ├── src/
│   │       │   ├── App.vue
│   │       │   ├── main.ts
│   │       │   └── pages/
│   │       │       ├── ErrorPage.vue
│   │       │       ├── GuidesPage.vue
│   │       │       ├── HomePage.vue
│   │       │       └── UserPage.vue
│   │       ├── tsconfig.json
│   │       └── vite.config.ts
│   ├── browsers.conf.d.ts
│   ├── e2e/
│   │   ├── AGENTS.md
│   │   ├── CLAUDE.md
│   │   ├── browsers.conf.js
│   │   ├── lib/
│   │   │   ├── framework/
│   │   │   │   ├── createExtension.ts
│   │   │   │   ├── createTest.ts
│   │   │   │   ├── createWorker.ts
│   │   │   │   ├── environment.ts
│   │   │   │   ├── flushEvents.ts
│   │   │   │   ├── httpServers.ts
│   │   │   │   ├── index.ts
│   │   │   │   ├── intakeProxyMiddleware.ts
│   │   │   │   ├── intakeRegistry.ts
│   │   │   │   ├── pageSetups.ts
│   │   │   │   ├── sdkBuilds.ts
│   │   │   │   ├── serverApps/
│   │   │   │   │   ├── intake.ts
│   │   │   │   │   └── mock.ts
│   │   │   │   └── waitForRequests.ts
│   │   │   ├── helpers/
│   │   │   │   ├── browser.ts
│   │   │   │   ├── configuration.ts
│   │   │   │   ├── extensionFixture.ts
│   │   │   │   ├── playwright.ts
│   │   │   │   ├── session.ts
│   │   │   │   ├── tags.ts
│   │   │   │   └── validation.ts
│   │   │   └── types/
│   │   │       └── global.ts
│   │   ├── noticeReporter.ts
│   │   ├── package.json
│   │   ├── playwright.base.config.ts
│   │   ├── playwright.bs.config.ts
│   │   ├── playwright.local.config.ts
│   │   ├── scenario/
│   │   │   ├── browser-extensions/
│   │   │   │   └── browserExtensions.scenario.ts
│   │   │   ├── context.scenario.ts
│   │   │   ├── developer-extension/
│   │   │   │   └── developerExtension.scenario.ts
│   │   │   ├── eventBridge.scenario.ts
│   │   │   ├── logs.scenario.ts
│   │   │   ├── microfrontend.scenario.ts
│   │   │   ├── plugins/
│   │   │   │   ├── angularPlugin.scenario.ts
│   │   │   │   ├── basePluginErrorTests.ts
│   │   │   │   ├── basePluginRouterTests.ts
│   │   │   │   ├── nextjsPlugin.scenario.ts
│   │   │   │   ├── nuxtPlugin.scenario.ts
│   │   │   │   ├── plugin.scenario.ts
│   │   │   │   ├── reactPlugin.scenario.ts
│   │   │   │   └── vuePlugin.scenario.ts
│   │   │   ├── profiling.scenario.ts
│   │   │   ├── recorder/
│   │   │   │   ├── recorder.scenario.ts
│   │   │   │   ├── shadowDom.scenario.ts
│   │   │   │   └── viewports.scenario.ts
│   │   │   ├── rum/
│   │   │   │   ├── actions.scenario.ts
│   │   │   │   ├── errors.scenario.ts
│   │   │   │   ├── graphql.scenario.ts
│   │   │   │   ├── init.scenario.ts
│   │   │   │   ├── remoteConfiguration.scenario.ts
│   │   │   │   ├── resources.scenario.ts
│   │   │   │   ├── s8sInject.scenario.ts
│   │   │   │   ├── sessions.scenario.ts
│   │   │   │   ├── tracing.scenario.ts
│   │   │   │   ├── views.scenario.ts
│   │   │   │   └── vitals.scenario.ts
│   │   │   ├── sessionStore.scenario.ts
│   │   │   ├── tanstackRouterPlugin.scenario.ts
│   │   │   ├── telemetry.scenario.ts
│   │   │   ├── trackingConsent.scenario.ts
│   │   │   └── transport.scenario.ts
│   │   └── tsconfig.json
│   ├── envUtils.ts
│   ├── performance/
│   │   ├── configuration.ts
│   │   ├── createBenchmarkTest.ts
│   │   ├── environment.ts
│   │   ├── playwright.config.ts
│   │   ├── profilers/
│   │   │   ├── index.ts
│   │   │   ├── startCpuProfiling.ts
│   │   │   ├── startMemoryProfiling.ts
│   │   │   ├── startNetworkProfiling.ts
│   │   │   ├── startProfiling.ts
│   │   │   └── startWebVitalsProfiling.ts
│   │   ├── profiling.type.ts
│   │   ├── reporters/
│   │   │   ├── reportToConsole.ts
│   │   │   └── reportToDatadog.ts
│   │   ├── scenarios/
│   │   │   ├── heavy.scenario.ts
│   │   │   └── shopistLike.scenario.ts
│   │   ├── server.ts
│   │   └── tsconfig.json
│   └── unit/
│       ├── browsers.conf.ts
│       ├── globalThisPolyfill.js
│       ├── jasmineSeedReporterPlugin.js
│       ├── karma.base.conf.js
│       ├── karma.bs.conf.js
│       ├── karma.local.conf.js
│       ├── karmaDuplicateTestNameReporterPlugin.js
│       └── karmaSkippedFailedReporterPlugin.js
├── tsconfig.base.json
├── tsconfig.default.json
├── tsconfig.json
├── tsconfig.scripts.json
├── tsconfig.webpack.json
├── typedoc.css
├── typedoc.json
└── webpack.base.ts
Download .txt
Showing preview only (1,002K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (10315 symbols across 830 files)

FILE: .yarn/releases/yarn-4.13.0.cjs
  function wc (line 4) | function wc(e,t){return Object.assign(new Error(`${e}: ${t}`),{code:e})}
  function Cje (line 4) | function Cje(e){return wc("EBUSY",e)}
  function wje (line 4) | function wje(e,t){return wc("ENOSYS",`${e}, ${t}`)}
  function Bje (line 4) | function Bje(e){return wc("EINVAL",`invalid argument, ${e}`)}
  function Go (line 4) | function Go(e){return wc("EBADF",`bad file descriptor, ${e}`)}
  function vje (line 4) | function vje(e){return wc("ENOENT",`no such file or directory, ${e}`)}
  function Sje (line 4) | function Sje(e){return wc("ENOTDIR",`not a directory, ${e}`)}
  function Dje (line 4) | function Dje(e){return wc("EISDIR",`illegal operation on a directory, ${...
  function bje (line 4) | function bje(e){return wc("EEXIST",`file already exists, ${e}`)}
  function Pje (line 4) | function Pje(e){return wc("EROFS",`read-only filesystem, ${e}`)}
  function xje (line 4) | function xje(e){return wc("ENOTEMPTY",`directory not empty, ${e}`)}
  function kje (line 4) | function kje(e){return wc("EOPNOTSUPP",`operation not supported, ${e}`)}
  function rU (line 4) | function rU(){return wc("ERR_DIR_CLOSED","Directory handle was closed")}
  function uX (line 4) | function uX(){return new oE}
  function Qje (line 4) | function Qje(){return ZP(uX())}
  function ZP (line 4) | function ZP(e){for(let t in e)if(Object.hasOwn(e,t)){let r=e[t];typeof r...
  function Rje (line 4) | function Rje(e){let t=new aE;for(let r in e)if(Object.hasOwn(e,r)){let s...
  function oU (line 4) | function oU(e,t){if(e.atimeMs!==t.atimeMs||e.birthtimeMs!==t.birthtimeMs...
  method constructor (line 4) | constructor(){this.name="";this.path="";this.mode=0}
  method isBlockDevice (line 4) | isBlockDevice(){return!1}
  method isCharacterDevice (line 4) | isCharacterDevice(){return!1}
  method isDirectory (line 4) | isDirectory(){return(this.mode&61440)===16384}
  method isFIFO (line 4) | isFIFO(){return!1}
  method isFile (line 4) | isFile(){return(this.mode&61440)===32768}
  method isSocket (line 4) | isSocket(){return!1}
  method isSymbolicLink (line 4) | isSymbolicLink(){return(this.mode&61440)===40960}
  method constructor (line 4) | constructor(){this.uid=0;this.gid=0;this.size=0;this.blksize=0;this.atim...
  method isBlockDevice (line 4) | isBlockDevice(){return!1}
  method isCharacterDevice (line 4) | isCharacterDevice(){return!1}
  method isDirectory (line 4) | isDirectory(){return(this.mode&61440)===16384}
  method isFIFO (line 4) | isFIFO(){return!1}
  method isFile (line 4) | isFile(){return(this.mode&61440)===32768}
  method isSocket (line 4) | isSocket(){return!1}
  method isSymbolicLink (line 4) | isSymbolicLink(){return(this.mode&61440)===40960}
  method constructor (line 4) | constructor(){this.uid=BigInt(0);this.gid=BigInt(0);this.size=BigInt(0);...
  method isBlockDevice (line 4) | isBlockDevice(){return!1}
  method isCharacterDevice (line 4) | isCharacterDevice(){return!1}
  method isDirectory (line 4) | isDirectory(){return(this.mode&BigInt(61440))===BigInt(16384)}
  method isFIFO (line 4) | isFIFO(){return!1}
  method isFile (line 4) | isFile(){return(this.mode&BigInt(61440))===BigInt(32768)}
  method isSocket (line 4) | isSocket(){return!1}
  method isSymbolicLink (line 4) | isSymbolicLink(){return(this.mode&BigInt(61440))===BigInt(40960)}
  function Lje (line 4) | function Lje(e){let t,r;if(t=e.match(Nje))e=t[1];else if(r=e.match(Oje))...
  function Mje (line 4) | function Mje(e){e=e.replace(/\\/g,"/");let t,r;return(t=e.match(Tje))?e=...
  function XP (line 4) | function XP(e,t){return e===fe?AX(t):lU(t)}
  function $P (line 4) | async function $P(e,t){let r="0123456789abcdef";await e.mkdirPromise(t.i...
  function pX (line 4) | async function pX(e,t,r,s,a){let n=e.pathUtils.normalize(t),c=r.pathUtil...
  function cU (line 4) | async function cU(e,t,r,s,a,n,c){let f=c.didParentExist?await hX(r,s):nu...
  function hX (line 4) | async function hX(e,t){try{return await e.lstatPromise(t)}catch{return n...
  function _je (line 4) | async function _je(e,t,r,s,a,n,c,f,p){if(a!==null&&!a.isDirectory())if(p...
  function Hje (line 4) | async function Hje(e,t,r,s,a,n,c,f,p,h){let E=await n.checksumFilePromis...
  function jje (line 4) | async function jje(e,t,r,s,a,n,c,f,p){if(a!==null)if(p.overwrite)e.push(...
  function Gje (line 4) | async function Gje(e,t,r,s,a,n,c,f,p){return p.linkStrategy?.type==="Har...
  function qje (line 4) | async function qje(e,t,r,s,a,n,c,f,p){if(a!==null)if(p.overwrite)e.push(...
  function ex (line 4) | function ex(e,t,r,s){let a=()=>{let n=r.shift();if(typeof n>"u")return n...
  method constructor (line 4) | constructor(t,r,s={}){this.path=t;this.nextDirent=r;this.opts=s;this.clo...
  method throwIfClosed (line 4) | throwIfClosed(){if(this.closed)throw rU()}
  method [Symbol.asyncIterator] (line 4) | async*[Symbol.asyncIterator](){try{let t;for(;(t=await this.read())!==nu...
  method read (line 4) | read(t){let r=this.readSync();return typeof t<"u"?t(null,r):Promise.reso...
  method readSync (line 4) | readSync(){return this.throwIfClosed(),this.nextDirent()}
  method close (line 4) | close(t){return this.closeSync(),typeof t<"u"?t(null):Promise.resolve()}
  method closeSync (line 4) | closeSync(){this.throwIfClosed(),this.opts.onClose?.(),this.closed=!0}
  function dX (line 4) | function dX(e,t){if(e!==t)throw new Error(`Invalid StatWatcher status: e...
  method constructor (line 4) | constructor(r,s,{bigint:a=!1}={}){super();this.status="ready";this.chang...
  method create (line 4) | static create(r,s,a){let n=new e(r,s,a);return n.start(),n}
  method start (line 4) | start(){dX(this.status,"ready"),this.status="running",this.startTimeout=...
  method stop (line 4) | stop(){dX(this.status,"running"),this.status="stopped",this.startTimeout...
  method stat (line 4) | stat(){try{return this.fakeFs.statSync(this.path,{bigint:this.bigint})}c...
  method makeInterval (line 4) | makeInterval(r){let s=setInterval(()=>{let a=this.stat(),n=this.lastStat...
  method registerChangeListener (line 4) | registerChangeListener(r,s){this.addListener("change",r),this.changeList...
  method unregisterChangeListener (line 4) | unregisterChangeListener(r){this.removeListener("change",r);let s=this.c...
  method unregisterAllChangeListeners (line 4) | unregisterAllChangeListeners(){for(let r of this.changeListeners.keys())...
  method hasChangeListeners (line 4) | hasChangeListeners(){return this.changeListeners.size>0}
  method ref (line 4) | ref(){for(let r of this.changeListeners.values())r.ref();return this}
  method unref (line 4) | unref(){for(let r of this.changeListeners.values())r.unref();return this}
  function lE (line 4) | function lE(e,t,r,s){let a,n,c,f;switch(typeof r){case"function":a=!1,n=...
  function gd (line 4) | function gd(e,t,r){let s=rx.get(e);if(typeof s>"u")return;let a=s.get(t)...
  function dd (line 4) | function dd(e){let t=rx.get(e);if(!(typeof t>"u"))for(let r of t.keys())...
  function Wje (line 4) | function Wje(e){let t=e.match(/\r?\n/g);if(t===null)return IX.EOL;let r=...
  function md (line 7) | function md(e,t){return t.replace(/\r?\n/g,Wje(e))}
  method constructor (line 7) | constructor(t){this.pathUtils=t}
  method genTraversePromise (line 7) | async*genTraversePromise(t,{stableSort:r=!1}={}){let s=[t];for(;s.length...
  method checksumFilePromise (line 7) | async checksumFilePromise(t,{algorithm:r="sha512"}={}){let s=await this....
  method removePromise (line 7) | async removePromise(t,{recursive:r=!0,maxRetries:s=5}={}){let a;try{a=aw...
  method removeSync (line 7) | removeSync(t,{recursive:r=!0}={}){let s;try{s=this.lstatSync(t)}catch(a)...
  method mkdirpPromise (line 7) | async mkdirpPromise(t,{chmod:r,utimes:s}={}){if(t=this.resolve(t),t===th...
  method mkdirpSync (line 7) | mkdirpSync(t,{chmod:r,utimes:s}={}){if(t=this.resolve(t),t===this.pathUt...
  method copyPromise (line 7) | async copyPromise(t,r,{baseFs:s=this,overwrite:a=!0,stableSort:n=!1,stab...
  method copySync (line 7) | copySync(t,r,{baseFs:s=this,overwrite:a=!0}={}){let n=s.lstatSync(r),c=t...
  method changeFilePromise (line 7) | async changeFilePromise(t,r,s={}){return Buffer.isBuffer(r)?this.changeF...
  method changeFileBufferPromise (line 7) | async changeFileBufferPromise(t,r,{mode:s}={}){let a=Buffer.alloc(0);try...
  method changeFileTextPromise (line 7) | async changeFileTextPromise(t,r,{automaticNewlines:s,mode:a}={}){let n="...
  method changeFileSync (line 7) | changeFileSync(t,r,s={}){return Buffer.isBuffer(r)?this.changeFileBuffer...
  method changeFileBufferSync (line 7) | changeFileBufferSync(t,r,{mode:s}={}){let a=Buffer.alloc(0);try{a=this.r...
  method changeFileTextSync (line 7) | changeFileTextSync(t,r,{automaticNewlines:s=!1,mode:a}={}){let n="";try{...
  method movePromise (line 7) | async movePromise(t,r){try{await this.renamePromise(t,r)}catch(s){if(s.c...
  method moveSync (line 7) | moveSync(t,r){try{this.renameSync(t,r)}catch(s){if(s.code==="EXDEV")this...
  method lockPromise (line 7) | async lockPromise(t,r){let s=`${t}.flock`,a=1e3/60,n=Date.now(),c=null,f...
  method readJsonPromise (line 7) | async readJsonPromise(t){let r=await this.readFilePromise(t,"utf8");try{...
  method readJsonSync (line 7) | readJsonSync(t){let r=this.readFileSync(t,"utf8");try{return JSON.parse(...
  method writeJsonPromise (line 7) | async writeJsonPromise(t,r,{compact:s=!1}={}){let a=s?0:2;return await t...
  method writeJsonSync (line 8) | writeJsonSync(t,r,{compact:s=!1}={}){let a=s?0:2;return this.writeFileSy...
  method preserveTimePromise (line 9) | async preserveTimePromise(t,r){let s=await this.lstatPromise(t),a=await ...
  method preserveTimeSync (line 9) | async preserveTimeSync(t,r){let s=this.lstatSync(t),a=r();typeof a<"u"&&...
  method constructor (line 9) | constructor(){super(K)}
  method getExtractHint (line 9) | getExtractHint(t){return this.baseFs.getExtractHint(t)}
  method resolve (line 9) | resolve(t){return this.mapFromBase(this.baseFs.resolve(this.mapToBase(t)))}
  method getRealPath (line 9) | getRealPath(){return this.mapFromBase(this.baseFs.getRealPath())}
  method openPromise (line 9) | async openPromise(t,r,s){return this.baseFs.openPromise(this.mapToBase(t...
  method openSync (line 9) | openSync(t,r,s){return this.baseFs.openSync(this.mapToBase(t),r,s)}
  method opendirPromise (line 9) | async opendirPromise(t,r){return Object.assign(await this.baseFs.opendir...
  method opendirSync (line 9) | opendirSync(t,r){return Object.assign(this.baseFs.opendirSync(this.mapTo...
  method readPromise (line 9) | async readPromise(t,r,s,a,n){return await this.baseFs.readPromise(t,r,s,...
  method readSync (line 9) | readSync(t,r,s,a,n){return this.baseFs.readSync(t,r,s,a,n)}
  method writePromise (line 9) | async writePromise(t,r,s,a,n){return typeof r=="string"?await this.baseF...
  method writeSync (line 9) | writeSync(t,r,s,a,n){return typeof r=="string"?this.baseFs.writeSync(t,r...
  method closePromise (line 9) | async closePromise(t){return this.baseFs.closePromise(t)}
  method closeSync (line 9) | closeSync(t){this.baseFs.closeSync(t)}
  method createReadStream (line 9) | createReadStream(t,r){return this.baseFs.createReadStream(t!==null?this....
  method createWriteStream (line 9) | createWriteStream(t,r){return this.baseFs.createWriteStream(t!==null?thi...
  method realpathPromise (line 9) | async realpathPromise(t){return this.mapFromBase(await this.baseFs.realp...
  method realpathSync (line 9) | realpathSync(t){return this.mapFromBase(this.baseFs.realpathSync(this.ma...
  method existsPromise (line 9) | async existsPromise(t){return this.baseFs.existsPromise(this.mapToBase(t))}
  method existsSync (line 9) | existsSync(t){return this.baseFs.existsSync(this.mapToBase(t))}
  method accessSync (line 9) | accessSync(t,r){return this.baseFs.accessSync(this.mapToBase(t),r)}
  method accessPromise (line 9) | async accessPromise(t,r){return this.baseFs.accessPromise(this.mapToBase...
  method statPromise (line 9) | async statPromise(t,r){return this.baseFs.statPromise(this.mapToBase(t),r)}
  method statSync (line 9) | statSync(t,r){return this.baseFs.statSync(this.mapToBase(t),r)}
  method fstatPromise (line 9) | async fstatPromise(t,r){return this.baseFs.fstatPromise(t,r)}
  method fstatSync (line 9) | fstatSync(t,r){return this.baseFs.fstatSync(t,r)}
  method lstatPromise (line 9) | lstatPromise(t,r){return this.baseFs.lstatPromise(this.mapToBase(t),r)}
  method lstatSync (line 9) | lstatSync(t,r){return this.baseFs.lstatSync(this.mapToBase(t),r)}
  method fchmodPromise (line 9) | async fchmodPromise(t,r){return this.baseFs.fchmodPromise(t,r)}
  method fchmodSync (line 9) | fchmodSync(t,r){return this.baseFs.fchmodSync(t,r)}
  method chmodPromise (line 9) | async chmodPromise(t,r){return this.baseFs.chmodPromise(this.mapToBase(t...
  method chmodSync (line 9) | chmodSync(t,r){return this.baseFs.chmodSync(this.mapToBase(t),r)}
  method fchownPromise (line 9) | async fchownPromise(t,r,s){return this.baseFs.fchownPromise(t,r,s)}
  method fchownSync (line 9) | fchownSync(t,r,s){return this.baseFs.fchownSync(t,r,s)}
  method chownPromise (line 9) | async chownPromise(t,r,s){return this.baseFs.chownPromise(this.mapToBase...
  method chownSync (line 9) | chownSync(t,r,s){return this.baseFs.chownSync(this.mapToBase(t),r,s)}
  method renamePromise (line 9) | async renamePromise(t,r){return this.baseFs.renamePromise(this.mapToBase...
  method renameSync (line 9) | renameSync(t,r){return this.baseFs.renameSync(this.mapToBase(t),this.map...
  method copyFilePromise (line 9) | async copyFilePromise(t,r,s=0){return this.baseFs.copyFilePromise(this.m...
  method copyFileSync (line 9) | copyFileSync(t,r,s=0){return this.baseFs.copyFileSync(this.mapToBase(t),...
  method appendFilePromise (line 9) | async appendFilePromise(t,r,s){return this.baseFs.appendFilePromise(this...
  method appendFileSync (line 9) | appendFileSync(t,r,s){return this.baseFs.appendFileSync(this.fsMapToBase...
  method writeFilePromise (line 9) | async writeFilePromise(t,r,s){return this.baseFs.writeFilePromise(this.f...
  method writeFileSync (line 9) | writeFileSync(t,r,s){return this.baseFs.writeFileSync(this.fsMapToBase(t...
  method unlinkPromise (line 9) | async unlinkPromise(t){return this.baseFs.unlinkPromise(this.mapToBase(t))}
  method unlinkSync (line 9) | unlinkSync(t){return this.baseFs.unlinkSync(this.mapToBase(t))}
  method utimesPromise (line 9) | async utimesPromise(t,r,s){return this.baseFs.utimesPromise(this.mapToBa...
  method utimesSync (line 9) | utimesSync(t,r,s){return this.baseFs.utimesSync(this.mapToBase(t),r,s)}
  method lutimesPromise (line 9) | async lutimesPromise(t,r,s){return this.baseFs.lutimesPromise(this.mapTo...
  method lutimesSync (line 9) | lutimesSync(t,r,s){return this.baseFs.lutimesSync(this.mapToBase(t),r,s)}
  method mkdirPromise (line 9) | async mkdirPromise(t,r){return this.baseFs.mkdirPromise(this.mapToBase(t...
  method mkdirSync (line 9) | mkdirSync(t,r){return this.baseFs.mkdirSync(this.mapToBase(t),r)}
  method rmdirPromise (line 9) | async rmdirPromise(t,r){return this.baseFs.rmdirPromise(this.mapToBase(t...
  method rmdirSync (line 9) | rmdirSync(t,r){return this.baseFs.rmdirSync(this.mapToBase(t),r)}
  method rmPromise (line 9) | async rmPromise(t,r){return this.baseFs.rmPromise(this.mapToBase(t),r)}
  method rmSync (line 9) | rmSync(t,r){return this.baseFs.rmSync(this.mapToBase(t),r)}
  method linkPromise (line 9) | async linkPromise(t,r){return this.baseFs.linkPromise(this.mapToBase(t),...
  method linkSync (line 9) | linkSync(t,r){return this.baseFs.linkSync(this.mapToBase(t),this.mapToBa...
  method symlinkPromise (line 9) | async symlinkPromise(t,r,s){let a=this.mapToBase(r);if(this.pathUtils.is...
  method symlinkSync (line 9) | symlinkSync(t,r,s){let a=this.mapToBase(r);if(this.pathUtils.isAbsolute(...
  method readFilePromise (line 9) | async readFilePromise(t,r){return this.baseFs.readFilePromise(this.fsMap...
  method readFileSync (line 9) | readFileSync(t,r){return this.baseFs.readFileSync(this.fsMapToBase(t),r)}
  method readdirPromise (line 9) | readdirPromise(t,r){return this.baseFs.readdirPromise(this.mapToBase(t),r)}
  method readdirSync (line 9) | readdirSync(t,r){return this.baseFs.readdirSync(this.mapToBase(t),r)}
  method readlinkPromise (line 9) | async readlinkPromise(t){return this.mapFromBase(await this.baseFs.readl...
  method readlinkSync (line 9) | readlinkSync(t){return this.mapFromBase(this.baseFs.readlinkSync(this.ma...
  method truncatePromise (line 9) | async truncatePromise(t,r){return this.baseFs.truncatePromise(this.mapTo...
  method truncateSync (line 9) | truncateSync(t,r){return this.baseFs.truncateSync(this.mapToBase(t),r)}
  method ftruncatePromise (line 9) | async ftruncatePromise(t,r){return this.baseFs.ftruncatePromise(t,r)}
  method ftruncateSync (line 9) | ftruncateSync(t,r){return this.baseFs.ftruncateSync(t,r)}
  method watch (line 9) | watch(t,r,s){return this.baseFs.watch(this.mapToBase(t),r,s)}
  method watchFile (line 9) | watchFile(t,r,s){return this.baseFs.watchFile(this.mapToBase(t),r,s)}
  method unwatchFile (line 9) | unwatchFile(t,r){return this.baseFs.unwatchFile(this.mapToBase(t),r)}
  method fsMapToBase (line 9) | fsMapToBase(t){return typeof t=="number"?t:this.mapToBase(t)}
  method constructor (line 9) | constructor(t,{baseFs:r,pathUtils:s}){super(s),this.target=t,this.baseFs=r}
  method getRealPath (line 9) | getRealPath(){return this.target}
  method getBaseFs (line 9) | getBaseFs(){return this.baseFs}
  method mapFromBase (line 9) | mapFromBase(t){return t}
  method mapToBase (line 9) | mapToBase(t){return t}
  function wX (line 9) | function wX(e){let t=e;return typeof e.path=="string"&&(t.path=fe.toPort...
  method constructor (line 9) | constructor(t=BX.default){super(),this.realFs=t}
  method getExtractHint (line 9) | getExtractHint(){return!1}
  method getRealPath (line 9) | getRealPath(){return vt.root}
  method resolve (line 9) | resolve(t){return K.resolve(t)}
  method openPromise (line 9) | async openPromise(t,r,s){return await new Promise((a,n)=>{this.realFs.op...
  method openSync (line 9) | openSync(t,r,s){return this.realFs.openSync(fe.fromPortablePath(t),r,s)}
  method opendirPromise (line 9) | async opendirPromise(t,r){return await new Promise((s,a)=>{typeof r<"u"?...
  method opendirSync (line 9) | opendirSync(t,r){let a=typeof r<"u"?this.realFs.opendirSync(fe.fromPorta...
  method readPromise (line 9) | async readPromise(t,r,s=0,a=0,n=-1){return await new Promise((c,f)=>{thi...
  method readSync (line 9) | readSync(t,r,s,a,n){return this.realFs.readSync(t,r,s,a,n)}
  method writePromise (line 9) | async writePromise(t,r,s,a,n){return await new Promise((c,f)=>typeof r==...
  method writeSync (line 9) | writeSync(t,r,s,a,n){return typeof r=="string"?this.realFs.writeSync(t,r...
  method closePromise (line 9) | async closePromise(t){await new Promise((r,s)=>{this.realFs.close(t,this...
  method closeSync (line 9) | closeSync(t){this.realFs.closeSync(t)}
  method createReadStream (line 9) | createReadStream(t,r){let s=t!==null?fe.fromPortablePath(t):t;return thi...
  method createWriteStream (line 9) | createWriteStream(t,r){let s=t!==null?fe.fromPortablePath(t):t;return th...
  method realpathPromise (line 9) | async realpathPromise(t){return await new Promise((r,s)=>{this.realFs.re...
  method realpathSync (line 9) | realpathSync(t){return fe.toPortablePath(this.realFs.realpathSync(fe.fro...
  method existsPromise (line 9) | async existsPromise(t){return await new Promise(r=>{this.realFs.exists(f...
  method accessSync (line 9) | accessSync(t,r){return this.realFs.accessSync(fe.fromPortablePath(t),r)}
  method accessPromise (line 9) | async accessPromise(t,r){return await new Promise((s,a)=>{this.realFs.ac...
  method existsSync (line 9) | existsSync(t){return this.realFs.existsSync(fe.fromPortablePath(t))}
  method statPromise (line 9) | async statPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.st...
  method statSync (line 9) | statSync(t,r){return r?this.realFs.statSync(fe.fromPortablePath(t),r):th...
  method fstatPromise (line 9) | async fstatPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.f...
  method fstatSync (line 9) | fstatSync(t,r){return r?this.realFs.fstatSync(t,r):this.realFs.fstatSync...
  method lstatPromise (line 9) | async lstatPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.l...
  method lstatSync (line 9) | lstatSync(t,r){return r?this.realFs.lstatSync(fe.fromPortablePath(t),r):...
  method fchmodPromise (line 9) | async fchmodPromise(t,r){return await new Promise((s,a)=>{this.realFs.fc...
  method fchmodSync (line 9) | fchmodSync(t,r){return this.realFs.fchmodSync(t,r)}
  method chmodPromise (line 9) | async chmodPromise(t,r){return await new Promise((s,a)=>{this.realFs.chm...
  method chmodSync (line 9) | chmodSync(t,r){return this.realFs.chmodSync(fe.fromPortablePath(t),r)}
  method fchownPromise (line 9) | async fchownPromise(t,r,s){return await new Promise((a,n)=>{this.realFs....
  method fchownSync (line 9) | fchownSync(t,r,s){return this.realFs.fchownSync(t,r,s)}
  method chownPromise (line 9) | async chownPromise(t,r,s){return await new Promise((a,n)=>{this.realFs.c...
  method chownSync (line 9) | chownSync(t,r,s){return this.realFs.chownSync(fe.fromPortablePath(t),r,s)}
  method renamePromise (line 9) | async renamePromise(t,r){return await new Promise((s,a)=>{this.realFs.re...
  method renameSync (line 9) | renameSync(t,r){return this.realFs.renameSync(fe.fromPortablePath(t),fe....
  method copyFilePromise (line 9) | async copyFilePromise(t,r,s=0){return await new Promise((a,n)=>{this.rea...
  method copyFileSync (line 9) | copyFileSync(t,r,s=0){return this.realFs.copyFileSync(fe.fromPortablePat...
  method appendFilePromise (line 9) | async appendFilePromise(t,r,s){return await new Promise((a,n)=>{let c=ty...
  method appendFileSync (line 9) | appendFileSync(t,r,s){let a=typeof t=="string"?fe.fromPortablePath(t):t;...
  method writeFilePromise (line 9) | async writeFilePromise(t,r,s){return await new Promise((a,n)=>{let c=typ...
  method writeFileSync (line 9) | writeFileSync(t,r,s){let a=typeof t=="string"?fe.fromPortablePath(t):t;s...
  method unlinkPromise (line 9) | async unlinkPromise(t){return await new Promise((r,s)=>{this.realFs.unli...
  method unlinkSync (line 9) | unlinkSync(t){return this.realFs.unlinkSync(fe.fromPortablePath(t))}
  method utimesPromise (line 9) | async utimesPromise(t,r,s){return await new Promise((a,n)=>{this.realFs....
  method utimesSync (line 9) | utimesSync(t,r,s){this.realFs.utimesSync(fe.fromPortablePath(t),r,s)}
  method lutimesPromise (line 9) | async lutimesPromise(t,r,s){return await new Promise((a,n)=>{this.realFs...
  method lutimesSync (line 9) | lutimesSync(t,r,s){this.realFs.lutimesSync(fe.fromPortablePath(t),r,s)}
  method mkdirPromise (line 9) | async mkdirPromise(t,r){return await new Promise((s,a)=>{this.realFs.mkd...
  method mkdirSync (line 9) | mkdirSync(t,r){return this.realFs.mkdirSync(fe.fromPortablePath(t),r)}
  method rmdirPromise (line 9) | async rmdirPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.r...
  method rmdirSync (line 9) | rmdirSync(t,r){return this.realFs.rmdirSync(fe.fromPortablePath(t),r)}
  method rmPromise (line 9) | async rmPromise(t,r){return await new Promise((s,a)=>{r?this.realFs.rm(f...
  method rmSync (line 9) | rmSync(t,r){return this.realFs.rmSync(fe.fromPortablePath(t),r)}
  method linkPromise (line 9) | async linkPromise(t,r){return await new Promise((s,a)=>{this.realFs.link...
  method linkSync (line 9) | linkSync(t,r){return this.realFs.linkSync(fe.fromPortablePath(t),fe.from...
  method symlinkPromise (line 9) | async symlinkPromise(t,r,s){return await new Promise((a,n)=>{this.realFs...
  method symlinkSync (line 9) | symlinkSync(t,r,s){return this.realFs.symlinkSync(fe.fromPortablePath(t....
  method readFilePromise (line 9) | async readFilePromise(t,r){return await new Promise((s,a)=>{let n=typeof...
  method readFileSync (line 9) | readFileSync(t,r){let s=typeof t=="string"?fe.fromPortablePath(t):t;retu...
  method readdirPromise (line 9) | async readdirPromise(t,r){return await new Promise((s,a)=>{r?r.recursive...
  method readdirSync (line 9) | readdirSync(t,r){return r?r.recursive&&process.platform==="win32"?r.with...
  method readlinkPromise (line 9) | async readlinkPromise(t){return await new Promise((r,s)=>{this.realFs.re...
  method readlinkSync (line 9) | readlinkSync(t){return fe.toPortablePath(this.realFs.readlinkSync(fe.fro...
  method truncatePromise (line 9) | async truncatePromise(t,r){return await new Promise((s,a)=>{this.realFs....
  method truncateSync (line 9) | truncateSync(t,r){return this.realFs.truncateSync(fe.fromPortablePath(t)...
  method ftruncatePromise (line 9) | async ftruncatePromise(t,r){return await new Promise((s,a)=>{this.realFs...
  method ftruncateSync (line 9) | ftruncateSync(t,r){return this.realFs.ftruncateSync(t,r)}
  method watch (line 9) | watch(t,r,s){return this.realFs.watch(fe.fromPortablePath(t),r,s)}
  method watchFile (line 9) | watchFile(t,r,s){return this.realFs.watchFile(fe.fromPortablePath(t),r,s)}
  method unwatchFile (line 9) | unwatchFile(t,r){return this.realFs.unwatchFile(fe.fromPortablePath(t),r)}
  method makeCallback (line 9) | makeCallback(t,r){return(s,a)=>{s?r(s):t(a)}}
  method constructor (line 9) | constructor(t,{baseFs:r=new Yn}={}){super(K),this.target=this.pathUtils....
  method getRealPath (line 9) | getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),th...
  method resolve (line 9) | resolve(t){return this.pathUtils.isAbsolute(t)?K.normalize(t):this.baseF...
  method mapFromBase (line 9) | mapFromBase(t){return t}
  method mapToBase (line 9) | mapToBase(t){return this.pathUtils.isAbsolute(t)?t:this.pathUtils.join(t...
  method constructor (line 9) | constructor(t,{baseFs:r=new Yn}={}){super(K),this.target=this.pathUtils....
  method getRealPath (line 9) | getRealPath(){return this.pathUtils.resolve(this.baseFs.getRealPath(),th...
  method getTarget (line 9) | getTarget(){return this.target}
  method getBaseFs (line 9) | getBaseFs(){return this.baseFs}
  method mapToBase (line 9) | mapToBase(t){let r=this.pathUtils.normalize(t);if(this.pathUtils.isAbsol...
  method mapFromBase (line 9) | mapFromBase(t){return this.pathUtils.resolve(SX,this.pathUtils.relative(...
  method constructor (line 9) | constructor(r,s){super(s);this.instance=null;this.factory=r}
  method baseFs (line 9) | get baseFs(){return this.instance||(this.instance=this.factory()),this.i...
  method baseFs (line 9) | set baseFs(r){this.instance=r}
  method mapFromBase (line 9) | mapFromBase(r){return r}
  method mapToBase (line 9) | mapToBase(r){return r}
  method constructor (line 9) | constructor({baseFs:r=new Yn,filter:s=null,magicByte:a=42,maxOpenFiles:n...
  method getExtractHint (line 9) | getExtractHint(r){return this.baseFs.getExtractHint(r)}
  method getRealPath (line 9) | getRealPath(){return this.baseFs.getRealPath()}
  method saveAndClose (line 9) | saveAndClose(){if(dd(this),this.mountInstances)for(let[r,{childFs:s}]of ...
  method discardAndClose (line 9) | discardAndClose(){if(dd(this),this.mountInstances)for(let[r,{childFs:s}]...
  method resolve (line 9) | resolve(r){return this.baseFs.resolve(r)}
  method remapFd (line 9) | remapFd(r,s){let a=this.nextFd++|this.magic;return this.fdMap.set(a,[r,s...
  method openPromise (line 9) | async openPromise(r,s,a){return await this.makeCallPromise(r,async()=>aw...
  method openSync (line 9) | openSync(r,s,a){return this.makeCallSync(r,()=>this.baseFs.openSync(r,s,...
  method opendirPromise (line 9) | async opendirPromise(r,s){return await this.makeCallPromise(r,async()=>a...
  method opendirSync (line 9) | opendirSync(r,s){return this.makeCallSync(r,()=>this.baseFs.opendirSync(...
  method readPromise (line 9) | async readPromise(r,s,a,n,c){if((r&al)!==this.magic)return await this.ba...
  method readSync (line 9) | readSync(r,s,a,n,c){if((r&al)!==this.magic)return this.baseFs.readSync(r...
  method writePromise (line 9) | async writePromise(r,s,a,n,c){if((r&al)!==this.magic)return typeof s=="s...
  method writeSync (line 9) | writeSync(r,s,a,n,c){if((r&al)!==this.magic)return typeof s=="string"?th...
  method closePromise (line 9) | async closePromise(r){if((r&al)!==this.magic)return await this.baseFs.cl...
  method closeSync (line 9) | closeSync(r){if((r&al)!==this.magic)return this.baseFs.closeSync(r);let ...
  method createReadStream (line 9) | createReadStream(r,s){return r===null?this.baseFs.createReadStream(r,s):...
  method createWriteStream (line 9) | createWriteStream(r,s){return r===null?this.baseFs.createWriteStream(r,s...
  method realpathPromise (line 9) | async realpathPromise(r){return await this.makeCallPromise(r,async()=>aw...
  method realpathSync (line 9) | realpathSync(r){return this.makeCallSync(r,()=>this.baseFs.realpathSync(...
  method existsPromise (line 9) | async existsPromise(r){return await this.makeCallPromise(r,async()=>awai...
  method existsSync (line 9) | existsSync(r){return this.makeCallSync(r,()=>this.baseFs.existsSync(r),(...
  method accessPromise (line 9) | async accessPromise(r,s){return await this.makeCallPromise(r,async()=>aw...
  method accessSync (line 9) | accessSync(r,s){return this.makeCallSync(r,()=>this.baseFs.accessSync(r,...
  method statPromise (line 9) | async statPromise(r,s){return await this.makeCallPromise(r,async()=>awai...
  method statSync (line 9) | statSync(r,s){return this.makeCallSync(r,()=>this.baseFs.statSync(r,s),(...
  method fstatPromise (line 9) | async fstatPromise(r,s){if((r&al)!==this.magic)return this.baseFs.fstatP...
  method fstatSync (line 9) | fstatSync(r,s){if((r&al)!==this.magic)return this.baseFs.fstatSync(r,s);...
  method lstatPromise (line 9) | async lstatPromise(r,s){return await this.makeCallPromise(r,async()=>awa...
  method lstatSync (line 9) | lstatSync(r,s){return this.makeCallSync(r,()=>this.baseFs.lstatSync(r,s)...
  method fchmodPromise (line 9) | async fchmodPromise(r,s){if((r&al)!==this.magic)return this.baseFs.fchmo...
  method fchmodSync (line 9) | fchmodSync(r,s){if((r&al)!==this.magic)return this.baseFs.fchmodSync(r,s...
  method chmodPromise (line 9) | async chmodPromise(r,s){return await this.makeCallPromise(r,async()=>awa...
  method chmodSync (line 9) | chmodSync(r,s){return this.makeCallSync(r,()=>this.baseFs.chmodSync(r,s)...
  method fchownPromise (line 9) | async fchownPromise(r,s,a){if((r&al)!==this.magic)return this.baseFs.fch...
  method fchownSync (line 9) | fchownSync(r,s,a){if((r&al)!==this.magic)return this.baseFs.fchownSync(r...
  method chownPromise (line 9) | async chownPromise(r,s,a){return await this.makeCallPromise(r,async()=>a...
  method chownSync (line 9) | chownSync(r,s,a){return this.makeCallSync(r,()=>this.baseFs.chownSync(r,...
  method renamePromise (line 9) | async renamePromise(r,s){return await this.makeCallPromise(r,async()=>aw...
  method renameSync (line 9) | renameSync(r,s){return this.makeCallSync(r,()=>this.makeCallSync(s,()=>t...
  method copyFilePromise (line 9) | async copyFilePromise(r,s,a=0){let n=async(c,f,p,h)=>{if(a&Id.constants....
  method copyFileSync (line 9) | copyFileSync(r,s,a=0){let n=(c,f,p,h)=>{if(a&Id.constants.COPYFILE_FICLO...
  method appendFilePromise (line 9) | async appendFilePromise(r,s,a){return await this.makeCallPromise(r,async...
  method appendFileSync (line 9) | appendFileSync(r,s,a){return this.makeCallSync(r,()=>this.baseFs.appendF...
  method writeFilePromise (line 9) | async writeFilePromise(r,s,a){return await this.makeCallPromise(r,async(...
  method writeFileSync (line 9) | writeFileSync(r,s,a){return this.makeCallSync(r,()=>this.baseFs.writeFil...
  method unlinkPromise (line 9) | async unlinkPromise(r){return await this.makeCallPromise(r,async()=>awai...
  method unlinkSync (line 9) | unlinkSync(r){return this.makeCallSync(r,()=>this.baseFs.unlinkSync(r),(...
  method utimesPromise (line 9) | async utimesPromise(r,s,a){return await this.makeCallPromise(r,async()=>...
  method utimesSync (line 9) | utimesSync(r,s,a){return this.makeCallSync(r,()=>this.baseFs.utimesSync(...
  method lutimesPromise (line 9) | async lutimesPromise(r,s,a){return await this.makeCallPromise(r,async()=...
  method lutimesSync (line 9) | lutimesSync(r,s,a){return this.makeCallSync(r,()=>this.baseFs.lutimesSyn...
  method mkdirPromise (line 9) | async mkdirPromise(r,s){return await this.makeCallPromise(r,async()=>awa...
  method mkdirSync (line 9) | mkdirSync(r,s){return this.makeCallSync(r,()=>this.baseFs.mkdirSync(r,s)...
  method rmdirPromise (line 9) | async rmdirPromise(r,s){return await this.makeCallPromise(r,async()=>awa...
  method rmdirSync (line 9) | rmdirSync(r,s){return this.makeCallSync(r,()=>this.baseFs.rmdirSync(r,s)...
  method rmPromise (line 9) | async rmPromise(r,s){return await this.makeCallPromise(r,async()=>await ...
  method rmSync (line 9) | rmSync(r,s){return this.makeCallSync(r,()=>this.baseFs.rmSync(r,s),(a,{s...
  method linkPromise (line 9) | async linkPromise(r,s){return await this.makeCallPromise(s,async()=>awai...
  method linkSync (line 9) | linkSync(r,s){return this.makeCallSync(s,()=>this.baseFs.linkSync(r,s),(...
  method symlinkPromise (line 9) | async symlinkPromise(r,s,a){return await this.makeCallPromise(s,async()=...
  method symlinkSync (line 9) | symlinkSync(r,s,a){return this.makeCallSync(s,()=>this.baseFs.symlinkSyn...
  method readFilePromise (line 9) | async readFilePromise(r,s){return this.makeCallPromise(r,async()=>await ...
  method readFileSync (line 9) | readFileSync(r,s){return this.makeCallSync(r,()=>this.baseFs.readFileSyn...
  method readdirPromise (line 9) | async readdirPromise(r,s){return await this.makeCallPromise(r,async()=>a...
  method readdirSync (line 9) | readdirSync(r,s){return this.makeCallSync(r,()=>this.baseFs.readdirSync(...
  method readlinkPromise (line 9) | async readlinkPromise(r){return await this.makeCallPromise(r,async()=>aw...
  method readlinkSync (line 9) | readlinkSync(r){return this.makeCallSync(r,()=>this.baseFs.readlinkSync(...
  method truncatePromise (line 9) | async truncatePromise(r,s){return await this.makeCallPromise(r,async()=>...
  method truncateSync (line 9) | truncateSync(r,s){return this.makeCallSync(r,()=>this.baseFs.truncateSyn...
  method ftruncatePromise (line 9) | async ftruncatePromise(r,s){if((r&al)!==this.magic)return this.baseFs.ft...
  method ftruncateSync (line 9) | ftruncateSync(r,s){if((r&al)!==this.magic)return this.baseFs.ftruncateSy...
  method watch (line 9) | watch(r,s,a){return this.makeCallSync(r,()=>this.baseFs.watch(r,s,a),(n,...
  method watchFile (line 9) | watchFile(r,s,a){return this.makeCallSync(r,()=>this.baseFs.watchFile(r,...
  method unwatchFile (line 9) | unwatchFile(r,s){return this.makeCallSync(r,()=>this.baseFs.unwatchFile(...
  method makeCallPromise (line 9) | async makeCallPromise(r,s,a,{requireSubpath:n=!0}={}){if(typeof r!="stri...
  method makeCallSync (line 9) | makeCallSync(r,s,a,{requireSubpath:n=!0}={}){if(typeof r!="string")retur...
  method findMount (line 9) | findMount(r){if(this.filter&&!this.filter.test(r))return null;let s="";f...
  method limitOpenFiles (line 9) | limitOpenFiles(r){if(this.mountInstances===null)return;let s=Date.now(),...
  method getMountPromise (line 9) | async getMountPromise(r,s){if(this.mountInstances){let a=this.mountInsta...
  method getMountSync (line 9) | getMountSync(r,s){if(this.mountInstances){let a=this.mountInstances.get(...
  method constructor (line 9) | constructor(){super(K)}
  method getExtractHint (line 9) | getExtractHint(){throw er()}
  method getRealPath (line 9) | getRealPath(){throw er()}
  method resolve (line 9) | resolve(){throw er()}
  method openPromise (line 9) | async openPromise(){throw er()}
  method openSync (line 9) | openSync(){throw er()}
  method opendirPromise (line 9) | async opendirPromise(){throw er()}
  method opendirSync (line 9) | opendirSync(){throw er()}
  method readPromise (line 9) | async readPromise(){throw er()}
  method readSync (line 9) | readSync(){throw er()}
  method writePromise (line 9) | async writePromise(){throw er()}
  method writeSync (line 9) | writeSync(){throw er()}
  method closePromise (line 9) | async closePromise(){throw er()}
  method closeSync (line 9) | closeSync(){throw er()}
  method createWriteStream (line 9) | createWriteStream(){throw er()}
  method createReadStream (line 9) | createReadStream(){throw er()}
  method realpathPromise (line 9) | async realpathPromise(){throw er()}
  method realpathSync (line 9) | realpathSync(){throw er()}
  method readdirPromise (line 9) | async readdirPromise(){throw er()}
  method readdirSync (line 9) | readdirSync(){throw er()}
  method existsPromise (line 9) | async existsPromise(t){throw er()}
  method existsSync (line 9) | existsSync(t){throw er()}
  method accessPromise (line 9) | async accessPromise(){throw er()}
  method accessSync (line 9) | accessSync(){throw er()}
  method statPromise (line 9) | async statPromise(){throw er()}
  method statSync (line 9) | statSync(){throw er()}
  method fstatPromise (line 9) | async fstatPromise(t){throw er()}
  method fstatSync (line 9) | fstatSync(t){throw er()}
  method lstatPromise (line 9) | async lstatPromise(t){throw er()}
  method lstatSync (line 9) | lstatSync(t){throw er()}
  method fchmodPromise (line 9) | async fchmodPromise(){throw er()}
  method fchmodSync (line 9) | fchmodSync(){throw er()}
  method chmodPromise (line 9) | async chmodPromise(){throw er()}
  method chmodSync (line 9) | chmodSync(){throw er()}
  method fchownPromise (line 9) | async fchownPromise(){throw er()}
  method fchownSync (line 9) | fchownSync(){throw er()}
  method chownPromise (line 9) | async chownPromise(){throw er()}
  method chownSync (line 9) | chownSync(){throw er()}
  method mkdirPromise (line 9) | async mkdirPromise(){throw er()}
  method mkdirSync (line 9) | mkdirSync(){throw er()}
  method rmdirPromise (line 9) | async rmdirPromise(){throw er()}
  method rmdirSync (line 9) | rmdirSync(){throw er()}
  method rmPromise (line 9) | async rmPromise(){throw er()}
  method rmSync (line 9) | rmSync(){throw er()}
  method linkPromise (line 9) | async linkPromise(){throw er()}
  method linkSync (line 9) | linkSync(){throw er()}
  method symlinkPromise (line 9) | async symlinkPromise(){throw er()}
  method symlinkSync (line 9) | symlinkSync(){throw er()}
  method renamePromise (line 9) | async renamePromise(){throw er()}
  method renameSync (line 9) | renameSync(){throw er()}
  method copyFilePromise (line 9) | async copyFilePromise(){throw er()}
  method copyFileSync (line 9) | copyFileSync(){throw er()}
  method appendFilePromise (line 9) | async appendFilePromise(){throw er()}
  method appendFileSync (line 9) | appendFileSync(){throw er()}
  method writeFilePromise (line 9) | async writeFilePromise(){throw er()}
  method writeFileSync (line 9) | writeFileSync(){throw er()}
  method unlinkPromise (line 9) | async unlinkPromise(){throw er()}
  method unlinkSync (line 9) | unlinkSync(){throw er()}
  method utimesPromise (line 9) | async utimesPromise(){throw er()}
  method utimesSync (line 9) | utimesSync(){throw er()}
  method lutimesPromise (line 9) | async lutimesPromise(){throw er()}
  method lutimesSync (line 9) | lutimesSync(){throw er()}
  method readFilePromise (line 9) | async readFilePromise(){throw er()}
  method readFileSync (line 9) | readFileSync(){throw er()}
  method readlinkPromise (line 9) | async readlinkPromise(){throw er()}
  method readlinkSync (line 9) | readlinkSync(){throw er()}
  method truncatePromise (line 9) | async truncatePromise(){throw er()}
  method truncateSync (line 9) | truncateSync(){throw er()}
  method ftruncatePromise (line 9) | async ftruncatePromise(t,r){throw er()}
  method ftruncateSync (line 9) | ftruncateSync(t,r){throw er()}
  method watch (line 9) | watch(){throw er()}
  method watchFile (line 9) | watchFile(){throw er()}
  method unwatchFile (line 9) | unwatchFile(){throw er()}
  method constructor (line 9) | constructor(t){super(fe),this.baseFs=t}
  method mapFromBase (line 9) | mapFromBase(t){return fe.fromPortablePath(t)}
  method mapToBase (line 9) | mapToBase(t){return fe.toPortablePath(t)}
  method makeVirtualPath (line 9) | static makeVirtualPath(t,r,s){if(K.basename(t)!=="__virtual__")throw new...
  method resolveVirtual (line 9) | static resolveVirtual(t){let r=t.match(AU);if(!r||!r[3]&&r[5])return t;l...
  method constructor (line 9) | constructor({baseFs:t=new Yn}={}){super(K),this.baseFs=t}
  method getExtractHint (line 9) | getExtractHint(t){return this.baseFs.getExtractHint(t)}
  method getRealPath (line 9) | getRealPath(){return this.baseFs.getRealPath()}
  method realpathSync (line 9) | realpathSync(t){let r=t.match(AU);if(!r)return this.baseFs.realpathSync(...
  method realpathPromise (line 9) | async realpathPromise(t){let r=t.match(AU);if(!r)return await this.baseF...
  method mapToBase (line 9) | mapToBase(t){if(t==="")return t;if(this.pathUtils.isAbsolute(t))return e...
  method mapFromBase (line 9) | mapFromBase(t){return t}
  function Kje (line 9) | function Kje(e,t){return typeof pU.default.isUtf8<"u"?pU.default.isUtf8(...
  method constructor (line 9) | constructor(t){super(fe),this.baseFs=t}
  method mapFromBase (line 9) | mapFromBase(t){return t}
  method mapToBase (line 9) | mapToBase(t){if(typeof t=="string")return t;if(t instanceof URL)return(0...
  method constructor (line 9) | constructor(t,r){this[MX]=1;this[LX]=void 0;this[OX]=void 0;this[NX]=voi...
  method fd (line 9) | get fd(){return this[Ip]}
  method appendFile (line 9) | async appendFile(t,r){try{this[Qu](this.appendFile);let s=(typeof r=="st...
  method chown (line 9) | async chown(t,r){try{return this[Qu](this.chown),await this[qo].fchownPr...
  method chmod (line 9) | async chmod(t){try{return this[Qu](this.chmod),await this[qo].fchmodProm...
  method createReadStream (line 9) | createReadStream(t){return this[qo].createReadStream(null,{...t,fd:this....
  method createWriteStream (line 9) | createWriteStream(t){return this[qo].createWriteStream(null,{...t,fd:thi...
  method datasync (line 9) | datasync(){throw new Error("Method not implemented.")}
  method sync (line 9) | sync(){throw new Error("Method not implemented.")}
  method read (line 9) | async read(t,r,s,a){try{this[Qu](this.read);let n,c;return ArrayBuffer.i...
  method readFile (line 9) | async readFile(t){try{this[Qu](this.readFile);let r=(typeof t=="string"?...
  method readLines (line 9) | readLines(t){return(0,UX.createInterface)({input:this.createReadStream(t...
  method stat (line 9) | async stat(t){try{return this[Qu](this.stat),await this[qo].fstatPromise...
  method truncate (line 9) | async truncate(t){try{return this[Qu](this.truncate),await this[qo].ftru...
  method utimes (line 9) | utimes(t,r){throw new Error("Method not implemented.")}
  method writeFile (line 9) | async writeFile(t,r){try{this[Qu](this.writeFile);let s=(typeof r=="stri...
  method write (line 9) | async write(...t){try{if(this[Qu](this.write),ArrayBuffer.isView(t[0])){...
  method writev (line 9) | async writev(t,r){try{this[Qu](this.writev);let s=0;if(typeof r<"u")for(...
  method readv (line 9) | readv(t,r){throw new Error("Method not implemented.")}
  method close (line 9) | close(){if(this[Ip]===-1)return Promise.resolve();if(this[e0])return thi...
  method [(qo,Ip,MX=uE,LX=e0,OX=sx,NX=ox,Qu)] (line 9) | [(qo,Ip,MX=uE,LX=e0,OX=sx,NX=ox,Qu)](t){if(this[Ip]===-1){let r=new Erro...
  method [Ru] (line 9) | [Ru](){if(this[uE]--,this[uE]===0){let t=this[Ip];this[Ip]=-1,this[qo].c...
  function QB (line 9) | function QB(e,t){t=new ix(t);let r=(s,a,n)=>{let c=s[a];s[a]=n,typeof c?...
  function ax (line 9) | function ax(e,t){let r=Object.create(e);return QB(r,t),r}
  function GX (line 9) | function GX(e){let t=Math.ceil(Math.random()*4294967296).toString(16).pa...
  function qX (line 9) | function qX(){if(hU)return hU;let e=fe.toPortablePath(WX.default.tmpdir(...
  method detachTemp (line 9) | detachTemp(e){Tu.delete(e)}
  method mktempSync (line 9) | mktempSync(e){let{tmpdir:t,realTmpdir:r}=qX();for(;;){let s=GX("xfs-");t...
  method mktempPromise (line 9) | async mktempPromise(e){let{tmpdir:t,realTmpdir:r}=qX();for(;;){let s=GX(...
  method rmtempPromise (line 9) | async rmtempPromise(){await Promise.all(Array.from(Tu.values()).map(asyn...
  method rmtempSync (line 9) | rmtempSync(){for(let e of Tu)try{le.removeSync(e),Tu.delete(e)}catch{}}
  function zje (line 9) | function zje(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT...
  function KX (line 9) | function KX(e,t,r){return!e.isSymbolicLink()&&!e.isFile()?!1:zje(t,r)}
  function JX (line 9) | function JX(e,t,r){YX.stat(e,function(s,a){r(s,s?!1:KX(a,e,t))})}
  function Zje (line 9) | function Zje(e,t){return KX(YX.statSync(e),e,t)}
  function $X (line 9) | function $X(e,t,r){XX.stat(e,function(s,a){r(s,s?!1:e$(a,t))})}
  function Xje (line 9) | function Xje(e,t){return e$(XX.statSync(e),t)}
  function e$ (line 9) | function e$(e,t){return e.isFile()&&$je(e,t)}
  function $je (line 9) | function $je(e,t){var r=e.mode,s=e.uid,a=e.gid,n=t.uid!==void 0?t.uid:pr...
  function gU (line 9) | function gU(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Pro...
  function e6e (line 9) | function e6e(e,t){try{return lx.sync(e,t||{})}catch(r){if(t&&t.ignoreErr...
  function g$ (line 9) | function g$(e,t){let r=e.options.env||process.env,s=process.cwd(),a=e.op...
  function s6e (line 9) | function s6e(e){return g$(e)||g$(e,!0)}
  function o6e (line 9) | function o6e(e){return e=e.replace(mU,"^$1"),e}
  function a6e (line 9) | function a6e(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"...
  function u6e (line 9) | function u6e(e){let r=Buffer.alloc(150),s;try{s=EU.openSync(e,"r"),EU.re...
  function d6e (line 9) | function d6e(e){e.file=S$(e);let t=e.file&&A6e(e.file);return t?(e.args....
  function m6e (line 9) | function m6e(e){if(!p6e)return e;let t=d6e(e),r=!h6e.test(t);if(e.option...
  function y6e (line 9) | function y6e(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[]...
  function CU (line 9) | function CU(e,t){return Object.assign(new Error(`${t} ${e.command} ENOEN...
  function E6e (line 9) | function E6e(e,t){if(!IU)return;let r=e.emit;e.emit=function(s,a){if(s==...
  function x$ (line 9) | function x$(e,t){return IU&&e===1&&!t.file?CU(t.original,"spawn"):null}
  function I6e (line 9) | function I6e(e,t){return IU&&e===1&&!t.file?CU(t.original,"spawnSync"):n...
  function T$ (line 9) | function T$(e,t,r){let s=wU(e,t,r),a=R$.spawn(s.command,s.args,s.options...
  function C6e (line 9) | function C6e(e,t,r){let s=wU(e,t,r),a=R$.spawnSync(s.command,s.args,s.op...
  function w6e (line 9) | function w6e(e,t){function r(){this.constructor=e}r.prototype=t.prototyp...
  function Cd (line 9) | function Cd(e,t,r,s){this.message=e,this.expected=t,this.found=r,this.lo...
  function s (line 9) | function s(h){return h.charCodeAt(0).toString(16).toUpperCase()}
  function a (line 9) | function a(h){return h.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace...
  function n (line 9) | function n(h){return h.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replac...
  function c (line 9) | function c(h){return r[h.type](h)}
  function f (line 9) | function f(h){var E=new Array(h.length),C,S;for(C=0;C<h.length;C++)E[C]=...
  function p (line 9) | function p(h){return h?'"'+a(h)+'"':"end of input"}
  function B6e (line 9) | function B6e(e,t){t=t!==void 0?t:{};var r={},s={Start:Za},a=Za,n=functio...
  function ux (line 12) | function ux(e,t={isGlobPattern:()=>!1}){try{return(0,O$.parse)(e,t)}catc...
  function hE (line 12) | function hE(e,{endSemicolon:t=!1}={}){return e.map(({command:r,type:s},a...
  function fx (line 12) | function fx(e){return`${gE(e.chain)}${e.then?` ${SU(e.then)}`:""}`}
  function SU (line 12) | function SU(e){return`${e.type} ${fx(e.line)}`}
  function gE (line 12) | function gE(e){return`${bU(e)}${e.then?` ${DU(e.then)}`:""}`}
  function DU (line 12) | function DU(e){return`${e.type} ${gE(e.chain)}`}
  function bU (line 12) | function bU(e){switch(e.type){case"command":return`${e.envs.length>0?`${...
  function cx (line 12) | function cx(e){return`${e.name}=${e.args[0]?wd(e.args[0]):""}`}
  function PU (line 12) | function PU(e){switch(e.type){case"redirection":return TB(e);case"argume...
  function TB (line 12) | function TB(e){return`${e.subtype} ${e.args.map(t=>wd(t)).join(" ")}`}
  function wd (line 12) | function wd(e){return e.segments.map(t=>xU(t)).join("")}
  function xU (line 12) | function xU(e){let t=(s,a)=>a?`"${s}"`:s,r=s=>s===""?"''":s.match(/[()}<...
  function Ax (line 12) | function Ax(e){let t=a=>{switch(a){case"addition":return"+";case"subtrac...
  function D6e (line 13) | function D6e(e,t){function r(){this.constructor=e}r.prototype=t.prototyp...
  function Bd (line 13) | function Bd(e,t,r,s){this.message=e,this.expected=t,this.found=r,this.lo...
  function s (line 13) | function s(h){return h.charCodeAt(0).toString(16).toUpperCase()}
  function a (line 13) | function a(h){return h.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace...
  function n (line 13) | function n(h){return h.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replac...
  function c (line 13) | function c(h){return r[h.type](h)}
  function f (line 13) | function f(h){var E=new Array(h.length),C,S;for(C=0;C<h.length;C++)E[C]=...
  function p (line 13) | function p(h){return h?'"'+a(h)+'"':"end of input"}
  function b6e (line 13) | function b6e(e,t){t=t!==void 0?t:{};var r={},s={resolution:ke},a=ke,n="/...
  function px (line 13) | function px(e){let t=e.match(/^\*{1,2}\/(.*)/);if(t)throw new Error(`The...
  function hx (line 13) | function hx(e){let t="";return e.from&&(t+=e.from.fullName,e.from.descri...
  function q$ (line 13) | function q$(e){return typeof e>"u"||e===null}
  function P6e (line 13) | function P6e(e){return typeof e=="object"&&e!==null}
  function x6e (line 13) | function x6e(e){return Array.isArray(e)?e:q$(e)?[]:[e]}
  function k6e (line 13) | function k6e(e,t){var r,s,a,n;if(t)for(n=Object.keys(t),r=0,s=n.length;r...
  function Q6e (line 13) | function Q6e(e,t){var r="",s;for(s=0;s<t;s+=1)r+=e;return r}
  function R6e (line 13) | function R6e(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}
  function FB (line 13) | function FB(e,t){Error.call(this),this.name="YAMLException",this.reason=...
  function kU (line 13) | function kU(e,t,r,s,a){this.name=e,this.buffer=t,this.position=r,this.li...
  function N6e (line 17) | function N6e(e){var t={};return e!==null&&Object.keys(e).forEach(functio...
  function O6e (line 17) | function O6e(e,t){if(t=t||{},Object.keys(t).forEach(function(r){if(T6e.i...
  function QU (line 17) | function QU(e,t,r){var s=[];return e.include.forEach(function(a){r=QU(a,...
  function M6e (line 17) | function M6e(){var e={scalar:{},sequence:{},mapping:{},fallback:{}},t,r;...
  function mE (line 17) | function mE(e){this.include=e.include||[],this.implicit=e.implicit||[],t...
  function q6e (line 17) | function q6e(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~...
  function W6e (line 17) | function W6e(){return null}
  function V6e (line 17) | function V6e(e){return e===null}
  function K6e (line 17) | function K6e(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="...
  function J6e (line 17) | function J6e(e){return e==="true"||e==="True"||e==="TRUE"}
  function z6e (line 17) | function z6e(e){return Object.prototype.toString.call(e)==="[object Bool...
  function $6e (line 17) | function $6e(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}
  function eGe (line 17) | function eGe(e){return 48<=e&&e<=55}
  function tGe (line 17) | function tGe(e){return 48<=e&&e<=57}
  function rGe (line 17) | function rGe(e){if(e===null)return!1;var t=e.length,r=0,s=!1,a;if(!t)ret...
  function nGe (line 17) | function nGe(e){var t=e,r=1,s,a,n=[];return t.indexOf("_")!==-1&&(t=t.re...
  function iGe (line 17) | function iGe(e){return Object.prototype.toString.call(e)==="[object Numb...
  function aGe (line 17) | function aGe(e){return!(e===null||!oGe.test(e)||e[e.length-1]==="_")}
  function lGe (line 17) | function lGe(e){var t,r,s,a;return t=e.replace(/_/g,"").toLowerCase(),r=...
  function uGe (line 17) | function uGe(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".na...
  function fGe (line 17) | function fGe(e){return Object.prototype.toString.call(e)==="[object Numb...
  function gGe (line 17) | function gGe(e){return e===null?!1:mee.exec(e)!==null||yee.exec(e)!==null}
  function dGe (line 17) | function dGe(e){var t,r,s,a,n,c,f,p=0,h=null,E,C,S;if(t=mee.exec(e),t===...
  function mGe (line 17) | function mGe(e){return e.toISOString()}
  function EGe (line 17) | function EGe(e){return e==="<<"||e===null}
  function CGe (line 18) | function CGe(e){if(e===null)return!1;var t,r,s=0,a=e.length,n=FU;for(r=0...
  function wGe (line 18) | function wGe(e){var t,r,s=e.replace(/[\r\n=]/g,""),a=s.length,n=FU,c=0,f...
  function BGe (line 18) | function BGe(e){var t="",r=0,s,a,n=e.length,c=FU;for(s=0;s<n;s++)s%3===0...
  function vGe (line 18) | function vGe(e){return bd&&bd.isBuffer(e)}
  function PGe (line 18) | function PGe(e){if(e===null)return!0;var t=[],r,s,a,n,c,f=e;for(r=0,s=f....
  function xGe (line 18) | function xGe(e){return e!==null?e:[]}
  function RGe (line 18) | function RGe(e){if(e===null)return!0;var t,r,s,a,n,c=e;for(n=new Array(c...
  function TGe (line 18) | function TGe(e){if(e===null)return[];var t,r,s,a,n,c=e;for(n=new Array(c...
  function OGe (line 18) | function OGe(e){if(e===null)return!0;var t,r=e;for(t in r)if(NGe.call(r,...
  function LGe (line 18) | function LGe(e){return e!==null?e:{}}
  function _Ge (line 18) | function _Ge(){return!0}
  function HGe (line 18) | function HGe(){}
  function jGe (line 18) | function jGe(){return""}
  function GGe (line 18) | function GGe(e){return typeof e>"u"}
  function WGe (line 18) | function WGe(e){if(e===null||e.length===0)return!1;var t=e,r=/\/([gim]*)...
  function VGe (line 18) | function VGe(e){var t=e,r=/\/([gim]*)$/.exec(e),s="";return t[0]==="/"&&...
  function YGe (line 18) | function YGe(e){var t="/"+e.source+"/";return e.global&&(t+="g"),e.multi...
  function KGe (line 18) | function KGe(e){return Object.prototype.toString.call(e)==="[object RegE...
  function zGe (line 18) | function zGe(e){if(e===null)return!1;try{var t="("+e+")",r=mx.parse(t,{r...
  function ZGe (line 18) | function ZGe(e){var t="("+e+")",r=mx.parse(t,{range:!0}),s=[],a;if(r.typ...
  function XGe (line 18) | function XGe(e){return e.toString()}
  function $Ge (line 18) | function $Ge(e){return Object.prototype.toString.call(e)==="[object Func...
  function Gee (line 18) | function Gee(e){return Object.prototype.toString.call(e)}
  function qf (line 18) | function qf(e){return e===10||e===13}
  function xd (line 18) | function xd(e){return e===9||e===32}
  function ll (line 18) | function ll(e){return e===9||e===32||e===10||e===13}
  function EE (line 18) | function EE(e){return e===44||e===91||e===93||e===123||e===125}
  function o5e (line 18) | function o5e(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-9...
  function a5e (line 18) | function a5e(e){return e===120?2:e===117?4:e===85?8:0}
  function l5e (line 18) | function l5e(e){return 48<=e&&e<=57?e-48:-1}
  function qee (line 18) | function qee(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e=...
  function c5e (line 19) | function c5e(e){return e<=65535?String.fromCharCode(e):String.fromCharCo...
  function u5e (line 19) | function u5e(e,t){this.input=e,this.filename=t.filename||null,this.schem...
  function rte (line 19) | function rte(e,t){return new Kee(t,new e5e(e.filename,e.input,e.position...
  function Tr (line 19) | function Tr(e,t){throw rte(e,t)}
  function Ix (line 19) | function Ix(e,t){e.onWarning&&e.onWarning.call(null,rte(e,t))}
  function t0 (line 19) | function t0(e,t,r,s){var a,n,c,f;if(t<r){if(f=e.input.slice(t,r),s)for(a...
  function Vee (line 19) | function Vee(e,t,r,s){var a,n,c,f;for(Cp.isObject(r)||Tr(e,"cannot merge...
  function IE (line 19) | function IE(e,t,r,s,a,n,c,f){var p,h;if(Array.isArray(a))for(a=Array.pro...
  function OU (line 19) | function OU(e){var t;t=e.input.charCodeAt(e.position),t===10?e.position+...
  function ls (line 19) | function ls(e,t,r){for(var s=0,a=e.input.charCodeAt(e.position);a!==0;){...
  function Cx (line 19) | function Cx(e){var t=e.position,r;return r=e.input.charCodeAt(t),!!((r==...
  function LU (line 19) | function LU(e,t){t===1?e.result+=" ":t>1&&(e.result+=Cp.repeat(`
  function f5e (line 20) | function f5e(e,t,r){var s,a,n,c,f,p,h,E,C=e.kind,S=e.result,x;if(x=e.inp...
  function A5e (line 20) | function A5e(e,t){var r,s,a;if(r=e.input.charCodeAt(e.position),r!==39)r...
  function p5e (line 20) | function p5e(e,t){var r,s,a,n,c,f;if(f=e.input.charCodeAt(e.position),f!...
  function h5e (line 20) | function h5e(e,t){var r=!0,s,a=e.tag,n,c=e.anchor,f,p,h,E,C,S={},x,I,T,O...
  function g5e (line 20) | function g5e(e,t){var r,s,a=NU,n=!1,c=!1,f=t,p=0,h=!1,E,C;if(C=e.input.c...
  function Yee (line 26) | function Yee(e,t){var r,s=e.tag,a=e.anchor,n=[],c,f=!1,p;for(e.anchor!==...
  function d5e (line 26) | function d5e(e,t,r){var s,a,n,c,f=e.tag,p=e.anchor,h={},E={},C=null,S=nu...
  function m5e (line 26) | function m5e(e){var t,r=!1,s=!1,a,n,c;if(c=e.input.charCodeAt(e.position...
  function y5e (line 26) | function y5e(e){var t,r;if(r=e.input.charCodeAt(e.position),r!==38)retur...
  function E5e (line 26) | function E5e(e){var t,r,s;if(s=e.input.charCodeAt(e.position),s!==42)ret...
  function CE (line 26) | function CE(e,t,r,s,a){var n,c,f,p=1,h=!1,E=!1,C,S,x,I,T;if(e.listener!=...
  function I5e (line 26) | function I5e(e){var t=e.position,r,s,a,n=!1,c;for(e.version=null,e.check...
  function nte (line 26) | function nte(e,t){e=String(e),t=t||{},e.length!==0&&(e.charCodeAt(e.leng...
  function ite (line 27) | function ite(e,t,r){t!==null&&typeof t=="object"&&typeof r>"u"&&(r=t,t=n...
  function ste (line 27) | function ste(e,t){var r=nte(e,t);if(r.length!==0){if(r.length===1)return...
  function C5e (line 27) | function C5e(e,t,r){return typeof t=="object"&&t!==null&&typeof r>"u"&&(...
  function w5e (line 27) | function w5e(e,t){return ste(e,Cp.extend({schema:Jee},t))}
  function j5e (line 27) | function j5e(e,t){var r,s,a,n,c,f,p;if(t===null)return{};for(r={},s=Obje...
  function ate (line 27) | function ate(e){var t,r,s;if(t=e.toString(16).toUpperCase(),e<=255)r="x"...
  function G5e (line 27) | function G5e(e){this.schema=e.schema||B5e,this.indent=Math.max(1,e.inden...
  function lte (line 27) | function lte(e,t){for(var r=MB.repeat(" ",t),s=0,a=-1,n="",c,f=e.length;...
  function MU (line 29) | function MU(e,t){return`
  function q5e (line 30) | function q5e(e,t){var r,s,a;for(r=0,s=e.implicitTypes.length;r<s;r+=1)if...
  function _U (line 30) | function _U(e){return e===b5e||e===S5e}
  function wE (line 30) | function wE(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==823...
  function W5e (line 30) | function W5e(e){return wE(e)&&!_U(e)&&e!==65279&&e!==D5e&&e!==LB}
  function cte (line 30) | function cte(e,t){return wE(e)&&e!==65279&&e!==mte&&e!==Ete&&e!==Ite&&e!...
  function V5e (line 30) | function V5e(e){return wE(e)&&e!==65279&&!_U(e)&&e!==F5e&&e!==L5e&&e!==y...
  function Bte (line 30) | function Bte(e){var t=/^\n* /;return t.test(e)}
  function Y5e (line 30) | function Y5e(e,t,r,s,a){var n,c,f,p=!1,h=!1,E=s!==-1,C=-1,S=V5e(e.charCo...
  function K5e (line 30) | function K5e(e,t,r,s){e.dump=function(){if(t.length===0)return"''";if(!e...
  function ute (line 30) | function ute(e,t){var r=Bte(e)?String(t):"",s=e[e.length-1]===`
  function fte (line 34) | function fte(e){return e[e.length-1]===`
  function J5e (line 35) | function J5e(e,t){for(var r=/(\n+)([^\n]*)/g,s=function(){var h=e.indexOf(`
  function Ate (line 38) | function Ate(e,t){if(e===""||e[0]===" ")return e;for(var r=/ [^ ]/g,s,a=...
  function z5e (line 41) | function z5e(e){for(var t="",r,s,a,n=0;n<e.length;n++){if(r=e.charCodeAt...
  function Z5e (line 41) | function Z5e(e,t,r){var s="",a=e.tag,n,c;for(n=0,c=r.length;n<c;n+=1)kd(...
  function X5e (line 41) | function X5e(e,t,r,s){var a="",n=e.tag,c,f;for(c=0,f=r.length;c<f;c+=1)k...
  function $5e (line 41) | function $5e(e,t,r){var s="",a=e.tag,n=Object.keys(r),c,f,p,h,E;for(c=0,...
  function eqe (line 41) | function eqe(e,t,r,s){var a="",n=e.tag,c=Object.keys(r),f,p,h,E,C,S;if(e...
  function pte (line 41) | function pte(e,t,r){var s,a,n,c,f,p;for(a=r?e.explicitTypes:e.implicitTy...
  function kd (line 41) | function kd(e,t,r,s,a,n){e.tag=null,e.dump=r,pte(e,r,!1)||pte(e,r,!0);va...
  function tqe (line 41) | function tqe(e,t){var r=[],s=[],a,n;for(UU(e,r,s),a=0,n=s.length;a<n;a+=...
  function UU (line 41) | function UU(e,t,r){var s,a,n;if(e!==null&&typeof e=="object")if(a=t.inde...
  function Pte (line 41) | function Pte(e,t){t=t||{};var r=new G5e(t);return r.noRefs||tqe(e,r),kd(...
  function rqe (line 42) | function rqe(e,t){return Pte(e,MB.extend({schema:v5e},t))}
  function vx (line 42) | function vx(e){return function(){throw new Error("Function "+e+" is depr...
  function iqe (line 42) | function iqe(e,t){function r(){this.constructor=e}r.prototype=t.prototyp...
  function Qd (line 42) | function Qd(e,t,r,s){this.message=e,this.expected=t,this.found=r,this.lo...
  function s (line 42) | function s(h){return h.charCodeAt(0).toString(16).toUpperCase()}
  function a (line 42) | function a(h){return h.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace...
  function n (line 42) | function n(h){return h.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replac...
  function c (line 42) | function c(h){return r[h.type](h)}
  function f (line 42) | function f(h){var E=new Array(h.length),C,S;for(C=0;C<h.length;C++)E[C]=...
  function p (line 42) | function p(h){return h?'"'+a(h)+'"':"end of input"}
  function sqe (line 42) | function sqe(e,t){t=t!==void 0?t:{};var r={},s={Start:cc},a=cc,n=functio...
  function Lte (line 51) | function Lte(e){return e.match(oqe)?e:JSON.stringify(e)}
  function Ute (line 51) | function Ute(e){return typeof e>"u"?!0:typeof e=="object"&&e!==null&&!Ar...
  function jU (line 51) | function jU(e,t,r){if(e===null)return`null
  function cl (line 61) | function cl(e){try{let t=jU(e,0,!1);return t!==`
  function aqe (line 62) | function aqe(e){return e.endsWith(`
  function cqe (line 64) | function cqe(e){if(lqe.test(e))return aqe(e);let t=(0,Dx.safeLoad)(e,{sc...
  function cs (line 64) | function cs(e){return cqe(e)}
  method constructor (line 64) | constructor(t){this.data=t}
  function qte (line 64) | function qte(e){return typeof e=="string"?!!xs[e]:"env"in e?xs[e.env]&&x...
  method constructor (line 64) | constructor(t){super(t),this.clipanion={type:"usage"},this.name="UsageEr...
  method constructor (line 64) | constructor(t,r){if(super(),this.input=t,this.candidates=r,this.clipanio...
  method constructor (line 75) | constructor(t,r){super(),this.input=t,this.usages=r,this.clipanion={type...
  function Aqe (line 80) | function Aqe(e){let t=e.split(`
  function Vo (line 82) | function Vo(e,{format:t,paragraphs:r}){return e=e.replace(/\r\n?/g,`
  function wa (line 90) | function wa(e){return{...e,[HB]:!0}}
  function Wf (line 90) | function Wf(e,t){return typeof e>"u"?[e,t]:typeof e=="object"&&e!==null&...
  function Qx (line 90) | function Qx(e,{mergeName:t=!1}={}){let r=e.match(/^([^:]+): (.*)$/m);if(...
  function jB (line 90) | function jB(e,t){return t.length===1?new st(`${e}${Qx(t[0],{mergeName:!0...
  function Fd (line 92) | function Fd(e,t,r){if(typeof r>"u")return t;let s=[],a=[],n=f=>{let p=t;...
  function ii (line 92) | function ii(e){return e===null?"null":e===void 0?"undefined":e===""?"an ...
  function vE (line 92) | function vE(e,t){if(e.length===0)return"nothing";if(e.length===1)return ...
  function n0 (line 92) | function n0(e,t){var r,s,a;return typeof t=="number"?`${(r=e?.p)!==null&...
  function zU (line 92) | function zU(e,t,r){return e===1?t:r}
  function mr (line 92) | function mr({errors:e,p:t}={},r){return e?.push(`${t??"."}: ${r}`),!1}
  function yqe (line 92) | function yqe(e,t){return r=>{e[t]=r}}
  function Yf (line 92) | function Yf(e,t){return r=>{let s=e[t];return e[t]=r,Yf(e,t).bind(null,s)}}
  function GB (line 92) | function GB(e,t,r){let s=()=>(e(r()),a),a=()=>(e(t),s);return s}
  function ZU (line 92) | function ZU(){return Wr({test:(e,t)=>!0})}
  function zte (line 92) | function zte(e){return Wr({test:(t,r)=>t!==e?mr(r,`Expected ${ii(e)} (go...
  function SE (line 92) | function SE(){return Wr({test:(e,t)=>typeof e!="string"?mr(t,`Expected a...
  function ks (line 92) | function ks(e){let t=Array.isArray(e)?e:Object.values(e),r=t.every(a=>ty...
  function Iqe (line 92) | function Iqe(){return Wr({test:(e,t)=>{var r;if(typeof e!="boolean"){if(...
  function XU (line 92) | function XU(){return Wr({test:(e,t)=>{var r;if(typeof e!="number"){if(ty...
  function Cqe (line 92) | function Cqe(e){return Wr({test:(t,r)=>{var s;if(typeof r?.coercions>"u"...
  function wqe (line 92) | function wqe(){return Wr({test:(e,t)=>{var r;if(!(e instanceof Date)){if...
  function Rx (line 92) | function Rx(e,{delimiter:t}={}){return Wr({test:(r,s)=>{var a;let n=r;if...
  function Bqe (line 92) | function Bqe(e,{delimiter:t}={}){let r=Rx(e,{delimiter:t});return Wr({te...
  function vqe (line 92) | function vqe(e,t){let r=Rx(Tx([e,t])),s=Fx(t,{keys:e});return Wr({test:(...
  function Tx (line 92) | function Tx(e,{delimiter:t}={}){let r=$te(e.length);return Wr({test:(s,a...
  function Fx (line 92) | function Fx(e,{keys:t=null}={}){let r=Rx(Tx([t??SE(),e]));return Wr({tes...
  function Sqe (line 92) | function Sqe(e,t={}){return Fx(e,t)}
  function Zte (line 92) | function Zte(e,{extra:t=null}={}){let r=Object.keys(e),s=Wr({test:(a,n)=...
  function Dqe (line 92) | function Dqe(e){return Zte(e,{extra:Fx(ZU())})}
  function Xte (line 92) | function Xte(e){return()=>e}
  function Wr (line 92) | function Wr({test:e}){return Xte(e)()}
  function Pqe (line 92) | function Pqe(e,t){if(!t(e))throw new i0}
  function xqe (line 92) | function xqe(e,t){let r=[];if(!t(e,{errors:r}))throw new i0({errors:r})}
  function kqe (line 92) | function kqe(e,t){}
  function Qqe (line 92) | function Qqe(e,t,{coerce:r=!1,errors:s,throw:a}={}){let n=s?[]:void 0;if...
  function Rqe (line 92) | function Rqe(e,t){let r=Tx(e);return(...s)=>{if(!r(s))throw new i0;retur...
  function Tqe (line 92) | function Tqe(e){return Wr({test:(t,r)=>t.length>=e?!0:mr(r,`Expected to ...
  function Fqe (line 92) | function Fqe(e){return Wr({test:(t,r)=>t.length<=e?!0:mr(r,`Expected to ...
  function $te (line 92) | function $te(e){return Wr({test:(t,r)=>t.length!==e?mr(r,`Expected to ha...
  function Nqe (line 92) | function Nqe({map:e}={}){return Wr({test:(t,r)=>{let s=new Set,a=new Set...
  function Oqe (line 92) | function Oqe(){return Wr({test:(e,t)=>e<=0?!0:mr(t,`Expected to be negat...
  function Lqe (line 92) | function Lqe(){return Wr({test:(e,t)=>e>=0?!0:mr(t,`Expected to be posit...
  function e_ (line 92) | function e_(e){return Wr({test:(t,r)=>t>=e?!0:mr(r,`Expected to be at le...
  function Mqe (line 92) | function Mqe(e){return Wr({test:(t,r)=>t<=e?!0:mr(r,`Expected to be at m...
  function Uqe (line 92) | function Uqe(e,t){return Wr({test:(r,s)=>r>=e&&r<=t?!0:mr(s,`Expected to...
  function _qe (line 92) | function _qe(e,t){return Wr({test:(r,s)=>r>=e&&r<t?!0:mr(s,`Expected to ...
  function t_ (line 92) | function t_({unsafe:e=!1}={}){return Wr({test:(t,r)=>t!==Math.round(t)?m...
  function qB (line 92) | function qB(e){return Wr({test:(t,r)=>e.test(t)?!0:mr(r,`Expected to mat...
  function Hqe (line 92) | function Hqe(){return Wr({test:(e,t)=>e!==e.toLowerCase()?mr(t,`Expected...
  function jqe (line 92) | function jqe(){return Wr({test:(e,t)=>e!==e.toUpperCase()?mr(t,`Expected...
  function Gqe (line 92) | function Gqe(){return Wr({test:(e,t)=>mqe.test(e)?!0:mr(t,`Expected to b...
  function qqe (line 92) | function qqe(){return Wr({test:(e,t)=>Jte.test(e)?!0:mr(t,`Expected to b...
  function Wqe (line 92) | function Wqe({alpha:e=!1}){return Wr({test:(t,r)=>(e?hqe.test(t):gqe.tes...
  function Vqe (line 92) | function Vqe(){return Wr({test:(e,t)=>dqe.test(e)?!0:mr(t,`Expected to b...
  function Yqe (line 92) | function Yqe(e=ZU()){return Wr({test:(t,r)=>{let s;try{s=JSON.parse(t)}c...
  function Nx (line 92) | function Nx(e,...t){let r=Array.isArray(t[0])?t[0]:t;return Wr({test:(s,...
  function WB (line 92) | function WB(e,...t){let r=Array.isArray(t[0])?t[0]:t;return Nx(e,r)}
  function Kqe (line 92) | function Kqe(e){return Wr({test:(t,r)=>typeof t>"u"?!0:e(t,r)})}
  function Jqe (line 92) | function Jqe(e){return Wr({test:(t,r)=>t===null?!0:e(t,r)})}
  function zqe (line 92) | function zqe(e,t){var r;let s=new Set(e),a=VB[(r=t?.missingIf)!==null&&r...
  function r_ (line 92) | function r_(e,t){var r;let s=new Set(e),a=VB[(r=t?.missingIf)!==null&&r!...
  function Zqe (line 92) | function Zqe(e,t){var r;let s=new Set(e),a=VB[(r=t?.missingIf)!==null&&r...
  function Xqe (line 92) | function Xqe(e,t){var r;let s=new Set(e),a=VB[(r=t?.missingIf)!==null&&r...
  function YB (line 92) | function YB(e,t,r,s){var a,n;let c=new Set((a=s?.ignore)!==null&&a!==voi...
  method constructor (line 92) | constructor({errors:t}={}){let r="Type mismatch";if(t&&t.length>0){r+=`
  method constructor (line 94) | constructor(){this.help=!1}
  method Usage (line 94) | static Usage(t){return t}
  method catch (line 94) | async catch(t){throw t}
  method validateAndExecute (line 94) | async validateAndExecute(){let r=this.constructor.schema;if(Array.isArra...
  function fl (line 94) | function fl(e){VU&&console.log(e)}
  function tre (line 94) | function tre(){let e={nodes:[]};for(let t=0;t<In.CustomNode;++t)e.nodes....
  function e9e (line 94) | function e9e(e){let t=tre(),r=[],s=t.nodes.length;for(let a of e){r.push...
  function Fu (line 94) | function Fu(e,t){return e.nodes.push(t),e.nodes.length-1}
  function t9e (line 94) | function t9e(e){let t=new Set,r=s=>{if(t.has(s))return;t.add(s);let a=e....
  function r9e (line 94) | function r9e(e,{prefix:t=""}={}){if(VU){fl(`${t}Nodes are:`);for(let r=0...
  function n9e (line 94) | function n9e(e,t,r=!1){fl(`Running a vm on ${JSON.stringify(t)}`);let s=...
  function i9e (line 94) | function i9e(e,t,{endToken:r=ni.EndOfInput}={}){let s=n9e(e,[...t,r]);re...
  function s9e (line 94) | function s9e(e){let t=0;for(let{state:r}of e)r.path.length>t&&(t=r.path....
  function o9e (line 94) | function o9e(e,t){let r=t.filter(S=>S.selectedIndex!==null),s=r.filter(S...
  function a9e (line 94) | function a9e(e){let t=[],r=[];for(let s of e)s.selectedIndex===Td?r.push...
  function rre (line 94) | function rre(e,t,...r){return t===void 0?Array.from(e):rre(e.filter((s,a...
  function Wl (line 94) | function Wl(){return{dynamics:[],shortcuts:[],statics:{}}}
  function nre (line 94) | function nre(e){return e===In.SuccessNode||e===In.ErrorNode}
  function n_ (line 94) | function n_(e,t=0){return{to:nre(e.to)?e.to:e.to>=In.CustomNode?e.to+t-I...
  function l9e (line 94) | function l9e(e,t=0){let r=Wl();for(let[s,a]of e.dynamics)r.dynamics.push...
  function qs (line 94) | function qs(e,t,r,s,a){e.nodes[t].dynamics.push([r,{to:s,reducer:a}])}
  function DE (line 94) | function DE(e,t,r,s){e.nodes[t].shortcuts.push({to:r,reducer:s})}
  function Ba (line 94) | function Ba(e,t,r,s,a){(Object.prototype.hasOwnProperty.call(e.nodes[t]....
  function Ox (line 94) | function Ox(e,t,r,s,a){if(Array.isArray(t)){let[n,...c]=t;return e[n](r,...
  method constructor (line 94) | constructor(t,r){this.allOptionNames=new Map,this.arity={leading:[],trai...
  method addPath (line 94) | addPath(t){this.paths.push(t)}
  method setArity (line 94) | setArity({leading:t=this.arity.leading,trailing:r=this.arity.trailing,ex...
  method addPositional (line 94) | addPositional({name:t="arg",required:r=!0}={}){if(!r&&this.arity.extra==...
  method addRest (line 94) | addRest({name:t="arg",required:r=0}={}){if(this.arity.extra===Vl)throw n...
  method addProxy (line 94) | addProxy({required:t=0}={}){this.addRest({required:t}),this.arity.proxy=!0}
  method addOption (line 94) | addOption({names:t,description:r,arity:s=0,hidden:a=!1,required:n=!1,all...
  method setContext (line 94) | setContext(t){this.context=t}
  method usage (line 94) | usage({detailed:t=!0,inlineOptions:r=!0}={}){let s=[this.cliOpts.binaryN...
  method compile (line 94) | compile(){if(typeof this.context>"u")throw new Error("Assertion failed: ...
  method registerOptions (line 94) | registerOptions(t,r){qs(t,r,["isOption","--"],r,"inhibateOptions"),qs(t,...
  method constructor (line 94) | constructor({binaryName:t="..."}={}){this.builders=[],this.opts={binaryN...
  method build (line 94) | static build(t,r={}){return new e(r).commands(t).compile()}
  method getBuilderByIndex (line 94) | getBuilderByIndex(t){if(!(t>=0&&t<this.builders.length))throw new Error(...
  method commands (line 94) | commands(t){for(let r of t)r(this.command());return this}
  method command (line 94) | command(){let t=new s_(this.builders.length,this.opts);return this.build...
  method compile (line 94) | compile(){let t=[],r=[];for(let a of this.builders){let{machine:n,contex...
  function sre (line 94) | function sre(){return Ux.default&&"getColorDepth"in Ux.default.WriteStre...
  function ore (line 94) | function ore(e){let t=ire;if(typeof t>"u"){if(e.stdout===process.stdout&...
  method constructor (line 94) | constructor(t){super(),this.contexts=t,this.commands=[]}
  method from (line 94) | static from(t,r){let s=new e(r);s.path=t.path;for(let a of t.options)swi...
  method execute (line 94) | async execute(){let t=this.commands;if(typeof this.index<"u"&&this.index...
  function fre (line 98) | async function fre(...e){let{resolvedOptions:t,resolvedCommandClasses:r,...
  function Are (line 98) | async function Are(...e){let{resolvedOptions:t,resolvedCommandClasses:r,...
  function pre (line 98) | function pre(e){let t,r,s,a;switch(typeof process<"u"&&typeof process.ar...
  function ure (line 98) | function ure(e){return e()}
  method constructor (line 98) | constructor({binaryLabel:t,binaryName:r="...",binaryVersion:s,enableCapt...
  method from (line 98) | static from(t,r={}){let s=new e(r),a=Array.isArray(t)?t:[t];for(let n of...
  method register (line 98) | register(t){var r;let s=new Map,a=new t;for(let p in a){let h=a[p];typeo...
  method process (line 98) | process(t,r){let{input:s,context:a,partial:n}=typeof t=="object"&&Array....
  method run (line 98) | async run(t,r){var s,a;let n,c={...e.defaultContext,...r},f=(s=this.enab...
  method runExit (line 98) | async runExit(t,r){process.exitCode=await this.run(t,r)}
  method definition (line 98) | definition(t,{colored:r=!1}={}){if(!t.usage)return null;let{usage:s}=thi...
  method definitions (line 98) | definitions({colored:t=!1}={}){let r=[];for(let s of this.registrations....
  method usage (line 98) | usage(t=null,{colored:r,detailed:s=!1,prefix:a="$ "}={}){var n;if(t===nu...
  method error (line 124) | error(t,r){var s,{colored:a,command:n=(s=t[cre])!==null&&s!==void 0?s:nu...
  method format (line 127) | format(t){var r;return((r=t??this.enableColors)!==null&&r!==void 0?r:e.d...
  method getUsageByRegistration (line 127) | getUsageByRegistration(t,r){let s=this.registrations.get(t);if(typeof s>...
  method getUsageByIndex (line 127) | getUsageByIndex(t,r){return this.builder.getBuilderByIndex(t).usage(r)}
  method execute (line 127) | async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.def...
  method execute (line 128) | async execute(){this.context.stdout.write(this.cli.usage())}
  function Hx (line 128) | function Hx(e={}){return wa({definition(t,r){var s;t.addProxy({name:(s=e...
  method constructor (line 128) | constructor(){super(...arguments),this.args=Hx()}
  method execute (line 128) | async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.pro...
  method execute (line 129) | async execute(){var t;this.context.stdout.write(`${(t=this.cli.binaryVer...
  function Ire (line 130) | function Ire(e,t,r){let[s,a]=Wf(t,r??{}),{arity:n=1}=a,c=e.split(","),f=...
  function wre (line 130) | function wre(e,t,r){let[s,a]=Wf(t,r??{}),n=e.split(","),c=new Set(n);ret...
  function vre (line 130) | function vre(e,t,r){let[s,a]=Wf(t,r??{}),n=e.split(","),c=new Set(n);ret...
  function Dre (line 130) | function Dre(e={}){return wa({definition(t,r){var s;t.addRest({name:(s=e...
  function u9e (line 130) | function u9e(e,t,r){let[s,a]=Wf(t,r??{}),{arity:n=1}=a,c=e.split(","),f=...
  function f9e (line 130) | function f9e(e={}){let{required:t=!0}=e;return wa({definition(r,s){var a...
  function Pre (line 130) | function Pre(e,...t){return typeof e=="string"?u9e(e,...t):f9e(e)}
  function m9e (line 130) | function m9e(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,`
  function y9e (line 132) | function y9e(e){let t=Fre(e),r=Ws.configDotenv({path:t});if(!r.parsed)th...
  function E9e (line 132) | function E9e(e){console.log(`[dotenv@${u_}][INFO] ${e}`)}
  function I9e (line 132) | function I9e(e){console.log(`[dotenv@${u_}][WARN] ${e}`)}
  function l_ (line 132) | function l_(e){console.log(`[dotenv@${u_}][DEBUG] ${e}`)}
  function Tre (line 132) | function Tre(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_K...
  function C9e (line 132) | function C9e(e,t){let r;try{r=new URL(t)}catch(f){throw f.code==="ERR_IN...
  function Fre (line 132) | function Fre(e){let t=c_.resolve(process.cwd(),".env");return e&&e.path&...
  function w9e (line 132) | function w9e(e){return e[0]==="~"?c_.join(p9e.homedir(),e.slice(1)):e}
  function B9e (line 132) | function B9e(e){E9e("Loading env from encrypted .env.vault");let t=Ws._p...
  function v9e (line 132) | function v9e(e){let t=c_.resolve(process.cwd(),".env"),r="utf8",s=!!(e&&...
  function S9e (line 132) | function S9e(e){let t=Fre(e);return Tre(e).length===0?Ws.configDotenv(e)...
  function D9e (line 132) | function D9e(e,t){let r=Buffer.from(t.slice(-64),"hex"),s=Buffer.from(e,...
  function b9e (line 132) | function b9e(e,t,r={}){let s=!!(r&&r.debug),a=!!(r&&r.override);if(typeo...
  function Kf (line 132) | function Kf(e){return`YN${e.toString(10).padStart(4,"0")}`}
  function jx (line 132) | function jx(e){let t=Number(e.slice(2));if(typeof Br[t]>"u")throw new Er...
  method constructor (line 132) | constructor(t,r){if(r=Y9e(r),t instanceof e){if(t.loose===!!r.loose&&t.i...
  method format (line 132) | format(){return this.version=`${this.major}.${this.minor}.${this.patch}`...
  method toString (line 132) | toString(){return this.version}
  method compare (line 132) | compare(t){if(Wx("SemVer.compare",this.version,this.options,t),!(t insta...
  method compareMain (line 132) | compareMain(t){return t instanceof e||(t=new e(t,this.options)),PE(this....
  method comparePre (line 132) | comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelea...
  method compareBuild (line 132) | compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{let...
  method inc (line 132) | inc(t,r,s){switch(t){case"premajor":this.prerelease.length=0,this.patch=...
  function On (line 132) | function On(e){var t=this;if(t instanceof On||(t=new On),t.tail=null,t.h...
  function HWe (line 132) | function HWe(e,t,r){var s=t===e.head?new Ld(r,null,t,e):new Ld(r,t,t.nex...
  function jWe (line 132) | function jWe(e,t){e.tail=new Ld(t,e.tail,null,e),e.head||(e.head=e.tail)...
  function GWe (line 132) | function GWe(e,t){e.head=new Ld(t,null,e.head,e),e.tail||(e.tail=e.head)...
  function Ld (line 132) | function Ld(e,t,r,s){if(!(this instanceof Ld))return new Ld(e,t,r,s);thi...
  method constructor (line 132) | constructor(t){if(typeof t=="number"&&(t={max:t}),t||(t={}),t.max&&(type...
  method max (line 132) | set max(t){if(typeof t!="number"||t<0)throw new TypeError("max must be a...
  method max (line 132) | get max(){return this[Md]}
  method allowStale (line 132) | set allowStale(t){this[n2]=!!t}
  method allowStale (line 132) | get allowStale(){return this[n2]}
  method maxAge (line 132) | set maxAge(t){if(typeof t!="number")throw new TypeError("maxAge must be ...
  method maxAge (line 132) | get maxAge(){return this[Ud]}
  method lengthCalculator (line 132) | set lengthCalculator(t){typeof t!="function"&&(t=E_),t!==this[xE]&&(this...
  method lengthCalculator (line 132) | get lengthCalculator(){return this[xE]}
  method length (line 132) | get length(){return this[Dp]}
  method itemCount (line 132) | get itemCount(){return this[Vs].length}
  method rforEach (line 132) | rforEach(t,r){r=r||this;for(let s=this[Vs].tail;s!==null;){let a=s.prev;...
  method forEach (line 132) | forEach(t,r){r=r||this;for(let s=this[Vs].head;s!==null;){let a=s.next;j...
  method keys (line 132) | keys(){return this[Vs].toArray().map(t=>t.key)}
  method values (line 132) | values(){return this[Vs].toArray().map(t=>t.value)}
  method reset (line 132) | reset(){this[Sp]&&this[Vs]&&this[Vs].length&&this[Vs].forEach(t=>this[Sp...
  method dump (line 132) | dump(){return this[Vs].map(t=>$x(this,t)?!1:{k:t.key,v:t.value,e:t.now+(...
  method dumpLru (line 132) | dumpLru(){return this[Vs]}
  method set (line 132) | set(t,r,s){if(s=s||this[Ud],s&&typeof s!="number")throw new TypeError("m...
  method has (line 132) | has(t){if(!this[Nu].has(t))return!1;let r=this[Nu].get(t).value;return!$...
  method get (line 132) | get(t){return I_(this,t,!0)}
  method peek (line 132) | peek(t){return I_(this,t,!1)}
  method pop (line 132) | pop(){let t=this[Vs].tail;return t?(kE(this,t),t.value):null}
  method del (line 132) | del(t){kE(this,this[Nu].get(t))}
  method load (line 132) | load(t){this.reset();let r=Date.now();for(let s=t.length-1;s>=0;s--){let...
  method prune (line 132) | prune(){this[Nu].forEach((t,r)=>I_(this,r,!1))}
  method constructor (line 132) | constructor(t,r,s,a,n){this.key=t,this.value=r,this.length=s,this.now=a,...
  method constructor (line 132) | constructor(t,r){if(r=VWe(r),t instanceof e)return t.loose===!!r.loose&&...
  method format (line 132) | format(){return this.range=this.set.map(t=>t.join(" ").trim()).join("||"...
  method toString (line 132) | toString(){return this.range}
  method parseRange (line 132) | parseRange(t){let s=((this.options.includePrerelease&&ZWe)|(this.options...
  method intersects (line 132) | intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is req...
  method test (line 132) | test(t){if(!t)return!1;if(typeof t=="string")try{t=new YWe(t,this.option...
  method ANY (line 132) | static get ANY(){return s2}
  method constructor (line 132) | constructor(t,r){if(r=zne(r),t instanceof e){if(t.loose===!!r.loose)retu...
  method parse (line 132) | parse(t){let r=this.options.loose?Zne[Xne.COMPARATORLOOSE]:Zne[Xne.COMPA...
  method toString (line 132) | toString(){return this.value}
  method test (line 132) | test(t){if(D_("Comparator.test",t,this.options.loose),this.semver===s2||...
  method intersects (line 132) | intersects(t,r){if(!(t instanceof e))throw new TypeError("a Comparator i...
  function DYe (line 132) | function DYe(e,t){function r(){this.constructor=e}r.prototype=t.prototyp...
  function _d (line 132) | function _d(e,t,r,s){this.message=e,this.expected=t,this.found=r,this.lo...
  function s (line 132) | function s(h){return h.charCodeAt(0).toString(16).toUpperCase()}
  function a (line 132) | function a(h){return h.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace...
  function n (line 132) | function n(h){return h.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replac...
  function c (line 132) | function c(h){return r[h.type](h)}
  function f (line 132) | function f(h){var E=new Array(h.length),C,S;for(C=0;C<h.length;C++)E[C]=...
  function p (line 132) | function p(h){return h?'"'+a(h)+'"':"end of input"}
  function bYe (line 132) | function bYe(e,t){t=t!==void 0?t:{};var r={},s={Expression:y},a=y,n="|",...
  function xYe (line 134) | function xYe(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}
  function kYe (line 134) | function kYe(){let e={},t=Object.keys(rk);for(let r=t.length,s=0;s<r;s++...
  function QYe (line 134) | function QYe(e){let t=kYe(),r=[e];for(t[e].distance=0;r.length;){let s=r...
  function RYe (line 134) | function RYe(e,t){return function(r){return t(e(r))}}
  function TYe (line 134) | function TYe(e,t){let r=[t[e].parent,e],s=rk[t[e].parent][e],a=t[e].pare...
  function OYe (line 134) | function OYe(e){let t=function(...r){let s=r[0];return s==null?s:(s.leng...
  function LYe (line 134) | function LYe(e){let t=function(...r){let s=r[0];if(s==null)return s;s.le...
  function MYe (line 134) | function MYe(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2...
  function O_ (line 134) | function O_(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e...
  function L_ (line 134) | function L_(e,t){if(o0===0)return 0;if(Dc("color=16m")||Dc("color=full")...
  function _Ye (line 134) | function _Ye(e){let t=L_(e,e&&e.isTTY);return O_(t)}
  function ase (line 138) | function ase(e){let t=e[0]==="u",r=e[1]==="{";return t&&!r&&e.length===5...
  function YYe (line 138) | function YYe(e,t){let r=[],s=t.trim().split(/\s*,\s*/g),a;for(let n of s...
  function KYe (line 138) | function KYe(e){sse.lastIndex=0;let t=[],r;for(;(r=sse.exec(e))!==null;)...
  function ose (line 138) | function ose(e,t){let r={};for(let a of t)for(let n of a.styles)r[n[0]]=...
  method constructor (line 138) | constructor(t){return Ase(t)}
  function ok (line 138) | function ok(e){return Ase(e)}
  method get (line 138) | get(){let r=ak(this,j_(t.open,t.close,this._styler),this._isEmpty);retur...
  method get (line 138) | get(){let e=ak(this,this._styler,!0);return Object.defineProperty(this,"...
  method get (line 138) | get(){let{level:t}=this;return function(...r){let s=j_(c2.color[fse[t]][...
  method get (line 138) | get(){let{level:r}=this;return function(...s){let a=j_(c2.bgColor[fse[r]...
  method get (line 138) | get(){return this._generator.level}
  method set (line 138) | set(e){this._generator.level=e}
  function $Ye (line 139) | function $Ye(e,t,r){let s=G_(e,t,"-",!1,r)||[],a=G_(t,e,"",!1,r)||[],n=G...
  function e7e (line 139) | function e7e(e,t){let r=1,s=1,a=Bse(e,r),n=new Set([t]);for(;e<=a&&a<=t;...
  function t7e (line 139) | function t7e(e,t,r){if(e===t)return{pattern:e,count:[],digits:0};let s=r...
  function Cse (line 139) | function Cse(e,t,r,s){let a=e7e(e,t),n=[],c=e,f;for(let p=0;p<a.length;p...
  function G_ (line 139) | function G_(e,t,r,s,a){let n=[];for(let c of e){let{string:f}=c;!s&&!wse...
  function r7e (line 139) | function r7e(e,t){let r=[];for(let s=0;s<e.length;s++)r.push([e[s],t[s]]...
  function n7e (line 139) | function n7e(e,t){return e>t?1:t>e?-1:0}
  function wse (line 139) | function wse(e,t,r){return e.some(s=>s[t]===r)}
  function Bse (line 139) | function Bse(e,t){return Number(String(e).slice(0,-t)+"9".repeat(t))}
  function vse (line 139) | function vse(e,t){return e-e%Math.pow(10,t)}
  function Sse (line 139) | function Sse(e){let[t=0,r=""]=e;return r||t>1?`{${t+(r?","+r:"")}}`:""}
  function i7e (line 139) | function i7e(e,t,r){return`[${e}${t-e===1?"":"-"}${t}]`}
  function Dse (line 139) | function Dse(e){return/^-?(0+)\d/.test(e)}
  function s7e (line 139) | function s7e(e,t,r){if(!t.isPadded)return e;let s=Math.abs(t.maxLen-Stri...
  method extglobChars (line 140) | extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e....
  method globChars (line 140) | globChars(e){return e===!0?q7e:roe}
  function Doe (line 140) | function Doe(e){return Number.isSafeInteger(e)&&e>=0}
  function Poe (line 140) | function Poe(e){return e!=null&&typeof e!="function"&&Doe(e.length)}
  function Pc (line 140) | function Pc(e){return e==="__proto__"}
  function ME (line 140) | function ME(e){switch(typeof e){case"number":case"symbol":return!1;case"...
  function UE (line 140) | function UE(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is...
  function Ou (line 140) | function Ou(e){let t=[],r=e.length;if(r===0)return t;let s=0,a="",n="",c...
  function ba (line 140) | function ba(e,t,r){if(e==null)return r;switch(typeof t){case"string":{if...
  function hKe (line 140) | function hKe(e,t,r){if(t.length===0)return r;let s=e;for(let a=0;a<t.len...
  function s4 (line 140) | function s4(e){return e!==null&&(typeof e=="object"||typeof e=="function")}
  function HE (line 140) | function HE(e){return e==null||typeof e!="object"&&typeof e!="function"}
  function Ik (line 140) | function Ik(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}
  function Gd (line 140) | function Gd(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.p...
  function qd (line 140) | function qd(e){return e==null?e===void 0?"[object Undefined]":"[object N...
  function VE (line 140) | function VE(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}
  function Noe (line 140) | function Noe(e,t){return l0(e,void 0,e,new Map,t)}
  function l0 (line 140) | function l0(e,t,r,s=new Map,a=void 0){let n=a?.(e,t,r,s);if(n!=null)retu...
  function a0 (line 140) | function a0(e,t,r=e,s,a){let n=[...Object.keys(t),...Gd(t)];for(let c=0;...
  function gKe (line 140) | function gKe(e){switch(qd(e)){case Wd:case Pk:case xk:case kk:case qE:ca...
  function Ooe (line 140) | function Ooe(e){return l0(e,void 0,e,new Map,void 0)}
  function Moe (line 140) | function Moe(e,t){return Noe(e,(r,s,a,n)=>{let c=t?.(r,s,a,n);if(c!=null...
  function c0 (line 140) | function c0(e){return Moe(e)}
  function jk (line 140) | function jk(e,t=Number.MAX_SAFE_INTEGER){switch(typeof e){case"number":r...
  function g2 (line 140) | function g2(e){return e!==null&&typeof e=="object"&&qd(e)==="[object Arg...
  function d2 (line 140) | function d2(e,t){let r;if(Array.isArray(t)?r=t:typeof t=="string"&&ME(t)...
  function A4 (line 140) | function A4(e){return typeof e=="object"&&e!==null}
  function Hoe (line 140) | function Hoe(e){return typeof e=="symbol"||e instanceof Symbol}
  function Goe (line 140) | function Goe(e,t){return Array.isArray(e)?!1:typeof e=="number"||typeof ...
  function u0 (line 140) | function u0(e,t){if(e==null)return!0;switch(typeof t){case"symbol":case"...
  function Woe (line 140) | function Woe(e,t){let r=ba(e,t.slice(0,-1),e),s=t[t.length-1];if(r?.[s]=...
  function Voe (line 140) | function Voe(e){return e==null}
  function zoe (line 140) | function zoe(e,t,r,s){if(e==null&&!s4(e))return e;let a=Goe(t,e)?[t]:Arr...
  function Vd (line 140) | function Vd(e,t,r){return zoe(e,t,()=>r,()=>{})}
  function Xoe (line 140) | function Xoe(e,t=0,r={}){typeof r!="object"&&(r={});let s=null,a=null,n=...
  function g4 (line 140) | function g4(e,t=0,r={}){let{leading:s=!0,trailing:a=!0}=r;return Xoe(e,t...
  function d4 (line 140) | function d4(e){if(e==null)return"";if(typeof e=="string")return e;if(Arr...
  function m4 (line 140) | function m4(e){if(!e||typeof e!="object")return!1;let t=Object.getProtot...
  function nae (line 140) | function nae(e,t,r){return m2(e,t,void 0,void 0,void 0,void 0,r)}
  function m2 (line 140) | function m2(e,t,r,s,a,n,c){let f=c(e,t,r,s,a,n);if(f!==void 0)return f;i...
  function y2 (line 140) | function y2(e,t,r,s){if(Object.is(e,t))return!0;let a=qd(e),n=qd(t);if(a...
  function sae (line 140) | function sae(){}
  function y4 (line 140) | function y4(e,t){return nae(e,t,sae)}
  function lae (line 140) | function lae(e){return VE(e)}
  function uae (line 140) | function uae(e){if(typeof e!="object"||e==null)return!1;if(Object.getPro...
  function Aae (line 140) | function Aae(e){if(HE(e))return e;if(Array.isArray(e)||VE(e)||e instance...
  function E4 (line 140) | function E4(e,...t){let r=t.slice(0,-1),s=t[t.length-1],a=e;for(let n=0;...
  function Gk (line 140) | function Gk(e,t,r,s){if(HE(e)&&(e=Object(e)),t==null||typeof t!="object"...
  function I4 (line 140) | function I4(e,...t){if(e==null)return{};let r=Ooe(e);for(let s=0;s<t.len...
  function Yd (line 140) | function Yd(e,...t){if(Voe(e))return{};let r={};for(let s=0;s<t.length;s...
  function mae (line 140) | function mae(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}
  function E2 (line 140) | function E2(e){return mae(d4(e))}
  function EKe (line 140) | function EKe(e){return!!(Bae.default.valid(e)&&e.match(/^[^-]+(-rc\.[0-9...
  function qk (line 140) | function qk(e,{one:t,more:r,zero:s=r}){return e===0?s:e===1?t:r}
  function IKe (line 140) | function IKe(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}
  function CKe (line 140) | function CKe(e){}
  function b4 (line 140) | function b4(e){throw new Error(`Assertion failed: Unexpected object '${e...
  function wKe (line 140) | function wKe(e,t){let r=Object.values(e);if(!r.includes(t))throw new st(...
  function zl (line 140) | function zl(e,t){let r=[];for(let s of e){let a=t(s);a!==vae&&r.push(a)}...
  function f0 (line 140) | function f0(e,t){for(let r of e){let s=t(r);if(s!==Sae)return s}}
  function C4 (line 140) | function C4(e){return typeof e=="object"&&e!==null}
  function Lu (line 140) | async function Lu(e){let t=await Promise.allSettled(e),r=[];for(let s of...
  function Wk (line 140) | function Wk(e){if(e instanceof Map&&(e=Object.fromEntries(e)),C4(e))for(...
  function Zl (line 140) | function Zl(e,t,r){let s=e.get(t);return typeof s>"u"&&e.set(t,s=r()),s}
  function C2 (line 140) | function C2(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=[]),r}
  function Pp (line 140) | function Pp(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Set),r}
  function P4 (line 140) | function P4(e,t){let r=e.get(t);return typeof r>"u"&&e.set(t,r=new Map),r}
  function BKe (line 140) | async function BKe(e,t){if(t==null)return await e();try{return await e()...
  function YE (line 140) | async function YE(e,t){try{return await e()}catch(r){throw r.message=t(r...
  function x4 (line 140) | function x4(e,t){try{return e()}catch(r){throw r.message=t(r.message),r}}
  function KE (line 140) | async function KE(e){return await new Promise((t,r)=>{let s=[];e.on("err...
  function Dae (line 140) | function Dae(){let e,t;return{promise:new Promise((s,a)=>{e=s,t=a}),reso...
  function bae (line 140) | function bae(e){return I2(fe.fromPortablePath(e))}
  function Pae (line 140) | function Pae(path){let physicalPath=fe.fromPortablePath(path),currentCac...
  function vKe (line 140) | function vKe(e){let t=Iae.get(e),r=le.statSync(e);if(t?.mtime===r.mtimeM...
  function xp (line 140) | function xp(e,{cachingStrategy:t=2}={}){switch(t){case 0:return Pae(e);c...
  function Ys (line 140) | function Ys(e,t){let r=Array.from(e);Array.isArray(t)||(t=[t]);let s=[];...
  function SKe (line 140) | function SKe(e){return e.length===0?null:e.map(t=>`(${Cae.default.makeRe...
  function Vk (line 140) | function Vk(e,{env:t}){let r="",s=0,a=0,n=e.matchAll(/\\(?<escaped>[\\$}...
  function w2 (line 140) | function w2(e){switch(e){case"true":case"1":case 1:case!0:return!0;case"...
  function kae (line 140) | function kae(e){return typeof e>"u"?e:w2(e)}
  function k4 (line 140) | function k4(e){try{return kae(e)}catch{return null}}
  function DKe (line 140) | function DKe(e){return!!(fe.isAbsolute(e)||e.match(/^(\.{1,2}|~)\//))}
  function Qae (line 140) | function Qae(e,...t){let r=c=>({value:c}),s=r(e),a=t.map(c=>r(c)),{value...
  function bKe (line 140) | function bKe(...e){return Qae({},...e)}
  function PKe (line 140) | function PKe(e,t){let r=Object.create(null);for(let s of e){let a=s[t];r...
  function JE (line 140) | function JE(e){return typeof e=="string"?Number.parseInt(e,10):e}
  function Yk (line 140) | function Yk(e,t){let r=xKe.exec(e)?.groups;if(!r)throw new Error(`Couldn...
  method constructor (line 140) | constructor(){super(...arguments);this.chunks=[]}
  method _transform (line 140) | _transform(r,s,a){if(s!=="buffer"||!Buffer.isBuffer(r))throw new Error("...
  method _flush (line 140) | _flush(r){r(null,Buffer.concat(this.chunks))}
  method constructor (line 140) | constructor(t){this.deferred=new Map;this.promises=new Map;this.limit=(0...
  method set (line 140) | set(t,r){let s=this.deferred.get(t);typeof s>"u"&&this.deferred.set(t,s=...
  method reduce (line 140) | reduce(t,r){let s=this.promises.get(t)??Promise.resolve();this.set(t,()=...
  method wait (line 140) | async wait(){await Promise.all(this.promises.values())}
  method constructor (line 140) | constructor(r=Buffer.alloc(0)){super();this.active=!0;this.ifEmpty=r}
  method _transform (line 140) | _transform(r,s,a){if(s!=="buffer"||!Buffer.isBuffer(r))throw new Error("...
  method _flush (line 140) | _flush(r){this.active&&this.ifEmpty.length>0?r(null,this.ifEmpty):r(null)}
  function Tae (line 140) | function Tae(e){let t=["KiB","MiB","GiB","TiB"],r=t.length;for(;r>1&&e<1...
  function Kk (line 140) | function Kk(e,t){if(Array.isArray(t))return t.length===0?si(e,"[]",gt.CO...
  function Mu (line 140) | function Mu(e,t){return[t,e]}
  function Kd (line 140) | function Kd(e,t,r){return e.get("enableColors")&&r&2&&(t=v2.default.bold...
  function si (line 140) | function si(e,t,r){if(!e.get("enableColors"))return t;let s=kKe.get(r);i...
  function XE (line 140) | function XE(e,t,r){return e.get("enableHyperlinks")?QKe?`\x1B]8;;${r}\x1...
  function jt (line 140) | function jt(e,t,r){if(t===null)return si(e,"null",gt.NULL);if(Object.has...
  function O4 (line 140) | function O4(e,t,r,{separator:s=", "}={}){return[...t].map(a=>jt(e,a,r))....
  function Jd (line 140) | function Jd(e,t){if(e===null)return null;if(Object.hasOwn(Jk,t))return J...
  function RKe (line 140) | function RKe(e,t,[r,s]){return e?Jd(r,s):jt(t,r,s)}
  function L4 (line 140) | function L4(e){return{Check:si(e,"\u2713","green"),Cross:si(e,"\u2718","...
  function Zf (line 140) | function Zf(e,{label:t,value:[r,s]}){return`${jt(e,t,gt.CODE)}: ${jt(e,r...
  function Xk (line 140) | function Xk(e,t,r){let s=[],a=[...t],n=r;for(;a.length>0;){let h=a[0],E=...
  function S2 (line 140) | function S2(e,{configuration:t}){let r=t.get("logFilters"),s=new Map,a=n...
  function TKe (line 140) | function TKe(e){return e.reduce((t,r)=>[].concat(t,r),[])}
  function FKe (line 140) | function FKe(e,t){let r=[[]],s=0;for(let a of e)t(a)?(s++,r[s]=[]):r[s]....
  function NKe (line 140) | function NKe(e){return e.code==="ENOENT"}
  method constructor (line 140) | constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),...
  function OKe (line 140) | function OKe(e,t){return new _4(e,t)}
  function qKe (line 140) | function qKe(e){return e.replace(/\\/g,"/")}
  function WKe (line 140) | function WKe(e,t){return MKe.resolve(e,t)}
  function VKe (line 140) | function VKe(e){if(e.charAt(0)==="."){let t=e.charAt(1);if(t==="/"||t===...
  function H4 (line 140) | function H4(e){return e.replace(HKe,"\\$2")}
  function j4 (line 140) | function j4(e){return e.replace(_Ke,"\\$2")}
  function Uae (line 140) | function Uae(e){return H4(e).replace(jKe,"//$1").replace(GKe,"/")}
  function _ae (line 140) | function _ae(e){return j4(e)}
  function zae (line 140) | function zae(e,t={}){return!Zae(e,t)}
  function Zae (line 140) | function Zae(e,t={}){return e===""?!1:!!(t.caseSensitiveMatch===!1||e.in...
  function AJe (line 140) | function AJe(e){let t=e.indexOf("{");if(t===-1)return!1;let r=e.indexOf(...
  function pJe (line 140) | function pJe(e){return rQ(e)?e.slice(1):e}
  function hJe (line 140) | function hJe(e){return"!"+e}
  function rQ (line 140) | function rQ(e){return e.startsWith("!")&&e[1]!=="("}
  function Xae (line 140) | function Xae(e){return!rQ(e)}
  function gJe (line 140) | function gJe(e){return e.filter(rQ)}
  function dJe (line 140) | function dJe(e){return e.filter(Xae)}
  function mJe (line 140) | function mJe(e){return e.filter(t=>!W4(t))}
  function yJe (line 140) | function yJe(e){return e.filter(W4)}
  function W4 (line 140) | function W4(e){return e.startsWith("..")||e.startsWith("./..")}
  function EJe (line 140) | function EJe(e){return iJe(e,{flipBackslashes:!1})}
  function IJe (line 140) | function IJe(e){return e.includes(Jae)}
  function $ae (line 140) | function $ae(e){return e.endsWith("/"+Jae)}
  function CJe (line 140) | function CJe(e){let t=nJe.basename(e);return $ae(e)||zae(t)}
  function wJe (line 140) | function wJe(e){return e.reduce((t,r)=>t.concat(ele(r)),[])}
  function ele (line 140) | function ele(e){let t=q4.braces(e,{expand:!0,nodupes:!0,keepEscaping:!0}...
  function BJe (line 140) | function BJe(e,t){let{parts:r}=q4.scan(e,Object.assign(Object.assign({},...
  function tle (line 140) | function tle(e,t){return q4.makeRe(e,t)}
  function vJe (line 140) | function vJe(e,t){return e.map(r=>tle(r,t))}
  function SJe (line 140) | function SJe(e,t){return t.some(r=>r.test(e))}
  function DJe (line 140) | function DJe(e){return e.replace(fJe,"/")}
  function xJe (line 140) | function xJe(){let e=[],t=PJe.call(arguments),r=!1,s=t[t.length-1];s&&!A...
  function ile (line 140) | function ile(e,t){if(Array.isArray(e))for(let r=0,s=e.length;r<s;r++)e[r...
  function QJe (line 140) | function QJe(e){let t=kJe(e);return e.forEach(r=>{r.once("error",s=>t.em...
  function ale (line 140) | function ale(e){e.forEach(t=>t.emit("close"))}
  function RJe (line 140) | function RJe(e){return typeof e=="string"}
  function TJe (line 140) | function TJe(e){return e===""}
  function HJe (line 140) | function HJe(e,t){let r=ule(e,t),s=ule(t.ignore,t),a=fle(r),n=Ale(r,s),c...
  function ule (line 140) | function ule(e,t){let r=e;return t.braceExpansion&&(r=Uu.pattern.expandP...
  function V4 (line 140) | function V4(e,t,r){let s=[],a=Uu.pattern.getPatternsOutsideCurrentDirect...
  function fle (line 140) | function fle(e){return Uu.pattern.getPositivePatterns(e)}
  function Ale (line 140) | function Ale(e,t){return Uu.pattern.getNegativePatterns(e).concat(t).map...
  function Y4 (line 140) | function Y4(e){let t={};return e.reduce((r,s)=>{let a=Uu.pattern.getBase...
  function K4 (line 140) | function K4(e,t,r){return Object.keys(e).map(s=>J4(s,e[s],t,r))}
  function J4 (line 140) | function J4(e,t,r,s){return{dynamic:s,positive:t,negative:r,base:e,patte...
  function jJe (line 140) | function jJe(e,t,r){t.fs.lstat(e,(s,a)=>{if(s!==null){hle(r,s);return}if...
  function hle (line 140) | function hle(e,t){e(t)}
  function z4 (line 140) | function z4(e,t){e(null,t)}
  function GJe (line 140) | function GJe(e,t){let r=t.fs.lstatSync(e);if(!r.isSymbolicLink()||!t.fol...
  function qJe (line 140) | function qJe(e){return e===void 0?A0.FILE_SYSTEM_ADAPTER:Object.assign(O...
  method constructor (line 140) | constructor(t={}){this._options=t,this.followSymbolicLink=this._getValue...
  method _getValue (line 140) | _getValue(t,r){return t??r}
  function YJe (line 140) | function YJe(e,t,r){if(typeof t=="function"){Ele.read(e,e3(),t);return}E...
  function KJe (line 140) | function KJe(e,t){let r=e3(t);return VJe.read(e,r)}
  function e3 (line 140) | function e3(e={}){return e instanceof $4.default?e:new $4.default(e)}
  function zJe (line 140) | function zJe(e,t){let r,s,a,n=!0;Array.isArray(e)?(r=[],s=e.length):(a=O...
  method constructor (line 140) | constructor(t,r){this.name=t,this.isBlockDevice=r.isBlockDevice.bind(r),...
  function tze (line 140) | function tze(e,t){return new r3(e,t)}
  function nze (line 140) | function nze(e,t,r){return e.endsWith(r)?e+t:e+r+t}
  function oze (line 140) | function oze(e,t,r){if(!t.stats&&sze.IS_SUPPORT_READDIR_WITH_FILE_TYPES)...
  function Qle (line 140) | function Qle(e,t,r){t.fs.readdir(e,{withFileTypes:!0},(s,a)=>{if(s!==nul...
  function aze (line 140) | function aze(e,t){return r=>{if(!e.dirent.isSymbolicLink()){r(null,e);re...
  function Rle (line 140) | function Rle(e,t,r){t.fs.readdir(e,(s,a)=>{if(s!==null){AQ(r,s);return}l...
  function AQ (line 140) | function AQ(e,t){e(t)}
  function s3 (line 140) | function s3(e,t){e(null,t)}
  function uze (line 140) | function uze(e,t){return!t.stats&&cze.IS_SUPPORT_READDIR_WITH_FILE_TYPES...
  function Ole (line 140) | function Ole(e,t){return t.fs.readdirSync(e,{withFileTypes:!0}).map(s=>{...
  function Lle (line 140) | function Lle(e,t){return t.fs.readdirSync(e).map(s=>{let a=Nle.joinPathS...
  function fze (line 140) | function fze(e){return e===void 0?d0.FILE_SYSTEM_ADAPTER:Object.assign(O...
  method constructor (line 140) | constructor(t={}){this._options=t,this.followSymbolicLinks=this._getValu...
  method _getValue (line 140) | _getValue(t,r){return t??r}
  function dze (line 140) | function dze(e,t,r){if(typeof t=="function"){Hle.read(e,c3(),t);return}H...
  function mze (line 140) | function mze(e,t){let r=c3(t);return gze.read(e,r)}
  function c3 (line 140) | function c3(e={}){return e instanceof l3.default?e:new l3.default(e)}
  function yze (line 140) | function yze(e){var t=new e,r=t;function s(){var n=t;return n.next?t=n.n...
  function qle (line 140) | function qle(e,t,r){if(typeof e=="function"&&(r=t,t=e,e=null),!(r>=1))th...
  function Qc (line 140) | function Qc(){}
  function Ize (line 140) | function Ize(){this.value=null,this.callback=Qc,this.next=null,this.rele...
  function Cze (line 140) | function Cze(e,t,r){typeof e=="function"&&(r=t,t=e,e=null);function s(E,...
  function wze (line 140) | function wze(e,t){return e.errorFilter===null?!0:!e.errorFilter(t)}
  function Bze (line 140) | function Bze(e,t){return e===null||e(t)}
  function vze (line 140) | function vze(e,t){return e.split(/[/\\]/).join(t)}
  function Sze (line 140) | function Sze(e,t,r){return e===""?t:e.endsWith(r)?e+t:e+r+t}
  method constructor (line 140) | constructor(t,r){this._root=t,this._settings=r,this._root=Dze.replacePat...
  method constructor (line 140) | constructor(t,r){super(t,r),this._settings=r,this._scandir=Pze.scandir,t...
  method read (line 140) | read(){return this._isFatalError=!1,this._isDestroyed=!1,setImmediate(()...
  method isDestroyed (line 140) | get isDestroyed(){return this._isDestroyed}
  method destroy (line 140) | destroy(){if(this._isDestroyed)throw new Error("The reader is already de...
  method onEntry (line 140) | onEntry(t){this._emitter.on("entry",t)}
  method onError (line 140) | onError(t){this._emitter.once("error",t)}
  method onEnd (line 140) | onEnd(t){this._emitter.once("end",t)}
  method _pushToQueue (line 140) | _pushToQueue(t,r){let s={directory:t,base:r};this._queue.push(s,a=>{a!==...
  method _worker (line 140) | _worker(t,r){this._scandir(t.directory,this._settings.fsScandirSettings,...
  method _handleError (line 140) | _handleError(t){this._isDestroyed||!gQ.isFatalError(this._settings,t)||(...
  method _handleEntry (line 140) | _handleEntry(t,r){if(this._isDestroyed||this._isFatalError)return;let s=...
  method _emitEntry (line 140) | _emitEntry(t){this._emitter.emit("entry",t)}
  method constructor (line 140) | constructor(t,r){this._root=t,this._settings=r,this._reader=new Qze.defa...
  method read (line 140) | read(t){this._reader.onError(r=>{Rze(t,r)}),this._reader.onEntry(r=>{thi...
  function Rze (line 140) | function Rze(e,t){e(t)}
  function Tze (line 140) | function Tze(e,t){e(null,t)}
  method constructor (line 140) | constructor(t,r){this._root=t,this._settings=r,this._reader=new Nze.defa...
  method read (line 140) | read(){return this._reader.onError(t=>{this._stream.emit("error",t)}),th...
  method constructor (line 140) | constructor(){super(...arguments),this._scandir=Oze.scandirSync,this._st...
  method read (line 140) | read(){return this._pushToQueue(this._root,this._settings.basePath),this...
  method _pushToQueue (line 140) | _pushToQueue(t,r){this._queue.add({directory:t,base:r})}
  method _handleQueue (line 140) | _handleQueue(){for(let t of this._queue.values())this._handleDirectory(t...
  method _handleDirectory (line 140) | _handleDirectory(t,r){try{let s=this._scandir(t,this._settings.fsScandir...
  method _handleError (line 140) | _handleError(t){if(dQ.isFatalError(this._settings,t))throw t}
  method _handleEntry (line 140) | _handleEntry(t,r){let s=t.path;r!==void 0&&(t.path=dQ.joinPathSegments(r...
  method _pushToStorage (line 140) | _pushToStorage(t){this._storage.push(t)}
  method constructor (line 140) | constructor(t,r){this._root=t,this._settings=r,this._reader=new Mze.defa...
  method read (line 140) | read(){return this._reader.read()}
  method constructor (line 140) | constructor(t={}){this._options=t,this.basePath=this._getValue(this._opt...
  method _getValue (line 140) | _getValue(t,r){return t??r}
  function Gze (line 140) | function Gze(e,t,r){if(typeof t=="function"){new Zle.default(e,mQ()).rea...
  function qze (line 140) | function qze(e,t){let r=mQ(t);return new jze.default(e,r).read()}
  function Wze (line 140) | function Wze(e,t){let r=mQ(t);return new Hze.default(e,r).read()}
  function mQ (line 140) | function mQ(e={}){return e instanceof b3.default?e:new b3.default(e)}
  method constructor (line 140) | constructor(t){this._settings=t,this._fsStatSettings=new Yze.Settings({f...
  method _getFullEntryPath (line 140) | _getFullEntryPath(t){return Vze.resolve(this._settings.cwd,t)}
  method _makeEntry (line 140) | _makeEntry(t,r){let s={name:r,path:r,dirent:Xle.fs.createDirentFromStats...
  method _isFatalError (line 140) | _isFatalError(t){return!Xle.errno.isEnoentCodeError(t)&&!this._settings....
  method constructor (line 140) | constructor(){super(...arguments),this._walkStream=zze.walkStream,this._...
  method dynamic (line 140) | dynamic(t,r){return this._walkStream(t,r)}
  method static (line 140) | static(t,r){let s=t.map(this._getFullEntryPath,this),a=new Kze.PassThrou...
  method _getEntry (line 140) | _getEntry(t,r,s){return this._getStat(t).then(a=>this._makeEntry(a,r)).c...
  method _getStat (line 140) | _getStat(t){return new Promise((r,s)=>{this._stat(t,this._fsStatSettings...
  method constructor (line 140) | constructor(){super(...arguments),this._walkAsync=Xze.walk,this._readerS...
  method dynamic (line 140) | dynamic(t,r){return new Promise((s,a)=>{this._walkAsync(t,r,(n,c)=>{n===...
  method static (line 140) | async static(t,r){let s=[],a=this._readerStream.static(t,r);return new P...
  method constructor (line 140) | constructor(t,r,s){this._patterns=t,this._settings=r,this._micromatchOpt...
  method _fillStorage (line 140) | _fillStorage(){for(let t of this._patterns){let r=this._getPatternSegmen...
  method _getPatternSegments (line 140) | _getPatternSegments(t){return b2.pattern.getPatternParts(t,this._microma...
  method _splitSegmentsIntoSections (line 140) | _splitSegmentsIntoSections(t){return b2.array.splitWhen(t,r=>r.dynamic&&...
  method match (line 140) | match(t){let r=t.split("/"),s=r.length,a=this._storage.filter(n=>!n.comp...
  method constructor (line 140) | constructor(t,r){this._settings=t,this._micromatchOptions=r}
  method getFilter (line 140) | getFilter(t,r,s){let a=this._getMatcher(r),n=this._getNegativePatternsRe...
  method _getMatcher (line 140) | _getMatcher(t){return new rZe.default(t,this._settings,this._micromatchO...
  method _getNegativePatternsRe (line 140) | _getNegativePatternsRe(t){let r=t.filter(IQ.pattern.isAffectDepthOfReadi...
  method _filter (line 140) | _filter(t,r,s,a){if(this._isSkippedByDeep(t,r.path)||this._isSkippedSymb...
  method _isSkippedByDeep (line 140) | _isSkippedByDeep(t,r){return this._settings.deep===1/0?!1:this._getEntry...
  method _getEntryLevel (line 140) | _getEntryLevel(t,r){let s=r.split("/").length;if(t==="")return s;let a=t...
  method _isSkippedSymbolicLink (line 140) | _isSkippedSymbolicLink(t){return!this._settings.followSymbolicLinks&&t.d...
  method _isSkippedByPositivePatterns (line 140) | _isSkippedByPositivePatterns(t,r){return!this._settings.baseNameMatch&&!...
  method _isSkippedByNegativePatterns (line 140) | _isSkippedByNegativePatterns(t,r){return!IQ.pattern.matchAny(t,r)}
  method constructor (line 140) | constructor(t,r){this._settings=t,this._micromatchOptions=r,this.index=n...
  method getFilter (line 140) | getFilter(t,r){let s=Zd.pattern.convertPatternsToRe(t,this._micromatchOp...
  method _filter (line 140) | _filter(t,r,s){let a=Zd.path.removeLeadingDotSegment(t.path);if(this._se...
  method _isDuplicateEntry (line 140) | _isDuplicateEntry(t){return this.index.has(t)}
  method _createIndexRecord (line 140) | _createIndexRecord(t){this.index.set(t,void 0)}
  method _onlyFileFilter (line 140) | _onlyFileFilter(t){return this._settings.onlyFiles&&!t.dirent.isFile()}
  method _onlyDirectoryFilter (line 140) | _onlyDirectoryFilter(t){return this._settings.onlyDirectories&&!t.dirent...
  method _isSkippedByAbsoluteNegativePatterns (line 140) | _isSkippedByAbsoluteNegativePatterns(t,r){if(!this._settings.absolute)re...
  method _isMatchToPatterns (line 140) | _isMatchToPatterns(t,r,s){let a=Zd.pattern.matchAny(t,r);return!a&&s?Zd....
  method constructor (line 140) | constructor(t){this._settings=t}
  method getFilter (line 140) | getFilter(){return t=>this._isNonFatalError(t)}
  method _isNonFatalError (line 140) | _isNonFatalError(t){return nZe.errno.isEnoentCodeError(t)||this._setting...
  method constructor (line 140) | constructor(t){this._settings=t}
  method getTransformer (line 140) | getTransformer(){return t=>this._transform(t)}
  method _transform (line 140) | _transform(t){let r=t.path;return this._settings.absolute&&(r=sce.path.m...
  method constructor (line 140) | constructor(t){this._settings=t,this.errorFilter=new aZe.default(this._s...
  method _getRootDirectory (line 140) | _getRootDirectory(t){return iZe.resolve(this._settings.cwd,t.base)}
  method _getReaderOptions (line 140) | _getReaderOptions(t){let r=t.base==="."?"":t.base;return{basePath:r,path...
  method _getMicromatchOptions (line 140) | _getMicromatchOptions(){return{dot:this._settings.dot,matchBase:this._se...
  method constructor (line 140) | constructor(){super(...arguments),this._reader=new cZe.default(this._set...
  method read (line 140) | async read(t){let r=this._getRootDirectory(t),s=this._getReaderOptions(t...
  method api (line 140) | api(t,r,s){return r.dynamic?this._reader.dynamic(t,s):this._reader.stati...
  method constructor (line 140) | constructor(){super(...arguments),this._reader=new AZe.default(this._set...
  method read (line 140) | read(t){let r=this._getRootDirectory(t),s=this._getReaderOptions(t),a=th...
  method api (line 140) | api(t,r,s){return r.dynamic?this._reader.dynamic(t,s):this._reader.stati...
  method constructor (line 140) | constructor(){super(...arguments),this._walkSync=gZe.walkSync,this._stat...
  method dynamic (line 140) | dynamic(t,r){return this._walkSync(t,r)}
  method static (line 140) | static(t,r){let s=[];for(let a of t){let n=this._getFullEntryPath(a),c=t...
  method _getEntry (line 140) | _getEntry(t,r,s){try{let a=this._getStat(t);return this._makeEntry(a,r)}...
  method _getStat (line 140) | _getStat(t){return this._statSync(t,this._fsStatSettings)}
  method constructor (line 140) | constructor(){super(...arguments),this._reader=new mZe.default(this._set...
  method read (line 140) | read(t){let r=this._getRootDirectory(t),s=this._getReaderOptions(t);retu...
  method api (line 140) | api(t,r,s){return r.dynamic?this._reader.dynamic(t,s):this._reader.stati...
  method constructor (line 140) | constructor(t={}){this._options=t,this.absolute=this._getValue(this._opt...
  method _getValue (line 140) | _getValue(t,r){return t===void 0?r:t}
  method _getFileSystemMethods (line 140) | _getFileSystemMethods(t={}){return Object.assign(Object.assign({},nI.DEF...
  function s8 (line 140) | async function s8(e,t){_u(e);let r=o8(e,CZe.default,t),s=await Promise.a...
  function t (line 140) | function t(h,E){_u(h);let C=o8(h,BZe.default,E);return Rc.array.flatten(C)}
    method constructor (line 226) | constructor(s){super(s)}
    method submit (line 226) | async submit(){this.value=await e.call(this,this.values,this.state),su...
    method create (line 226) | static create(s){return ege(s)}
  function r (line 140) | function r(h,E){_u(h);let C=o8(h,wZe.default,E);return Rc.stream.merge(C)}
    method constructor (line 226) | constructor(a){super({...a,choices:t})}
    method create (line 226) | static create(a){return rge(a)}
  function s (line 140) | function s(h,E){_u(h);let C=[].concat(h),S=new i8.default(E);return Ace....
  function a (line 140) | function a(h,E){_u(h);let C=new i8.default(E);return Rc.pattern.isDynami...
  function n (line 140) | function n(h){return _u(h),Rc.path.escape(h)}
  function c (line 140) | function c(h){return _u(h),Rc.path.convertPathToPattern(h)}
  function E (line 140) | function E(S){return _u(S),Rc.path.escapePosixPath(S)}
  function C (line 140) | function C(S){return _u(S),Rc.path.convertPosixPathToPattern(S)}
  function E (line 140) | function E(S){return _u(S),Rc.path.escapeWindowsPath(S)}
  function C (line 140) | function C(S){return _u(S),Rc.path.convertWindowsPathToPattern(S)}
  function o8 (line 140) | function o8(e,t,r){let s=[].concat(e),a=new i8.default(r),n=Ace.generate...
  function _u (line 140) | function _u(e){if(![].concat(e).every(s=>Rc.string.isString(s)&&!Rc.stri...
  function fs (line 140) | function fs(...e){let t=(0,BQ.createHash)("sha512"),r="";for(let s of e)...
  function vQ (line 140) | async function vQ(e,{baseFs:t,algorithm:r}={baseFs:le,algorithm:"sha512"...
  function SQ (line 140) | async function SQ(e,{cwd:t}){let s=(await(0,a8.default)(e,{cwd:fe.fromPo...
  function xa (line 140) | function xa(e,t){if(e?.startsWith("@"))throw new Error("Invalid scope: d...
  function Mn (line 140) | function Mn(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,...
  function Ks (line 140) | function Ks(e,t){return{identHash:e.identHash,scope:e.scope,name:e.name,...
  function DZe (line 140) | function DZe(e){return{identHash:e.identHash,scope:e.scope,name:e.name}}
  function DQ (line 140) | function DQ(e){return{identHash:e.identHash,scope:e.scope,name:e.name,lo...
  function c8 (line 140) | function c8(e){return{identHash:e.identHash,scope:e.scope,name:e.name,de...
  function bZe (line 140) | function bZe(e){return{identHash:e.identHash,scope:e.scope,name:e.name,l...
  function u8 (line 140) | function u8(e,t){return{identHash:t.identHash,scope:t.scope,name:t.name,...
  function x2 (line 140) | function x2(e){return u8(e,e)}
  function f8 (line 140) | function f8(e,t){if(t.includes("#"))throw new Error("Invalid entropy");r...
  function A8 (line 140) | function A8(e,t){if(t.includes("#"))throw new Error("Invalid entropy");r...
  function Qp (line 140) | function Qp(e){return e.range.startsWith(P2)}
  function Hu (line 140) | function Hu(e){return e.reference.startsWith(P2)}
  function k2 (line 140) | function k2(e){if(!Qp(e))throw new Error("Not a virtual descriptor");ret...
  function sI (line 140) | function sI(e){if(!Hu(e))throw new Error("Not a virtual descriptor");ret...
  function PZe (line 140) | function PZe(e){return Qp(e)?Mn(e,e.range.replace(bQ,"")):e}
  function xZe (line 140) | function xZe(e){return Hu(e)?Ks(e,e.reference.replace(bQ,"")):e}
  function kZe (line 140) | function kZe(e,t){return e.range.includes("::")?e:Mn(e,`${e.range}::${iI...
  function QZe (line 140) | function QZe(e,t){return e.reference.includes("::")?e:Ks(e,`${e.referenc...
  function Q2 (line 140) | function Q2(e,t){return e.identHash===t.identHash}
  function yce (line 140) | function yce(e,t){return e.descriptorHash===t.descriptorHash}
  function R2 (line 140) | function R2(e,t){return e.locatorHash===t.locatorHash}
  function RZe (line 140) | function RZe(e,t){if(!Hu(e))throw new Error("Invalid package type");if(!...
  function Pa (line 140) | function Pa(e){let t=Ece(e);if(!t)throw new Error(`Invalid ident (${e})`...
  function Ece (line 140) | function Ece(e){let t=e.match(TZe);if(!t)return null;let[,r,s]=t;return ...
  function E0 (line 140) | function E0(e,t=!1){let r=T2(e,t);if(!r)throw new Error(`Invalid descrip...
  function T2 (line 140) | function T2(e,t=!1){let r=t?e.match(FZe):e.match(NZe);if(!r)return null;...
  function Rp (line 140) | function Rp(e,t=!1){let r=PQ(e,t);if(!r)throw new Error(`Invalid locator...
  function PQ (line 140) | function PQ(e,t=!1){let r=t?e.match(OZe):e.match(LZe);if(!r)return null;...
  function Xd (line 140) | function Xd(e,t){let r=e.match(MZe);if(r===null)throw new Error(`Invalid...
  function UZe (line 140) | function UZe(e,t){try{return Xd(e,t)}catch{return null}}
  function _Ze (line 140) | function _Ze(e,{protocol:t}){let{selector:r,params:s}=Xd(e,{requireProto...
  function hce (line 140) | function hce(e){return e=e.replaceAll("%","%25"),e=e.replaceAll(":","%3A...
  function HZe (line 140) | function HZe(e){return e===null?!1:Object.entries(e).length>0}
  function xQ (line 140) | function xQ({protocol:e,source:t,selector:r,params:s}){let a="";return e...
  function jZe (line 140) | function jZe(e){let{params:t,protocol:r,source:s,selector:a}=Xd(e);for(l...
  function fn (line 140) | function fn(e){return e.scope?`@${e.scope}/${e.name}`:`${e.name}`}
  function GZe (line 140) | function GZe(e,t){return e.scope?xa(t,`${e.scope}__${e.name}`):xa(t,e.na...
  function qZe (line 140) | function qZe(e,t){if(e.scope!==t)return e;let r=e.name.indexOf("__");if(...
  function hl (line 140) | function hl(e){return e.scope?`@${e.scope}/${e.name}@${e.range}`:`${e.na...
  function gl (line 140) | function gl(e){return e.scope?`@${e.scope}/${e.name}@${e.reference}`:`${...
  function l8 (line 140) | function l8(e){return e.scope!==null?`@${e.scope}-${e.name}`:e.name}
  function oI (line 140) | function oI(e){let{protocol:t,selector:r}=Xd(e.reference),s=t!==null?t.r...
  function $i (line 140) | function $i(e,t){return t.scope?`${jt(e,`@${t.scope}/`,gt.SCOPE)}${jt(e,...
  function kQ (line 140) | function kQ(e){if(e.startsWith(P2)){let t=kQ(e.substring(e.indexOf("#")+...
  function aI (line 140) | function aI(e,t){return`${jt(e,kQ(t),gt.RANGE)}`}
  function oi (line 140) | function oi(e,t){return`${$i(e,t)}${jt(e,"@",gt.RANGE)}${aI(e,t.range)}`}
  function F2 (line 140) | function F2(e,t){return`${jt(e,kQ(t),gt.REFERENCE)}`}
  function Vr (line 140) | function Vr(e,t){return`${$i(e,t)}${jt(e,"@",gt.REFERENCE)}${F2(e,t.refe...
  function M4 (line 140) | function M4(e){return`${fn(e)}@${kQ(e.reference)}`}
  function lI (line 140) | function lI(e){return Ys(e,[t=>fn(t),t=>t.range])}
  function N2 (line 140) | function N2(e,t){return $i(e,t.anchoredLocator)}
  function D2 (line 140) | function D2(e,t,r){let s=Qp(t)?k2(t):t;return r===null?`${oi(e,s)} \u219...
  function U4 (line 140) | function U4(e,t,r){return r===null?`${Vr(e,t)}`:`${Vr(e,t)} (via ${aI(e,...
  function p8 (line 140) | function p8(e){return`node_modules/${fn(e)}`}
  function QQ (line 140) | function QQ(e,t){return e.conditions?SZe(e.conditions,r=>{let[,s,a]=r.ma...
  function O2 (line 140) | function O2(e){let t=new Set;if("children"in e)t.add(e);else for(let r o...
  method supportsDescriptor (line 140) | supportsDescriptor(t,r){return!!(t.range.startsWith(e.protocol)||r.proje...
  method supportsLocator (line 140) | supportsLocator(t,r){return!!t.reference.startsWith(e.protocol)}
  method shouldPersistResolution (line 140) | shouldPersistResolution(t,r){return!1}
  method bindDescriptor (line 140) | bindDescriptor(t,r,s){return t}
  method getResolutionDependencies (line 140) | getResolutionDependencies(t,r){return{}}
  method getCandidates (line 140) | async getCandidates(t,r,s){return[s.project.getWorkspaceByDescriptor(t)....
  method getSatisfying (line 140) | async getSatisfying(t,r,s,a){let[n]=await this.getCandidates(t,r,a);retu...
  method resolve (line 140) | async resolve(t,r){let s=r.project.getWorkspaceByCwd(t.reference.slice(e...
  function eA (line 140) | function eA(e,t,r=!1){if(!e)return!1;let s=`${t}${r}`,a=wce.get(s);if(ty...
  function dl (line 140) | function dl(e){if(e.indexOf(":")!==-1)return null;let t=Bce.get(e);if(ty...
  function KZe (line 140) | function KZe(e){let t=YZe.exec(e);return t?t[1]:null}
  function vce (line 140) | function vce(e){if(e.semver===Tp.default.Comparator.ANY)return{gt:null,l...
  function h8 (line 140) | function h8(e){if(e.length===0)return null;let t=null,r=null;for(let s o...
  function Sce (line 140) | function Sce(e){if(e.gt&&e.lt){if(e.gt[0]===">="&&e.lt[0]==="<="&&e.gt[1...
  function g8 (line 140) | function g8(e){let t=e.map(JZe).map(s=>dl(s).set.map(a=>a.map(n=>vce(n))...
  function JZe (line 140) | function JZe(e){let t=e.split("||");if(t.length>1){let r=new Set;for(let...
  function bce (line 140) | function bce(e){let t=e.match(/^[ \t]+/m);return t?t[0]:"  "}
  function Pce (line 140) | function Pce(e){return e.charCodeAt(0)===65279?e.slice(1):e}
  function ka (line 140) | function ka(e){return e.replace(/\\/g,"/")}
  function RQ (line 140) | function RQ(e,{yamlCompatibilityMode:t}){return t?k4(e):typeof e>"u"||ty...
  function xce (line 140) | function xce(e,t){let r=t.search(/[^!]/);if(r===-1)return"invalid";let s...
  function d8 (line 140) | function d8(e,t){return t.length===1?xce(e,t[0]):`(${t.map(r=>xce(e,r))....
  method constructor (line 140) | constructor(){this.indent="  ";this.name=null;this.version=null;this.os=...
  method tryFind (line 140) | static async tryFind(t,{baseFs:r=new Yn}={}){let s=K.join(t,"package.jso...
  method find (line 140) | static async find(t,{baseFs:r}={}){let s=await e.tryFind(t,{baseFs:r});i...
  method fromFile (line 140) | static async fromFile(t,{baseFs:r=new Yn}={}){let s=new e;return await s...
  method fromText (line 140) | static fromText(t){let r=new e;return r.loadFromText(t),r}
  method loadFromText (line 140) | loadFromText(t){let r;try{r=JSON.parse(Pce(t)||"{}")}catch(s){throw s.me...
  method loadFile (line 140) | async loadFile(t,{baseFs:r=new Yn}){let s=await r.readFilePromise(t,"utf...
  method load (line 140) | load(t,{yamlCompatibilityMode:r=!1}={}){if(typeof t!="object"||t===null)...
  method getForScope (line 140) | getForScope(t){switch(t){case"dependencies":return this.dependencies;cas...
  method hasConsumerDependency (line 140) | hasConsumerDependency(t){return!!(this.dependencies.has(t.identHash)||th...
  method hasHardDependency (line 140) | hasHardDependency(t){return!!(this.dependencies.has(t.identHash)||this.d...
  method hasSoftDependency (line 140) | hasSoftDependency(t){return!!this.peerDependencies.has(t.identHash)}
  method hasDependency (line 140) | hasDependency(t){return!!(this.hasHardDependency(t)||this.hasSoftDepende...
  method getConditions (line 140) | getConditions(){let t=[];return this.os&&this.os.length>0&&t.push(d8("os...
  method ensureDependencyMeta (line 140) | ensureDependencyMeta(t){if(t.range!=="unknown"&&!kce.default.valid(t.ran...
  method ensurePeerDependencyMeta (line 140) | ensurePeerDependencyMeta(t){if(t.range!=="unknown")throw new Error(`Inva...
  method setRawField (line 140) | setRawField(t,r,{after:s=[]}={}){let a=new Set(s.filter(n=>Object.hasOwn...
  method exportTo (line 140) | exportTo(t,{compatibilityMode:r=!0}={}){if(Object.assign(t,this.raw),thi...
  function ZZe (line 140) | function ZZe(e){return typeof e.reportCode<"u"}
  method constructor (line 140) | constructor(r,s,a){super(s);this.reportExtra=a;this.reportCode=r}
  method constructor (line 140) | constructor(){this.cacheHits=new Set;this.cacheMisses=new Set;this.repor...
  method getRecommendedLength (line 140) | getRecommendedLength(){return 180}
  method reportCacheHit (line 140) | reportCacheHit(t){this.cacheHits.add(t.locatorHash)}
  method reportCacheMiss (line 140) | reportCacheMiss(t,r){this.cacheMisses.add(t.locatorHash)}
  method progressViaCounter (line 140) | static progressViaCounter(t){let r=0,s,a=new Promise(p=>{s=p}),n=p=>{let...
  method progressViaTitle (line 140) | static progressViaTitle(){let t,r,s=new Promise(c=>{r=c}),a=g4(c=>{let f...
  method startProgressPromise (line 140) | async startProgressPromise(t,r){let s=this.reportProgress(t);try{return ...
  method startProgressSync (line 140) | startProgressSync(t,r){let s=this.reportProgress(t);try{return r(t)}fina...
  method reportInfoOnce (line 140) | reportInfoOnce(t,r,s){let a=s&&s.key?s.key:r;this.reportedInfos.has(a)||...
  method reportWarningOnce (line 140) | reportWarningOnce(t,r,s){let a=s&&s.key?s.key:r;this.reportedWarnings.ha...
  method reportErrorOnce (line 140) | reportErrorOnce(t,r,s){let a=s&&s.key?s.key:r;this.reportedErrors.has(a)...
  method reportExceptionOnce (line 140) | reportExceptionOnce(t){ZZe(t)?this.reportErrorOnce(t.reportCode,t.messag...
  method createStreamReporter (line 140) | createStreamReporter(t=null){let r=new Qce.PassThrough,s=new Rce.StringD...
  method constructor (line 141) | constructor(t){this.fetchers=t}
  method supports (line 141) | supports(t,r){return!!this.tryFetcher(t,r)}
  method getLocalPath (line 141) | getLocalPath(t,r){return this.getFetcher(t,r).getLocalPath(t,r)}
  method fetch (line 141) | async fetch(t,r){return await this.getFetcher(t,r).fetch(t,r)}
  method tryFetcher (line 141) | tryFetcher(t,r){let s=this.fetchers.find(a=>a.supports(t,r));return s||n...
  method getFetcher (line 141) | getFetcher(t,r){let s=this.fetchers.find(a=>a.supports(t,r));if(!s)throw...
  method constructor (line 141) | constructor(t){this.resolvers=t.filter(r=>r)}
  method supportsDescriptor (line 141) | supportsDescriptor(t,r){return!!this.tryResolverByDescriptor(t,r)}
  method supportsLocator (line 141) | supportsLocator(t,r){return!!this.tryResolverByLocator(t,r)}
  method shouldPersistResolution (line 141) | shouldPersistResolution(t,r){return this.getResolverByLocator(t,r).shoul...
  method bindDescriptor (line 141) | bindDescriptor(t,r,s){return this.getResolverByDescriptor(t,s).bindDescr...
  method getResolutionDependencies (line 141) | getResolutionDependencies(t,r){return this.getResolverByDescriptor(t,r)....
  method getCandidates (line 141) | async getCandidates(t,r,s){return await this.getResolverByDescriptor(t,s...
  method getSatisfying (line 141) | async getSatisfying(t,r,s,a){return this.getResolverByDescriptor(t,a).ge...
  method resolve (line 141) | async resolve(t,r){return await this.getResolverByLocator(t,r).resolve(t...
  method tryResolverByDescriptor (line 141) | tryResolverByDescriptor(t,r){let s=this.resolvers.find(a=>a.supportsDesc...
  method getResolverByDescriptor (line 141) | getResolverByDescriptor(t,r){let s=this.resolvers.find(a=>a.supportsDesc...
  method tryResolverByLocator (line 141) | tryResolverByLocator(t,r){let s=this.resolvers.find(a=>a.supportsLocator...
  method getResolverByLocator (line 141) | getResolverByLocator(t,r){let s=this.resolvers.find(a=>a.supportsLocator...
  method supports (line 141) | supports(t){return!!t.reference.startsWith("virtual:")}
  method getLocalPath (line 141) | getLocalPath(t,r){let s=t.reference.indexOf("#");if(s===-1)throw new Err...
  method fetch (line 141) | async fetch(t,r){let s=t.reference.indexOf("#");if(s===-1)throw new Erro...
  method getLocatorFilename (line 141) | getLocatorFilename(t){return oI(t)}
  method ensureVirtualLink (line 141) | async ensureVirtualLink(t,r,s){let a=r.packageFs.getRealPath(),n=s.proje...
  method isVirtualDescriptor (line 141) | static isVirtualDescriptor(t){return!!t.range.startsWith(e.protocol)}
  method isVirtualLocator (line 141) | static isVirtualLocator(t){return!!t.reference.startsWith(e.protocol)}
  method supportsDescriptor (line 141) | supportsDescriptor(t,r){return e.isVirtualDescriptor(t)}
  method supportsLocator (line 141) | supportsLocator(t,r){return e.isVirtualLocator(t)}
  method shouldPersistResolution (line 141) | shouldPersistResolution(t,r){return!1}
  method bindDescriptor (line 141) | bindDescriptor(t,r,s){throw new Error('Assertion failed: calling "bindDe...
  method getResolutionDependencies (line 141) | getResolutionDependencies(t,r){throw new Error('Assertion failed: callin...
  method getCandidates (line 141) | async getCandidates(t,r,s){throw new Error('Assertion failed: calling "g...
  method getSatisfying (line 141) | async getSatisfying(t,r,s,a){throw new Error('Assertion failed: calling ...
  method resolve (line 141) | async resolve(t,r){throw new Error('Assertion failed: calling "resolve" ...
  method supports (line 141) | supports(t){return!!t.reference.startsWith(Ii.protocol)}
  method getLocalPath (line 141) | getLocalPath(t,r){return this.getWorkspace(t,r).cwd}
  method fetch (line 141) | async fetch(t,r){let s=this.getWorkspace(t,r).cwd;return{packageFs:new b...
  method getWorkspace (line 141) | getWorkspace(t,r){return r.project.getWorkspaceByCwd(t.reference.slice(I...
  function L2 (line 141) | function L2(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}
  function Fce (line 141) | function Fce(e){return typeof e>"u"?3:L2(e)?0:Array.isArray(e)?1:2}
  function B8 (line 141) | function B8(e,t){return Object.hasOwn(e,t)}
  function $Ze (line 141) | function $Ze(e){return L2(e)&&B8(e,"onConflict")&&typeof e.onConflict=="...
  function eXe (line 141) | function eXe(e){if(typeof e>"u")return{onConflict:"default",value:e};if(...
  function Nce (line 141) | function Nce(e,t){let r=L2(e)&&B8(e,t)?e[t]:void 0;return eXe(r)}
  function pI (line 141) | function pI(e,t){return[e,t,Oce]}
  function v8 (line 141) | function v8(e){return Array.isArray(e)?e[2]===Oce:!1}
  function C8 (line 141) | function C8(e,t){if(L2(e)){let r={};for(let s of Object.keys(e))r[s]=C8(...
  function w8 (line 141) | function w8(e,t,r,s,a){let n,c=[],f=a,p=0;for(let E=a-1;E>=s;--E){let[C,...
  function Lce (line 141) | function Lce(e){return w8(e.map(([t,r])=>[t,{".":r}]),[],".",0,e.length)}
  function M2 (line 141) | function M2(e){return v8(e)?e[1]:e}
  function FQ (line 141) | function FQ(e){let t=v8(e)?e[1]:e;if(Array.isArray(t))return t.map(r=>FQ...
  function S8 (line 141) | function S8(e){return v8(e)?e[0]:null}
  function b8 (line 141) | function b8(){if(process.platform==="win32"){let e=fe.toPortablePath(pro...
  function hI (line 141) | function hI(){return fe.toPortablePath((0,D8.homedir)()||"/usr/local/sha...
  function P8 (line 141) | function P8(e,t){let r=K.relative(t,e);return r&&!r.startsWith("..")&&!K...
  method constructor (line 141) | constructor(t){let{proxy:r,proxyRequestOptions:s,...a}=t;super(a),this.p...
  method createConnection (line 141) | createConnection(t,r){let s={...this.proxyRequestOptions,method:"CONNECT...
  method constructor (line 141) | constructor(t){let{proxy:r,proxyRequestOptions:s,...a}=t;super(a),this.p...
  method createConnection (line 141) | createConnection(t,r){let s={...this.proxyRequestOptions,method:"CONNECT...
  function rXe (line 141) | function rXe(e){return Wce.includes(e)}
  function iXe (line 141) | function iXe(e){return nXe.includes(e)}
  function oXe (line 141) | function oXe(e){return sXe.includes(e)}
  function gI (line 141) | function gI(e){return t=>typeof t===e}
  function Pe (line 141) | function Pe(e){if(e===null)return"null";switch(typeof e){case"undefined"...
  method constructor (line 141) | constructor(t){super(t||"Promise was canceled"),this.name="CancelError"}
  method isCanceled (line 141) | get isCanceled(){return!0}
  method fn (line 141) | static fn(t){return(...r)=>new e((s,a,n)=>{r.push(n),t(...r).then(s,a)})}
  method constructor (line 141) | constructor(t){this._cancelHandlers=[],this._isPending=!0,this._isCancel...
  method then (line 141) | then(t,r){return this._promise.then(t,r)}
  method catch (line 141) | catch(t){return this._promise.catch(t)}
  method finally (line 141) | finally(t){return this._promise.finally(t)}
  method cancel (line 141) | cancel(t){if(!(!this._isPending||this._isCanceled)){if(this._cancelHandl...
  method isCanceled (line 141) | get isCanceled(){return this._isCanceled}
  function pXe (line 141) | function pXe(e){return e.encrypted}
  method constructor (line 141) | constructor({cache:t=new Map,maxTtl:r=1/0,fallbackDuration:s=3600,errorT...
  method servers (line 141) | set servers(t){this.clear(),this._resolver.setServers(t)}
  method servers (line 141) | get servers(){return this._resolver.getServers()}
  method lookup (line 141) | lookup(t,r,s){if(typeof r=="function"?(s=r,r={}):typeof r=="number"&&(r=...
  method lookupAsync (line 141) | async lookupAsync(t,r={}){typeof r=="number"&&(r={family:r});let s=await...
  method query (line 141) | async query(t){let r=await this._cache.get(t);if(!r){let s=this._pending...
  method _resolve (line 141) | async _resolve(t){let r=async h=>{try{return await h}catch(E){if(E.code=...
  method _lookup (line 141) | async _lookup(t){try{return{entries:await this._dnsLookup(t,{all:!0}),ca...
  method _set (line 141) | async _set(t,r,s){if(this.maxTtl>0&&s>0){s=Math.min(s,this.maxTtl)*1e3,r...
  method queryAndCache (line 141) | async queryAndCache(t){if(this._hostnamesToFallback.has(t))return this._...
  method _tick (line 141) | _tick(t){let r=this._nextRemovalTime;(!r||t<r)&&(clearTimeout(this._remo...
  method install (line 141) | install(t){if(eue(t),dI in t)throw new Error("CacheableLookup has been a...
  method uninstall (line 141) | uninstall(t){if(eue(t),t[dI]){if(t[j8]!==this)throw new Error("The agent...
  method updateInterfaceInfo (line 141) | updateInterfaceInfo(){let{_iface:t}=this;this._iface=tue(),(t.has4&&!thi...
  method clear (line 141) | clear(t){if(t){this._cache.delete(t);return}this._cache.clear()}
  function lue (line 141) | function lue(e,t){if(e&&t)return lue(e)(t);if(typeof e!="function")throw...
  function HQ (line 141) | function HQ(e){var t=function(){return t.called?t.value:(t.called=!0,t.v...
  function Aue (line 141) | function Aue(e){var t=function(){if(t.called)throw new Error(t.onceError...
  method constructor (line 141) | constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}
  function qQ (line 141) | async function qQ(e,t){if(!e)return Promise.reject(new Error("Expected a...
  function tm (line 141) | function tm(e){let t=parseInt(e,10);return isFinite(t)?t:0}
  function KXe (line 141) | function KXe(e){return e?WXe.has(e.status):!0}
  function J8 (line 141) | function J8(e){let t={};if(!e)return t;let r=e.trim().split(/,/);for(let...
  function JXe (line 141) | function JXe(e){let t=[];for(let r in e){let s=e[r];t.push(s===!0?r:r+"=...
  method constructor (line 141) | constructor(t,r,{shared:s,cacheHeuristic:a,immutableMinTimeToLive:n,igno...
  method now (line 141) | now(){return Date.now()}
  method storable (line 141) | storable(){return!!(!this._reqcc["no-store"]&&(this._method==="GET"||thi...
  method _hasExplicitExpiration (line 141) | _hasExplicitExpiration(){return this._isShared&&this._rescc["s-maxage"]|...
  method _assertRequestHasHeaders (line 141) | _assertRequestHasHeaders(t){if(!t||!t.headers)throw Error("Request heade...
  method satisfiesWithoutRevalidation (line 141) | satisfiesWithoutRevalidation(t){this._assertRequestHasHeaders(t);let r=J...
  method _requestMatches (line 141) | _requestMatches(t,r){return(!this._url||this._url===t.url)&&this._host==...
  method _allowsStoringAuthenticated (line 141) | _allowsStoringAuthenticated(){return this._rescc["must-revalidate"]||thi...
  method _varyMatches (line 141) | _varyMatches(t){if(!this._resHeaders.vary)return!0;if(this._resHeaders.v...
  method _copyWithoutHopByHopHeaders (line 141) | _copyWithoutHopByHopHeaders(t){let r={};for(let s in t)VXe[s]||(r[s]=t[s...
  method responseHeaders (line 141) | responseHeaders(){let t=this._copyWithoutHopByHopHeaders(this._resHeader...
  method date (line 141) | date(){let t=Date.parse(this._resHeaders.date);return isFinite(t)?t:this...
  method age (line 141) | age(){let t=this._ageValue(),r=(this.now()-this._responseTime)/1e3;retur...
  method _ageValue (line 141) | _ageValue(){return tm(this._resHeaders.age)}
  method maxAge (line 141) | maxAge(){if(!this.storable()||this._rescc["no-cache"]||this._isShared&&t...
  method timeToLive (line 141) | timeToLive(){let t=this.maxAge()-this.age(),r=t+tm(this._rescc["stale-if...
  method stale (line 141) | stale(){return this.maxAge()<=this.age()}
  method _useStaleIfError (line 141) | _useStaleIfError(){return this.maxAge()+tm(this._rescc["stale-if-error"]...
  method useStaleWhileRevalidate (line 141) | useStaleWhileRevalidate(){return this.maxAge()+tm(this._rescc["stale-whi...
  method fromObject (line 141) | static fromObject(t){return new this(void 0,void 0,{_fromObject:t})}
  method _fromObject (line 141) | _fromObject(t){if(this._responseTime)throw Error("Reinitialized");if(!t|...
  method toObject (line 141) | toObject(){return{v:1,t:this._responseTime,sh:this._isShared,ch:this._ca...
  method revalidationHeaders (line 141) | revalidationHeaders(t){this._assertRequestHasHeaders(t);let r=this._copy...
  method revalidatedPolicy (line 141) | revalidatedPolicy(t,r){if(this._assertRequestHasHeaders(t),this._useStal...
  method constructor (line 141) | constructor(t,r,s,a){if(typeof t!="number")throw new TypeError("Argument...
  method _read (line 141) | _read(){this.push(this.body),this.push(null)}
  method constructor (line 141) | constructor(t,{emitErrors:r=!0,...s}={}){if(super(),this.opts={namespace...
  method _checkIterableAdaptar (line 141) | _checkIterableAdaptar(){return Rue.includes(this.opts.store.opts.dialect...
  method _getKeyPrefix (line 141) | _getKeyPrefix(t){return`${this.opts.namespace}:${t}`}
  method _getKeyPrefixArray (line 141) | _getKeyPrefixArray(t){return t.map(r=>`${this.opts.namespace}:${r}`)}
  method _getKeyUnprefix (line 141) | _getKeyUnprefix(t){return t.split(":").splice(1).join(":")}
  method get (line 141) | get(t,r){let{store:s}=this.opts,a=Array.isArray(t),n=a?this._getKeyPrefi...
  method set (line 141) | set(t,r,s){let a=this._getKeyPrefix(t);typeof s>"u"&&(s=this.opts.ttl),s...
  method delete (line 141) | delete(t){let{store:r}=this.opts;if(Array.isArray(t)){let a=this._getKey...
  method clear (line 141) | clear(){let{store:t}=this.opts;return Promise.resolve().then(()=>t.clear...
  method has (line 141) | has(t){let r=this._getKeyPrefix(t),{store:s}=this.opts;return Promise.re...
  method disconnect (line 141) | disconnect(){let{store:t}=this.opts;if(typeof t.disconnect=="function")r...
  method constructor (line 141) | constructor(t,r){if(typeof t!="function")throw new TypeError("Parameter ...
  method createCacheableRequest (line 141) | createCacheableRequest(t){return(r,s)=>{let a;if(typeof r=="string")a=eH...
  function u$e (line 141) | function u$e(e){let t={...e};return t.path=`${e.pathname||"/"}${e.search...
  function eH (line 141) | function eH(e){return{protocol:e.protocol,auth:e.auth,hostname:e.hostnam...
  method constructor (line 141) | constructor(e){super(e.message),this.name="RequestError",Object.assign(t...
  method constructor (line 141) | constructor(e){super(e.message),this.name="CacheError",Object.assign(thi...
  method get (line 141) | get(){let n=e[a];return typeof n=="function"?n.bind(e):n}
  method set (line 141) | set(n){e[a]=n}
  method transform (line 141) | transform(f,p,h){s=!1,h(null,f)}
  method flush (line 141) | flush(f){f()}
  method destroy (line 141) | destroy(f,p){e.destroy(),p(f)}
  method constructor (line 141) | constructor(t={}){if(!(t.maxSize&&t.maxSize>0))throw new TypeError("`max...
  method _set (line 141) | _set(t,r){if(this.cache.set(t,r),this._size++,this._size>=this.maxSize){...
  method get (line 141) | get(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.ha...
  method set (line 141) | set(t,r){return this.cache.has(t)?this.cache.set(t,r):this._set(t,r),this}
  method has (line 141) | has(t){return this.cache.has(t)||this.oldCache.has(t)}
  method peek (line 141) | peek(t){if(this.cache.has(t))return this.cache.get(t);if(this.oldCache.h...
  method delete (line 141) | delete(t){let r=this.cache.delete(t);return r&&this._size--,this.oldCach...
  method clear (line 141) | clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}
  method keys (line 141) | *keys(){for(let[t]of this)yield t}
  method values (line 141) | *values(){for(let[,t]of this)yield t}
  method [Symbol.iterator] (line 141) | *[Symbol.iterator](){for(let t of this.cache)yield t;for(let t of this.o...
  method size (line 141) | get size(){let t=0;for(let r of this.oldCache.keys())this.cache.has(r)||...
  method constructor (line 141) | constructor({timeout:t=6e4,maxSessions:r=1/0,maxFreeSessions:s=10,maxCac...
  method normalizeOrigin (line 141) | static normalizeOrigin(t,r){return typeof t=="string"&&(t=new URL(t)),r&...
  method normalizeOptions (line 141) | normalizeOptions(t){let r="";if(t)for(let s of E$e)t[s]&&(r+=`:${t[s]}`)...
  method _tryToCreateNewSession (line 141) | _tryToCreateNewSession(t,r){if(!(t in this.queue)||!(r in this.queue[t])...
  method getSession (line 141) | getSession(t,r,s){return new Promise((a,n)=>{Array.isArray(s)?(s=[...s],...
  method request (line 142) | request(t,r,s,a){return new Promise((n,c)=>{this.getSession(t,r,[{reject...
  method createConnection (line 142) | createConnection(t,r){return e.connect(t,r)}
  method connect (line 142) | static connect(t,r){r.ALPNProtocols=["h2"];let s=t.port||443,a=t.hostnam...
  method closeFreeSessions (line 142) | closeFreeSessions(){for(let t of Object.values(this.sessions))for(let r ...
  method destroy (line 142) | destroy(t){for(let r of Object.values(this.sessions))for(let s of r)s.de...
  method freeSessions (line 142) | get freeSessions(){return que({agent:this,isFree:!0})}
  method busySessions (line 142) | get busySessions(){return que({agent:this,isFree:!1})}
  method constructor (line 142) | constructor(t,r){super({highWaterMark:r,autoDestroy:!1}),this.statusCode...
  method _destroy (line 142) | _destroy(t){this.req._request.destroy(t)}
  method setTimeout (line 142) | setTimeout(t,r){return this.req.setTimeout(t,r),this}
  method _dump (line 142) | _dump(){this._dumped||(this._dumped=!0,this.removeAllListeners("data"),t...
  method _read (line 142) | _read(){this.req&&this.req._request.resume()}
  method constructor (line 142) | constructor(...a){super(typeof r=="string"?r:r(a)),this.name=`${super.na...
  method constructor (line 142) | constructor(t,r,s){super({autoDestroy:!1});let a=typeof t=="string"||t i...
  method method (line 142) | get method(){return this[ea][ife]}
  method method (line 142) | set method(t){t&&(this[ea][ife]=t.toUpperCase())}
  method path (line 142) | get path(){return this[ea][sfe]}
  method path (line 142) | set path(t){t&&(this[ea][sfe]=t)}
  method _mustNotHaveABody (line 142) | get _mustNotHaveABody(){return this.method==="GET"||this.method==="HEAD"...
  method _write (line 142) | _write(t,r,s){if(this._mustNotHaveABody){s(new Error("The GET, HEAD and ...
  method _final (line 142) | _final(t){if(this.destroyed)return;this.flushHeaders();let r=()=>{if(thi...
  method abort (line 142) | abort(){this.res&&this.res.complete||(this.aborted||process.nextTick(()=...
  method _destroy (line 142) | _destroy(t,r){this.res&&this.res._dump(),this._request&&this._request.de...
  method flushHeaders (line 142) | async flushHeaders(){if(this[YQ]||this.destroyed)return;this[YQ]=!0;let ...
  method getHeader (line 142) | getHeader(t){if(typeof t!="string")throw new cH("name","string",t);retur...
  method headersSent (line 142) | get headersSent(){return this[YQ]}
  method removeHeader (line 142) | removeHeader(t){if(typeof t!="string")throw new cH("name","string",t);if...
  method setHeader (line 142) | setHeader(t,r){if(this.headersSent)throw new rfe("set");if(typeof t!="st...
  method setNoDelay (line 142) | setNoDelay(){}
  method setSocketKeepAlive (line 142) | setSocketKeepAlive(){}
  method setTimeout (line 142) | setTimeout(t,r){let s=()=>this._request.setTimeout(t,r);return this._req...
  method maxHeadersCount (line 142) | get maxHeadersCount(){if(!this.destroyed&&this._request)return this._req...
  method maxHeadersCount (line 142) | set maxHeadersCount(t){}
  function eet (line 142) | function eet(e,t,r){let s={};for(let a of r)s[a]=(...n)=>{t.emit(a,...n)...
  method once (line 142) | once(t,r,s){t.once(r,s),e.push({origin:t,event:r,fn:s})}
  method unhandleAll (line 142) | unhandleAll(){for(let t of e){let{origin:r,event:s,fn:a}=t;r.removeListe...
  method constructor (line 142) | constructor(t,r){super(`Timeout awaiting '${r}' for ${t}ms`),this.event=...
  method constructor (line 142) | constructor(){this.weakMap=new WeakMap,this.map=new Map}
  method set (line 142) | set(t,r){typeof t=="object"?this.weakMap.set(t,r):this.map.set(t,r)}
  method get (line 142) | get(t){return typeof t=="object"?this.weakMap.get(t):this.map.get(t)}
  method has (line 142) | has(t){return typeof t=="object"?this.weakMap.has(t):this.map.has(t)}
  function bet (line 142) | function bet(e){for(let t in e){let r=e[t];if(!lt.default.string(r)&&!lt...
  function Pet (line 142) | function Pet(e){return lt.default.object(e)&&!("statusCode"in e)}
  method constructor (line 142) | constructor(t,r,s){var a;if(super(t),Error.captureStackTrace(this,this.c...
  method constructor (line 146) | constructor(t){super(`Redirected ${t.options.maxRedirects} times. Aborti...
  method constructor (line 146) | constructor(t){super(`Response code ${t.statusCode} (${t.statusMessage})...
  method constructor (line 146) | constructor(t,r){super(t.message,t,r),this.name="CacheError"}
  method constructor (line 146) | constructor(t,r){super(t.message,t,r),this.name="UploadError"}
  method constructor (line 146) | constructor(t,r,s){super(t.message,t,s),this.name="TimeoutError",this.ev...
  method constructor (line 146) | constructor(t,r){super(t.message,t,r),this.name="ReadError"}
  method constructor (line 146) | constructor(t){super(`Unsupported protocol "${t.url.protocol}"`,{},t),th...
  method constructor (line 146) | constructor(t,r={},s){super({autoDestroy:!1,highWaterMark:0}),this[CI]=0...
  method normalizeArguments (line 146) | static normalizeArguments(t,r,s){var a,n,c,f,p;let h=r;if(lt.default.obj...
  method _lockWrite (line 146) | _lockWrite(){let t=()=>{throw new TypeError("The payload has been alread...
  method _unlockWrite (line 146) | _unlockWrite(){this.write=super.write,this.end=super.end}
  method _finalizeBody (line 146) | async _finalizeBody(){let{options:t}=this,{headers:r}=t,s=!lt.default.un...
  method _onResponseBase (line 146) | async _onResponseBase(t){let{options:r}=this,{url:s}=r;this[Vfe]=t,r.dec...
  method _onResponse (line 146) | async _onResponse(t){try{await this._onResponseBase(t)}catch(r){this._be...
  method _onRequest (line 146) | _onRequest(t){let{options:r}=this,{timeout:s,url:a}=r;Aet.default(t),thi...
  method _createCacheableRequest (line 146) | async _createCacheableRequest(t,r){return new Promise((s,a)=>{Object.ass...
  method _makeRequest (line 146) | async _makeRequest(){var t,r,s,a,n;let{options:c}=this,{headers:f}=c;for...
  method _error (line 146) | async _error(t){try{for(let r of this.options.hooks.beforeError)t=await ...
  method _beforeError (line 146) | _beforeError(t){if(this[vI])return;let{options:r}=this,s=this.retryCount...
  method _read (line 146) | _read(){this[XQ]=!0;let t=this[$Q];if(t&&!this[vI]){t.readableLength&&(t...
  method _write (line 146) | _write(t,r,s){let a=()=>{this._writeRequest(t,r,s)};this.requestInitiali...
  method _writeRequest (line 146) | _writeRequest(t,r,s){this[Eo].destroyed||(this._progressCallbacks.push((...
  method _final (line 146) | _final(t){let r=()=>{for(;this._progressCallbacks.length!==0;)this._prog...
  method _destroy (line 146) | _destroy(t,r){var s;this[vI]=!0,clearTimeout(this[Yfe]),Eo in this&&(thi...
  method _isAboutToError (line 146) | get _isAboutToError(){return this[vI]}
  method ip (line 146) | get ip(){var t;return(t=this.socket)===null||t===void 0?void 0:t.remoteA...
  method aborted (line 146) | get aborted(){var t,r,s;return((r=(t=this[Eo])===null||t===void 0?void 0...
  method socket (line 146) | get socket(){var t,r;return(r=(t=this[Eo])===null||t===void 0?void 0:t.s...
  method downloadProgress (line 146) | get downloadProgress(){let t;return this[II]?t=this[CI]/this[II]:this[II...
  method uploadProgress (line 146) | get uploadProgress(){let t;return this[wI]?t=this[BI]/this[wI]:this[wI]=...
  method timings (line 146) | get timings(){var t;return(t=this[Eo])===null||t===void 0?void 0:t.timings}
  method isFromCache (line 146) | get isFromCache(){return this[qfe]}
  method pipe (line 146) | pipe(t,r){if(this[Wfe])throw new Error("Failed to pipe. The response has...
  method unpipe (line 146) | unpipe(t){return t instanceof RH.ServerResponse&&this[ZQ].delete(t),supe...
  method constructor (line 146) | constructor(t,r){let{options:s}=r.request;super(`${t.message} in "${s.ur...
  method constructor (line 146) | constructor(t){super("Promise was canceled",{},t),this.name="CancelError"}
  method isCanceled (line 146) | get isCanceled(){return!0}
  function eAe (line 146) | function eAe(e){let t,r,s=new Met.EventEmitter,a=new _et((c,f,p)=>{let h...
  function Wet (line 146) | function Wet(e,...t){let r=(async()=>{if(e instanceof qet.RequestError)t...
  function nAe (line 146) | function nAe(e){for(let t of Object.values(e))(rAe.default.plainObject(t...
  function qH (line 146) | async function qH(e){return Zl(gAe,e,()=>le.readFilePromise(e).then(t=>(...
  function ott (line 146) | function ott({statusCode:e,statusMessage:t},r){let s=jt(r,e,gt.NUMBER),a...
  function fR (line 146) | async function fR(e,{configuration:t,customErrorMessage:r}){try{return a...
  function yAe (line 146) | function yAe(e,t){let r=[...t.configuration.get("networkSettings")].sort...
  function z2 (line 146) | async function z2(e,t,{configuration:r,headers:s,jsonRequest:a,jsonRespo...
  function VH (line 146) | async function VH(e,{configuration:t,jsonResponse:r,customErrorMessage:s...
  function att (line 146) | async function att(e,t,{customErrorMessage:r,...s}){return(await fR(z2(e...
  function YH (line 146) | async function YH(e,t,{customErrorMessage:r,...s}){return(await fR(z2(e,...
  function ltt (line 146) | async function ltt(e,{customErrorMessage:t,...r}){return(await fR(z2(e,n...
  function ctt (line 146) | async function ctt(e,t,{configuration:r,headers:s,jsonRequest:a,jsonResp...
  function ptt (line 146) | function ptt(){if(process.platform!=="linux")return null;let e;try{e=le....
  function Z2 (line 146) | function Z2(){return CAe=CAe??{os:(process.env.YARN_IS_TEST_ENV?process....
  function htt (line 146) | function htt(e=Z2()){return e.libc?`${e.os}-${e.cpu}-${e.libc}`:`${e.os}...
  function KH (line 146) | function KH(){let e=Z2();return wAe=wAe??{os:[e.os],cpu:[e.cpu],libc:e.l...
  function mtt (line 146) | function mtt(e){let t=gtt.exec(e);if(!t)return null;let r=t[2]&&t[2].ind...
  function ytt (line 146) | function ytt(){let t=new Error().stack.split(`
  function JH (line 147) | function JH(){return typeof pR.default.availableParallelism<"u"?pR.defau...
  function rj (line 147) | function rj(e,t,r,s,a){let n=M2(r);if(s.isArray||s.type==="ANY"&&Array.i...
  function ZH (line 147) | function ZH(e,t,r,s,a){let n=M2(r);switch(s.type){case"ANY":return FQ(n)...
  function wtt (line 147) | function wtt(e,t,r,s,a){let n=M2(r);if(typeof n!="object"||Array.isArray...
  function Btt (line 147) | function Btt(e,t,r,s,a){let n=M2(r),c=new Map;if(typeof n!="object"||Arr...
  function nj (line 147) | function nj(e,t,{ignoreArrays:r=!1}={}){switch(t.type){case"SHAPE":{if(t...
  function mR (line 147) | function mR(e,t,r){if(t.type==="SECRET"&&typeof e=="string"&&r.hideSecre...
  function vtt (line 147) | function vtt(){let e={};for(let[t,r]of Object.entries(process.env))t=t.t...
  function $H (line 147) | function $H(){let e=`${yR}rc_filename`;for(let[t,r]of Object.entries(pro...
  function BAe (line 147) | async function BAe(e){try{return await le.readFilePromise(e)}catch{retur...
  function Stt (line 147) | async function Stt(e,t){return Buffer.compare(...await Promise.all([BAe(...
  function Dtt (line 147) | async function Dtt(e,t){let[r,s]=await Promise.all([le.statPromise(e),le...
  function Ptt (line 147) | async function Ptt({configuration:e,selfPath:t}){let r=e.get("yarnPath")...
  method constructor (line 147) | constructor(t){this.isCI=Mp.isCI;this.projectCwd=null;this.plugins=new M...
  method create (line 147) | static create(t,r,s){let a=new e(t);typeof r<"u"&&!(r instanceof Map)&&(...
  method find (line 147) | static async find(t,r,{strict:s=!0,usePathCheck:a=null,useRc:n=!0}={}){l...
  method findRcFiles (line 147) | static async findRcFiles(t){let r=$H(),s=[],a=t,n=null;for(;a!==n;){n=a;...
  method findFolderRcFile (line 147) | static async findFolderRcFile(t){let r=K.join(t,Er.rc),s;try{s=await le....
  method findProjectCwd (line 147) | static async findProjectCwd(t){let r=null,s=t,a=null;for(;s!==a;){if(a=s...
  method updateConfiguration (line 147) | static async updateConfiguration(t,r,s={}){let a=$H(),n=K.join(t,a),c=le...
  method addPlugin (line 147) | static async addPlugin(t,r){r.length!==0&&await e.updateConfiguration(t,...
  method updateHomeConfiguration (line 147) | static async updateHomeConfiguration(t){let r=hI();return await e.update...
  method activatePlugin (line 147) | activatePlugin(t,r){this.plugins.set(t,r),typeof r.configuration<"u"&&th...
  method importSettings (line 147) | importSettings(t){for(let[r,s]of Object.entries(t))if(s!=null){if(this.s...
  method useWithSource (line 147) | useWithSource(t,r,s,a){try{this.use(t,r,s,a)}catch(n){throw n.message+=`...
  method use (line 147) | use(t,r,s,{strict:a=!0,overwrite:n=!1}={}){a=a&&this.get("enableStrictSe...
  method get (line 147) | get(t){if(!this.values.has(t))throw new Error(`Invalid configuration key...
  method getSpecial (line 147) | getSpecial(t,{hideSecrets:r=!1,getNativePaths:s=!1}){let a=this.get(t),n...
  method getSubprocessStreams (line 147) | getSubprocessStreams(t,{header:r,prefix:s,report:a}){let n,c,f=le.create...
  method makeResolver (line 148) | makeResolver(){let t=[];for(let r of this.plugins.values())for(let s of ...
  method makeFetcher (line 148) | makeFetcher(){let t=[];for(let r of this.plugins.values())for(let s of r...
  method getLinkers (line 148) | getLinkers(){let t=[];for(let r of this.plugins.values())for(let s of r....
  method getSupportedArchitectures (line 148) | getSupportedArchitectures(){let t=Z2(),r=this.get("supportedArchitecture...
  method isInteractive (line 148) | isInteractive({interactive:t,stdout:r}){return r.isTTY?t??this.get("pref...
  method getPackageExtensions (line 148) | async getPackageExtensions(){if(this.packageExtensions!==null)return thi...
  method normalizeLocator (line 148) | normalizeLocator(t){return dl(t.reference)?Ks(t,`${this.get("defaultProt...
  method normalizeDependency (line 148) | normalizeDependency(t){return dl(t.range)?Mn(t,`${this.get("defaultProto...
  method normalizeDependencyMap (line 148) | normalizeDependencyMap(t){return new Map([...t].map(([r,s])=>[r,this.nor...
  method normalizePackage (line 148) | normalizePackage(t,{packageExtensions:r}){let s=x2(t),a=r.get(t.identHas...
  method getLimit (line 148) | getLimit(t){return Zl(this.limits,t,()=>(0,bAe.default)(this.get(t)))}
  method triggerHook (line 148) | async triggerHook(t,...r){for(let s of this.plugins.values()){let a=s.ho...
  method triggerMultipleHooks (line 148) | async triggerMultipleHooks(t,r){for(let s of r)await this.triggerHook(t,...
  method reduceHook (line 148) | async reduceHook(t,r,...s){let a=r;for(let n of this.plugins.values()){l...
  method firstHook (line 148) | async firstHook(t,...r){for(let s of this.plugins.values()){let a=s.hook...
  function im (line 148) | function im(e){return e!==null&&typeof e.fd=="number"}
  function ij (line 148) | function ij(){}
  function sj (line 148) | function sj(){for(let e of sm)e.kill()}
  function Gu (line 148) | async function Gu(e,t,{cwd:r,env:s=process.env,strict:a=!1,stdin:n=null,...
  function zH (line 148) | async function zH(e,t,{cwd:r,env:s=process.env,encoding:a="utf8",strict:...
  function lj (line 148) | function lj(e,t){let r=xtt.get(t);return typeof r<"u"?128+r:e??1}
  function ktt (line 148) | function ktt(e,t,{configuration:r,report:s}){s.reportError(1,`  ${Zf(r,e...
  method constructor (line 148) | constructor({fileName:t,code:r,signal:s}){let a=ze.create(K.cwd()),n=jt(...
  method constructor (line 148) | constructor({fileName:t,code:r,signal:s,stdout:a,stderr:n}){super({fileN...
  function kAe (line 148) | function kAe(e){xAe=e}
  function tv (line 148) | function tv(){return typeof cj>"u"&&(cj=xAe()),cj}
  function x (line 148) | function x(Je){return r.locateFile?r.locateFile(Je,S):S+Je}
  function Ae (line 148) | function Ae(Je,ot,St){switch(ot=ot||"i8",ot.charAt(ot.length-1)==="*"&&(...
  function Se (line 148) | function Se(Je,ot){Je||ns("Assertion failed: "+ot)}
  function Be (line 148) | function Be(Je){var ot=r["_"+Je];return Se(ot,"Cannot call unknown funct...
  function me (line 148) | function me(Je,ot,St,lr,ee){var ye={string:function(qi){var Fn=0;if(qi!=...
  function ce (line 148) | function ce(Je,ot,St,lr){St=St||[];var ee=St.every(function(Oe){return O...
  function De (line 148) | function De(Je,ot){if(!Je)return"";for(var St=Je+ot,lr=Je;!(lr>=St)&&Re[...
  function Qe (line 148) | function Qe(Je,ot,St,lr){if(!(lr>0))return 0;for(var ee=St,ye=St+lr-1,Oe...
  function it (line 148) | function it(Je,ot,St){return Qe(Je,Re,ot,St)}
  function _ (line 148) | function _(Je){for(var ot=0,St=0;St<Je.length;++St){var lr=Je.charCodeAt...
  function tt (line 148) | function tt(Je){var ot=_(Je)+1,St=qa(ot);return St&&Qe(Je,je,St,ot),St}
  function Ne (line 148) | function Ne(Je,ot){je.set(Je,ot)}
  function ke (line 148) | function ke(Je,ot){return Je%ot>0&&(Je+=ot-Je%ot),Je}
  function z (line 148) | function z(Je){be=Je,r.HEAP_DATA_VIEW=F=new DataView(Je),r.HEAP8=je=new ...
  function Ct (line 148) | function Ct(){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r....
  function qt (line 148) | function qt(){ut=!0,Ns(xe)}
  function ir (line 148) | function ir(){if(r.postRun)for(typeof r.postRun=="function"&&(r.postRun=...
  function Pt (line 148) | function Pt(Je){se.unshift(Je)}
  function dn (line 148) | function dn(Je){xe.unshift(Je)}
  function Pr (line 148) | function Pr(Je){Fe.unshift(Je)}
  function li (line 148) | function li(Je){Ir++,r.monitorRunDependencies&&r.monitorRunDependencies(...
  function So (line 148) | function So(Je){if(Ir--,r.monitorRunDependencies&&r.monitorRunDependenci...
  function ns (line 148) | function ns(Je){r.onAbort&&r.onAbort(Je),Je+="",te(Je),Ee=!0,g=1,Je="abo...
  function Do (line 148) | function Do(Je){return Je.startsWith(so)}
  function oo (line 148) | function oo(Je){try{if(Je==ji&&ae)return new Uint8Array(ae);var ot=Ue(Je...
  function bo (line 148) | function bo(Je,ot){var St,lr,ee;try{ee=oo(Je),lr=new WebAssembly.Module(...
  function RA (line 148) | function RA(){var Je={a:au};function ot(ee,ye){var Oe=ee.exports;r.asm=O...
  function hf (line 148) | function hf(Je){return F.getFloat32(Je,!0)}
  function hh (line 148) | function hh(Je){return F.getFloat64(Je,!0)}
  function gh (line 148) | function gh(Je){return F.getInt16(Je,!0)}
  function ao (line 148) | function ao(Je){return F.getInt32(Je,!0)}
  function Gn (line 148) | function Gn(Je,ot){F.setInt32(Je,ot,!0)}
  function Ns (line 148) | function Ns(Je){for(;Je.length>0;){var ot=Je.shift();if(typeof ot=="func...
  function lo (line 148) | function lo(Je,ot){var St=new Date(ao((Je>>2)*4)*1e3);Gn((ot>>2)*4,St.ge...
  function iu (line 148) | function iu(Je,ot){return lo(Je,ot)}
  function su (line 148) | function su(Je,ot,St){Re.copyWithin(Je,ot,ot+St)}
  function ou (line 148) | function ou(Je){try{return Ce.grow(Je-be.byteLength+65535>>>16),z(Ce.buf...
  function TA (line 148) | function TA(Je){var ot=Re.length;Je=Je>>>0;var St=2147483648;if(Je>St)re...
  function FA (line 148) | function FA(Je){ue(Je)}
  function ua (line 148) | function ua(Je){var ot=Date.now()/1e3|0;return Je&&Gn((Je>>2)*4,ot),ot}
  function fa (line 148) | function fa(){if(fa.called)return;fa.called=!0;var Je=new Date().getFull...
  function NA (line 148) | function NA(Je){fa();var ot=Date.UTC(ao((Je+20>>2)*4)+1900,ao((Je+16>>2)...
  function Po (line 148) | function Po(Je){if(typeof C=="boolean"&&C){var ot;try{ot=Buffer.from(Je,...
  function Ue (line 148) | function Ue(Je){if(Do(Je))return Po(Je.slice(so.length))}
  function pc (line 148) | function pc(Je){if(Je=Je||f,Ir>0||(Ct(),Ir>0))return;function ot(){Tn||(...
  method HEAPU8 (line 148) | get HEAPU8(){return e.HEAPU8}
  function pj (line 148) | function pj(e,t){let r=e.indexOf(t);if(r<=0)return null;let s=r;for(;r>=...
  method openPromise (line 148) | static async openPromise(t,r){let s=new e(r);try{return await t(s)}final...
  method constructor (line 148) | constructor(t={}){let r=t.fileExtensions,s=t.readOnlyArchives,a=typeof r...
  method constructor (line 148) | constructor(t,r){super(t),this.name="Libzip Error",this.code=r}
  method constructor (line 148) | constructor(t){this.filesShouldBeCached=!0;let r="buffer"in t?t.buffer:t...
  method getSymlinkCount (line 148) | getSymlinkCount(){return this.symlinkCount}
  method getListings (line 148) | getListings(){return this.listings}
  method stat (line 148) | stat(t){let r=this.libzip.struct.statS();if(this.libzip.statIndex(this.z...
  method makeLibzipError (line 148) | makeLibzipError(t){let r=this.libzip.struct.errorCodeZip(t),s=this.libzi...
  method setFileSource (line 148) | setFileSource(t,r,s){let a=this.allocateSource(s);try{let n=this.libzip....
  method setMtime (line 148) | setMtime(t,r){if(this.libzip.file.setMtime(this.zip,t,0,r,0)===-1)throw ...
  method getExternalAttributes (line 148) | getExternalAttributes(t){if(this.libzip.file.getExternalAttributes(this....
  method setExternalAttributes (line 148) | setExternalAttributes(t,r,s){if(this.libzip.file.setExternalAttributes(t...
  method locate (line 148) | locate(t){return this.libzip.name.locate(this.zip,t,0)}
  method getFileSource (line 148) | getFileSource(t){let r=this.libzip.struct.statS();if(this.libzip.statInd...
  method deleteEntry (line 148) | deleteEntry(t){if(this.libzip.delete(this.zip,t)===-1)throw this.makeLib...
  method addDirectory (line 148) | addDirectory(t){let r=this.libzip.dir.add(this.zip,t);if(r===-1)throw th...
  method getBufferAndClose (line 148) | getBufferAndClose(){try{if(this.libzip.source.keep(this.lzSource),this.l...
  method allocateBuffer (line 148) | allocateBuffer(t){Buffer.isBuffer(t)||(t=Buffer.from(t));let r=this.libz...
  method allocateUnattachedSource (line 148) | allocateUnattachedSource(t){let r=this.libzip.struct.errorS(),{buffer:s,...
  method allocateSource (line 148) | allocateSource(t){let{buffer:r,byteLength:s}=this.allocateBuffer(t),a=th...
  method discard (line 148) | discard(){this.libzip.discard(this.zip)}
  function Rtt (line 148) | function Rtt(e){if(typeof e=="string"&&String(+e)===e)return+e;if(typeof...
  function wR (line 148) | function wR(){return Buffer.from([80,75,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,...
  method constructor (line 148) | constructor(r,s={}){super();this.listings=new Map;this.entries=new Map;t...
  method getExtractHint (line 148) | getExtractHint(r){for(let s of this.entries.keys()){let a=this.pathUtils...
  method getAllFiles (line 148) | getAllFiles(){return Array.from(this.entries.keys())}
  method getRealPath (line 148) | getRealPath(){if(!this.path)throw new Error("ZipFS don't have real paths...
  method prepareClose (line 148) | prepareClose(){if(!this.ready)throw or.EBUSY("archive closed, close");dd...
  method getBufferAndClose (line 148) | getBufferAndClose(){if(this.prepareClose(),this.entries.size===0)return ...
  method discardAndClose (line 148) | discardAndClose(){this.prepareClose(),this.zipImpl.discard(),this.ready=!1}
  method saveAndClose (line 148) | saveAndClose(){if(!this.path||!this.baseFs)throw new Error("ZipFS cannot...
  method resolve (line 148) | resolve(r){return K.resolve(vt.root,r)}
  method openPromise (line 148) | async openPromise(r,s,a){return this.openSync(r,s,a)}
  method openSync (line 148) | openSync(r,s,a){let n=this.nextFd++;return this.fds.set(n,{cursor:0,p:r}...
  method hasOpenFileHandles (line 148) | hasOpenFileHandles(){return!!this.fds.size}
  method opendirPromise (line 148) | async opendirPromise(r,s){return this.opendirSync(r,s)}
  method opendirSync (line 148) | opendirSync(r,s={}){let a=this.resolveFilename(`opendir '${r}'`,r);if(!t...
  method readPromise (line 148) | async readPromise(r,s,a,n,c){return this.readSync(r,s,a,n,c)}
  method readSync (line 148) | readSync(r,s,a=0,n=s.byteLength,c=-1){let f=this.fds.get(r);if(typeof f>...
  method writePromise (line 148) | async writePromise(r,s,a,n,c){return typeof s=="string"?this.writeSync(r...
  method writeSync (line 148) | writeSync(r,s,a,n,c){throw typeof this.fds.get(r)>"u"?or.EBADF("read"):n...
  method closePromise (line 148) | async closePromise(r){return this.closeSync(r)}
  method closeSync (line 148) | closeSync(r){if(typeof this.fds.get(r)>"u")throw or.EBADF("read");this.f...
  method createReadStream (line 148) | createReadStream(r,{encoding:s}={}){if(r===null)throw new Error("Unimple...
  method createWriteStream (line 148) | createWriteStream(r,{encoding:s}={}){if(this.readOnly)throw or.EROFS(`op...
  method realpathPromise (line 148) | async realpathPromise(r){return this.realpathSync(r)}
  method realpathSync (line 148) | realpathSync(r){let s=this.resolveFilename(`lstat '${r}'`,r);if(!this.en...
  method existsPromise (line 148) | async existsPromise(r){return this.existsSync(r)}
  method existsSync (line 148) | existsSync(r){if(!this.ready)throw or.EBUSY(`archive closed, existsSync ...
  method accessPromise (line 148) | async accessPromise(r,s){return this.accessSync(r,s)}
  method accessSync (line 148) | accessSync(r,s=Ra.constants.F_OK){let a=this.resolveFilename(`access '${...
  method statPromise (line 148) | async statPromise(r,s={bigint:!1}){return s.bigint?this.statSync(r,{bigi...
  method statSync (line 148) | statSync(r,s={bigint:!1,throwIfNoEntry:!0}){let a=this.resolveFilename(`...
  method fstatPromise (line 148) | async fstatPromise(r,s){return this.fstatSync(r,s)}
  method fstatSync (line 148) | fstatSync(r,s){let a=this.fds.get(r);if(typeof a>"u")throw or.EBADF("fst...
  method lstatPromise (line 148) | async lstatPromise(r,s={bigint:!1}){return s.bigint?this.lstatSync(r,{bi...
  method lstatSync (line 148) | lstatSync(r,s={bigint:!1,throwIfNoEntry:!0}){let a=this.resolveFilename(...
  method statImpl (line 148) | statImpl(r,s,a={}){let n=this.entries.get(s);if(typeof n<"u"){let c=this...
  method getUnixMode (line 148) | getUnixMode(r,s){let[a,n]=this.zipImpl.getExternalAttributes(r);return a...
  method registerListing (line 148) | registerListing(r){let s=this.listings.get(r);if(s)return s;this.registe...
  method registerEntry (line 148) | registerEntry(r,s){this.registerListing(K.dirname(r)).add(K.basename(r))...
  method unregisterListing (line 148) | unregisterListing(r){this.listings.delete(r),this.listings.get(K.dirname...
  method unregisterEntry (line 148) | unregisterEntry(r){this.unregisterListing(r);let s=this.entries.get(r);t...
  method deleteEntry (line 148) | deleteEntry(r,s){this.unregisterEntry(r),this.zipImpl.deleteEntry(s)}
  method resolveFilename (line 148) | resolveFilename(r,s,a=!0,n=!0){if(!this.ready)throw or.EBUSY(`archive cl...
  method setFileSource (line 148) | setFileSource(r,s){let a=Buffer.isBuffer(s)?s:Buffer.from(s),n=K.relativ...
  method isSymbolicLink (line 148) | isSymbolicLink(r){if(this.symlinkCount===0)return!1;let[s,a]=this.zipImp...
  method getFileSource (line 148) | getFileSource(r,s={asyncDecompress:!1}){let a=this.fileSources.get(r);if...
  method fchmodPromise (line 148) | async fchmodPromise(r,s){return this.chmodPromise(this.fdToPath(r,"fchmo...
  method fchmodSync (line 148) | fchmodSync(r,s){return this.chmodSync(this.fdToPath(r,"fchmodSync"),s)}
  method chmodPromise (line 148) | async chmodPromise(r,s){return this.chmodSync(r,s)}
  method chmodSync (line 148) | chmodSync(r,s){if(this.readOnly)throw or.EROFS(`chmod '${r}'`);s&=493;le...
  method fchownPromise (line 148) | async fchownPromise(r,s,a){return this.chownPromise(this.fdToPath(r,"fch...
  method fchownSync (line 148) | fchownSync(r,s,a){return this.chownSync(this.fdToPath(r,"fchownSync"),s,a)}
  method chownPromise (line 148) | async chownPromise(r,s,a){return this.chownSync(r,s,a)}
  method chownSync (line 148) | chownSync(r,s,a){throw new Error("Unimplemented")}
  method renamePromise (line 148) | async renamePromise(r,s){return this.renameSync(r,s)}
  method renameSync (line 148) | renameSync(r,s){throw new Error("Unimplemented")}
  method copyFilePromise (line 148) | async copyFilePromise(r,s,a){let{indexSource:n,indexDest:c,resolvedDestP...
  method copyFileSync (line 148) | copyFileSync(r,s,a=0){let{indexSource:n,indexDest:c,resolvedDestP:f}=thi...
  method prepareCopyFile (line 148) | prepareCopyFile(r,s,a=0){if(this.readOnly)throw or.EROFS(`copyfile '${r}...
  method appendFilePromise (line 148) | async appendFilePromise(r,s,a){if(this.readOnly)throw or.EROFS(`open '${...
  method appendFileSync (line 148) | appendFileSync(r,s,a={}){if(this.readOnly)throw or.EROFS(`open '${r}'`);...
  method fdToPath (line 148) | fdToPath(r,s){let a=this.fds.get(r)?.p;if(typeof a>"u")throw or.EBADF(s)...
  method writeFilePromise (line 148) | async writeFilePromise(r,s,a){let{encoding:n,mode:c,index:f,resolvedP:p}...
  method writeFileSync (line 148) | writeFileSync(r,s,a){let{encoding:n,mode:c,index:f,resolvedP:p}=this.pre...
  method prepareWriteFile (line 148) | prepareWriteFile(r,s){if(typeof r=="number"&&(r=this.fdToPath(r,"read"))...
  method unlinkPromise (line 148) | async unlinkPromise(r){return this.unlinkSync(r)}
  method unlinkSync (line 148) | unlinkSync(r){if(this.readOnly)throw or.EROFS(`unlink '${r}'`);let s=thi...
  method utimesPromise (line 148) | async utimesPromise(r,s,a){return this.utimesSync(r,s,a)}
  method utimesSync (line 148) | utimesSync(r,s,a){if(this.readOnly)throw or.EROFS(`utimes '${r}'`);let n...
  method lutimesPromise (line 148) | async lutimesPromise(r,s,a){return this.lutimesSync(r,s,a)}
  method lutimesSync (line 148) | lutimesSync(r,s,a){if(this.readOnly)throw or.EROFS(`lutimes '${r}'`);let...
  method utimesImpl (line 148) | utimesImpl(r,s){this.listings.has(r)&&(this.entries.has(r)||this.hydrate...
  method mkdirPromise (line 148) | async mkdirPromise(r,s){return this.mkdirSync(r,s)}
  method mkdirSync (line 148) | mkdirSync(r,{mode:s=493,recursive:a=!1}={}){if(a)return this.mkdirpSync(...
  method rmdirPromise (line 148) | async rmdirPromise(r,s){return this.rmdirSync(r,s)}
  method rmdirSync (line 148) | rmdirSync(r,{recursive:s=!1}={}){if(this.readOnly)throw or.EROFS(`rmdir ...
  method rmPromise (line 148) | async rmPromise(r,s){return this.rmSync(r,s)}
  method rmSync (line 148) | rmSync(r,{recursive:s=!1}={}){if(this.readOnly)throw or.EROFS(`rm '${r}'...
  method hydrateDirectory (line 148) | hydrateDirectory(r){let s=this.zipImpl.addDirectory(K.relative(vt.root,r...
  method linkPromise (line 148) | async linkPromise(r,s){return this.linkSync(r,s)}
  method linkSync (line 148) | linkSync(r,s){throw or.EOPNOTSUPP(`link '${r}' -> '${s}'`)}
  method symlinkPromise (line 148) | async symlinkPromise(r,s){return this.symlinkSync(r,s)}
  method symlinkSync (line 148) | symlinkSync(r,s){if(this.readOnly)throw or.EROFS(`symlink '${r}' -> '${s...
  method readFilePromise (line 148) | async readFilePromise(r,s){typeof s=="object"&&(s=s?s.encoding:void 0);l...
  method readFileSync (line 148) | readFileSync(r,s){typeof s=="object"&&(s=s?s.encoding:void 0);let a=this...
  method readFileBuffer (line 148) | readFileBuffer(r,s={asyncDecompress:!1}){typeof r=="number"&&(r=this.fdT...
  method readdirPromise (line 148) | async readdirPromise(r,s){return this.readdirSync(r,s)}
  method readdirSync (line 148) | readdirSync(r,s){let a=this.resolveFilename(`scandir '${r}'`,r);if(!this...
  method readlinkPromise (line 148) | async readlinkPromise(r){let s=this.prepareReadlink(r);return(await this...
  method readlinkSync (line 148) | readlinkSync(r){let s=this.prepareReadlink(r);return this.getFileSource(...
  method prepareReadlink (line 148) | prepareReadlink(r){let s=this.resolveFilename(`readlink '${r}'`,r,!1);if...
  method truncatePromise (line 148) | async truncatePromise(r,s=0){let a=this.resolveFilename(`open '${r}'`,r)...
  method truncateSync (line 148) | truncateSync(r,s=0){let a=this.resolveFilename(`open '${r}'`,r),n=this.e...
  method ftruncatePromise (line 148) | async ftruncatePromise(r,s){return this.truncatePromise(this.fdToPath(r,...
  method ftruncateSync (line 148) | ftruncateSync(r,s){return this.truncateSync(this.fdToPath(r,"ftruncateSy...
  method watch (line 148) | watch(r,s,a){let n;switch(typeof s){case"function":case"string":case"und...
  method watchFile (line 148) | watchFile(r,s,a){let n=K.resolve(vt.root,r);return lE(this,n,s,a)}
  method unwatchFile (line 148) | unwatchFile(r,s){let a=K.resolve(vt.root,r);return gd(this,a,s)}
  function UAe (line 148) | function UAe(e,t,r=Buffer.alloc(0),s){let a=new ps(r),n=C=>C===t||C.star...
  method constructor (line 148) | constructor(t){this.filesShouldBeCached=!1;if("buffer"in t)throw new Err...
  method readZipSync (line 148) | static readZipSync(t,r,s){if(s<rv)throw new Error("Invalid ZIP file: EOC...
  method getExternalAttributes (line 148) | getExternalAttributes(t){let r=this.entries[t];return[r.os,r.externalAtt...
  method getListings (line 148) | getListings(){return this.entries.map(t=>t.name)}
  method getSymlinkCount (line 148) | getSymlinkCount(){let t=0;for(let r of this.entries)r.isSymbolicLink&&(t...
  method stat (line 148) | stat(t){let r=this.entries[t];return{crc:r.crc,mtime:r.mtime,size:r.size}}
  method locate (line 148) | locate(t){for(let r=0;r<this.entries.length;r++)if(this.entries[r].name=...
  method getFileSource (line 148) | getFileSource(t){if(this.fd==="closed")throw new Error("ZIP file is clos...
  method discard (line 148) | discard(){this.fd!=="closed"&&(this.baseFs.closeSync(this.fd),this.fd="c...
  method addDirectory (line 148) | addDirectory(t){throw new Error("Not implemented")}
  method deleteEntry (line 148) | deleteEntry(t){throw new Error("Not implemented")}
  method setMtime (line 148) | setMtime(t,r){throw new Error("Not implemented")}
  method getBufferAndClose (line 148) | getBufferAndClose(){throw new Error("Not implemented")}
  method setFileSource (line 148) | setFileSource(t,r,s){throw new Error("Not implemented")}
  method setExternalAttributes (line 148) | setExternalAttributes(t,r,s){throw new Error("Not implemented")}
  function Ttt (line 148) | function Ttt(){return tv()}
  function Ftt (line 148) | async function Ftt(){return tv()}
  method constructor (line 148) | constructor(){super(...arguments);this.cwd=he.String("--cwd",process.cwd...
  method execute (line 158) | async execute(){let r=this.args.length>0?`${this.commandName} ${this.arg...
  method constructor (line 158) | constructor(t){super(t),this.name="ShellError"}
  function Ntt (line 158) | function Ntt(e){if(!SR.default.scan(e,DR).isGlob)return!1;try{SR.default...
  function Ott (line 158) | function Ott(e,{cwd:t,baseFs:r}){return(0,VAe.default)(e,{...KAe,cwd:fe....
  function Cj (line 158) | function Cj(e){return SR.default.scan(e,DR).isBrace}
  function wj (line 158) | function wj(){}
  function Bj (line 158) | function Bj(){for(let e of am)e.kill()}
  function $Ae (line 158) | function $Ae(e,t,r,s){return a=>{let n=a[0]instanceof nA.Transform?"pipe...
  function epe (line 161) | function epe(e){return t=>{let r=t[0]==="pipe"?new nA.PassThrough:t[0];r...
  function PR (line 161) | function PR(e,t){return Sj.start(e,t)}
  function zAe (line 161) | function zAe(e,t=null){let r=new nA.PassThrough,s=new XAe.StringDecoder,...
  function tpe (line 162) | function tpe(e,{prefix:t}){return{stdout:zAe(r=>e.stdout.write(`${r}
  method constructor (line 164) | constructor(t){this.stream=t}
  method close (line 164) | close(){}
  method get (line 164) | get(){return this.stream}
  method constructor (line 164) | constructor(){this.stream=null}
  method close (line 164) | close(){if(this.stream===null)throw new Error("Assertion failed: No stre...
  method attach (line 164) | attach(t){this.stream=t}
  method get (line 164) | get(){if(this.stream===null)throw new Error("Assertion failed: No stream...
  method constructor (line 164) | constructor(t,r){this.stdin=null;this.stdout=null;this.stderr=null;this....
  method start (line 164) | static start(t,{stdin:r,stdout:s,stderr:a}){let n=new e(null,t);return n...
  method pipeTo (line 164) | pipeTo(t,r=1){let s=new e(this,t),a=new vj;return s.pipe=a,s.stdout=this...
  method exec (line 164) | async exec(){let t=["ignore","ignore","ignore"];if(this.pipe)t[0]="pipe"...
  method run (line 164) | async run(){let t=[];for(let s=this;s;s=s.ancestor)t.push(s.exec());retu...
  function rpe (line 164) | function rpe(e,t,r){let s=new $l.PassThrough({autoDestroy:!0});switch(e)...
  function kR (line 164) | function kR(e,t={}){let r={...e,...t};return r.environment={...e.environ...
  function Mtt (line 164) | async function Mtt(e,t,r){let s=[],a=new $l.PassThrough;return a.on("dat...
  function npe (line 164) | async function npe(e,t,r){let s=e.map(async n=>{let c=await lm(n.args,t,...
  function xR (line 164) | function xR(e){return e.match(/[^ \r\n\t]+/g)||[]}
  function cpe (line 164) | async function cpe(e,t,r,s,a=s){switch(e.name){case"$":s(String(process....
  function ov (line 164) | async function ov(e,t,r){if(e.type==="number"){if(Number.isInteger(e.val...
  function lm (line 164) | async function lm(e,t,r){let s=new Map,a=[],n=[],c=E=>{n.push(E)},f=()=>...
  function av (line 164) | function av(e,t,r){t.builtins.has(e[0])||(e=["command",...e]);let s=fe.f...
  function _tt (line 164) | function _tt(e,t,r){return s=>{let a=new $l.PassThrough,n=QR(e,t,kR(r,{s...
  function Htt (line 164) | function Htt(e,t,r){return s=>{let a=new $l.PassThrough,n=QR(e,t,r);retu...
  function ipe (line 164) | function ipe(e,t,r,s){if(t.length===0)return e;{let a;do a=String(Math.r...
  function spe (line 164) | async function spe(e,t,r){let s=e,a=null,n=null;for(;s;){let c=s.then?{....
  function jtt (line 164) | async function jtt(e,t,r,{background:s=!1}={}){function a(n){let c=["#2E...
  function Gtt (line 166) | async function Gtt(e,t,r,{background:s=!1}={}){let a,n=f=>{a=f,r.variabl...
  function QR (line 167) | async function QR(e,t,r){let s=r.backgroundJobs;r.backgroundJobs=[];let ...
  function upe (line 167) | function upe(e){switch(e.type){case"variable":return e.name==="@"||e.nam...
  function lv (line 167) | function lv(e){switch(e.type){case"redirection":return e.args.some(t=>lv...
  function bj (line 167) | function bj(e){switch(e.type){case"variable":return upe(e);case"number":...
  function Pj (line 167) | function Pj(e){return e.some(({command:t})=>{for(;t;){let r=t.chain;for(...
  function bI (line 167) | async function bI(e,t=[],{baseFs:r=new Yn,builtins:s={},cwd:a=fe.toPorta...
  method write (line 170) | write(ie,ue,ae){setImmediate(ae)}
  function qtt (line 170) | function qtt(){var e=0,t=1,r=2,s=3,a=4,n=5,c=6,f=7,p=8,h=9,E=10,C=11,S=1...
  function Vtt (line 170) | function Vtt(){if(TR)return TR;if(typeof Intl.Segmenter<"u"){let e=new I...
  function Epe (line 170) | function Epe(e,{configuration:t,json:r}){if(!t.get("enableMessageNames")...
  function xj (line 170) | function xj(e,{configuration:t,json:r}){let s=Epe(e,{configuration:t,jso...
  function PI (line 170) | async function PI({configuration:e,stdout:t,forceError:r},s){let a=await...
  method constructor (line 175) | constructor({configuration:r,stdout:s,json:a=!1,forceSectionAlignment:n=...
  method start (line 175) | static async start(r,s){let a=new this(r),n=process.emitWarning;process....
  method hasErrors (line 175) | hasErrors(){return this.errorCount>0}
  method exitCode (line 175) | exitCode(){return this.hasErrors()?1:0}
  method getRecommendedLength (line 175) | getRecommendedLength(){let s=this.progressStyle!==null?this.stdout.colum...
  method startSectionSync (line 175) | startSectionSync({reportHeader:r,reportFooter:s,skipIfEmpty:a},n){let c=...
  method startSectionPromise (line 175) | async startSectionPromise({reportHeader:r,reportFooter:s,skipIfEmpty:a},...
  method startTimerImpl (line 175) | startTimerImpl(r,s,a){return{cb:typeof s=="function"?s:a,reportHeader:()...
  method startTimerSync (line 175) | startTimerSync(r,s,a){let{cb:n,...c}=this.startTimerImpl(r,s,a);return t...
  method startTimerPromise (line 175) | async startTimerPromise(r,s,a){let{cb:n,...c}=this.startTimerImpl(r,s,a)...
  method reportSeparator (line 175) | reportSeparator(){this.indent===0?this.writeLine(""):this.reportInfo(nul...
  method reportInfo (line 175) | reportInfo(r,s){if(!this.includeInfos)return;this.commit();let a=this.fo...
  method reportWarning (line 175) | reportWarning(r,s){if(this.warningCount+=1,!this.includeWarnings)return;...
  method reportError (line 175) | reportError(r,s){this.errorCount+=1,this.timerFooter.push(()=>this.repor...
  method reportErrorImpl (line 175) | reportErrorImpl(r,s){this.commit();let a=this.formatNameWithHyperlink(r)...
  method reportFold (line 175) | reportFold(r,s){if(!v0)return;let a=`${v0.start(r)}${s}${v0.end(r)}`;thi...
  method reportProgress (line 175) | reportProgress(r){if(this.progressStyle===null)return{...Promise.resolve...
  method reportJson (line 175) | reportJson(r){this.json&&this.writeLine(`${JSON.stringify(r)}`)}
  method finalize (line 175) | async finalize(){if(!this.includeFooter)return;let r="";this.errorCount>...
  method writeLine (line 175) | writeLine(r,{truncate:s}={}){this.clearProgress({clear:!0}),this.stdout....
  method writeLines (line 176) | writeLines(r,{truncate:s}={}){this.clearProgress({delta:r.length});for(l...
  method commit (line 177) | commit(){let r=this.uncommitted;this.uncommitted=new Set;for(let s of r)...
  method clearProgress (line 177) | clearProgress({delta:r=0,clear:s=!1}){this.progressStyle!==null&&this.pr...
  method writeProgress (line 177) | writeProgress(){if(this.progressStyle===null||(this.progressTimeout!==nu...
  method refreshProgress (line 178) | refreshProgress({delta:r=0,force:s=!1}={}){let a=!1,n=!1;if(s||this.prog...
  method truncate (line 178) | truncate(r,{truncate:s}={}){return this.progressStyle===null&&(s=!1),typ...
  method formatName (line 178) | formatName(r){return this.includeNames?Epe(r,{configuration:this.configu...
  method formatPrefix (line 178) | formatPrefix(r,s){return this.includePrefix?`${jt(this.configuration,"\u...
  method formatNameWithHyperlink (line 178) | formatNameWithHyperlink(r){return this.includeNames?xj(r,{configuration:...
  method formatIndent (line 178) | formatIndent(){return this.level>0||!this.forceSectionAlignment?"\u2502 ...
  function S0 (line 178) | async function S0(e,t,r,s=[]){if(process.platform==="win32"){let a=`@got...
  function wpe (line 180) | async function wpe(e){let t=await Ut.tryFind(e);if(t?.packageManager){le...
  function Av (line 180) | async function Av({project:e,locator:t,binFolder:r,ignoreCorepack:s,life...
  function $tt (line 180) | async function $tt(e,t,{configuration:r,report:s,workspace:a=null,locato...
  function ert (line 188) | async function ert(e,t,{project:r}){let s=r.tryWorkspaceByLocator(e);if(...
  function OR (line 188) | async function OR(e,t,r,{cwd:s,project:a,stdin:n,stdout:c,stderr:f}){ret...
  function kj (line 188) | async function kj(e,t,r,{cwd:s,project:a,stdin:n,stdout:c,stderr:f}){ret...
  function trt (line 188) | async function trt(e,{binFolder:t,cwd:r,lifecycleScript:s}){let a=await ...
  function Bpe (line 188) | async function Bpe(e,{project:t,binFolder:r,cwd:s,lifecycleScript:a}){le...
  function vpe (line 188) | async function vpe(e,t,r,{cwd:s,stdin:a,stdout:n,stderr:c}){return await...
  function Qj (line 188) | function Qj(e,t){return e.manifest.scripts.has(t)}
  function Spe (line 188) | async function Spe(e,t,{cwd:r,report:s}){let{configuration:a}=e.project,...
  function rrt (line 189) | async function rrt(e,t,r){Qj(e,t)&&await Spe(e,t,r)}
  function Rj (line 189) | function Rj(e){let t=K.extname(e);if(t.match(/\.[cm]?[jt]sx?$/))return!0...
  function LR (line 189) | async function LR(e,{project:t}){let r=t.configuration,s=new Map,a=t.sto...
  function Dpe (line 189) | async function Dpe(e){return await LR(e.anchoredLocator,{project:e.proje...
  function Tj (line 189) | async function Tj(e,t){await Promise.all(Array.from(t,([r,[,s,a]])=>a?S0...
  function bpe (line 189) | async function bpe(e,t,r,{cwd:s,project:a,stdin:n,stdout:c,stderr:f,node...
  function nrt (line 189) | async function nrt(e,t,r,{cwd:s,stdin:a,stdout:n,stderr:c,packageAccessi...
  function dnt (line 189) | function dnt(e,t,r){let s=t,a=t?t.next:e.head,n=new M6(r,s,a,e);return n...
  function mnt (line 189) | function mnt(e,t){e.tail=new M6(t,e.tail,void 0,e),e.head||(e.head=e.tai...
  function ynt (line 189) | function ynt(e,t){e.head=new M6(t,void 0,e.head,e),e.tail||(e.tail=e.hea...
  method constructor (line 189) | constructor(e,t,r){this.src=e,this.dest=t,this.opts=r,this.ondrain=()=>e...
  method unpipe (line 189) | unpipe(){this.dest.removeListener("drain",this.ondrain)}
  method proxyErrors (line 189) | proxyErrors(e){}
  method end (line 189) | end(){this.unpipe(),this.opts.end&&this.dest.end()}
  method unpipe (line 189) | unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}
  method constructor (line 189) | constructor(e,t,r){super(e,t,r),this.proxyErrors=s=>t.emit("error",s),e....
  method constructor (line 189) | constructor(...e){let t=e[0]||{};if(super(),t.objectMode&&typeof t.encod...
  method bufferLength (line 189) | get bufferLength(){return this[Zs]}
  method encoding (line 189) | get encoding(){return this[qu]}
  method encoding (line 189) | set encoding(e){throw new Error("Encoding must be set at instantiation t...
  method setEncoding (line 189) | setEncoding(e){throw new Error("Encoding must be set at instantiation ti...
  method objectMode (line 189) | get objectMode(){return this[ta]}
  method objectMode (line 189) | set objectMode(e){throw new Error("objectMode must be set at instantiati...
  method async (line 189) | get async(){return this[iA]}
  method async (line 189) | set async(e){this[iA]=this[iA]||!!e}
  method [Uj] (line 189) | [Uj](){this[jR]=!0,this.emit("abort",this[gv]?.reason),this.destroy(this...
  method aborted (line 189) | get aborted(){return this[jR]}
  method aborted (line 189) | set aborted(e){}
  method write (line 189) | write(e,t,r){if(this[jR])return!1;if(this[Hp])throw new Error("write aft...
  method read (line 189) | read(e){if(this[es])return null;if(this[ec]=!1,this[Zs]===0||e===0||e&&e...
  method [xpe] (line 189) | [xpe](e,t){if(this[ta])this[HR]();else{let r=t;e===r.length||e===null?th...
  method end (line 189) | end(e,t,r){return typeof e=="function"&&(r=e,e=void 0),typeof t=="functi...
  method [TI] (line 189) | [TI](){this[es]||(!this[cm]&&!this[Ta].length&&(this[ec]=!0),this[hv]=!1...
  method resume (line 189) | resume(){return this[TI]()}
  method pause (line 189) | pause(){this[Js]=!1,this[hv]=!0,this[ec]=!1}
  method destroyed (line 189) | get destroyed(){return this[es]}
  method flowing (line 189) | get flowing(){return this[Js]}
  method paused (line 189) | get paused(){return this[hv]}
  method [Nj] (line 189) | [Nj](e){this[ta]?this[Zs]+=1:this[Zs]+=e.length,this[zs].push(e)}
  method [HR] (line 189) | [HR](){return this[ta]?this[Zs]-=1:this[Zs]-=this[zs][0].length,this[zs]...
  method [_R] (line 189) | [_R](e=!1){do;while(this[kpe](this[HR]())&&this[zs].length);!e&&!this[zs...
  method [kpe] (line 189) | [kpe](e){return this.emit("data",e),this[Js]}
  method pipe (line 189) | pipe(e,t){if(this[es])return e;this[ec]=!1;let r=this[b0];return t=t||{}...
  method unpipe (line 189) | unpipe(e){let t=this[Ta].find(r=>r.dest===e);t&&(this[Ta].length===1?(th...
  method addListener (line 189) | addListener(e,t){return this.on(e,t)}
  method on (line 189) | on(e,t){let r=super.on(e,t);if(e==="data")this[ec]=!1,this[cm]++,!this[T...
  method removeListener (line 189) | removeListener(e,t){return this.off(e,t)}
  method off (line 189) | off(e,t){let r=super.off(e,t);return e==="data"&&(this[cm]=this.listener...
  method removeAllListeners (line 189) | removeAllListeners(e){let t=super.removeAllListeners(e);return(e==="data...
  method emittedEnd (line 189) | get emittedEnd(){return this[b0]}
  method [jp] (line 189) | [jp](){!this[MR]&&!this[b0]&&!this[es]&&this[zs].length===0&&this[Hp]&&(...
  method emit (line 189) | emit(e,...t){let r=t[0];if(e!=="error"&&e!=="close"&&e!==es&&this[es])re...
  method [Lj] (line 189) | [Lj](e){for(let r of this[Ta])r.dest.write(e)===!1&&this.pause();let t=t...
  method [Qpe] (line 189) | [Qpe](){return this[b0]?!1:(this[b0]=!0,this.readable=!1,this[iA]?(dv(()...
  method [Mj] (line 189) | [Mj](){if(this[xI]){let t=this[xI].end();if(t){for(let r of this[Ta])r.d...
  method collect (line 189) | async collect(){let e=Object.assign([],{dataLength:0});this[ta]||(e.data...
  method concat (line 189) | async concat(){if(this[ta])throw new Error("cannot concat in objectMode"...
  method promise (line 189) | async promise(){return new Promise((e,t)=>{this.on(es,()=>t(new Error("s...
  method [Symbol.asyncIterator] (line 189) | [Symbol.asyncIterator](){this[ec]=!1;let e=!1,t=async()=>(this.pause(),e...
  method [Symbol.iterator] (line 189) | [Symbol.iterator](){this[ec]=!1;let e=!1,t=()=>(this.pause(),this.off(Oj...
  method destroy (line 189) | destroy(e){if(this[es])return e?this.emit("error",e):this.emit(es),this;...
  method isStream (line 189) | static get isStream(){return ort}
  method constructor (line 189) | constructor(e,t){if(t=t||{},super(t),this.readable=!0,this.writable=!1,t...
  method fd (line 189) | get fd(){return this[Kn]}
  method path (line 189) | get path(){return this[Ku]}
  method write (line 189) | write(){throw new TypeError("this is a readable stream")}
  method end (line 189) | end(){throw new TypeError("this is a readable stream")}
  method [M0] (line 189) | [M0](){Fa.default.open(this[Ku],"r",(e,t)=>this[UI](e,t))}
  method [UI] (line 189) | [UI](e,t){e?this[LI](e):(this[Kn]=t,this.emit("open",t),this[NI]())}
  method [c6] (line 189) | [c6](){return Buffer.allocUnsafe(Math.min(this[Gj],this[yv]))}
  method [NI] (line 189) | [NI](){if(!this[Wp]){this[Wp]=!0;let e=this[c6]();if(e.length===0)return...
  method [jj] (line 189) | [jj](e,t,r){this[Wp]=!1,e?this[LI](e):this[l6](t,r)&&this[NI]()}
  method [Ju] (line 189) | [Ju](){if(this[L0]&&typeof this[Kn]=="number"){let e=this[Kn];this[Kn]=v...
  method [LI] (line 189) | [LI](e){this[Wp]=!0,this[Ju](),this.emit("error",e)}
  method [l6] (line 189) | [l6](e,t){let r=!1;return this[yv]-=e,e>0&&(r=super.write(e<t.length?t.s...
  method emit (line 189) | emit(e,...t){switch(e){case"prefinish":case"finish":return!1;case"drain"...
  method [M0] (line 189) | [M0](){let e=!0;try{this[UI](null,Fa.default.openSync(this[Ku],"r")),e=!...
  method [NI] (line 189) | [NI](){let e=!0;try{if(!this[Wp]){this[Wp]=!0;do{let t=this[c6](),r=t.le...
  method [Ju] (line 189) | [Ju](){if(this[L0]&&typeof this[Kn]=="number"){let e=this[Kn];this[Kn]=v...
  method constructor (line 189) | constructor(e,t){t=t||{},super(t),this[Ku]=e,this[Kn]=typeof t.fd=="numb...
  method emit (line 189) | emit(e,...t){if(e==="error"){if(this[Im])return!1;this[Im]=!0}return sup...
  method fd (line 189) | get fd(){return this[Kn]}
  method path (line 189) | get path(){return this[Ku]}
  method [LI] (line 189) | [LI](e){this[Ju](),this[um]=!0,this.emit("error",e)}
  method [M0] (line 189) | [M0](){Fa.default.open(this[Ku],this[Vp],this[bv],(e,t)=>this[UI](e,t))}
  method [UI] (line 189) | [UI](e,t){this[$R]&&this[Vp]==="r+"&&e&&e.code==="ENOENT"?(this[Vp]="w",...
  method end (line 189) | end(e,t){return e&&this.write(e,t),this[mv]=!0,!this[um]&&!this[sA].leng...
  method write (line 189) | write(e,t){return typeof e=="string"&&(e=Buffer.from(e,t)),this[mv]?(thi...
  method [XR] (line 189) | [XR](e){Fa.default.write(this[Kn],e,0,e.length,this[Q0],(t,r)=>this[FI](...
  method [FI] (line 189) | [FI](e,t){e?this[LI](e):(this[Q0]!==void 0&&typeof t=="number"&&(this[Q0...
  method [Hj] (line 189) | [Hj](){if(this[sA].length===0)this[mv]&&this[FI](null,0);else if(this[sA...
  method [Ju] (line 189) | [Ju](){if(this[L0]&&typeof this[Kn]=="number"){let e=this[Kn];this[Kn]=v...
  method [M0] (line 189) | [M0](){let e;if(this[$R]&&this[Vp]==="r+")try{e=Fa.default.openSync(this...
  method [Ju] (line 189) | [Ju](){if(this[L0]&&typeof this[Kn]=="number"){let e=this[Kn];this[Kn]=v...
  method [XR] (line 189) | [XR](e){let t=!0;try{this[FI](null,Fa.default.writeSync(this[Kn],e,0,e.l...
  method constructor (line 189) | constructor(e,t){super("zlib: "+e.message,{cause:e}),this.code=e.code,th...
  method name (line 189) | get name(){return"ZlibError"}
  method sawError (line 189) | get sawError(){return this.#e}
  method handle (line 189) | get handle(){return this.#n}
  method flushFlag (line 189) | get flushFlag(){return this.#s}
  method constructor (line 189) | constructor(e,t){if(!e||typeof e!="object")throw new TypeError("invalid ...
  method close (line 189) | close(){this.#n&&(this.#n.close(),this.#n=void 0,this.emit("close"))}
  method reset (line 189) | reset(){if(!this.#e)return(0,cT.default)(this.#n,"zlib binding closed"),...
  method flush (line 189) | flush(e){this.ended||(typeof e!="number"&&(e=this.#i),this.write(Object....
  method end (line 189) | end(e,t,r){return typeof e=="function"&&(r=e,t=void 0,e=void 0),typeof t...
  method ended (line 189) | get ended(){return this.#t}
  method [Cm] (line 189) | [Cm](e){return super.write(e)}
  method write (line 189) | write(e,t,r){if(typeof t=="function"&&(r=t,t="utf8"),typeof e=="string"&...
  method constructor (line 189) | constructor(e,t){e=e||{},e.flush=e.flush||lA.Z_NO_FLUSH,e.finishFlush=e....
  method params (line 189) | params(e,t){if(!this.sawError){if(!this.handle)throw new Error("cannot s...
  method constructor (line 189) | constructor(e){super(e,"Gzip"),this.#e=e&&!!e.portable}
  method [Cm] (line 189) | [Cm](e){return this.#e?(this.#e=!1,e[9]=255,super[Cm](e)):super[Cm](e)}
  method constructor (line 189) | constructor(e){super(e,"Unzip")}
  method constructor (line 189) | constructor(e,t){e=e||{},e.flush=e.flush||lA.BROTLI_OPERATION_PROCESS,e....
  method constructor (line 189) | constructor(e){super(e,"BrotliCompress")}
  method constructor (line 189) | constructor(e){super(e,"BrotliDecompress")}
  method constructor (line 189) | constructor(e,t){e=e||{},e.flush=e.flush||lA.ZSTD_e_continue,e.finishFlu...
  method constructor (line 189) | constructor(e){super(e,"ZstdCompress")}
  method constructor (line 189) | constructor(e){super(e,"ZstdDecompress")}
  method constructor (line 189) | constructor(e,t=0,r,s){Buffer.isBuffer(e)?this.decode(e,t||0,r,s):e&&thi...
  method decode (line 189) | decode(e,t,r,s){if(t||(t=0),!e||!(e.length>=t+
Condensed preview — 1305 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (9,499K chars).
[
  {
    "path": ".claude/commands/revise-agents-md.md",
    "chars": 1081,
    "preview": "Review this session for learnings about working with Agents in this codebase. Update AGENTS.md with context that would h"
  },
  {
    "path": ".claude/settings.json",
    "chars": 93,
    "preview": "{\n  \"permissions\": {\n    \"allow\": [\"Bash(yarn dev-server:*)\", \"Bash(agent-browser:*)\"]\n  }\n}\n"
  },
  {
    "path": ".claude/skills/manual-testing/SKILL.md",
    "chars": 2001,
    "preview": "---\nname: manual-testing\ndescription: Run a manual test of the current change end-to-end and output reproducible test in"
  },
  {
    "path": ".cursor/rules/test-driven-development.mdc",
    "chars": 2924,
    "preview": "---\ndescription: Standards for Test-Driven Development in the Browser SDK project\nglobs:\ntags:\n  - jasmine\n  - karma\nalw"
  },
  {
    "path": ".cursor/rules/unit-test-best-practices.mdc",
    "chars": 5501,
    "preview": "---\ndescription: \nglobs: **/*.spec.ts\nalwaysApply: false\n---\n## Running Unit Tests\n\n### Basic Commands\n\n- **Run all unit"
  },
  {
    "path": ".env.example",
    "chars": 61,
    "preview": "# BROWSERSTACK CREDENTIALS\nBS_USERNAME=xxx\nBS_ACCESS_KEY=xxx\n"
  },
  {
    "path": ".github/CODEOWNERS",
    "chars": 673,
    "preview": "# Order is important, the last matching pattern takes the most precedence.\n\n# Default\n*    @Datadog/rum-browser\n\n# Globa"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/bug_report.md",
    "chars": 643,
    "preview": "---\nname: Bug report\nabout: Create a report to help us improve\ntitle: \"\\U0001F41B My bug title\"\nlabels: bug\nassignees: '"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/feature_request.md",
    "chars": 230,
    "preview": "---\nname: Feature request\nabout: Suggest an idea for this project\ntitle: \"\\U0001F4A1 My feature title\"\nlabels: enhanceme"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/support-needed.md",
    "chars": 742,
    "preview": "---\nname: Support needed\nabout: Request some support related to this project\ntitle: \"\\U0001F64F My support need\"\nlabels:"
  },
  {
    "path": ".github/PULL_REQUEST_TEMPLATE.md",
    "chars": 845,
    "preview": "## Motivation\n\n<!-- Why are you making this change, what problem does it solve? Include links to relevant tickets. -->\n\n"
  },
  {
    "path": ".github/chainguard/self.gitlab.pull_request.sts.yaml",
    "chars": 238,
    "preview": "issuer: https://gitlab.ddbuild.io\n\nsubject_pattern: 'project_path:DataDog/browser-sdk:ref_type:branch:ref:main'\n\nclaim_p"
  },
  {
    "path": ".github/chainguard/self.gitlab.read.sts.yaml",
    "chars": 175,
    "preview": "issuer: https://gitlab.ddbuild.io\n\nsubject_pattern: 'project_path:DataDog/browser-sdk:.*'\n\nclaim_pattern:\n  project_path"
  },
  {
    "path": ".github/chainguard/self.gitlab.release.sts.yaml",
    "chars": 206,
    "preview": "issuer: https://gitlab.ddbuild.io\n\nsubject_pattern: 'project_path:DataDog/browser-sdk:ref_type:tag.*'\n\nclaim_pattern:\n  "
  },
  {
    "path": ".github/codeql-config.yml",
    "chars": 204,
    "preview": "name: 'CodeQL config'\n\npaths:\n  - packages/core/src\n  - packages/logs/src\n  - packages/rum/src\n  - packages/rum-core/src"
  },
  {
    "path": ".github/dependabot.yml",
    "chars": 507,
    "preview": "# Note: While we mainly use Renovate, Dependabot is used for security updates\n\nversion: 2\nupdates:\n  - package-ecosystem"
  },
  {
    "path": ".github/workflows/changelog-to-confluence.yml",
    "chars": 1027,
    "preview": "name: Publish Changelog to Confluence\npermissions:\n  contents: read\non:\n  push:\n    tags:\n      - 'v*.*.*' # Matches ver"
  },
  {
    "path": ".github/workflows/cla.yml",
    "chars": 2608,
    "preview": "name: 'CLA Assistant'\non:\n  issue_comment:\n    types: [created]\n  pull_request_target:\n    types: [opened, closed, synch"
  },
  {
    "path": ".github/workflows/codeql-analysis.yml",
    "chars": 719,
    "preview": "name: 'CodeQL'\n\non:\n  push:\n    branches: ['main']\n  pull_request:\n    branches: ['main']\n\njobs:\n  analyze:\n    name: An"
  },
  {
    "path": ".github/workflows/deploy-generated-docs.yml",
    "chars": 1322,
    "preview": "name: Deploy docs on tag\n\non:\n  push:\n    tags:\n      - 'v*.*.*'\n\n  workflow_dispatch:\n\npermissions:\n  contents: read\n  "
  },
  {
    "path": ".github/workflows/shadow-review.yml",
    "chars": 5132,
    "preview": "# shadow-review.yml — Shadow Reviewer workflow\n# Source: https://github.com/DataDog/rum-ai-toolkit\nname: Shadow Review\n\n"
  },
  {
    "path": ".github/workflows/stale.yml",
    "chars": 1174,
    "preview": "name: 'Automatically close stale issues'\n\non:\n  schedule:\n    # Runs every day at 8:00 AM CET\n    - cron: '0 7 * * *'\n  "
  },
  {
    "path": ".gitignore",
    "chars": 548,
    "preview": "bundle\ncjs\nesm\nnode_modules\ncoverage\ntunnel.log\nlocal.log\n.dev-server/\nspecs.log\n/test-report/\nbrowserstack.err\npackage."
  },
  {
    "path": ".gitlab/deploy-auto.yml",
    "chars": 3428,
    "preview": "stages:\n  - pre-notify\n  - deploy\n  - post-notify\n\n.base-configuration:\n  tags:\n    - 'arch:amd64'\n  image: $CI_IMAGE\n  "
  },
  {
    "path": ".gitlab/deploy-manual.yml",
    "chars": 3376,
    "preview": "stages:\n  - pre-notify\n  - deploy\n  - post-notify\n\n.base-configuration:\n  tags:\n    - 'arch:amd64'\n  image: $CI_IMAGE\n  "
  },
  {
    "path": ".gitlab-ci.yml",
    "chars": 16150,
    "preview": "variables:\n  CURRENT_STAGING: staging-17\n  APP: 'browser-sdk'\n  CURRENT_CI_IMAGE: 103\n  BUILD_STABLE_REGISTRY: 'registry"
  },
  {
    "path": ".gitmodules",
    "chars": 127,
    "preview": "[submodule \"rum-events-format\"]\n\tpath = rum-events-format\n\turl = https://github.com/DataDog/rum-events-format\n\tbranch = "
  },
  {
    "path": ".prettierignore",
    "chars": 217,
    "preview": "bundle\ncjs\nesm\ncoverage\nrum-events-format\n.yarn\ntest/**/dist\ntest/**/.next\ntest/**/.nuxt\ntest/**/.output\ntest/apps/nextj"
  },
  {
    "path": ".prettierrc.yml",
    "chars": 173,
    "preview": "arrowParens: 'always'\nprintWidth: 120\nsemi: false\nsingleQuote: true\ntabWidth: 2\ntrailingComma: 'es5'\noverrides:\n  - file"
  },
  {
    "path": ".wokeignore",
    "chars": 104,
    "preview": "**/dist/**\nyarn.lock\n.yarn/releases\ngenerated-docs\n\n# code import\npackages/worker/src/domain/deflate.js\n"
  },
  {
    "path": ".yarn/releases/yarn-4.13.0.cjs",
    "chars": 3004026,
    "preview": "#!/usr/bin/env node\n/* eslint-disable */\n//prettier-ignore\n(()=>{var gje=Object.create;var tU=Object.defineProperty;var "
  },
  {
    "path": ".yarnrc.yml",
    "chars": 407,
    "preview": "yarnPath: .yarn/releases/yarn-4.13.0.cjs\ndefaultSemverRangePrefix: ''\nnodeLinker: node-modules\n\n# Gitlab artifacts are o"
  },
  {
    "path": "AGENTS.md",
    "chars": 4181,
    "preview": "# Datadog Browser SDK\n\nBrowser SDK for collecting Real User Monitoring (RUM) and logging data from web applications.\n\n##"
  },
  {
    "path": "CHANGELOG.md",
    "chars": 228517,
    "preview": "# Changelog\n\n> **Legend**\n>\n> - 💥 **Breaking change** - Breaking API changes\n> - ✨ **New feature** - New public API, beh"
  },
  {
    "path": "CLAUDE.md",
    "chars": 98,
    "preview": "# Datadog Browser SDK\n\nSee @./AGENTS.md for detailed documentation on working with this codebase.\n"
  },
  {
    "path": "CONTRIBUTING.md",
    "chars": 1455,
    "preview": "# Contributing\n\nFirst of all, thanks for contributing!\n\nThis document provides some basic guidelines for contributing to"
  },
  {
    "path": "Dockerfile",
    "chars": 2680,
    "preview": "FROM node:25.9.0-bookworm-slim\n\nARG CHROME_PACKAGE_VERSION\n\nSHELL [\"/bin/bash\", \"-c\"]\nRUN test -n \"$CHROME_PACKAGE_VERSI"
  },
  {
    "path": "LEGAL",
    "chars": 714,
    "preview": "# Legal\n\nYou must sign [our CLA](https://gist.github.com/bits-bot/55bdc97a4fdad52d97feb4d6c3d1d618) before we can accept"
  },
  {
    "path": "LICENSE",
    "chars": 11351,
    "preview": "                                 Apache License\n                           Version 2.0, January 2004\n                   "
  },
  {
    "path": "LICENSE-3rdparty.csv",
    "chars": 6528,
    "preview": "Component,Origin,License,Copyright\nfile,pako,MIT,(C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\nfile,rrweb,MIT,Copyrigh"
  },
  {
    "path": "NOTICE",
    "chars": 140,
    "preview": "Datadog browser-sdk\nCopyright 2019-Present Datadog, Inc.\n\nThis product includes software developed at Datadog (https://w"
  },
  {
    "path": "README.md",
    "chars": 4864,
    "preview": "# Datadog Browser SDK\n\nCollect and send browser data to Datadog.\n\n## Getting Started\n\n### Log collection\n\nSee the dedica"
  },
  {
    "path": "developer-extension/README.md",
    "chars": 4054,
    "preview": "# Browser SDK developer extension\n\nBrowser extension to investigate your Browser SDK integration.\n\n## Installation\n\nThe "
  },
  {
    "path": "developer-extension/package.json",
    "chars": 795,
    "preview": "{\n  \"name\": \"@datadog/browser-sdk-developer-extension\",\n  \"version\": \"6.32.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"bu"
  },
  {
    "path": "developer-extension/src/background/devtoolsPanelConnection.ts",
    "chars": 1792,
    "preview": "import type { DevtoolsToBackgroundMessage } from '../common/extension.types'\nimport { EventListeners } from '../common/e"
  },
  {
    "path": "developer-extension/src/background/domain/messageRelay.ts",
    "chars": 3425,
    "preview": "// This file implements a way to relay messages from the web page to the devtools script. Basically,\n// the devtools pan"
  },
  {
    "path": "developer-extension/src/background/domain/syncRules.ts",
    "chars": 3665,
    "preview": "import type { NetRequestRulesOptions } from '../../common/extension.types'\nimport { DEV_RUM_SLIM_URL, DEV_RUM_URL, DEV_S"
  },
  {
    "path": "developer-extension/src/background/index.ts",
    "chars": 144,
    "preview": "// Initialize Datadog logs for service worker - must be first\nimport './monitoring'\n\nimport './domain/messageRelay'\nimpo"
  },
  {
    "path": "developer-extension/src/background/monitoring.ts",
    "chars": 330,
    "preview": "import { datadogLogs } from '@datadog/browser-logs'\nimport { BASE_MONITORING_CONFIG } from '../common/monitoringConfig'\n"
  },
  {
    "path": "developer-extension/src/common/eventListeners.ts",
    "chars": 371,
    "preview": "export class EventListeners<Event = void> {\n  private listeners = new Set<(event: Event) => void>()\n\n  subscribe(listene"
  },
  {
    "path": "developer-extension/src/common/extension.types.ts",
    "chars": 1514,
    "preview": "import type { TelemetryEvent } from '../../../packages/core/src/domain/telemetry'\nimport type { LogsEvent } from '../../"
  },
  {
    "path": "developer-extension/src/common/intakeDomainConstants.ts",
    "chars": 468,
    "preview": "export const INTAKE_DOMAINS = [\n  'iam-rum-intake.datadoghq.com',\n  'browser-intake-datad0g.com',\n  'browser-intake-data"
  },
  {
    "path": "developer-extension/src/common/isDisconnectError.ts",
    "chars": 188,
    "preview": "export function isDisconnectError(error: unknown) {\n  return (\n    typeof error === 'object' && error && (error as { mes"
  },
  {
    "path": "developer-extension/src/common/logger.ts",
    "chars": 433,
    "preview": "const DEVELOPER_EXTENSION_PREFIX = 'Datadog Browser SDK extension:'\n\nexport function createLogger(module: string) {\n  re"
  },
  {
    "path": "developer-extension/src/common/monitoringConfig.ts",
    "chars": 812,
    "preview": "import packageJson from '../../package.json'\n\n// Base monitoring configuration shared by both panel and background\nexpor"
  },
  {
    "path": "developer-extension/src/common/packagesUrlConstants.ts",
    "chars": 871,
    "preview": "export const DEV_SERVER_ORIGIN = 'http://localhost:8080'\nexport const DEV_LOGS_URL = `${DEV_SERVER_ORIGIN}/datadog-logs."
  },
  {
    "path": "developer-extension/src/common/panelTabConstants.ts",
    "chars": 169,
    "preview": "export const enum PanelTabs {\n  Events = 'events',\n  Infos = 'infos',\n  Settings = 'settings',\n  Replay = 'replay',\n}\n\ne"
  },
  {
    "path": "developer-extension/src/common/sessionKeyConstant.ts",
    "chars": 78,
    "preview": "export const SESSION_STORAGE_SETTINGS_KEY = '__ddBrowserSdkExtensionSettings'\n"
  },
  {
    "path": "developer-extension/src/content-scripts/isolated.ts",
    "chars": 1555,
    "preview": "// This content script is executed in the \"isolated\" execution world. Thus, it has not access to\n// the webpage global v"
  },
  {
    "path": "developer-extension/src/content-scripts/main.ts",
    "chars": 7517,
    "preview": "import type { LogsInitConfiguration } from '@datadog/browser-logs'\nimport type { RumInitConfiguration } from '@datadog/b"
  },
  {
    "path": "developer-extension/src/devtools/index.ts",
    "chars": 71,
    "preview": "chrome.devtools.panels.create('Browser SDK', 'icon.png', 'panel.html')\n"
  },
  {
    "path": "developer-extension/src/entrypoints/background.ts",
    "chars": 191,
    "preview": "import { defineBackground } from 'wxt/utils/define-background'\n\n// eslint-disable-next-line import/no-default-export\nexp"
  },
  {
    "path": "developer-extension/src/entrypoints/contentScriptIsolated.ts",
    "chars": 271,
    "preview": "import { defineContentScript } from 'wxt/utils/define-content-script'\nimport { main } from '../content-scripts/isolated'"
  },
  {
    "path": "developer-extension/src/entrypoints/contentScriptMain.ts",
    "chars": 263,
    "preview": "import { defineContentScript } from 'wxt/utils/define-content-script'\nimport { main } from '../content-scripts/main'\n\n//"
  },
  {
    "path": "developer-extension/src/entrypoints/devtools.html",
    "chars": 236,
    "preview": "<!doctype html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-w"
  },
  {
    "path": "developer-extension/src/entrypoints/panel.html",
    "chars": 262,
    "preview": "<!doctype html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"viewport\" content=\"width=device-w"
  },
  {
    "path": "developer-extension/src/panel/backgroundScriptConnection.ts",
    "chars": 2484,
    "preview": "import type { BackgroundToDevtoolsMessage, DevtoolsToBackgroundMessage } from '../common/extension.types'\nimport { isDis"
  },
  {
    "path": "developer-extension/src/panel/components/alert.tsx",
    "chars": 860,
    "preview": "import type { ReactNode } from 'react'\nimport React from 'react'\nimport { Alert as MantineAlert, Center, Group, MantineP"
  },
  {
    "path": "developer-extension/src/panel/components/app.tsx",
    "chars": 2698,
    "preview": "import { Button, MantineProvider } from '@mantine/core'\nimport type { ReactNode } from 'react'\nimport React, { Suspense,"
  },
  {
    "path": "developer-extension/src/panel/components/columns.tsx",
    "chars": 521,
    "preview": "import { Grid, Space, Title } from '@mantine/core'\nimport React from 'react'\n\nexport function Columns({ children }: { ch"
  },
  {
    "path": "developer-extension/src/panel/components/json.module.css",
    "chars": 1809,
    "preview": ".root {\n  /* --text-fz is used by mantine as a default font size for all <Text> components */\n  --text-fz: 11px;\n\n  --in"
  },
  {
    "path": "developer-extension/src/panel/components/json.tsx",
    "chars": 11991,
    "preview": "import type { BoxProps, MantineColor } from '@mantine/core'\nimport { Box, Collapse, Menu, Text } from '@mantine/core'\nim"
  },
  {
    "path": "developer-extension/src/panel/components/lazyCollapse.tsx",
    "chars": 1016,
    "preview": "import { Collapse as MantineCollapse } from '@mantine/core'\nimport type { CollapseProps } from '@mantine/core'\nimport Re"
  },
  {
    "path": "developer-extension/src/panel/components/panel.module.css",
    "chars": 311,
    "preview": ".tabs {\n  height: 100vh;\n  display: flex;\n  flex-direction: column;\n}\n\n.tab {\n  flex: 1;\n  min-height: 0;\n}\n\n.link {\n  a"
  },
  {
    "path": "developer-extension/src/panel/components/panel.tsx",
    "chars": 3694,
    "preview": "import React, { useState } from 'react'\nimport { Tabs, Text, Anchor } from '@mantine/core'\nimport { datadogRum } from '@"
  },
  {
    "path": "developer-extension/src/panel/components/tabBase.module.css",
    "chars": 444,
    "preview": ".root {\n  height: 100%;\n}\n\n.topContainer {\n  margin: 0;\n}\n\n.leftContainer {\n  width: 250px;\n}\n\n.contentContainer {\n  fle"
  },
  {
    "path": "developer-extension/src/panel/components/tabBase.tsx",
    "chars": 1141,
    "preview": "import { Container, Flex, ScrollArea, Space } from '@mantine/core'\nimport type { ReactNode } from 'react'\nimport React f"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/addColumnPopover.module.css",
    "chars": 201,
    "preview": ".addFieldColumn {\n  display: flex;\n  align-items: flex-end;\n  gab: var(--mantine-spacing-md);\n}\n\n.addFieldAutocomplete {"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/addColumnPopover.tsx",
    "chars": 4402,
    "preview": "import type { OptionsFilter } from '@mantine/core'\nimport { Autocomplete, Button, Flex, Popover, Text } from '@mantine/c"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/columnDrag.module.css",
    "chars": 956,
    "preview": ".dragGhost {\n  /** Horizontal padding used by the Mantine Table in pixels */\n  --horizontal-padding: 10px;\n\n  /** Vertic"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/columnDrag.tsx",
    "chars": 4527,
    "preview": "import type { RefObject } from 'react'\nimport React, { useState, useEffect } from 'react'\nimport { Text } from '@mantine"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/columnUtils.ts",
    "chars": 1300,
    "preview": "export type EventListColumn =\n  | { type: 'date' }\n  | { type: 'description' }\n  | { type: 'type' }\n  | { type: 'field';"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/computeFacetState.spec.ts",
    "chars": 7187,
    "preview": "import type { RumActionEvent, RumResourceEvent } from '@datadog/browser-rum'\nimport { FacetRegistry } from '../../../hoo"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/computeFacetState.ts",
    "chars": 2565,
    "preview": "import type { FacetRegistry, FacetValuesFilter } from '../../../hooks/useEvents'\nimport type { Facet, FacetValue } from "
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/copyEvent.spec.ts",
    "chars": 3545,
    "preview": "import type { TelemetryEvent } from '../../../../../../packages/core/src/domain/telemetry'\nimport type { LogsEvent } fro"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/copyEvent.ts",
    "chars": 3277,
    "preview": "import type { EndpointBuilder, InitConfiguration } from '@datadog/browser-core'\nimport { computeTransportConfiguration }"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/drag.ts",
    "chars": 2623,
    "preview": "export interface Coordinates {\n  x: number\n  y: number\n}\n\n/**\n * This is a framework agnostic drag implementation that w"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/eventRow.module.css",
    "chars": 131,
    "preview": ".descriptionCell {\n  cursor: pointer;\n}\n\n.cell {\n  vertical-align: top;\n}\n\n.cell:not([data-no-wrap]) {\n  word-break: bre"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/eventRow.tsx",
    "chars": 12079,
    "preview": "import { Table, Badge, Menu } from '@mantine/core'\nimport { IconCopy, IconDotsVertical, IconColumnInsertRight } from '@t"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/eventsList.module.css",
    "chars": 1836,
    "preview": "/*\n  The event list is styled in a way that:\n\n  * when the table content would not fill the whole table width, the last "
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/eventsList.tsx",
    "chars": 2581,
    "preview": "import { Table } from '@mantine/core'\nimport React, { useRef } from 'react'\nimport type { EventFilters, FacetRegistry } "
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/eventsListHeader.module.css",
    "chars": 2129,
    "preview": ".root {\n  z-index: var(--dd-events-list-header-z-index);\n}\n\n.columnHeader :global(.mantine-CloseButton-root) {\n  opacity"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/eventsListHeader.tsx",
    "chars": 1902,
    "preview": "import React, { forwardRef } from 'react'\nimport { CloseButton, Flex, Table } from '@mantine/core'\nimport type { FacetRe"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/eventsTab.tsx",
    "chars": 1499,
    "preview": "import React from 'react'\nimport { Center, Text } from '@mantine/core'\nimport type { EventFilters, FacetRegistry } from "
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/eventsTabSide.tsx",
    "chars": 992,
    "preview": "import { Box, Checkbox } from '@mantine/core'\nimport React from 'react'\nimport type { EventFilters, FacetRegistry } from"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/eventsTabTop.module.css",
    "chars": 31,
    "preview": ".textInput {\n  flex-grow: 1;\n}\n"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/eventsTabTop.tsx",
    "chars": 990,
    "preview": "import { Button, Group, TextInput } from '@mantine/core'\nimport React from 'react'\nimport { flushEvents } from '../../.."
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/facetList.module.css",
    "chars": 602,
    "preview": ".facetChildren {\n  /* the Mantine checkbox component happen to be 20px wide */\n  --dd-checkbox-width: 20px;\n  /* the Man"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/facetList.tsx",
    "chars": 6651,
    "preview": "import { Box, Button, Card, Checkbox, Collapse, Flex, Text } from '@mantine/core'\nimport React from 'react'\nimport type "
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/index.ts",
    "chars": 88,
    "preview": "export { EventsTab } from './eventsTab'\nexport { DEFAULT_COLUMNS } from './columnUtils'\n"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/rowButton.module.css",
    "chars": 50,
    "preview": ".root {\n  display: flex;\n  margin: -4px 0 -4px;\n}\n"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/eventsTab/rowButton.tsx",
    "chars": 740,
    "preview": "import type { ActionIconProps, PolymorphicComponentProps } from '@mantine/core'\nimport { ActionIcon } from '@mantine/cor"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/infosTab.tsx",
    "chars": 11258,
    "preview": "import { Anchor, Button, Divider, Group, JsonInput, Space, Text } from '@mantine/core'\nimport type { ReactNode } from 'r"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/replayTab.module.css",
    "chars": 134,
    "preview": ".iframe {\n  height: 100%;\n  width: 100%;\n  border: none;\n  display: block;\n}\n\n.iframe:not([data-status='ready']) {\n  dis"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/replayTab.tsx",
    "chars": 4510,
    "preview": "import { Button, Flex, Checkbox, Badge } from '@mantine/core'\nimport React, { useEffect, useRef, useState } from 'react'"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/settingsTab.module.css",
    "chars": 23,
    "preview": ".select {\n  flex: 1;\n}\n"
  },
  {
    "path": "developer-extension/src/panel/components/tabs/settingsTab.tsx",
    "chars": 11199,
    "preview": "import { Badge, Box, Checkbox, Code, Group, Space, Switch, Text, SegmentedControl, Accordion } from '@mantine/core'\nimpo"
  },
  {
    "path": "developer-extension/src/panel/copy.ts",
    "chars": 339,
    "preview": "export function copy(text: string) {\n  // Unfortunately, navigator.clipboard.writeText does not seem to work in extensio"
  },
  {
    "path": "developer-extension/src/panel/evalInWindow.ts",
    "chars": 734,
    "preview": "export function evalInWindow(code: string): Promise<unknown> {\n  return new Promise((resolve, reject) => {\n    chrome.de"
  },
  {
    "path": "developer-extension/src/panel/facets.constants.ts",
    "chars": 1898,
    "preview": "// Represents the path of a field in an event object. The special value '$eventSource' represent the\n// event source (ru"
  },
  {
    "path": "developer-extension/src/panel/flushEvents.spec.ts",
    "chars": 963,
    "preview": "import type { Configuration } from '@datadog/browser-core'\nimport { registerCleanupTask } from '../../../packages/core/t"
  },
  {
    "path": "developer-extension/src/panel/flushEvents.ts",
    "chars": 773,
    "preview": "import { createLogger } from '../common/logger'\nimport { evalInWindow } from './evalInWindow'\n\nconst logger = createLogg"
  },
  {
    "path": "developer-extension/src/panel/formatNumber.ts",
    "chars": 1162,
    "preview": "const LOCALE = 'en-US'\n\nexport function formatNumber(n: number): string {\n  if (isNaN(n)) {\n    return '(NaN)'\n  }\n  ret"
  },
  {
    "path": "developer-extension/src/panel/global.css",
    "chars": 695,
    "preview": ":root {\n  /* To keep z-index management simple, define all z-index values here, in ascending order */\n  --dd-json-z-inde"
  },
  {
    "path": "developer-extension/src/panel/hooks/useAutoFlushEvents.ts",
    "chars": 356,
    "preview": "import { useEffect } from 'react'\nimport { flushEvents } from '../flushEvents'\n\nconst FLUSH_EVENTS_INTERVAL = 5000\n\nexpo"
  },
  {
    "path": "developer-extension/src/panel/hooks/useDebugMode.ts",
    "chars": 195,
    "preview": "import { useEffect } from 'react'\nimport { setDebugMode } from '../setDebugMode'\n\nexport function useDebugMode(enabled: "
  },
  {
    "path": "developer-extension/src/panel/hooks/useDevServerStatus.ts",
    "chars": 1908,
    "preview": "import { useEffect, useState } from 'react'\n\nconst REFRESH_DELAY = 2000\nconst CHECKING_STATUS_DELAY = 500\n\nexport const "
  },
  {
    "path": "developer-extension/src/panel/hooks/useEvents/eventCollection.ts",
    "chars": 3471,
    "preview": "import type { EventCollectionStrategy } from '../../../common/extension.types'\nimport { INTAKE_DOMAINS } from '../../../"
  },
  {
    "path": "developer-extension/src/panel/hooks/useEvents/eventFilters.spec.ts",
    "chars": 5603,
    "preview": "import type { RumEvent } from '../../../../../packages/rum-core/src/rumEvent.types'\nimport type { LogsEvent } from '../."
  },
  {
    "path": "developer-extension/src/panel/hooks/useEvents/eventFilters.ts",
    "chars": 4191,
    "preview": "import type { SdkEvent } from '../../sdkEvent'\nimport type { RumViewEvent } from '../../../../../packages/rum-core/src/r"
  },
  {
    "path": "developer-extension/src/panel/hooks/useEvents/facetRegistry.spec.ts",
    "chars": 1028,
    "preview": "import { isChromium } from '../../../../../packages/core/src/tools/utils/browserDetection'\nimport { getAllFields } from "
  },
  {
    "path": "developer-extension/src/panel/hooks/useEvents/facetRegistry.ts",
    "chars": 5022,
    "preview": "import { getEventSource, type SdkEvent } from '../../sdkEvent'\nimport { createLogger } from '../../../common/logger'\nimp"
  },
  {
    "path": "developer-extension/src/panel/hooks/useEvents/index.ts",
    "chars": 158,
    "preview": "export { useEvents } from './useEvents'\nexport type { EventFilters, FacetValuesFilter } from './eventFilters'\nexport { F"
  },
  {
    "path": "developer-extension/src/panel/hooks/useEvents/useEvents.ts",
    "chars": 1901,
    "preview": "import { useEffect, useRef, useState } from 'react'\nimport type { SdkEvent } from '../../sdkEvent'\nimport type { EventCo"
  },
  {
    "path": "developer-extension/src/panel/hooks/useNetworkRules.ts",
    "chars": 620,
    "preview": "import { useEffect } from 'react'\nimport type { NetRequestRulesOptions } from '../../common/extension.types'\nimport { se"
  },
  {
    "path": "developer-extension/src/panel/hooks/useSdkInfos.ts",
    "chars": 3754,
    "preview": "import { useEffect, useState } from 'react'\nimport type { RumInternalContext, Context } from '@datadog/browser-core'\nimp"
  },
  {
    "path": "developer-extension/src/panel/hooks/useSettings.ts",
    "chars": 3021,
    "preview": "import { useEffect, useReducer } from 'react'\nimport { SESSION_STORAGE_SETTINGS_KEY } from '../../common/sessionKeyConst"
  },
  {
    "path": "developer-extension/src/panel/index.tsx",
    "chars": 898,
    "preview": "// The default eslint-plugin-import resolver does not support \"exports\" fields in package.json yet.\n// Ignore the error "
  },
  {
    "path": "developer-extension/src/panel/monitoring.ts",
    "chars": 443,
    "preview": "import { datadogRum } from '@datadog/browser-rum'\nimport { datadogLogs } from '@datadog/browser-logs'\nimport { DEFAULT_P"
  },
  {
    "path": "developer-extension/src/panel/overrides.d.ts",
    "chars": 23,
    "preview": "declare module '*.css'\n"
  },
  {
    "path": "developer-extension/src/panel/sampler.ts",
    "chars": 884,
    "preview": "import { isSampled } from '@datadog/browser-rum-core'\n\nexport function computeRumTrackingType(\n  sessionId: string,\n  co"
  },
  {
    "path": "developer-extension/src/panel/sdkEvent.ts",
    "chars": 1125,
    "preview": "import type { TelemetryEvent } from '../../../packages/core/src/domain/telemetry'\nimport type { LogsEvent } from '../../"
  },
  {
    "path": "developer-extension/src/panel/sessionReplayPlayer/sessionReplayPlayer.types.ts",
    "chars": 6042,
    "preview": "// Those types are coming from the Web-UI Session Replay Player. Please keep them as close as\n// possible to the origina"
  },
  {
    "path": "developer-extension/src/panel/sessionReplayPlayer/startSessionReplayPlayer.ts",
    "chars": 6306,
    "preview": "import { IncrementalSource, RecordType } from '@datadog/browser-rum/src/types'\nimport type { BrowserRecord } from '@data"
  },
  {
    "path": "developer-extension/src/panel/setDebugMode.ts",
    "chars": 365,
    "preview": "import { createLogger } from '../common/logger'\nimport { evalInWindow } from './evalInWindow'\n\nconst logger = createLogg"
  },
  {
    "path": "developer-extension/tsconfig.json",
    "chars": 388,
    "preview": "{\n  \"extends\": \"../tsconfig.base.json\",\n\n  \"compilerOptions\": {\n    \"module\": \"preserve\",\n    \"target\": \"esnext\",\n    \"m"
  },
  {
    "path": "developer-extension/wxt.config.ts",
    "chars": 1267,
    "preview": "import { defineConfig } from 'wxt'\nimport { getBuildEnvValue } from '../scripts/lib/buildEnv'\n\n// eslint-disable-next-li"
  },
  {
    "path": "docs/ARCHITECTURE.md",
    "chars": 3287,
    "preview": "# Architecture\n\nDescribes architecture patterns with examples — detailed component documentation lives as JSDoc on the f"
  },
  {
    "path": "docs/CONVENTIONS.md",
    "chars": 5663,
    "preview": "# Conventions\n\n## Dependencies as parameters\n\nFavor passing a loosely coupled domain dependency as a parameter instead o"
  },
  {
    "path": "docs/DEVELOPMENT.md",
    "chars": 3523,
    "preview": "# Development\n\n## Commit messages and Pull Request titles\n\nMessages should be concise but explanatory. We are using a co"
  },
  {
    "path": "docs/README.md",
    "chars": 1047,
    "preview": "# Documentation\n\n## Policy\n\nWhen making changes that impact development workflows or architecture, update the relevant d"
  },
  {
    "path": "docs/TESTING.md",
    "chars": 2507,
    "preview": "# Testing\n\n## Test my change on my local environment\n\n1. Run `yarn dev`\n2. Open [http://localhost:8080](http://localhost"
  },
  {
    "path": "eslint-local-rules/disallowEnumExports.js",
    "chars": 3422,
    "preview": "import { SymbolFlags } from 'typescript'\n\n/**\n * This rule forbids exporting 'enums'.  It serves two purposes:\n *\n * # e"
  },
  {
    "path": "eslint-local-rules/disallowGenericUtils.js",
    "chars": 632,
    "preview": "import path from 'node:path'\n\nexport default {\n  meta: {\n    docs: {\n      description: 'Disallow the use of too generic"
  },
  {
    "path": "eslint-local-rules/disallowNonScripts.js",
    "chars": 1554,
    "preview": "export default {\n  meta: {\n    docs: {\n      description: 'Disallow JS files that are not used as a \"script\"',\n    },\n  "
  },
  {
    "path": "eslint-local-rules/disallowProtectedDirectoryImport.js",
    "chars": 2984,
    "preview": "import path from 'node:path'\nimport { minimatch } from 'minimatch'\n\nimport resolvePackage from 'eslint-module-utils/reso"
  },
  {
    "path": "eslint-local-rules/disallowSideEffects.js",
    "chars": 8382,
    "preview": "import path from 'node:path'\n\nexport default {\n  meta: {\n    docs: {\n      description:\n        'Disallow potential side"
  },
  {
    "path": "eslint-local-rules/disallowSpecImport.js",
    "chars": 570,
    "preview": "export default {\n  meta: {\n    docs: {\n      description: 'Disallow importing spec file code to avoid to execute the tes"
  },
  {
    "path": "eslint-local-rules/disallowTestImportExportFromSrc.js",
    "chars": 929,
    "preview": "export default {\n  meta: {\n    docs: {\n      description:\n        'Disallow importing or exporting test code in src code"
  },
  {
    "path": "eslint-local-rules/disallowUrlConstructorPatchValues.js",
    "chars": 800,
    "preview": "export default {\n  meta: {\n    docs: {\n      description: 'Disallow problematic URL constructor patched values.',\n      "
  },
  {
    "path": "eslint-local-rules/disallowZoneJsPatchedValues.js",
    "chars": 3147,
    "preview": "const PROBLEMATIC_IDENTIFIERS = {\n  // Using the patched `MutationObserver` from Zone.js triggers an infinite callback l"
  },
  {
    "path": "eslint-local-rules/enforceProdDepsImports.js",
    "chars": 2550,
    "preview": "import fs from 'node:fs'\n\nimport moduleVisitorPackage from 'eslint-module-utils/moduleVisitor.js'\nimport importTypePacka"
  },
  {
    "path": "eslint-local-rules/index.js",
    "chars": 1887,
    "preview": "import disallowSideEffects from './disallowSideEffects.js'\nimport disallowEnumExports from './disallowEnumExports.js'\nim"
  },
  {
    "path": "eslint-local-rules/monitorUntilCommentRules.js",
    "chars": 1805,
    "preview": "const METHODS_TO_CHECK = ['addTelemetryDebug', 'addTelemetryMetrics']\nconst MONITOR_COMMENT_FORMAT = /^\\s*monitor-until:"
  },
  {
    "path": "eslint-local-rules/secureCommandExecution.js",
    "chars": 1890,
    "preview": "export default {\n  meta: {\n    docs: {\n      description: 'Check command execution within nodejs scripts',\n    },\n    sc"
  },
  {
    "path": "eslint.config.mjs",
    "chars": 15935,
    "preview": "// @ts-check .ts config files are still experimental: https://github.com/eslint/eslint/discussions/17726\n\nimport eslint "
  },
  {
    "path": "package.json",
    "chars": 4737,
    "preview": "{\n  \"name\": \"browser-sdk\",\n  \"version\": \"6.32.0\",\n  \"description\": \"browser SDK\",\n  \"private\": true,\n  \"workspaces\": [\n "
  },
  {
    "path": "packages/core/.yarnrc",
    "chars": 17,
    "preview": "save-exact true\n\n"
  },
  {
    "path": "packages/core/LICENSE",
    "chars": 11351,
    "preview": "                                 Apache License\n                           Version 2.0, January 2004\n                   "
  },
  {
    "path": "packages/core/README.md",
    "chars": 42,
    "preview": "# `core`\n\nDatadog browser core utilities.\n"
  },
  {
    "path": "packages/core/package.json",
    "chars": 728,
    "preview": "{\n  \"name\": \"@datadog/browser-core\",\n  \"version\": \"6.32.0\",\n  \"license\": \"Apache-2.0\",\n  \"main\": \"cjs/index.js\",\n  \"modu"
  },
  {
    "path": "packages/core/src/boot/displayAlreadyInitializedError.spec.ts",
    "chars": 840,
    "preview": "import type { InitConfiguration } from '../domain/configuration'\nimport { display } from '../tools/display'\nimport { dis"
  },
  {
    "path": "packages/core/src/boot/displayAlreadyInitializedError.ts",
    "chars": 336,
    "preview": "import type { InitConfiguration } from '../domain/configuration'\nimport { display } from '../tools/display'\n\nexport func"
  },
  {
    "path": "packages/core/src/boot/init.spec.ts",
    "chars": 1407,
    "preview": "import { display } from '../tools/display'\nimport { defineGlobal } from './init'\n\ndescribe('defineGlobal', () => {\n  it("
  },
  {
    "path": "packages/core/src/boot/init.ts",
    "chars": 2087,
    "preview": "import { catchUserErrors } from '../tools/catchUserErrors'\nimport { setDebugMode } from '../tools/monitor'\nimport { disp"
  },
  {
    "path": "packages/core/src/browser/addEventListener.spec.ts",
    "chars": 5793,
    "preview": "import type { Configuration } from '../domain/configuration'\nimport { createNewEvent, mockZoneJs, registerCleanupTask } "
  },
  {
    "path": "packages/core/src/browser/addEventListener.ts",
    "chars": 5248,
    "preview": "import { monitor } from '../tools/monitor'\nimport { getZoneJsOriginalValue } from '../tools/getZoneJsOriginalValue'\nimpo"
  },
  {
    "path": "packages/core/src/browser/browser.types.ts",
    "chars": 2253,
    "preview": "// Those types come from the official TypeScript DOM library, but are not included in our minimal\n// supported TS versio"
  },
  {
    "path": "packages/core/src/browser/cookie.spec.ts",
    "chars": 1508,
    "preview": "import { mockCookies } from '../../test'\nimport { getCurrentSite } from './cookie'\n\ndescribe('cookie', () => {\n  describ"
  },
  {
    "path": "packages/core/src/browser/cookie.ts",
    "chars": 4324,
    "preview": "import { display } from '../tools/display'\nimport { ONE_MINUTE, ONE_SECOND } from '../tools/utils/timeUtils'\nimport {\n  "
  },
  {
    "path": "packages/core/src/browser/fetch.spec.ts",
    "chars": 1454,
    "preview": "import { type MockZoneJs, mockZoneJs } from '../../test'\nimport { fetch } from './fetch'\n\ndescribe('fetch', () => {\n  le"
  },
  {
    "path": "packages/core/src/browser/fetch.ts",
    "chars": 608,
    "preview": "import { getZoneJsOriginalValue } from '../tools/getZoneJsOriginalValue'\nimport { getGlobalObject } from '../tools/globa"
  },
  {
    "path": "packages/core/src/browser/fetchObservable.spec.ts",
    "chars": 11145,
    "preview": "import type { MockFetch, MockFetchManager } from '../../test'\nimport { registerCleanupTask, mockFetch } from '../../test"
  },
  {
    "path": "packages/core/src/browser/fetchObservable.ts",
    "chars": 5255,
    "preview": "import type { InstrumentedMethodCall } from '../tools/instrumentMethod'\nimport { instrumentMethod } from '../tools/instr"
  },
  {
    "path": "packages/core/src/browser/pageMayExitObservable.spec.ts",
    "chars": 1897,
    "preview": "import type { Configuration } from '../domain/configuration'\nimport { createNewEvent, restorePageVisibility, setPageVisi"
  },
  {
    "path": "packages/core/src/browser/pageMayExitObservable.ts",
    "chars": 2346,
    "preview": "import { Observable } from '../tools/observable'\nimport { objectValues } from '../tools/utils/polyfills'\nimport type { C"
  },
  {
    "path": "packages/core/src/browser/runOnReadyState.ts",
    "chars": 914,
    "preview": "import type { Configuration } from '../domain/configuration'\nimport { noop } from '../tools/utils/functionUtils'\nimport "
  },
  {
    "path": "packages/core/src/browser/xhrObservable.spec.ts",
    "chars": 11840,
    "preview": "import type { Configuration } from '../domain/configuration'\nimport { withXhr, mockXhr } from '../../test'\nimport type {"
  },
  {
    "path": "packages/core/src/browser/xhrObservable.ts",
    "chars": 4471,
    "preview": "import type { InstrumentedMethodCall } from '../tools/instrumentMethod'\nimport { instrumentMethod } from '../tools/instr"
  },
  {
    "path": "packages/core/src/domain/allowedTrackingOrigins.spec.ts",
    "chars": 7188,
    "preview": "import { replaceMockable, STACK_WITH_INIT_IN_EXTENSION, STACK_WITH_INIT_IN_PAGE } from '../../test'\nimport { display } f"
  },
  {
    "path": "packages/core/src/domain/allowedTrackingOrigins.ts",
    "chars": 1282,
    "preview": "import { display } from '../tools/display'\nimport { getGlobalObject } from '../tools/globalObject'\nimport { matchList } "
  },
  {
    "path": "packages/core/src/domain/bufferedData.spec.ts",
    "chars": 1167,
    "preview": "import { replaceMockable, registerCleanupTask } from '../../test'\nimport { Observable } from '../tools/observable'\nimpor"
  },
  {
    "path": "packages/core/src/domain/bufferedData.ts",
    "chars": 789,
    "preview": "import { BufferedObservable } from '../tools/observable'\nimport { mockable } from '../tools/mockable'\nimport type { RawE"
  },
  {
    "path": "packages/core/src/domain/configuration/configuration.spec.ts",
    "chars": 11234,
    "preview": "import type { RumEvent } from '../../../../rum-core/src'\nimport { EXHAUSTIVE_INIT_CONFIGURATION, SERIALIZED_EXHAUSTIVE_I"
  },
  {
    "path": "packages/core/src/domain/configuration/configuration.ts",
    "chars": 16536,
    "preview": "import { catchUserErrors } from '../../tools/catchUserErrors'\nimport { DOCS_ORIGIN, MORE_DETAILS, display } from '../../"
  },
  {
    "path": "packages/core/src/domain/configuration/endpointBuilder.spec.ts",
    "chars": 6743,
    "preview": "import type { Payload } from '../../transport'\nimport type { InitConfiguration } from './configuration'\nimport { createE"
  },
  {
    "path": "packages/core/src/domain/configuration/endpointBuilder.ts",
    "chars": 3916,
    "preview": "import type { Payload } from '../../transport'\nimport { timeStampNow } from '../../tools/utils/timeUtils'\nimport { norma"
  },
  {
    "path": "packages/core/src/domain/configuration/index.ts",
    "chars": 469,
    "preview": "export type { Configuration, InitConfiguration, ProxyFn } from './configuration'\nexport {\n  DefaultPrivacyLevel,\n  Trace"
  },
  {
    "path": "packages/core/src/domain/configuration/transportConfiguration.spec.ts",
    "chars": 6639,
    "preview": "import { INTAKE_SITE_FED_STAGING } from '../intakeSites'\nimport type { Payload } from '../../transport'\nimport { compute"
  },
  {
    "path": "packages/core/src/domain/configuration/transportConfiguration.ts",
    "chars": 2842,
    "preview": "import type { Site } from '../intakeSites'\nimport { INTAKE_SITE_US1, INTAKE_URL_PARAMETERS } from '../intakeSites'\nimpor"
  },
  {
    "path": "packages/core/src/domain/connectivity/connectivity.spec.ts",
    "chars": 1780,
    "preview": "import { setNavigatorOnLine, setNavigatorConnection } from '../../../test'\nimport { getConnectivity } from './connectivi"
  },
  {
    "path": "packages/core/src/domain/connectivity/connectivity.ts",
    "chars": 965,
    "preview": "import { globalObject } from '../../tools/globalObject'\n\nexport type NetworkInterface = 'bluetooth' | 'cellular' | 'ethe"
  },
  {
    "path": "packages/core/src/domain/connectivity/index.ts",
    "chars": 31,
    "preview": "export * from './connectivity'\n"
  },
  {
    "path": "packages/core/src/domain/console/consoleObservable.spec.ts",
    "chars": 4714,
    "preview": "/* eslint-disable no-console */\nimport { ignoreConsoleLogs } from '../../../test'\nimport { ConsoleApiName } from '../../"
  },
  {
    "path": "packages/core/src/domain/console/consoleObservable.ts",
    "chars": 3860,
    "preview": "import { isError, computeRawError } from '../error/error'\nimport { mergeObservables, Observable } from '../../tools/obse"
  },
  {
    "path": "packages/core/src/domain/context/contextConstants.ts",
    "chars": 874,
    "preview": "export const enum CustomerDataType {\n  FeatureFlag,\n  User,\n  GlobalContext,\n  View,\n  Account,\n}\n\n// Use a const instea"
  },
  {
    "path": "packages/core/src/domain/context/contextManager.spec.ts",
    "chars": 5206,
    "preview": "import { display } from '../../tools/display'\nimport type { PropertiesConfig } from './contextManager'\nimport { createCo"
  },
  {
    "path": "packages/core/src/domain/context/contextManager.ts",
    "chars": 2437,
    "preview": "import { deepClone } from '../../tools/mergeInto'\nimport { sanitize } from '../../tools/serialisation/sanitize'\nimport t"
  },
  {
    "path": "packages/core/src/domain/context/contextUtils.spec.ts",
    "chars": 1067,
    "preview": "import { display } from '../../tools/display'\nimport type { Context } from '../../tools/serialisation/context'\nimport ty"
  },
  {
    "path": "packages/core/src/domain/context/contextUtils.ts",
    "chars": 458,
    "preview": "import type { Context } from '../../tools/serialisation/context'\nimport { display } from '../../tools/display'\nimport { "
  }
]

// ... and 1105 more files (download for full content)

About this extraction

This page contains the full source code of the DataDog/browser-sdk GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 1305 files (8.6 MB), approximately 2.3M tokens, and a symbol index with 10315 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!