From 3a4cdbaeb9f0713ea450c23768212b9c0a19e0ef Mon Sep 17 00:00:00 2001 From: Jeppe Bundgaard Date: Thu, 23 Apr 2026 13:33:12 +0200 Subject: [PATCH] Expand edge gateway workspace and streamline app loading --- index.html | 1 - .../playwright-core/lib/bootstrap.js | 77 ++ .../playwright-core/lib/cli/browserActions.js | 308 ++++++ .../playwright-core/lib/cli/installActions.js | 171 ++++ .../playwright-core/lib/client/connect.js | 143 +++ .../playwright-core/lib/client/debugger.js | 57 ++ .../playwright-core/lib/client/disposable.js | 76 ++ .../playwright-core/lib/client/screencast.js | 88 ++ .../playwright-core/lib/mcpBundleImpl.js | 91 ++ .../lib/remote/playwrightPipeServer.js | 100 ++ .../lib/remote/playwrightWebSocketServer.js | 73 ++ .../lib/remote/serverTransport.js | 96 ++ .../server/dispatchers/debuggerDispatcher.js | 84 ++ .../dispatchers/disposableDispatcher.js | 39 + .../playwright-core/lib/server/disposable.js | 41 + .../playwright-core/lib/server/overlay.js | 138 +++ .../lib/server/utils/disposable.js | 32 + .../playwright-core/lib/serverRegistry.js | 156 +++ .../lib/tools/backend/browserBackend.js | 79 ++ .../lib/tools/backend/common.js | 63 ++ .../lib/tools/backend/config.js | 41 + .../lib/tools/backend/console.js | 66 ++ .../lib/tools/backend/context.js | 296 ++++++ .../lib/tools/backend/cookies.js | 152 +++ .../lib/tools/backend/devtools.js | 69 ++ .../lib/tools/backend/dialogs.js | 59 ++ .../lib/tools/backend/evaluate.js | 64 ++ .../lib/tools/backend/files.js | 60 ++ .../playwright-core/lib/tools/backend/form.js | 64 ++ .../lib/tools/backend/keyboard.js | 155 +++ .../lib/tools/backend/logFile.js | 95 ++ .../lib/tools/backend/mouse.js | 168 +++ .../lib/tools/backend/navigate.js | 106 ++ .../lib/tools/backend/network.js | 135 +++ .../playwright-core/lib/tools/backend/pdf.js | 48 + .../lib/tools/backend/response.js | 305 ++++++ .../lib/tools/backend/route.js | 140 +++ .../lib/tools/backend/runCode.js | 77 ++ .../lib/tools/backend/screenshot.js | 88 ++ .../lib/tools/backend/sessionLog.js | 74 ++ .../lib/tools/backend/snapshot.js | 208 ++++ .../lib/tools/backend/storage.js | 68 ++ .../playwright-core/lib/tools/backend/tab.js | 445 ++++++++ .../playwright-core/lib/tools/backend/tabs.js | 67 ++ .../playwright-core/lib/tools/backend/tool.js | 47 + .../lib/tools/backend/tools.js | 102 ++ .../lib/tools/backend/tracing.js | 78 ++ .../lib/tools/backend/utils.js | 83 ++ .../lib/tools/backend/verify.js | 151 +++ .../lib/tools/backend/video.js | 98 ++ .../playwright-core/lib/tools/backend/wait.js | 63 ++ .../lib/tools/backend/webstorage.js | 223 ++++ .../lib/tools/cli-client/cli.js | 6 + .../lib/tools/cli-client/help.json | 399 ++++++++ .../lib/tools/cli-client/minimist.js | 128 +++ .../lib/tools/cli-client/program.js | 350 +++++++ .../lib/tools/cli-client/registry.js | 176 ++++ .../lib/tools/cli-client/session.js | 289 ++++++ .../lib/tools/cli-client/skill/SKILL.md | 328 ++++++ .../skill/references/element-attributes.md | 23 + .../skill/references/playwright-tests.md | 39 + .../skill/references/request-mocking.md | 87 ++ .../skill/references/running-code.md | 231 +++++ .../skill/references/session-management.md | 169 ++++ .../skill/references/storage-state.md | 275 +++++ .../skill/references/test-generation.md | 88 ++ .../cli-client/skill/references/tracing.md | 139 +++ .../skill/references/video-recording.md | 143 +++ .../lib/tools/cli-daemon/command.js | 73 ++ .../lib/tools/cli-daemon/commands.js | 956 ++++++++++++++++++ .../lib/tools/cli-daemon/daemon.js | 157 +++ .../lib/tools/cli-daemon/helpGenerator.js | 177 ++++ .../lib/tools/cli-daemon/program.js | 129 +++ .../lib/tools/dashboard/appIcon.png | Bin 0 -> 16565 bytes .../lib/tools/dashboard/dashboardApp.js | 284 ++++++ .../tools/dashboard/dashboardController.js | 296 ++++++ .../playwright-core/lib/tools/exports.js | 60 ++ .../lib/tools/mcp/browserFactory.js | 233 +++++ .../playwright-core/lib/tools/mcp/cdpRelay.js | 352 +++++++ .../playwright-core/lib/tools/mcp/cli-stub.js | 7 + .../playwright-core/lib/tools/mcp/config.d.js | 16 + .../playwright-core/lib/tools/mcp/config.js | 446 ++++++++ .../lib/tools/mcp/configIni.js | 189 ++++ .../lib/tools/mcp/extensionContextFactory.js | 55 + .../playwright-core/lib/tools/mcp/index.js | 62 ++ .../playwright-core/lib/tools/mcp/log.js | 35 + .../playwright-core/lib/tools/mcp/program.js | 107 ++ .../playwright-core/lib/tools/mcp/protocol.js | 28 + .../playwright-core/lib/tools/mcp/watchdog.js | 44 + .../playwright-core/lib/tools/trace/SKILL.md | 171 ++++ .../lib/tools/trace/installSkill.js | 48 + .../lib/tools/trace/traceActions.js | 142 +++ .../lib/tools/trace/traceAttachments.js | 69 ++ .../lib/tools/trace/traceCli.js | 87 ++ .../lib/tools/trace/traceConsole.js | 97 ++ .../lib/tools/trace/traceErrors.js | 55 + .../lib/tools/trace/traceOpen.js | 69 ++ .../lib/tools/trace/traceParser.js | 96 ++ .../lib/tools/trace/traceRequests.js | 182 ++++ .../lib/tools/trace/traceScreenshot.js | 68 ++ .../lib/tools/trace/traceSnapshot.js | 149 +++ .../lib/tools/trace/traceUtils.js | 153 +++ .../lib/tools/utils/connect.js | 32 + .../lib/tools/utils/mcp/http.js | 152 +++ .../lib/tools/utils/mcp/server.js | 230 +++++ .../lib/tools/utils/mcp/tool.js | 47 + .../lib/tools/utils/socketConnection.js | 108 ++ .../lib/utils/isomorphic/formatUtils.js | 64 ++ .../lib/utils/isomorphic/imageUtils.js | 141 +++ .../lib/utils/isomorphic/jsonSchema.js | 89 ++ .../lib/utils/isomorphic/trace/traceUtils.js | 58 ++ .../vite/dashboard/assets/index-BAOybkp8.js | 50 + .../vite/dashboard/assets/index-CZAYOG76.css | 1 + .../lib/vite/dashboard/index.html | 28 + .../lib/vite/htmlReport/report.css | 1 + .../lib/vite/htmlReport/report.js | 72 ++ .../assets/codeMirrorModule-C8KMvO9L.js | 32 + .../vite/recorder/assets/index-CqAYX1I3.js | 193 ++++ .../assets/codeMirrorModule-DS0FLvoc.js | 32 + .../assets/defaultSettingsView-GTWI-W_B.js | 262 +++++ .../defaultSettingsView.B4dS75f0.css | 1 + .../lib/vite/traceViewer/index.C5466mMT.js | 2 + .../lib/vite/traceViewer/index.CzXZzn5A.css | 1 + .../lib/vite/traceViewer/uiMode.Vipi55dB.js | 6 + .../playwright-core/lib/zodBundle.js | 39 + .../playwright-core/lib/zodBundleImpl.js | 40 + .../playwright/lib/errorContext.js | 121 +++ .../playwright/lib/reportActions.js | 80 ++ .../playwright/lib/testActions.js | 220 ++++ package-lock.json | 146 ++- playwright.global-setup.mjs | 17 +- scripts/run-playwright-batched-chromium.mjs | 15 +- src/App.vue | 31 +- src/components/displays/DepartmentLanes.vue | 2 +- src/components/displays/FormDisplay.vue | 2 +- .../displays/boxes/ExpandableContentBox.vue | 2 +- src/components/displays/boxes/ProductBox.vue | 2 +- src/components/displays/boxes/WhiteBox.vue | 2 +- .../displays/boxes/WhiteBoxCard.vue | 2 +- .../buttons/ActionSettingsWheelButton.vue | 2 +- .../buttons/ActionSettingsWheelItem.vue | 2 +- .../buttons/ActionSettingsWheelItemLabel.vue | 2 +- .../displays/buttons/ColorIndicator.vue | 2 +- .../displays/buttons/EditableTableColumn.vue | 2 +- .../displays/calendars/CalendarSmall.vue | 2 +- .../department/pos/PosOrderItemsCurrent.vue | 2 +- .../CustomerProductDiscountDisplay.vue | 2 +- .../pos/order/POSOrderCustomerWishes.vue | 2 +- .../department/pos/order/POSOrderNote.vue | 2 +- .../pos/order/PosDesktopOrderWorkspace.vue | 2 +- .../pos/order/PosOrderLicensePlates.vue | 2 +- .../pos/order/PosOrderRegistrationField.vue | 2 +- .../steps/elements/PosDesktopLastWashCard.vue | 196 ++++ .../elements/PosDesktopVehicleSummaryCard.vue | 231 +++++ .../PosDepartmentStepMobile1Debug.vue | 2 +- .../PosDepartmentStepMobile1Location.vue | 2 +- ...epartmentStepMobile1RegistrationNumber.vue | 2 +- ...partmentStepMobile1RegistrationNumber1.vue | 2 +- ...partmentStepMobile1RegistrationNumber2.vue | 2 +- ...partmentStepMobile1RegistrationNumber3.vue | 2 +- ...tepMobile1RegistrationNumberInputField.vue | 2 +- ...entStepMobile1RegistrationNumberStatus.vue | 2 +- ...osDepartmentStepMobile2AdditionalItems.vue | 2 +- .../PosDepartmentStepMobile2Addons.vue | 2 +- .../PosDepartmentStepMobile2Categories.vue | 2 +- ...osDepartmentStepMobile2CategoryProduct.vue | 2 +- .../PosDepartmentStepMobile2Customer.vue | 2 +- .../PosDepartmentStepMobile2FloatingCart.vue | 2 +- .../PosDepartmentStepMobile2LastOrder.vue | 2 +- .../PosDepartmentStepMobile2Notes.vue | 2 +- .../PosDepartmentStepMobile2Product.vue | 2 +- ...tmentStepMobile2ProductRecommendations.vue | 2 +- .../PosDepartmentStepMobile2Products.vue | 2 +- .../PosDepartmentStepMobileAttachment.vue | 2 +- .../PosDepartmentStepMobileAttachments.vue | 2 +- .../PosDepartmentStepMobileButtonNextStep.vue | 2 +- ...epartmentStepMobilePopupAddProductNote.vue | 2 +- ...partmentStepMobilePopupCompleteBooking.vue | 2 +- ...entStepMobilePopupCompletedTransaction.vue | 2 +- ...DepartmentStepMobilePopupCustomerNotes.vue | 2 +- .../PosDepartmentStepMobilePopupError.vue | 2 +- .../PosDepartmentStepMobilePopupImage.vue | 2 +- ...epartmentStepMobilePopupSelectCustomer.vue | 2 +- ...DepartmentStepMobilePopupSelectVehicle.vue | 2 +- ...sDepartmentStepMobilePopupSetReference.vue | 2 +- ...osDepartmentStep1MobileChangeReference.vue | 2 +- .../PosDepartmentStep1MobileCustomerNotes.vue | 2 +- .../PosDepartmentStep1MobileManualInput.vue | 2 +- ...epartmentStep1MobileTransactionHistory.vue | 2 +- ...sDepartmentStep2MobileVehicleSelection.vue | 2 +- .../pos/sync/displays/PosOrdersSyncColumn.vue | 2 +- .../tables/SelfServeConditionRulesModal.vue | 2 +- .../tables/SelfServeTaskAttachmentsModal.vue | 2 +- .../displays/modals/CustomerModal.vue | 2 +- .../displays/modals/DefaultObjectSelector.vue | 2 +- .../InvoiceMultipleCollectionsModal.vue | 2 +- .../displays/modals/MassDataInserterModal.vue | 2 +- .../PickCustomerInvoiceCollectionModal.vue | 2 +- .../pagination/PaginationDisplayFilters.vue | 2 +- .../pagination/PaginationDisplayIsSmall.vue | 2 +- .../PaginationDisplayItemColumn.vue | 2 +- .../pagination/TableLabeledPagination.vue | 2 +- .../SelfServeConditionRulesPagination.vue | 2 +- .../SelfServeConditionsPagination.vue | 2 +- .../SelfServeMachineTypesPagination.vue | 2 +- .../SelfServeQuestionsPagination.vue | 2 +- .../SelfServeTasksPagination.vue | 2 +- .../models/DepartmentPos/OrdersPagination.vue | 2 +- .../DepartmentPos/OrdersSyncPagination.vue | 2 +- ...OrdersSyncPossibleDuplicatesPagination.vue | 2 +- .../DepartmentPos/TimeBookingsPagination.vue | 2 +- .../DepartmentPos/XLVaskUsagePagination.vue | 17 +- .../models/SuperUser/ModulesPagination.vue | 2 +- .../CategoriesPagination.vue | 2 +- .../CollectedOrderInvoicesListPagination.vue | 2 +- .../CollectedOrderInvoicesPagination.vue | 2 +- .../CustomerComplaintsPagination.vue | 2 +- .../CustomersPagination.vue | 2 +- .../DepartmentGatesPagination.vue | 2 +- .../DepartmentLanesPagination.vue | 2 +- .../DepartmentRelaysPagination.vue | 2 +- .../DepartmentsPagination.vue | 2 +- .../InvoiceOrdersPagination.vue | 2 +- .../NumberPlateScannersPagination.vue | 2 +- .../OpenCustomerInvoicePagination.vue | 2 +- .../ProductAddonsPagination.vue | 2 +- .../SuperUserDashboard/ProductsPagination.vue | 2 +- .../SuperUserDashboard/RolesPagination.vue | 2 +- .../SubuserGrantsPagination.vue | 2 +- .../SuperUserDashboard/SubusersPagination.vue | 2 +- .../SuperUserDashboard/UsersPagination.vue | 2 +- .../UserDashboard/OrderBookingsPagination.vue | 2 +- .../UserDashboard/VehiclesPagination.vue | 2 +- .../PaginationDisplayTemplateButton.vue | 2 +- .../PaginationDisplayTemplateDate.vue | 2 +- .../PaginationDisplayTemplateDates.vue | 2 +- .../displays/skeletons/SpanSkeleton.vue | 2 +- .../displays/steps/ScrollableSteps.vue | 2 +- .../configuration/ConfigurationCategory.vue | 2 +- .../configuration/ConfigurationError.vue | 2 +- .../configuration/ConfigurationInput.vue | 2 +- .../ConfigurationInputNumber.vue | 2 +- .../configuration/ConfigurationLoader.vue | 2 +- .../configuration/ConfigurationSecretKey.vue | 2 +- .../configuration/ConfigurationSelect.vue | 2 +- .../configuration/ConfigurationSwitch.vue | 2 +- .../CollectedOrderInvoicesDefaultTable.vue | 2 +- .../superuser/tables/InvoiceOrderTable.vue | 2 +- .../superuser/tables/OrderContentTable.vue | 2 +- .../tables/collectedOrderInvoicesTable.vue | 2 +- .../UserNotificationListItem.vue | 2 +- .../user/vehicles/SelectVehicleField.vue | 2 +- .../userbuttons/RoundedUserButton.vue | 2 +- src/components/forms/auth/LoginForm.vue | 10 +- .../department/pos/SelectProductsFormPOS.vue | 2 +- .../department/pos/SelectVehicleFormPOS.vue | 2 +- .../forms/department/pos/buttons/NextStep.vue | 2 +- .../department/pos/buttons/PreviousStep.vue | 2 +- .../buttons/PrintInvoiceFromOrderItems.vue | 2 +- .../department/pos/error/NextStepError.vue | 2 +- .../pos/input/LicensePlateInput.vue | 2 +- .../pos/input/LicensePlateReg1Input.vue | 4 +- .../pos/input/LicensePlateReg2Suggestions.vue | 2 +- .../elements/MassDataInsertButtonSave.vue | 4 +- .../other/elements/MassDataInsertControls.vue | 4 +- .../other/elements/MassDataInsertProgress.vue | 2 +- .../other/elements/MassDataInsertTable.vue | 4 +- src/components/global/Footer.vue | 4 +- src/components/global/PageLoader.vue | 2 +- src/components/global/PageTitle.vue | 2 +- src/components/global/ShowErrorField.vue | 2 +- src/components/menus/MenuDefault.vue | 2 +- .../models/navigation/NavigationMenu.vue | 2 +- .../step1/RegistrationNumberSearchResult.vue | 2 +- .../wrappers/NotFoundFallBackPageWrapper.vue | 2 +- .../page/wrappers/RestrictedPageWrapper.vue | 2 +- .../economic/exportOrderToDraftButton.vue | 2 +- .../economic/exportOrderToInvoiceButton.vue | 2 +- .../exportOrderToInvoiceStripeButton.vue | 2 +- .../economic/getOrderInvoicePDFButton.vue | 2 +- .../removeOrderDraftInvoiceButton.vue | 2 +- .../SessionUser/Objects/DepartmentGates.vue | 229 +++++ .../SessionUser/Objects/DepartmentLanes.vue | 69 +- .../session/token/superUserObject.vue | 14 +- .../timebookings/TimeBookingsCalendar.vue | 2 +- .../timebookings/displays/Calendar.vue | 2 +- .../elements/controls/ControlSelectAmount.vue | 2 +- .../controls/fields/ControlFieldInput.vue | 2 +- .../fields/ControlFieldInputLabel.vue | 2 +- .../search/ControlFieldInputSearchResult.vue | 2 +- .../search/ControlFieldInputSearchResults.vue | 2 +- .../elements/wrappers/LongPressListener.vue | 2 +- .../page/headers/menu/NavigationMenuItem.vue | 2 +- .../page/headers/menu/NavigationMenuItems.vue | 2 +- .../templates/generic/graphics/GenericTag.vue | 2 +- .../scanner/graphics/ScannerCamera.vue | 2 +- .../scanner/graphics/ScannerOutline.vue | 2 +- src/composables/useAppToast.js | 18 + .../EdgeGatewayDepartmentWorkspace.vue | 347 ++++++- .../edgeGateways/EdgeGatewayManager.vue | 454 ++++++++- .../edgeGateways/EdgeGatewayOverviewPage.vue | 13 +- .../EdgeGatewayStatisticsPage.vue | 22 +- .../edgeGateways/EdgeGatewayTasksPage.vue | 34 +- src/main.js | 9 +- src/middleware/admin.vue | 2 +- src/middleware/authMiddleware.js | 7 +- src/middleware/guestMiddleware.js | 7 +- src/router.js | 307 +++--- src/services/sessionStorage.js | 16 + src/services/shellyRelayOptions.js | 23 + src/views/auth/Login.vue | 6 +- src/views/dashboards/DefaultPageWrapper.vue | 3 +- .../modules/Pos/DepartmentPosOrder.vue | 2 +- .../DepartmentBookingCertificateOverview.vue | 2 +- .../daily-report/DepartmentDailyReport.vue | 2 +- .../DepartmentDashboardDailyReportCount.vue | 2 +- ...partmentDashboardDailyReportNavigation.vue | 2 +- ...rtmentDashboardDailyReportProductSales.vue | 2 +- ...epartmentDashboardDailyReportTodayForm.vue | 2 +- .../displays/DepartmentIntranetEvent.vue | 2 +- .../displays/TimeBookingsNewStepDivider.vue | 2 +- .../displays/TimeBookingsNewSummaryLine.vue | 2 +- .../grid/TimeBookingsNewGridLabel.vue | 2 +- .../displays/grid/TimeBookingsNewGridSlot.vue | 2 +- .../TimeBookingsElementCompleteButton.vue | 2 +- .../TimeBookingsElementReg1Addons.vue | 2 +- .../TimeBookingsElementReg2Addons.vue | 2 +- .../TimeBookingsElementSelectLocation.vue | 2 +- .../TimeBookingsElementSelectNotes.vue | 2 +- .../TimeBookingsElementSelectPoNumber.vue | 2 +- .../TimeBookingsElementSelectReference.vue | 2 +- .../TimeBookingsElementSelectVehicles.vue | 2 +- .../TimeBookingsElementSelectWashType.vue | 2 +- .../TimeBookingsElementVehicleSuggestions.vue | 2 +- .../book/steps/TimeBookingsNewStep1.vue | 2 +- .../book/steps/TimeBookingsNewStep2.vue | 4 +- .../book/steps/TimeBookingsNewStep3.vue | 4 +- .../book/steps/TimeBookingsNewStep4.vue | 4 +- .../DepartmentDailyBookingReportSmall.vue | 2 +- .../displays/DepartmentDailyReportSmall.vue | 2 +- .../DepartmentDailyReportThisWeek.vue | 2 +- .../DepartmentDashboardOverviewNavigation.vue | 2 +- .../other/displays/DepartmentsChartReport.vue | 2 +- ...voicingBillingPeriodInvoiceProgressBar.vue | 2 +- ...voicingBillingPeriodCustomerAttributes.vue | 2 +- .../layout/InvoicingBillingPeriodFilters.vue | 2 +- .../collectedOrderInvoiceCustomerNotes.vue | 2 +- .../displays/collectedOrderInvoiceManage.vue | 2 +- .../collectedOrderInvoiceManageEconomic.vue | 2 +- .../profile/DepartmentCreatebrandForm.vue | 2 +- .../profile/DepartmentEditbrandForm.vue | 2 +- .../SuperUserDashboardProductAddons.vue | 2 +- .../machine/SelfServeGenericStatus.vue | 2 +- .../machine/SelfServeMachineControls.vue | 2 +- .../machine/SelfServeMachineStatus.vue | 2 +- .../overview/StatisticsDepartmentGoal.vue | 2 +- .../user/UserWashSubscriptions.vue | 2 +- .../user/displays/UserDefaultDepartment.vue | 2 +- .../user/displays/UserFixedPricing.vue | 2 +- .../other/UserOtherSpecialArrangement.vue | 2 +- .../other/UserOtherVaskeabonnement.vue | 2 +- .../UserVehicleSubscriptionsDisplay.vue | 2 +- .../vehicles/UserVehicleSummaryDisplay.vue | 2 +- .../vehicle/displays/XLVaskUsageLog.vue | 2 +- .../xlvask/tables/XLVaskCustomersTable.vue | 2 +- .../NewBookingVehicleTypeSelection.vue | 2 +- .../displays/steps/NewBookingStep5.vue | 2 +- .../displays/tables/OrderBookingsTable.vue | 2 +- .../displays/material/MyMaterialBox.vue | 2 +- .../displays/material/MyMaterialCard.vue | 2 +- .../userDashboard/orders/MyOrder.vue | 4 +- .../vehicles/displays/VehicleDisplay.vue | 2 +- src/views/errors/ConnectivityIssue.vue | 4 +- src/views/pages/LandingPage.vue | 6 +- tests/e2e/auth.smoke.spec.js | 15 +- tests/e2e/edge-gateways.routes.spec.js | 40 +- tests/e2e/edge-gateways.smoke.spec.js | 217 ++++ tests/e2e/superuser-department-lanes.spec.ts | 113 +++ tests/e2e/support/network.js | 2 +- .../department-lanes-relay-options.spec.js | 108 ++ .../edge-gateway-workflow-helpers.spec.js | 22 +- tests/unit/edge-gateway-workspace.spec.js | 61 +- tests/unit/shelly-relay-options.spec.js | 34 + vite.config.js | 41 +- 384 files changed, 18614 insertions(+), 616 deletions(-) create mode 100644 node_modules.codex-backup/playwright-core/lib/bootstrap.js create mode 100644 node_modules.codex-backup/playwright-core/lib/cli/browserActions.js create mode 100644 node_modules.codex-backup/playwright-core/lib/cli/installActions.js create mode 100644 node_modules.codex-backup/playwright-core/lib/client/connect.js create mode 100644 node_modules.codex-backup/playwright-core/lib/client/debugger.js create mode 100644 node_modules.codex-backup/playwright-core/lib/client/disposable.js create mode 100644 node_modules.codex-backup/playwright-core/lib/client/screencast.js create mode 100644 node_modules.codex-backup/playwright-core/lib/mcpBundleImpl.js create mode 100644 node_modules.codex-backup/playwright-core/lib/remote/playwrightPipeServer.js create mode 100644 node_modules.codex-backup/playwright-core/lib/remote/playwrightWebSocketServer.js create mode 100644 node_modules.codex-backup/playwright-core/lib/remote/serverTransport.js create mode 100644 node_modules.codex-backup/playwright-core/lib/server/dispatchers/debuggerDispatcher.js create mode 100644 node_modules.codex-backup/playwright-core/lib/server/dispatchers/disposableDispatcher.js create mode 100644 node_modules.codex-backup/playwright-core/lib/server/disposable.js create mode 100644 node_modules.codex-backup/playwright-core/lib/server/overlay.js create mode 100644 node_modules.codex-backup/playwright-core/lib/server/utils/disposable.js create mode 100644 node_modules.codex-backup/playwright-core/lib/serverRegistry.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/browserBackend.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/common.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/config.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/console.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/context.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/cookies.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/devtools.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/dialogs.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/evaluate.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/files.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/form.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/keyboard.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/logFile.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/mouse.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/navigate.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/network.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/pdf.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/response.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/route.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/runCode.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/screenshot.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/sessionLog.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/snapshot.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/storage.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/tab.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/tabs.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/tool.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/tools.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/tracing.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/utils.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/verify.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/video.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/wait.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/backend/webstorage.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/cli.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/help.json create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/minimist.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/program.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/registry.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/session.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/SKILL.md create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/element-attributes.md create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/playwright-tests.md create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/request-mocking.md create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/running-code.md create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/session-management.md create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/storage-state.md create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/test-generation.md create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/tracing.md create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/video-recording.md create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/command.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/commands.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/daemon.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/helpGenerator.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/program.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/dashboard/appIcon.png create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/dashboard/dashboardApp.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/dashboard/dashboardController.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/exports.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/mcp/browserFactory.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/mcp/cdpRelay.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/mcp/cli-stub.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/mcp/config.d.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/mcp/config.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/mcp/configIni.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/mcp/extensionContextFactory.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/mcp/index.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/mcp/log.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/mcp/program.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/mcp/protocol.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/mcp/watchdog.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/trace/SKILL.md create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/trace/installSkill.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/trace/traceActions.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/trace/traceAttachments.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/trace/traceCli.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/trace/traceConsole.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/trace/traceErrors.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/trace/traceOpen.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/trace/traceParser.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/trace/traceRequests.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/trace/traceScreenshot.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/trace/traceSnapshot.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/trace/traceUtils.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/utils/connect.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/utils/mcp/http.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/utils/mcp/server.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/utils/mcp/tool.js create mode 100644 node_modules.codex-backup/playwright-core/lib/tools/utils/socketConnection.js create mode 100644 node_modules.codex-backup/playwright-core/lib/utils/isomorphic/formatUtils.js create mode 100644 node_modules.codex-backup/playwright-core/lib/utils/isomorphic/imageUtils.js create mode 100644 node_modules.codex-backup/playwright-core/lib/utils/isomorphic/jsonSchema.js create mode 100644 node_modules.codex-backup/playwright-core/lib/utils/isomorphic/trace/traceUtils.js create mode 100644 node_modules.codex-backup/playwright-core/lib/vite/dashboard/assets/index-BAOybkp8.js create mode 100644 node_modules.codex-backup/playwright-core/lib/vite/dashboard/assets/index-CZAYOG76.css create mode 100644 node_modules.codex-backup/playwright-core/lib/vite/dashboard/index.html create mode 100644 node_modules.codex-backup/playwright-core/lib/vite/htmlReport/report.css create mode 100644 node_modules.codex-backup/playwright-core/lib/vite/htmlReport/report.js create mode 100644 node_modules.codex-backup/playwright-core/lib/vite/recorder/assets/codeMirrorModule-C8KMvO9L.js create mode 100644 node_modules.codex-backup/playwright-core/lib/vite/recorder/assets/index-CqAYX1I3.js create mode 100644 node_modules.codex-backup/playwright-core/lib/vite/traceViewer/assets/codeMirrorModule-DS0FLvoc.js create mode 100644 node_modules.codex-backup/playwright-core/lib/vite/traceViewer/assets/defaultSettingsView-GTWI-W_B.js create mode 100644 node_modules.codex-backup/playwright-core/lib/vite/traceViewer/defaultSettingsView.B4dS75f0.css create mode 100644 node_modules.codex-backup/playwright-core/lib/vite/traceViewer/index.C5466mMT.js create mode 100644 node_modules.codex-backup/playwright-core/lib/vite/traceViewer/index.CzXZzn5A.css create mode 100644 node_modules.codex-backup/playwright-core/lib/vite/traceViewer/uiMode.Vipi55dB.js create mode 100644 node_modules.codex-backup/playwright-core/lib/zodBundle.js create mode 100644 node_modules.codex-backup/playwright-core/lib/zodBundleImpl.js create mode 100644 node_modules.codex-backup/playwright/lib/errorContext.js create mode 100644 node_modules.codex-backup/playwright/lib/reportActions.js create mode 100644 node_modules.codex-backup/playwright/lib/testActions.js create mode 100644 src/components/displays/department/pos/steps/elements/PosDesktopLastWashCard.vue create mode 100644 src/components/displays/department/pos/steps/elements/PosDesktopVehicleSummaryCard.vue create mode 100644 src/composables/useAppToast.js create mode 100644 src/services/sessionStorage.js create mode 100644 src/services/shellyRelayOptions.js create mode 100644 tests/e2e/superuser-department-lanes.spec.ts create mode 100644 tests/unit/department-lanes-relay-options.spec.js create mode 100644 tests/unit/shelly-relay-options.spec.js diff --git a/index.html b/index.html index 154d2931..f886d4aa 100644 --- a/index.html +++ b/index.html @@ -8,7 +8,6 @@ - diff --git a/node_modules.codex-backup/playwright-core/lib/bootstrap.js b/node_modules.codex-backup/playwright-core/lib/bootstrap.js new file mode 100644 index 00000000..f00db609 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/bootstrap.js @@ -0,0 +1,77 @@ +"use strict"; +if (process.env.PW_INSTRUMENT_MODULES) { + const Module = require("module"); + const originalLoad = Module._load; + const root = { name: "", selfMs: 0, totalMs: 0, childrenMs: 0, children: [] }; + let current = root; + const stack = []; + Module._load = function(request, _parent, _isMain) { + const node = { name: request, selfMs: 0, totalMs: 0, childrenMs: 0, children: [] }; + current.children.push(node); + stack.push(current); + current = node; + const start = performance.now(); + let result; + try { + result = originalLoad.apply(this, arguments); + } catch (e) { + current = stack.pop(); + current.children.pop(); + throw e; + } + const duration = performance.now() - start; + node.totalMs = duration; + node.selfMs = Math.max(0, duration - node.childrenMs); + current = stack.pop(); + current.childrenMs += duration; + return result; + }; + process.on("exit", () => { + function printTree(node, prefix, isLast, lines2, depth) { + if (node.totalMs < 1 && depth > 0) + return; + const connector = depth === 0 ? "" : isLast ? "\u2514\u2500\u2500 " : "\u251C\u2500\u2500 "; + const time = `${node.totalMs.toFixed(1).padStart(8)}ms`; + const self = node.children.length ? ` (self: ${node.selfMs.toFixed(1)}ms)` : ""; + lines2.push(`${time} ${prefix}${connector}${node.name}${self}`); + const childPrefix = prefix + (depth === 0 ? "" : isLast ? " " : "\u2502 "); + const sorted2 = node.children.slice().sort((a, b) => b.totalMs - a.totalMs); + for (let i = 0; i < sorted2.length; i++) + printTree(sorted2[i], childPrefix, i === sorted2.length - 1, lines2, depth + 1); + } + let totalModules = 0; + function count(n) { + totalModules++; + n.children.forEach(count); + } + root.children.forEach(count); + const lines = []; + const sorted = root.children.slice().sort((a, b) => b.totalMs - a.totalMs); + for (let i = 0; i < sorted.length; i++) + printTree(sorted[i], "", i === sorted.length - 1, lines, 0); + const totalMs = root.children.reduce((s, c) => s + c.totalMs, 0); + process.stderr.write(` +--- Module load tree: ${totalModules} modules, ${totalMs.toFixed(0)}ms total --- +` + lines.join("\n") + "\n"); + const flat = /* @__PURE__ */ new Map(); + function gather(n) { + const existing = flat.get(n.name); + if (existing) { + existing.selfMs += n.selfMs; + existing.totalMs += n.totalMs; + existing.count++; + } else { + flat.set(n.name, { selfMs: n.selfMs, totalMs: n.totalMs, count: 1 }); + } + n.children.forEach(gather); + } + root.children.forEach(gather); + const top50 = [...flat.entries()].sort((a, b) => b[1].selfMs - a[1].selfMs).slice(0, 50); + const flatLines = top50.map( + ([mod, { selfMs, totalMs: totalMs2, count: count2 }]) => `${selfMs.toFixed(1).padStart(8)}ms self ${totalMs2.toFixed(1).padStart(8)}ms total (x${String(count2).padStart(3)}) ${mod}` + ); + process.stderr.write(` +--- Top 50 modules by self time --- +` + flatLines.join("\n") + "\n"); + }); +} diff --git a/node_modules.codex-backup/playwright-core/lib/cli/browserActions.js b/node_modules.codex-backup/playwright-core/lib/cli/browserActions.js new file mode 100644 index 00000000..2a00914f --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/cli/browserActions.js @@ -0,0 +1,308 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var browserActions_exports = {}; +__export(browserActions_exports, { + codegen: () => codegen, + open: () => open, + pdf: () => pdf, + screenshot: () => screenshot +}); +module.exports = __toCommonJS(browserActions_exports); +var import_fs = __toESM(require("fs")); +var import_os = __toESM(require("os")); +var import_path = __toESM(require("path")); +var playwright = __toESM(require("../..")); +var import_utils = require("../utils"); +var import_utilsBundle = require("../utilsBundle"); +async function launchContext(options, extraOptions) { + validateOptions(options); + const browserType = lookupBrowserType(options); + const launchOptions = extraOptions; + if (options.channel) + launchOptions.channel = options.channel; + launchOptions.handleSIGINT = false; + const contextOptions = ( + // Copy the device descriptor since we have to compare and modify the options. + options.device ? { ...playwright.devices[options.device] } : {} + ); + if (!extraOptions.headless) + contextOptions.deviceScaleFactor = import_os.default.platform() === "darwin" ? 2 : 1; + if (browserType.name() === "webkit" && process.platform === "linux") { + delete contextOptions.hasTouch; + delete contextOptions.isMobile; + } + if (contextOptions.isMobile && browserType.name() === "firefox") + contextOptions.isMobile = void 0; + if (options.blockServiceWorkers) + contextOptions.serviceWorkers = "block"; + if (options.proxyServer) { + launchOptions.proxy = { + server: options.proxyServer + }; + if (options.proxyBypass) + launchOptions.proxy.bypass = options.proxyBypass; + } + if (options.viewportSize) { + try { + const [width, height] = options.viewportSize.split(",").map((n) => +n); + if (isNaN(width) || isNaN(height)) + throw new Error("bad values"); + contextOptions.viewport = { width, height }; + } catch (e) { + throw new Error('Invalid viewport size format: use "width,height", for example --viewport-size="800,600"'); + } + } + if (options.geolocation) { + try { + const [latitude, longitude] = options.geolocation.split(",").map((n) => parseFloat(n.trim())); + contextOptions.geolocation = { + latitude, + longitude + }; + } catch (e) { + throw new Error('Invalid geolocation format, should be "lat,long". For example --geolocation="37.819722,-122.478611"'); + } + contextOptions.permissions = ["geolocation"]; + } + if (options.userAgent) + contextOptions.userAgent = options.userAgent; + if (options.lang) + contextOptions.locale = options.lang; + if (options.colorScheme) + contextOptions.colorScheme = options.colorScheme; + if (options.timezone) + contextOptions.timezoneId = options.timezone; + if (options.loadStorage) + contextOptions.storageState = options.loadStorage; + if (options.ignoreHttpsErrors) + contextOptions.ignoreHTTPSErrors = true; + if (options.saveHar) { + contextOptions.recordHar = { path: import_path.default.resolve(process.cwd(), options.saveHar), mode: "minimal" }; + if (options.saveHarGlob) + contextOptions.recordHar.urlFilter = options.saveHarGlob; + contextOptions.serviceWorkers = "block"; + } + let browser; + let context; + if (options.userDataDir) { + context = await browserType.launchPersistentContext(options.userDataDir, { ...launchOptions, ...contextOptions }); + browser = context.browser(); + } else { + browser = await browserType.launch(launchOptions); + context = await browser.newContext(contextOptions); + } + let closingBrowser = false; + async function closeBrowser() { + if (closingBrowser) + return; + closingBrowser = true; + if (options.saveStorage) + await context.storageState({ path: options.saveStorage }).catch((e) => null); + if (options.saveHar) + await context.close(); + await browser.close(); + } + context.on("page", (page) => { + page.on("dialog", () => { + }); + page.on("close", () => { + const hasPage = browser.contexts().some((context2) => context2.pages().length > 0); + if (hasPage) + return; + closeBrowser().catch(() => { + }); + }); + }); + process.on("SIGINT", async () => { + await closeBrowser(); + (0, import_utils.gracefullyProcessExitDoNotHang)(130); + }); + const timeout = options.timeout ? parseInt(options.timeout, 10) : 0; + context.setDefaultTimeout(timeout); + context.setDefaultNavigationTimeout(timeout); + delete launchOptions.headless; + delete launchOptions.executablePath; + delete launchOptions.handleSIGINT; + delete contextOptions.deviceScaleFactor; + return { browser, browserName: browserType.name(), context, contextOptions, launchOptions, closeBrowser }; +} +async function openPage(context, url) { + let page = context.pages()[0]; + if (!page) + page = await context.newPage(); + if (url) { + if (import_fs.default.existsSync(url)) + url = "file://" + import_path.default.resolve(url); + else if (!url.startsWith("http") && !url.startsWith("file://") && !url.startsWith("about:") && !url.startsWith("data:")) + url = "http://" + url; + await page.goto(url); + } + return page; +} +async function open(options, url) { + const { context } = await launchContext(options, { headless: !!process.env.PWTEST_CLI_HEADLESS, executablePath: process.env.PWTEST_CLI_EXECUTABLE_PATH }); + await context._exposeConsoleApi(); + await openPage(context, url); +} +async function codegen(options, url) { + const { target: language, output: outputFile, testIdAttribute: testIdAttributeName } = options; + const tracesDir = import_path.default.join(import_os.default.tmpdir(), `playwright-recorder-trace-${Date.now()}`); + const { context, browser, launchOptions, contextOptions, closeBrowser } = await launchContext(options, { + headless: !!process.env.PWTEST_CLI_HEADLESS, + executablePath: process.env.PWTEST_CLI_EXECUTABLE_PATH, + tracesDir + }); + const donePromise = new import_utils.ManualPromise(); + maybeSetupTestHooks(browser, closeBrowser, donePromise); + import_utilsBundle.dotenv.config({ path: "playwright.env" }); + await context._enableRecorder({ + language, + launchOptions, + contextOptions, + device: options.device, + saveStorage: options.saveStorage, + mode: "recording", + testIdAttributeName, + outputFile: outputFile ? import_path.default.resolve(outputFile) : void 0, + handleSIGINT: false + }); + await openPage(context, url); + donePromise.resolve(); +} +async function maybeSetupTestHooks(browser, closeBrowser, donePromise) { + if (!process.env.PWTEST_CLI_IS_UNDER_TEST) + return; + const logs = []; + require("playwright-core/lib/utilsBundle").debug.log = (...args) => { + const line = require("util").format(...args) + "\n"; + logs.push(line); + process.stderr.write(line); + }; + browser.on("disconnected", () => { + const hasCrashLine = logs.some((line) => line.includes("process did exit:") && !line.includes("process did exit: exitCode=0, signal=null")); + if (hasCrashLine) { + process.stderr.write("Detected browser crash.\n"); + (0, import_utils.gracefullyProcessExitDoNotHang)(1); + } + }); + const close = async () => { + await donePromise; + await closeBrowser(); + }; + if (process.env.PWTEST_CLI_EXIT_AFTER_TIMEOUT) { + setTimeout(close, +process.env.PWTEST_CLI_EXIT_AFTER_TIMEOUT); + return; + } + let stdin = ""; + process.stdin.on("data", (data) => { + stdin += data.toString(); + if (stdin.startsWith("exit")) { + process.stdin.destroy(); + close(); + } + }); +} +async function waitForPage(page, captureOptions) { + if (captureOptions.waitForSelector) { + console.log(`Waiting for selector ${captureOptions.waitForSelector}...`); + await page.waitForSelector(captureOptions.waitForSelector); + } + if (captureOptions.waitForTimeout) { + console.log(`Waiting for timeout ${captureOptions.waitForTimeout}...`); + await page.waitForTimeout(parseInt(captureOptions.waitForTimeout, 10)); + } +} +async function screenshot(options, captureOptions, url, path2) { + const { context } = await launchContext(options, { headless: true }); + console.log("Navigating to " + url); + const page = await openPage(context, url); + await waitForPage(page, captureOptions); + console.log("Capturing screenshot into " + path2); + await page.screenshot({ path: path2, fullPage: !!captureOptions.fullPage }); + await page.close(); +} +async function pdf(options, captureOptions, url, path2) { + if (options.browser !== "chromium") + throw new Error("PDF creation is only working with Chromium"); + const { context } = await launchContext({ ...options, browser: "chromium" }, { headless: true }); + console.log("Navigating to " + url); + const page = await openPage(context, url); + await waitForPage(page, captureOptions); + console.log("Saving as pdf into " + path2); + await page.pdf({ path: path2, format: captureOptions.paperFormat }); + await page.close(); +} +function lookupBrowserType(options) { + let name = options.browser; + if (options.device) { + const device = playwright.devices[options.device]; + name = device.defaultBrowserType; + } + let browserType; + switch (name) { + case "chromium": + browserType = playwright.chromium; + break; + case "webkit": + browserType = playwright.webkit; + break; + case "firefox": + browserType = playwright.firefox; + break; + case "cr": + browserType = playwright.chromium; + break; + case "wk": + browserType = playwright.webkit; + break; + case "ff": + browserType = playwright.firefox; + break; + } + if (browserType) + return browserType; + import_utilsBundle.program.help(); +} +function validateOptions(options) { + if (options.device && !(options.device in playwright.devices)) { + const lines = [`Device descriptor not found: '${options.device}', available devices are:`]; + for (const name in playwright.devices) + lines.push(` "${name}"`); + throw new Error(lines.join("\n")); + } + if (options.colorScheme && !["light", "dark"].includes(options.colorScheme)) + throw new Error('Invalid color scheme, should be one of "light", "dark"'); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + codegen, + open, + pdf, + screenshot +}); diff --git a/node_modules.codex-backup/playwright-core/lib/cli/installActions.js b/node_modules.codex-backup/playwright-core/lib/cli/installActions.js new file mode 100644 index 00000000..eddcf4ad --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/cli/installActions.js @@ -0,0 +1,171 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var installActions_exports = {}; +__export(installActions_exports, { + installBrowsers: () => installBrowsers, + installDeps: () => installDeps, + markDockerImage: () => markDockerImage, + registry: () => import_server.registry, + uninstallBrowsers: () => uninstallBrowsers +}); +module.exports = __toCommonJS(installActions_exports); +var import_path = __toESM(require("path")); +var import_server = require("../server"); +var import_utils = require("../utils"); +var import_utils2 = require("../utils"); +var import_ascii = require("../server/utils/ascii"); +function printInstalledBrowsers(browsers) { + const browserPaths = /* @__PURE__ */ new Set(); + for (const browser of browsers) + browserPaths.add(browser.browserPath); + console.log(` Browsers:`); + for (const browserPath of [...browserPaths].sort()) + console.log(` ${browserPath}`); + console.log(` References:`); + const references = /* @__PURE__ */ new Set(); + for (const browser of browsers) + references.add(browser.referenceDir); + for (const reference of [...references].sort()) + console.log(` ${reference}`); +} +function printGroupedByPlaywrightVersion(browsers) { + const dirToVersion = /* @__PURE__ */ new Map(); + for (const browser of browsers) { + if (dirToVersion.has(browser.referenceDir)) + continue; + const packageJSON = require(import_path.default.join(browser.referenceDir, "package.json")); + const version = packageJSON.version; + dirToVersion.set(browser.referenceDir, version); + } + const groupedByPlaywrightMinorVersion = /* @__PURE__ */ new Map(); + for (const browser of browsers) { + const version = dirToVersion.get(browser.referenceDir); + let entries = groupedByPlaywrightMinorVersion.get(version); + if (!entries) { + entries = []; + groupedByPlaywrightMinorVersion.set(version, entries); + } + entries.push(browser); + } + const sortedVersions = [...groupedByPlaywrightMinorVersion.keys()].sort((a, b) => { + const aComponents = a.split("."); + const bComponents = b.split("."); + const aMajor = parseInt(aComponents[0], 10); + const bMajor = parseInt(bComponents[0], 10); + if (aMajor !== bMajor) + return aMajor - bMajor; + const aMinor = parseInt(aComponents[1], 10); + const bMinor = parseInt(bComponents[1], 10); + if (aMinor !== bMinor) + return aMinor - bMinor; + return aComponents.slice(2).join(".").localeCompare(bComponents.slice(2).join(".")); + }); + for (const version of sortedVersions) { + console.log(` +Playwright version: ${version}`); + printInstalledBrowsers(groupedByPlaywrightMinorVersion.get(version)); + } +} +async function markDockerImage(dockerImageNameTemplate) { + (0, import_utils2.assert)(dockerImageNameTemplate, "dockerImageNameTemplate is required"); + await (0, import_server.writeDockerVersion)(dockerImageNameTemplate); +} +async function installBrowsers(args, options) { + if ((0, import_utils.isLikelyNpxGlobal)()) { + console.error((0, import_ascii.wrapInASCIIBox)([ + `WARNING: It looks like you are running 'npx playwright install' without first`, + `installing your project's dependencies.`, + ``, + `To avoid unexpected behavior, please install your dependencies first, and`, + `then run Playwright's install command:`, + ``, + ` npm install`, + ` npx playwright install`, + ``, + `If your project does not yet depend on Playwright, first install the`, + `applicable npm package (most commonly @playwright/test), and`, + `then run Playwright's install command to download the browsers:`, + ``, + ` npm install @playwright/test`, + ` npx playwright install`, + `` + ].join("\n"), 1)); + } + if (options.shell === false && options.onlyShell) + throw new Error(`Only one of --no-shell and --only-shell can be specified`); + const shell = options.shell === false ? "no" : options.onlyShell ? "only" : void 0; + const executables = import_server.registry.resolveBrowsers(args, { shell }); + if (options.withDeps) + await import_server.registry.installDeps(executables, !!options.dryRun); + if (options.dryRun && options.list) + throw new Error(`Only one of --dry-run and --list can be specified`); + if (options.dryRun) { + for (const executable of executables) { + console.log(import_server.registry.calculateDownloadTitle(executable)); + console.log(` Install location: ${executable.directory ?? ""}`); + if (executable.downloadURLs?.length) { + const [url, ...fallbacks] = executable.downloadURLs; + console.log(` Download url: ${url}`); + for (let i = 0; i < fallbacks.length; ++i) + console.log(` Download fallback ${i + 1}: ${fallbacks[i]}`); + } + console.log(``); + } + } else if (options.list) { + const browsers = await import_server.registry.listInstalledBrowsers(); + printGroupedByPlaywrightVersion(browsers); + } else { + await import_server.registry.install(executables, { force: options.force }); + await import_server.registry.validateHostRequirementsForExecutablesIfNeeded(executables, process.env.PW_LANG_NAME || "javascript").catch((e) => { + e.name = "Playwright Host validation warning"; + console.error(e); + }); + } +} +async function uninstallBrowsers(options) { + delete process.env.PLAYWRIGHT_SKIP_BROWSER_GC; + await import_server.registry.uninstall(!!options.all).then(({ numberOfBrowsersLeft }) => { + if (!options.all && numberOfBrowsersLeft > 0) { + console.log("Successfully uninstalled Playwright browsers for the current Playwright installation."); + console.log(`There are still ${numberOfBrowsersLeft} browsers left, used by other Playwright installations. +To uninstall Playwright browsers for all installations, re-run with --all flag.`); + } + }); +} +async function installDeps(args, options) { + await import_server.registry.installDeps(import_server.registry.resolveBrowsers(args, {}), !!options.dryRun); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + installBrowsers, + installDeps, + markDockerImage, + registry, + uninstallBrowsers +}); diff --git a/node_modules.codex-backup/playwright-core/lib/client/connect.js b/node_modules.codex-backup/playwright-core/lib/client/connect.js new file mode 100644 index 00000000..11b3f4b9 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/client/connect.js @@ -0,0 +1,143 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var connect_exports = {}; +__export(connect_exports, { + connectToBrowser: () => connectToBrowser, + connectToEndpoint: () => connectToEndpoint +}); +module.exports = __toCommonJS(connect_exports); +var import_time = require("../utils/isomorphic/time"); +var import_timeoutRunner = require("../utils/isomorphic/timeoutRunner"); +var import_browser = require("./browser"); +var import_connection = require("./connection"); +var import_events = require("./events"); +async function connectToBrowser(playwright, params) { + const deadline = params.timeout ? (0, import_time.monotonicTime)() + params.timeout : 0; + const nameParam = params.browserName ? { "x-playwright-browser": params.browserName } : {}; + const headers = { ...nameParam, ...params.headers }; + const connectParams = { + endpoint: params.endpoint, + headers, + exposeNetwork: params.exposeNetwork, + slowMo: params.slowMo, + timeout: params.timeout || 0 + }; + if (params.__testHookRedirectPortForwarding) + connectParams.socksProxyRedirectPortForTest = params.__testHookRedirectPortForwarding; + const connection = await connectToEndpoint(playwright._connection, connectParams); + let browser; + connection.on("close", () => { + for (const context of browser?.contexts() || []) { + for (const page of context.pages()) + page._onClose(); + context._onClose(); + } + setTimeout(() => browser?._didClose(), 0); + }); + const result = await (0, import_timeoutRunner.raceAgainstDeadline)(async () => { + if (params.__testHookBeforeCreateBrowser) + await params.__testHookBeforeCreateBrowser(); + const playwright2 = await connection.initializePlaywright(); + if (!playwright2._initializer.preLaunchedBrowser) { + connection.close(); + throw new Error("Malformed endpoint. Did you use BrowserType.launchServer method?"); + } + playwright2.selectors = playwright2.selectors; + browser = import_browser.Browser.from(playwright2._initializer.preLaunchedBrowser); + browser._shouldCloseConnectionOnClose = true; + browser.on(import_events.Events.Browser.Disconnected, () => connection.close()); + return browser; + }, deadline); + if (!result.timedOut) { + return result.result; + } else { + connection.close(); + throw new Error(`Timeout ${params.timeout}ms exceeded`); + } +} +async function connectToEndpoint(parentConnection, params) { + const localUtils = parentConnection.localUtils(); + const transport = localUtils ? new JsonPipeTransport(localUtils) : new WebSocketTransport(); + const connectHeaders = await transport.connect(params); + const connection = new import_connection.Connection(parentConnection._platform, localUtils, parentConnection._instrumentation, connectHeaders); + connection.markAsRemote(); + connection.on("close", () => transport.close()); + let closeError; + const onTransportClosed = (reason) => { + connection.close(reason || closeError); + }; + transport.onClose((reason) => onTransportClosed(reason)); + connection.onmessage = (message) => transport.send(message).catch(() => onTransportClosed()); + transport.onMessage((message) => { + try { + connection.dispatch(message); + } catch (e) { + closeError = String(e); + transport.close().catch(() => { + }); + } + }); + return connection; +} +class JsonPipeTransport { + constructor(owner) { + this._owner = owner; + } + async connect(params) { + const { pipe, headers: connectHeaders } = await this._owner._channel.connect(params); + this._pipe = pipe; + return connectHeaders; + } + async send(message) { + await this._pipe.send({ message }); + } + onMessage(callback) { + this._pipe.on("message", ({ message }) => callback(message)); + } + onClose(callback) { + this._pipe.on("closed", ({ reason }) => callback(reason)); + } + async close() { + await this._pipe.close().catch(() => { + }); + } +} +class WebSocketTransport { + async connect(params) { + this._ws = new window.WebSocket(params.endpoint); + return []; + } + async send(message) { + this._ws.send(JSON.stringify(message)); + } + onMessage(callback) { + this._ws.addEventListener("message", (event) => callback(JSON.parse(event.data))); + } + onClose(callback) { + this._ws.addEventListener("close", () => callback()); + } + async close() { + this._ws.close(); + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + connectToBrowser, + connectToEndpoint +}); diff --git a/node_modules.codex-backup/playwright-core/lib/client/debugger.js b/node_modules.codex-backup/playwright-core/lib/client/debugger.js new file mode 100644 index 00000000..8d349583 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/client/debugger.js @@ -0,0 +1,57 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var debugger_exports = {}; +__export(debugger_exports, { + Debugger: () => Debugger +}); +module.exports = __toCommonJS(debugger_exports); +var import_channelOwner = require("./channelOwner"); +var import_events = require("./events"); +class Debugger extends import_channelOwner.ChannelOwner { + constructor(parent, type, guid, initializer) { + super(parent, type, guid, initializer); + this._pausedDetails = null; + this._channel.on("pausedStateChanged", ({ pausedDetails }) => { + this._pausedDetails = pausedDetails ?? null; + this.emit(import_events.Events.Debugger.PausedStateChanged); + }); + } + static from(channel) { + return channel._object; + } + async requestPause() { + await this._channel.requestPause(); + } + async resume() { + await this._channel.resume(); + } + async next() { + await this._channel.next(); + } + async runTo(location) { + await this._channel.runTo({ location }); + } + pausedDetails() { + return this._pausedDetails; + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + Debugger +}); diff --git a/node_modules.codex-backup/playwright-core/lib/client/disposable.js b/node_modules.codex-backup/playwright-core/lib/client/disposable.js new file mode 100644 index 00000000..32f3ed46 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/client/disposable.js @@ -0,0 +1,76 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var disposable_exports = {}; +__export(disposable_exports, { + DisposableObject: () => DisposableObject, + DisposableStub: () => DisposableStub, + disposeAll: () => disposeAll +}); +module.exports = __toCommonJS(disposable_exports); +var import_channelOwner = require("./channelOwner"); +var import_errors = require("./errors"); +class DisposableObject extends import_channelOwner.ChannelOwner { + static from(channel) { + return channel._object; + } + async [Symbol.asyncDispose]() { + await this.dispose(); + } + async dispose() { + try { + await this._channel.dispose(); + } catch (e) { + if ((0, import_errors.isTargetClosedError)(e)) + return; + throw e; + } + } +} +class DisposableStub { + constructor(dispose) { + this._dispose = dispose; + } + async [Symbol.asyncDispose]() { + await this.dispose(); + } + async dispose() { + if (!this._dispose) + return; + try { + const dispose = this._dispose; + this._dispose = void 0; + await dispose(); + } catch (e) { + if ((0, import_errors.isTargetClosedError)(e)) + return; + throw e; + } + } +} +async function disposeAll(disposables) { + const copy = [...disposables]; + disposables.length = 0; + await Promise.all(copy.map((d) => d.dispose())); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + DisposableObject, + DisposableStub, + disposeAll +}); diff --git a/node_modules.codex-backup/playwright-core/lib/client/screencast.js b/node_modules.codex-backup/playwright-core/lib/client/screencast.js new file mode 100644 index 00000000..22a61926 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/client/screencast.js @@ -0,0 +1,88 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var screencast_exports = {}; +__export(screencast_exports, { + Screencast: () => Screencast +}); +module.exports = __toCommonJS(screencast_exports); +var import_artifact = require("./artifact"); +var import_disposable = require("./disposable"); +class Screencast { + constructor(page) { + this._started = false; + this._onFrame = null; + this._page = page; + this._page._channel.on("screencastFrame", ({ data }) => { + void this._onFrame?.({ data }); + }); + } + async start(options = {}) { + if (this._started) + throw new Error("Screencast is already started"); + this._started = true; + if (options.onFrame) + this._onFrame = options.onFrame; + const result = await this._page._channel.screencastStart({ + size: options.size, + quality: options.quality, + sendFrames: !!options.onFrame, + record: !!options.path + }); + if (result.artifact) { + this._artifact = import_artifact.Artifact.from(result.artifact); + this._savePath = options.path; + } + return new import_disposable.DisposableStub(() => this.stop()); + } + async stop() { + await this._page._wrapApiCall(async () => { + this._started = false; + this._onFrame = null; + await this._page._channel.screencastStop(); + if (this._savePath) + await this._artifact?.saveAs(this._savePath); + this._artifact = void 0; + this._savePath = void 0; + }); + } + async showActions(options) { + await this._page._channel.screencastShowActions({ duration: options?.duration, position: options?.position, fontSize: options?.fontSize }); + return new import_disposable.DisposableStub(() => this._page._channel.screencastHideActions()); + } + async hideActions() { + await this._page._channel.screencastHideActions(); + } + async showOverlay(html, options) { + const { id } = await this._page._channel.screencastShowOverlay({ html, duration: options?.duration }); + return new import_disposable.DisposableStub(() => this._page._channel.screencastRemoveOverlay({ id })); + } + async showChapter(title, options) { + await this._page._channel.screencastChapter({ title, ...options }); + } + async showOverlays() { + await this._page._channel.screencastSetOverlayVisible({ visible: true }); + } + async hideOverlays() { + await this._page._channel.screencastSetOverlayVisible({ visible: false }); + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + Screencast +}); diff --git a/node_modules.codex-backup/playwright-core/lib/mcpBundleImpl.js b/node_modules.codex-backup/playwright-core/lib/mcpBundleImpl.js new file mode 100644 index 00000000..7e5a6a77 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/mcpBundleImpl.js @@ -0,0 +1,91 @@ +"use strict";var c0=Object.create;var Ms=Object.defineProperty;var u0=Object.getOwnPropertyDescriptor;var l0=Object.getOwnPropertyNames;var d0=Object.getPrototypeOf,f0=Object.prototype.hasOwnProperty;var Gv=t=>{throw TypeError(t)};var O=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ot=(t,e)=>{for(var r in e)Ms(t,r,{get:e[r],enumerable:!0})},Kv=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of l0(e))!f0.call(t,n)&&n!==r&&Ms(t,n,{get:()=>e[n],enumerable:!(o=u0(e,n))||o.enumerable});return t};var nr=(t,e,r)=>(r=t!=null?c0(d0(t)):{},Kv(e||!t||!t.__esModule?Ms(r,"default",{value:t,enumerable:!0}):r,t)),p0=t=>Kv(Ms({},"__esModule",{value:!0}),t);var Xv=(t,e,r)=>e.has(t)||Gv("Cannot "+r);var ui=(t,e,r)=>(Xv(t,e,"read from private field"),r?r.call(t):e.get(t)),Ld=(t,e,r)=>e.has(t)?Gv("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),li=(t,e,r,o)=>(Xv(t,e,"write to private field"),o?o.call(t,r):e.set(t,r),r);var Wa=O(le=>{"use strict";Object.defineProperty(le,"__esModule",{value:!0});le.regexpCode=le.getEsmExportName=le.getProperty=le.safeStringify=le.stringify=le.strConcat=le.addCodeArg=le.str=le._=le.nil=le._Code=le.Name=le.IDENTIFIER=le._CodeOrName=void 0;var Ja=class{};le._CodeOrName=Ja;le.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var _n=class extends Ja{constructor(e){if(super(),!le.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};le.Name=_n;var zt=class extends Ja{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,o)=>`${r}${o}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,o)=>(o instanceof _n&&(r[o.str]=(r[o.str]||0)+1),r),{})}};le._Code=zt;le.nil=new zt("");function Hb(t,...e){let r=[t[0]],o=0;for(;o{"use strict";Object.defineProperty(lt,"__esModule",{value:!0});lt.ValueScope=lt.ValueScopeName=lt.Scope=lt.varKinds=lt.UsedValueState=void 0;var ut=Wa(),yh=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Ol;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Ol||(lt.UsedValueState=Ol={}));lt.varKinds={const:new ut.Name("const"),let:new ut.Name("let"),var:new ut.Name("var")};var jl=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof ut.Name?e:this.name(e)}name(e){return new ut.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,o;if(!((o=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||o===void 0)&&o.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};lt.Scope=jl;var Rl=class extends ut.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:o}){this.value=e,this.scopePath=(0,ut._)`.${new ut.Name(r)}[${o}]`}};lt.ValueScopeName=Rl;var iO=(0,ut._)`\n`,$h=class extends jl{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?iO:ut.nil}}get(){return this._scope}name(e){return new Rl(e,this._newName(e))}value(e,r){var o;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let n=this.toName(e),{prefix:i}=n,a=(o=r.key)!==null&&o!==void 0?o:r.ref,c=this._values[i];if(c){let d=c.get(a);if(d)return d}else c=this._values[i]=new Map;c.set(a,n);let u=this._scope[i]||(this._scope[i]=[]),l=u.length;return u[l]=r.ref,n.setValue(r,{property:i,itemIndex:l}),n}getValue(e,r){let o=this._values[e];if(o)return o.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,o=>{if(o.scopePath===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return(0,ut._)`${e}${o.scopePath}`})}scopeCode(e=this._values,r,o){return this._reduceValues(e,n=>{if(n.value===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return n.value.code},r,o)}_reduceValues(e,r,o={},n){let i=ut.nil;for(let a in e){let c=e[a];if(!c)continue;let u=o[a]=o[a]||new Map;c.forEach(l=>{if(u.has(l))return;u.set(l,Ol.Started);let d=r(l);if(d){let s=this.opts.es5?lt.varKinds.var:lt.varKinds.const;i=(0,ut._)`${i}${s} ${l} = ${d};${this.opts._n}`}else if(d=n==null?void 0:n(l))i=(0,ut._)`${i}${d}${this.opts._n}`;else throw new yh(l);u.set(l,Ol.Completed)})}return i}};lt.ValueScope=$h});var Q=O(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.or=te.and=te.not=te.CodeGen=te.operators=te.varKinds=te.ValueScopeName=te.ValueScope=te.Scope=te.Name=te.regexpCode=te.stringify=te.getProperty=te.nil=te.strConcat=te.str=te._=void 0;var ae=Wa(),At=bh(),Hr=Wa();Object.defineProperty(te,"_",{enumerable:!0,get:function(){return Hr._}});Object.defineProperty(te,"str",{enumerable:!0,get:function(){return Hr.str}});Object.defineProperty(te,"strConcat",{enumerable:!0,get:function(){return Hr.strConcat}});Object.defineProperty(te,"nil",{enumerable:!0,get:function(){return Hr.nil}});Object.defineProperty(te,"getProperty",{enumerable:!0,get:function(){return Hr.getProperty}});Object.defineProperty(te,"stringify",{enumerable:!0,get:function(){return Hr.stringify}});Object.defineProperty(te,"regexpCode",{enumerable:!0,get:function(){return Hr.regexpCode}});Object.defineProperty(te,"Name",{enumerable:!0,get:function(){return Hr.Name}});var Ul=bh();Object.defineProperty(te,"Scope",{enumerable:!0,get:function(){return Ul.Scope}});Object.defineProperty(te,"ValueScope",{enumerable:!0,get:function(){return Ul.ValueScope}});Object.defineProperty(te,"ValueScopeName",{enumerable:!0,get:function(){return Ul.ValueScopeName}});Object.defineProperty(te,"varKinds",{enumerable:!0,get:function(){return Ul.varKinds}});te.operators={GT:new ae._Code(">"),GTE:new ae._Code(">="),LT:new ae._Code("<"),LTE:new ae._Code("<="),EQ:new ae._Code("==="),NEQ:new ae._Code("!=="),NOT:new ae._Code("!"),OR:new ae._Code("||"),AND:new ae._Code("&&"),ADD:new ae._Code("+")};var mr=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},xh=class extends mr{constructor(e,r,o){super(),this.varKind=e,this.name=r,this.rhs=o}render({es5:e,_n:r}){let o=e?At.varKinds.var:this.varKind,n=this.rhs===void 0?"":` = ${this.rhs}`;return`${o} ${this.name}${n};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=Ro(this.rhs,e,r)),this}get names(){return this.rhs instanceof ae._CodeOrName?this.rhs.names:{}}},Nl=class extends mr{constructor(e,r,o){super(),this.lhs=e,this.rhs=r,this.sideEffects=o}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof ae.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Ro(this.rhs,e,r),this}get names(){let e=this.lhs instanceof ae.Name?{}:{...this.lhs.names};return Dl(e,this.rhs)}},wh=class extends Nl{constructor(e,r,o,n){super(e,o,n),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},kh=class extends mr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Sh=class extends mr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},zh=class extends mr{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Ih=class extends mr{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=Ro(this.code,e,r),this}get names(){return this.code instanceof ae._CodeOrName?this.code.names:{}}},Ba=class extends mr{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,o)=>r+o.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let o=e[r].optimizeNodes();Array.isArray(o)?e.splice(r,1,...o):o?e[r]=o:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:o}=this,n=o.length;for(;n--;){let i=o[n];i.optimizeNames(e,r)||(aO(e,i.names),o.splice(n,1))}return o.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>bn(e,r.names),{})}},hr=class extends Ba{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Ph=class extends Ba{},jo=class extends hr{};jo.kind="else";var yn=class t extends hr{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let o=r.optimizeNodes();r=this.else=Array.isArray(o)?new jo(o):o}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Bb(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var o;if(this.else=(o=this.else)===null||o===void 0?void 0:o.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=Ro(this.condition,e,r),this}get names(){let e=super.names;return Dl(e,this.condition),this.else&&bn(e,this.else.names),e}};yn.kind="if";var $n=class extends hr{};$n.kind="for";var Eh=class extends $n{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=Ro(this.iteration,e,r),this}get names(){return bn(super.names,this.iteration.names)}},Th=class extends $n{constructor(e,r,o,n){super(),this.varKind=e,this.name=r,this.from=o,this.to=n}render(e){let r=e.es5?At.varKinds.var:this.varKind,{name:o,from:n,to:i}=this;return`for(${r} ${o}=${n}; ${o}<${i}; ${o}++)`+super.render(e)}get names(){let e=Dl(super.names,this.from);return Dl(e,this.to)}},Cl=class extends $n{constructor(e,r,o,n){super(),this.loop=e,this.varKind=r,this.name=o,this.iterable=n}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=Ro(this.iterable,e,r),this}get names(){return bn(super.names,this.iterable.names)}},Ga=class extends hr{constructor(e,r,o){super(),this.name=e,this.args=r,this.async=o}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};Ga.kind="func";var Ka=class extends Ba{render(e){return"return "+super.render(e)}};Ka.kind="return";var Oh=class extends hr{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var o,n;return super.optimizeNames(e,r),(o=this.catch)===null||o===void 0||o.optimizeNames(e,r),(n=this.finally)===null||n===void 0||n.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&bn(e,this.catch.names),this.finally&&bn(e,this.finally.names),e}},Xa=class extends hr{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Xa.kind="catch";var Ya=class extends hr{render(e){return"finally"+super.render(e)}};Ya.kind="finally";var jh=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=e,this._scope=new At.Scope({parent:e}),this._nodes=[new Ph]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let o=this._extScope.value(e,r);return(this._values[o.prefix]||(this._values[o.prefix]=new Set)).add(o),o}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,o,n){let i=this._scope.toName(r);return o!==void 0&&n&&(this._constants[i.str]=o),this._leafNode(new xh(e,i,o)),i}const(e,r,o){return this._def(At.varKinds.const,e,r,o)}let(e,r,o){return this._def(At.varKinds.let,e,r,o)}var(e,r,o){return this._def(At.varKinds.var,e,r,o)}assign(e,r,o){return this._leafNode(new Nl(e,r,o))}add(e,r){return this._leafNode(new wh(e,te.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==ae.nil&&this._leafNode(new Ih(e)),this}object(...e){let r=["{"];for(let[o,n]of e)r.length>1&&r.push(","),r.push(o),(o!==n||this.opts.es5)&&(r.push(":"),(0,ae.addCodeArg)(r,n));return r.push("}"),new ae._Code(r)}if(e,r,o){if(this._blockNode(new yn(e)),r&&o)this.code(r).else().code(o).endIf();else if(r)this.code(r).endIf();else if(o)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new yn(e))}else(){return this._elseNode(new jo)}endIf(){return this._endBlockNode(yn,jo)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Eh(e),r)}forRange(e,r,o,n,i=this.opts.es5?At.varKinds.var:At.varKinds.let){let a=this._scope.toName(e);return this._for(new Th(i,a,r,o),()=>n(a))}forOf(e,r,o,n=At.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof ae.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,ae._)`${a}.length`,c=>{this.var(i,(0,ae._)`${a}[${c}]`),o(i)})}return this._for(new Cl("of",n,i,r),()=>o(i))}forIn(e,r,o,n=this.opts.es5?At.varKinds.var:At.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,ae._)`Object.keys(${r})`,o);let i=this._scope.toName(e);return this._for(new Cl("in",n,i,r),()=>o(i))}endFor(){return this._endBlockNode($n)}label(e){return this._leafNode(new kh(e))}break(e){return this._leafNode(new Sh(e))}return(e){let r=new Ka;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Ka)}try(e,r,o){if(!r&&!o)throw new Error('CodeGen: "try" without "catch" and "finally"');let n=new Oh;if(this._blockNode(n),this.code(e),r){let i=this.name("e");this._currNode=n.catch=new Xa(i),r(i)}return o&&(this._currNode=n.finally=new Ya,this.code(o)),this._endBlockNode(Xa,Ya)}throw(e){return this._leafNode(new zh(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let o=this._nodes.length-r;if(o<0||e!==void 0&&o!==e)throw new Error(`CodeGen: wrong number of nodes: ${o} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=ae.nil,o,n){return this._blockNode(new Ga(e,r,o)),n&&this.code(n).endFunc(),this}endFunc(){return this._endBlockNode(Ga)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let o=this._currNode;if(o instanceof e||r&&o instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof yn))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};te.CodeGen=jh;function bn(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Dl(t,e){return e instanceof ae._CodeOrName?bn(t,e.names):t}function Ro(t,e,r){if(t instanceof ae.Name)return o(t);if(!n(t))return t;return new ae._Code(t._items.reduce((i,a)=>(a instanceof ae.Name&&(a=o(a)),a instanceof ae._Code?i.push(...a._items):i.push(a),i),[]));function o(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function n(i){return i instanceof ae._Code&&i._items.some(a=>a instanceof ae.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function aO(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Bb(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,ae._)`!${Rh(t)}`}te.not=Bb;var sO=Gb(te.operators.AND);function cO(...t){return t.reduce(sO)}te.and=cO;var uO=Gb(te.operators.OR);function lO(...t){return t.reduce(uO)}te.or=lO;function Gb(t){return(e,r)=>e===ae.nil?r:r===ae.nil?e:(0,ae._)`${Rh(e)} ${t} ${Rh(r)}`}function Rh(t){return t instanceof ae.Name?t:(0,ae._)`(${t})`}});var ce=O(re=>{"use strict";Object.defineProperty(re,"__esModule",{value:!0});re.checkStrictMode=re.getErrorPath=re.Type=re.useFunc=re.setEvaluated=re.evaluatedPropsToName=re.mergeEvaluated=re.eachItem=re.unescapeJsonPointer=re.escapeJsonPointer=re.escapeFragment=re.unescapeFragment=re.schemaRefOrVal=re.schemaHasRulesButRef=re.schemaHasRules=re.checkUnknownRules=re.alwaysValidSchema=re.toHash=void 0;var be=Q(),dO=Wa();function fO(t){let e={};for(let r of t)e[r]=!0;return e}re.toHash=fO;function pO(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Yb(t,e),!Qb(e,t.self.RULES.all))}re.alwaysValidSchema=pO;function Yb(t,e=t.schema){let{opts:r,self:o}=t;if(!r.strictSchema||typeof e=="boolean")return;let n=o.RULES.keywords;for(let i in e)n[i]||rx(t,`unknown keyword: "${i}"`)}re.checkUnknownRules=Yb;function Qb(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}re.schemaHasRules=Qb;function mO(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}re.schemaHasRulesButRef=mO;function hO({topSchemaRef:t,schemaPath:e},r,o,n){if(!n){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,be._)`${r}`}return(0,be._)`${t}${e}${(0,be.getProperty)(o)}`}re.schemaRefOrVal=hO;function gO(t){return ex(decodeURIComponent(t))}re.unescapeFragment=gO;function vO(t){return encodeURIComponent(Ch(t))}re.escapeFragment=vO;function Ch(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}re.escapeJsonPointer=Ch;function ex(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}re.unescapeJsonPointer=ex;function _O(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}re.eachItem=_O;function Kb({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:o}){return(n,i,a,c)=>{let u=a===void 0?i:a instanceof be.Name?(i instanceof be.Name?t(n,i,a):e(n,i,a),a):i instanceof be.Name?(e(n,a,i),i):r(i,a);return c===be.Name&&!(u instanceof be.Name)?o(n,u):u}}re.mergeEvaluated={props:Kb({mergeNames:(t,e,r)=>t.if((0,be._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,be._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,be._)`${r} || {}`).code((0,be._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,be._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,be._)`${r} || {}`),Dh(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:tx}),items:Kb({mergeNames:(t,e,r)=>t.if((0,be._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,be._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,be._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,be._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function tx(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,be._)`{}`);return e!==void 0&&Dh(t,r,e),r}re.evaluatedPropsToName=tx;function Dh(t,e,r){Object.keys(r).forEach(o=>t.assign((0,be._)`${e}${(0,be.getProperty)(o)}`,!0))}re.setEvaluated=Dh;var Xb={};function yO(t,e){return t.scopeValue("func",{ref:e,code:Xb[e.code]||(Xb[e.code]=new dO._Code(e.code))})}re.useFunc=yO;var Nh;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Nh||(re.Type=Nh={}));function $O(t,e,r){if(t instanceof be.Name){let o=e===Nh.Num;return r?o?(0,be._)`"[" + ${t} + "]"`:(0,be._)`"['" + ${t} + "']"`:o?(0,be._)`"/" + ${t}`:(0,be._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,be.getProperty)(t).toString():"/"+Ch(t)}re.getErrorPath=$O;function rx(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}re.checkStrictMode=rx});var gr=O(Uh=>{"use strict";Object.defineProperty(Uh,"__esModule",{value:!0});var We=Q(),bO={data:new We.Name("data"),valCxt:new We.Name("valCxt"),instancePath:new We.Name("instancePath"),parentData:new We.Name("parentData"),parentDataProperty:new We.Name("parentDataProperty"),rootData:new We.Name("rootData"),dynamicAnchors:new We.Name("dynamicAnchors"),vErrors:new We.Name("vErrors"),errors:new We.Name("errors"),this:new We.Name("this"),self:new We.Name("self"),scope:new We.Name("scope"),json:new We.Name("json"),jsonPos:new We.Name("jsonPos"),jsonLen:new We.Name("jsonLen"),jsonPart:new We.Name("jsonPart")};Uh.default=bO});var Qa=O(Be=>{"use strict";Object.defineProperty(Be,"__esModule",{value:!0});Be.extendErrors=Be.resetErrorsCount=Be.reportExtraError=Be.reportError=Be.keyword$DataError=Be.keywordError=void 0;var ue=Q(),Zl=ce(),et=gr();Be.keywordError={message:({keyword:t})=>(0,ue.str)`must pass "${t}" keyword validation`};Be.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,ue.str)`"${t}" keyword must be ${e} ($data)`:(0,ue.str)`"${t}" keyword is invalid ($data)`};function xO(t,e=Be.keywordError,r,o){let{it:n}=t,{gen:i,compositeRule:a,allErrors:c}=n,u=ix(t,e,r);(o!=null?o:a||c)?nx(i,u):ox(n,(0,ue._)`[${u}]`)}Be.reportError=xO;function wO(t,e=Be.keywordError,r){let{it:o}=t,{gen:n,compositeRule:i,allErrors:a}=o,c=ix(t,e,r);nx(n,c),i||a||ox(o,et.default.vErrors)}Be.reportExtraError=wO;function kO(t,e){t.assign(et.default.errors,e),t.if((0,ue._)`${et.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,ue._)`${et.default.vErrors}.length`,e),()=>t.assign(et.default.vErrors,null)))}Be.resetErrorsCount=kO;function SO({gen:t,keyword:e,schemaValue:r,data:o,errsCount:n,it:i}){if(n===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",n,et.default.errors,c=>{t.const(a,(0,ue._)`${et.default.vErrors}[${c}]`),t.if((0,ue._)`${a}.instancePath === undefined`,()=>t.assign((0,ue._)`${a}.instancePath`,(0,ue.strConcat)(et.default.instancePath,i.errorPath))),t.assign((0,ue._)`${a}.schemaPath`,(0,ue.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,ue._)`${a}.schema`,r),t.assign((0,ue._)`${a}.data`,o))})}Be.extendErrors=SO;function nx(t,e){let r=t.const("err",e);t.if((0,ue._)`${et.default.vErrors} === null`,()=>t.assign(et.default.vErrors,(0,ue._)`[${r}]`),(0,ue._)`${et.default.vErrors}.push(${r})`),t.code((0,ue._)`${et.default.errors}++`)}function ox(t,e){let{gen:r,validateName:o,schemaEnv:n}=t;n.$async?r.throw((0,ue._)`new ${t.ValidationError}(${e})`):(r.assign((0,ue._)`${o}.errors`,e),r.return(!1))}var xn={keyword:new ue.Name("keyword"),schemaPath:new ue.Name("schemaPath"),params:new ue.Name("params"),propertyName:new ue.Name("propertyName"),message:new ue.Name("message"),schema:new ue.Name("schema"),parentSchema:new ue.Name("parentSchema")};function ix(t,e,r){let{createErrors:o}=t.it;return o===!1?(0,ue._)`{}`:zO(t,e,r)}function zO(t,e,r={}){let{gen:o,it:n}=t,i=[IO(n,r),PO(t,r)];return EO(t,e,i),o.object(...i)}function IO({errorPath:t},{instancePath:e}){let r=e?(0,ue.str)`${t}${(0,Zl.getErrorPath)(e,Zl.Type.Str)}`:t;return[et.default.instancePath,(0,ue.strConcat)(et.default.instancePath,r)]}function PO({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:o}){let n=o?e:(0,ue.str)`${e}/${t}`;return r&&(n=(0,ue.str)`${n}${(0,Zl.getErrorPath)(r,Zl.Type.Str)}`),[xn.schemaPath,n]}function EO(t,{params:e,message:r},o){let{keyword:n,data:i,schemaValue:a,it:c}=t,{opts:u,propertyName:l,topSchemaRef:d,schemaPath:s}=c;o.push([xn.keyword,n],[xn.params,typeof e=="function"?e(t):e||(0,ue._)`{}`]),u.messages&&o.push([xn.message,typeof r=="function"?r(t):r]),u.verbose&&o.push([xn.schema,a],[xn.parentSchema,(0,ue._)`${d}${s}`],[et.default.data,i]),l&&o.push([xn.propertyName,l])}});var sx=O(No=>{"use strict";Object.defineProperty(No,"__esModule",{value:!0});No.boolOrEmptySchema=No.topBoolOrEmptySchema=void 0;var TO=Qa(),OO=Q(),jO=gr(),RO={message:"boolean schema is false"};function NO(t){let{gen:e,schema:r,validateName:o}=t;r===!1?ax(t,!1):typeof r=="object"&&r.$async===!0?e.return(jO.default.data):(e.assign((0,OO._)`${o}.errors`,null),e.return(!0))}No.topBoolOrEmptySchema=NO;function CO(t,e){let{gen:r,schema:o}=t;o===!1?(r.var(e,!1),ax(t)):r.var(e,!0)}No.boolOrEmptySchema=CO;function ax(t,e){let{gen:r,data:o}=t,n={gen:r,keyword:"false schema",data:o,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,TO.reportError)(n,RO,void 0,e)}});var Zh=O(Co=>{"use strict";Object.defineProperty(Co,"__esModule",{value:!0});Co.getRules=Co.isJSONType=void 0;var DO=["string","number","integer","boolean","null","object","array"],UO=new Set(DO);function ZO(t){return typeof t=="string"&&UO.has(t)}Co.isJSONType=ZO;function AO(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}Co.getRules=AO});var Ah=O(Wr=>{"use strict";Object.defineProperty(Wr,"__esModule",{value:!0});Wr.shouldUseRule=Wr.shouldUseGroup=Wr.schemaHasRulesForType=void 0;function MO({schema:t,self:e},r){let o=e.RULES.types[r];return o&&o!==!0&&cx(t,o)}Wr.schemaHasRulesForType=MO;function cx(t,e){return e.rules.some(r=>ux(t,r))}Wr.shouldUseGroup=cx;function ux(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(o=>t[o]!==void 0))}Wr.shouldUseRule=ux});var es=O(Ge=>{"use strict";Object.defineProperty(Ge,"__esModule",{value:!0});Ge.reportTypeError=Ge.checkDataTypes=Ge.checkDataType=Ge.coerceAndCheckDataType=Ge.getJSONTypes=Ge.getSchemaTypes=Ge.DataType=void 0;var qO=Zh(),LO=Ah(),VO=Qa(),Y=Q(),lx=ce(),Do;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Do||(Ge.DataType=Do={}));function FO(t){let e=dx(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Ge.getSchemaTypes=FO;function dx(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(qO.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Ge.getJSONTypes=dx;function JO(t,e){let{gen:r,data:o,opts:n}=t,i=HO(e,n.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,LO.schemaHasRulesForType)(t,e[0]));if(a){let c=qh(e,o,n.strictNumbers,Do.Wrong);r.if(c,()=>{i.length?WO(t,e,i):Lh(t)})}return a}Ge.coerceAndCheckDataType=JO;var fx=new Set(["string","number","integer","boolean","null"]);function HO(t,e){return e?t.filter(r=>fx.has(r)||e==="array"&&r==="array"):[]}function WO(t,e,r){let{gen:o,data:n,opts:i}=t,a=o.let("dataType",(0,Y._)`typeof ${n}`),c=o.let("coerced",(0,Y._)`undefined`);i.coerceTypes==="array"&&o.if((0,Y._)`${a} == 'object' && Array.isArray(${n}) && ${n}.length == 1`,()=>o.assign(n,(0,Y._)`${n}[0]`).assign(a,(0,Y._)`typeof ${n}`).if(qh(e,n,i.strictNumbers),()=>o.assign(c,n))),o.if((0,Y._)`${c} !== undefined`);for(let l of r)(fx.has(l)||l==="array"&&i.coerceTypes==="array")&&u(l);o.else(),Lh(t),o.endIf(),o.if((0,Y._)`${c} !== undefined`,()=>{o.assign(n,c),BO(t,c)});function u(l){switch(l){case"string":o.elseIf((0,Y._)`${a} == "number" || ${a} == "boolean"`).assign(c,(0,Y._)`"" + ${n}`).elseIf((0,Y._)`${n} === null`).assign(c,(0,Y._)`""`);return;case"number":o.elseIf((0,Y._)`${a} == "boolean" || ${n} === null + || (${a} == "string" && ${n} && ${n} == +${n})`).assign(c,(0,Y._)`+${n}`);return;case"integer":o.elseIf((0,Y._)`${a} === "boolean" || ${n} === null + || (${a} === "string" && ${n} && ${n} == +${n} && !(${n} % 1))`).assign(c,(0,Y._)`+${n}`);return;case"boolean":o.elseIf((0,Y._)`${n} === "false" || ${n} === 0 || ${n} === null`).assign(c,!1).elseIf((0,Y._)`${n} === "true" || ${n} === 1`).assign(c,!0);return;case"null":o.elseIf((0,Y._)`${n} === "" || ${n} === 0 || ${n} === false`),o.assign(c,null);return;case"array":o.elseIf((0,Y._)`${a} === "string" || ${a} === "number" + || ${a} === "boolean" || ${n} === null`).assign(c,(0,Y._)`[${n}]`)}}}function BO({gen:t,parentData:e,parentDataProperty:r},o){t.if((0,Y._)`${e} !== undefined`,()=>t.assign((0,Y._)`${e}[${r}]`,o))}function Mh(t,e,r,o=Do.Correct){let n=o===Do.Correct?Y.operators.EQ:Y.operators.NEQ,i;switch(t){case"null":return(0,Y._)`${e} ${n} null`;case"array":i=(0,Y._)`Array.isArray(${e})`;break;case"object":i=(0,Y._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,Y._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,Y._)`typeof ${e} ${n} ${t}`}return o===Do.Correct?i:(0,Y.not)(i);function a(c=Y.nil){return(0,Y.and)((0,Y._)`typeof ${e} == "number"`,c,r?(0,Y._)`isFinite(${e})`:Y.nil)}}Ge.checkDataType=Mh;function qh(t,e,r,o){if(t.length===1)return Mh(t[0],e,r,o);let n,i=(0,lx.toHash)(t);if(i.array&&i.object){let a=(0,Y._)`typeof ${e} != "object"`;n=i.null?a:(0,Y._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else n=Y.nil;i.number&&delete i.integer;for(let a in i)n=(0,Y.and)(n,Mh(a,e,r,o));return n}Ge.checkDataTypes=qh;var GO={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Y._)`{type: ${t}}`:(0,Y._)`{type: ${e}}`};function Lh(t){let e=KO(t);(0,VO.reportError)(e,GO)}Ge.reportTypeError=Lh;function KO(t){let{gen:e,data:r,schema:o}=t,n=(0,lx.schemaRefOrVal)(t,o,"type");return{gen:e,keyword:"type",data:r,schema:o.type,schemaCode:n,schemaValue:n,parentSchema:o,params:{},it:t}}});var mx=O(Al=>{"use strict";Object.defineProperty(Al,"__esModule",{value:!0});Al.assignDefaults=void 0;var Uo=Q(),XO=ce();function YO(t,e){let{properties:r,items:o}=t.schema;if(e==="object"&&r)for(let n in r)px(t,n,r[n].default);else e==="array"&&Array.isArray(o)&&o.forEach((n,i)=>px(t,i,n.default))}Al.assignDefaults=YO;function px(t,e,r){let{gen:o,compositeRule:n,data:i,opts:a}=t;if(r===void 0)return;let c=(0,Uo._)`${i}${(0,Uo.getProperty)(e)}`;if(n){(0,XO.checkStrictMode)(t,`default is ignored for: ${c}`);return}let u=(0,Uo._)`${c} === undefined`;a.useDefaults==="empty"&&(u=(0,Uo._)`${u} || ${c} === null || ${c} === ""`),o.if(u,(0,Uo._)`${c} = ${(0,Uo.stringify)(r)}`)}});var It=O(_e=>{"use strict";Object.defineProperty(_e,"__esModule",{value:!0});_e.validateUnion=_e.validateArray=_e.usePattern=_e.callValidateCode=_e.schemaProperties=_e.allSchemaProperties=_e.noPropertyInData=_e.propertyInData=_e.isOwnProperty=_e.hasPropFunc=_e.reportMissingProp=_e.checkMissingProp=_e.checkReportMissingProp=void 0;var Se=Q(),Vh=ce(),Br=gr(),QO=ce();function ej(t,e){let{gen:r,data:o,it:n}=t;r.if(Jh(r,o,e,n.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Se._)`${e}`},!0),t.error()})}_e.checkReportMissingProp=ej;function tj({gen:t,data:e,it:{opts:r}},o,n){return(0,Se.or)(...o.map(i=>(0,Se.and)(Jh(t,e,i,r.ownProperties),(0,Se._)`${n} = ${i}`)))}_e.checkMissingProp=tj;function rj(t,e){t.setParams({missingProperty:e},!0),t.error()}_e.reportMissingProp=rj;function hx(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Se._)`Object.prototype.hasOwnProperty`})}_e.hasPropFunc=hx;function Fh(t,e,r){return(0,Se._)`${hx(t)}.call(${e}, ${r})`}_e.isOwnProperty=Fh;function nj(t,e,r,o){let n=(0,Se._)`${e}${(0,Se.getProperty)(r)} !== undefined`;return o?(0,Se._)`${n} && ${Fh(t,e,r)}`:n}_e.propertyInData=nj;function Jh(t,e,r,o){let n=(0,Se._)`${e}${(0,Se.getProperty)(r)} === undefined`;return o?(0,Se.or)(n,(0,Se.not)(Fh(t,e,r))):n}_e.noPropertyInData=Jh;function gx(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}_e.allSchemaProperties=gx;function oj(t,e){return gx(e).filter(r=>!(0,Vh.alwaysValidSchema)(t,e[r]))}_e.schemaProperties=oj;function ij({schemaCode:t,data:e,it:{gen:r,topSchemaRef:o,schemaPath:n,errorPath:i},it:a},c,u,l){let d=l?(0,Se._)`${t}, ${e}, ${o}${n}`:e,s=[[Br.default.instancePath,(0,Se.strConcat)(Br.default.instancePath,i)],[Br.default.parentData,a.parentData],[Br.default.parentDataProperty,a.parentDataProperty],[Br.default.rootData,Br.default.rootData]];a.opts.dynamicRef&&s.push([Br.default.dynamicAnchors,Br.default.dynamicAnchors]);let f=(0,Se._)`${d}, ${r.object(...s)}`;return u!==Se.nil?(0,Se._)`${c}.call(${u}, ${f})`:(0,Se._)`${c}(${f})`}_e.callValidateCode=ij;var aj=(0,Se._)`new RegExp`;function sj({gen:t,it:{opts:e}},r){let o=e.unicodeRegExp?"u":"",{regExp:n}=e.code,i=n(r,o);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Se._)`${n.code==="new RegExp"?aj:(0,QO.useFunc)(t,n)}(${r}, ${o})`})}_e.usePattern=sj;function cj(t){let{gen:e,data:r,keyword:o,it:n}=t,i=e.name("valid");if(n.allErrors){let c=e.let("valid",!0);return a(()=>e.assign(c,!1)),c}return e.var(i,!0),a(()=>e.break()),i;function a(c){let u=e.const("len",(0,Se._)`${r}.length`);e.forRange("i",0,u,l=>{t.subschema({keyword:o,dataProp:l,dataPropType:Vh.Type.Num},i),e.if((0,Se.not)(i),c)})}}_e.validateArray=cj;function uj(t){let{gen:e,schema:r,keyword:o,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(u=>(0,Vh.alwaysValidSchema)(n,u))&&!n.opts.unevaluated)return;let a=e.let("valid",!1),c=e.name("_valid");e.block(()=>r.forEach((u,l)=>{let d=t.subschema({keyword:o,schemaProp:l,compositeRule:!0},c);e.assign(a,(0,Se._)`${a} || ${c}`),t.mergeValidEvaluated(d,c)||e.if((0,Se.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}_e.validateUnion=uj});var yx=O(Xt=>{"use strict";Object.defineProperty(Xt,"__esModule",{value:!0});Xt.validateKeywordUsage=Xt.validSchemaType=Xt.funcKeywordCode=Xt.macroKeywordCode=void 0;var tt=Q(),wn=gr(),lj=It(),dj=Qa();function fj(t,e){let{gen:r,keyword:o,schema:n,parentSchema:i,it:a}=t,c=e.macro.call(a.self,n,i,a),u=_x(r,o,c);a.opts.validateSchema!==!1&&a.self.validateSchema(c,!0);let l=r.name("valid");t.subschema({schema:c,schemaPath:tt.nil,errSchemaPath:`${a.errSchemaPath}/${o}`,topSchemaRef:u,compositeRule:!0},l),t.pass(l,()=>t.error(!0))}Xt.macroKeywordCode=fj;function pj(t,e){var r;let{gen:o,keyword:n,schema:i,parentSchema:a,$data:c,it:u}=t;hj(u,e);let l=!c&&e.compile?e.compile.call(u.self,i,a,u):e.validate,d=_x(o,n,l),s=o.let("valid");t.block$data(s,f),t.ok((r=e.valid)!==null&&r!==void 0?r:s);function f(){if(e.errors===!1)h(),e.modifying&&vx(t),v(()=>t.error());else{let y=e.async?p():m();e.modifying&&vx(t),v(()=>mj(t,y))}}function p(){let y=o.let("ruleErrs",null);return o.try(()=>h((0,tt._)`await `),w=>o.assign(s,!1).if((0,tt._)`${w} instanceof ${u.ValidationError}`,()=>o.assign(y,(0,tt._)`${w}.errors`),()=>o.throw(w))),y}function m(){let y=(0,tt._)`${d}.errors`;return o.assign(y,null),h(tt.nil),y}function h(y=e.async?(0,tt._)`await `:tt.nil){let w=u.opts.passContext?wn.default.this:wn.default.self,k=!("compile"in e&&!c||e.schema===!1);o.assign(s,(0,tt._)`${y}${(0,lj.callValidateCode)(t,d,w,k)}`,e.modifying)}function v(y){var w;o.if((0,tt.not)((w=e.valid)!==null&&w!==void 0?w:s),y)}}Xt.funcKeywordCode=pj;function vx(t){let{gen:e,data:r,it:o}=t;e.if(o.parentData,()=>e.assign(r,(0,tt._)`${o.parentData}[${o.parentDataProperty}]`))}function mj(t,e){let{gen:r}=t;r.if((0,tt._)`Array.isArray(${e})`,()=>{r.assign(wn.default.vErrors,(0,tt._)`${wn.default.vErrors} === null ? ${e} : ${wn.default.vErrors}.concat(${e})`).assign(wn.default.errors,(0,tt._)`${wn.default.vErrors}.length`),(0,dj.extendErrors)(t)},()=>t.error())}function hj({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function _x(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,tt.stringify)(r)})}function gj(t,e,r=!1){return!e.length||e.some(o=>o==="array"?Array.isArray(t):o==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==o||r&&typeof t=="undefined")}Xt.validSchemaType=gj;function vj({schema:t,opts:e,self:r,errSchemaPath:o},n,i){if(Array.isArray(n.keyword)?!n.keyword.includes(i):n.keyword!==i)throw new Error("ajv implementation error");let a=n.dependencies;if(a!=null&&a.some(c=>!Object.prototype.hasOwnProperty.call(t,c)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(n.validateSchema&&!n.validateSchema(t[i])){let u=`keyword "${i}" value is invalid at path "${o}": `+r.errorsText(n.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(u);else throw new Error(u)}}Xt.validateKeywordUsage=vj});var bx=O(Gr=>{"use strict";Object.defineProperty(Gr,"__esModule",{value:!0});Gr.extendSubschemaMode=Gr.extendSubschemaData=Gr.getSubschema=void 0;var Yt=Q(),$x=ce();function _j(t,{keyword:e,schemaProp:r,schema:o,schemaPath:n,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&o!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let c=t.schema[e];return r===void 0?{schema:c,schemaPath:(0,Yt._)`${t.schemaPath}${(0,Yt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:c[r],schemaPath:(0,Yt._)`${t.schemaPath}${(0,Yt.getProperty)(e)}${(0,Yt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,$x.escapeFragment)(r)}`}}if(o!==void 0){if(n===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:o,schemaPath:n,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}Gr.getSubschema=_j;function yj(t,e,{dataProp:r,dataPropType:o,data:n,dataTypes:i,propertyName:a}){if(n!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:c}=e;if(r!==void 0){let{errorPath:l,dataPathArr:d,opts:s}=e,f=c.let("data",(0,Yt._)`${e.data}${(0,Yt.getProperty)(r)}`,!0);u(f),t.errorPath=(0,Yt.str)`${l}${(0,$x.getErrorPath)(r,o,s.jsPropertySyntax)}`,t.parentDataProperty=(0,Yt._)`${r}`,t.dataPathArr=[...d,t.parentDataProperty]}if(n!==void 0){let l=n instanceof Yt.Name?n:c.let("data",n,!0);u(l),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function u(l){t.data=l,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,l]}}Gr.extendSubschemaData=yj;function $j(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:o,createErrors:n,allErrors:i}){o!==void 0&&(t.compositeRule=o),n!==void 0&&(t.createErrors=n),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}Gr.extendSubschemaMode=$j});var Hh=O((iL,xx)=>{"use strict";xx.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var o,n,i;if(Array.isArray(e)){if(o=e.length,o!=r.length)return!1;for(n=o;n--!==0;)if(!t(e[n],r[n]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(i=Object.keys(e),o=i.length,o!==Object.keys(r).length)return!1;for(n=o;n--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[n]))return!1;for(n=o;n--!==0;){var a=i[n];if(!t(e[a],r[a]))return!1}return!0}return e!==e&&r!==r}});var kx=O((aL,wx)=>{"use strict";var Kr=wx.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var o=typeof r=="function"?r:r.pre||function(){},n=r.post||function(){};Ml(e,o,n,t,"",t)};Kr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Kr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Kr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Kr.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Ml(t,e,r,o,n,i,a,c,u,l){if(o&&typeof o=="object"&&!Array.isArray(o)){e(o,n,i,a,c,u,l);for(var d in o){var s=o[d];if(Array.isArray(s)){if(d in Kr.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(dt,"__esModule",{value:!0});dt.getSchemaRefs=dt.resolveUrl=dt.normalizeId=dt._getFullPath=dt.getFullPath=dt.inlineRef=void 0;var xj=ce(),wj=Hh(),kj=kx(),Sj=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function zj(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Wh(t):e?Sx(t)<=e:!1}dt.inlineRef=zj;var Ij=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Wh(t){for(let e in t){if(Ij.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Wh)||typeof r=="object"&&Wh(r))return!0}return!1}function Sx(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!Sj.has(r)&&(typeof t[r]=="object"&&(0,xj.eachItem)(t[r],o=>e+=Sx(o)),e===1/0))return 1/0}return e}function zx(t,e="",r){r!==!1&&(e=Zo(e));let o=t.parse(e);return Ix(t,o)}dt.getFullPath=zx;function Ix(t,e){return t.serialize(e).split("#")[0]+"#"}dt._getFullPath=Ix;var Pj=/#\/?$/;function Zo(t){return t?t.replace(Pj,""):""}dt.normalizeId=Zo;function Ej(t,e,r){return r=Zo(r),t.resolve(e,r)}dt.resolveUrl=Ej;var Tj=/^[a-z_][-a-z0-9._]*$/i;function Oj(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:o}=this.opts,n=Zo(t[r]||e),i={"":n},a=zx(o,n,!1),c={},u=new Set;return kj(t,{allKeys:!0},(s,f,p,m)=>{if(m===void 0)return;let h=a+f,v=i[m];typeof s[r]=="string"&&(v=y.call(this,s[r])),w.call(this,s.$anchor),w.call(this,s.$dynamicAnchor),i[f]=v;function y(k){let x=this.opts.uriResolver.resolve;if(k=Zo(v?x(v,k):k),u.has(k))throw d(k);u.add(k);let b=this.refs[k];return typeof b=="string"&&(b=this.refs[b]),typeof b=="object"?l(s,b.schema,k):k!==Zo(h)&&(k[0]==="#"?(l(s,c[k],k),c[k]=s):this.refs[k]=h),k}function w(k){if(typeof k=="string"){if(!Tj.test(k))throw new Error(`invalid anchor "${k}"`);y.call(this,`#${k}`)}}}),c;function l(s,f,p){if(f!==void 0&&!wj(s,f))throw d(p)}function d(s){return new Error(`reference "${s}" resolves to more than one schema`)}}dt.getSchemaRefs=Oj});var os=O(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.getData=Xr.KeywordCxt=Xr.validateFunctionCode=void 0;var jx=sx(),Px=es(),Gh=Ah(),ql=es(),jj=mx(),ns=yx(),Bh=bx(),M=Q(),B=gr(),Rj=ts(),vr=ce(),rs=Qa();function Nj(t){if(Cx(t)&&(Dx(t),Nx(t))){Uj(t);return}Rx(t,()=>(0,jx.topBoolOrEmptySchema)(t))}Xr.validateFunctionCode=Nj;function Rx({gen:t,validateName:e,schema:r,schemaEnv:o,opts:n},i){n.code.es5?t.func(e,(0,M._)`${B.default.data}, ${B.default.valCxt}`,o.$async,()=>{t.code((0,M._)`"use strict"; ${Ex(r,n)}`),Dj(t,n),t.code(i)}):t.func(e,(0,M._)`${B.default.data}, ${Cj(n)}`,o.$async,()=>t.code(Ex(r,n)).code(i))}function Cj(t){return(0,M._)`{${B.default.instancePath}="", ${B.default.parentData}, ${B.default.parentDataProperty}, ${B.default.rootData}=${B.default.data}${t.dynamicRef?(0,M._)`, ${B.default.dynamicAnchors}={}`:M.nil}}={}`}function Dj(t,e){t.if(B.default.valCxt,()=>{t.var(B.default.instancePath,(0,M._)`${B.default.valCxt}.${B.default.instancePath}`),t.var(B.default.parentData,(0,M._)`${B.default.valCxt}.${B.default.parentData}`),t.var(B.default.parentDataProperty,(0,M._)`${B.default.valCxt}.${B.default.parentDataProperty}`),t.var(B.default.rootData,(0,M._)`${B.default.valCxt}.${B.default.rootData}`),e.dynamicRef&&t.var(B.default.dynamicAnchors,(0,M._)`${B.default.valCxt}.${B.default.dynamicAnchors}`)},()=>{t.var(B.default.instancePath,(0,M._)`""`),t.var(B.default.parentData,(0,M._)`undefined`),t.var(B.default.parentDataProperty,(0,M._)`undefined`),t.var(B.default.rootData,B.default.data),e.dynamicRef&&t.var(B.default.dynamicAnchors,(0,M._)`{}`)})}function Uj(t){let{schema:e,opts:r,gen:o}=t;Rx(t,()=>{r.$comment&&e.$comment&&Zx(t),Lj(t),o.let(B.default.vErrors,null),o.let(B.default.errors,0),r.unevaluated&&Zj(t),Ux(t),Jj(t)})}function Zj(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,M._)`${r}.evaluated`),e.if((0,M._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,M._)`${t.evaluated}.props`,(0,M._)`undefined`)),e.if((0,M._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,M._)`${t.evaluated}.items`,(0,M._)`undefined`))}function Ex(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,M._)`/*# sourceURL=${r} */`:M.nil}function Aj(t,e){if(Cx(t)&&(Dx(t),Nx(t))){Mj(t,e);return}(0,jx.boolOrEmptySchema)(t,e)}function Nx({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function Cx(t){return typeof t.schema!="boolean"}function Mj(t,e){let{schema:r,gen:o,opts:n}=t;n.$comment&&r.$comment&&Zx(t),Vj(t),Fj(t);let i=o.const("_errs",B.default.errors);Ux(t,i),o.var(e,(0,M._)`${i} === ${B.default.errors}`)}function Dx(t){(0,vr.checkUnknownRules)(t),qj(t)}function Ux(t,e){if(t.opts.jtd)return Tx(t,[],!1,e);let r=(0,Px.getSchemaTypes)(t.schema),o=(0,Px.coerceAndCheckDataType)(t,r);Tx(t,r,!o,e)}function qj(t){let{schema:e,errSchemaPath:r,opts:o,self:n}=t;e.$ref&&o.ignoreKeywordsWithRef&&(0,vr.schemaHasRulesButRef)(e,n.RULES)&&n.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function Lj(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,vr.checkStrictMode)(t,"default is ignored in the schema root")}function Vj(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,Rj.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function Fj(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Zx({gen:t,schemaEnv:e,schema:r,errSchemaPath:o,opts:n}){let i=r.$comment;if(n.$comment===!0)t.code((0,M._)`${B.default.self}.logger.log(${i})`);else if(typeof n.$comment=="function"){let a=(0,M.str)`${o}/$comment`,c=t.scopeValue("root",{ref:e.root});t.code((0,M._)`${B.default.self}.opts.$comment(${i}, ${a}, ${c}.schema)`)}}function Jj(t){let{gen:e,schemaEnv:r,validateName:o,ValidationError:n,opts:i}=t;r.$async?e.if((0,M._)`${B.default.errors} === 0`,()=>e.return(B.default.data),()=>e.throw((0,M._)`new ${n}(${B.default.vErrors})`)):(e.assign((0,M._)`${o}.errors`,B.default.vErrors),i.unevaluated&&Hj(t),e.return((0,M._)`${B.default.errors} === 0`))}function Hj({gen:t,evaluated:e,props:r,items:o}){r instanceof M.Name&&t.assign((0,M._)`${e}.props`,r),o instanceof M.Name&&t.assign((0,M._)`${e}.items`,o)}function Tx(t,e,r,o){let{gen:n,schema:i,data:a,allErrors:c,opts:u,self:l}=t,{RULES:d}=l;if(i.$ref&&(u.ignoreKeywordsWithRef||!(0,vr.schemaHasRulesButRef)(i,d))){n.block(()=>Mx(t,"$ref",d.all.$ref.definition));return}u.jtd||Wj(t,e),n.block(()=>{for(let f of d.rules)s(f);s(d.post)});function s(f){(0,Gh.shouldUseGroup)(i,f)&&(f.type?(n.if((0,ql.checkDataType)(f.type,a,u.strictNumbers)),Ox(t,f),e.length===1&&e[0]===f.type&&r&&(n.else(),(0,ql.reportTypeError)(t)),n.endIf()):Ox(t,f),c||n.if((0,M._)`${B.default.errors} === ${o||0}`))}}function Ox(t,e){let{gen:r,schema:o,opts:{useDefaults:n}}=t;n&&(0,jj.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,Gh.shouldUseRule)(o,i)&&Mx(t,i.keyword,i.definition,e.type)})}function Wj(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(Bj(t,e),t.opts.allowUnionTypes||Gj(t,e),Kj(t,t.dataTypes))}function Bj(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Ax(t.dataTypes,r)||Kh(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),Yj(t,e)}}function Gj(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Kh(t,"use allowUnionTypes to allow union type keyword")}function Kj(t,e){let r=t.self.RULES.all;for(let o in r){let n=r[o];if(typeof n=="object"&&(0,Gh.shouldUseRule)(t.schema,n)){let{type:i}=n.definition;i.length&&!i.some(a=>Xj(e,a))&&Kh(t,`missing type "${i.join(",")}" for keyword "${o}"`)}}}function Xj(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Ax(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function Yj(t,e){let r=[];for(let o of t.dataTypes)Ax(e,o)?r.push(o):e.includes("integer")&&o==="number"&&r.push("integer");t.dataTypes=r}function Kh(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,vr.checkStrictMode)(t,e,t.opts.strictTypes)}var Ll=class{constructor(e,r,o){if((0,ns.validateKeywordUsage)(e,r,o),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=o,this.data=e.data,this.schema=e.schema[o],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,vr.schemaRefOrVal)(e,this.schema,o,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",qx(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,ns.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${o} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",B.default.errors))}result(e,r,o){this.failResult((0,M.not)(e),r,o)}failResult(e,r,o){this.gen.if(e),o?o():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,M.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,M._)`${r} !== undefined && (${(0,M.or)(this.invalid$data(),e)})`)}error(e,r,o){if(r){this.setParams(r),this._error(e,o),this.setParams({});return}this._error(e,o)}_error(e,r){(e?rs.reportExtraError:rs.reportError)(this,this.def.error,r)}$dataError(){(0,rs.reportError)(this,this.def.$dataError||rs.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,rs.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,o=M.nil){this.gen.block(()=>{this.check$data(e,o),r()})}check$data(e=M.nil,r=M.nil){if(!this.$data)return;let{gen:o,schemaCode:n,schemaType:i,def:a}=this;o.if((0,M.or)((0,M._)`${n} === undefined`,r)),e!==M.nil&&o.assign(e,!0),(i.length||a.validateSchema)&&(o.elseIf(this.invalid$data()),this.$dataError(),e!==M.nil&&o.assign(e,!1)),o.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:o,def:n,it:i}=this;return(0,M.or)(a(),c());function a(){if(o.length){if(!(r instanceof M.Name))throw new Error("ajv implementation error");let u=Array.isArray(o)?o:[o];return(0,M._)`${(0,ql.checkDataTypes)(u,r,i.opts.strictNumbers,ql.DataType.Wrong)}`}return M.nil}function c(){if(n.validateSchema){let u=e.scopeValue("validate$data",{ref:n.validateSchema});return(0,M._)`!${u}(${r})`}return M.nil}}subschema(e,r){let o=(0,Bh.getSubschema)(this.it,e);(0,Bh.extendSubschemaData)(o,this.it,e),(0,Bh.extendSubschemaMode)(o,e);let n={...this.it,...o,items:void 0,props:void 0};return Aj(n,r),n}mergeEvaluated(e,r){let{it:o,gen:n}=this;o.opts.unevaluated&&(o.props!==!0&&e.props!==void 0&&(o.props=vr.mergeEvaluated.props(n,e.props,o.props,r)),o.items!==!0&&e.items!==void 0&&(o.items=vr.mergeEvaluated.items(n,e.items,o.items,r)))}mergeValidEvaluated(e,r){let{it:o,gen:n}=this;if(o.opts.unevaluated&&(o.props!==!0||o.items!==!0))return n.if(r,()=>this.mergeEvaluated(e,M.Name)),!0}};Xr.KeywordCxt=Ll;function Mx(t,e,r,o){let n=new Ll(t,r,e);"code"in r?r.code(n,o):n.$data&&r.validate?(0,ns.funcKeywordCode)(n,r):"macro"in r?(0,ns.macroKeywordCode)(n,r):(r.compile||r.validate)&&(0,ns.funcKeywordCode)(n,r)}var Qj=/^\/(?:[^~]|~0|~1)*$/,eR=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function qx(t,{dataLevel:e,dataNames:r,dataPathArr:o}){let n,i;if(t==="")return B.default.rootData;if(t[0]==="/"){if(!Qj.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);n=t,i=B.default.rootData}else{let l=eR.exec(t);if(!l)throw new Error(`Invalid JSON-pointer: ${t}`);let d=+l[1];if(n=l[2],n==="#"){if(d>=e)throw new Error(u("property/index",d));return o[e-d]}if(d>e)throw new Error(u("data",d));if(i=r[e-d],!n)return i}let a=i,c=n.split("/");for(let l of c)l&&(i=(0,M._)`${i}${(0,M.getProperty)((0,vr.unescapeJsonPointer)(l))}`,a=(0,M._)`${a} && ${i}`);return a;function u(l,d){return`Cannot access ${l} ${d} levels up, current level is ${e}`}}Xr.getData=qx});var Vl=O(Yh=>{"use strict";Object.defineProperty(Yh,"__esModule",{value:!0});var Xh=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Yh.default=Xh});var is=O(tg=>{"use strict";Object.defineProperty(tg,"__esModule",{value:!0});var Qh=ts(),eg=class extends Error{constructor(e,r,o,n){super(n||`can't resolve reference ${o} from id ${r}`),this.missingRef=(0,Qh.resolveUrl)(e,r,o),this.missingSchema=(0,Qh.normalizeId)((0,Qh.getFullPath)(e,this.missingRef))}};tg.default=eg});var Jl=O(Pt=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.resolveSchema=Pt.getCompilingSchema=Pt.resolveRef=Pt.compileSchema=Pt.SchemaEnv=void 0;var Mt=Q(),tR=Vl(),kn=gr(),qt=ts(),Lx=ce(),rR=os(),Ao=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let o;typeof e.schema=="object"&&(o=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,qt.normalizeId)(o==null?void 0:o[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=o==null?void 0:o.$async,this.refs={}}};Pt.SchemaEnv=Ao;function ng(t){let e=Vx.call(this,t);if(e)return e;let r=(0,qt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:o,lines:n}=this.opts.code,{ownProperties:i}=this.opts,a=new Mt.CodeGen(this.scope,{es5:o,lines:n,ownProperties:i}),c;t.$async&&(c=a.scopeValue("Error",{ref:tR.default,code:(0,Mt._)`require("ajv/dist/runtime/validation_error").default`}));let u=a.scopeName("validate");t.validateName=u;let l={gen:a,allErrors:this.opts.allErrors,data:kn.default.data,parentData:kn.default.parentData,parentDataProperty:kn.default.parentDataProperty,dataNames:[kn.default.data],dataPathArr:[Mt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Mt.stringify)(t.schema)}:{ref:t.schema}),validateName:u,ValidationError:c,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Mt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Mt._)`""`,opts:this.opts,self:this},d;try{this._compilations.add(t),(0,rR.validateFunctionCode)(l),a.optimize(this.opts.code.optimize);let s=a.toString();d=`${a.scopeRefs(kn.default.scope)}return ${s}`,this.opts.code.process&&(d=this.opts.code.process(d,t));let p=new Function(`${kn.default.self}`,`${kn.default.scope}`,d)(this,this.scope.get());if(this.scope.value(u,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:u,validateCode:s,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=l;p.evaluated={props:m instanceof Mt.Name?void 0:m,items:h instanceof Mt.Name?void 0:h,dynamicProps:m instanceof Mt.Name,dynamicItems:h instanceof Mt.Name},p.source&&(p.source.evaluated=(0,Mt.stringify)(p.evaluated))}return t.validate=p,t}catch(s){throw delete t.validate,delete t.validateName,d&&this.logger.error("Error compiling schema, function code:",d),s}finally{this._compilations.delete(t)}}Pt.compileSchema=ng;function nR(t,e,r){var o;r=(0,qt.resolveUrl)(this.opts.uriResolver,e,r);let n=t.refs[r];if(n)return n;let i=aR.call(this,t,r);if(i===void 0){let a=(o=t.localRefs)===null||o===void 0?void 0:o[r],{schemaId:c}=this.opts;a&&(i=new Ao({schema:a,schemaId:c,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=oR.call(this,i)}Pt.resolveRef=nR;function oR(t){return(0,qt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:ng.call(this,t)}function Vx(t){for(let e of this._compilations)if(iR(e,t))return e}Pt.getCompilingSchema=Vx;function iR(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function aR(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Fl.call(this,t,e)}function Fl(t,e){let r=this.opts.uriResolver.parse(e),o=(0,qt._getFullPath)(this.opts.uriResolver,r),n=(0,qt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&o===n)return rg.call(this,r,t);let i=(0,qt.normalizeId)(o),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let c=Fl.call(this,t,a);return typeof(c==null?void 0:c.schema)!="object"?void 0:rg.call(this,r,c)}if(typeof(a==null?void 0:a.schema)=="object"){if(a.validate||ng.call(this,a),i===(0,qt.normalizeId)(e)){let{schema:c}=a,{schemaId:u}=this.opts,l=c[u];return l&&(n=(0,qt.resolveUrl)(this.opts.uriResolver,n,l)),new Ao({schema:c,schemaId:u,root:t,baseId:n})}return rg.call(this,r,a)}}Pt.resolveSchema=Fl;var sR=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function rg(t,{baseId:e,schema:r,root:o}){var n;if(((n=t.fragment)===null||n===void 0?void 0:n[0])!=="/")return;for(let c of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let u=r[(0,Lx.unescapeFragment)(c)];if(u===void 0)return;r=u;let l=typeof r=="object"&&r[this.opts.schemaId];!sR.has(c)&&l&&(e=(0,qt.resolveUrl)(this.opts.uriResolver,e,l))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,Lx.schemaHasRulesButRef)(r,this.RULES)){let c=(0,qt.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=Fl.call(this,o,c)}let{schemaId:a}=this.opts;if(i=i||new Ao({schema:r,schemaId:a,root:o,baseId:e}),i.schema!==i.root.schema)return i}});var Fx=O((fL,cR)=>{cR.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var ig=O((pL,Bx)=>{"use strict";var uR=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Hx=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function og(t){let e="",r=0,o=0;for(o=0;o=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[o];break}for(o+=1;o=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[o]}return e}var lR=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Jx(t){return t.length=0,!0}function dR(t,e,r){if(t.length){let o=og(t);if(o!=="")e.push(o);else return r.error=!0,!1;t.length=0}return!0}function fR(t){let e=0,r={error:!1,address:"",zone:""},o=[],n=[],i=!1,a=!1,c=dR;for(let u=0;u7){r.error=!0;break}u>0&&t[u-1]===":"&&(i=!0),o.push(":");continue}else if(l==="%"){if(!c(n,o,r))break;c=Jx}else{n.push(l);continue}}return n.length&&(c===Jx?r.zone=n.join(""):a?o.push(n.join("")):o.push(og(n))),r.address=o.join(""),r}function Wx(t){if(pR(t,":")<2)return{host:t,isIPV6:!1};let e=fR(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,o=e.address;return e.zone&&(r+="%"+e.zone,o+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:o}}}function pR(t,e){let r=0;for(let o=0;o{"use strict";var{isUUID:vR}=ig(),_R=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,yR=["http","https","ws","wss","urn","urn:uuid"];function $R(t){return yR.indexOf(t)!==-1}function ag(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function Gx(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Kx(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function bR(t){return t.secure=ag(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function xR(t){if((t.port===(ag(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function wR(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(_R);if(r){let o=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let n=`${o}:${e.nid||t.nid}`,i=sg(n);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function kR(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",o=t.nid.toLowerCase(),n=`${r}:${e.nid||o}`,i=sg(n);i&&(t=i.serialize(t,e));let a=t,c=t.nss;return a.path=`${o||e.nid}:${c}`,e.skipEscape=!0,a}function SR(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!vR(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function zR(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Xx={scheme:"http",domainHost:!0,parse:Gx,serialize:Kx},IR={scheme:"https",domainHost:Xx.domainHost,parse:Gx,serialize:Kx},Hl={scheme:"ws",domainHost:!0,parse:bR,serialize:xR},PR={scheme:"wss",domainHost:Hl.domainHost,parse:Hl.parse,serialize:Hl.serialize},ER={scheme:"urn",parse:wR,serialize:kR,skipNormalize:!0},TR={scheme:"urn:uuid",parse:SR,serialize:zR,skipNormalize:!0},Wl={http:Xx,https:IR,ws:Hl,wss:PR,urn:ER,"urn:uuid":TR};Object.setPrototypeOf(Wl,null);function sg(t){return t&&(Wl[t]||Wl[t.toLowerCase()])||void 0}Yx.exports={wsIsSecure:ag,SCHEMES:Wl,isValidSchemeName:$R,getSchemeHandler:sg}});var rw=O((hL,Gl)=>{"use strict";var{normalizeIPv6:OR,removeDotSegments:as,recomposeAuthority:jR,normalizeComponentEncoding:Bl,isIPv4:RR,nonSimpleDomain:NR}=ig(),{SCHEMES:CR,getSchemeHandler:ew}=Qx();function DR(t,e){return typeof t=="string"?t=Qt(_r(t,e),e):typeof t=="object"&&(t=_r(Qt(t,e),e)),t}function UR(t,e,r){let o=r?Object.assign({scheme:"null"},r):{scheme:"null"},n=tw(_r(t,o),_r(e,o),o,!0);return o.skipEscape=!0,Qt(n,o)}function tw(t,e,r,o){let n={};return o||(t=_r(Qt(t,r),r),e=_r(Qt(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(n.scheme=e.scheme,n.userinfo=e.userinfo,n.host=e.host,n.port=e.port,n.path=as(e.path||""),n.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(n.userinfo=e.userinfo,n.host=e.host,n.port=e.port,n.path=as(e.path||""),n.query=e.query):(e.path?(e.path[0]==="/"?n.path=as(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?n.path="/"+e.path:t.path?n.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:n.path=e.path,n.path=as(n.path)),n.query=e.query):(n.path=t.path,e.query!==void 0?n.query=e.query:n.query=t.query),n.userinfo=t.userinfo,n.host=t.host,n.port=t.port),n.scheme=t.scheme),n.fragment=e.fragment,n}function ZR(t,e,r){return typeof t=="string"?(t=unescape(t),t=Qt(Bl(_r(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Qt(Bl(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Qt(Bl(_r(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Qt(Bl(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Qt(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},o=Object.assign({},e),n=[],i=ew(o.scheme||r.scheme);i&&i.serialize&&i.serialize(r,o),r.path!==void 0&&(o.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),o.reference!=="suffix"&&r.scheme&&n.push(r.scheme,":");let a=jR(r);if(a!==void 0&&(o.reference!=="suffix"&&n.push("//"),n.push(a),r.path&&r.path[0]!=="/"&&n.push("/")),r.path!==void 0){let c=r.path;!o.absolutePath&&(!i||!i.absolutePath)&&(c=as(c)),a===void 0&&c[0]==="/"&&c[1]==="/"&&(c="/%2F"+c.slice(2)),n.push(c)}return r.query!==void 0&&n.push("?",r.query),r.fragment!==void 0&&n.push("#",r.fragment),n.join("")}var AR=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function _r(t,e){let r=Object.assign({},e),o={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},n=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(AR);if(i){if(o.scheme=i[1],o.userinfo=i[3],o.host=i[4],o.port=parseInt(i[5],10),o.path=i[6]||"",o.query=i[7],o.fragment=i[8],isNaN(o.port)&&(o.port=i[5]),o.host)if(RR(o.host)===!1){let u=OR(o.host);o.host=u.host.toLowerCase(),n=u.isIPV6}else n=!0;o.scheme===void 0&&o.userinfo===void 0&&o.host===void 0&&o.port===void 0&&o.query===void 0&&!o.path?o.reference="same-document":o.scheme===void 0?o.reference="relative":o.fragment===void 0?o.reference="absolute":o.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==o.reference&&(o.error=o.error||"URI is not a "+r.reference+" reference.");let a=ew(r.scheme||o.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&o.host&&(r.domainHost||a&&a.domainHost)&&n===!1&&NR(o.host))try{o.host=URL.domainToASCII(o.host.toLowerCase())}catch(c){o.error=o.error||"Host's domain name can not be converted to ASCII: "+c}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(o.scheme!==void 0&&(o.scheme=unescape(o.scheme)),o.host!==void 0&&(o.host=unescape(o.host))),o.path&&(o.path=escape(unescape(o.path))),o.fragment&&(o.fragment=encodeURI(decodeURIComponent(o.fragment)))),a&&a.parse&&a.parse(o,r)}else o.error=o.error||"URI can not be parsed.";return o}var cg={SCHEMES:CR,normalize:DR,resolve:UR,resolveComponent:tw,equal:ZR,serialize:Qt,parse:_r};Gl.exports=cg;Gl.exports.default=cg;Gl.exports.fastUri=cg});var ow=O(ug=>{"use strict";Object.defineProperty(ug,"__esModule",{value:!0});var nw=rw();nw.code='require("ajv/dist/runtime/uri").default';ug.default=nw});var fw=O(Me=>{"use strict";Object.defineProperty(Me,"__esModule",{value:!0});Me.CodeGen=Me.Name=Me.nil=Me.stringify=Me.str=Me._=Me.KeywordCxt=void 0;var MR=os();Object.defineProperty(Me,"KeywordCxt",{enumerable:!0,get:function(){return MR.KeywordCxt}});var Mo=Q();Object.defineProperty(Me,"_",{enumerable:!0,get:function(){return Mo._}});Object.defineProperty(Me,"str",{enumerable:!0,get:function(){return Mo.str}});Object.defineProperty(Me,"stringify",{enumerable:!0,get:function(){return Mo.stringify}});Object.defineProperty(Me,"nil",{enumerable:!0,get:function(){return Mo.nil}});Object.defineProperty(Me,"Name",{enumerable:!0,get:function(){return Mo.Name}});Object.defineProperty(Me,"CodeGen",{enumerable:!0,get:function(){return Mo.CodeGen}});var qR=Vl(),uw=is(),LR=Zh(),ss=Jl(),VR=Q(),cs=ts(),Kl=es(),dg=ce(),iw=Fx(),FR=ow(),lw=(t,e)=>new RegExp(t,e);lw.code="new RegExp";var JR=["removeAdditional","useDefaults","coerceTypes"],HR=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),WR={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},BR={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},aw=200;function GR(t){var e,r,o,n,i,a,c,u,l,d,s,f,p,m,h,v,y,w,k,x,b,L,H,he,W;let we=t.strict,Te=(e=t.code)===null||e===void 0?void 0:e.optimize,de=Te===!0||Te===void 0?1:Te||0,nt=(o=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&o!==void 0?o:lw,$t=(n=t.uriResolver)!==null&&n!==void 0?n:FR.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:we)!==null&&a!==void 0?a:!0,strictNumbers:(u=(c=t.strictNumbers)!==null&&c!==void 0?c:we)!==null&&u!==void 0?u:!0,strictTypes:(d=(l=t.strictTypes)!==null&&l!==void 0?l:we)!==null&&d!==void 0?d:"log",strictTuples:(f=(s=t.strictTuples)!==null&&s!==void 0?s:we)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:we)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:de,regExp:nt}:{optimize:de,regExp:nt},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:aw,loopEnum:(v=t.loopEnum)!==null&&v!==void 0?v:aw,meta:(y=t.meta)!==null&&y!==void 0?y:!0,messages:(w=t.messages)!==null&&w!==void 0?w:!0,inlineRefs:(k=t.inlineRefs)!==null&&k!==void 0?k:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(b=t.addUsedSchema)!==null&&b!==void 0?b:!0,validateSchema:(L=t.validateSchema)!==null&&L!==void 0?L:!0,validateFormats:(H=t.validateFormats)!==null&&H!==void 0?H:!0,unicodeRegExp:(he=t.unicodeRegExp)!==null&&he!==void 0?he:!0,int32range:(W=t.int32range)!==null&&W!==void 0?W:!0,uriResolver:$t}}var us=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...GR(e)};let{es5:r,lines:o}=this.opts.code;this.scope=new VR.ValueScope({scope:{},prefixes:HR,es5:r,lines:o}),this.logger=tN(e.logger);let n=e.validateFormats;e.validateFormats=!1,this.RULES=(0,LR.getRules)(),sw.call(this,WR,e,"NOT SUPPORTED"),sw.call(this,BR,e,"DEPRECATED","warn"),this._metaOpts=QR.call(this),e.formats&&XR.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&YR.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),KR.call(this),e.validateFormats=n}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:o}=this.opts,n=iw;o==="id"&&(n={...iw},n.id=n.$id,delete n.$id),r&&e&&this.addMetaSchema(n,n[o],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let o;if(typeof e=="string"){if(o=this.getSchema(e),!o)throw new Error(`no schema with key or ref "${e}"`)}else o=this.compile(e);let n=o(r);return"$async"in o||(this.errors=o.errors),n}compile(e,r){let o=this._addSchema(e,r);return o.validate||this._compileSchemaEnv(o)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:o}=this.opts;return n.call(this,e,r);async function n(d,s){await i.call(this,d.$schema);let f=this._addSchema(d,s);return f.validate||a.call(this,f)}async function i(d){d&&!this.getSchema(d)&&await n.call(this,{$ref:d},!0)}async function a(d){try{return this._compileSchemaEnv(d)}catch(s){if(!(s instanceof uw.default))throw s;return c.call(this,s),await u.call(this,s.missingSchema),a.call(this,d)}}function c({missingSchema:d,missingRef:s}){if(this.refs[d])throw new Error(`AnySchema ${d} is loaded but ${s} cannot be resolved`)}async function u(d){let s=await l.call(this,d);this.refs[d]||await i.call(this,s.$schema),this.refs[d]||this.addSchema(s,d,r)}async function l(d){let s=this._loading[d];if(s)return s;try{return await(this._loading[d]=o(d))}finally{delete this._loading[d]}}}addSchema(e,r,o,n=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,o,n);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,cs.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,o,r,n,!0),this}addMetaSchema(e,r,o=this.opts.validateSchema){return this.addSchema(e,r,!0,o),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let o;if(o=e.$schema,o!==void 0&&typeof o!="string")throw new Error("$schema must be a string");if(o=o||this.opts.defaultMeta||this.defaultMeta(),!o)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let n=this.validate(o,e);if(!n&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return n}getSchema(e){let r;for(;typeof(r=cw.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:o}=this.opts,n=new ss.SchemaEnv({schema:{},schemaId:o});if(r=ss.resolveSchema.call(this,n,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=cw.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let o=e[this.opts.schemaId];return o&&(o=(0,cs.normalizeId)(o),delete this.schemas[o],delete this.refs[o]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let o;if(typeof e=="string")o=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=o);else if(typeof e=="object"&&r===void 0){if(r=e,o=r.keyword,Array.isArray(o)&&!o.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(nN.call(this,o,r),!r)return(0,dg.eachItem)(o,i=>lg.call(this,i)),this;iN.call(this,r);let n={...r,type:(0,Kl.getJSONTypes)(r.type),schemaType:(0,Kl.getJSONTypes)(r.schemaType)};return(0,dg.eachItem)(o,n.type.length===0?i=>lg.call(this,i,n):i=>n.type.forEach(a=>lg.call(this,i,n,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let o of r.rules){let n=o.rules.findIndex(i=>i.keyword===e);n>=0&&o.rules.splice(n,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:o="data"}={}){return!e||e.length===0?"No errors":e.map(n=>`${o}${n.instancePath} ${n.message}`).reduce((n,i)=>n+r+i)}$dataMetaSchema(e,r){let o=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let n of r){let i=n.split("/").slice(1),a=e;for(let c of i)a=a[c];for(let c in o){let u=o[c];if(typeof u!="object")continue;let{$data:l}=u.definition,d=a[c];l&&d&&(a[c]=dw(d))}}return e}_removeAllSchemas(e,r){for(let o in e){let n=e[o];(!r||r.test(o))&&(typeof n=="string"?delete e[o]:n&&!n.meta&&(this._cache.delete(n.schema),delete e[o]))}}_addSchema(e,r,o,n=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:c}=this.opts;if(typeof e=="object")a=e[c];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let u=this._cache.get(e);if(u!==void 0)return u;o=(0,cs.normalizeId)(a||o);let l=cs.getSchemaRefs.call(this,e,o);return u=new ss.SchemaEnv({schema:e,schemaId:c,meta:r,baseId:o,localRefs:l}),this._cache.set(u.schema,u),i&&!o.startsWith("#")&&(o&&this._checkUnique(o),this.refs[o]=u),n&&this.validateSchema(e,!0),u}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):ss.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{ss.compileSchema.call(this,e)}finally{this.opts=r}}};us.ValidationError=qR.default;us.MissingRefError=uw.default;Me.default=us;function sw(t,e,r,o="error"){for(let n in t){let i=n;i in e&&this.logger[o](`${r}: option ${n}. ${t[i]}`)}}function cw(t){return t=(0,cs.normalizeId)(t),this.schemas[t]||this.refs[t]}function KR(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function XR(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function YR(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function QR(){let t={...this.opts};for(let e of JR)delete t[e];return t}var eN={log(){},warn(){},error(){}};function tN(t){if(t===!1)return eN;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var rN=/^[a-z_$][a-z0-9_$:-]*$/i;function nN(t,e){let{RULES:r}=this;if((0,dg.eachItem)(t,o=>{if(r.keywords[o])throw new Error(`Keyword ${o} is already defined`);if(!rN.test(o))throw new Error(`Keyword ${o} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function lg(t,e,r){var o;let n=e==null?void 0:e.post;if(r&&n)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=n?i.post:i.rules.find(({type:u})=>u===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let c={keyword:t,definition:{...e,type:(0,Kl.getJSONTypes)(e.type),schemaType:(0,Kl.getJSONTypes)(e.schemaType)}};e.before?oN.call(this,a,c,e.before):a.rules.push(c),i.all[t]=c,(o=e.implements)===null||o===void 0||o.forEach(u=>this.addKeyword(u))}function oN(t,e,r){let o=t.rules.findIndex(n=>n.keyword===r);o>=0?t.rules.splice(o,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function iN(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=dw(e)),t.validateSchema=this.compile(e,!0))}var aN={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function dw(t){return{anyOf:[t,aN]}}});var pw=O(fg=>{"use strict";Object.defineProperty(fg,"__esModule",{value:!0});var sN={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};fg.default=sN});var vw=O(Sn=>{"use strict";Object.defineProperty(Sn,"__esModule",{value:!0});Sn.callRef=Sn.getValidate=void 0;var cN=is(),mw=It(),ft=Q(),qo=gr(),hw=Jl(),Xl=ce(),uN={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:o}=t,{baseId:n,schemaEnv:i,validateName:a,opts:c,self:u}=o,{root:l}=i;if((r==="#"||r==="#/")&&n===l.baseId)return s();let d=hw.resolveRef.call(u,l,n,r);if(d===void 0)throw new cN.default(o.opts.uriResolver,n,r);if(d instanceof hw.SchemaEnv)return f(d);return p(d);function s(){if(i===l)return Yl(t,a,i,i.$async);let m=e.scopeValue("root",{ref:l});return Yl(t,(0,ft._)`${m}.validate`,l,l.$async)}function f(m){let h=gw(t,m);Yl(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",c.code.source===!0?{ref:m,code:(0,ft.stringify)(m)}:{ref:m}),v=e.name("valid"),y=t.subschema({schema:m,dataTypes:[],schemaPath:ft.nil,topSchemaRef:h,errSchemaPath:r},v);t.mergeEvaluated(y),t.ok(v)}}};function gw(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,ft._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Sn.getValidate=gw;function Yl(t,e,r,o){let{gen:n,it:i}=t,{allErrors:a,schemaEnv:c,opts:u}=i,l=u.passContext?qo.default.this:ft.nil;o?d():s();function d(){if(!c.$async)throw new Error("async schema referenced by sync schema");let m=n.let("valid");n.try(()=>{n.code((0,ft._)`await ${(0,mw.callValidateCode)(t,e,l)}`),p(e),a||n.assign(m,!0)},h=>{n.if((0,ft._)`!(${h} instanceof ${i.ValidationError})`,()=>n.throw(h)),f(h),a||n.assign(m,!1)}),t.ok(m)}function s(){t.result((0,mw.callValidateCode)(t,e,l),()=>p(e),()=>f(e))}function f(m){let h=(0,ft._)`${m}.errors`;n.assign(qo.default.vErrors,(0,ft._)`${qo.default.vErrors} === null ? ${h} : ${qo.default.vErrors}.concat(${h})`),n.assign(qo.default.errors,(0,ft._)`${qo.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let v=(h=r==null?void 0:r.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(v&&!v.dynamicProps)v.props!==void 0&&(i.props=Xl.mergeEvaluated.props(n,v.props,i.props));else{let y=n.var("props",(0,ft._)`${m}.evaluated.props`);i.props=Xl.mergeEvaluated.props(n,y,i.props,ft.Name)}if(i.items!==!0)if(v&&!v.dynamicItems)v.items!==void 0&&(i.items=Xl.mergeEvaluated.items(n,v.items,i.items));else{let y=n.var("items",(0,ft._)`${m}.evaluated.items`);i.items=Xl.mergeEvaluated.items(n,y,i.items,ft.Name)}}}Sn.callRef=Yl;Sn.default=uN});var _w=O(pg=>{"use strict";Object.defineProperty(pg,"__esModule",{value:!0});var lN=pw(),dN=vw(),fN=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",lN.default,dN.default];pg.default=fN});var yw=O(mg=>{"use strict";Object.defineProperty(mg,"__esModule",{value:!0});var Ql=Q(),Yr=Ql.operators,ed={maximum:{okStr:"<=",ok:Yr.LTE,fail:Yr.GT},minimum:{okStr:">=",ok:Yr.GTE,fail:Yr.LT},exclusiveMaximum:{okStr:"<",ok:Yr.LT,fail:Yr.GTE},exclusiveMinimum:{okStr:">",ok:Yr.GT,fail:Yr.LTE}},pN={message:({keyword:t,schemaCode:e})=>(0,Ql.str)`must be ${ed[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ql._)`{comparison: ${ed[t].okStr}, limit: ${e}}`},mN={keyword:Object.keys(ed),type:"number",schemaType:"number",$data:!0,error:pN,code(t){let{keyword:e,data:r,schemaCode:o}=t;t.fail$data((0,Ql._)`${r} ${ed[e].fail} ${o} || isNaN(${r})`)}};mg.default=mN});var $w=O(hg=>{"use strict";Object.defineProperty(hg,"__esModule",{value:!0});var ls=Q(),hN={message:({schemaCode:t})=>(0,ls.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,ls._)`{multipleOf: ${t}}`},gN={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:hN,code(t){let{gen:e,data:r,schemaCode:o,it:n}=t,i=n.opts.multipleOfPrecision,a=e.let("res"),c=i?(0,ls._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,ls._)`${a} !== parseInt(${a})`;t.fail$data((0,ls._)`(${o} === 0 || (${a} = ${r}/${o}, ${c}))`)}};hg.default=gN});var xw=O(gg=>{"use strict";Object.defineProperty(gg,"__esModule",{value:!0});function bw(t){let e=t.length,r=0,o=0,n;for(;o=55296&&n<=56319&&o{"use strict";Object.defineProperty(vg,"__esModule",{value:!0});var zn=Q(),vN=ce(),_N=xw(),yN={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,zn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,zn._)`{limit: ${t}}`},$N={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:yN,code(t){let{keyword:e,data:r,schemaCode:o,it:n}=t,i=e==="maxLength"?zn.operators.GT:zn.operators.LT,a=n.opts.unicode===!1?(0,zn._)`${r}.length`:(0,zn._)`${(0,vN.useFunc)(t.gen,_N.default)}(${r})`;t.fail$data((0,zn._)`${a} ${i} ${o}`)}};vg.default=$N});var kw=O(_g=>{"use strict";Object.defineProperty(_g,"__esModule",{value:!0});var bN=It(),xN=ce(),Lo=Q(),wN={message:({schemaCode:t})=>(0,Lo.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Lo._)`{pattern: ${t}}`},kN={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:wN,code(t){let{gen:e,data:r,$data:o,schema:n,schemaCode:i,it:a}=t,c=a.opts.unicodeRegExp?"u":"";if(o){let{regExp:u}=a.opts.code,l=u.code==="new RegExp"?(0,Lo._)`new RegExp`:(0,xN.useFunc)(e,u),d=e.let("valid");e.try(()=>e.assign(d,(0,Lo._)`${l}(${i}, ${c}).test(${r})`),()=>e.assign(d,!1)),t.fail$data((0,Lo._)`!${d}`)}else{let u=(0,bN.usePattern)(t,n);t.fail$data((0,Lo._)`!${u}.test(${r})`)}}};_g.default=kN});var Sw=O(yg=>{"use strict";Object.defineProperty(yg,"__esModule",{value:!0});var ds=Q(),SN={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,ds.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,ds._)`{limit: ${t}}`},zN={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:SN,code(t){let{keyword:e,data:r,schemaCode:o}=t,n=e==="maxProperties"?ds.operators.GT:ds.operators.LT;t.fail$data((0,ds._)`Object.keys(${r}).length ${n} ${o}`)}};yg.default=zN});var zw=O($g=>{"use strict";Object.defineProperty($g,"__esModule",{value:!0});var fs=It(),ps=Q(),IN=ce(),PN={message:({params:{missingProperty:t}})=>(0,ps.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,ps._)`{missingProperty: ${t}}`},EN={keyword:"required",type:"object",schemaType:"array",$data:!0,error:PN,code(t){let{gen:e,schema:r,schemaCode:o,data:n,$data:i,it:a}=t,{opts:c}=a;if(!i&&r.length===0)return;let u=r.length>=c.loopRequired;if(a.allErrors?l():d(),c.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if((p==null?void 0:p[h])===void 0&&!m.has(h)){let v=a.schemaEnv.baseId+a.errSchemaPath,y=`required property "${h}" is not defined at "${v}" (strictRequired)`;(0,IN.checkStrictMode)(a,y,a.opts.strictRequired)}}function l(){if(u||i)t.block$data(ps.nil,s);else for(let p of r)(0,fs.checkReportMissingProp)(t,p)}function d(){let p=e.let("missing");if(u||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,fs.checkMissingProp)(t,r,p)),(0,fs.reportMissingProp)(t,p),e.else()}function s(){e.forOf("prop",o,p=>{t.setParams({missingProperty:p}),e.if((0,fs.noPropertyInData)(e,n,p,c.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,o,()=>{e.assign(m,(0,fs.propertyInData)(e,n,p,c.ownProperties)),e.if((0,ps.not)(m),()=>{t.error(),e.break()})},ps.nil)}}};$g.default=EN});var Iw=O(bg=>{"use strict";Object.defineProperty(bg,"__esModule",{value:!0});var ms=Q(),TN={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,ms.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,ms._)`{limit: ${t}}`},ON={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:TN,code(t){let{keyword:e,data:r,schemaCode:o}=t,n=e==="maxItems"?ms.operators.GT:ms.operators.LT;t.fail$data((0,ms._)`${r}.length ${n} ${o}`)}};bg.default=ON});var td=O(xg=>{"use strict";Object.defineProperty(xg,"__esModule",{value:!0});var Pw=Hh();Pw.code='require("ajv/dist/runtime/equal").default';xg.default=Pw});var Ew=O(kg=>{"use strict";Object.defineProperty(kg,"__esModule",{value:!0});var wg=es(),qe=Q(),jN=ce(),RN=td(),NN={message:({params:{i:t,j:e}})=>(0,qe.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,qe._)`{i: ${t}, j: ${e}}`},CN={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:NN,code(t){let{gen:e,data:r,$data:o,schema:n,parentSchema:i,schemaCode:a,it:c}=t;if(!o&&!n)return;let u=e.let("valid"),l=i.items?(0,wg.getSchemaTypes)(i.items):[];t.block$data(u,d,(0,qe._)`${a} === false`),t.ok(u);function d(){let m=e.let("i",(0,qe._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(u,!0),e.if((0,qe._)`${m} > 1`,()=>(s()?f:p)(m,h))}function s(){return l.length>0&&!l.some(m=>m==="object"||m==="array")}function f(m,h){let v=e.name("item"),y=(0,wg.checkDataTypes)(l,v,c.opts.strictNumbers,wg.DataType.Wrong),w=e.const("indices",(0,qe._)`{}`);e.for((0,qe._)`;${m}--;`,()=>{e.let(v,(0,qe._)`${r}[${m}]`),e.if(y,(0,qe._)`continue`),l.length>1&&e.if((0,qe._)`typeof ${v} == "string"`,(0,qe._)`${v} += "_"`),e.if((0,qe._)`typeof ${w}[${v}] == "number"`,()=>{e.assign(h,(0,qe._)`${w}[${v}]`),t.error(),e.assign(u,!1).break()}).code((0,qe._)`${w}[${v}] = ${m}`)})}function p(m,h){let v=(0,jN.useFunc)(e,RN.default),y=e.name("outer");e.label(y).for((0,qe._)`;${m}--;`,()=>e.for((0,qe._)`${h} = ${m}; ${h}--;`,()=>e.if((0,qe._)`${v}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(u,!1).break(y)})))}}};kg.default=CN});var Tw=O(zg=>{"use strict";Object.defineProperty(zg,"__esModule",{value:!0});var Sg=Q(),DN=ce(),UN=td(),ZN={message:"must be equal to constant",params:({schemaCode:t})=>(0,Sg._)`{allowedValue: ${t}}`},AN={keyword:"const",$data:!0,error:ZN,code(t){let{gen:e,data:r,$data:o,schemaCode:n,schema:i}=t;o||i&&typeof i=="object"?t.fail$data((0,Sg._)`!${(0,DN.useFunc)(e,UN.default)}(${r}, ${n})`):t.fail((0,Sg._)`${i} !== ${r}`)}};zg.default=AN});var Ow=O(Ig=>{"use strict";Object.defineProperty(Ig,"__esModule",{value:!0});var hs=Q(),MN=ce(),qN=td(),LN={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,hs._)`{allowedValues: ${t}}`},VN={keyword:"enum",schemaType:"array",$data:!0,error:LN,code(t){let{gen:e,data:r,$data:o,schema:n,schemaCode:i,it:a}=t;if(!o&&n.length===0)throw new Error("enum must have non-empty array");let c=n.length>=a.opts.loopEnum,u,l=()=>u!=null?u:u=(0,MN.useFunc)(e,qN.default),d;if(c||o)d=e.let("valid"),t.block$data(d,s);else{if(!Array.isArray(n))throw new Error("ajv implementation error");let p=e.const("vSchema",i);d=(0,hs.or)(...n.map((m,h)=>f(p,h)))}t.pass(d);function s(){e.assign(d,!1),e.forOf("v",i,p=>e.if((0,hs._)`${l()}(${r}, ${p})`,()=>e.assign(d,!0).break()))}function f(p,m){let h=n[m];return typeof h=="object"&&h!==null?(0,hs._)`${l()}(${r}, ${p}[${m}])`:(0,hs._)`${r} === ${h}`}}};Ig.default=VN});var jw=O(Pg=>{"use strict";Object.defineProperty(Pg,"__esModule",{value:!0});var FN=yw(),JN=$w(),HN=ww(),WN=kw(),BN=Sw(),GN=zw(),KN=Iw(),XN=Ew(),YN=Tw(),QN=Ow(),e1=[FN.default,JN.default,HN.default,WN.default,BN.default,GN.default,KN.default,XN.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},YN.default,QN.default];Pg.default=e1});var Tg=O(gs=>{"use strict";Object.defineProperty(gs,"__esModule",{value:!0});gs.validateAdditionalItems=void 0;var In=Q(),Eg=ce(),t1={message:({params:{len:t}})=>(0,In.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,In._)`{limit: ${t}}`},r1={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:t1,code(t){let{parentSchema:e,it:r}=t,{items:o}=e;if(!Array.isArray(o)){(0,Eg.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Rw(t,o)}};function Rw(t,e){let{gen:r,schema:o,data:n,keyword:i,it:a}=t;a.items=!0;let c=r.const("len",(0,In._)`${n}.length`);if(o===!1)t.setParams({len:e.length}),t.pass((0,In._)`${c} <= ${e.length}`);else if(typeof o=="object"&&!(0,Eg.alwaysValidSchema)(a,o)){let l=r.var("valid",(0,In._)`${c} <= ${e.length}`);r.if((0,In.not)(l),()=>u(l)),t.ok(l)}function u(l){r.forRange("i",e.length,c,d=>{t.subschema({keyword:i,dataProp:d,dataPropType:Eg.Type.Num},l),a.allErrors||r.if((0,In.not)(l),()=>r.break())})}}gs.validateAdditionalItems=Rw;gs.default=r1});var Og=O(vs=>{"use strict";Object.defineProperty(vs,"__esModule",{value:!0});vs.validateTuple=void 0;var Nw=Q(),rd=ce(),n1=It(),o1={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Cw(t,"additionalItems",e);r.items=!0,!(0,rd.alwaysValidSchema)(r,e)&&t.ok((0,n1.validateArray)(t))}};function Cw(t,e,r=t.schema){let{gen:o,parentSchema:n,data:i,keyword:a,it:c}=t;d(n),c.opts.unevaluated&&r.length&&c.items!==!0&&(c.items=rd.mergeEvaluated.items(o,r.length,c.items));let u=o.name("valid"),l=o.const("len",(0,Nw._)`${i}.length`);r.forEach((s,f)=>{(0,rd.alwaysValidSchema)(c,s)||(o.if((0,Nw._)`${l} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},u)),t.ok(u))});function d(s){let{opts:f,errSchemaPath:p}=c,m=r.length,h=m===s.minItems&&(m===s.maxItems||s[e]===!1);if(f.strictTuples&&!h){let v=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,rd.checkStrictMode)(c,v,f.strictTuples)}}}vs.validateTuple=Cw;vs.default=o1});var Dw=O(jg=>{"use strict";Object.defineProperty(jg,"__esModule",{value:!0});var i1=Og(),a1={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,i1.validateTuple)(t,"items")};jg.default=a1});var Zw=O(Rg=>{"use strict";Object.defineProperty(Rg,"__esModule",{value:!0});var Uw=Q(),s1=ce(),c1=It(),u1=Tg(),l1={message:({params:{len:t}})=>(0,Uw.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Uw._)`{limit: ${t}}`},d1={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:l1,code(t){let{schema:e,parentSchema:r,it:o}=t,{prefixItems:n}=r;o.items=!0,!(0,s1.alwaysValidSchema)(o,e)&&(n?(0,u1.validateAdditionalItems)(t,n):t.ok((0,c1.validateArray)(t)))}};Rg.default=d1});var Aw=O(Ng=>{"use strict";Object.defineProperty(Ng,"__esModule",{value:!0});var Et=Q(),nd=ce(),f1={message:({params:{min:t,max:e}})=>e===void 0?(0,Et.str)`must contain at least ${t} valid item(s)`:(0,Et.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Et._)`{minContains: ${t}}`:(0,Et._)`{minContains: ${t}, maxContains: ${e}}`},p1={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:f1,code(t){let{gen:e,schema:r,parentSchema:o,data:n,it:i}=t,a,c,{minContains:u,maxContains:l}=o;i.opts.next?(a=u===void 0?1:u,c=l):a=1;let d=e.const("len",(0,Et._)`${n}.length`);if(t.setParams({min:a,max:c}),c===void 0&&a===0){(0,nd.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(c!==void 0&&a>c){(0,nd.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,nd.alwaysValidSchema)(i,r)){let h=(0,Et._)`${d} >= ${a}`;c!==void 0&&(h=(0,Et._)`${h} && ${d} <= ${c}`),t.pass(h);return}i.items=!0;let s=e.name("valid");c===void 0&&a===1?p(s,()=>e.if(s,()=>e.break())):a===0?(e.let(s,!0),c!==void 0&&e.if((0,Et._)`${n}.length > 0`,f)):(e.let(s,!1),f()),t.result(s,()=>t.reset());function f(){let h=e.name("_valid"),v=e.let("count",0);p(h,()=>e.if(h,()=>m(v)))}function p(h,v){e.forRange("i",0,d,y=>{t.subschema({keyword:"contains",dataProp:y,dataPropType:nd.Type.Num,compositeRule:!0},h),v()})}function m(h){e.code((0,Et._)`${h}++`),c===void 0?e.if((0,Et._)`${h} >= ${a}`,()=>e.assign(s,!0).break()):(e.if((0,Et._)`${h} > ${c}`,()=>e.assign(s,!1).break()),a===1?e.assign(s,!0):e.if((0,Et._)`${h} >= ${a}`,()=>e.assign(s,!0)))}}};Ng.default=p1});var Lw=O(er=>{"use strict";Object.defineProperty(er,"__esModule",{value:!0});er.validateSchemaDeps=er.validatePropertyDeps=er.error=void 0;var Cg=Q(),m1=ce(),_s=It();er.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let o=e===1?"property":"properties";return(0,Cg.str)`must have ${o} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:o}})=>(0,Cg._)`{property: ${t}, + missingProperty: ${o}, + depsCount: ${e}, + deps: ${r}}`};var h1={keyword:"dependencies",type:"object",schemaType:"object",error:er.error,code(t){let[e,r]=g1(t);Mw(t,e),qw(t,r)}};function g1({schema:t}){let e={},r={};for(let o in t){if(o==="__proto__")continue;let n=Array.isArray(t[o])?e:r;n[o]=t[o]}return[e,r]}function Mw(t,e=t.schema){let{gen:r,data:o,it:n}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let c=e[a];if(c.length===0)continue;let u=(0,_s.propertyInData)(r,o,a,n.opts.ownProperties);t.setParams({property:a,depsCount:c.length,deps:c.join(", ")}),n.allErrors?r.if(u,()=>{for(let l of c)(0,_s.checkReportMissingProp)(t,l)}):(r.if((0,Cg._)`${u} && (${(0,_s.checkMissingProp)(t,c,i)})`),(0,_s.reportMissingProp)(t,i),r.else())}}er.validatePropertyDeps=Mw;function qw(t,e=t.schema){let{gen:r,data:o,keyword:n,it:i}=t,a=r.name("valid");for(let c in e)(0,m1.alwaysValidSchema)(i,e[c])||(r.if((0,_s.propertyInData)(r,o,c,i.opts.ownProperties),()=>{let u=t.subschema({keyword:n,schemaProp:c},a);t.mergeValidEvaluated(u,a)},()=>r.var(a,!0)),t.ok(a))}er.validateSchemaDeps=qw;er.default=h1});var Fw=O(Dg=>{"use strict";Object.defineProperty(Dg,"__esModule",{value:!0});var Vw=Q(),v1=ce(),_1={message:"property name must be valid",params:({params:t})=>(0,Vw._)`{propertyName: ${t.propertyName}}`},y1={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:_1,code(t){let{gen:e,schema:r,data:o,it:n}=t;if((0,v1.alwaysValidSchema)(n,r))return;let i=e.name("valid");e.forIn("key",o,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,Vw.not)(i),()=>{t.error(!0),n.allErrors||e.break()})}),t.ok(i)}};Dg.default=y1});var Zg=O(Ug=>{"use strict";Object.defineProperty(Ug,"__esModule",{value:!0});var od=It(),Lt=Q(),$1=gr(),id=ce(),b1={message:"must NOT have additional properties",params:({params:t})=>(0,Lt._)`{additionalProperty: ${t.additionalProperty}}`},x1={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:b1,code(t){let{gen:e,schema:r,parentSchema:o,data:n,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:c,opts:u}=a;if(a.props=!0,u.removeAdditional!=="all"&&(0,id.alwaysValidSchema)(a,r))return;let l=(0,od.allSchemaProperties)(o.properties),d=(0,od.allSchemaProperties)(o.patternProperties);s(),t.ok((0,Lt._)`${i} === ${$1.default.errors}`);function s(){e.forIn("key",n,v=>{!l.length&&!d.length?m(v):e.if(f(v),()=>m(v))})}function f(v){let y;if(l.length>8){let w=(0,id.schemaRefOrVal)(a,o.properties,"properties");y=(0,od.isOwnProperty)(e,w,v)}else l.length?y=(0,Lt.or)(...l.map(w=>(0,Lt._)`${v} === ${w}`)):y=Lt.nil;return d.length&&(y=(0,Lt.or)(y,...d.map(w=>(0,Lt._)`${(0,od.usePattern)(t,w)}.test(${v})`))),(0,Lt.not)(y)}function p(v){e.code((0,Lt._)`delete ${n}[${v}]`)}function m(v){if(u.removeAdditional==="all"||u.removeAdditional&&r===!1){p(v);return}if(r===!1){t.setParams({additionalProperty:v}),t.error(),c||e.break();return}if(typeof r=="object"&&!(0,id.alwaysValidSchema)(a,r)){let y=e.name("valid");u.removeAdditional==="failing"?(h(v,y,!1),e.if((0,Lt.not)(y),()=>{t.reset(),p(v)})):(h(v,y),c||e.if((0,Lt.not)(y),()=>e.break()))}}function h(v,y,w){let k={keyword:"additionalProperties",dataProp:v,dataPropType:id.Type.Str};w===!1&&Object.assign(k,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(k,y)}}};Ug.default=x1});var Ww=O(Mg=>{"use strict";Object.defineProperty(Mg,"__esModule",{value:!0});var w1=os(),Jw=It(),Ag=ce(),Hw=Zg(),k1={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:o,data:n,it:i}=t;i.opts.removeAdditional==="all"&&o.additionalProperties===void 0&&Hw.default.code(new w1.KeywordCxt(i,Hw.default,"additionalProperties"));let a=(0,Jw.allSchemaProperties)(r);for(let s of a)i.definedProperties.add(s);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=Ag.mergeEvaluated.props(e,(0,Ag.toHash)(a),i.props));let c=a.filter(s=>!(0,Ag.alwaysValidSchema)(i,r[s]));if(c.length===0)return;let u=e.name("valid");for(let s of c)l(s)?d(s):(e.if((0,Jw.propertyInData)(e,n,s,i.opts.ownProperties)),d(s),i.allErrors||e.else().var(u,!0),e.endIf()),t.it.definedProperties.add(s),t.ok(u);function l(s){return i.opts.useDefaults&&!i.compositeRule&&r[s].default!==void 0}function d(s){t.subschema({keyword:"properties",schemaProp:s,dataProp:s},u)}}};Mg.default=k1});var Xw=O(qg=>{"use strict";Object.defineProperty(qg,"__esModule",{value:!0});var Bw=It(),ad=Q(),Gw=ce(),Kw=ce(),S1={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:o,parentSchema:n,it:i}=t,{opts:a}=i,c=(0,Bw.allSchemaProperties)(r),u=c.filter(h=>(0,Gw.alwaysValidSchema)(i,r[h]));if(c.length===0||u.length===c.length&&(!i.opts.unevaluated||i.props===!0))return;let l=a.strictSchema&&!a.allowMatchingProperties&&n.properties,d=e.name("valid");i.props!==!0&&!(i.props instanceof ad.Name)&&(i.props=(0,Kw.evaluatedPropsToName)(e,i.props));let{props:s}=i;f();function f(){for(let h of c)l&&p(h),i.allErrors?m(h):(e.var(d,!0),m(h),e.if(d))}function p(h){for(let v in l)new RegExp(h).test(v)&&(0,Gw.checkStrictMode)(i,`property ${v} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",o,v=>{e.if((0,ad._)`${(0,Bw.usePattern)(t,h)}.test(${v})`,()=>{let y=u.includes(h);y||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:v,dataPropType:Kw.Type.Str},d),i.opts.unevaluated&&s!==!0?e.assign((0,ad._)`${s}[${v}]`,!0):!y&&!i.allErrors&&e.if((0,ad.not)(d),()=>e.break())})})}}};qg.default=S1});var Yw=O(Lg=>{"use strict";Object.defineProperty(Lg,"__esModule",{value:!0});var z1=ce(),I1={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:o}=t;if((0,z1.alwaysValidSchema)(o,r)){t.fail();return}let n=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},n),t.failResult(n,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};Lg.default=I1});var Qw=O(Vg=>{"use strict";Object.defineProperty(Vg,"__esModule",{value:!0});var P1=It(),E1={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:P1.validateUnion,error:{message:"must match a schema in anyOf"}};Vg.default=E1});var ek=O(Fg=>{"use strict";Object.defineProperty(Fg,"__esModule",{value:!0});var sd=Q(),T1=ce(),O1={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,sd._)`{passingSchemas: ${t.passing}}`},j1={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:O1,code(t){let{gen:e,schema:r,parentSchema:o,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(n.opts.discriminator&&o.discriminator)return;let i=r,a=e.let("valid",!1),c=e.let("passing",null),u=e.name("_valid");t.setParams({passing:c}),e.block(l),t.result(a,()=>t.reset(),()=>t.error(!0));function l(){i.forEach((d,s)=>{let f;(0,T1.alwaysValidSchema)(n,d)?e.var(u,!0):f=t.subschema({keyword:"oneOf",schemaProp:s,compositeRule:!0},u),s>0&&e.if((0,sd._)`${u} && ${a}`).assign(a,!1).assign(c,(0,sd._)`[${c}, ${s}]`).else(),e.if(u,()=>{e.assign(a,!0),e.assign(c,s),f&&t.mergeEvaluated(f,sd.Name)})})}}};Fg.default=j1});var tk=O(Jg=>{"use strict";Object.defineProperty(Jg,"__esModule",{value:!0});var R1=ce(),N1={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let n=e.name("valid");r.forEach((i,a)=>{if((0,R1.alwaysValidSchema)(o,i))return;let c=t.subschema({keyword:"allOf",schemaProp:a},n);t.ok(n),t.mergeEvaluated(c)})}};Jg.default=N1});var ok=O(Hg=>{"use strict";Object.defineProperty(Hg,"__esModule",{value:!0});var cd=Q(),nk=ce(),C1={message:({params:t})=>(0,cd.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,cd._)`{failingKeyword: ${t.ifClause}}`},D1={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:C1,code(t){let{gen:e,parentSchema:r,it:o}=t;r.then===void 0&&r.else===void 0&&(0,nk.checkStrictMode)(o,'"if" without "then" and "else" is ignored');let n=rk(o,"then"),i=rk(o,"else");if(!n&&!i)return;let a=e.let("valid",!0),c=e.name("_valid");if(u(),t.reset(),n&&i){let d=e.let("ifClause");t.setParams({ifClause:d}),e.if(c,l("then",d),l("else",d))}else n?e.if(c,l("then")):e.if((0,cd.not)(c),l("else"));t.pass(a,()=>t.error(!0));function u(){let d=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},c);t.mergeEvaluated(d)}function l(d,s){return()=>{let f=t.subschema({keyword:d},c);e.assign(a,c),t.mergeValidEvaluated(f,a),s?e.assign(s,(0,cd._)`${d}`):t.setParams({ifClause:d})}}}};function rk(t,e){let r=t.schema[e];return r!==void 0&&!(0,nk.alwaysValidSchema)(t,r)}Hg.default=D1});var ik=O(Wg=>{"use strict";Object.defineProperty(Wg,"__esModule",{value:!0});var U1=ce(),Z1={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,U1.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Wg.default=Z1});var ak=O(Bg=>{"use strict";Object.defineProperty(Bg,"__esModule",{value:!0});var A1=Tg(),M1=Dw(),q1=Og(),L1=Zw(),V1=Aw(),F1=Lw(),J1=Fw(),H1=Zg(),W1=Ww(),B1=Xw(),G1=Yw(),K1=Qw(),X1=ek(),Y1=tk(),Q1=ok(),e4=ik();function t4(t=!1){let e=[G1.default,K1.default,X1.default,Y1.default,Q1.default,e4.default,J1.default,H1.default,F1.default,W1.default,B1.default];return t?e.push(M1.default,L1.default):e.push(A1.default,q1.default),e.push(V1.default),e}Bg.default=t4});var sk=O(Gg=>{"use strict";Object.defineProperty(Gg,"__esModule",{value:!0});var Oe=Q(),r4={message:({schemaCode:t})=>(0,Oe.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Oe._)`{format: ${t}}`},n4={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:r4,code(t,e){let{gen:r,data:o,$data:n,schema:i,schemaCode:a,it:c}=t,{opts:u,errSchemaPath:l,schemaEnv:d,self:s}=c;if(!u.validateFormats)return;n?f():p();function f(){let m=r.scopeValue("formats",{ref:s.formats,code:u.code.formats}),h=r.const("fDef",(0,Oe._)`${m}[${a}]`),v=r.let("fType"),y=r.let("format");r.if((0,Oe._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(v,(0,Oe._)`${h}.type || "string"`).assign(y,(0,Oe._)`${h}.validate`),()=>r.assign(v,(0,Oe._)`"string"`).assign(y,h)),t.fail$data((0,Oe.or)(w(),k()));function w(){return u.strictSchema===!1?Oe.nil:(0,Oe._)`${a} && !${y}`}function k(){let x=d.$async?(0,Oe._)`(${h}.async ? await ${y}(${o}) : ${y}(${o}))`:(0,Oe._)`${y}(${o})`,b=(0,Oe._)`(typeof ${y} == "function" ? ${x} : ${y}.test(${o}))`;return(0,Oe._)`${y} && ${y} !== true && ${v} === ${e} && !${b}`}}function p(){let m=s.formats[i];if(!m){w();return}if(m===!0)return;let[h,v,y]=k(m);h===e&&t.pass(x());function w(){if(u.strictSchema===!1){s.logger.warn(b());return}throw new Error(b());function b(){return`unknown format "${i}" ignored in schema at path "${l}"`}}function k(b){let L=b instanceof RegExp?(0,Oe.regexpCode)(b):u.code.formats?(0,Oe._)`${u.code.formats}${(0,Oe.getProperty)(i)}`:void 0,H=r.scopeValue("formats",{key:i,ref:b,code:L});return typeof b=="object"&&!(b instanceof RegExp)?[b.type||"string",b.validate,(0,Oe._)`${H}.validate`]:["string",b,H]}function x(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!d.$async)throw new Error("async format in sync schema");return(0,Oe._)`await ${y}(${o})`}return typeof v=="function"?(0,Oe._)`${y}(${o})`:(0,Oe._)`${y}.test(${o})`}}}};Gg.default=n4});var ck=O(Kg=>{"use strict";Object.defineProperty(Kg,"__esModule",{value:!0});var o4=sk(),i4=[o4.default];Kg.default=i4});var uk=O(Vo=>{"use strict";Object.defineProperty(Vo,"__esModule",{value:!0});Vo.contentVocabulary=Vo.metadataVocabulary=void 0;Vo.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Vo.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var dk=O(Xg=>{"use strict";Object.defineProperty(Xg,"__esModule",{value:!0});var a4=_w(),s4=jw(),c4=ak(),u4=ck(),lk=uk(),l4=[a4.default,s4.default,(0,c4.default)(),u4.default,lk.metadataVocabulary,lk.contentVocabulary];Xg.default=l4});var pk=O(ud=>{"use strict";Object.defineProperty(ud,"__esModule",{value:!0});ud.DiscrError=void 0;var fk;(function(t){t.Tag="tag",t.Mapping="mapping"})(fk||(ud.DiscrError=fk={}))});var hk=O(Qg=>{"use strict";Object.defineProperty(Qg,"__esModule",{value:!0});var Fo=Q(),Yg=pk(),mk=Jl(),d4=is(),f4=ce(),p4={message:({params:{discrError:t,tagName:e}})=>t===Yg.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Fo._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},m4={keyword:"discriminator",type:"object",schemaType:"object",error:p4,code(t){let{gen:e,data:r,schema:o,parentSchema:n,it:i}=t,{oneOf:a}=n;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let c=o.propertyName;if(typeof c!="string")throw new Error("discriminator: requires propertyName");if(o.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let u=e.let("valid",!1),l=e.const("tag",(0,Fo._)`${r}${(0,Fo.getProperty)(c)}`);e.if((0,Fo._)`typeof ${l} == "string"`,()=>d(),()=>t.error(!1,{discrError:Yg.DiscrError.Tag,tag:l,tagName:c})),t.ok(u);function d(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,Fo._)`${l} === ${m}`),e.assign(u,s(p[m]));e.else(),t.error(!1,{discrError:Yg.DiscrError.Mapping,tag:l,tagName:c}),e.endIf()}function s(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,Fo.Name),m}function f(){var p;let m={},h=y(n),v=!0;for(let x=0;x{h4.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var tv=O((ze,ev)=>{"use strict";Object.defineProperty(ze,"__esModule",{value:!0});ze.MissingRefError=ze.ValidationError=ze.CodeGen=ze.Name=ze.nil=ze.stringify=ze.str=ze._=ze.KeywordCxt=ze.Ajv=void 0;var g4=fw(),v4=dk(),_4=hk(),vk=gk(),y4=["/properties"],ld="http://json-schema.org/draft-07/schema",Jo=class extends g4.default{_addVocabularies(){super._addVocabularies(),v4.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(_4.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(vk,y4):vk;this.addMetaSchema(e,ld,!1),this.refs["http://json-schema.org/schema"]=ld}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ld)?ld:void 0)}};ze.Ajv=Jo;ev.exports=ze=Jo;ev.exports.Ajv=Jo;Object.defineProperty(ze,"__esModule",{value:!0});ze.default=Jo;var $4=os();Object.defineProperty(ze,"KeywordCxt",{enumerable:!0,get:function(){return $4.KeywordCxt}});var Ho=Q();Object.defineProperty(ze,"_",{enumerable:!0,get:function(){return Ho._}});Object.defineProperty(ze,"str",{enumerable:!0,get:function(){return Ho.str}});Object.defineProperty(ze,"stringify",{enumerable:!0,get:function(){return Ho.stringify}});Object.defineProperty(ze,"nil",{enumerable:!0,get:function(){return Ho.nil}});Object.defineProperty(ze,"Name",{enumerable:!0,get:function(){return Ho.Name}});Object.defineProperty(ze,"CodeGen",{enumerable:!0,get:function(){return Ho.CodeGen}});var b4=Vl();Object.defineProperty(ze,"ValidationError",{enumerable:!0,get:function(){return b4.default}});var x4=is();Object.defineProperty(ze,"MissingRefError",{enumerable:!0,get:function(){return x4.default}})});var Sk=O(rr=>{"use strict";Object.defineProperty(rr,"__esModule",{value:!0});rr.formatNames=rr.fastFormats=rr.fullFormats=void 0;function tr(t,e){return{validate:t,compare:e}}rr.fullFormats={date:tr(bk,iv),time:tr(nv(!0),av),"date-time":tr(_k(!0),wk),"iso-time":tr(nv(),xk),"iso-date-time":tr(_k(),kk),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:P4,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:C4,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:E4,int32:{type:"number",validate:j4},int64:{type:"number",validate:R4},float:{type:"number",validate:$k},double:{type:"number",validate:$k},password:!0,binary:!0};rr.fastFormats={...rr.fullFormats,date:tr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,iv),time:tr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,av),"date-time":tr(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,wk),"iso-time":tr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,xk),"iso-date-time":tr(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,kk),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};rr.formatNames=Object.keys(rr.fullFormats);function w4(t){return t%4===0&&(t%100!==0||t%400===0)}var k4=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,S4=[0,31,28,31,30,31,30,31,31,30,31,30,31];function bk(t){let e=k4.exec(t);if(!e)return!1;let r=+e[1],o=+e[2],n=+e[3];return o>=1&&o<=12&&n>=1&&n<=(o===2&&w4(r)?29:S4[o])}function iv(t,e){if(t&&e)return t>e?1:t23||d>59||t&&!c)return!1;if(n<=23&&i<=59&&a<60)return!0;let s=i-d*u,f=n-l*u-(s<0?1:0);return(f===23||f===-1)&&(s===59||s===-1)&&a<61}}function av(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),o=new Date("2020-01-01T"+e).valueOf();if(r&&o)return r-o}function xk(t,e){if(!(t&&e))return;let r=rv.exec(t),o=rv.exec(e);if(r&&o)return t=r[1]+r[2]+r[3],e=o[1]+o[2]+o[3],t>e?1:t=T4}function R4(t){return Number.isInteger(t)}function $k(){return!0}var N4=/[^\\]\\Z/;function C4(t){if(N4.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var zk=O(Wo=>{"use strict";Object.defineProperty(Wo,"__esModule",{value:!0});Wo.formatLimitDefinition=void 0;var D4=tv(),Vt=Q(),Qr=Vt.operators,dd={formatMaximum:{okStr:"<=",ok:Qr.LTE,fail:Qr.GT},formatMinimum:{okStr:">=",ok:Qr.GTE,fail:Qr.LT},formatExclusiveMaximum:{okStr:"<",ok:Qr.LT,fail:Qr.GTE},formatExclusiveMinimum:{okStr:">",ok:Qr.GT,fail:Qr.LTE}},U4={message:({keyword:t,schemaCode:e})=>(0,Vt.str)`should be ${dd[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Vt._)`{comparison: ${dd[t].okStr}, limit: ${e}}`};Wo.formatLimitDefinition={keyword:Object.keys(dd),type:"string",schemaType:"string",$data:!0,error:U4,code(t){let{gen:e,data:r,schemaCode:o,keyword:n,it:i}=t,{opts:a,self:c}=i;if(!a.validateFormats)return;let u=new D4.KeywordCxt(i,c.RULES.all.format.definition,"format");u.$data?l():d();function l(){let f=e.scopeValue("formats",{ref:c.formats,code:a.code.formats}),p=e.const("fmt",(0,Vt._)`${f}[${u.schemaCode}]`);t.fail$data((0,Vt.or)((0,Vt._)`typeof ${p} != "object"`,(0,Vt._)`${p} instanceof RegExp`,(0,Vt._)`typeof ${p}.compare != "function"`,s(p)))}function d(){let f=u.schema,p=c.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${n}": format "${f}" does not define "compare" function`);let m=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?(0,Vt._)`${a.code.formats}${(0,Vt.getProperty)(f)}`:void 0});t.fail$data(s(m))}function s(f){return(0,Vt._)`${f}.compare(${r}, ${o}) ${dd[n].fail} 0`}},dependencies:["format"]};var Z4=t=>(t.addKeyword(Wo.formatLimitDefinition),t);Wo.default=Z4});var Tk=O((ys,Ek)=>{"use strict";Object.defineProperty(ys,"__esModule",{value:!0});var Bo=Sk(),A4=zk(),sv=Q(),Ik=new sv.Name("fullFormats"),M4=new sv.Name("fastFormats"),cv=(t,e={keywords:!0})=>{if(Array.isArray(e))return Pk(t,e,Bo.fullFormats,Ik),t;let[r,o]=e.mode==="fast"?[Bo.fastFormats,M4]:[Bo.fullFormats,Ik],n=e.formats||Bo.formatNames;return Pk(t,n,r,o),e.keywords&&(0,A4.default)(t),t};cv.get=(t,e="full")=>{let o=(e==="fast"?Bo.fastFormats:Bo.fullFormats)[t];if(!o)throw new Error(`Unknown format "${t}"`);return o};function Pk(t,e,r,o){var n,i;(n=(i=t.opts.code).formats)!==null&&n!==void 0||(i.formats=(0,sv._)`require("ajv-formats/dist/formats").${o}`);for(let a of e)t.addFormat(a,r[a])}Ek.exports=ys=cv;Object.defineProperty(ys,"__esModule",{value:!0});ys.default=cv});var tS=O((B9,zd)=>{"use strict";zd.exports=$C;zd.exports.format=Qk;zd.exports.parse=eS;var vC=/\B(?=(\d{3})+(?!\d))/g,_C=/(?:\.0*|(\.[^0]+)0+)$/,tn={b:1,kb:1024,mb:1<<20,gb:1<<30,tb:Math.pow(1024,4),pb:Math.pow(1024,5)},yC=/^((-|\+)?(\d+(?:\.\d+)?)) *(kb|mb|gb|tb|pb)$/i;function $C(t,e){return typeof t=="string"?eS(t):typeof t=="number"?Qk(t,e):null}function Qk(t,e){if(!Number.isFinite(t))return null;var r=Math.abs(t),o=e&&e.thousandsSeparator||"",n=e&&e.unitSeparator||"",i=e&&e.decimalPlaces!==void 0?e.decimalPlaces:2,a=!!(e&&e.fixedDecimals),c=e&&e.unit||"";(!c||!tn[c.toLowerCase()])&&(r>=tn.pb?c="PB":r>=tn.tb?c="TB":r>=tn.gb?c="GB":r>=tn.mb?c="MB":r>=tn.kb?c="KB":c="B");var u=t/tn[c.toLowerCase()],l=u.toFixed(i);return a||(l=l.replace(_C,"$1")),o&&(l=l.split(".").map(function(d,s){return s===0?d.replace(vC,o):d}).join(".")),l+n+c}function eS(t){if(typeof t=="number"&&!isNaN(t))return t;if(typeof t!="string")return null;var e=yC.exec(t),r,o="b";return e?(r=parseFloat(e[1]),o=e[4].toLowerCase()):(r=parseInt(t,10),o="b"),isNaN(r)?null:Math.floor(tn[o]*r)}});var aS=O(Ev=>{"use strict";var nS=/; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g,bC=/^[\u000b\u0020-\u007e\u0080-\u00ff]+$/,oS=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/,xC=/\\([\u000b\u0020-\u00ff])/g,wC=/([\\"])/g,iS=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;Ev.format=kC;Ev.parse=SC;function kC(t){if(!t||typeof t!="object")throw new TypeError("argument obj is required");var e=t.parameters,r=t.type;if(!r||!iS.test(r))throw new TypeError("invalid type");var o=r;if(e&&typeof e=="object")for(var n,i=Object.keys(e).sort(),a=0;a0&&!bC.test(e))throw new TypeError("invalid parameter value");return'"'+e.replace(wC,"\\$1")+'"'}function PC(t){this.parameters=Object.create(null),this.type=t}});var mS=O((eV,pS)=>{pS.exports=fS;fS.sync=OC;var lS=require("fs");function TC(t,e){var r=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var o=0;o{_S.exports=gS;gS.sync=jC;var hS=require("fs");function gS(t,e,r){hS.stat(t,function(o,n){r(o,o?!1:vS(n,e))})}function jC(t,e){return vS(hS.statSync(t),e)}function vS(t,e){return t.isFile()&&RC(t,e)}function RC(t,e){var r=t.mode,o=t.uid,n=t.gid,i=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),a=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),c=parseInt("100",8),u=parseInt("010",8),l=parseInt("001",8),d=c|u,s=r&l||r&u&&n===a||r&c&&o===i||r&d&&i===0;return s}});var bS=O((nV,$S)=>{var rV=require("fs"),Pd;process.platform==="win32"||global.TESTING_WINDOWS?Pd=mS():Pd=yS();$S.exports=Ov;Ov.sync=NC;function Ov(t,e,r){if(typeof e=="function"&&(r=e,e={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(o,n){Ov(t,e||{},function(i,a){i?n(i):o(a)})})}Pd(t,e||{},function(o,n){o&&(o.code==="EACCES"||e&&e.ignoreErrors)&&(o=null,n=!1),r(o,n)})}function NC(t,e){try{return Pd.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var PS=O((oV,IS)=>{var ni=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",xS=require("path"),CC=ni?";":":",wS=bS(),kS=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),SS=(t,e)=>{let r=e.colon||CC,o=t.match(/\//)||ni&&t.match(/\\/)?[""]:[...ni?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],n=ni?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=ni?n.split(r):[""];return ni&&t.indexOf(".")!==-1&&i[0]!==""&&i.unshift(""),{pathEnv:o,pathExt:i,pathExtExe:n}},zS=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:o,pathExt:n,pathExtExe:i}=SS(t,e),a=[],c=l=>new Promise((d,s)=>{if(l===o.length)return e.all&&a.length?d(a):s(kS(t));let f=o[l],p=/^".*"$/.test(f)?f.slice(1,-1):f,m=xS.join(p,t),h=!p&&/^\.[\\\/]/.test(t)?t.slice(0,2)+m:m;d(u(h,l,0))}),u=(l,d,s)=>new Promise((f,p)=>{if(s===n.length)return f(c(d+1));let m=n[s];wS(l+m,{pathExt:i},(h,v)=>{if(!h&&v)if(e.all)a.push(l+m);else return f(l+m);return f(u(l,d,s+1))})});return r?c(0).then(l=>r(null,l),r):c(0)},DC=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:o,pathExtExe:n}=SS(t,e),i=[];for(let a=0;a{"use strict";var ES=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(o=>o.toUpperCase()==="PATH")||"Path"};jv.exports=ES;jv.exports.default=ES});var NS=O((aV,RS)=>{"use strict";var OS=require("path"),UC=PS(),ZC=TS();function jS(t,e){let r=t.options.env||process.env,o=process.cwd(),n=t.options.cwd!=null,i=n&&process.chdir!==void 0&&!process.chdir.disabled;if(i)try{process.chdir(t.options.cwd)}catch{}let a;try{a=UC.sync(t.command,{path:r[ZC({env:r})],pathExt:e?OS.delimiter:void 0})}catch{}finally{i&&process.chdir(o)}return a&&(a=OS.resolve(n?t.options.cwd:"",a)),a}function AC(t){return jS(t)||jS(t,!0)}RS.exports=AC});var CS=O((sV,Nv)=>{"use strict";var Rv=/([()\][%!^"`<>&|;, *?])/g;function MC(t){return t=t.replace(Rv,"^$1"),t}function qC(t,e){return t=`${t}`,t=t.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),t=t.replace(/(?=(\\+?)?)\1$/,"$1$1"),t=`"${t}"`,t=t.replace(Rv,"^$1"),e&&(t=t.replace(Rv,"^$1")),t}Nv.exports.command=MC;Nv.exports.argument=qC});var US=O((cV,DS)=>{"use strict";DS.exports=/^#!(.*)/});var AS=O((uV,ZS)=>{"use strict";var LC=US();ZS.exports=(t="")=>{let e=t.match(LC);if(!e)return null;let[r,o]=e[0].replace(/#! ?/,"").split(" "),n=r.split("/").pop();return n==="env"?o:o?`${n} ${o}`:n}});var qS=O((lV,MS)=>{"use strict";var Cv=require("fs"),VC=AS();function FC(t){let r=Buffer.alloc(150),o;try{o=Cv.openSync(t,"r"),Cv.readSync(o,r,0,150,0),Cv.closeSync(o)}catch{}return VC(r.toString())}MS.exports=FC});var JS=O((dV,FS)=>{"use strict";var JC=require("path"),LS=NS(),VS=CS(),HC=qS(),WC=process.platform==="win32",BC=/\.(?:com|exe)$/i,GC=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function KC(t){t.file=LS(t);let e=t.file&&HC(t.file);return e?(t.args.unshift(t.file),t.command=e,LS(t)):t.file}function XC(t){if(!WC)return t;let e=KC(t),r=!BC.test(e);if(t.options.forceShell||r){let o=GC.test(e);t.command=JC.normalize(t.command),t.command=VS.command(t.command),t.args=t.args.map(i=>VS.argument(i,o));let n=[t.command].concat(t.args).join(" ");t.args=["/d","/s","/c",`"${n}"`],t.command=process.env.comspec||"cmd.exe",t.options.windowsVerbatimArguments=!0}return t}function YC(t,e,r){e&&!Array.isArray(e)&&(r=e,e=null),e=e?e.slice(0):[],r=Object.assign({},r);let o={command:t,args:e,options:r,file:void 0,original:{command:t,args:e}};return r.shell?o:XC(o)}FS.exports=YC});var BS=O((fV,WS)=>{"use strict";var Dv=process.platform==="win32";function Uv(t,e){return Object.assign(new Error(`${e} ${t.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${t.command}`,path:t.command,spawnargs:t.args})}function QC(t,e){if(!Dv)return;let r=t.emit;t.emit=function(o,n){if(o==="exit"){let i=HS(n,e);if(i)return r.call(t,"error",i)}return r.apply(t,arguments)}}function HS(t,e){return Dv&&t===1&&!e.file?Uv(e.original,"spawn"):null}function eD(t,e){return Dv&&t===1&&!e.file?Uv(e.original,"spawnSync"):null}WS.exports={hookChildProcess:QC,verifyENOENT:HS,verifyENOENTSync:eD,notFoundError:Uv}});var XS=O((pV,oi)=>{"use strict";var GS=require("child_process"),Zv=JS(),Av=BS();function KS(t,e,r){let o=Zv(t,e,r),n=GS.spawn(o.command,o.args,o.options);return Av.hookChildProcess(n,o),n}function tD(t,e,r){let o=Zv(t,e,r),n=GS.spawnSync(o.command,o.args,o.options);return n.error=n.error||Av.verifyENOENTSync(n.status,o),n}oi.exports=KS;oi.exports.spawn=KS;oi.exports.sync=tD;oi.exports._parse=Zv;oi.exports._enoent=Av});var yD={};Ot(yD,{CallToolRequestSchema:()=>qa,Client:()=>gd,ListRootsRequestSchema:()=>uh,ListToolsRequestSchema:()=>rh,PingRequestSchema:()=>Po,ProgressNotificationSchema:()=>Eo,SSEClientTransport:()=>Sd,SSEServerTransport:()=>Id,Server:()=>_d,StdioClientTransport:()=>Td,StdioServerTransport:()=>Od,StreamableHTTPClientTransport:()=>Md,StreamableHTTPServerTransport:()=>Zd,zodToJsonSchema:()=>El});module.exports=p0(yD);var oe;(function(t){t.assertEqual=n=>{};function e(n){}t.assertIs=e;function r(n){throw new Error}t.assertNever=r,t.arrayToEnum=n=>{let i={};for(let a of n)i[a]=a;return i},t.getValidEnumValues=n=>{let i=t.objectKeys(n).filter(c=>typeof n[n[c]]!="number"),a={};for(let c of i)a[c]=n[c];return t.objectValues(a)},t.objectValues=n=>t.objectKeys(n).map(function(i){return n[i]}),t.objectKeys=typeof Object.keys=="function"?n=>Object.keys(n):n=>{let i=[];for(let a in n)Object.prototype.hasOwnProperty.call(n,a)&&i.push(a);return i},t.find=(n,i)=>{for(let a of n)if(i(a))return a},t.isInteger=typeof Number.isInteger=="function"?n=>Number.isInteger(n):n=>typeof n=="number"&&Number.isFinite(n)&&Math.floor(n)===n;function o(n,i=" | "){return n.map(a=>typeof a=="string"?`'${a}'`:a).join(i)}t.joinValues=o,t.jsonStringifyReplacer=(n,i)=>typeof i=="bigint"?i.toString():i})(oe||(oe={}));var Yv;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Yv||(Yv={}));var C=oe.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),or=t=>{switch(typeof t){case"undefined":return C.undefined;case"string":return C.string;case"number":return Number.isNaN(t)?C.nan:C.number;case"boolean":return C.boolean;case"function":return C.function;case"bigint":return C.bigint;case"symbol":return C.symbol;case"object":return Array.isArray(t)?C.array:t===null?C.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?C.promise:typeof Map!="undefined"&&t instanceof Map?C.map:typeof Set!="undefined"&&t instanceof Set?C.set:typeof Date!="undefined"&&t instanceof Date?C.date:C.object;default:return C.unknown}};var z=oe.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);var mt=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=o=>{this.issues=[...this.issues,o]},this.addIssues=(o=[])=>{this.issues=[...this.issues,...o]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(i){return i.message},o={_errors:[]},n=i=>{for(let a of i.issues)if(a.code==="invalid_union")a.unionErrors.map(n);else if(a.code==="invalid_return_type")n(a.returnTypeError);else if(a.code==="invalid_arguments")n(a.argumentsError);else if(a.path.length===0)o._errors.push(r(a));else{let c=o,u=0;for(;ur.message){let r=Object.create(null),o=[];for(let n of this.issues)if(n.path.length>0){let i=n.path[0];r[i]=r[i]||[],r[i].push(e(n))}else o.push(e(n));return{formErrors:o,fieldErrors:r}}get formErrors(){return this.flatten()}};mt.create=t=>new mt(t);var m0=(t,e)=>{let r;switch(t.code){case z.invalid_type:t.received===C.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case z.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,oe.jsonStringifyReplacer)}`;break;case z.unrecognized_keys:r=`Unrecognized key(s) in object: ${oe.joinValues(t.keys,", ")}`;break;case z.invalid_union:r="Invalid input";break;case z.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${oe.joinValues(t.options)}`;break;case z.invalid_enum_value:r=`Invalid enum value. Expected ${oe.joinValues(t.options)}, received '${t.received}'`;break;case z.invalid_arguments:r="Invalid function arguments";break;case z.invalid_return_type:r="Invalid function return type";break;case z.invalid_date:r="Invalid date";break;case z.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:oe.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case z.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case z.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case z.custom:r="Invalid input";break;case z.invalid_intersection_types:r="Intersection results could not be merged";break;case z.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case z.not_finite:r="Number must be finite";break;default:r=e.defaultError,oe.assertNever(t)}return{message:r}},wr=m0;var h0=wr;function di(){return h0}var qs=t=>{let{data:e,path:r,errorMaps:o,issueData:n}=t,i=[...r,...n.path||[]],a={...n,path:i};if(n.message!==void 0)return{...n,path:i,message:n.message};let c="",u=o.filter(l=>!!l).slice().reverse();for(let l of u)c=l(a,{data:e,defaultError:c}).message;return{...n,path:i,message:c}};function N(t,e){let r=di(),o=qs({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===wr?void 0:wr].filter(n=>!!n)});t.common.issues.push(o)}var Ve=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let o=[];for(let n of r){if(n.status==="aborted")return V;n.status==="dirty"&&e.dirty(),o.push(n.value)}return{status:e.value,value:o}}static async mergeObjectAsync(e,r){let o=[];for(let n of r){let i=await n.key,a=await n.value;o.push({key:i,value:a})}return t.mergeObjectSync(e,o)}static mergeObjectSync(e,r){let o={};for(let n of r){let{key:i,value:a}=n;if(i.status==="aborted"||a.status==="aborted")return V;i.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof a.value!="undefined"||n.alwaysSet)&&(o[i.value]=a.value)}return{status:e.value,value:o}}},V=Object.freeze({status:"aborted"}),Dn=t=>({status:"dirty",value:t}),Ke=t=>({status:"valid",value:t}),Vd=t=>t.status==="aborted",Fd=t=>t.status==="dirty",on=t=>t.status==="valid",fi=t=>typeof Promise!="undefined"&&t instanceof Promise;var U;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(U||(U={}));var xt=class{constructor(e,r,o,n){this._cachedPath=[],this.parent=e,this.data=r,this._path=o,this._key=n}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Qv=(t,e)=>{if(on(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new mt(t.common.issues);return this._error=r,this._error}}};function G(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:o,description:n}=t;if(e&&(r||o))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:n}:{errorMap:(a,c)=>{var l,d;let{message:u}=t;return a.code==="invalid_enum_value"?{message:u!=null?u:c.defaultError}:typeof c.data=="undefined"?{message:(l=u!=null?u:o)!=null?l:c.defaultError}:a.code!=="invalid_type"?{message:c.defaultError}:{message:(d=u!=null?u:r)!=null?d:c.defaultError}},description:n}}var ee=class{get description(){return this._def.description}_getType(e){return or(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:or(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ve,ctx:{common:e.parent.common,data:e.data,parsedType:or(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(fi(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let o=this.safeParse(e,r);if(o.success)return o.data;throw o.error}safeParse(e,r){var i;let o={common:{issues:[],async:(i=r==null?void 0:r.async)!=null?i:!1,contextualErrorMap:r==null?void 0:r.errorMap},path:(r==null?void 0:r.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:or(e)},n=this._parseSync({data:e,path:o.path,parent:o});return Qv(o,n)}"~validate"(e){var o,n;let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:or(e)};if(!this["~standard"].async)try{let i=this._parseSync({data:e,path:[],parent:r});return on(i)?{value:i.value}:{issues:r.common.issues}}catch(i){(n=(o=i==null?void 0:i.message)==null?void 0:o.toLowerCase())!=null&&n.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(i=>on(i)?{value:i.value}:{issues:r.common.issues})}async parseAsync(e,r){let o=await this.safeParseAsync(e,r);if(o.success)return o.data;throw o.error}async safeParseAsync(e,r){let o={common:{issues:[],contextualErrorMap:r==null?void 0:r.errorMap,async:!0},path:(r==null?void 0:r.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:or(e)},n=this._parse({data:e,path:o.path,parent:o}),i=await(fi(n)?n:Promise.resolve(n));return Qv(o,i)}refine(e,r){let o=n=>typeof r=="string"||typeof r=="undefined"?{message:r}:typeof r=="function"?r(n):r;return this._refinement((n,i)=>{let a=e(n),c=()=>i.addIssue({code:z.custom,...o(n)});return typeof Promise!="undefined"&&a instanceof Promise?a.then(u=>u?!0:(c(),!1)):a?!0:(c(),!1)})}refinement(e,r){return this._refinement((o,n)=>e(o)?!0:(n.addIssue(typeof r=="function"?r(o,n):r),!1))}_refinement(e){return new Rt({schema:this,typeName:E.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return jt.create(this,this._def)}nullable(){return sr.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Sr.create(this)}promise(){return an.create(this,this._def)}or(e){return qn.create([this,e],this._def)}and(e){return Ln.create(this,e,this._def)}transform(e){return new Rt({...G(this._def),schema:this,typeName:E.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Wn({...G(this._def),innerType:this,defaultValue:r,typeName:E.ZodDefault})}brand(){return new Ls({typeName:E.ZodBranded,type:this,...G(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Bn({...G(this._def),innerType:this,catchValue:r,typeName:E.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Vs.create(this,e)}readonly(){return Gn.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},g0=/^c[^\s-]{8,}$/i,v0=/^[0-9a-z]+$/,_0=/^[0-9A-HJKMNP-TV-Z]{26}$/i,y0=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,$0=/^[a-z0-9_-]{21}$/i,b0=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,x0=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,w0=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,k0="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Jd,S0=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,z0=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,I0=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,P0=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,E0=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,T0=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,e_="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",O0=new RegExp(`^${e_}$`);function t_(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function j0(t){return new RegExp(`^${t_(t)}$`)}function R0(t){let e=`${e_}T${t_(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function N0(t,e){return!!((e==="v4"||!e)&&S0.test(t)||(e==="v6"||!e)&&I0.test(t))}function C0(t,e){if(!b0.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let o=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),n=JSON.parse(atob(o));return!(typeof n!="object"||n===null||"typ"in n&&(n==null?void 0:n.typ)!=="JWT"||!n.alg||e&&n.alg!==e)}catch{return!1}}function D0(t,e){return!!((e==="v4"||!e)&&z0.test(t)||(e==="v6"||!e)&&P0.test(t))}var Zn=class t extends ee{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==C.string){let i=this._getOrReturnCtx(e);return N(i,{code:z.invalid_type,expected:C.string,received:i.parsedType}),V}let o=new Ve,n;for(let i of this._def.checks)if(i.kind==="min")e.data.lengthi.value&&(n=this._getOrReturnCtx(e,n),N(n,{code:z.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),o.dirty());else if(i.kind==="length"){let a=e.data.length>i.value,c=e.data.lengthe.test(n),{validation:r,code:z.invalid_string,...U.errToObj(o)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...U.errToObj(e)})}url(e){return this._addCheck({kind:"url",...U.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...U.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...U.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...U.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...U.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...U.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...U.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...U.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...U.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...U.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...U.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...U.errToObj(e)})}datetime(e){var r,o;return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)=="undefined"?null:e==null?void 0:e.precision,offset:(r=e==null?void 0:e.offset)!=null?r:!1,local:(o=e==null?void 0:e.local)!=null?o:!1,...U.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)=="undefined"?null:e==null?void 0:e.precision,...U.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...U.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...U.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r==null?void 0:r.position,...U.errToObj(r==null?void 0:r.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...U.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...U.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...U.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...U.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...U.errToObj(r)})}nonempty(e){return this.min(1,U.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value{var e;return new Zn({checks:[],typeName:E.ZodString,coerce:(e=t==null?void 0:t.coerce)!=null?e:!1,...G(t)})};function U0(t,e){let r=(t.toString().split(".")[1]||"").length,o=(e.toString().split(".")[1]||"").length,n=r>o?r:o,i=Number.parseInt(t.toFixed(n).replace(".","")),a=Number.parseInt(e.toFixed(n).replace(".",""));return i%a/10**n}var pi=class t extends ee{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==C.number){let i=this._getOrReturnCtx(e);return N(i,{code:z.invalid_type,expected:C.number,received:i.parsedType}),V}let o,n=new Ve;for(let i of this._def.checks)i.kind==="int"?oe.isInteger(e.data)||(o=this._getOrReturnCtx(e,o),N(o,{code:z.invalid_type,expected:"integer",received:"float",message:i.message}),n.dirty()):i.kind==="min"?(i.inclusive?e.datai.value:e.data>=i.value)&&(o=this._getOrReturnCtx(e,o),N(o,{code:z.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),n.dirty()):i.kind==="multipleOf"?U0(e.data,i.value)!==0&&(o=this._getOrReturnCtx(e,o),N(o,{code:z.not_multiple_of,multipleOf:i.value,message:i.message}),n.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(o=this._getOrReturnCtx(e,o),N(o,{code:z.not_finite,message:i.message}),n.dirty()):oe.assertNever(i);return{status:n.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,U.toString(r))}gt(e,r){return this.setLimit("min",e,!1,U.toString(r))}lte(e,r){return this.setLimit("max",e,!0,U.toString(r))}lt(e,r){return this.setLimit("max",e,!1,U.toString(r))}setLimit(e,r,o,n){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:o,message:U.toString(n)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:U.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:U.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:U.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:U.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:U.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:U.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:U.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:U.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:U.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuee.kind==="int"||e.kind==="multipleOf"&&oe.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let o of this._def.checks){if(o.kind==="finite"||o.kind==="int"||o.kind==="multipleOf")return!0;o.kind==="min"?(r===null||o.value>r)&&(r=o.value):o.kind==="max"&&(e===null||o.valuenew pi({checks:[],typeName:E.ZodNumber,coerce:(t==null?void 0:t.coerce)||!1,...G(t)});var mi=class t extends ee{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==C.bigint)return this._getInvalidInput(e);let o,n=new Ve;for(let i of this._def.checks)i.kind==="min"?(i.inclusive?e.datai.value:e.data>=i.value)&&(o=this._getOrReturnCtx(e,o),N(o,{code:z.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),n.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(o=this._getOrReturnCtx(e,o),N(o,{code:z.not_multiple_of,multipleOf:i.value,message:i.message}),n.dirty()):oe.assertNever(i);return{status:n.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return N(r,{code:z.invalid_type,expected:C.bigint,received:r.parsedType}),V}gte(e,r){return this.setLimit("min",e,!0,U.toString(r))}gt(e,r){return this.setLimit("min",e,!1,U.toString(r))}lte(e,r){return this.setLimit("max",e,!0,U.toString(r))}lt(e,r){return this.setLimit("max",e,!1,U.toString(r))}setLimit(e,r,o,n){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:o,message:U.toString(n)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:U.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:U.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:U.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:U.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:U.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value{var e;return new mi({checks:[],typeName:E.ZodBigInt,coerce:(e=t==null?void 0:t.coerce)!=null?e:!1,...G(t)})};var hi=class extends ee{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==C.boolean){let o=this._getOrReturnCtx(e);return N(o,{code:z.invalid_type,expected:C.boolean,received:o.parsedType}),V}return Ke(e.data)}};hi.create=t=>new hi({typeName:E.ZodBoolean,coerce:(t==null?void 0:t.coerce)||!1,...G(t)});var gi=class t extends ee{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==C.date){let i=this._getOrReturnCtx(e);return N(i,{code:z.invalid_type,expected:C.date,received:i.parsedType}),V}if(Number.isNaN(e.data.getTime())){let i=this._getOrReturnCtx(e);return N(i,{code:z.invalid_date}),V}let o=new Ve,n;for(let i of this._def.checks)i.kind==="min"?e.data.getTime()i.value&&(n=this._getOrReturnCtx(e,n),N(n,{code:z.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),o.dirty()):oe.assertNever(i);return{status:o.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:U.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:U.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew gi({checks:[],coerce:(t==null?void 0:t.coerce)||!1,typeName:E.ZodDate,...G(t)});var vi=class extends ee{_parse(e){if(this._getType(e)!==C.symbol){let o=this._getOrReturnCtx(e);return N(o,{code:z.invalid_type,expected:C.symbol,received:o.parsedType}),V}return Ke(e.data)}};vi.create=t=>new vi({typeName:E.ZodSymbol,...G(t)});var An=class extends ee{_parse(e){if(this._getType(e)!==C.undefined){let o=this._getOrReturnCtx(e);return N(o,{code:z.invalid_type,expected:C.undefined,received:o.parsedType}),V}return Ke(e.data)}};An.create=t=>new An({typeName:E.ZodUndefined,...G(t)});var Mn=class extends ee{_parse(e){if(this._getType(e)!==C.null){let o=this._getOrReturnCtx(e);return N(o,{code:z.invalid_type,expected:C.null,received:o.parsedType}),V}return Ke(e.data)}};Mn.create=t=>new Mn({typeName:E.ZodNull,...G(t)});var _i=class extends ee{constructor(){super(...arguments),this._any=!0}_parse(e){return Ke(e.data)}};_i.create=t=>new _i({typeName:E.ZodAny,...G(t)});var kr=class extends ee{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ke(e.data)}};kr.create=t=>new kr({typeName:E.ZodUnknown,...G(t)});var Ht=class extends ee{_parse(e){let r=this._getOrReturnCtx(e);return N(r,{code:z.invalid_type,expected:C.never,received:r.parsedType}),V}};Ht.create=t=>new Ht({typeName:E.ZodNever,...G(t)});var yi=class extends ee{_parse(e){if(this._getType(e)!==C.undefined){let o=this._getOrReturnCtx(e);return N(o,{code:z.invalid_type,expected:C.void,received:o.parsedType}),V}return Ke(e.data)}};yi.create=t=>new yi({typeName:E.ZodVoid,...G(t)});var Sr=class t extends ee{_parse(e){let{ctx:r,status:o}=this._processInputParams(e),n=this._def;if(r.parsedType!==C.array)return N(r,{code:z.invalid_type,expected:C.array,received:r.parsedType}),V;if(n.exactLength!==null){let a=r.data.length>n.exactLength.value,c=r.data.lengthn.maxLength.value&&(N(r,{code:z.too_big,maximum:n.maxLength.value,type:"array",inclusive:!0,exact:!1,message:n.maxLength.message}),o.dirty()),r.common.async)return Promise.all([...r.data].map((a,c)=>n.type._parseAsync(new xt(r,a,r.path,c)))).then(a=>Ve.mergeArray(o,a));let i=[...r.data].map((a,c)=>n.type._parseSync(new xt(r,a,r.path,c)));return Ve.mergeArray(o,i)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:U.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:U.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:U.toString(r)}})}nonempty(e){return this.min(1,e)}};Sr.create=(t,e)=>new Sr({type:t,minLength:null,maxLength:null,exactLength:null,typeName:E.ZodArray,...G(e)});function Un(t){if(t instanceof ht){let e={};for(let r in t.shape){let o=t.shape[r];e[r]=jt.create(Un(o))}return new ht({...t._def,shape:()=>e})}else return t instanceof Sr?new Sr({...t._def,type:Un(t.element)}):t instanceof jt?jt.create(Un(t.unwrap())):t instanceof sr?sr.create(Un(t.unwrap())):t instanceof ar?ar.create(t.items.map(e=>Un(e))):t}var ht=class t extends ee{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=oe.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==C.object){let l=this._getOrReturnCtx(e);return N(l,{code:z.invalid_type,expected:C.object,received:l.parsedType}),V}let{status:o,ctx:n}=this._processInputParams(e),{shape:i,keys:a}=this._getCached(),c=[];if(!(this._def.catchall instanceof Ht&&this._def.unknownKeys==="strip"))for(let l in n.data)a.includes(l)||c.push(l);let u=[];for(let l of a){let d=i[l],s=n.data[l];u.push({key:{status:"valid",value:l},value:d._parse(new xt(n,s,n.path,l)),alwaysSet:l in n.data})}if(this._def.catchall instanceof Ht){let l=this._def.unknownKeys;if(l==="passthrough")for(let d of c)u.push({key:{status:"valid",value:d},value:{status:"valid",value:n.data[d]}});else if(l==="strict")c.length>0&&(N(n,{code:z.unrecognized_keys,keys:c}),o.dirty());else if(l!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let l=this._def.catchall;for(let d of c){let s=n.data[d];u.push({key:{status:"valid",value:d},value:l._parse(new xt(n,s,n.path,d)),alwaysSet:d in n.data})}}return n.common.async?Promise.resolve().then(async()=>{let l=[];for(let d of u){let s=await d.key,f=await d.value;l.push({key:s,value:f,alwaysSet:d.alwaysSet})}return l}).then(l=>Ve.mergeObjectSync(o,l)):Ve.mergeObjectSync(o,u)}get shape(){return this._def.shape()}strict(e){return U.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,o)=>{var i,a,c,u;let n=(c=(a=(i=this._def).errorMap)==null?void 0:a.call(i,r,o).message)!=null?c:o.defaultError;return r.code==="unrecognized_keys"?{message:(u=U.errToObj(e).message)!=null?u:n}:{message:n}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:E.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let o of oe.objectKeys(e))e[o]&&this.shape[o]&&(r[o]=this.shape[o]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let o of oe.objectKeys(this.shape))e[o]||(r[o]=this.shape[o]);return new t({...this._def,shape:()=>r})}deepPartial(){return Un(this)}partial(e){let r={};for(let o of oe.objectKeys(this.shape)){let n=this.shape[o];e&&!e[o]?r[o]=n:r[o]=n.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let o of oe.objectKeys(this.shape))if(e&&!e[o])r[o]=this.shape[o];else{let i=this.shape[o];for(;i instanceof jt;)i=i._def.innerType;r[o]=i}return new t({...this._def,shape:()=>r})}keyof(){return r_(oe.objectKeys(this.shape))}};ht.create=(t,e)=>new ht({shape:()=>t,unknownKeys:"strip",catchall:Ht.create(),typeName:E.ZodObject,...G(e)});ht.strictCreate=(t,e)=>new ht({shape:()=>t,unknownKeys:"strict",catchall:Ht.create(),typeName:E.ZodObject,...G(e)});ht.lazycreate=(t,e)=>new ht({shape:t,unknownKeys:"strip",catchall:Ht.create(),typeName:E.ZodObject,...G(e)});var qn=class extends ee{_parse(e){let{ctx:r}=this._processInputParams(e),o=this._def.options;function n(i){for(let c of i)if(c.result.status==="valid")return c.result;for(let c of i)if(c.result.status==="dirty")return r.common.issues.push(...c.ctx.common.issues),c.result;let a=i.map(c=>new mt(c.ctx.common.issues));return N(r,{code:z.invalid_union,unionErrors:a}),V}if(r.common.async)return Promise.all(o.map(async i=>{let a={...r,common:{...r.common,issues:[]},parent:null};return{result:await i._parseAsync({data:r.data,path:r.path,parent:a}),ctx:a}})).then(n);{let i,a=[];for(let u of o){let l={...r,common:{...r.common,issues:[]},parent:null},d=u._parseSync({data:r.data,path:r.path,parent:l});if(d.status==="valid")return d;d.status==="dirty"&&!i&&(i={result:d,ctx:l}),l.common.issues.length&&a.push(l.common.issues)}if(i)return r.common.issues.push(...i.ctx.common.issues),i.result;let c=a.map(u=>new mt(u));return N(r,{code:z.invalid_union,unionErrors:c}),V}}get options(){return this._def.options}};qn.create=(t,e)=>new qn({options:t,typeName:E.ZodUnion,...G(e)});var ir=t=>t instanceof Vn?ir(t.schema):t instanceof Rt?ir(t.innerType()):t instanceof Fn?[t.value]:t instanceof Jn?t.options:t instanceof Hn?oe.objectValues(t.enum):t instanceof Wn?ir(t._def.innerType):t instanceof An?[void 0]:t instanceof Mn?[null]:t instanceof jt?[void 0,...ir(t.unwrap())]:t instanceof sr?[null,...ir(t.unwrap())]:t instanceof Ls||t instanceof Gn?ir(t.unwrap()):t instanceof Bn?ir(t._def.innerType):[],Hd=class t extends ee{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==C.object)return N(r,{code:z.invalid_type,expected:C.object,received:r.parsedType}),V;let o=this.discriminator,n=r.data[o],i=this.optionsMap.get(n);return i?r.common.async?i._parseAsync({data:r.data,path:r.path,parent:r}):i._parseSync({data:r.data,path:r.path,parent:r}):(N(r,{code:z.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[o]}),V)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,o){let n=new Map;for(let i of r){let a=ir(i.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let c of a){if(n.has(c))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(c)}`);n.set(c,i)}}return new t({typeName:E.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:n,...G(o)})}};function Wd(t,e){let r=or(t),o=or(e);if(t===e)return{valid:!0,data:t};if(r===C.object&&o===C.object){let n=oe.objectKeys(e),i=oe.objectKeys(t).filter(c=>n.indexOf(c)!==-1),a={...t,...e};for(let c of i){let u=Wd(t[c],e[c]);if(!u.valid)return{valid:!1};a[c]=u.data}return{valid:!0,data:a}}else if(r===C.array&&o===C.array){if(t.length!==e.length)return{valid:!1};let n=[];for(let i=0;i{if(Vd(i)||Vd(a))return V;let c=Wd(i.value,a.value);return c.valid?((Fd(i)||Fd(a))&&r.dirty(),{status:r.value,value:c.data}):(N(o,{code:z.invalid_intersection_types}),V)};return o.common.async?Promise.all([this._def.left._parseAsync({data:o.data,path:o.path,parent:o}),this._def.right._parseAsync({data:o.data,path:o.path,parent:o})]).then(([i,a])=>n(i,a)):n(this._def.left._parseSync({data:o.data,path:o.path,parent:o}),this._def.right._parseSync({data:o.data,path:o.path,parent:o}))}};Ln.create=(t,e,r)=>new Ln({left:t,right:e,typeName:E.ZodIntersection,...G(r)});var ar=class t extends ee{_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.parsedType!==C.array)return N(o,{code:z.invalid_type,expected:C.array,received:o.parsedType}),V;if(o.data.lengththis._def.items.length&&(N(o,{code:z.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let i=[...o.data].map((a,c)=>{let u=this._def.items[c]||this._def.rest;return u?u._parse(new xt(o,a,o.path,c)):null}).filter(a=>!!a);return o.common.async?Promise.all(i).then(a=>Ve.mergeArray(r,a)):Ve.mergeArray(r,i)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};ar.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ar({items:t,typeName:E.ZodTuple,rest:null,...G(e)})};var Bd=class t extends ee{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.parsedType!==C.object)return N(o,{code:z.invalid_type,expected:C.object,received:o.parsedType}),V;let n=[],i=this._def.keyType,a=this._def.valueType;for(let c in o.data)n.push({key:i._parse(new xt(o,c,o.path,c)),value:a._parse(new xt(o,o.data[c],o.path,c)),alwaysSet:c in o.data});return o.common.async?Ve.mergeObjectAsync(r,n):Ve.mergeObjectSync(r,n)}get element(){return this._def.valueType}static create(e,r,o){return r instanceof ee?new t({keyType:e,valueType:r,typeName:E.ZodRecord,...G(o)}):new t({keyType:Zn.create(),valueType:e,typeName:E.ZodRecord,...G(r)})}},$i=class extends ee{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.parsedType!==C.map)return N(o,{code:z.invalid_type,expected:C.map,received:o.parsedType}),V;let n=this._def.keyType,i=this._def.valueType,a=[...o.data.entries()].map(([c,u],l)=>({key:n._parse(new xt(o,c,o.path,[l,"key"])),value:i._parse(new xt(o,u,o.path,[l,"value"]))}));if(o.common.async){let c=new Map;return Promise.resolve().then(async()=>{for(let u of a){let l=await u.key,d=await u.value;if(l.status==="aborted"||d.status==="aborted")return V;(l.status==="dirty"||d.status==="dirty")&&r.dirty(),c.set(l.value,d.value)}return{status:r.value,value:c}})}else{let c=new Map;for(let u of a){let l=u.key,d=u.value;if(l.status==="aborted"||d.status==="aborted")return V;(l.status==="dirty"||d.status==="dirty")&&r.dirty(),c.set(l.value,d.value)}return{status:r.value,value:c}}}};$i.create=(t,e,r)=>new $i({valueType:e,keyType:t,typeName:E.ZodMap,...G(r)});var bi=class t extends ee{_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.parsedType!==C.set)return N(o,{code:z.invalid_type,expected:C.set,received:o.parsedType}),V;let n=this._def;n.minSize!==null&&o.data.sizen.maxSize.value&&(N(o,{code:z.too_big,maximum:n.maxSize.value,type:"set",inclusive:!0,exact:!1,message:n.maxSize.message}),r.dirty());let i=this._def.valueType;function a(u){let l=new Set;for(let d of u){if(d.status==="aborted")return V;d.status==="dirty"&&r.dirty(),l.add(d.value)}return{status:r.value,value:l}}let c=[...o.data.values()].map((u,l)=>i._parse(new xt(o,u,o.path,l)));return o.common.async?Promise.all(c).then(u=>a(u)):a(c)}min(e,r){return new t({...this._def,minSize:{value:e,message:U.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:U.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};bi.create=(t,e)=>new bi({valueType:t,minSize:null,maxSize:null,typeName:E.ZodSet,...G(e)});var Gd=class t extends ee{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==C.function)return N(r,{code:z.invalid_type,expected:C.function,received:r.parsedType}),V;function o(c,u){return qs({data:c,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,di(),wr].filter(l=>!!l),issueData:{code:z.invalid_arguments,argumentsError:u}})}function n(c,u){return qs({data:c,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,di(),wr].filter(l=>!!l),issueData:{code:z.invalid_return_type,returnTypeError:u}})}let i={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof an){let c=this;return Ke(async function(...u){let l=new mt([]),d=await c._def.args.parseAsync(u,i).catch(p=>{throw l.addIssue(o(u,p)),l}),s=await Reflect.apply(a,this,d);return await c._def.returns._def.type.parseAsync(s,i).catch(p=>{throw l.addIssue(n(s,p)),l})})}else{let c=this;return Ke(function(...u){let l=c._def.args.safeParse(u,i);if(!l.success)throw new mt([o(u,l.error)]);let d=Reflect.apply(a,this,l.data),s=c._def.returns.safeParse(d,i);if(!s.success)throw new mt([n(d,s.error)]);return s.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:ar.create(e).rest(kr.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,o){return new t({args:e||ar.create([]).rest(kr.create()),returns:r||kr.create(),typeName:E.ZodFunction,...G(o)})}},Vn=class extends ee{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Vn.create=(t,e)=>new Vn({getter:t,typeName:E.ZodLazy,...G(e)});var Fn=class extends ee{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return N(r,{received:r.data,code:z.invalid_literal,expected:this._def.value}),V}return{status:"valid",value:e.data}}get value(){return this._def.value}};Fn.create=(t,e)=>new Fn({value:t,typeName:E.ZodLiteral,...G(e)});function r_(t,e){return new Jn({values:t,typeName:E.ZodEnum,...G(e)})}var Jn=class t extends ee{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),o=this._def.values;return N(r,{expected:oe.joinValues(o),received:r.parsedType,code:z.invalid_type}),V}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),o=this._def.values;return N(r,{received:r.data,code:z.invalid_enum_value,options:o}),V}return Ke(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(o=>!e.includes(o)),{...this._def,...r})}};Jn.create=r_;var Hn=class extends ee{_parse(e){let r=oe.getValidEnumValues(this._def.values),o=this._getOrReturnCtx(e);if(o.parsedType!==C.string&&o.parsedType!==C.number){let n=oe.objectValues(r);return N(o,{expected:oe.joinValues(n),received:o.parsedType,code:z.invalid_type}),V}if(this._cache||(this._cache=new Set(oe.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let n=oe.objectValues(r);return N(o,{received:o.data,code:z.invalid_enum_value,options:n}),V}return Ke(e.data)}get enum(){return this._def.values}};Hn.create=(t,e)=>new Hn({values:t,typeName:E.ZodNativeEnum,...G(e)});var an=class extends ee{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==C.promise&&r.common.async===!1)return N(r,{code:z.invalid_type,expected:C.promise,received:r.parsedType}),V;let o=r.parsedType===C.promise?r.data:Promise.resolve(r.data);return Ke(o.then(n=>this._def.type.parseAsync(n,{path:r.path,errorMap:r.common.contextualErrorMap})))}};an.create=(t,e)=>new an({type:t,typeName:E.ZodPromise,...G(e)});var Rt=class extends ee{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===E.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:o}=this._processInputParams(e),n=this._def.effect||null,i={addIssue:a=>{N(o,a),a.fatal?r.abort():r.dirty()},get path(){return o.path}};if(i.addIssue=i.addIssue.bind(i),n.type==="preprocess"){let a=n.transform(o.data,i);if(o.common.async)return Promise.resolve(a).then(async c=>{if(r.value==="aborted")return V;let u=await this._def.schema._parseAsync({data:c,path:o.path,parent:o});return u.status==="aborted"?V:u.status==="dirty"?Dn(u.value):r.value==="dirty"?Dn(u.value):u});{if(r.value==="aborted")return V;let c=this._def.schema._parseSync({data:a,path:o.path,parent:o});return c.status==="aborted"?V:c.status==="dirty"?Dn(c.value):r.value==="dirty"?Dn(c.value):c}}if(n.type==="refinement"){let a=c=>{let u=n.refinement(c,i);if(o.common.async)return Promise.resolve(u);if(u instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return c};if(o.common.async===!1){let c=this._def.schema._parseSync({data:o.data,path:o.path,parent:o});return c.status==="aborted"?V:(c.status==="dirty"&&r.dirty(),a(c.value),{status:r.value,value:c.value})}else return this._def.schema._parseAsync({data:o.data,path:o.path,parent:o}).then(c=>c.status==="aborted"?V:(c.status==="dirty"&&r.dirty(),a(c.value).then(()=>({status:r.value,value:c.value}))))}if(n.type==="transform")if(o.common.async===!1){let a=this._def.schema._parseSync({data:o.data,path:o.path,parent:o});if(!on(a))return V;let c=n.transform(a.value,i);if(c instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:c}}else return this._def.schema._parseAsync({data:o.data,path:o.path,parent:o}).then(a=>on(a)?Promise.resolve(n.transform(a.value,i)).then(c=>({status:r.value,value:c})):V);oe.assertNever(n)}};Rt.create=(t,e,r)=>new Rt({schema:t,typeName:E.ZodEffects,effect:e,...G(r)});Rt.createWithPreprocess=(t,e,r)=>new Rt({schema:e,effect:{type:"preprocess",transform:t},typeName:E.ZodEffects,...G(r)});var jt=class extends ee{_parse(e){return this._getType(e)===C.undefined?Ke(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};jt.create=(t,e)=>new jt({innerType:t,typeName:E.ZodOptional,...G(e)});var sr=class extends ee{_parse(e){return this._getType(e)===C.null?Ke(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};sr.create=(t,e)=>new sr({innerType:t,typeName:E.ZodNullable,...G(e)});var Wn=class extends ee{_parse(e){let{ctx:r}=this._processInputParams(e),o=r.data;return r.parsedType===C.undefined&&(o=this._def.defaultValue()),this._def.innerType._parse({data:o,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Wn.create=(t,e)=>new Wn({innerType:t,typeName:E.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...G(e)});var Bn=class extends ee{_parse(e){let{ctx:r}=this._processInputParams(e),o={...r,common:{...r.common,issues:[]}},n=this._def.innerType._parse({data:o.data,path:o.path,parent:{...o}});return fi(n)?n.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new mt(o.common.issues)},input:o.data})})):{status:"valid",value:n.status==="valid"?n.value:this._def.catchValue({get error(){return new mt(o.common.issues)},input:o.data})}}removeCatch(){return this._def.innerType}};Bn.create=(t,e)=>new Bn({innerType:t,typeName:E.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...G(e)});var xi=class extends ee{_parse(e){if(this._getType(e)!==C.nan){let o=this._getOrReturnCtx(e);return N(o,{code:z.invalid_type,expected:C.nan,received:o.parsedType}),V}return{status:"valid",value:e.data}}};xi.create=t=>new xi({typeName:E.ZodNaN,...G(t)});var ZD=Symbol("zod_brand"),Ls=class extends ee{_parse(e){let{ctx:r}=this._processInputParams(e),o=r.data;return this._def.type._parse({data:o,path:r.path,parent:r})}unwrap(){return this._def.type}},Vs=class t extends ee{_parse(e){let{status:r,ctx:o}=this._processInputParams(e);if(o.common.async)return(async()=>{let i=await this._def.in._parseAsync({data:o.data,path:o.path,parent:o});return i.status==="aborted"?V:i.status==="dirty"?(r.dirty(),Dn(i.value)):this._def.out._parseAsync({data:i.value,path:o.path,parent:o})})();{let n=this._def.in._parseSync({data:o.data,path:o.path,parent:o});return n.status==="aborted"?V:n.status==="dirty"?(r.dirty(),{status:"dirty",value:n.value}):this._def.out._parseSync({data:n.value,path:o.path,parent:o})}}static create(e,r){return new t({in:e,out:r,typeName:E.ZodPipeline})}},Gn=class extends ee{_parse(e){let r=this._def.innerType._parse(e),o=n=>(on(n)&&(n.value=Object.freeze(n.value)),n);return fi(r)?r.then(n=>o(n)):o(r)}unwrap(){return this._def.innerType}};Gn.create=(t,e)=>new Gn({innerType:t,typeName:E.ZodReadonly,...G(e)});var AD={object:ht.lazycreate},E;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(E||(E={}));var MD=Zn.create,qD=pi.create,LD=xi.create,VD=mi.create,FD=hi.create,JD=gi.create,HD=vi.create,WD=An.create,BD=Mn.create,GD=_i.create,KD=kr.create,XD=Ht.create,YD=yi.create,QD=Sr.create,Z0=ht.create,eU=ht.strictCreate,tU=qn.create,rU=Hd.create,nU=Ln.create,oU=ar.create,iU=Bd.create,aU=$i.create,sU=bi.create,cU=Gd.create,uU=Vn.create,lU=Fn.create,dU=Jn.create,fU=Hn.create,pU=an.create,mU=Rt.create,hU=jt.create,gU=sr.create,vU=Rt.createWithPreprocess,_U=Vs.create;var ct={};Ot(ct,{$ZodAny:()=>Uc,$ZodArray:()=>qc,$ZodAsyncError:()=>Nt,$ZodBase64:()=>Ic,$ZodBase64URL:()=>Pc,$ZodBigInt:()=>io,$ZodBigIntFormat:()=>Rc,$ZodBoolean:()=>fn,$ZodCIDRv4:()=>Sc,$ZodCIDRv6:()=>zc,$ZodCUID:()=>vc,$ZodCUID2:()=>_c,$ZodCatch:()=>ou,$ZodCheck:()=>ge,$ZodCheckBigIntFormat:()=>Zf,$ZodCheckEndsWith:()=>Kf,$ZodCheckGreaterThan:()=>ic,$ZodCheckIncludes:()=>Bf,$ZodCheckLengthEquals:()=>Ff,$ZodCheckLessThan:()=>oc,$ZodCheckLowerCase:()=>Hf,$ZodCheckMaxLength:()=>Lf,$ZodCheckMaxSize:()=>Af,$ZodCheckMimeType:()=>Yf,$ZodCheckMinLength:()=>Vf,$ZodCheckMinSize:()=>Mf,$ZodCheckMultipleOf:()=>Df,$ZodCheckNumberFormat:()=>Uf,$ZodCheckOverwrite:()=>Qf,$ZodCheckProperty:()=>Xf,$ZodCheckRegex:()=>Jf,$ZodCheckSizeEquals:()=>qf,$ZodCheckStartsWith:()=>Gf,$ZodCheckStringFormat:()=>no,$ZodCheckUpperCase:()=>Wf,$ZodCodec:()=>so,$ZodCustom:()=>fu,$ZodCustomStringFormat:()=>Oc,$ZodDate:()=>qi,$ZodDefault:()=>eu,$ZodDiscriminatedUnion:()=>Vc,$ZodE164:()=>Ec,$ZodEmail:()=>pc,$ZodEmoji:()=>hc,$ZodEncodeError:()=>zr,$ZodEnum:()=>Bc,$ZodError:()=>Oi,$ZodExactOptional:()=>Yc,$ZodFile:()=>Kc,$ZodFunction:()=>uu,$ZodGUID:()=>dc,$ZodIPv4:()=>xc,$ZodIPv6:()=>wc,$ZodISODate:()=>Zi,$ZodISODateTime:()=>Ui,$ZodISODuration:()=>Mi,$ZodISOTime:()=>Ai,$ZodIntersection:()=>Fc,$ZodJWT:()=>Tc,$ZodKSUID:()=>bc,$ZodLazy:()=>du,$ZodLiteral:()=>Gc,$ZodMAC:()=>kc,$ZodMap:()=>Hc,$ZodNaN:()=>iu,$ZodNanoID:()=>gc,$ZodNever:()=>Ac,$ZodNonOptional:()=>ru,$ZodNull:()=>Dc,$ZodNullable:()=>Qc,$ZodNumber:()=>oo,$ZodNumberFormat:()=>jc,$ZodObject:()=>np,$ZodObjectJIT:()=>op,$ZodOptional:()=>Vi,$ZodPipe:()=>au,$ZodPrefault:()=>tu,$ZodPromise:()=>lu,$ZodReadonly:()=>su,$ZodRealError:()=>it,$ZodRecord:()=>Jc,$ZodRegistry:()=>gu,$ZodSet:()=>Wc,$ZodString:()=>ur,$ZodStringFormat:()=>fe,$ZodSuccess:()=>nu,$ZodSymbol:()=>Nc,$ZodTemplateLiteral:()=>cu,$ZodTransform:()=>Xc,$ZodTuple:()=>Li,$ZodType:()=>J,$ZodULID:()=>yc,$ZodURL:()=>mc,$ZodUUID:()=>fc,$ZodUndefined:()=>Cc,$ZodUnion:()=>ao,$ZodUnknown:()=>Zc,$ZodVoid:()=>Mc,$ZodXID:()=>$c,$ZodXor:()=>Lc,$brand:()=>Fs,$constructor:()=>_,$input:()=>ap,$output:()=>ip,Doc:()=>Di,JSONSchema:()=>Wp,JSONSchemaGenerator:()=>el,NEVER:()=>ki,TimePrecision:()=>sp,_any:()=>Ru,_array:()=>cp,_base64:()=>ca,_base64url:()=>ua,_bigint:()=>Iu,_boolean:()=>zu,_catch:()=>HI,_check:()=>qy,_cidrv4:()=>aa,_cidrv6:()=>sa,_coercedBigint:()=>_a,_coercedBoolean:()=>va,_coercedDate:()=>ya,_coercedNumber:()=>ga,_coercedString:()=>Ji,_cuid:()=>Qi,_cuid2:()=>ea,_custom:()=>Ju,_date:()=>Uu,_decode:()=>Gs,_decodeAsync:()=>Xs,_default:()=>VI,_discriminatedUnion:()=>OI,_e164:()=>la,_email:()=>Hi,_emoji:()=>Xi,_encode:()=>Bs,_encodeAsync:()=>Ks,_endsWith:()=>vo,_enum:()=>UI,_file:()=>Fu,_float32:()=>xu,_float64:()=>wu,_gt:()=>Bt,_gte:()=>Je,_guid:()=>uo,_includes:()=>ho,_int:()=>bu,_int32:()=>ku,_int64:()=>Pu,_intersection:()=>jI,_ipv4:()=>oa,_ipv6:()=>ia,_isoDate:()=>pa,_isoDateTime:()=>fa,_isoDuration:()=>ha,_isoTime:()=>ma,_jwt:()=>da,_ksuid:()=>na,_lazy:()=>KI,_length:()=>hn,_literal:()=>AI,_lowercase:()=>po,_lt:()=>Wt,_lte:()=>st,_mac:()=>yu,_map:()=>CI,_max:()=>st,_maxLength:()=>mn,_maxSize:()=>Nr,_mime:()=>_o,_min:()=>Je,_minLength:()=>lr,_minSize:()=>Gt,_multipleOf:()=>Rr,_nan:()=>Zu,_nanoid:()=>Yi,_nativeEnum:()=>ZI,_negative:()=>Mu,_never:()=>Cu,_nonnegative:()=>Lu,_nonoptional:()=>FI,_nonpositive:()=>qu,_normalize:()=>yo,_null:()=>ju,_nullable:()=>LI,_number:()=>$u,_optional:()=>qI,_overwrite:()=>Ct,_parse:()=>Qn,_parseAsync:()=>eo,_pipe:()=>WI,_positive:()=>Au,_promise:()=>XI,_property:()=>Vu,_readonly:()=>BI,_record:()=>NI,_refine:()=>Hu,_regex:()=>fo,_safeDecode:()=>Qs,_safeDecodeAsync:()=>tc,_safeEncode:()=>Ys,_safeEncodeAsync:()=>ec,_safeParse:()=>to,_safeParseAsync:()=>ro,_set:()=>DI,_size:()=>pn,_slugify:()=>$a,_startsWith:()=>go,_string:()=>_u,_stringFormat:()=>gn,_stringbool:()=>Ku,_success:()=>JI,_superRefine:()=>Wu,_symbol:()=>Tu,_templateLiteral:()=>GI,_toLowerCase:()=>bo,_toUpperCase:()=>xo,_transform:()=>MI,_trim:()=>$o,_tuple:()=>RI,_uint32:()=>Su,_uint64:()=>Eu,_ulid:()=>ta,_undefined:()=>Ou,_union:()=>EI,_unknown:()=>Nu,_uppercase:()=>mo,_url:()=>lo,_uuid:()=>Wi,_uuidv4:()=>Bi,_uuidv6:()=>Gi,_uuidv7:()=>Ki,_void:()=>Du,_xid:()=>ra,_xor:()=>TI,clone:()=>De,config:()=>Re,createStandardJSONSchemaMethod:()=>wo,createToJSONSchemaMethod:()=>up,decode:()=>h_,decodeAsync:()=>v_,describe:()=>Bu,encode:()=>m_,encodeAsync:()=>g_,extractDefs:()=>Dr,finalize:()=>Ur,flattenError:()=>ji,formatError:()=>Ri,globalConfig:()=>wi,globalRegistry:()=>Fe,initializeContext:()=>Cr,isValidBase64:()=>rp,isValidBase64URL:()=>A_,isValidJWT:()=>M_,locales:()=>jr,meta:()=>Gu,parse:()=>cn,parseAsync:()=>un,prettifyError:()=>sf,process:()=>pe,regexes:()=>at,registry:()=>vu,safeDecode:()=>y_,safeDecodeAsync:()=>b_,safeEncode:()=>__,safeEncodeAsync:()=>$_,safeParse:()=>Or,safeParseAsync:()=>ln,toDotPath:()=>p_,toJSONSchema:()=>ba,treeifyError:()=>af,util:()=>I,version:()=>ep});var ki=Object.freeze({status:"aborted"});function _(t,e,r){var c;function o(u,l){if(u._zod||Object.defineProperty(u,"_zod",{value:{def:l,constr:a,traits:new Set},enumerable:!1}),u._zod.traits.has(t))return;u._zod.traits.add(t),e(u,l);let d=a.prototype,s=Object.keys(d);for(let f=0;f{var l,d;return r!=null&&r.Parent&&u instanceof r.Parent?!0:(d=(l=u==null?void 0:u._zod)==null?void 0:l.traits)==null?void 0:d.has(t)}}),Object.defineProperty(a,"name",{value:t}),a}var Fs=Symbol("zod_brand"),Nt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},zr=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}},wi={};function Re(t){return t&&Object.assign(wi,t),wi}var I={};Ot(I,{BIGINT_FORMAT_RANGES:()=>of,Class:()=>Xd,NUMBER_FORMAT_RANGES:()=>nf,aborted:()=>Tr,allowsEval:()=>ef,assert:()=>J0,assertEqual:()=>q0,assertIs:()=>V0,assertNever:()=>F0,assertNotEqual:()=>L0,assignProp:()=>Pr,base64ToUint8Array:()=>l_,base64urlToUint8Array:()=>rz,cached:()=>Xn,captureStackTrace:()=>Hs,cleanEnum:()=>tz,cleanRegex:()=>Ii,clone:()=>De,cloneDef:()=>W0,createTransparentProxy:()=>Q0,defineLazy:()=>K,esc:()=>Js,escapeRegex:()=>wt,extend:()=>a_,finalizeIssue:()=>ot,floatSafeRemainder:()=>Yd,getElementAtPath:()=>B0,getEnumValues:()=>zi,getLengthableOrigin:()=>Ti,getParsedType:()=>Y0,getSizableOrigin:()=>Ei,hexToUint8Array:()=>oz,isObject:()=>sn,isPlainObject:()=>Er,issue:()=>Yn,joinValues:()=>$,jsonStringifyReplacer:()=>Kn,merge:()=>ez,mergeDefs:()=>cr,normalizeParams:()=>T,nullish:()=>Ir,numKeys:()=>X0,objectClone:()=>H0,omit:()=>i_,optionalKeys:()=>rf,parsedType:()=>P,partial:()=>c_,pick:()=>o_,prefixIssues:()=>gt,primitiveTypes:()=>tf,promiseAllObject:()=>G0,propertyKeyTypes:()=>Pi,randomString:()=>K0,required:()=>u_,safeExtend:()=>s_,shallowClone:()=>Ws,slugify:()=>Qd,stringifyPrimitive:()=>S,uint8ArrayToBase64:()=>d_,uint8ArrayToBase64url:()=>nz,uint8ArrayToHex:()=>iz,unwrapMessage:()=>Si});function q0(t){return t}function L0(t){return t}function V0(t){}function F0(t){throw new Error("Unexpected value in exhaustive check")}function J0(t){}function zi(t){let e=Object.values(t).filter(o=>typeof o=="number");return Object.entries(t).filter(([o,n])=>e.indexOf(+o)===-1).map(([o,n])=>n)}function $(t,e="|"){return t.map(r=>S(r)).join(e)}function Kn(t,e){return typeof e=="bigint"?e.toString():e}function Xn(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Ir(t){return t==null}function Ii(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Yd(t,e){let r=(t.toString().split(".")[1]||"").length,o=e.toString(),n=(o.split(".")[1]||"").length;if(n===0&&/\d?e-\d?/.test(o)){let u=o.match(/\d?e-(\d?)/);u!=null&&u[1]&&(n=Number.parseInt(u[1]))}let i=r>n?r:n,a=Number.parseInt(t.toFixed(i).replace(".","")),c=Number.parseInt(e.toFixed(i).replace(".",""));return a%c/10**i}var n_=Symbol("evaluating");function K(t,e,r){let o;Object.defineProperty(t,e,{get(){if(o!==n_)return o===void 0&&(o=n_,o=r()),o},set(n){Object.defineProperty(t,e,{value:n})},configurable:!0})}function H0(t){return Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))}function Pr(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function cr(...t){let e={};for(let r of t){let o=Object.getOwnPropertyDescriptors(r);Object.assign(e,o)}return Object.defineProperties({},e)}function W0(t){return cr(t._zod.def)}function B0(t,e){return e?e.reduce((r,o)=>r==null?void 0:r[o],t):t}function G0(t){let e=Object.keys(t),r=e.map(o=>t[o]);return Promise.all(r).then(o=>{let n={};for(let i=0;i{};function sn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var ef=Xn(()=>{var t;if(typeof navigator!="undefined"&&((t=navigator==null?void 0:navigator.userAgent)!=null&&t.includes("Cloudflare")))return!1;try{let e=Function;return new e(""),!0}catch{return!1}});function Er(t){if(sn(t)===!1)return!1;let e=t.constructor;if(e===void 0||typeof e!="function")return!0;let r=e.prototype;return!(sn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Ws(t){return Er(t)?{...t}:Array.isArray(t)?[...t]:t}function X0(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Y0=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map!="undefined"&&t instanceof Map?"map":typeof Set!="undefined"&&t instanceof Set?"set":typeof Date!="undefined"&&t instanceof Date?"date":typeof File!="undefined"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},Pi=new Set(["string","number","symbol"]),tf=new Set(["string","number","bigint","boolean","symbol","undefined"]);function wt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function De(t,e,r){let o=new t._zod.constr(e!=null?e:t._zod.def);return(!e||r!=null&&r.parent)&&(o._zod.parent=t),o}function T(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if((e==null?void 0:e.message)!==void 0){if((e==null?void 0:e.error)!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function Q0(t){let e;return new Proxy({},{get(r,o,n){return e!=null||(e=t()),Reflect.get(e,o,n)},set(r,o,n,i){return e!=null||(e=t()),Reflect.set(e,o,n,i)},has(r,o){return e!=null||(e=t()),Reflect.has(e,o)},deleteProperty(r,o){return e!=null||(e=t()),Reflect.deleteProperty(e,o)},ownKeys(r){return e!=null||(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,o){return e!=null||(e=t()),Reflect.getOwnPropertyDescriptor(e,o)},defineProperty(r,o,n){return e!=null||(e=t()),Reflect.defineProperty(e,o,n)}})}function S(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function rf(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var nf={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},of={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function o_(t,e){let r=t._zod.def,o=r.checks;if(o&&o.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");let i=cr(t._zod.def,{get shape(){let a={};for(let c in e){if(!(c in r.shape))throw new Error(`Unrecognized key: "${c}"`);e[c]&&(a[c]=r.shape[c])}return Pr(this,"shape",a),a},checks:[]});return De(t,i)}function i_(t,e){let r=t._zod.def,o=r.checks;if(o&&o.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");let i=cr(t._zod.def,{get shape(){let a={...t._zod.def.shape};for(let c in e){if(!(c in r.shape))throw new Error(`Unrecognized key: "${c}"`);e[c]&&delete a[c]}return Pr(this,"shape",a),a},checks:[]});return De(t,i)}function a_(t,e){if(!Er(e))throw new Error("Invalid input to extend: expected a plain object");let r=t._zod.def.checks;if(r&&r.length>0){let i=t._zod.def.shape;for(let a in e)if(Object.getOwnPropertyDescriptor(i,a)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let n=cr(t._zod.def,{get shape(){let i={...t._zod.def.shape,...e};return Pr(this,"shape",i),i}});return De(t,n)}function s_(t,e){if(!Er(e))throw new Error("Invalid input to safeExtend: expected a plain object");let r=cr(t._zod.def,{get shape(){let o={...t._zod.def.shape,...e};return Pr(this,"shape",o),o}});return De(t,r)}function ez(t,e){let r=cr(t._zod.def,{get shape(){let o={...t._zod.def.shape,...e._zod.def.shape};return Pr(this,"shape",o),o},get catchall(){return e._zod.def.catchall},checks:[]});return De(t,r)}function c_(t,e,r){let n=e._zod.def.checks;if(n&&n.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");let a=cr(e._zod.def,{get shape(){let c=e._zod.def.shape,u={...c};if(r)for(let l in r){if(!(l in c))throw new Error(`Unrecognized key: "${l}"`);r[l]&&(u[l]=t?new t({type:"optional",innerType:c[l]}):c[l])}else for(let l in c)u[l]=t?new t({type:"optional",innerType:c[l]}):c[l];return Pr(this,"shape",u),u},checks:[]});return De(e,a)}function u_(t,e,r){let o=cr(e._zod.def,{get shape(){let n=e._zod.def.shape,i={...n};if(r)for(let a in r){if(!(a in i))throw new Error(`Unrecognized key: "${a}"`);r[a]&&(i[a]=new t({type:"nonoptional",innerType:n[a]}))}else for(let a in n)i[a]=new t({type:"nonoptional",innerType:n[a]});return Pr(this,"shape",i),i}});return De(e,o)}function Tr(t,e=0){var r;if(t.aborted===!0)return!0;for(let o=e;o{var n;var o;return(n=(o=r).path)!=null||(o.path=[]),r.path.unshift(t),r})}function Si(t){return typeof t=="string"?t:t==null?void 0:t.message}function ot(t,e,r){var n,i,a,c,u,l,d,s,f,p,m;let o={...t,path:(n=t.path)!=null?n:[]};if(!t.message){let h=(m=(p=(s=(l=Si((c=(a=(i=t.inst)==null?void 0:i._zod.def)==null?void 0:a.error)==null?void 0:c.call(a,t)))!=null?l:Si((u=e==null?void 0:e.error)==null?void 0:u.call(e,t)))!=null?s:Si((d=r.customError)==null?void 0:d.call(r,t)))!=null?p:Si((f=r.localeError)==null?void 0:f.call(r,t)))!=null?m:"Invalid input";o.message=h}return delete o.inst,delete o.continue,e!=null&&e.reportInput||delete o.input,o}function Ei(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Ti(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function P(t){let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"nan":"number";case"object":{if(t===null)return"null";if(Array.isArray(t))return"array";let r=t;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return e}function Yn(...t){let[e,r,o]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:o}:{...e}}function tz(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}function l_(t){let e=atob(t),r=new Uint8Array(e.length);for(let o=0;oe.toString(16).padStart(2,"0")).join("")}var Xd=class{constructor(...e){}};var f_=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),t.message=JSON.stringify(e,Kn,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Oi=_("$ZodError",f_),it=_("$ZodError",f_,{Parent:Error});function ji(t,e=r=>r.message){let r={},o=[];for(let n of t.issues)n.path.length>0?(r[n.path[0]]=r[n.path[0]]||[],r[n.path[0]].push(e(n))):o.push(e(n));return{formErrors:o,fieldErrors:r}}function Ri(t,e=r=>r.message){let r={_errors:[]},o=n=>{for(let i of n.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>o({issues:a}));else if(i.code==="invalid_key")o({issues:i.issues});else if(i.code==="invalid_element")o({issues:i.issues});else if(i.path.length===0)r._errors.push(e(i));else{let a=r,c=0;for(;cr.message){let r={errors:[]},o=(n,i=[])=>{var u,l,d,s;var a,c;for(let f of n.issues)if(f.code==="invalid_union"&&f.errors.length)f.errors.map(p=>o({issues:p},f.path));else if(f.code==="invalid_key")o({issues:f.issues},f.path);else if(f.code==="invalid_element")o({issues:f.issues},f.path);else{let p=[...i,...f.path];if(p.length===0){r.errors.push(e(f));continue}let m=r,h=0;for(;htypeof o=="object"?o.key:o);for(let o of r)typeof o=="number"?e.push(`[${o}]`):typeof o=="symbol"?e.push(`[${JSON.stringify(String(o))}]`):/[^\w$]/.test(o)?e.push(`[${JSON.stringify(o)}]`):(e.length&&e.push("."),e.push(o));return e.join("")}function sf(t){var o;let e=[],r=[...t.issues].sort((n,i)=>{var a,c;return((a=n.path)!=null?a:[]).length-((c=i.path)!=null?c:[]).length});for(let n of r)e.push(`\u2716 ${n.message}`),(o=n.path)!=null&&o.length&&e.push(` \u2192 at ${p_(n.path)}`);return e.join(` +`)}var Qn=t=>(e,r,o,n)=>{var c;let i=o?Object.assign(o,{async:!1}):{async:!1},a=e._zod.run({value:r,issues:[]},i);if(a instanceof Promise)throw new Nt;if(a.issues.length){let u=new((c=n==null?void 0:n.Err)!=null?c:t)(a.issues.map(l=>ot(l,i,Re())));throw Hs(u,n==null?void 0:n.callee),u}return a.value},cn=Qn(it),eo=t=>async(e,r,o,n)=>{var c;let i=o?Object.assign(o,{async:!0}):{async:!0},a=e._zod.run({value:r,issues:[]},i);if(a instanceof Promise&&(a=await a),a.issues.length){let u=new((c=n==null?void 0:n.Err)!=null?c:t)(a.issues.map(l=>ot(l,i,Re())));throw Hs(u,n==null?void 0:n.callee),u}return a.value},un=eo(it),to=t=>(e,r,o)=>{let n=o?{...o,async:!1}:{async:!1},i=e._zod.run({value:r,issues:[]},n);if(i instanceof Promise)throw new Nt;return i.issues.length?{success:!1,error:new(t!=null?t:Oi)(i.issues.map(a=>ot(a,n,Re())))}:{success:!0,data:i.value}},Or=to(it),ro=t=>async(e,r,o)=>{let n=o?Object.assign(o,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},n);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new t(i.issues.map(a=>ot(a,n,Re())))}:{success:!0,data:i.value}},ln=ro(it),Bs=t=>(e,r,o)=>{let n=o?Object.assign(o,{direction:"backward"}):{direction:"backward"};return Qn(t)(e,r,n)},m_=Bs(it),Gs=t=>(e,r,o)=>Qn(t)(e,r,o),h_=Gs(it),Ks=t=>async(e,r,o)=>{let n=o?Object.assign(o,{direction:"backward"}):{direction:"backward"};return eo(t)(e,r,n)},g_=Ks(it),Xs=t=>async(e,r,o)=>eo(t)(e,r,o),v_=Xs(it),Ys=t=>(e,r,o)=>{let n=o?Object.assign(o,{direction:"backward"}):{direction:"backward"};return to(t)(e,r,n)},__=Ys(it),Qs=t=>(e,r,o)=>to(t)(e,r,o),y_=Qs(it),ec=t=>async(e,r,o)=>{let n=o?Object.assign(o,{direction:"backward"}):{direction:"backward"};return ro(t)(e,r,n)},$_=ec(it),tc=t=>async(e,r,o)=>ro(t)(e,r,o),b_=tc(it);var at={};Ot(at,{base64:()=>wf,base64url:()=>rc,bigint:()=>Ef,boolean:()=>Of,browserEmail:()=>mz,cidrv4:()=>bf,cidrv6:()=>xf,cuid:()=>cf,cuid2:()=>uf,date:()=>Sf,datetime:()=>If,domain:()=>vz,duration:()=>mf,e164:()=>kf,email:()=>gf,emoji:()=>vf,extendedDuration:()=>sz,guid:()=>hf,hex:()=>_z,hostname:()=>gz,html5Email:()=>dz,idnEmail:()=>pz,integer:()=>Tf,ipv4:()=>_f,ipv6:()=>yf,ksuid:()=>ff,lowercase:()=>Nf,mac:()=>$f,md5_base64:()=>$z,md5_base64url:()=>bz,md5_hex:()=>yz,nanoid:()=>pf,null:()=>jf,number:()=>nc,rfc5322Email:()=>fz,sha1_base64:()=>wz,sha1_base64url:()=>kz,sha1_hex:()=>xz,sha256_base64:()=>zz,sha256_base64url:()=>Iz,sha256_hex:()=>Sz,sha384_base64:()=>Ez,sha384_base64url:()=>Tz,sha384_hex:()=>Pz,sha512_base64:()=>jz,sha512_base64url:()=>Rz,sha512_hex:()=>Oz,string:()=>Pf,time:()=>zf,ulid:()=>lf,undefined:()=>Rf,unicodeEmail:()=>x_,uppercase:()=>Cf,uuid:()=>dn,uuid4:()=>cz,uuid6:()=>uz,uuid7:()=>lz,xid:()=>df});var cf=/^[cC][^\s-]{8,}$/,uf=/^[0-9a-z]+$/,lf=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,df=/^[0-9a-vA-V]{20}$/,ff=/^[A-Za-z0-9]{27}$/,pf=/^[a-zA-Z0-9_-]{21}$/,mf=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,sz=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,hf=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,dn=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,cz=dn(4),uz=dn(6),lz=dn(7),gf=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,dz=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,fz=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,x_=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,pz=x_,mz=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,hz="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function vf(){return new RegExp(hz,"u")}var _f=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,yf=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,$f=t=>{let e=wt(t!=null?t:":");return new RegExp(`^(?:[0-9A-F]{2}${e}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${e}){5}[0-9a-f]{2}$`)},bf=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,xf=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,wf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,rc=/^[A-Za-z0-9_-]*$/,gz=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,vz=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,kf=/^\+[1-9]\d{6,14}$/,w_="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Sf=new RegExp(`^${w_}$`);function k_(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function zf(t){return new RegExp(`^${k_(t)}$`)}function If(t){let e=k_({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let o=`${e}(?:${r.join("|")})`;return new RegExp(`^${w_}T(?:${o})$`)}var Pf=t=>{var r,o;let e=t?`[\\s\\S]{${(r=t==null?void 0:t.minimum)!=null?r:0},${(o=t==null?void 0:t.maximum)!=null?o:""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},Ef=/^-?\d+n?$/,Tf=/^-?\d+$/,nc=/^-?\d+(?:\.\d+)?$/,Of=/^(?:true|false)$/i,jf=/^null$/i;var Rf=/^undefined$/i;var Nf=/^[^A-Z]*$/,Cf=/^[^a-z]*$/,_z=/^[0-9a-fA-F]*$/;function Ni(t,e){return new RegExp(`^[A-Za-z0-9+/]{${t}}${e}$`)}function Ci(t){return new RegExp(`^[A-Za-z0-9_-]{${t}}$`)}var yz=/^[0-9a-fA-F]{32}$/,$z=Ni(22,"=="),bz=Ci(22),xz=/^[0-9a-fA-F]{40}$/,wz=Ni(27,"="),kz=Ci(27),Sz=/^[0-9a-fA-F]{64}$/,zz=Ni(43,"="),Iz=Ci(43),Pz=/^[0-9a-fA-F]{96}$/,Ez=Ni(64,""),Tz=Ci(64),Oz=/^[0-9a-fA-F]{128}$/,jz=Ni(86,"=="),Rz=Ci(86);var ge=_("$ZodCheck",(t,e)=>{var o,n;var r;(o=t._zod)!=null||(t._zod={}),t._zod.def=e,(n=(r=t._zod).onattach)!=null||(r.onattach=[])}),z_={number:"number",bigint:"bigint",object:"date"},oc=_("$ZodCheckLessThan",(t,e)=>{ge.init(t,e);let r=z_[typeof e.value];t._zod.onattach.push(o=>{var a;let n=o._zod.bag,i=(a=e.inclusive?n.maximum:n.exclusiveMaximum)!=null?a:Number.POSITIVE_INFINITY;e.value{(e.inclusive?o.value<=e.value:o.value{ge.init(t,e);let r=z_[typeof e.value];t._zod.onattach.push(o=>{var a;let n=o._zod.bag,i=(a=e.inclusive?n.minimum:n.exclusiveMinimum)!=null?a:Number.NEGATIVE_INFINITY;e.value>i&&(e.inclusive?n.minimum=e.value:n.exclusiveMinimum=e.value)}),t._zod.check=o=>{(e.inclusive?o.value>=e.value:o.value>e.value)||o.issues.push({origin:r,code:"too_small",minimum:typeof e.value=="object"?e.value.getTime():e.value,input:o.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Df=_("$ZodCheckMultipleOf",(t,e)=>{ge.init(t,e),t._zod.onattach.push(r=>{var n;var o;(n=(o=r._zod.bag).multipleOf)!=null||(o.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):Yd(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),Uf=_("$ZodCheckNumberFormat",(t,e)=>{var a;ge.init(t,e),e.format=e.format||"float64";let r=(a=e.format)==null?void 0:a.includes("int"),o=r?"int":"number",[n,i]=nf[e.format];t._zod.onattach.push(c=>{let u=c._zod.bag;u.format=e.format,u.minimum=n,u.maximum=i,r&&(u.pattern=Tf)}),t._zod.check=c=>{let u=c.value;if(r){if(!Number.isInteger(u)){c.issues.push({expected:o,format:e.format,code:"invalid_type",continue:!1,input:u,inst:t});return}if(!Number.isSafeInteger(u)){u>0?c.issues.push({input:u,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:o,inclusive:!0,continue:!e.abort}):c.issues.push({input:u,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:o,inclusive:!0,continue:!e.abort});return}}ui&&c.issues.push({origin:"number",input:u,code:"too_big",maximum:i,inclusive:!0,inst:t,continue:!e.abort})}}),Zf=_("$ZodCheckBigIntFormat",(t,e)=>{ge.init(t,e);let[r,o]=of[e.format];t._zod.onattach.push(n=>{let i=n._zod.bag;i.format=e.format,i.minimum=r,i.maximum=o}),t._zod.check=n=>{let i=n.value;io&&n.issues.push({origin:"bigint",input:i,code:"too_big",maximum:o,inclusive:!0,inst:t,continue:!e.abort})}}),Af=_("$ZodCheckMaxSize",(t,e)=>{var o;var r;ge.init(t,e),(o=(r=t._zod.def).when)!=null||(r.when=n=>{let i=n.value;return!Ir(i)&&i.size!==void 0}),t._zod.onattach.push(n=>{var a;let i=(a=n._zod.bag.maximum)!=null?a:Number.POSITIVE_INFINITY;e.maximum{let i=n.value;i.size<=e.maximum||n.issues.push({origin:Ei(i),code:"too_big",maximum:e.maximum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),Mf=_("$ZodCheckMinSize",(t,e)=>{var o;var r;ge.init(t,e),(o=(r=t._zod.def).when)!=null||(r.when=n=>{let i=n.value;return!Ir(i)&&i.size!==void 0}),t._zod.onattach.push(n=>{var a;let i=(a=n._zod.bag.minimum)!=null?a:Number.NEGATIVE_INFINITY;e.minimum>i&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let i=n.value;i.size>=e.minimum||n.issues.push({origin:Ei(i),code:"too_small",minimum:e.minimum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),qf=_("$ZodCheckSizeEquals",(t,e)=>{var o;var r;ge.init(t,e),(o=(r=t._zod.def).when)!=null||(r.when=n=>{let i=n.value;return!Ir(i)&&i.size!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag;i.minimum=e.size,i.maximum=e.size,i.size=e.size}),t._zod.check=n=>{let i=n.value,a=i.size;if(a===e.size)return;let c=a>e.size;n.issues.push({origin:Ei(i),...c?{code:"too_big",maximum:e.size}:{code:"too_small",minimum:e.size},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),Lf=_("$ZodCheckMaxLength",(t,e)=>{var o;var r;ge.init(t,e),(o=(r=t._zod.def).when)!=null||(r.when=n=>{let i=n.value;return!Ir(i)&&i.length!==void 0}),t._zod.onattach.push(n=>{var a;let i=(a=n._zod.bag.maximum)!=null?a:Number.POSITIVE_INFINITY;e.maximum{let i=n.value;if(i.length<=e.maximum)return;let c=Ti(i);n.issues.push({origin:c,code:"too_big",maximum:e.maximum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),Vf=_("$ZodCheckMinLength",(t,e)=>{var o;var r;ge.init(t,e),(o=(r=t._zod.def).when)!=null||(r.when=n=>{let i=n.value;return!Ir(i)&&i.length!==void 0}),t._zod.onattach.push(n=>{var a;let i=(a=n._zod.bag.minimum)!=null?a:Number.NEGATIVE_INFINITY;e.minimum>i&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let i=n.value;if(i.length>=e.minimum)return;let c=Ti(i);n.issues.push({origin:c,code:"too_small",minimum:e.minimum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),Ff=_("$ZodCheckLengthEquals",(t,e)=>{var o;var r;ge.init(t,e),(o=(r=t._zod.def).when)!=null||(r.when=n=>{let i=n.value;return!Ir(i)&&i.length!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag;i.minimum=e.length,i.maximum=e.length,i.length=e.length}),t._zod.check=n=>{let i=n.value,a=i.length;if(a===e.length)return;let c=Ti(i),u=a>e.length;n.issues.push({origin:c,...u?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),no=_("$ZodCheckStringFormat",(t,e)=>{var n,i;var r,o;ge.init(t,e),t._zod.onattach.push(a=>{var u;let c=a._zod.bag;c.format=e.format,e.pattern&&((u=c.patterns)!=null||(c.patterns=new Set),c.patterns.add(e.pattern))}),e.pattern?(n=(r=t._zod).check)!=null||(r.check=a=>{e.pattern.lastIndex=0,!e.pattern.test(a.value)&&a.issues.push({origin:"string",code:"invalid_format",format:e.format,input:a.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(i=(o=t._zod).check)!=null||(o.check=()=>{})}),Jf=_("$ZodCheckRegex",(t,e)=>{no.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),Hf=_("$ZodCheckLowerCase",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=Nf),no.init(t,e)}),Wf=_("$ZodCheckUpperCase",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=Cf),no.init(t,e)}),Bf=_("$ZodCheckIncludes",(t,e)=>{ge.init(t,e);let r=wt(e.includes),o=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=o,t._zod.onattach.push(n=>{var a;let i=n._zod.bag;(a=i.patterns)!=null||(i.patterns=new Set),i.patterns.add(o)}),t._zod.check=n=>{n.value.includes(e.includes,e.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:n.value,inst:t,continue:!e.abort})}}),Gf=_("$ZodCheckStartsWith",(t,e)=>{var o;ge.init(t,e);let r=new RegExp(`^${wt(e.prefix)}.*`);(o=e.pattern)!=null||(e.pattern=r),t._zod.onattach.push(n=>{var a;let i=n._zod.bag;(a=i.patterns)!=null||(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),Kf=_("$ZodCheckEndsWith",(t,e)=>{var o;ge.init(t,e);let r=new RegExp(`.*${wt(e.suffix)}$`);(o=e.pattern)!=null||(e.pattern=r),t._zod.onattach.push(n=>{var a;let i=n._zod.bag;(a=i.patterns)!=null||(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});function S_(t,e,r){t.issues.length&&e.issues.push(...gt(r,t.issues))}var Xf=_("$ZodCheckProperty",(t,e)=>{ge.init(t,e),t._zod.check=r=>{let o=e.schema._zod.run({value:r.value[e.property],issues:[]},{});if(o instanceof Promise)return o.then(n=>S_(n,r,e.property));S_(o,r,e.property)}}),Yf=_("$ZodCheckMimeType",(t,e)=>{ge.init(t,e);let r=new Set(e.mime);t._zod.onattach.push(o=>{o._zod.bag.mime=e.mime}),t._zod.check=o=>{r.has(o.value.type)||o.issues.push({code:"invalid_value",values:e.mime,input:o.value.type,inst:t,continue:!e.abort})}}),Qf=_("$ZodCheckOverwrite",(t,e)=>{ge.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Di=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let o=e.split(` +`).filter(a=>a),n=Math.min(...o.map(a=>a.length-a.trimStart().length)),i=o.map(a=>a.slice(n)).map(a=>" ".repeat(this.indent*2)+a);for(let a of i)this.content.push(a)}compile(){var i;let e=Function,r=this==null?void 0:this.args,n=[...((i=this==null?void 0:this.content)!=null?i:[""]).map(a=>` ${a}`)];return new e(...r,n.join(` +`))}};var ep={major:4,minor:3,patch:6};var J=_("$ZodType",(t,e)=>{var n,i,a;var r;t!=null||(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=ep;let o=[...(n=t._zod.def.checks)!=null?n:[]];t._zod.traits.has("$ZodCheck")&&o.unshift(t);for(let c of o)for(let u of c._zod.onattach)u(t);if(o.length===0)(i=(r=t._zod).deferred)!=null||(r.deferred=[]),(a=t._zod.deferred)==null||a.push(()=>{t._zod.run=t._zod.parse});else{let c=(l,d,s)=>{let f=Tr(l),p;for(let m of d){if(m._zod.def.when){if(!m._zod.def.when(l))continue}else if(f)continue;let h=l.issues.length,v=m._zod.check(l);if(v instanceof Promise&&(s==null?void 0:s.async)===!1)throw new Nt;if(p||v instanceof Promise)p=(p!=null?p:Promise.resolve()).then(async()=>{await v,l.issues.length!==h&&(f||(f=Tr(l,h)))});else{if(l.issues.length===h)continue;f||(f=Tr(l,h))}}return p?p.then(()=>l):l},u=(l,d,s)=>{if(Tr(l))return l.aborted=!0,l;let f=c(d,o,s);if(f instanceof Promise){if(s.async===!1)throw new Nt;return f.then(p=>t._zod.parse(p,s))}return t._zod.parse(f,s)};t._zod.run=(l,d)=>{if(d.skipChecks)return t._zod.parse(l,d);if(d.direction==="backward"){let f=t._zod.parse({value:l.value,issues:[]},{...d,skipChecks:!0});return f instanceof Promise?f.then(p=>u(p,l,d)):u(f,l,d)}let s=t._zod.parse(l,d);if(s instanceof Promise){if(d.async===!1)throw new Nt;return s.then(f=>c(f,o,d))}return c(s,o,d)}}K(t,"~standard",()=>({validate:c=>{var u;try{let l=Or(t,c);return l.success?{value:l.data}:{issues:(u=l.error)==null?void 0:u.issues}}catch{return ln(t,c).then(d=>{var s;return d.success?{value:d.data}:{issues:(s=d.error)==null?void 0:s.issues}})}},vendor:"zod",version:1}))}),ur=_("$ZodString",(t,e)=>{var r,o,n;J.init(t,e),t._zod.pattern=(n=[...(o=(r=t==null?void 0:t._zod.bag)==null?void 0:r.patterns)!=null?o:[]].pop())!=null?n:Pf(t._zod.bag),t._zod.parse=(i,a)=>{if(e.coerce)try{i.value=String(i.value)}catch{}return typeof i.value=="string"||i.issues.push({expected:"string",code:"invalid_type",input:i.value,inst:t}),i}}),fe=_("$ZodStringFormat",(t,e)=>{no.init(t,e),ur.init(t,e)}),dc=_("$ZodGUID",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=hf),fe.init(t,e)}),fc=_("$ZodUUID",(t,e)=>{var r,o;if(e.version){let i={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(i===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);(r=e.pattern)!=null||(e.pattern=dn(i))}else(o=e.pattern)!=null||(e.pattern=dn());fe.init(t,e)}),pc=_("$ZodEmail",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=gf),fe.init(t,e)}),mc=_("$ZodURL",(t,e)=>{fe.init(t,e),t._zod.check=r=>{try{let o=r.value.trim(),n=new URL(o);e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(n.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:e.hostname.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(n.protocol.endsWith(":")?n.protocol.slice(0,-1):n.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),e.normalize?r.value=n.href:r.value=o;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),hc=_("$ZodEmoji",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=vf()),fe.init(t,e)}),gc=_("$ZodNanoID",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=pf),fe.init(t,e)}),vc=_("$ZodCUID",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=cf),fe.init(t,e)}),_c=_("$ZodCUID2",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=uf),fe.init(t,e)}),yc=_("$ZodULID",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=lf),fe.init(t,e)}),$c=_("$ZodXID",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=df),fe.init(t,e)}),bc=_("$ZodKSUID",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=ff),fe.init(t,e)}),Ui=_("$ZodISODateTime",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=If(e)),fe.init(t,e)}),Zi=_("$ZodISODate",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=Sf),fe.init(t,e)}),Ai=_("$ZodISOTime",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=zf(e)),fe.init(t,e)}),Mi=_("$ZodISODuration",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=mf),fe.init(t,e)}),xc=_("$ZodIPv4",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=_f),fe.init(t,e),t._zod.bag.format="ipv4"}),wc=_("$ZodIPv6",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=yf),fe.init(t,e),t._zod.bag.format="ipv6",t._zod.check=o=>{try{new URL(`http://[${o.value}]`)}catch{o.issues.push({code:"invalid_format",format:"ipv6",input:o.value,inst:t,continue:!e.abort})}}}),kc=_("$ZodMAC",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=$f(e.delimiter)),fe.init(t,e),t._zod.bag.format="mac"}),Sc=_("$ZodCIDRv4",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=bf),fe.init(t,e)}),zc=_("$ZodCIDRv6",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=xf),fe.init(t,e),t._zod.check=o=>{let n=o.value.split("/");try{if(n.length!==2)throw new Error;let[i,a]=n;if(!a)throw new Error;let c=Number(a);if(`${c}`!==a)throw new Error;if(c<0||c>128)throw new Error;new URL(`http://[${i}]`)}catch{o.issues.push({code:"invalid_format",format:"cidrv6",input:o.value,inst:t,continue:!e.abort})}}});function rp(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var Ic=_("$ZodBase64",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=wf),fe.init(t,e),t._zod.bag.contentEncoding="base64",t._zod.check=o=>{rp(o.value)||o.issues.push({code:"invalid_format",format:"base64",input:o.value,inst:t,continue:!e.abort})}});function A_(t){if(!rc.test(t))return!1;let e=t.replace(/[-_]/g,o=>o==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return rp(r)}var Pc=_("$ZodBase64URL",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=rc),fe.init(t,e),t._zod.bag.contentEncoding="base64url",t._zod.check=o=>{A_(o.value)||o.issues.push({code:"invalid_format",format:"base64url",input:o.value,inst:t,continue:!e.abort})}}),Ec=_("$ZodE164",(t,e)=>{var r;(r=e.pattern)!=null||(e.pattern=kf),fe.init(t,e)});function M_(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[o]=r;if(!o)return!1;let n=JSON.parse(atob(o));return!("typ"in n&&(n==null?void 0:n.typ)!=="JWT"||!n.alg||e&&(!("alg"in n)||n.alg!==e))}catch{return!1}}var Tc=_("$ZodJWT",(t,e)=>{fe.init(t,e),t._zod.check=r=>{M_(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),Oc=_("$ZodCustomStringFormat",(t,e)=>{fe.init(t,e),t._zod.check=r=>{e.fn(r.value)||r.issues.push({code:"invalid_format",format:e.format,input:r.value,inst:t,continue:!e.abort})}}),oo=_("$ZodNumber",(t,e)=>{var r;J.init(t,e),t._zod.pattern=(r=t._zod.bag.pattern)!=null?r:nc,t._zod.parse=(o,n)=>{if(e.coerce)try{o.value=Number(o.value)}catch{}let i=o.value;if(typeof i=="number"&&!Number.isNaN(i)&&Number.isFinite(i))return o;let a=typeof i=="number"?Number.isNaN(i)?"NaN":Number.isFinite(i)?void 0:"Infinity":void 0;return o.issues.push({expected:"number",code:"invalid_type",input:i,inst:t,...a?{received:a}:{}}),o}}),jc=_("$ZodNumberFormat",(t,e)=>{Uf.init(t,e),oo.init(t,e)}),fn=_("$ZodBoolean",(t,e)=>{J.init(t,e),t._zod.pattern=Of,t._zod.parse=(r,o)=>{if(e.coerce)try{r.value=!!r.value}catch{}let n=r.value;return typeof n=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:n,inst:t}),r}}),io=_("$ZodBigInt",(t,e)=>{J.init(t,e),t._zod.pattern=Ef,t._zod.parse=(r,o)=>{if(e.coerce)try{r.value=BigInt(r.value)}catch{}return typeof r.value=="bigint"||r.issues.push({expected:"bigint",code:"invalid_type",input:r.value,inst:t}),r}}),Rc=_("$ZodBigIntFormat",(t,e)=>{Zf.init(t,e),io.init(t,e)}),Nc=_("$ZodSymbol",(t,e)=>{J.init(t,e),t._zod.parse=(r,o)=>{let n=r.value;return typeof n=="symbol"||r.issues.push({expected:"symbol",code:"invalid_type",input:n,inst:t}),r}}),Cc=_("$ZodUndefined",(t,e)=>{J.init(t,e),t._zod.pattern=Rf,t._zod.values=new Set([void 0]),t._zod.optin="optional",t._zod.optout="optional",t._zod.parse=(r,o)=>{let n=r.value;return typeof n=="undefined"||r.issues.push({expected:"undefined",code:"invalid_type",input:n,inst:t}),r}}),Dc=_("$ZodNull",(t,e)=>{J.init(t,e),t._zod.pattern=jf,t._zod.values=new Set([null]),t._zod.parse=(r,o)=>{let n=r.value;return n===null||r.issues.push({expected:"null",code:"invalid_type",input:n,inst:t}),r}}),Uc=_("$ZodAny",(t,e)=>{J.init(t,e),t._zod.parse=r=>r}),Zc=_("$ZodUnknown",(t,e)=>{J.init(t,e),t._zod.parse=r=>r}),Ac=_("$ZodNever",(t,e)=>{J.init(t,e),t._zod.parse=(r,o)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)}),Mc=_("$ZodVoid",(t,e)=>{J.init(t,e),t._zod.parse=(r,o)=>{let n=r.value;return typeof n=="undefined"||r.issues.push({expected:"void",code:"invalid_type",input:n,inst:t}),r}}),qi=_("$ZodDate",(t,e)=>{J.init(t,e),t._zod.parse=(r,o)=>{if(e.coerce)try{r.value=new Date(r.value)}catch{}let n=r.value,i=n instanceof Date;return i&&!Number.isNaN(n.getTime())||r.issues.push({expected:"date",code:"invalid_type",input:n,...i?{received:"Invalid Date"}:{},inst:t}),r}});function P_(t,e,r){t.issues.length&&e.issues.push(...gt(r,t.issues)),e.value[r]=t.value}var qc=_("$ZodArray",(t,e)=>{J.init(t,e),t._zod.parse=(r,o)=>{let n=r.value;if(!Array.isArray(n))return r.issues.push({expected:"array",code:"invalid_type",input:n,inst:t}),r;r.value=Array(n.length);let i=[];for(let a=0;aP_(l,r,a))):P_(u,r,a)}return i.length?Promise.all(i).then(()=>r):r}});function lc(t,e,r,o,n){if(t.issues.length){if(n&&!(r in o))return;e.issues.push(...gt(r,t.issues))}t.value===void 0?r in o&&(e.value[r]=void 0):e.value[r]=t.value}function q_(t){var o,n,i,a;let e=Object.keys(t.shape);for(let c of e)if(!((a=(i=(n=(o=t.shape)==null?void 0:o[c])==null?void 0:n._zod)==null?void 0:i.traits)!=null&&a.has("$ZodType")))throw new Error(`Invalid element at key "${c}": expected a Zod schema`);let r=rf(t.shape);return{...t,keys:e,keySet:new Set(e),numKeys:e.length,optionalKeys:new Set(r)}}function L_(t,e,r,o,n,i){let a=[],c=n.keySet,u=n.catchall._zod,l=u.def.type,d=u.optout==="optional";for(let s in e){if(c.has(s))continue;if(l==="never"){a.push(s);continue}let f=u.run({value:e[s],issues:[]},o);f instanceof Promise?t.push(f.then(p=>lc(p,r,s,e,d))):lc(f,r,s,e,d)}return a.length&&r.issues.push({code:"unrecognized_keys",keys:a,input:e,inst:i}),t.length?Promise.all(t).then(()=>r):r}var np=_("$ZodObject",(t,e)=>{J.init(t,e);let r=Object.getOwnPropertyDescriptor(e,"shape");if(!(r!=null&&r.get)){let c=e.shape;Object.defineProperty(e,"shape",{get:()=>{let u={...c};return Object.defineProperty(e,"shape",{value:u}),u}})}let o=Xn(()=>q_(e));K(t._zod,"propValues",()=>{var l;let c=e.shape,u={};for(let d in c){let s=c[d]._zod;if(s.values){(l=u[d])!=null||(u[d]=new Set);for(let f of s.values)u[d].add(f)}}return u});let n=sn,i=e.catchall,a;t._zod.parse=(c,u)=>{a!=null||(a=o.value);let l=c.value;if(!n(l))return c.issues.push({expected:"object",code:"invalid_type",input:l,inst:t}),c;c.value={};let d=[],s=a.shape;for(let f of a.keys){let p=s[f],m=p._zod.optout==="optional",h=p._zod.run({value:l[f],issues:[]},u);h instanceof Promise?d.push(h.then(v=>lc(v,c,f,l,m))):lc(h,c,f,l,m)}return i?L_(d,l,c,u,o.value,t):d.length?Promise.all(d).then(()=>c):c}}),op=_("$ZodObjectJIT",(t,e)=>{np.init(t,e);let r=t._zod.parse,o=Xn(()=>q_(e)),n=f=>{var k;let p=new Di(["shape","payload","ctx"]),m=o.value,h=x=>{let b=Js(x);return`shape[${b}]._zod.run({ value: input[${b}], issues: [] }, ctx)`};p.write("const input = payload.value;");let v=Object.create(null),y=0;for(let x of m.keys)v[x]=`key_${y++}`;p.write("const newResult = {};");for(let x of m.keys){let b=v[x],L=Js(x),H=f[x],he=((k=H==null?void 0:H._zod)==null?void 0:k.optout)==="optional";p.write(`const ${b} = ${h(x)};`),he?p.write(` + if (${b}.issues.length) { + if (${L} in input) { + payload.issues = payload.issues.concat(${b}.issues.map(iss => ({ + ...iss, + path: iss.path ? [${L}, ...iss.path] : [${L}] + }))); + } + } + + if (${b}.value === undefined) { + if (${L} in input) { + newResult[${L}] = undefined; + } + } else { + newResult[${L}] = ${b}.value; + } + + `):p.write(` + if (${b}.issues.length) { + payload.issues = payload.issues.concat(${b}.issues.map(iss => ({ + ...iss, + path: iss.path ? [${L}, ...iss.path] : [${L}] + }))); + } + + if (${b}.value === undefined) { + if (${L} in input) { + newResult[${L}] = undefined; + } + } else { + newResult[${L}] = ${b}.value; + } + + `)}p.write("payload.value = newResult;"),p.write("return payload;");let w=p.compile();return(x,b)=>w(f,x,b)},i,a=sn,c=!wi.jitless,l=c&&ef.value,d=e.catchall,s;t._zod.parse=(f,p)=>{s!=null||(s=o.value);let m=f.value;return a(m)?c&&l&&(p==null?void 0:p.async)===!1&&p.jitless!==!0?(i||(i=n(e.shape)),f=i(f,p),d?L_([],m,f,p,s,t):f):r(f,p):(f.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),f)}});function E_(t,e,r,o){for(let i of t)if(i.issues.length===0)return e.value=i.value,e;let n=t.filter(i=>!Tr(i));return n.length===1?(e.value=n[0].value,n[0]):(e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(i=>i.issues.map(a=>ot(a,o,Re())))}),e)}var ao=_("$ZodUnion",(t,e)=>{J.init(t,e),K(t._zod,"optin",()=>e.options.some(n=>n._zod.optin==="optional")?"optional":void 0),K(t._zod,"optout",()=>e.options.some(n=>n._zod.optout==="optional")?"optional":void 0),K(t._zod,"values",()=>{if(e.options.every(n=>n._zod.values))return new Set(e.options.flatMap(n=>Array.from(n._zod.values)))}),K(t._zod,"pattern",()=>{if(e.options.every(n=>n._zod.pattern)){let n=e.options.map(i=>i._zod.pattern);return new RegExp(`^(${n.map(i=>Ii(i.source)).join("|")})$`)}});let r=e.options.length===1,o=e.options[0]._zod.run;t._zod.parse=(n,i)=>{if(r)return o(n,i);let a=!1,c=[];for(let u of e.options){let l=u._zod.run({value:n.value,issues:[]},i);if(l instanceof Promise)c.push(l),a=!0;else{if(l.issues.length===0)return l;c.push(l)}}return a?Promise.all(c).then(u=>E_(u,n,t,i)):E_(c,n,t,i)}});function T_(t,e,r,o){let n=t.filter(i=>i.issues.length===0);return n.length===1?(e.value=n[0].value,e):(n.length===0?e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(i=>i.issues.map(a=>ot(a,o,Re())))}):e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:[],inclusive:!1}),e)}var Lc=_("$ZodXor",(t,e)=>{ao.init(t,e),e.inclusive=!1;let r=e.options.length===1,o=e.options[0]._zod.run;t._zod.parse=(n,i)=>{if(r)return o(n,i);let a=!1,c=[];for(let u of e.options){let l=u._zod.run({value:n.value,issues:[]},i);l instanceof Promise?(c.push(l),a=!0):c.push(l)}return a?Promise.all(c).then(u=>T_(u,n,t,i)):T_(c,n,t,i)}}),Vc=_("$ZodDiscriminatedUnion",(t,e)=>{e.inclusive=!1,ao.init(t,e);let r=t._zod.parse;K(t._zod,"propValues",()=>{let n={};for(let i of e.options){let a=i._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let[c,u]of Object.entries(a)){n[c]||(n[c]=new Set);for(let l of u)n[c].add(l)}}return n});let o=Xn(()=>{var a;let n=e.options,i=new Map;for(let c of n){let u=(a=c._zod.propValues)==null?void 0:a[e.discriminator];if(!u||u.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(c)}"`);for(let l of u){if(i.has(l))throw new Error(`Duplicate discriminator value "${String(l)}"`);i.set(l,c)}}return i});t._zod.parse=(n,i)=>{let a=n.value;if(!sn(a))return n.issues.push({code:"invalid_type",expected:"object",input:a,inst:t}),n;let c=o.value.get(a==null?void 0:a[e.discriminator]);return c?c._zod.run(n,i):e.unionFallback?r(n,i):(n.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:e.discriminator,input:a,path:[e.discriminator],inst:t}),n)}}),Fc=_("$ZodIntersection",(t,e)=>{J.init(t,e),t._zod.parse=(r,o)=>{let n=r.value,i=e.left._zod.run({value:n,issues:[]},o),a=e.right._zod.run({value:n,issues:[]},o);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([u,l])=>O_(r,u,l)):O_(r,i,a)}});function tp(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(Er(t)&&Er(e)){let r=Object.keys(e),o=Object.keys(t).filter(i=>r.indexOf(i)!==-1),n={...t,...e};for(let i of o){let a=tp(t[i],e[i]);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};n[i]=a.data}return{valid:!0,data:n}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let o=0;oc.l&&c.r).map(([c])=>c);if(i.length&&n&&t.issues.push({...n,keys:i}),Tr(t))return t;let a=tp(e.value,r.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return t.value=a.data,t}var Li=_("$ZodTuple",(t,e)=>{J.init(t,e);let r=e.items;t._zod.parse=(o,n)=>{let i=o.value;if(!Array.isArray(i))return o.issues.push({input:i,inst:t,expected:"tuple",code:"invalid_type"}),o;o.value=[];let a=[],c=[...r].reverse().findIndex(d=>d._zod.optin!=="optional"),u=c===-1?0:r.length-c;if(!e.rest){let d=i.length>r.length,s=i.length=i.length&&l>=u)continue;let s=d._zod.run({value:i[l],issues:[]},n);s instanceof Promise?a.push(s.then(f=>ac(f,o,l))):ac(s,o,l)}if(e.rest){let d=i.slice(r.length);for(let s of d){l++;let f=e.rest._zod.run({value:s,issues:[]},n);f instanceof Promise?a.push(f.then(p=>ac(p,o,l))):ac(f,o,l)}}return a.length?Promise.all(a).then(()=>o):o}});function ac(t,e,r){t.issues.length&&e.issues.push(...gt(r,t.issues)),e.value[r]=t.value}var Jc=_("$ZodRecord",(t,e)=>{J.init(t,e),t._zod.parse=(r,o)=>{let n=r.value;if(!Er(n))return r.issues.push({expected:"record",code:"invalid_type",input:n,inst:t}),r;let i=[],a=e.keyType._zod.values;if(a){r.value={};let c=new Set;for(let l of a)if(typeof l=="string"||typeof l=="number"||typeof l=="symbol"){c.add(typeof l=="number"?l.toString():l);let d=e.valueType._zod.run({value:n[l],issues:[]},o);d instanceof Promise?i.push(d.then(s=>{s.issues.length&&r.issues.push(...gt(l,s.issues)),r.value[l]=s.value})):(d.issues.length&&r.issues.push(...gt(l,d.issues)),r.value[l]=d.value)}let u;for(let l in n)c.has(l)||(u=u!=null?u:[],u.push(l));u&&u.length>0&&r.issues.push({code:"unrecognized_keys",input:n,inst:t,keys:u})}else{r.value={};for(let c of Reflect.ownKeys(n)){if(c==="__proto__")continue;let u=e.keyType._zod.run({value:c,issues:[]},o);if(u instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof c=="string"&&nc.test(c)&&u.issues.length){let s=e.keyType._zod.run({value:Number(c),issues:[]},o);if(s instanceof Promise)throw new Error("Async schemas not supported in object keys currently");s.issues.length===0&&(u=s)}if(u.issues.length){e.mode==="loose"?r.value[c]=n[c]:r.issues.push({code:"invalid_key",origin:"record",issues:u.issues.map(s=>ot(s,o,Re())),input:c,path:[c],inst:t});continue}let d=e.valueType._zod.run({value:n[c],issues:[]},o);d instanceof Promise?i.push(d.then(s=>{s.issues.length&&r.issues.push(...gt(c,s.issues)),r.value[u.value]=s.value})):(d.issues.length&&r.issues.push(...gt(c,d.issues)),r.value[u.value]=d.value)}}return i.length?Promise.all(i).then(()=>r):r}}),Hc=_("$ZodMap",(t,e)=>{J.init(t,e),t._zod.parse=(r,o)=>{let n=r.value;if(!(n instanceof Map))return r.issues.push({expected:"map",code:"invalid_type",input:n,inst:t}),r;let i=[];r.value=new Map;for(let[a,c]of n){let u=e.keyType._zod.run({value:a,issues:[]},o),l=e.valueType._zod.run({value:c,issues:[]},o);u instanceof Promise||l instanceof Promise?i.push(Promise.all([u,l]).then(([d,s])=>{j_(d,s,r,a,n,t,o)})):j_(u,l,r,a,n,t,o)}return i.length?Promise.all(i).then(()=>r):r}});function j_(t,e,r,o,n,i,a){t.issues.length&&(Pi.has(typeof o)?r.issues.push(...gt(o,t.issues)):r.issues.push({code:"invalid_key",origin:"map",input:n,inst:i,issues:t.issues.map(c=>ot(c,a,Re()))})),e.issues.length&&(Pi.has(typeof o)?r.issues.push(...gt(o,e.issues)):r.issues.push({origin:"map",code:"invalid_element",input:n,inst:i,key:o,issues:e.issues.map(c=>ot(c,a,Re()))})),r.value.set(t.value,e.value)}var Wc=_("$ZodSet",(t,e)=>{J.init(t,e),t._zod.parse=(r,o)=>{let n=r.value;if(!(n instanceof Set))return r.issues.push({input:n,inst:t,expected:"set",code:"invalid_type"}),r;let i=[];r.value=new Set;for(let a of n){let c=e.valueType._zod.run({value:a,issues:[]},o);c instanceof Promise?i.push(c.then(u=>R_(u,r))):R_(c,r)}return i.length?Promise.all(i).then(()=>r):r}});function R_(t,e){t.issues.length&&e.issues.push(...t.issues),e.value.add(t.value)}var Bc=_("$ZodEnum",(t,e)=>{J.init(t,e);let r=zi(e.entries),o=new Set(r);t._zod.values=o,t._zod.pattern=new RegExp(`^(${r.filter(n=>Pi.has(typeof n)).map(n=>typeof n=="string"?wt(n):n.toString()).join("|")})$`),t._zod.parse=(n,i)=>{let a=n.value;return o.has(a)||n.issues.push({code:"invalid_value",values:r,input:a,inst:t}),n}}),Gc=_("$ZodLiteral",(t,e)=>{if(J.init(t,e),e.values.length===0)throw new Error("Cannot create literal schema with no valid values");let r=new Set(e.values);t._zod.values=r,t._zod.pattern=new RegExp(`^(${e.values.map(o=>typeof o=="string"?wt(o):o?wt(o.toString()):String(o)).join("|")})$`),t._zod.parse=(o,n)=>{let i=o.value;return r.has(i)||o.issues.push({code:"invalid_value",values:e.values,input:i,inst:t}),o}}),Kc=_("$ZodFile",(t,e)=>{J.init(t,e),t._zod.parse=(r,o)=>{let n=r.value;return n instanceof File||r.issues.push({expected:"file",code:"invalid_type",input:n,inst:t}),r}}),Xc=_("$ZodTransform",(t,e)=>{J.init(t,e),t._zod.parse=(r,o)=>{if(o.direction==="backward")throw new zr(t.constructor.name);let n=e.transform(r.value,r);if(o.async)return(n instanceof Promise?n:Promise.resolve(n)).then(a=>(r.value=a,r));if(n instanceof Promise)throw new Nt;return r.value=n,r}});function N_(t,e){return t.issues.length&&e===void 0?{issues:[],value:void 0}:t}var Vi=_("$ZodOptional",(t,e)=>{J.init(t,e),t._zod.optin="optional",t._zod.optout="optional",K(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),K(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Ii(r.source)})?$`):void 0}),t._zod.parse=(r,o)=>{if(e.innerType._zod.optin==="optional"){let n=e.innerType._zod.run(r,o);return n instanceof Promise?n.then(i=>N_(i,r.value)):N_(n,r.value)}return r.value===void 0?r:e.innerType._zod.run(r,o)}}),Yc=_("$ZodExactOptional",(t,e)=>{Vi.init(t,e),K(t._zod,"values",()=>e.innerType._zod.values),K(t._zod,"pattern",()=>e.innerType._zod.pattern),t._zod.parse=(r,o)=>e.innerType._zod.run(r,o)}),Qc=_("$ZodNullable",(t,e)=>{J.init(t,e),K(t._zod,"optin",()=>e.innerType._zod.optin),K(t._zod,"optout",()=>e.innerType._zod.optout),K(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Ii(r.source)}|null)$`):void 0}),K(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,o)=>r.value===null?r:e.innerType._zod.run(r,o)}),eu=_("$ZodDefault",(t,e)=>{J.init(t,e),t._zod.optin="optional",K(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,o)=>{if(o.direction==="backward")return e.innerType._zod.run(r,o);if(r.value===void 0)return r.value=e.defaultValue,r;let n=e.innerType._zod.run(r,o);return n instanceof Promise?n.then(i=>C_(i,e)):C_(n,e)}});function C_(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var tu=_("$ZodPrefault",(t,e)=>{J.init(t,e),t._zod.optin="optional",K(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,o)=>(o.direction==="backward"||r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,o))}),ru=_("$ZodNonOptional",(t,e)=>{J.init(t,e),K(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(o=>o!==void 0)):void 0}),t._zod.parse=(r,o)=>{let n=e.innerType._zod.run(r,o);return n instanceof Promise?n.then(i=>D_(i,t)):D_(n,t)}});function D_(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var nu=_("$ZodSuccess",(t,e)=>{J.init(t,e),t._zod.parse=(r,o)=>{if(o.direction==="backward")throw new zr("ZodSuccess");let n=e.innerType._zod.run(r,o);return n instanceof Promise?n.then(i=>(r.value=i.issues.length===0,r)):(r.value=n.issues.length===0,r)}}),ou=_("$ZodCatch",(t,e)=>{J.init(t,e),K(t._zod,"optin",()=>e.innerType._zod.optin),K(t._zod,"optout",()=>e.innerType._zod.optout),K(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,o)=>{if(o.direction==="backward")return e.innerType._zod.run(r,o);let n=e.innerType._zod.run(r,o);return n instanceof Promise?n.then(i=>(r.value=i.value,i.issues.length&&(r.value=e.catchValue({...r,error:{issues:i.issues.map(a=>ot(a,o,Re()))},input:r.value}),r.issues=[]),r)):(r.value=n.value,n.issues.length&&(r.value=e.catchValue({...r,error:{issues:n.issues.map(i=>ot(i,o,Re()))},input:r.value}),r.issues=[]),r)}}),iu=_("$ZodNaN",(t,e)=>{J.init(t,e),t._zod.parse=(r,o)=>((typeof r.value!="number"||!Number.isNaN(r.value))&&r.issues.push({input:r.value,inst:t,expected:"nan",code:"invalid_type"}),r)}),au=_("$ZodPipe",(t,e)=>{J.init(t,e),K(t._zod,"values",()=>e.in._zod.values),K(t._zod,"optin",()=>e.in._zod.optin),K(t._zod,"optout",()=>e.out._zod.optout),K(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,o)=>{if(o.direction==="backward"){let i=e.out._zod.run(r,o);return i instanceof Promise?i.then(a=>sc(a,e.in,o)):sc(i,e.in,o)}let n=e.in._zod.run(r,o);return n instanceof Promise?n.then(i=>sc(i,e.out,o)):sc(n,e.out,o)}});function sc(t,e,r){return t.issues.length?(t.aborted=!0,t):e._zod.run({value:t.value,issues:t.issues},r)}var so=_("$ZodCodec",(t,e)=>{J.init(t,e),K(t._zod,"values",()=>e.in._zod.values),K(t._zod,"optin",()=>e.in._zod.optin),K(t._zod,"optout",()=>e.out._zod.optout),K(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,o)=>{if((o.direction||"forward")==="forward"){let i=e.in._zod.run(r,o);return i instanceof Promise?i.then(a=>cc(a,e,o)):cc(i,e,o)}else{let i=e.out._zod.run(r,o);return i instanceof Promise?i.then(a=>cc(a,e,o)):cc(i,e,o)}}});function cc(t,e,r){if(t.issues.length)return t.aborted=!0,t;if((r.direction||"forward")==="forward"){let n=e.transform(t.value,t);return n instanceof Promise?n.then(i=>uc(t,i,e.out,r)):uc(t,n,e.out,r)}else{let n=e.reverseTransform(t.value,t);return n instanceof Promise?n.then(i=>uc(t,i,e.in,r)):uc(t,n,e.in,r)}}function uc(t,e,r,o){return t.issues.length?(t.aborted=!0,t):r._zod.run({value:e,issues:t.issues},o)}var su=_("$ZodReadonly",(t,e)=>{J.init(t,e),K(t._zod,"propValues",()=>e.innerType._zod.propValues),K(t._zod,"values",()=>e.innerType._zod.values),K(t._zod,"optin",()=>{var r,o;return(o=(r=e.innerType)==null?void 0:r._zod)==null?void 0:o.optin}),K(t._zod,"optout",()=>{var r,o;return(o=(r=e.innerType)==null?void 0:r._zod)==null?void 0:o.optout}),t._zod.parse=(r,o)=>{if(o.direction==="backward")return e.innerType._zod.run(r,o);let n=e.innerType._zod.run(r,o);return n instanceof Promise?n.then(U_):U_(n)}});function U_(t){return t.value=Object.freeze(t.value),t}var cu=_("$ZodTemplateLiteral",(t,e)=>{J.init(t,e);let r=[];for(let o of e.parts)if(typeof o=="object"&&o!==null){if(!o._zod.pattern)throw new Error(`Invalid template literal part, no pattern found: ${[...o._zod.traits].shift()}`);let n=o._zod.pattern instanceof RegExp?o._zod.pattern.source:o._zod.pattern;if(!n)throw new Error(`Invalid template literal part: ${o._zod.traits}`);let i=n.startsWith("^")?1:0,a=n.endsWith("$")?n.length-1:n.length;r.push(n.slice(i,a))}else if(o===null||tf.has(typeof o))r.push(wt(`${o}`));else throw new Error(`Invalid template literal part: ${o}`);t._zod.pattern=new RegExp(`^${r.join("")}$`),t._zod.parse=(o,n)=>{var i;return typeof o.value!="string"?(o.issues.push({input:o.value,inst:t,expected:"string",code:"invalid_type"}),o):(t._zod.pattern.lastIndex=0,t._zod.pattern.test(o.value)||o.issues.push({input:o.value,inst:t,code:"invalid_format",format:(i=e.format)!=null?i:"template_literal",pattern:t._zod.pattern.source}),o)}}),uu=_("$ZodFunction",(t,e)=>(J.init(t,e),t._def=e,t._zod.def=e,t.implement=r=>{if(typeof r!="function")throw new Error("implement() must be called with a function");return function(...o){let n=t._def.input?cn(t._def.input,o):o,i=Reflect.apply(r,this,n);return t._def.output?cn(t._def.output,i):i}},t.implementAsync=r=>{if(typeof r!="function")throw new Error("implementAsync() must be called with a function");return async function(...o){let n=t._def.input?await un(t._def.input,o):o,i=await Reflect.apply(r,this,n);return t._def.output?await un(t._def.output,i):i}},t._zod.parse=(r,o)=>typeof r.value!="function"?(r.issues.push({code:"invalid_type",expected:"function",input:r.value,inst:t}),r):(t._def.output&&t._def.output._zod.def.type==="promise"?r.value=t.implementAsync(r.value):r.value=t.implement(r.value),r),t.input=(...r)=>{let o=t.constructor;return Array.isArray(r[0])?new o({type:"function",input:new Li({type:"tuple",items:r[0],rest:r[1]}),output:t._def.output}):new o({type:"function",input:r[0],output:t._def.output})},t.output=r=>{let o=t.constructor;return new o({type:"function",input:t._def.input,output:r})},t)),lu=_("$ZodPromise",(t,e)=>{J.init(t,e),t._zod.parse=(r,o)=>Promise.resolve(r.value).then(n=>e.innerType._zod.run({value:n,issues:[]},o))}),du=_("$ZodLazy",(t,e)=>{J.init(t,e),K(t._zod,"innerType",()=>e.getter()),K(t._zod,"pattern",()=>{var r,o;return(o=(r=t._zod.innerType)==null?void 0:r._zod)==null?void 0:o.pattern}),K(t._zod,"propValues",()=>{var r,o;return(o=(r=t._zod.innerType)==null?void 0:r._zod)==null?void 0:o.propValues}),K(t._zod,"optin",()=>{var r,o,n;return(n=(o=(r=t._zod.innerType)==null?void 0:r._zod)==null?void 0:o.optin)!=null?n:void 0}),K(t._zod,"optout",()=>{var r,o,n;return(n=(o=(r=t._zod.innerType)==null?void 0:r._zod)==null?void 0:o.optout)!=null?n:void 0}),t._zod.parse=(r,o)=>t._zod.innerType._zod.run(r,o)}),fu=_("$ZodCustom",(t,e)=>{ge.init(t,e),J.init(t,e),t._zod.parse=(r,o)=>r,t._zod.check=r=>{let o=r.value,n=e.fn(o);if(n instanceof Promise)return n.then(i=>Z_(i,r,o,t));Z_(n,r,o,t)}});function Z_(t,e,r,o){var n;if(!t){let i={code:"custom",input:r,inst:o,path:[...(n=o._zod.def.path)!=null?n:[]],continue:!o._zod.def.abort};o._zod.def.params&&(i.params=o._zod.def.params),e.issues.push(Yn(i))}}var jr={};Ot(jr,{ar:()=>V_,az:()=>F_,be:()=>H_,bg:()=>W_,ca:()=>B_,cs:()=>G_,da:()=>K_,de:()=>X_,en:()=>pu,eo:()=>Y_,es:()=>Q_,fa:()=>ey,fi:()=>ty,fr:()=>ry,frCA:()=>ny,he:()=>oy,hu:()=>iy,hy:()=>sy,id:()=>cy,is:()=>uy,it:()=>ly,ja:()=>dy,ka:()=>fy,kh:()=>py,km:()=>mu,ko:()=>my,lt:()=>gy,mk:()=>vy,ms:()=>_y,nl:()=>yy,no:()=>$y,ota:()=>by,pl:()=>wy,ps:()=>xy,pt:()=>ky,ru:()=>zy,sl:()=>Iy,sv:()=>Py,ta:()=>Ey,th:()=>Ty,tr:()=>Oy,ua:()=>jy,uk:()=>hu,ur:()=>Ry,uz:()=>Ny,vi:()=>Cy,yo:()=>Zy,zhCN:()=>Dy,zhTW:()=>Uy});var Cz=()=>{let t={string:{unit:"\u062D\u0631\u0641",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},file:{unit:"\u0628\u0627\u064A\u062A",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},array:{unit:"\u0639\u0646\u0635\u0631",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},set:{unit:"\u0639\u0646\u0635\u0631",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u0645\u062F\u062E\u0644",email:"\u0628\u0631\u064A\u062F \u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",url:"\u0631\u0627\u0628\u0637",emoji:"\u0625\u064A\u0645\u0648\u062C\u064A",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u062A\u0627\u0631\u064A\u062E \u0648\u0648\u0642\u062A \u0628\u0645\u0639\u064A\u0627\u0631 ISO",date:"\u062A\u0627\u0631\u064A\u062E \u0628\u0645\u0639\u064A\u0627\u0631 ISO",time:"\u0648\u0642\u062A \u0628\u0645\u0639\u064A\u0627\u0631 ISO",duration:"\u0645\u062F\u0629 \u0628\u0645\u0639\u064A\u0627\u0631 ISO",ipv4:"\u0639\u0646\u0648\u0627\u0646 IPv4",ipv6:"\u0639\u0646\u0648\u0627\u0646 IPv6",cidrv4:"\u0645\u062F\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 \u0628\u0635\u064A\u063A\u0629 IPv4",cidrv6:"\u0645\u062F\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 \u0628\u0635\u064A\u063A\u0629 IPv6",base64:"\u0646\u064E\u0635 \u0628\u062A\u0631\u0645\u064A\u0632 base64-encoded",base64url:"\u0646\u064E\u0635 \u0628\u062A\u0631\u0645\u064A\u0632 base64url-encoded",json_string:"\u0646\u064E\u0635 \u0639\u0644\u0649 \u0647\u064A\u0626\u0629 JSON",e164:"\u0631\u0642\u0645 \u0647\u0627\u062A\u0641 \u0628\u0645\u0639\u064A\u0627\u0631 E.164",jwt:"JWT",template_literal:"\u0645\u062F\u062E\u0644"},o={nan:"NaN"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 instanceof ${n.expected}\u060C \u0648\u0644\u0643\u0646 \u062A\u0645 \u0625\u062F\u062E\u0627\u0644 ${p}`:`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 ${s}\u060C \u0648\u0644\u0643\u0646 \u062A\u0645 \u0625\u062F\u062E\u0627\u0644 ${p}`}case"invalid_value":return n.values.length===1?`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 ${S(n.values[0])}`:`\u0627\u062E\u062A\u064A\u0627\u0631 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062A\u0648\u0642\u0639 \u0627\u0646\u062A\u0642\u0627\u0621 \u0623\u062D\u062F \u0647\u0630\u0647 \u0627\u0644\u062E\u064A\u0627\u0631\u0627\u062A: ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?` \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0623\u0646 \u062A\u0643\u0648\u0646 ${(c=n.origin)!=null?c:"\u0627\u0644\u0642\u064A\u0645\u0629"} ${s} ${n.maximum.toString()} ${(u=f.unit)!=null?u:"\u0639\u0646\u0635\u0631"}`:`\u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0623\u0646 \u062A\u0643\u0648\u0646 ${(l=n.origin)!=null?l:"\u0627\u0644\u0642\u064A\u0645\u0629"} ${s} ${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${n.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${s} ${n.minimum.toString()} ${f.unit}`:`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${n.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${s} ${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0628\u062F\u0623 \u0628\u0640 "${n.prefix}"`:s.format==="ends_with"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0646\u062A\u0647\u064A \u0628\u0640 "${s.suffix}"`:s.format==="includes"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u062A\u0636\u0645\u0651\u064E\u0646 "${s.includes}"`:s.format==="regex"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0637\u0627\u0628\u0642 \u0627\u0644\u0646\u0645\u0637 ${s.pattern}`:`${(d=r[s.format])!=null?d:n.format} \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644`}case"not_multiple_of":return`\u0631\u0642\u0645 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0645\u0646 \u0645\u0636\u0627\u0639\u0641\u0627\u062A ${n.divisor}`;case"unrecognized_keys":return`\u0645\u0639\u0631\u0641${n.keys.length>1?"\u0627\u062A":""} \u063A\u0631\u064A\u0628${n.keys.length>1?"\u0629":""}: ${$(n.keys,"\u060C ")}`;case"invalid_key":return`\u0645\u0639\u0631\u0641 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${n.origin}`;case"invalid_union":return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644";case"invalid_element":return`\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${n.origin}`;default:return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644"}}};function V_(){return{localeError:Cz()}}var Dz=()=>{let t={string:{unit:"simvol",verb:"olmal\u0131d\u0131r"},file:{unit:"bayt",verb:"olmal\u0131d\u0131r"},array:{unit:"element",verb:"olmal\u0131d\u0131r"},set:{unit:"element",verb:"olmal\u0131d\u0131r"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},o={nan:"NaN"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n instanceof ${n.expected}, daxil olan ${p}`:`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${s}, daxil olan ${p}`}case"invalid_value":return n.values.length===1?`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${S(n.values[0])}`:`Yanl\u0131\u015F se\xE7im: a\u015Fa\u011F\u0131dak\u0131lardan biri olmal\u0131d\u0131r: ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${(c=n.origin)!=null?c:"d\u0259y\u0259r"} ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"element"}`:`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${(l=n.origin)!=null?l:"d\u0259y\u0259r"} ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${n.origin} ${s}${n.minimum.toString()} ${f.unit}`:`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${n.origin} ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`Yanl\u0131\u015F m\u0259tn: "${s.prefix}" il\u0259 ba\u015Flamal\u0131d\u0131r`:s.format==="ends_with"?`Yanl\u0131\u015F m\u0259tn: "${s.suffix}" il\u0259 bitm\u0259lidir`:s.format==="includes"?`Yanl\u0131\u015F m\u0259tn: "${s.includes}" daxil olmal\u0131d\u0131r`:s.format==="regex"?`Yanl\u0131\u015F m\u0259tn: ${s.pattern} \u015Fablonuna uy\u011Fun olmal\u0131d\u0131r`:`Yanl\u0131\u015F ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`Yanl\u0131\u015F \u0259d\u0259d: ${n.divisor} il\u0259 b\xF6l\xFCn\u0259 bil\u0259n olmal\u0131d\u0131r`;case"unrecognized_keys":return`Tan\u0131nmayan a\xE7ar${n.keys.length>1?"lar":""}: ${$(n.keys,", ")}`;case"invalid_key":return`${n.origin} daxilind\u0259 yanl\u0131\u015F a\xE7ar`;case"invalid_union":return"Yanl\u0131\u015F d\u0259y\u0259r";case"invalid_element":return`${n.origin} daxilind\u0259 yanl\u0131\u015F d\u0259y\u0259r`;default:return"Yanl\u0131\u015F d\u0259y\u0259r"}}};function F_(){return{localeError:Dz()}}function J_(t,e,r,o){let n=Math.abs(t),i=n%10,a=n%100;return a>=11&&a<=19?o:i===1?e:i>=2&&i<=4?r:o}var Uz=()=>{let t={string:{unit:{one:"\u0441\u0456\u043C\u0432\u0430\u043B",few:"\u0441\u0456\u043C\u0432\u0430\u043B\u044B",many:"\u0441\u0456\u043C\u0432\u0430\u043B\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},array:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},set:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},file:{unit:{one:"\u0431\u0430\u0439\u0442",few:"\u0431\u0430\u0439\u0442\u044B",many:"\u0431\u0430\u0439\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u0443\u0432\u043E\u0434",email:"email \u0430\u0434\u0440\u0430\u0441",url:"URL",emoji:"\u044D\u043C\u043E\u0434\u0437\u0456",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0430 \u0456 \u0447\u0430\u0441",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0447\u0430\u0441",duration:"ISO \u043F\u0440\u0430\u0446\u044F\u0433\u043B\u0430\u0441\u0446\u044C",ipv4:"IPv4 \u0430\u0434\u0440\u0430\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0430\u0441",cidrv4:"IPv4 \u0434\u044B\u044F\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u044B\u044F\u043F\u0430\u0437\u043E\u043D",base64:"\u0440\u0430\u0434\u043E\u043A \u0443 \u0444\u0430\u0440\u043C\u0430\u0446\u0435 base64",base64url:"\u0440\u0430\u0434\u043E\u043A \u0443 \u0444\u0430\u0440\u043C\u0430\u0446\u0435 base64url",json_string:"JSON \u0440\u0430\u0434\u043E\u043A",e164:"\u043D\u0443\u043C\u0430\u0440 E.164",jwt:"JWT",template_literal:"\u0443\u0432\u043E\u0434"},o={nan:"NaN",number:"\u043B\u0456\u043A",array:"\u043C\u0430\u0441\u0456\u045E"};return n=>{var i,a,c,u,l;switch(n.code){case"invalid_type":{let d=(i=o[n.expected])!=null?i:n.expected,s=P(n.input),f=(a=o[s])!=null?a:s;return/^[A-Z]/.test(n.expected)?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u045E\u0441\u044F instanceof ${n.expected}, \u0430\u0442\u0440\u044B\u043C\u0430\u043D\u0430 ${f}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u045E\u0441\u044F ${d}, \u0430\u0442\u0440\u044B\u043C\u0430\u043D\u0430 ${f}`}case"invalid_value":return n.values.length===1?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F ${S(n.values[0])}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0432\u0430\u0440\u044B\u044F\u043D\u0442: \u0447\u0430\u043A\u0430\u045E\u0441\u044F \u0430\u0434\u0437\u0456\u043D \u0437 ${$(n.values,"|")}`;case"too_big":{let d=n.inclusive?"<=":"<",s=e(n.origin);if(s){let f=Number(n.maximum),p=J_(f,s.unit.one,s.unit.few,s.unit.many);return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u0432\u044F\u043B\u0456\u043A\u0456: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${(c=n.origin)!=null?c:"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${s.verb} ${d}${n.maximum.toString()} ${p}`}return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u0432\u044F\u043B\u0456\u043A\u0456: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${(u=n.origin)!=null?u:"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${d}${n.maximum.toString()}`}case"too_small":{let d=n.inclusive?">=":">",s=e(n.origin);if(s){let f=Number(n.minimum),p=J_(f,s.unit.one,s.unit.few,s.unit.many);return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u043C\u0430\u043B\u044B: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${s.verb} ${d}${n.minimum.toString()} ${p}`}return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u043C\u0430\u043B\u044B: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${d}${n.minimum.toString()}`}case"invalid_format":{let d=n;return d.format==="starts_with"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u043F\u0430\u0447\u044B\u043D\u0430\u0446\u0446\u0430 \u0437 "${d.prefix}"`:d.format==="ends_with"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0437\u0430\u043A\u0430\u043D\u0447\u0432\u0430\u0446\u0446\u0430 \u043D\u0430 "${d.suffix}"`:d.format==="includes"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0437\u043C\u044F\u0448\u0447\u0430\u0446\u044C "${d.includes}"`:d.format==="regex"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0430\u0434\u043F\u0430\u0432\u044F\u0434\u0430\u0446\u044C \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${d.pattern}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B ${(l=r[d.format])!=null?l:n.format}`}case"not_multiple_of":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043B\u0456\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0431\u044B\u0446\u044C \u043A\u0440\u0430\u0442\u043D\u044B\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u0430\u0437\u043D\u0430\u043D\u044B ${n.keys.length>1?"\u043A\u043B\u044E\u0447\u044B":"\u043A\u043B\u044E\u0447"}: ${$(n.keys,", ")}`;case"invalid_key":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043A\u043B\u044E\u0447 \u0443 ${n.origin}`;case"invalid_union":return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434";case"invalid_element":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u0430\u0435 \u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435 \u045E ${n.origin}`;default:return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434"}}};function H_(){return{localeError:Uz()}}var Zz=()=>{let t={string:{unit:"\u0441\u0438\u043C\u0432\u043E\u043B\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},file:{unit:"\u0431\u0430\u0439\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},array:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},set:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u0432\u0445\u043E\u0434",email:"\u0438\u043C\u0435\u0439\u043B \u0430\u0434\u0440\u0435\u0441",url:"URL",emoji:"\u0435\u043C\u043E\u0434\u0436\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0432\u0440\u0435\u043C\u0435",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0432\u0440\u0435\u043C\u0435",duration:"ISO \u043F\u0440\u043E\u0434\u044A\u043B\u0436\u0438\u0442\u0435\u043B\u043D\u043E\u0441\u0442",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441",cidrv4:"IPv4 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",base64:"base64-\u043A\u043E\u0434\u0438\u0440\u0430\u043D \u043D\u0438\u0437",base64url:"base64url-\u043A\u043E\u0434\u0438\u0440\u0430\u043D \u043D\u0438\u0437",json_string:"JSON \u043D\u0438\u0437",e164:"E.164 \u043D\u043E\u043C\u0435\u0440",jwt:"JWT",template_literal:"\u0432\u0445\u043E\u0434"},o={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0438\u0432"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D instanceof ${n.expected}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D ${p}`:`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D ${s}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D ${p}`}case"invalid_value":return n.values.length===1?`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D ${S(n.values[0])}`:`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430 \u043E\u043F\u0446\u0438\u044F: \u043E\u0447\u0430\u043A\u0432\u0430\u043D\u043E \u0435\u0434\u043D\u043E \u043E\u0442 ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`\u0422\u0432\u044A\u0440\u0434\u0435 \u0433\u043E\u043B\u044F\u043C\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${(c=n.origin)!=null?c:"\u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442"} \u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430 ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430"}`:`\u0422\u0432\u044A\u0440\u0434\u0435 \u0433\u043E\u043B\u044F\u043C\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${(l=n.origin)!=null?l:"\u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442"} \u0434\u0430 \u0431\u044A\u0434\u0435 ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`\u0422\u0432\u044A\u0440\u0434\u0435 \u043C\u0430\u043B\u043A\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${n.origin} \u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430 ${s}${n.minimum.toString()} ${f.unit}`:`\u0422\u0432\u044A\u0440\u0434\u0435 \u043C\u0430\u043B\u043A\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${n.origin} \u0434\u0430 \u0431\u044A\u0434\u0435 ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;if(s.format==="starts_with")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0437\u0430\u043F\u043E\u0447\u0432\u0430 \u0441 "${s.prefix}"`;if(s.format==="ends_with")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0437\u0430\u0432\u044A\u0440\u0448\u0432\u0430 \u0441 "${s.suffix}"`;if(s.format==="includes")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0432\u043A\u043B\u044E\u0447\u0432\u0430 "${s.includes}"`;if(s.format==="regex")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0441\u044A\u0432\u043F\u0430\u0434\u0430 \u0441 ${s.pattern}`;let f="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D";return s.format==="emoji"&&(f="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),s.format==="datetime"&&(f="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),s.format==="date"&&(f="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430"),s.format==="time"&&(f="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),s.format==="duration"&&(f="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430"),`${f} ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E \u0447\u0438\u0441\u043B\u043E: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0431\u044A\u0434\u0435 \u043A\u0440\u0430\u0442\u043D\u043E \u043D\u0430 ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0437\u043F\u043E\u0437\u043D\u0430\u0442${n.keys.length>1?"\u0438":""} \u043A\u043B\u044E\u0447${n.keys.length>1?"\u043E\u0432\u0435":""}: ${$(n.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043A\u043B\u044E\u0447 \u0432 ${n.origin}`;case"invalid_union":return"\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434";case"invalid_element":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430 \u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442 \u0432 ${n.origin}`;default:return"\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434"}}};function W_(){return{localeError:Zz()}}var Az=()=>{let t={string:{unit:"car\xE0cters",verb:"contenir"},file:{unit:"bytes",verb:"contenir"},array:{unit:"elements",verb:"contenir"},set:{unit:"elements",verb:"contenir"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"entrada",email:"adre\xE7a electr\xF2nica",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i hora ISO",date:"data ISO",time:"hora ISO",duration:"durada ISO",ipv4:"adre\xE7a IPv4",ipv6:"adre\xE7a IPv6",cidrv4:"rang IPv4",cidrv6:"rang IPv6",base64:"cadena codificada en base64",base64url:"cadena codificada en base64url",json_string:"cadena JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},o={nan:"NaN"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Tipus inv\xE0lid: s'esperava instanceof ${n.expected}, s'ha rebut ${p}`:`Tipus inv\xE0lid: s'esperava ${s}, s'ha rebut ${p}`}case"invalid_value":return n.values.length===1?`Valor inv\xE0lid: s'esperava ${S(n.values[0])}`:`Opci\xF3 inv\xE0lida: s'esperava una de ${$(n.values," o ")}`;case"too_big":{let s=n.inclusive?"com a m\xE0xim":"menys de",f=e(n.origin);return f?`Massa gran: s'esperava que ${(c=n.origin)!=null?c:"el valor"} contingu\xE9s ${s} ${n.maximum.toString()} ${(u=f.unit)!=null?u:"elements"}`:`Massa gran: s'esperava que ${(l=n.origin)!=null?l:"el valor"} fos ${s} ${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?"com a m\xEDnim":"m\xE9s de",f=e(n.origin);return f?`Massa petit: s'esperava que ${n.origin} contingu\xE9s ${s} ${n.minimum.toString()} ${f.unit}`:`Massa petit: s'esperava que ${n.origin} fos ${s} ${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`Format inv\xE0lid: ha de comen\xE7ar amb "${s.prefix}"`:s.format==="ends_with"?`Format inv\xE0lid: ha d'acabar amb "${s.suffix}"`:s.format==="includes"?`Format inv\xE0lid: ha d'incloure "${s.includes}"`:s.format==="regex"?`Format inv\xE0lid: ha de coincidir amb el patr\xF3 ${s.pattern}`:`Format inv\xE0lid per a ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`N\xFAmero inv\xE0lid: ha de ser m\xFAltiple de ${n.divisor}`;case"unrecognized_keys":return`Clau${n.keys.length>1?"s":""} no reconeguda${n.keys.length>1?"s":""}: ${$(n.keys,", ")}`;case"invalid_key":return`Clau inv\xE0lida a ${n.origin}`;case"invalid_union":return"Entrada inv\xE0lida";case"invalid_element":return`Element inv\xE0lid a ${n.origin}`;default:return"Entrada inv\xE0lida"}}};function B_(){return{localeError:Az()}}var Mz=()=>{let t={string:{unit:"znak\u016F",verb:"m\xEDt"},file:{unit:"bajt\u016F",verb:"m\xEDt"},array:{unit:"prvk\u016F",verb:"m\xEDt"},set:{unit:"prvk\u016F",verb:"m\xEDt"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"regul\xE1rn\xED v\xFDraz",email:"e-mailov\xE1 adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"datum a \u010Das ve form\xE1tu ISO",date:"datum ve form\xE1tu ISO",time:"\u010Das ve form\xE1tu ISO",duration:"doba trv\xE1n\xED ISO",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"rozsah IPv4",cidrv6:"rozsah IPv6",base64:"\u0159et\u011Bzec zak\xF3dovan\xFD ve form\xE1tu base64",base64url:"\u0159et\u011Bzec zak\xF3dovan\xFD ve form\xE1tu base64url",json_string:"\u0159et\u011Bzec ve form\xE1tu JSON",e164:"\u010D\xEDslo E.164",jwt:"JWT",template_literal:"vstup"},o={nan:"NaN",number:"\u010D\xEDslo",string:"\u0159et\u011Bzec",function:"funkce",array:"pole"};return n=>{var i,a,c,u,l,d,s,f,p;switch(n.code){case"invalid_type":{let m=(i=o[n.expected])!=null?i:n.expected,h=P(n.input),v=(a=o[h])!=null?a:h;return/^[A-Z]/.test(n.expected)?`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no instanceof ${n.expected}, obdr\u017Eeno ${v}`:`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${m}, obdr\u017Eeno ${v}`}case"invalid_value":return n.values.length===1?`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${S(n.values[0])}`:`Neplatn\xE1 mo\u017Enost: o\u010Dek\xE1v\xE1na jedna z hodnot ${$(n.values,"|")}`;case"too_big":{let m=n.inclusive?"<=":"<",h=e(n.origin);return h?`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${(c=n.origin)!=null?c:"hodnota"} mus\xED m\xEDt ${m}${n.maximum.toString()} ${(u=h.unit)!=null?u:"prvk\u016F"}`:`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${(l=n.origin)!=null?l:"hodnota"} mus\xED b\xFDt ${m}${n.maximum.toString()}`}case"too_small":{let m=n.inclusive?">=":">",h=e(n.origin);return h?`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${(d=n.origin)!=null?d:"hodnota"} mus\xED m\xEDt ${m}${n.minimum.toString()} ${(s=h.unit)!=null?s:"prvk\u016F"}`:`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${(f=n.origin)!=null?f:"hodnota"} mus\xED b\xFDt ${m}${n.minimum.toString()}`}case"invalid_format":{let m=n;return m.format==="starts_with"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED za\u010D\xEDnat na "${m.prefix}"`:m.format==="ends_with"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED kon\u010Dit na "${m.suffix}"`:m.format==="includes"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED obsahovat "${m.includes}"`:m.format==="regex"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED odpov\xEDdat vzoru ${m.pattern}`:`Neplatn\xFD form\xE1t ${(p=r[m.format])!=null?p:n.format}`}case"not_multiple_of":return`Neplatn\xE9 \u010D\xEDslo: mus\xED b\xFDt n\xE1sobkem ${n.divisor}`;case"unrecognized_keys":return`Nezn\xE1m\xE9 kl\xED\u010De: ${$(n.keys,", ")}`;case"invalid_key":return`Neplatn\xFD kl\xED\u010D v ${n.origin}`;case"invalid_union":return"Neplatn\xFD vstup";case"invalid_element":return`Neplatn\xE1 hodnota v ${n.origin}`;default:return"Neplatn\xFD vstup"}}};function G_(){return{localeError:Mz()}}var qz=()=>{let t={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"input",email:"e-mailadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkesl\xE6t",date:"ISO-dato",time:"ISO-klokkesl\xE6t",duration:"ISO-varighed",ipv4:"IPv4-omr\xE5de",ipv6:"IPv6-omr\xE5de",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodet streng",base64url:"base64url-kodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},o={nan:"NaN",string:"streng",number:"tal",boolean:"boolean",array:"liste",object:"objekt",set:"s\xE6t",file:"fil"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Ugyldigt input: forventede instanceof ${n.expected}, fik ${p}`:`Ugyldigt input: forventede ${s}, fik ${p}`}case"invalid_value":return n.values.length===1?`Ugyldig v\xE6rdi: forventede ${S(n.values[0])}`:`Ugyldigt valg: forventede en af f\xF8lgende ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin),p=(c=o[n.origin])!=null?c:n.origin;return f?`For stor: forventede ${p!=null?p:"value"} ${f.verb} ${s} ${n.maximum.toString()} ${(u=f.unit)!=null?u:"elementer"}`:`For stor: forventede ${p!=null?p:"value"} havde ${s} ${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin),p=(l=o[n.origin])!=null?l:n.origin;return f?`For lille: forventede ${p} ${f.verb} ${s} ${n.minimum.toString()} ${f.unit}`:`For lille: forventede ${p} havde ${s} ${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`Ugyldig streng: skal starte med "${s.prefix}"`:s.format==="ends_with"?`Ugyldig streng: skal ende med "${s.suffix}"`:s.format==="includes"?`Ugyldig streng: skal indeholde "${s.includes}"`:s.format==="regex"?`Ugyldig streng: skal matche m\xF8nsteret ${s.pattern}`:`Ugyldig ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`Ugyldigt tal: skal v\xE6re deleligt med ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"Ukendte n\xF8gler":"Ukendt n\xF8gle"}: ${$(n.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8gle i ${n.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig v\xE6rdi i ${n.origin}`;default:return"Ugyldigt input"}}};function K_(){return{localeError:qz()}}var Lz=()=>{let t={string:{unit:"Zeichen",verb:"zu haben"},file:{unit:"Bytes",verb:"zu haben"},array:{unit:"Elemente",verb:"zu haben"},set:{unit:"Elemente",verb:"zu haben"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"Eingabe",email:"E-Mail-Adresse",url:"URL",emoji:"Emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-Datum und -Uhrzeit",date:"ISO-Datum",time:"ISO-Uhrzeit",duration:"ISO-Dauer",ipv4:"IPv4-Adresse",ipv6:"IPv6-Adresse",cidrv4:"IPv4-Bereich",cidrv6:"IPv6-Bereich",base64:"Base64-codierter String",base64url:"Base64-URL-codierter String",json_string:"JSON-String",e164:"E.164-Nummer",jwt:"JWT",template_literal:"Eingabe"},o={nan:"NaN",number:"Zahl",array:"Array"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Ung\xFCltige Eingabe: erwartet instanceof ${n.expected}, erhalten ${p}`:`Ung\xFCltige Eingabe: erwartet ${s}, erhalten ${p}`}case"invalid_value":return n.values.length===1?`Ung\xFCltige Eingabe: erwartet ${S(n.values[0])}`:`Ung\xFCltige Option: erwartet eine von ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`Zu gro\xDF: erwartet, dass ${(c=n.origin)!=null?c:"Wert"} ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"Elemente"} hat`:`Zu gro\xDF: erwartet, dass ${(l=n.origin)!=null?l:"Wert"} ${s}${n.maximum.toString()} ist`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`Zu klein: erwartet, dass ${n.origin} ${s}${n.minimum.toString()} ${f.unit} hat`:`Zu klein: erwartet, dass ${n.origin} ${s}${n.minimum.toString()} ist`}case"invalid_format":{let s=n;return s.format==="starts_with"?`Ung\xFCltiger String: muss mit "${s.prefix}" beginnen`:s.format==="ends_with"?`Ung\xFCltiger String: muss mit "${s.suffix}" enden`:s.format==="includes"?`Ung\xFCltiger String: muss "${s.includes}" enthalten`:s.format==="regex"?`Ung\xFCltiger String: muss dem Muster ${s.pattern} entsprechen`:`Ung\xFCltig: ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`Ung\xFCltige Zahl: muss ein Vielfaches von ${n.divisor} sein`;case"unrecognized_keys":return`${n.keys.length>1?"Unbekannte Schl\xFCssel":"Unbekannter Schl\xFCssel"}: ${$(n.keys,", ")}`;case"invalid_key":return`Ung\xFCltiger Schl\xFCssel in ${n.origin}`;case"invalid_union":return"Ung\xFCltige Eingabe";case"invalid_element":return`Ung\xFCltiger Wert in ${n.origin}`;default:return"Ung\xFCltige Eingabe"}}};function X_(){return{localeError:Lz()}}var Vz=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},o={nan:"NaN"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return`Invalid input: expected ${s}, received ${p}`}case"invalid_value":return n.values.length===1?`Invalid input: expected ${S(n.values[0])}`:`Invalid option: expected one of ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`Too big: expected ${(c=n.origin)!=null?c:"value"} to have ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"elements"}`:`Too big: expected ${(l=n.origin)!=null?l:"value"} to be ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`Too small: expected ${n.origin} to have ${s}${n.minimum.toString()} ${f.unit}`:`Too small: expected ${n.origin} to be ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`Invalid string: must start with "${s.prefix}"`:s.format==="ends_with"?`Invalid string: must end with "${s.suffix}"`:s.format==="includes"?`Invalid string: must include "${s.includes}"`:s.format==="regex"?`Invalid string: must match pattern ${s.pattern}`:`Invalid ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${$(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function pu(){return{localeError:Vz()}}var Fz=()=>{let t={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"enigo",email:"retadreso",url:"URL",emoji:"emo\u011Dio",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datotempo",date:"ISO-dato",time:"ISO-tempo",duration:"ISO-da\u016Dro",ipv4:"IPv4-adreso",ipv6:"IPv6-adreso",cidrv4:"IPv4-rango",cidrv6:"IPv6-rango",base64:"64-ume kodita karaktraro",base64url:"URL-64-ume kodita karaktraro",json_string:"JSON-karaktraro",e164:"E.164-nombro",jwt:"JWT",template_literal:"enigo"},o={nan:"NaN",number:"nombro",array:"tabelo",null:"senvalora"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Nevalida enigo: atendi\u011Dis instanceof ${n.expected}, ricevi\u011Dis ${p}`:`Nevalida enigo: atendi\u011Dis ${s}, ricevi\u011Dis ${p}`}case"invalid_value":return n.values.length===1?`Nevalida enigo: atendi\u011Dis ${S(n.values[0])}`:`Nevalida opcio: atendi\u011Dis unu el ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`Tro granda: atendi\u011Dis ke ${(c=n.origin)!=null?c:"valoro"} havu ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"elementojn"}`:`Tro granda: atendi\u011Dis ke ${(l=n.origin)!=null?l:"valoro"} havu ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`Tro malgranda: atendi\u011Dis ke ${n.origin} havu ${s}${n.minimum.toString()} ${f.unit}`:`Tro malgranda: atendi\u011Dis ke ${n.origin} estu ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`Nevalida karaktraro: devas komenci\u011Di per "${s.prefix}"`:s.format==="ends_with"?`Nevalida karaktraro: devas fini\u011Di per "${s.suffix}"`:s.format==="includes"?`Nevalida karaktraro: devas inkluzivi "${s.includes}"`:s.format==="regex"?`Nevalida karaktraro: devas kongrui kun la modelo ${s.pattern}`:`Nevalida ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${n.divisor}`;case"unrecognized_keys":return`Nekonata${n.keys.length>1?"j":""} \u015Dlosilo${n.keys.length>1?"j":""}: ${$(n.keys,", ")}`;case"invalid_key":return`Nevalida \u015Dlosilo en ${n.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${n.origin}`;default:return"Nevalida enigo"}}};function Y_(){return{localeError:Fz()}}var Jz=()=>{let t={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"entrada",email:"direcci\xF3n de correo electr\xF3nico",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"fecha y hora ISO",date:"fecha ISO",time:"hora ISO",duration:"duraci\xF3n ISO",ipv4:"direcci\xF3n IPv4",ipv6:"direcci\xF3n IPv6",cidrv4:"rango IPv4",cidrv6:"rango IPv6",base64:"cadena codificada en base64",base64url:"URL codificada en base64",json_string:"cadena JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},o={nan:"NaN",string:"texto",number:"n\xFAmero",boolean:"booleano",array:"arreglo",object:"objeto",set:"conjunto",file:"archivo",date:"fecha",bigint:"n\xFAmero grande",symbol:"s\xEDmbolo",undefined:"indefinido",null:"nulo",function:"funci\xF3n",map:"mapa",record:"registro",tuple:"tupla",enum:"enumeraci\xF3n",union:"uni\xF3n",literal:"literal",promise:"promesa",void:"vac\xEDo",never:"nunca",unknown:"desconocido",any:"cualquiera"};return n=>{var i,a,c,u,l,d,s,f;switch(n.code){case"invalid_type":{let p=(i=o[n.expected])!=null?i:n.expected,m=P(n.input),h=(a=o[m])!=null?a:m;return/^[A-Z]/.test(n.expected)?`Entrada inv\xE1lida: se esperaba instanceof ${n.expected}, recibido ${h}`:`Entrada inv\xE1lida: se esperaba ${p}, recibido ${h}`}case"invalid_value":return n.values.length===1?`Entrada inv\xE1lida: se esperaba ${S(n.values[0])}`:`Opci\xF3n inv\xE1lida: se esperaba una de ${$(n.values,"|")}`;case"too_big":{let p=n.inclusive?"<=":"<",m=e(n.origin),h=(c=o[n.origin])!=null?c:n.origin;return m?`Demasiado grande: se esperaba que ${h!=null?h:"valor"} tuviera ${p}${n.maximum.toString()} ${(u=m.unit)!=null?u:"elementos"}`:`Demasiado grande: se esperaba que ${h!=null?h:"valor"} fuera ${p}${n.maximum.toString()}`}case"too_small":{let p=n.inclusive?">=":">",m=e(n.origin),h=(l=o[n.origin])!=null?l:n.origin;return m?`Demasiado peque\xF1o: se esperaba que ${h} tuviera ${p}${n.minimum.toString()} ${m.unit}`:`Demasiado peque\xF1o: se esperaba que ${h} fuera ${p}${n.minimum.toString()}`}case"invalid_format":{let p=n;return p.format==="starts_with"?`Cadena inv\xE1lida: debe comenzar con "${p.prefix}"`:p.format==="ends_with"?`Cadena inv\xE1lida: debe terminar en "${p.suffix}"`:p.format==="includes"?`Cadena inv\xE1lida: debe incluir "${p.includes}"`:p.format==="regex"?`Cadena inv\xE1lida: debe coincidir con el patr\xF3n ${p.pattern}`:`Inv\xE1lido ${(d=r[p.format])!=null?d:n.format}`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: debe ser m\xFAltiplo de ${n.divisor}`;case"unrecognized_keys":return`Llave${n.keys.length>1?"s":""} desconocida${n.keys.length>1?"s":""}: ${$(n.keys,", ")}`;case"invalid_key":return`Llave inv\xE1lida en ${(s=o[n.origin])!=null?s:n.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido en ${(f=o[n.origin])!=null?f:n.origin}`;default:return"Entrada inv\xE1lida"}}};function Q_(){return{localeError:Jz()}}var Hz=()=>{let t={string:{unit:"\u06A9\u0627\u0631\u0627\u06A9\u062A\u0631",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},file:{unit:"\u0628\u0627\u06CC\u062A",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},array:{unit:"\u0622\u06CC\u062A\u0645",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},set:{unit:"\u0622\u06CC\u062A\u0645",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u0648\u0631\u0648\u062F\u06CC",email:"\u0622\u062F\u0631\u0633 \u0627\u06CC\u0645\u06CC\u0644",url:"URL",emoji:"\u0627\u06CC\u0645\u0648\u062C\u06CC",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u062A\u0627\u0631\u06CC\u062E \u0648 \u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",date:"\u062A\u0627\u0631\u06CC\u062E \u0627\u06CC\u0632\u0648",time:"\u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",duration:"\u0645\u062F\u062A \u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",ipv4:"IPv4 \u0622\u062F\u0631\u0633",ipv6:"IPv6 \u0622\u062F\u0631\u0633",cidrv4:"IPv4 \u062F\u0627\u0645\u0646\u0647",cidrv6:"IPv6 \u062F\u0627\u0645\u0646\u0647",base64:"base64-encoded \u0631\u0634\u062A\u0647",base64url:"base64url-encoded \u0631\u0634\u062A\u0647",json_string:"JSON \u0631\u0634\u062A\u0647",e164:"E.164 \u0639\u062F\u062F",jwt:"JWT",template_literal:"\u0648\u0631\u0648\u062F\u06CC"},o={nan:"NaN",number:"\u0639\u062F\u062F",array:"\u0622\u0631\u0627\u06CC\u0647"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A instanceof ${n.expected} \u0645\u06CC\u200C\u0628\u0648\u062F\u060C ${p} \u062F\u0631\u06CC\u0627\u0641\u062A \u0634\u062F`:`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${s} \u0645\u06CC\u200C\u0628\u0648\u062F\u060C ${p} \u062F\u0631\u06CC\u0627\u0641\u062A \u0634\u062F`}case"invalid_value":return n.values.length===1?`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${S(n.values[0])} \u0645\u06CC\u200C\u0628\u0648\u062F`:`\u06AF\u0632\u06CC\u0646\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A \u06CC\u06A9\u06CC \u0627\u0632 ${$(n.values,"|")} \u0645\u06CC\u200C\u0628\u0648\u062F`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${(c=n.origin)!=null?c:"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"\u0639\u0646\u0635\u0631"} \u0628\u0627\u0634\u062F`:`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${(l=n.origin)!=null?l:"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${s}${n.maximum.toString()} \u0628\u0627\u0634\u062F`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${n.origin} \u0628\u0627\u06CC\u062F ${s}${n.minimum.toString()} ${f.unit} \u0628\u0627\u0634\u062F`:`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${n.origin} \u0628\u0627\u06CC\u062F ${s}${n.minimum.toString()} \u0628\u0627\u0634\u062F`}case"invalid_format":{let s=n;return s.format==="starts_with"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 "${s.prefix}" \u0634\u0631\u0648\u0639 \u0634\u0648\u062F`:s.format==="ends_with"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 "${s.suffix}" \u062A\u0645\u0627\u0645 \u0634\u0648\u062F`:s.format==="includes"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0634\u0627\u0645\u0644 "${s.includes}" \u0628\u0627\u0634\u062F`:s.format==="regex"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 \u0627\u0644\u06AF\u0648\u06CC ${s.pattern} \u0645\u0637\u0627\u0628\u0642\u062A \u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F`:`${(d=r[s.format])!=null?d:n.format} \u0646\u0627\u0645\u0639\u062A\u0628\u0631`}case"not_multiple_of":return`\u0639\u062F\u062F \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0645\u0636\u0631\u0628 ${n.divisor} \u0628\u0627\u0634\u062F`;case"unrecognized_keys":return`\u06A9\u0644\u06CC\u062F${n.keys.length>1?"\u0647\u0627\u06CC":""} \u0646\u0627\u0634\u0646\u0627\u0633: ${$(n.keys,", ")}`;case"invalid_key":return`\u06A9\u0644\u06CC\u062F \u0646\u0627\u0634\u0646\u0627\u0633 \u062F\u0631 ${n.origin}`;case"invalid_union":return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631";case"invalid_element":return`\u0645\u0642\u062F\u0627\u0631 \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u062F\u0631 ${n.origin}`;default:return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631"}}};function ey(){return{localeError:Hz()}}var Wz=()=>{let t={string:{unit:"merkki\xE4",subject:"merkkijonon"},file:{unit:"tavua",subject:"tiedoston"},array:{unit:"alkiota",subject:"listan"},set:{unit:"alkiota",subject:"joukon"},number:{unit:"",subject:"luvun"},bigint:{unit:"",subject:"suuren kokonaisluvun"},int:{unit:"",subject:"kokonaisluvun"},date:{unit:"",subject:"p\xE4iv\xE4m\xE4\xE4r\xE4n"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"s\xE4\xE4nn\xF6llinen lauseke",email:"s\xE4hk\xF6postiosoite",url:"URL-osoite",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-aikaleima",date:"ISO-p\xE4iv\xE4m\xE4\xE4r\xE4",time:"ISO-aika",duration:"ISO-kesto",ipv4:"IPv4-osoite",ipv6:"IPv6-osoite",cidrv4:"IPv4-alue",cidrv6:"IPv6-alue",base64:"base64-koodattu merkkijono",base64url:"base64url-koodattu merkkijono",json_string:"JSON-merkkijono",e164:"E.164-luku",jwt:"JWT",template_literal:"templaattimerkkijono"},o={nan:"NaN"};return n=>{var i,a,c;switch(n.code){case"invalid_type":{let u=(i=o[n.expected])!=null?i:n.expected,l=P(n.input),d=(a=o[l])!=null?a:l;return/^[A-Z]/.test(n.expected)?`Virheellinen tyyppi: odotettiin instanceof ${n.expected}, oli ${d}`:`Virheellinen tyyppi: odotettiin ${u}, oli ${d}`}case"invalid_value":return n.values.length===1?`Virheellinen sy\xF6te: t\xE4ytyy olla ${S(n.values[0])}`:`Virheellinen valinta: t\xE4ytyy olla yksi seuraavista: ${$(n.values,"|")}`;case"too_big":{let u=n.inclusive?"<=":"<",l=e(n.origin);return l?`Liian suuri: ${l.subject} t\xE4ytyy olla ${u}${n.maximum.toString()} ${l.unit}`.trim():`Liian suuri: arvon t\xE4ytyy olla ${u}${n.maximum.toString()}`}case"too_small":{let u=n.inclusive?">=":">",l=e(n.origin);return l?`Liian pieni: ${l.subject} t\xE4ytyy olla ${u}${n.minimum.toString()} ${l.unit}`.trim():`Liian pieni: arvon t\xE4ytyy olla ${u}${n.minimum.toString()}`}case"invalid_format":{let u=n;return u.format==="starts_with"?`Virheellinen sy\xF6te: t\xE4ytyy alkaa "${u.prefix}"`:u.format==="ends_with"?`Virheellinen sy\xF6te: t\xE4ytyy loppua "${u.suffix}"`:u.format==="includes"?`Virheellinen sy\xF6te: t\xE4ytyy sis\xE4lt\xE4\xE4 "${u.includes}"`:u.format==="regex"?`Virheellinen sy\xF6te: t\xE4ytyy vastata s\xE4\xE4nn\xF6llist\xE4 lauseketta ${u.pattern}`:`Virheellinen ${(c=r[u.format])!=null?c:n.format}`}case"not_multiple_of":return`Virheellinen luku: t\xE4ytyy olla luvun ${n.divisor} monikerta`;case"unrecognized_keys":return`${n.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${$(n.keys,", ")}`;case"invalid_key":return"Virheellinen avain tietueessa";case"invalid_union":return"Virheellinen unioni";case"invalid_element":return"Virheellinen arvo joukossa";default:return"Virheellinen sy\xF6te"}}};function ty(){return{localeError:Wz()}}var Bz=()=>{let t={string:{unit:"caract\xE8res",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"\xE9l\xE9ments",verb:"avoir"},set:{unit:"\xE9l\xE9ments",verb:"avoir"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"entr\xE9e",email:"adresse e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date et heure ISO",date:"date ISO",time:"heure ISO",duration:"dur\xE9e ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"cha\xEEne encod\xE9e en base64",base64url:"cha\xEEne encod\xE9e en base64url",json_string:"cha\xEEne JSON",e164:"num\xE9ro E.164",jwt:"JWT",template_literal:"entr\xE9e"},o={nan:"NaN",number:"nombre",array:"tableau"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Entr\xE9e invalide : instanceof ${n.expected} attendu, ${p} re\xE7u`:`Entr\xE9e invalide : ${s} attendu, ${p} re\xE7u`}case"invalid_value":return n.values.length===1?`Entr\xE9e invalide : ${S(n.values[0])} attendu`:`Option invalide : une valeur parmi ${$(n.values,"|")} attendue`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`Trop grand : ${(c=n.origin)!=null?c:"valeur"} doit ${f.verb} ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"\xE9l\xE9ment(s)"}`:`Trop grand : ${(l=n.origin)!=null?l:"valeur"} doit \xEAtre ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`Trop petit : ${n.origin} doit ${f.verb} ${s}${n.minimum.toString()} ${f.unit}`:`Trop petit : ${n.origin} doit \xEAtre ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`Cha\xEEne invalide : doit commencer par "${s.prefix}"`:s.format==="ends_with"?`Cha\xEEne invalide : doit se terminer par "${s.suffix}"`:s.format==="includes"?`Cha\xEEne invalide : doit inclure "${s.includes}"`:s.format==="regex"?`Cha\xEEne invalide : doit correspondre au mod\xE8le ${s.pattern}`:`${(d=r[s.format])!=null?d:n.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${n.divisor}`;case"unrecognized_keys":return`Cl\xE9${n.keys.length>1?"s":""} non reconnue${n.keys.length>1?"s":""} : ${$(n.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${n.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${n.origin}`;default:return"Entr\xE9e invalide"}}};function ry(){return{localeError:Bz()}}var Gz=()=>{let t={string:{unit:"caract\xE8res",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"\xE9l\xE9ments",verb:"avoir"},set:{unit:"\xE9l\xE9ments",verb:"avoir"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"entr\xE9e",email:"adresse courriel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date-heure ISO",date:"date ISO",time:"heure ISO",duration:"dur\xE9e ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"cha\xEEne encod\xE9e en base64",base64url:"cha\xEEne encod\xE9e en base64url",json_string:"cha\xEEne JSON",e164:"num\xE9ro E.164",jwt:"JWT",template_literal:"entr\xE9e"},o={nan:"NaN"};return n=>{var i,a,c,u,l;switch(n.code){case"invalid_type":{let d=(i=o[n.expected])!=null?i:n.expected,s=P(n.input),f=(a=o[s])!=null?a:s;return/^[A-Z]/.test(n.expected)?`Entr\xE9e invalide : attendu instanceof ${n.expected}, re\xE7u ${f}`:`Entr\xE9e invalide : attendu ${d}, re\xE7u ${f}`}case"invalid_value":return n.values.length===1?`Entr\xE9e invalide : attendu ${S(n.values[0])}`:`Option invalide : attendu l'une des valeurs suivantes ${$(n.values,"|")}`;case"too_big":{let d=n.inclusive?"\u2264":"<",s=e(n.origin);return s?`Trop grand : attendu que ${(c=n.origin)!=null?c:"la valeur"} ait ${d}${n.maximum.toString()} ${s.unit}`:`Trop grand : attendu que ${(u=n.origin)!=null?u:"la valeur"} soit ${d}${n.maximum.toString()}`}case"too_small":{let d=n.inclusive?"\u2265":">",s=e(n.origin);return s?`Trop petit : attendu que ${n.origin} ait ${d}${n.minimum.toString()} ${s.unit}`:`Trop petit : attendu que ${n.origin} soit ${d}${n.minimum.toString()}`}case"invalid_format":{let d=n;return d.format==="starts_with"?`Cha\xEEne invalide : doit commencer par "${d.prefix}"`:d.format==="ends_with"?`Cha\xEEne invalide : doit se terminer par "${d.suffix}"`:d.format==="includes"?`Cha\xEEne invalide : doit inclure "${d.includes}"`:d.format==="regex"?`Cha\xEEne invalide : doit correspondre au motif ${d.pattern}`:`${(l=r[d.format])!=null?l:n.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${n.divisor}`;case"unrecognized_keys":return`Cl\xE9${n.keys.length>1?"s":""} non reconnue${n.keys.length>1?"s":""} : ${$(n.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${n.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${n.origin}`;default:return"Entr\xE9e invalide"}}};function ny(){return{localeError:Gz()}}var Kz=()=>{let t={string:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA",gender:"f"},number:{label:"\u05DE\u05E1\u05E4\u05E8",gender:"m"},boolean:{label:"\u05E2\u05E8\u05DA \u05D1\u05D5\u05DC\u05D9\u05D0\u05E0\u05D9",gender:"m"},bigint:{label:"BigInt",gender:"m"},date:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA",gender:"m"},array:{label:"\u05DE\u05E2\u05E8\u05DA",gender:"m"},object:{label:"\u05D0\u05D5\u05D1\u05D9\u05D9\u05E7\u05D8",gender:"m"},null:{label:"\u05E2\u05E8\u05DA \u05E8\u05D9\u05E7 (null)",gender:"m"},undefined:{label:"\u05E2\u05E8\u05DA \u05DC\u05D0 \u05DE\u05D5\u05D2\u05D3\u05E8 (undefined)",gender:"m"},symbol:{label:"\u05E1\u05D9\u05DE\u05D1\u05D5\u05DC (Symbol)",gender:"m"},function:{label:"\u05E4\u05D5\u05E0\u05E7\u05E6\u05D9\u05D4",gender:"f"},map:{label:"\u05DE\u05E4\u05D4 (Map)",gender:"f"},set:{label:"\u05E7\u05D1\u05D5\u05E6\u05D4 (Set)",gender:"f"},file:{label:"\u05E7\u05D5\u05D1\u05E5",gender:"m"},promise:{label:"Promise",gender:"m"},NaN:{label:"NaN",gender:"m"},unknown:{label:"\u05E2\u05E8\u05DA \u05DC\u05D0 \u05D9\u05D3\u05D5\u05E2",gender:"m"},value:{label:"\u05E2\u05E8\u05DA",gender:"m"}},e={string:{unit:"\u05EA\u05D5\u05D5\u05D9\u05DD",shortLabel:"\u05E7\u05E6\u05E8",longLabel:"\u05D0\u05E8\u05D5\u05DA"},file:{unit:"\u05D1\u05D9\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},array:{unit:"\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},set:{unit:"\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},number:{unit:"",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"}},r=l=>l?t[l]:void 0,o=l=>{let d=r(l);return d?d.label:l!=null?l:t.unknown.label},n=l=>`\u05D4${o(l)}`,i=l=>{var f;let d=r(l);return((f=d==null?void 0:d.gender)!=null?f:"m")==="f"?"\u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05D9\u05D5\u05EA":"\u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA"},a=l=>{var d;return l&&(d=e[l])!=null?d:null},c={regex:{label:"\u05E7\u05DC\u05D8",gender:"m"},email:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA \u05D0\u05D9\u05DE\u05D9\u05D9\u05DC",gender:"f"},url:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA \u05E8\u05E9\u05EA",gender:"f"},emoji:{label:"\u05D0\u05D9\u05DE\u05D5\u05D2'\u05D9",gender:"m"},uuid:{label:"UUID",gender:"m"},nanoid:{label:"nanoid",gender:"m"},guid:{label:"GUID",gender:"m"},cuid:{label:"cuid",gender:"m"},cuid2:{label:"cuid2",gender:"m"},ulid:{label:"ULID",gender:"m"},xid:{label:"XID",gender:"m"},ksuid:{label:"KSUID",gender:"m"},datetime:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA \u05D5\u05D6\u05DE\u05DF ISO",gender:"m"},date:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA ISO",gender:"m"},time:{label:"\u05D6\u05DE\u05DF ISO",gender:"m"},duration:{label:"\u05DE\u05E9\u05DA \u05D6\u05DE\u05DF ISO",gender:"m"},ipv4:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA IPv4",gender:"f"},ipv6:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA IPv6",gender:"f"},cidrv4:{label:"\u05D8\u05D5\u05D5\u05D7 IPv4",gender:"m"},cidrv6:{label:"\u05D8\u05D5\u05D5\u05D7 IPv6",gender:"m"},base64:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D1\u05D1\u05E1\u05D9\u05E1 64",gender:"f"},base64url:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D1\u05D1\u05E1\u05D9\u05E1 64 \u05DC\u05DB\u05EA\u05D5\u05D1\u05D5\u05EA \u05E8\u05E9\u05EA",gender:"f"},json_string:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA JSON",gender:"f"},e164:{label:"\u05DE\u05E1\u05E4\u05E8 E.164",gender:"m"},jwt:{label:"JWT",gender:"m"},ends_with:{label:"\u05E7\u05DC\u05D8",gender:"m"},includes:{label:"\u05E7\u05DC\u05D8",gender:"m"},lowercase:{label:"\u05E7\u05DC\u05D8",gender:"m"},starts_with:{label:"\u05E7\u05DC\u05D8",gender:"m"},uppercase:{label:"\u05E7\u05DC\u05D8",gender:"m"}},u={nan:"NaN"};return l=>{var d,s,f,p,m,h,v,y,w,k,x,b,L,H,he,W,we,Te,de,nt,$t;switch(l.code){case"invalid_type":{let D=l.expected,Ee=(d=u[D!=null?D:""])!=null?d:o(D),bt=P(l.input),Tt=(p=(f=u[bt])!=null?f:(s=t[bt])==null?void 0:s.label)!=null?p:bt;return/^[A-Z]/.test(l.expected)?`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA instanceof ${l.expected}, \u05D4\u05EA\u05E7\u05D1\u05DC ${Tt}`:`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${Ee}, \u05D4\u05EA\u05E7\u05D1\u05DC ${Tt}`}case"invalid_value":{if(l.values.length===1)return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05E2\u05E8\u05DA \u05D7\u05D9\u05D9\u05D1 \u05DC\u05D4\u05D9\u05D5\u05EA ${S(l.values[0])}`;let D=l.values.map(Tt=>S(Tt));if(l.values.length===2)return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05D0\u05E4\u05E9\u05E8\u05D5\u05D9\u05D5\u05EA \u05D4\u05DE\u05EA\u05D0\u05D9\u05DE\u05D5\u05EA \u05D4\u05DF ${D[0]} \u05D0\u05D5 ${D[1]}`;let Ee=D[D.length-1];return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05D0\u05E4\u05E9\u05E8\u05D5\u05D9\u05D5\u05EA \u05D4\u05DE\u05EA\u05D0\u05D9\u05DE\u05D5\u05EA \u05D4\u05DF ${D.slice(0,-1).join(", ")} \u05D0\u05D5 ${Ee}`}case"too_big":{let D=a(l.origin),Ee=n((m=l.origin)!=null?m:"value");if(l.origin==="string")return`${(h=D==null?void 0:D.longLabel)!=null?h:"\u05D0\u05E8\u05D5\u05DA"} \u05DE\u05D3\u05D9: ${Ee} \u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05DB\u05D9\u05DC ${l.maximum.toString()} ${(v=D==null?void 0:D.unit)!=null?v:""} ${l.inclusive?"\u05D0\u05D5 \u05E4\u05D7\u05D5\u05EA":"\u05DC\u05DB\u05DC \u05D4\u05D9\u05D5\u05EA\u05E8"}`.trim();if(l.origin==="number"){let Jt=l.inclusive?`\u05E7\u05D8\u05DF \u05D0\u05D5 \u05E9\u05D5\u05D5\u05D4 \u05DC-${l.maximum}`:`\u05E7\u05D8\u05DF \u05DE-${l.maximum}`;return`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${Ee} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${Jt}`}if(l.origin==="array"||l.origin==="set"){let Jt=l.origin==="set"?"\u05E6\u05E8\u05D9\u05DB\u05D4":"\u05E6\u05E8\u05D9\u05DA",qd=l.inclusive?`${l.maximum} ${(y=D==null?void 0:D.unit)!=null?y:""} \u05D0\u05D5 \u05E4\u05D7\u05D5\u05EA`:`\u05E4\u05D7\u05D5\u05EA \u05DE-${l.maximum} ${(w=D==null?void 0:D.unit)!=null?w:""}`;return`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${Ee} ${Jt} \u05DC\u05D4\u05DB\u05D9\u05DC ${qd}`.trim()}let bt=l.inclusive?"<=":"<",Tt=i((k=l.origin)!=null?k:"value");return D!=null&&D.unit?`${D.longLabel} \u05DE\u05D3\u05D9: ${Ee} ${Tt} ${bt}${l.maximum.toString()} ${D.unit}`:`${(x=D==null?void 0:D.longLabel)!=null?x:"\u05D2\u05D3\u05D5\u05DC"} \u05DE\u05D3\u05D9: ${Ee} ${Tt} ${bt}${l.maximum.toString()}`}case"too_small":{let D=a(l.origin),Ee=n((b=l.origin)!=null?b:"value");if(l.origin==="string")return`${(L=D==null?void 0:D.shortLabel)!=null?L:"\u05E7\u05E6\u05E8"} \u05DE\u05D3\u05D9: ${Ee} \u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05DB\u05D9\u05DC ${l.minimum.toString()} ${(H=D==null?void 0:D.unit)!=null?H:""} ${l.inclusive?"\u05D0\u05D5 \u05D9\u05D5\u05EA\u05E8":"\u05DC\u05E4\u05D7\u05D5\u05EA"}`.trim();if(l.origin==="number"){let Jt=l.inclusive?`\u05D2\u05D3\u05D5\u05DC \u05D0\u05D5 \u05E9\u05D5\u05D5\u05D4 \u05DC-${l.minimum}`:`\u05D2\u05D3\u05D5\u05DC \u05DE-${l.minimum}`;return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${Ee} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${Jt}`}if(l.origin==="array"||l.origin==="set"){let Jt=l.origin==="set"?"\u05E6\u05E8\u05D9\u05DB\u05D4":"\u05E6\u05E8\u05D9\u05DA";if(l.minimum===1&&l.inclusive){let s0=(l.origin==="set","\u05DC\u05E4\u05D7\u05D5\u05EA \u05E4\u05E8\u05D9\u05D8 \u05D0\u05D7\u05D3");return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${Ee} ${Jt} \u05DC\u05D4\u05DB\u05D9\u05DC ${s0}`}let qd=l.inclusive?`${l.minimum} ${(he=D==null?void 0:D.unit)!=null?he:""} \u05D0\u05D5 \u05D9\u05D5\u05EA\u05E8`:`\u05D9\u05D5\u05EA\u05E8 \u05DE-${l.minimum} ${(W=D==null?void 0:D.unit)!=null?W:""}`;return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${Ee} ${Jt} \u05DC\u05D4\u05DB\u05D9\u05DC ${qd}`.trim()}let bt=l.inclusive?">=":">",Tt=i((we=l.origin)!=null?we:"value");return D!=null&&D.unit?`${D.shortLabel} \u05DE\u05D3\u05D9: ${Ee} ${Tt} ${bt}${l.minimum.toString()} ${D.unit}`:`${(Te=D==null?void 0:D.shortLabel)!=null?Te:"\u05E7\u05D8\u05DF"} \u05DE\u05D3\u05D9: ${Ee} ${Tt} ${bt}${l.minimum.toString()}`}case"invalid_format":{let D=l;if(D.format==="starts_with")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D7\u05D9\u05DC \u05D1 "${D.prefix}"`;if(D.format==="ends_with")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05E1\u05EA\u05D9\u05D9\u05DD \u05D1 "${D.suffix}"`;if(D.format==="includes")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05DB\u05DC\u05D5\u05DC "${D.includes}"`;if(D.format==="regex")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D0\u05D9\u05DD \u05DC\u05EA\u05D1\u05E0\u05D9\u05EA ${D.pattern}`;let Ee=c[D.format],bt=(de=Ee==null?void 0:Ee.label)!=null?de:D.format,Jt=((nt=Ee==null?void 0:Ee.gender)!=null?nt:"m")==="f"?"\u05EA\u05E7\u05D9\u05E0\u05D4":"\u05EA\u05E7\u05D9\u05DF";return`${bt} \u05DC\u05D0 ${Jt}`}case"not_multiple_of":return`\u05DE\u05E1\u05E4\u05E8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D7\u05D9\u05D9\u05D1 \u05DC\u05D4\u05D9\u05D5\u05EA \u05DE\u05DB\u05E4\u05DC\u05D4 \u05E9\u05DC ${l.divisor}`;case"unrecognized_keys":return`\u05DE\u05E4\u05EA\u05D7${l.keys.length>1?"\u05D5\u05EA":""} \u05DC\u05D0 \u05DE\u05D6\u05D5\u05D4${l.keys.length>1?"\u05D9\u05DD":"\u05D4"}: ${$(l.keys,", ")}`;case"invalid_key":return"\u05E9\u05D3\u05D4 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF \u05D1\u05D0\u05D5\u05D1\u05D9\u05D9\u05E7\u05D8";case"invalid_union":return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF";case"invalid_element":return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF \u05D1${n(($t=l.origin)!=null?$t:"array")}`;default:return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF"}}};function oy(){return{localeError:Kz()}}var Xz=()=>{let t={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"bemenet",email:"email c\xEDm",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO id\u0151b\xE9lyeg",date:"ISO d\xE1tum",time:"ISO id\u0151",duration:"ISO id\u0151intervallum",ipv4:"IPv4 c\xEDm",ipv6:"IPv6 c\xEDm",cidrv4:"IPv4 tartom\xE1ny",cidrv6:"IPv6 tartom\xE1ny",base64:"base64-k\xF3dolt string",base64url:"base64url-k\xF3dolt string",json_string:"JSON string",e164:"E.164 sz\xE1m",jwt:"JWT",template_literal:"bemenet"},o={nan:"NaN",number:"sz\xE1m",array:"t\xF6mb"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k instanceof ${n.expected}, a kapott \xE9rt\xE9k ${p}`:`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${s}, a kapott \xE9rt\xE9k ${p}`}case"invalid_value":return n.values.length===1?`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${S(n.values[0])}`:`\xC9rv\xE9nytelen opci\xF3: valamelyik \xE9rt\xE9k v\xE1rt ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`T\xFAl nagy: ${(c=n.origin)!=null?c:"\xE9rt\xE9k"} m\xE9rete t\xFAl nagy ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"elem"}`:`T\xFAl nagy: a bemeneti \xE9rt\xE9k ${(l=n.origin)!=null?l:"\xE9rt\xE9k"} t\xFAl nagy: ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${n.origin} m\xE9rete t\xFAl kicsi ${s}${n.minimum.toString()} ${f.unit}`:`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${n.origin} t\xFAl kicsi ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`\xC9rv\xE9nytelen string: "${s.prefix}" \xE9rt\xE9kkel kell kezd\u0151dnie`:s.format==="ends_with"?`\xC9rv\xE9nytelen string: "${s.suffix}" \xE9rt\xE9kkel kell v\xE9gz\u0151dnie`:s.format==="includes"?`\xC9rv\xE9nytelen string: "${s.includes}" \xE9rt\xE9ket kell tartalmaznia`:s.format==="regex"?`\xC9rv\xE9nytelen string: ${s.pattern} mint\xE1nak kell megfelelnie`:`\xC9rv\xE9nytelen ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`\xC9rv\xE9nytelen sz\xE1m: ${n.divisor} t\xF6bbsz\xF6r\xF6s\xE9nek kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${n.keys.length>1?"s":""}: ${$(n.keys,", ")}`;case"invalid_key":return`\xC9rv\xE9nytelen kulcs ${n.origin}`;case"invalid_union":return"\xC9rv\xE9nytelen bemenet";case"invalid_element":return`\xC9rv\xE9nytelen \xE9rt\xE9k: ${n.origin}`;default:return"\xC9rv\xE9nytelen bemenet"}}};function iy(){return{localeError:Xz()}}function ay(t,e,r){return Math.abs(t)===1?e:r}function co(t){if(!t)return"";let e=["\u0561","\u0565","\u0568","\u056B","\u0578","\u0578\u0582","\u0585"],r=t[t.length-1];return t+(e.includes(r)?"\u0576":"\u0568")}var Yz=()=>{let t={string:{unit:{one:"\u0576\u0577\u0561\u0576",many:"\u0576\u0577\u0561\u0576\u0576\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},file:{unit:{one:"\u0562\u0561\u0575\u0569",many:"\u0562\u0561\u0575\u0569\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},array:{unit:{one:"\u057F\u0561\u0580\u0580",many:"\u057F\u0561\u0580\u0580\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},set:{unit:{one:"\u057F\u0561\u0580\u0580",many:"\u057F\u0561\u0580\u0580\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u0574\u0578\u0582\u057F\u0584",email:"\u0567\u056C. \u0570\u0561\u057D\u0581\u0565",url:"URL",emoji:"\u0567\u0574\u0578\u057B\u056B",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0561\u0574\u057D\u0561\u0569\u056B\u057E \u0587 \u056A\u0561\u0574",date:"ISO \u0561\u0574\u057D\u0561\u0569\u056B\u057E",time:"ISO \u056A\u0561\u0574",duration:"ISO \u057F\u0587\u0578\u0572\u0578\u0582\u0569\u0575\u0578\u0582\u0576",ipv4:"IPv4 \u0570\u0561\u057D\u0581\u0565",ipv6:"IPv6 \u0570\u0561\u057D\u0581\u0565",cidrv4:"IPv4 \u0574\u056B\u057B\u0561\u056F\u0561\u0575\u0584",cidrv6:"IPv6 \u0574\u056B\u057B\u0561\u056F\u0561\u0575\u0584",base64:"base64 \u0571\u0587\u0561\u0579\u0561\u0583\u0578\u057E \u057F\u0578\u0572",base64url:"base64url \u0571\u0587\u0561\u0579\u0561\u0583\u0578\u057E \u057F\u0578\u0572",json_string:"JSON \u057F\u0578\u0572",e164:"E.164 \u0570\u0561\u0574\u0561\u0580",jwt:"JWT",template_literal:"\u0574\u0578\u0582\u057F\u0584"},o={nan:"NaN",number:"\u0569\u056B\u057E",array:"\u0566\u0561\u0576\u0563\u057E\u0561\u056E"};return n=>{var i,a,c,u,l;switch(n.code){case"invalid_type":{let d=(i=o[n.expected])!=null?i:n.expected,s=P(n.input),f=(a=o[s])!=null?a:s;return/^[A-Z]/.test(n.expected)?`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 instanceof ${n.expected}, \u057D\u057F\u0561\u0581\u057E\u0565\u056C \u0567 ${f}`:`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 ${d}, \u057D\u057F\u0561\u0581\u057E\u0565\u056C \u0567 ${f}`}case"invalid_value":return n.values.length===1?`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 ${S(n.values[1])}`:`\u054D\u056D\u0561\u056C \u057F\u0561\u0580\u0562\u0565\u0580\u0561\u056F\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 \u0570\u0565\u057F\u0587\u0575\u0561\u056C\u0576\u0565\u0580\u056B\u0581 \u0574\u0565\u056F\u0568\u055D ${$(n.values,"|")}`;case"too_big":{let d=n.inclusive?"<=":"<",s=e(n.origin);if(s){let f=Number(n.maximum),p=ay(f,s.unit.one,s.unit.many);return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0574\u0565\u056E \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${co((c=n.origin)!=null?c:"\u0561\u0580\u056A\u0565\u0584")} \u056F\u0578\u0582\u0576\u0565\u0576\u0561 ${d}${n.maximum.toString()} ${p}`}return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0574\u0565\u056E \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${co((u=n.origin)!=null?u:"\u0561\u0580\u056A\u0565\u0584")} \u056C\u056B\u0576\u056B ${d}${n.maximum.toString()}`}case"too_small":{let d=n.inclusive?">=":">",s=e(n.origin);if(s){let f=Number(n.minimum),p=ay(f,s.unit.one,s.unit.many);return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0583\u0578\u0584\u0580 \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${co(n.origin)} \u056F\u0578\u0582\u0576\u0565\u0576\u0561 ${d}${n.minimum.toString()} ${p}`}return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0583\u0578\u0584\u0580 \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${co(n.origin)} \u056C\u056B\u0576\u056B ${d}${n.minimum.toString()}`}case"invalid_format":{let d=n;return d.format==="starts_with"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u057D\u056F\u057D\u057E\u056B "${d.prefix}"-\u0578\u057E`:d.format==="ends_with"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0561\u057E\u0561\u0580\u057F\u057E\u056B "${d.suffix}"-\u0578\u057E`:d.format==="includes"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u057A\u0561\u0580\u0578\u0582\u0576\u0561\u056F\u056B "${d.includes}"`:d.format==="regex"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0570\u0561\u0574\u0561\u057A\u0561\u057F\u0561\u057D\u056D\u0561\u0576\u056B ${d.pattern} \u0571\u0587\u0561\u0579\u0561\u0583\u056B\u0576`:`\u054D\u056D\u0561\u056C ${(l=r[d.format])!=null?l:n.format}`}case"not_multiple_of":return`\u054D\u056D\u0561\u056C \u0569\u056B\u057E\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0562\u0561\u0566\u0574\u0561\u057A\u0561\u057F\u056B\u056F \u056C\u056B\u0576\u056B ${n.divisor}-\u056B`;case"unrecognized_keys":return`\u0549\u0573\u0561\u0576\u0561\u0579\u057E\u0561\u056E \u0562\u0561\u0576\u0561\u056C\u056B${n.keys.length>1?"\u0576\u0565\u0580":""}. ${$(n.keys,", ")}`;case"invalid_key":return`\u054D\u056D\u0561\u056C \u0562\u0561\u0576\u0561\u056C\u056B ${co(n.origin)}-\u0578\u0582\u0574`;case"invalid_union":return"\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574";case"invalid_element":return`\u054D\u056D\u0561\u056C \u0561\u0580\u056A\u0565\u0584 ${co(n.origin)}-\u0578\u0582\u0574`;default:return"\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574"}}};function sy(){return{localeError:Yz()}}var Qz=()=>{let t={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"input",email:"alamat email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tanggal dan waktu format ISO",date:"tanggal format ISO",time:"jam format ISO",duration:"durasi format ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"rentang alamat IPv4",cidrv6:"rentang alamat IPv6",base64:"string dengan enkode base64",base64url:"string dengan enkode base64url",json_string:"string JSON",e164:"angka E.164",jwt:"JWT",template_literal:"input"},o={nan:"NaN"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Input tidak valid: diharapkan instanceof ${n.expected}, diterima ${p}`:`Input tidak valid: diharapkan ${s}, diterima ${p}`}case"invalid_value":return n.values.length===1?`Input tidak valid: diharapkan ${S(n.values[0])}`:`Pilihan tidak valid: diharapkan salah satu dari ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`Terlalu besar: diharapkan ${(c=n.origin)!=null?c:"value"} memiliki ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"elemen"}`:`Terlalu besar: diharapkan ${(l=n.origin)!=null?l:"value"} menjadi ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`Terlalu kecil: diharapkan ${n.origin} memiliki ${s}${n.minimum.toString()} ${f.unit}`:`Terlalu kecil: diharapkan ${n.origin} menjadi ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`String tidak valid: harus dimulai dengan "${s.prefix}"`:s.format==="ends_with"?`String tidak valid: harus berakhir dengan "${s.suffix}"`:s.format==="includes"?`String tidak valid: harus menyertakan "${s.includes}"`:s.format==="regex"?`String tidak valid: harus sesuai pola ${s.pattern}`:`${(d=r[s.format])!=null?d:n.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${n.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${n.keys.length>1?"s":""}: ${$(n.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${n.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${n.origin}`;default:return"Input tidak valid"}}};function cy(){return{localeError:Qz()}}var eI=()=>{let t={string:{unit:"stafi",verb:"a\xF0 hafa"},file:{unit:"b\xE6ti",verb:"a\xF0 hafa"},array:{unit:"hluti",verb:"a\xF0 hafa"},set:{unit:"hluti",verb:"a\xF0 hafa"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"gildi",email:"netfang",url:"vefsl\xF3\xF0",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dagsetning og t\xEDmi",date:"ISO dagsetning",time:"ISO t\xEDmi",duration:"ISO t\xEDmalengd",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded strengur",base64url:"base64url-encoded strengur",json_string:"JSON strengur",e164:"E.164 t\xF6lugildi",jwt:"JWT",template_literal:"gildi"},o={nan:"NaN",number:"n\xFAmer",array:"fylki"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Rangt gildi: \xDE\xFA sl\xF3st inn ${p} \xFEar sem \xE1 a\xF0 vera instanceof ${n.expected}`:`Rangt gildi: \xDE\xFA sl\xF3st inn ${p} \xFEar sem \xE1 a\xF0 vera ${s}`}case"invalid_value":return n.values.length===1?`Rangt gildi: gert r\xE1\xF0 fyrir ${S(n.values[0])}`:`\xD3gilt val: m\xE1 vera eitt af eftirfarandi ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${(c=n.origin)!=null?c:"gildi"} hafi ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"hluti"}`:`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${(l=n.origin)!=null?l:"gildi"} s\xE9 ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${n.origin} hafi ${s}${n.minimum.toString()} ${f.unit}`:`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${n.origin} s\xE9 ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`\xD3gildur strengur: ver\xF0ur a\xF0 byrja \xE1 "${s.prefix}"`:s.format==="ends_with"?`\xD3gildur strengur: ver\xF0ur a\xF0 enda \xE1 "${s.suffix}"`:s.format==="includes"?`\xD3gildur strengur: ver\xF0ur a\xF0 innihalda "${s.includes}"`:s.format==="regex"?`\xD3gildur strengur: ver\xF0ur a\xF0 fylgja mynstri ${s.pattern}`:`Rangt ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`R\xF6ng tala: ver\xF0ur a\xF0 vera margfeldi af ${n.divisor}`;case"unrecognized_keys":return`\xD3\xFEekkt ${n.keys.length>1?"ir lyklar":"ur lykill"}: ${$(n.keys,", ")}`;case"invalid_key":return`Rangur lykill \xED ${n.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi \xED ${n.origin}`;default:return"Rangt gildi"}}};function uy(){return{localeError:eI()}}var tI=()=>{let t={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"input",email:"indirizzo email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e ora ISO",date:"data ISO",time:"ora ISO",duration:"durata ISO",ipv4:"indirizzo IPv4",ipv6:"indirizzo IPv6",cidrv4:"intervallo IPv4",cidrv6:"intervallo IPv6",base64:"stringa codificata in base64",base64url:"URL codificata in base64",json_string:"stringa JSON",e164:"numero E.164",jwt:"JWT",template_literal:"input"},o={nan:"NaN",number:"numero",array:"vettore"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Input non valido: atteso instanceof ${n.expected}, ricevuto ${p}`:`Input non valido: atteso ${s}, ricevuto ${p}`}case"invalid_value":return n.values.length===1?`Input non valido: atteso ${S(n.values[0])}`:`Opzione non valida: atteso uno tra ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`Troppo grande: ${(c=n.origin)!=null?c:"valore"} deve avere ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"elementi"}`:`Troppo grande: ${(l=n.origin)!=null?l:"valore"} deve essere ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`Troppo piccolo: ${n.origin} deve avere ${s}${n.minimum.toString()} ${f.unit}`:`Troppo piccolo: ${n.origin} deve essere ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`Stringa non valida: deve iniziare con "${s.prefix}"`:s.format==="ends_with"?`Stringa non valida: deve terminare con "${s.suffix}"`:s.format==="includes"?`Stringa non valida: deve includere "${s.includes}"`:s.format==="regex"?`Stringa non valida: deve corrispondere al pattern ${s.pattern}`:`Invalid ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${n.divisor}`;case"unrecognized_keys":return`Chiav${n.keys.length>1?"i":"e"} non riconosciut${n.keys.length>1?"e":"a"}: ${$(n.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${n.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${n.origin}`;default:return"Input non valido"}}};function ly(){return{localeError:tI()}}var rI=()=>{let t={string:{unit:"\u6587\u5B57",verb:"\u3067\u3042\u308B"},file:{unit:"\u30D0\u30A4\u30C8",verb:"\u3067\u3042\u308B"},array:{unit:"\u8981\u7D20",verb:"\u3067\u3042\u308B"},set:{unit:"\u8981\u7D20",verb:"\u3067\u3042\u308B"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u5165\u529B\u5024",email:"\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9",url:"URL",emoji:"\u7D75\u6587\u5B57",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO\u65E5\u6642",date:"ISO\u65E5\u4ED8",time:"ISO\u6642\u523B",duration:"ISO\u671F\u9593",ipv4:"IPv4\u30A2\u30C9\u30EC\u30B9",ipv6:"IPv6\u30A2\u30C9\u30EC\u30B9",cidrv4:"IPv4\u7BC4\u56F2",cidrv6:"IPv6\u7BC4\u56F2",base64:"base64\u30A8\u30F3\u30B3\u30FC\u30C9\u6587\u5B57\u5217",base64url:"base64url\u30A8\u30F3\u30B3\u30FC\u30C9\u6587\u5B57\u5217",json_string:"JSON\u6587\u5B57\u5217",e164:"E.164\u756A\u53F7",jwt:"JWT",template_literal:"\u5165\u529B\u5024"},o={nan:"NaN",number:"\u6570\u5024",array:"\u914D\u5217"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\u7121\u52B9\u306A\u5165\u529B: instanceof ${n.expected}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F\u304C\u3001${p}\u304C\u5165\u529B\u3055\u308C\u307E\u3057\u305F`:`\u7121\u52B9\u306A\u5165\u529B: ${s}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F\u304C\u3001${p}\u304C\u5165\u529B\u3055\u308C\u307E\u3057\u305F`}case"invalid_value":return n.values.length===1?`\u7121\u52B9\u306A\u5165\u529B: ${S(n.values[0])}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F`:`\u7121\u52B9\u306A\u9078\u629E: ${$(n.values,"\u3001")}\u306E\u3044\u305A\u308C\u304B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"too_big":{let s=n.inclusive?"\u4EE5\u4E0B\u3067\u3042\u308B":"\u3088\u308A\u5C0F\u3055\u3044",f=e(n.origin);return f?`\u5927\u304D\u3059\u304E\u308B\u5024: ${(c=n.origin)!=null?c:"\u5024"}\u306F${n.maximum.toString()}${(u=f.unit)!=null?u:"\u8981\u7D20"}${s}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u5927\u304D\u3059\u304E\u308B\u5024: ${(l=n.origin)!=null?l:"\u5024"}\u306F${n.maximum.toString()}${s}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"too_small":{let s=n.inclusive?"\u4EE5\u4E0A\u3067\u3042\u308B":"\u3088\u308A\u5927\u304D\u3044",f=e(n.origin);return f?`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${n.origin}\u306F${n.minimum.toString()}${f.unit}${s}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${n.origin}\u306F${n.minimum.toString()}${s}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"invalid_format":{let s=n;return s.format==="starts_with"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${s.prefix}"\u3067\u59CB\u307E\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:s.format==="ends_with"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${s.suffix}"\u3067\u7D42\u308F\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:s.format==="includes"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${s.includes}"\u3092\u542B\u3080\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:s.format==="regex"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: \u30D1\u30BF\u30FC\u30F3${s.pattern}\u306B\u4E00\u81F4\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u7121\u52B9\u306A${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`\u7121\u52B9\u306A\u6570\u5024: ${n.divisor}\u306E\u500D\u6570\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"unrecognized_keys":return`\u8A8D\u8B58\u3055\u308C\u3066\u3044\u306A\u3044\u30AD\u30FC${n.keys.length>1?"\u7FA4":""}: ${$(n.keys,"\u3001")}`;case"invalid_key":return`${n.origin}\u5185\u306E\u7121\u52B9\u306A\u30AD\u30FC`;case"invalid_union":return"\u7121\u52B9\u306A\u5165\u529B";case"invalid_element":return`${n.origin}\u5185\u306E\u7121\u52B9\u306A\u5024`;default:return"\u7121\u52B9\u306A\u5165\u529B"}}};function dy(){return{localeError:rI()}}var nI=()=>{let t={string:{unit:"\u10E1\u10D8\u10DB\u10D1\u10DD\u10DA\u10DD",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},file:{unit:"\u10D1\u10D0\u10D8\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},array:{unit:"\u10D4\u10DA\u10D4\u10DB\u10D4\u10DC\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},set:{unit:"\u10D4\u10DA\u10D4\u10DB\u10D4\u10DC\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0",email:"\u10D4\u10DA-\u10E4\u10DD\u10E1\u10E2\u10D8\u10E1 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",url:"URL",emoji:"\u10D4\u10DB\u10DD\u10EF\u10D8",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u10D7\u10D0\u10E0\u10D8\u10E6\u10D8-\u10D3\u10E0\u10DD",date:"\u10D7\u10D0\u10E0\u10D8\u10E6\u10D8",time:"\u10D3\u10E0\u10DD",duration:"\u10EE\u10D0\u10DC\u10D2\u10E0\u10EB\u10DA\u10D8\u10D5\u10DD\u10D1\u10D0",ipv4:"IPv4 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",ipv6:"IPv6 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",cidrv4:"IPv4 \u10D3\u10D8\u10D0\u10DE\u10D0\u10D6\u10DD\u10DC\u10D8",cidrv6:"IPv6 \u10D3\u10D8\u10D0\u10DE\u10D0\u10D6\u10DD\u10DC\u10D8",base64:"base64-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8",base64url:"base64url-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8",json_string:"JSON \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8",e164:"E.164 \u10DC\u10DD\u10DB\u10D4\u10E0\u10D8",jwt:"JWT",template_literal:"\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"},o={nan:"NaN",number:"\u10E0\u10D8\u10EA\u10EE\u10D5\u10D8",string:"\u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8",boolean:"\u10D1\u10E3\u10DA\u10D4\u10D0\u10DC\u10D8",function:"\u10E4\u10E3\u10DC\u10E5\u10EA\u10D8\u10D0",array:"\u10DB\u10D0\u10E1\u10D8\u10D5\u10D8"};return n=>{var i,a,c,u,l;switch(n.code){case"invalid_type":{let d=(i=o[n.expected])!=null?i:n.expected,s=P(n.input),f=(a=o[s])!=null?a:s;return/^[A-Z]/.test(n.expected)?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 instanceof ${n.expected}, \u10DB\u10D8\u10E6\u10D4\u10D1\u10E3\u10DA\u10D8 ${f}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${d}, \u10DB\u10D8\u10E6\u10D4\u10D1\u10E3\u10DA\u10D8 ${f}`}case"invalid_value":return n.values.length===1?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${S(n.values[0])}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D0\u10E0\u10D8\u10D0\u10DC\u10E2\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8\u10D0 \u10D4\u10E0\u10D7-\u10D4\u10E0\u10D7\u10D8 ${$(n.values,"|")}-\u10D3\u10D0\u10DC`;case"too_big":{let d=n.inclusive?"<=":"<",s=e(n.origin);return s?`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10D3\u10D8\u10D3\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${(c=n.origin)!=null?c:"\u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0"} ${s.verb} ${d}${n.maximum.toString()} ${s.unit}`:`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10D3\u10D8\u10D3\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${(u=n.origin)!=null?u:"\u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0"} \u10D8\u10E7\u10DD\u10E1 ${d}${n.maximum.toString()}`}case"too_small":{let d=n.inclusive?">=":">",s=e(n.origin);return s?`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10DE\u10D0\u10E2\u10D0\u10E0\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${n.origin} ${s.verb} ${d}${n.minimum.toString()} ${s.unit}`:`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10DE\u10D0\u10E2\u10D0\u10E0\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${n.origin} \u10D8\u10E7\u10DD\u10E1 ${d}${n.minimum.toString()}`}case"invalid_format":{let d=n;return d.format==="starts_with"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10D8\u10EC\u10E7\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${d.prefix}"-\u10D8\u10D7`:d.format==="ends_with"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10DB\u10D7\u10D0\u10D5\u10E0\u10D3\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${d.suffix}"-\u10D8\u10D7`:d.format==="includes"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1 "${d.includes}"-\u10E1`:d.format==="regex"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D4\u10E1\u10D0\u10D1\u10D0\u10DB\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 \u10E8\u10D0\u10D1\u10DA\u10DD\u10DC\u10E1 ${d.pattern}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 ${(l=r[d.format])!=null?l:n.format}`}case"not_multiple_of":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E0\u10D8\u10EA\u10EE\u10D5\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10D8\u10E7\u10DD\u10E1 ${n.divisor}-\u10D8\u10E1 \u10EF\u10D4\u10E0\u10D0\u10D3\u10D8`;case"unrecognized_keys":return`\u10E3\u10EA\u10DC\u10DD\u10D1\u10D8 \u10D2\u10D0\u10E1\u10D0\u10E6\u10D4\u10D1${n.keys.length>1?"\u10D4\u10D1\u10D8":"\u10D8"}: ${$(n.keys,", ")}`;case"invalid_key":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D2\u10D0\u10E1\u10D0\u10E6\u10D4\u10D1\u10D8 ${n.origin}-\u10E8\u10D8`;case"invalid_union":return"\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0";case"invalid_element":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0 ${n.origin}-\u10E8\u10D8`;default:return"\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"}}};function fy(){return{localeError:nI()}}var oI=()=>{let t={string:{unit:"\u178F\u17BD\u17A2\u1780\u17D2\u179F\u179A",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},file:{unit:"\u1794\u17C3",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},array:{unit:"\u1792\u17B6\u178F\u17BB",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},set:{unit:"\u1792\u17B6\u178F\u17BB",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B",email:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793\u17A2\u17CA\u17B8\u1798\u17C2\u179B",url:"URL",emoji:"\u179F\u1789\u17D2\u1789\u17B6\u17A2\u17B6\u179A\u1798\u17D2\u1798\u178E\u17CD",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u1780\u17B6\u179B\u1794\u179A\u17B7\u1785\u17D2\u1786\u17C1\u1791 \u1793\u17B7\u1784\u1798\u17C9\u17C4\u1784 ISO",date:"\u1780\u17B6\u179B\u1794\u179A\u17B7\u1785\u17D2\u1786\u17C1\u1791 ISO",time:"\u1798\u17C9\u17C4\u1784 ISO",duration:"\u179A\u1799\u17C8\u1796\u17C1\u179B ISO",ipv4:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv4",ipv6:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv6",cidrv4:"\u178A\u17C2\u1793\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv4",cidrv6:"\u178A\u17C2\u1793\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv6",base64:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u17A2\u17CA\u17B7\u1780\u17BC\u178A base64",base64url:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u17A2\u17CA\u17B7\u1780\u17BC\u178A base64url",json_string:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A JSON",e164:"\u179B\u17C1\u1781 E.164",jwt:"JWT",template_literal:"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B"},o={nan:"NaN",number:"\u179B\u17C1\u1781",array:"\u17A2\u17B6\u179A\u17C1 (Array)",null:"\u1782\u17D2\u1798\u17B6\u1793\u178F\u1798\u17D2\u179B\u17C3 (null)"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A instanceof ${n.expected} \u1794\u17C9\u17BB\u1793\u17D2\u178F\u17C2\u1791\u1791\u17BD\u179B\u1794\u17B6\u1793 ${p}`:`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${s} \u1794\u17C9\u17BB\u1793\u17D2\u178F\u17C2\u1791\u1791\u17BD\u179B\u1794\u17B6\u1793 ${p}`}case"invalid_value":return n.values.length===1?`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${S(n.values[0])}`:`\u1787\u1798\u17D2\u179A\u17BE\u179F\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1787\u17B6\u1798\u17BD\u1799\u1780\u17D2\u1793\u17BB\u1784\u1785\u17C6\u178E\u17C4\u1798 ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${(c=n.origin)!=null?c:"\u178F\u1798\u17D2\u179B\u17C3"} ${s} ${n.maximum.toString()} ${(u=f.unit)!=null?u:"\u1792\u17B6\u178F\u17BB"}`:`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${(l=n.origin)!=null?l:"\u178F\u1798\u17D2\u179B\u17C3"} ${s} ${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin} ${s} ${n.minimum.toString()} ${f.unit}`:`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin} ${s} ${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1785\u17B6\u1794\u17CB\u1795\u17D2\u178F\u17BE\u1798\u178A\u17C4\u1799 "${s.prefix}"`:s.format==="ends_with"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1794\u1789\u17D2\u1785\u1794\u17CB\u178A\u17C4\u1799 "${s.suffix}"`:s.format==="includes"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1798\u17B6\u1793 "${s.includes}"`:s.format==="regex"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u178F\u17C2\u1795\u17D2\u1782\u17BC\u1795\u17D2\u1782\u1784\u1793\u17B9\u1784\u1791\u1798\u17D2\u179A\u1784\u17CB\u178A\u17C2\u179B\u1794\u17B6\u1793\u1780\u17C6\u178E\u178F\u17CB ${s.pattern}`:`\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`\u179B\u17C1\u1781\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u178F\u17C2\u1787\u17B6\u1796\u17A0\u17BB\u1782\u17BB\u178E\u1793\u17C3 ${n.divisor}`;case"unrecognized_keys":return`\u179A\u1780\u1783\u17BE\u1789\u179F\u17C4\u1798\u17B7\u1793\u179F\u17D2\u1782\u17B6\u179B\u17CB\u17D6 ${$(n.keys,", ")}`;case"invalid_key":return`\u179F\u17C4\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u1793\u17C5\u1780\u17D2\u1793\u17BB\u1784 ${n.origin}`;case"invalid_union":return"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C";case"invalid_element":return`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u1793\u17C5\u1780\u17D2\u1793\u17BB\u1784 ${n.origin}`;default:return"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C"}}};function mu(){return{localeError:oI()}}function py(){return mu()}var iI=()=>{let t={string:{unit:"\uBB38\uC790",verb:"to have"},file:{unit:"\uBC14\uC774\uD2B8",verb:"to have"},array:{unit:"\uAC1C",verb:"to have"},set:{unit:"\uAC1C",verb:"to have"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\uC785\uB825",email:"\uC774\uBA54\uC77C \uC8FC\uC18C",url:"URL",emoji:"\uC774\uBAA8\uC9C0",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \uB0A0\uC9DC\uC2DC\uAC04",date:"ISO \uB0A0\uC9DC",time:"ISO \uC2DC\uAC04",duration:"ISO \uAE30\uAC04",ipv4:"IPv4 \uC8FC\uC18C",ipv6:"IPv6 \uC8FC\uC18C",cidrv4:"IPv4 \uBC94\uC704",cidrv6:"IPv6 \uBC94\uC704",base64:"base64 \uC778\uCF54\uB529 \uBB38\uC790\uC5F4",base64url:"base64url \uC778\uCF54\uB529 \uBB38\uC790\uC5F4",json_string:"JSON \uBB38\uC790\uC5F4",e164:"E.164 \uBC88\uD638",jwt:"JWT",template_literal:"\uC785\uB825"},o={nan:"NaN"};return n=>{var i,a,c,u,l,d,s,f,p;switch(n.code){case"invalid_type":{let m=(i=o[n.expected])!=null?i:n.expected,h=P(n.input),v=(a=o[h])!=null?a:h;return/^[A-Z]/.test(n.expected)?`\uC798\uBABB\uB41C \uC785\uB825: \uC608\uC0C1 \uD0C0\uC785\uC740 instanceof ${n.expected}, \uBC1B\uC740 \uD0C0\uC785\uC740 ${v}\uC785\uB2C8\uB2E4`:`\uC798\uBABB\uB41C \uC785\uB825: \uC608\uC0C1 \uD0C0\uC785\uC740 ${m}, \uBC1B\uC740 \uD0C0\uC785\uC740 ${v}\uC785\uB2C8\uB2E4`}case"invalid_value":return n.values.length===1?`\uC798\uBABB\uB41C \uC785\uB825: \uAC12\uC740 ${S(n.values[0])} \uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4`:`\uC798\uBABB\uB41C \uC635\uC158: ${$(n.values,"\uB610\uB294 ")} \uC911 \uD558\uB098\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"too_big":{let m=n.inclusive?"\uC774\uD558":"\uBBF8\uB9CC",h=m==="\uBBF8\uB9CC"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",v=e(n.origin),y=(c=v==null?void 0:v.unit)!=null?c:"\uC694\uC18C";return v?`${(u=n.origin)!=null?u:"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${n.maximum.toString()}${y} ${m}${h}`:`${(l=n.origin)!=null?l:"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${n.maximum.toString()} ${m}${h}`}case"too_small":{let m=n.inclusive?"\uC774\uC0C1":"\uCD08\uACFC",h=m==="\uC774\uC0C1"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",v=e(n.origin),y=(d=v==null?void 0:v.unit)!=null?d:"\uC694\uC18C";return v?`${(s=n.origin)!=null?s:"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${n.minimum.toString()}${y} ${m}${h}`:`${(f=n.origin)!=null?f:"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${n.minimum.toString()} ${m}${h}`}case"invalid_format":{let m=n;return m.format==="starts_with"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${m.prefix}"(\uC73C)\uB85C \uC2DC\uC791\uD574\uC57C \uD569\uB2C8\uB2E4`:m.format==="ends_with"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${m.suffix}"(\uC73C)\uB85C \uB05D\uB098\uC57C \uD569\uB2C8\uB2E4`:m.format==="includes"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${m.includes}"\uC744(\uB97C) \uD3EC\uD568\uD574\uC57C \uD569\uB2C8\uB2E4`:m.format==="regex"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: \uC815\uADDC\uC2DD ${m.pattern} \uD328\uD134\uACFC \uC77C\uCE58\uD574\uC57C \uD569\uB2C8\uB2E4`:`\uC798\uBABB\uB41C ${(p=r[m.format])!=null?p:n.format}`}case"not_multiple_of":return`\uC798\uBABB\uB41C \uC22B\uC790: ${n.divisor}\uC758 \uBC30\uC218\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"unrecognized_keys":return`\uC778\uC2DD\uD560 \uC218 \uC5C6\uB294 \uD0A4: ${$(n.keys,", ")}`;case"invalid_key":return`\uC798\uBABB\uB41C \uD0A4: ${n.origin}`;case"invalid_union":return"\uC798\uBABB\uB41C \uC785\uB825";case"invalid_element":return`\uC798\uBABB\uB41C \uAC12: ${n.origin}`;default:return"\uC798\uBABB\uB41C \uC785\uB825"}}};function my(){return{localeError:iI()}}var Fi=t=>t.charAt(0).toUpperCase()+t.slice(1);function hy(t){let e=Math.abs(t),r=e%10,o=e%100;return o>=11&&o<=19||r===0?"many":r===1?"one":"few"}var aI=()=>{let t={string:{unit:{one:"simbolis",few:"simboliai",many:"simboli\u0173"},verb:{smaller:{inclusive:"turi b\u016Bti ne ilgesn\u0117 kaip",notInclusive:"turi b\u016Bti trumpesn\u0117 kaip"},bigger:{inclusive:"turi b\u016Bti ne trumpesn\u0117 kaip",notInclusive:"turi b\u016Bti ilgesn\u0117 kaip"}}},file:{unit:{one:"baitas",few:"baitai",many:"bait\u0173"},verb:{smaller:{inclusive:"turi b\u016Bti ne didesnis kaip",notInclusive:"turi b\u016Bti ma\u017Eesnis kaip"},bigger:{inclusive:"turi b\u016Bti ne ma\u017Eesnis kaip",notInclusive:"turi b\u016Bti didesnis kaip"}}},array:{unit:{one:"element\u0105",few:"elementus",many:"element\u0173"},verb:{smaller:{inclusive:"turi tur\u0117ti ne daugiau kaip",notInclusive:"turi tur\u0117ti ma\u017Eiau kaip"},bigger:{inclusive:"turi tur\u0117ti ne ma\u017Eiau kaip",notInclusive:"turi tur\u0117ti daugiau kaip"}}},set:{unit:{one:"element\u0105",few:"elementus",many:"element\u0173"},verb:{smaller:{inclusive:"turi tur\u0117ti ne daugiau kaip",notInclusive:"turi tur\u0117ti ma\u017Eiau kaip"},bigger:{inclusive:"turi tur\u0117ti ne ma\u017Eiau kaip",notInclusive:"turi tur\u0117ti daugiau kaip"}}}};function e(n,i,a,c){var l;let u=(l=t[n])!=null?l:null;return u===null?u:{unit:u.unit[i],verb:u.verb[c][a?"inclusive":"notInclusive"]}}let r={regex:"\u012Fvestis",email:"el. pa\u0161to adresas",url:"URL",emoji:"jaustukas",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO data ir laikas",date:"ISO data",time:"ISO laikas",duration:"ISO trukm\u0117",ipv4:"IPv4 adresas",ipv6:"IPv6 adresas",cidrv4:"IPv4 tinklo prefiksas (CIDR)",cidrv6:"IPv6 tinklo prefiksas (CIDR)",base64:"base64 u\u017Ekoduota eilut\u0117",base64url:"base64url u\u017Ekoduota eilut\u0117",json_string:"JSON eilut\u0117",e164:"E.164 numeris",jwt:"JWT",template_literal:"\u012Fvestis"},o={nan:"NaN",number:"skai\u010Dius",bigint:"sveikasis skai\u010Dius",string:"eilut\u0117",boolean:"login\u0117 reik\u0161m\u0117",undefined:"neapibr\u0117\u017Eta reik\u0161m\u0117",function:"funkcija",symbol:"simbolis",array:"masyvas",object:"objektas",null:"nulin\u0117 reik\u0161m\u0117"};return n=>{var i,a,c,u,l,d,s,f,p,m,h,v,y,w,k;switch(n.code){case"invalid_type":{let x=(i=o[n.expected])!=null?i:n.expected,b=P(n.input),L=(a=o[b])!=null?a:b;return/^[A-Z]/.test(n.expected)?`Gautas tipas ${L}, o tik\u0117tasi - instanceof ${n.expected}`:`Gautas tipas ${L}, o tik\u0117tasi - ${x}`}case"invalid_value":return n.values.length===1?`Privalo b\u016Bti ${S(n.values[0])}`:`Privalo b\u016Bti vienas i\u0161 ${$(n.values,"|")} pasirinkim\u0173`;case"too_big":{let x=(c=o[n.origin])!=null?c:n.origin,b=e(n.origin,hy(Number(n.maximum)),(u=n.inclusive)!=null?u:!1,"smaller");if(b!=null&&b.verb)return`${Fi((l=x!=null?x:n.origin)!=null?l:"reik\u0161m\u0117")} ${b.verb} ${n.maximum.toString()} ${(d=b.unit)!=null?d:"element\u0173"}`;let L=n.inclusive?"ne didesnis kaip":"ma\u017Eesnis kaip";return`${Fi((s=x!=null?x:n.origin)!=null?s:"reik\u0161m\u0117")} turi b\u016Bti ${L} ${n.maximum.toString()} ${b==null?void 0:b.unit}`}case"too_small":{let x=(f=o[n.origin])!=null?f:n.origin,b=e(n.origin,hy(Number(n.minimum)),(p=n.inclusive)!=null?p:!1,"bigger");if(b!=null&&b.verb)return`${Fi((m=x!=null?x:n.origin)!=null?m:"reik\u0161m\u0117")} ${b.verb} ${n.minimum.toString()} ${(h=b.unit)!=null?h:"element\u0173"}`;let L=n.inclusive?"ne ma\u017Eesnis kaip":"didesnis kaip";return`${Fi((v=x!=null?x:n.origin)!=null?v:"reik\u0161m\u0117")} turi b\u016Bti ${L} ${n.minimum.toString()} ${b==null?void 0:b.unit}`}case"invalid_format":{let x=n;return x.format==="starts_with"?`Eilut\u0117 privalo prasid\u0117ti "${x.prefix}"`:x.format==="ends_with"?`Eilut\u0117 privalo pasibaigti "${x.suffix}"`:x.format==="includes"?`Eilut\u0117 privalo \u012Ftraukti "${x.includes}"`:x.format==="regex"?`Eilut\u0117 privalo atitikti ${x.pattern}`:`Neteisingas ${(y=r[x.format])!=null?y:n.format}`}case"not_multiple_of":return`Skai\u010Dius privalo b\u016Bti ${n.divisor} kartotinis.`;case"unrecognized_keys":return`Neatpa\u017Eint${n.keys.length>1?"i":"as"} rakt${n.keys.length>1?"ai":"as"}: ${$(n.keys,", ")}`;case"invalid_key":return"Rastas klaidingas raktas";case"invalid_union":return"Klaidinga \u012Fvestis";case"invalid_element":{let x=(w=o[n.origin])!=null?w:n.origin;return`${Fi((k=x!=null?x:n.origin)!=null?k:"reik\u0161m\u0117")} turi klaiding\u0105 \u012Fvest\u012F`}default:return"Klaidinga \u012Fvestis"}}};function gy(){return{localeError:aI()}}var sI=()=>{let t={string:{unit:"\u0437\u043D\u0430\u0446\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},file:{unit:"\u0431\u0430\u0458\u0442\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},array:{unit:"\u0441\u0442\u0430\u0432\u043A\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},set:{unit:"\u0441\u0442\u0430\u0432\u043A\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u0432\u043D\u0435\u0441",email:"\u0430\u0434\u0440\u0435\u0441\u0430 \u043D\u0430 \u0435-\u043F\u043E\u0448\u0442\u0430",url:"URL",emoji:"\u0435\u043C\u043E\u045F\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0443\u043C \u0438 \u0432\u0440\u0435\u043C\u0435",date:"ISO \u0434\u0430\u0442\u0443\u043C",time:"ISO \u0432\u0440\u0435\u043C\u0435",duration:"ISO \u0432\u0440\u0435\u043C\u0435\u0442\u0440\u0430\u0435\u045A\u0435",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441\u0430",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441\u0430",cidrv4:"IPv4 \u043E\u043F\u0441\u0435\u0433",cidrv6:"IPv6 \u043E\u043F\u0441\u0435\u0433",base64:"base64-\u0435\u043D\u043A\u043E\u0434\u0438\u0440\u0430\u043D\u0430 \u043D\u0438\u0437\u0430",base64url:"base64url-\u0435\u043D\u043A\u043E\u0434\u0438\u0440\u0430\u043D\u0430 \u043D\u0438\u0437\u0430",json_string:"JSON \u043D\u0438\u0437\u0430",e164:"E.164 \u0431\u0440\u043E\u0458",jwt:"JWT",template_literal:"\u0432\u043D\u0435\u0441"},o={nan:"NaN",number:"\u0431\u0440\u043E\u0458",array:"\u043D\u0438\u0437\u0430"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 instanceof ${n.expected}, \u043F\u0440\u0438\u043C\u0435\u043D\u043E ${p}`:`\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${s}, \u043F\u0440\u0438\u043C\u0435\u043D\u043E ${p}`}case"invalid_value":return n.values.length===1?`Invalid input: expected ${S(n.values[0])}`:`\u0413\u0440\u0435\u0448\u0430\u043D\u0430 \u043E\u043F\u0446\u0438\u0458\u0430: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 \u0435\u0434\u043D\u0430 ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u0433\u043E\u043B\u0435\u043C: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${(c=n.origin)!=null?c:"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0438\u043C\u0430 ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438"}`:`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u0433\u043E\u043B\u0435\u043C: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${(l=n.origin)!=null?l:"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0431\u0438\u0434\u0435 ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin} \u0434\u0430 \u0438\u043C\u0430 ${s}${n.minimum.toString()} ${f.unit}`:`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin} \u0434\u0430 \u0431\u0438\u0434\u0435 ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0437\u0430\u043F\u043E\u0447\u043D\u0443\u0432\u0430 \u0441\u043E "${s.prefix}"`:s.format==="ends_with"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0437\u0430\u0432\u0440\u0448\u0443\u0432\u0430 \u0441\u043E "${s.suffix}"`:s.format==="includes"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0432\u043A\u043B\u0443\u0447\u0443\u0432\u0430 "${s.includes}"`:s.format==="regex"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u043E\u0434\u0433\u043E\u0430\u0440\u0430 \u043D\u0430 \u043F\u0430\u0442\u0435\u0440\u043D\u043E\u0442 ${s.pattern}`:`Invalid ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`\u0413\u0440\u0435\u0448\u0435\u043D \u0431\u0440\u043E\u0458: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0431\u0438\u0434\u0435 \u0434\u0435\u043B\u0438\u0432 \u0441\u043E ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"\u041D\u0435\u043F\u0440\u0435\u043F\u043E\u0437\u043D\u0430\u0435\u043D\u0438 \u043A\u043B\u0443\u0447\u0435\u0432\u0438":"\u041D\u0435\u043F\u0440\u0435\u043F\u043E\u0437\u043D\u0430\u0435\u043D \u043A\u043B\u0443\u0447"}: ${$(n.keys,", ")}`;case"invalid_key":return`\u0413\u0440\u0435\u0448\u0435\u043D \u043A\u043B\u0443\u0447 \u0432\u043E ${n.origin}`;case"invalid_union":return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441";case"invalid_element":return`\u0413\u0440\u0435\u0448\u043D\u0430 \u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442 \u0432\u043E ${n.origin}`;default:return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441"}}};function vy(){return{localeError:sI()}}var cI=()=>{let t={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"input",email:"alamat e-mel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tarikh masa ISO",date:"tarikh ISO",time:"masa ISO",duration:"tempoh ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"julat IPv4",cidrv6:"julat IPv6",base64:"string dikodkan base64",base64url:"string dikodkan base64url",json_string:"string JSON",e164:"nombor E.164",jwt:"JWT",template_literal:"input"},o={nan:"NaN",number:"nombor"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Input tidak sah: dijangka instanceof ${n.expected}, diterima ${p}`:`Input tidak sah: dijangka ${s}, diterima ${p}`}case"invalid_value":return n.values.length===1?`Input tidak sah: dijangka ${S(n.values[0])}`:`Pilihan tidak sah: dijangka salah satu daripada ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`Terlalu besar: dijangka ${(c=n.origin)!=null?c:"nilai"} ${f.verb} ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"elemen"}`:`Terlalu besar: dijangka ${(l=n.origin)!=null?l:"nilai"} adalah ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`Terlalu kecil: dijangka ${n.origin} ${f.verb} ${s}${n.minimum.toString()} ${f.unit}`:`Terlalu kecil: dijangka ${n.origin} adalah ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`String tidak sah: mesti bermula dengan "${s.prefix}"`:s.format==="ends_with"?`String tidak sah: mesti berakhir dengan "${s.suffix}"`:s.format==="includes"?`String tidak sah: mesti mengandungi "${s.includes}"`:s.format==="regex"?`String tidak sah: mesti sepadan dengan corak ${s.pattern}`:`${(d=r[s.format])!=null?d:n.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${n.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${$(n.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${n.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${n.origin}`;default:return"Input tidak sah"}}};function _y(){return{localeError:cI()}}var uI=()=>{let t={string:{unit:"tekens",verb:"heeft"},file:{unit:"bytes",verb:"heeft"},array:{unit:"elementen",verb:"heeft"},set:{unit:"elementen",verb:"heeft"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"invoer",email:"emailadres",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum en tijd",date:"ISO datum",time:"ISO tijd",duration:"ISO duur",ipv4:"IPv4-adres",ipv6:"IPv6-adres",cidrv4:"IPv4-bereik",cidrv6:"IPv6-bereik",base64:"base64-gecodeerde tekst",base64url:"base64 URL-gecodeerde tekst",json_string:"JSON string",e164:"E.164-nummer",jwt:"JWT",template_literal:"invoer"},o={nan:"NaN",number:"getal"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Ongeldige invoer: verwacht instanceof ${n.expected}, ontving ${p}`:`Ongeldige invoer: verwacht ${s}, ontving ${p}`}case"invalid_value":return n.values.length===1?`Ongeldige invoer: verwacht ${S(n.values[0])}`:`Ongeldige optie: verwacht \xE9\xE9n van ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin),p=n.origin==="date"?"laat":n.origin==="string"?"lang":"groot";return f?`Te ${p}: verwacht dat ${(c=n.origin)!=null?c:"waarde"} ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"elementen"} ${f.verb}`:`Te ${p}: verwacht dat ${(l=n.origin)!=null?l:"waarde"} ${s}${n.maximum.toString()} is`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin),p=n.origin==="date"?"vroeg":n.origin==="string"?"kort":"klein";return f?`Te ${p}: verwacht dat ${n.origin} ${s}${n.minimum.toString()} ${f.unit} ${f.verb}`:`Te ${p}: verwacht dat ${n.origin} ${s}${n.minimum.toString()} is`}case"invalid_format":{let s=n;return s.format==="starts_with"?`Ongeldige tekst: moet met "${s.prefix}" beginnen`:s.format==="ends_with"?`Ongeldige tekst: moet op "${s.suffix}" eindigen`:s.format==="includes"?`Ongeldige tekst: moet "${s.includes}" bevatten`:s.format==="regex"?`Ongeldige tekst: moet overeenkomen met patroon ${s.pattern}`:`Ongeldig: ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${n.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${n.keys.length>1?"s":""}: ${$(n.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${n.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${n.origin}`;default:return"Ongeldige invoer"}}};function yy(){return{localeError:uI()}}var lI=()=>{let t={string:{unit:"tegn",verb:"\xE5 ha"},file:{unit:"bytes",verb:"\xE5 ha"},array:{unit:"elementer",verb:"\xE5 inneholde"},set:{unit:"elementer",verb:"\xE5 inneholde"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"input",email:"e-postadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslett",date:"ISO-dato",time:"ISO-klokkeslett",duration:"ISO-varighet",ipv4:"IPv4-omr\xE5de",ipv6:"IPv6-omr\xE5de",cidrv4:"IPv4-spekter",cidrv6:"IPv6-spekter",base64:"base64-enkodet streng",base64url:"base64url-enkodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},o={nan:"NaN",number:"tall",array:"liste"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Ugyldig input: forventet instanceof ${n.expected}, fikk ${p}`:`Ugyldig input: forventet ${s}, fikk ${p}`}case"invalid_value":return n.values.length===1?`Ugyldig verdi: forventet ${S(n.values[0])}`:`Ugyldig valg: forventet en av ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`For stor(t): forventet ${(c=n.origin)!=null?c:"value"} til \xE5 ha ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"elementer"}`:`For stor(t): forventet ${(l=n.origin)!=null?l:"value"} til \xE5 ha ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`For lite(n): forventet ${n.origin} til \xE5 ha ${s}${n.minimum.toString()} ${f.unit}`:`For lite(n): forventet ${n.origin} til \xE5 ha ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`Ugyldig streng: m\xE5 starte med "${s.prefix}"`:s.format==="ends_with"?`Ugyldig streng: m\xE5 ende med "${s.suffix}"`:s.format==="includes"?`Ugyldig streng: m\xE5 inneholde "${s.includes}"`:s.format==="regex"?`Ugyldig streng: m\xE5 matche m\xF8nsteret ${s.pattern}`:`Ugyldig ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`Ugyldig tall: m\xE5 v\xE6re et multiplum av ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"Ukjente n\xF8kler":"Ukjent n\xF8kkel"}: ${$(n.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8kkel i ${n.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${n.origin}`;default:return"Ugyldig input"}}};function $y(){return{localeError:lI()}}var dI=()=>{let t={string:{unit:"harf",verb:"olmal\u0131d\u0131r"},file:{unit:"bayt",verb:"olmal\u0131d\u0131r"},array:{unit:"unsur",verb:"olmal\u0131d\u0131r"},set:{unit:"unsur",verb:"olmal\u0131d\u0131r"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"giren",email:"epostag\xE2h",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO heng\xE2m\u0131",date:"ISO tarihi",time:"ISO zaman\u0131",duration:"ISO m\xFCddeti",ipv4:"IPv4 ni\u015F\xE2n\u0131",ipv6:"IPv6 ni\u015F\xE2n\u0131",cidrv4:"IPv4 menzili",cidrv6:"IPv6 menzili",base64:"base64-\u015Fifreli metin",base64url:"base64url-\u015Fifreli metin",json_string:"JSON metin",e164:"E.164 say\u0131s\u0131",jwt:"JWT",template_literal:"giren"},o={nan:"NaN",number:"numara",array:"saf",null:"gayb"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`F\xE2sit giren: umulan instanceof ${n.expected}, al\u0131nan ${p}`:`F\xE2sit giren: umulan ${s}, al\u0131nan ${p}`}case"invalid_value":return n.values.length===1?`F\xE2sit giren: umulan ${S(n.values[0])}`:`F\xE2sit tercih: m\xFBteberler ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`Fazla b\xFCy\xFCk: ${(c=n.origin)!=null?c:"value"}, ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"elements"} sahip olmal\u0131yd\u0131.`:`Fazla b\xFCy\xFCk: ${(l=n.origin)!=null?l:"value"}, ${s}${n.maximum.toString()} olmal\u0131yd\u0131.`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`Fazla k\xFC\xE7\xFCk: ${n.origin}, ${s}${n.minimum.toString()} ${f.unit} sahip olmal\u0131yd\u0131.`:`Fazla k\xFC\xE7\xFCk: ${n.origin}, ${s}${n.minimum.toString()} olmal\u0131yd\u0131.`}case"invalid_format":{let s=n;return s.format==="starts_with"?`F\xE2sit metin: "${s.prefix}" ile ba\u015Flamal\u0131.`:s.format==="ends_with"?`F\xE2sit metin: "${s.suffix}" ile bitmeli.`:s.format==="includes"?`F\xE2sit metin: "${s.includes}" ihtiv\xE2 etmeli.`:s.format==="regex"?`F\xE2sit metin: ${s.pattern} nak\u015F\u0131na uymal\u0131.`:`F\xE2sit ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`F\xE2sit say\u0131: ${n.divisor} kat\u0131 olmal\u0131yd\u0131.`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar ${n.keys.length>1?"s":""}: ${$(n.keys,", ")}`;case"invalid_key":return`${n.origin} i\xE7in tan\u0131nmayan anahtar var.`;case"invalid_union":return"Giren tan\u0131namad\u0131.";case"invalid_element":return`${n.origin} i\xE7in tan\u0131nmayan k\u0131ymet var.`;default:return"K\u0131ymet tan\u0131namad\u0131."}}};function by(){return{localeError:dI()}}var fI=()=>{let t={string:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"},file:{unit:"\u0628\u0627\u06CC\u067C\u0633",verb:"\u0648\u0644\u0631\u064A"},array:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"},set:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u0648\u0631\u0648\u062F\u064A",email:"\u0628\u0631\u06CC\u069A\u0646\u0627\u0644\u06CC\u06A9",url:"\u06CC\u0648 \u0622\u0631 \u0627\u0644",emoji:"\u0627\u06CC\u0645\u0648\u062C\u064A",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0646\u06CC\u067C\u0647 \u0627\u0648 \u0648\u062E\u062A",date:"\u0646\u06D0\u067C\u0647",time:"\u0648\u062E\u062A",duration:"\u0645\u0648\u062F\u0647",ipv4:"\u062F IPv4 \u067E\u062A\u0647",ipv6:"\u062F IPv6 \u067E\u062A\u0647",cidrv4:"\u062F IPv4 \u0633\u0627\u062D\u0647",cidrv6:"\u062F IPv6 \u0633\u0627\u062D\u0647",base64:"base64-encoded \u0645\u062A\u0646",base64url:"base64url-encoded \u0645\u062A\u0646",json_string:"JSON \u0645\u062A\u0646",e164:"\u062F E.164 \u0634\u0645\u06D0\u0631\u0647",jwt:"JWT",template_literal:"\u0648\u0631\u0648\u062F\u064A"},o={nan:"NaN",number:"\u0639\u062F\u062F",array:"\u0627\u0631\u06D0"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F instanceof ${n.expected} \u0648\u0627\u06CC, \u0645\u06AB\u0631 ${p} \u062A\u0631\u0644\u0627\u0633\u0647 \u0634\u0648`:`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${s} \u0648\u0627\u06CC, \u0645\u06AB\u0631 ${p} \u062A\u0631\u0644\u0627\u0633\u0647 \u0634\u0648`}case"invalid_value":return n.values.length===1?`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${S(n.values[0])} \u0648\u0627\u06CC`:`\u0646\u0627\u0633\u0645 \u0627\u0646\u062A\u062E\u0627\u0628: \u0628\u0627\u06CC\u062F \u06CC\u0648 \u0644\u0647 ${$(n.values,"|")} \u0685\u062E\u0647 \u0648\u0627\u06CC`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${(c=n.origin)!=null?c:"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"\u0639\u0646\u0635\u0631\u0648\u0646\u0647"} \u0648\u0644\u0631\u064A`:`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${(l=n.origin)!=null?l:"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${s}${n.maximum.toString()} \u0648\u064A`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${n.origin} \u0628\u0627\u06CC\u062F ${s}${n.minimum.toString()} ${f.unit} \u0648\u0644\u0631\u064A`:`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${n.origin} \u0628\u0627\u06CC\u062F ${s}${n.minimum.toString()} \u0648\u064A`}case"invalid_format":{let s=n;return s.format==="starts_with"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F "${s.prefix}" \u0633\u0631\u0647 \u067E\u06CC\u0644 \u0634\u064A`:s.format==="ends_with"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F "${s.suffix}" \u0633\u0631\u0647 \u067E\u0627\u06CC \u062A\u0647 \u0648\u0631\u0633\u064A\u0696\u064A`:s.format==="includes"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F "${s.includes}" \u0648\u0644\u0631\u064A`:s.format==="regex"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F ${s.pattern} \u0633\u0631\u0647 \u0645\u0637\u0627\u0628\u0642\u062A \u0648\u0644\u0631\u064A`:`${(d=r[s.format])!=null?d:n.format} \u0646\u0627\u0633\u0645 \u062F\u06CC`}case"not_multiple_of":return`\u0646\u0627\u0633\u0645 \u0639\u062F\u062F: \u0628\u0627\u06CC\u062F \u062F ${n.divisor} \u0645\u0636\u0631\u0628 \u0648\u064A`;case"unrecognized_keys":return`\u0646\u0627\u0633\u0645 ${n.keys.length>1?"\u06A9\u0644\u06CC\u0689\u0648\u0646\u0647":"\u06A9\u0644\u06CC\u0689"}: ${$(n.keys,", ")}`;case"invalid_key":return`\u0646\u0627\u0633\u0645 \u06A9\u0644\u06CC\u0689 \u067E\u0647 ${n.origin} \u06A9\u06D0`;case"invalid_union":return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A";case"invalid_element":return`\u0646\u0627\u0633\u0645 \u0639\u0646\u0635\u0631 \u067E\u0647 ${n.origin} \u06A9\u06D0`;default:return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A"}}};function xy(){return{localeError:fI()}}var pI=()=>{let t={string:{unit:"znak\xF3w",verb:"mie\u0107"},file:{unit:"bajt\xF3w",verb:"mie\u0107"},array:{unit:"element\xF3w",verb:"mie\u0107"},set:{unit:"element\xF3w",verb:"mie\u0107"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"wyra\u017Cenie",email:"adres email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i godzina w formacie ISO",date:"data w formacie ISO",time:"godzina w formacie ISO",duration:"czas trwania ISO",ipv4:"adres IPv4",ipv6:"adres IPv6",cidrv4:"zakres IPv4",cidrv6:"zakres IPv6",base64:"ci\u0105g znak\xF3w zakodowany w formacie base64",base64url:"ci\u0105g znak\xF3w zakodowany w formacie base64url",json_string:"ci\u0105g znak\xF3w w formacie JSON",e164:"liczba E.164",jwt:"JWT",template_literal:"wej\u015Bcie"},o={nan:"NaN",number:"liczba",array:"tablica"};return n=>{var i,a,c,u,l,d,s,f,p;switch(n.code){case"invalid_type":{let m=(i=o[n.expected])!=null?i:n.expected,h=P(n.input),v=(a=o[h])!=null?a:h;return/^[A-Z]/.test(n.expected)?`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano instanceof ${n.expected}, otrzymano ${v}`:`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${m}, otrzymano ${v}`}case"invalid_value":return n.values.length===1?`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${S(n.values[0])}`:`Nieprawid\u0142owa opcja: oczekiwano jednej z warto\u015Bci ${$(n.values,"|")}`;case"too_big":{let m=n.inclusive?"<=":"<",h=e(n.origin);return h?`Za du\u017Ca warto\u015B\u0107: oczekiwano, \u017Ce ${(c=n.origin)!=null?c:"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${m}${n.maximum.toString()} ${(u=h.unit)!=null?u:"element\xF3w"}`:`Zbyt du\u017C(y/a/e): oczekiwano, \u017Ce ${(l=n.origin)!=null?l:"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${m}${n.maximum.toString()}`}case"too_small":{let m=n.inclusive?">=":">",h=e(n.origin);return h?`Za ma\u0142a warto\u015B\u0107: oczekiwano, \u017Ce ${(d=n.origin)!=null?d:"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${m}${n.minimum.toString()} ${(s=h.unit)!=null?s:"element\xF3w"}`:`Zbyt ma\u0142(y/a/e): oczekiwano, \u017Ce ${(f=n.origin)!=null?f:"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${m}${n.minimum.toString()}`}case"invalid_format":{let m=n;return m.format==="starts_with"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi zaczyna\u0107 si\u0119 od "${m.prefix}"`:m.format==="ends_with"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi ko\u0144czy\u0107 si\u0119 na "${m.suffix}"`:m.format==="includes"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi zawiera\u0107 "${m.includes}"`:m.format==="regex"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi odpowiada\u0107 wzorcowi ${m.pattern}`:`Nieprawid\u0142ow(y/a/e) ${(p=r[m.format])!=null?p:n.format}`}case"not_multiple_of":return`Nieprawid\u0142owa liczba: musi by\u0107 wielokrotno\u015Bci\u0105 ${n.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${n.keys.length>1?"s":""}: ${$(n.keys,", ")}`;case"invalid_key":return`Nieprawid\u0142owy klucz w ${n.origin}`;case"invalid_union":return"Nieprawid\u0142owe dane wej\u015Bciowe";case"invalid_element":return`Nieprawid\u0142owa warto\u015B\u0107 w ${n.origin}`;default:return"Nieprawid\u0142owe dane wej\u015Bciowe"}}};function wy(){return{localeError:pI()}}var mI=()=>{let t={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"padr\xE3o",email:"endere\xE7o de e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e hora ISO",date:"data ISO",time:"hora ISO",duration:"dura\xE7\xE3o ISO",ipv4:"endere\xE7o IPv4",ipv6:"endere\xE7o IPv6",cidrv4:"faixa de IPv4",cidrv6:"faixa de IPv6",base64:"texto codificado em base64",base64url:"URL codificada em base64",json_string:"texto JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},o={nan:"NaN",number:"n\xFAmero",null:"nulo"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Tipo inv\xE1lido: esperado instanceof ${n.expected}, recebido ${p}`:`Tipo inv\xE1lido: esperado ${s}, recebido ${p}`}case"invalid_value":return n.values.length===1?`Entrada inv\xE1lida: esperado ${S(n.values[0])}`:`Op\xE7\xE3o inv\xE1lida: esperada uma das ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`Muito grande: esperado que ${(c=n.origin)!=null?c:"valor"} tivesse ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"elementos"}`:`Muito grande: esperado que ${(l=n.origin)!=null?l:"valor"} fosse ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`Muito pequeno: esperado que ${n.origin} tivesse ${s}${n.minimum.toString()} ${f.unit}`:`Muito pequeno: esperado que ${n.origin} fosse ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`Texto inv\xE1lido: deve come\xE7ar com "${s.prefix}"`:s.format==="ends_with"?`Texto inv\xE1lido: deve terminar com "${s.suffix}"`:s.format==="includes"?`Texto inv\xE1lido: deve incluir "${s.includes}"`:s.format==="regex"?`Texto inv\xE1lido: deve corresponder ao padr\xE3o ${s.pattern}`:`${(d=r[s.format])!=null?d:n.format} inv\xE1lido`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: deve ser m\xFAltiplo de ${n.divisor}`;case"unrecognized_keys":return`Chave${n.keys.length>1?"s":""} desconhecida${n.keys.length>1?"s":""}: ${$(n.keys,", ")}`;case"invalid_key":return`Chave inv\xE1lida em ${n.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido em ${n.origin}`;default:return"Campo inv\xE1lido"}}};function ky(){return{localeError:mI()}}function Sy(t,e,r,o){let n=Math.abs(t),i=n%10,a=n%100;return a>=11&&a<=19?o:i===1?e:i>=2&&i<=4?r:o}var hI=()=>{let t={string:{unit:{one:"\u0441\u0438\u043C\u0432\u043E\u043B",few:"\u0441\u0438\u043C\u0432\u043E\u043B\u0430",many:"\u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"},file:{unit:{one:"\u0431\u0430\u0439\u0442",few:"\u0431\u0430\u0439\u0442\u0430",many:"\u0431\u0430\u0439\u0442"},verb:"\u0438\u043C\u0435\u0442\u044C"},array:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"},set:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u0432\u0432\u043E\u0434",email:"email \u0430\u0434\u0440\u0435\u0441",url:"URL",emoji:"\u044D\u043C\u043E\u0434\u0437\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0430 \u0438 \u0432\u0440\u0435\u043C\u044F",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0432\u0440\u0435\u043C\u044F",duration:"ISO \u0434\u043B\u0438\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u044C",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441",cidrv4:"IPv4 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",base64:"\u0441\u0442\u0440\u043E\u043A\u0430 \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 base64",base64url:"\u0441\u0442\u0440\u043E\u043A\u0430 \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 base64url",json_string:"JSON \u0441\u0442\u0440\u043E\u043A\u0430",e164:"\u043D\u043E\u043C\u0435\u0440 E.164",jwt:"JWT",template_literal:"\u0432\u0432\u043E\u0434"},o={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0441\u0438\u0432"};return n=>{var i,a,c,u,l;switch(n.code){case"invalid_type":{let d=(i=o[n.expected])!=null?i:n.expected,s=P(n.input),f=(a=o[s])!=null?a:s;return/^[A-Z]/.test(n.expected)?`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C instanceof ${n.expected}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u043E ${f}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${d}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u043E ${f}`}case"invalid_value":return n.values.length===1?`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${S(n.values[0])}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0430\u0440\u0438\u0430\u043D\u0442: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C \u043E\u0434\u043D\u043E \u0438\u0437 ${$(n.values,"|")}`;case"too_big":{let d=n.inclusive?"<=":"<",s=e(n.origin);if(s){let f=Number(n.maximum),p=Sy(f,s.unit.one,s.unit.few,s.unit.many);return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${(c=n.origin)!=null?c:"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${d}${n.maximum.toString()} ${p}`}return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${(u=n.origin)!=null?u:"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 ${d}${n.maximum.toString()}`}case"too_small":{let d=n.inclusive?">=":">",s=e(n.origin);if(s){let f=Number(n.minimum),p=Sy(f,s.unit.one,s.unit.few,s.unit.many);return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${d}${n.minimum.toString()} ${p}`}return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin} \u0431\u0443\u0434\u0435\u0442 ${d}${n.minimum.toString()}`}case"invalid_format":{let d=n;return d.format==="starts_with"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u043D\u0430\u0447\u0438\u043D\u0430\u0442\u044C\u0441\u044F \u0441 "${d.prefix}"`:d.format==="ends_with"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0437\u0430\u043A\u0430\u043D\u0447\u0438\u0432\u0430\u0442\u044C\u0441\u044F \u043D\u0430 "${d.suffix}"`:d.format==="includes"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u0442\u044C "${d.includes}"`:d.format==="regex"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043E\u0432\u0430\u0442\u044C \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${d.pattern}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 ${(l=r[d.format])!=null?l:n.format}`}case"not_multiple_of":return`\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0447\u0438\u0441\u043B\u043E: \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043A\u0440\u0430\u0442\u043D\u044B\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u043E\u0437\u043D\u0430\u043D\u043D${n.keys.length>1?"\u044B\u0435":"\u044B\u0439"} \u043A\u043B\u044E\u0447${n.keys.length>1?"\u0438":""}: ${$(n.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u043A\u043B\u044E\u0447 \u0432 ${n.origin}`;case"invalid_union":return"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0435 \u0432\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435";case"invalid_element":return`\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0432 ${n.origin}`;default:return"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0435 \u0432\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435"}}};function zy(){return{localeError:hI()}}var gI=()=>{let t={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"vnos",email:"e-po\u0161tni naslov",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum in \u010Das",date:"ISO datum",time:"ISO \u010Das",duration:"ISO trajanje",ipv4:"IPv4 naslov",ipv6:"IPv6 naslov",cidrv4:"obseg IPv4",cidrv6:"obseg IPv6",base64:"base64 kodiran niz",base64url:"base64url kodiran niz",json_string:"JSON niz",e164:"E.164 \u0161tevilka",jwt:"JWT",template_literal:"vnos"},o={nan:"NaN",number:"\u0161tevilo",array:"tabela"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Neveljaven vnos: pri\u010Dakovano instanceof ${n.expected}, prejeto ${p}`:`Neveljaven vnos: pri\u010Dakovano ${s}, prejeto ${p}`}case"invalid_value":return n.values.length===1?`Neveljaven vnos: pri\u010Dakovano ${S(n.values[0])}`:`Neveljavna mo\u017Enost: pri\u010Dakovano eno izmed ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`Preveliko: pri\u010Dakovano, da bo ${(c=n.origin)!=null?c:"vrednost"} imelo ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"elementov"}`:`Preveliko: pri\u010Dakovano, da bo ${(l=n.origin)!=null?l:"vrednost"} ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`Premajhno: pri\u010Dakovano, da bo ${n.origin} imelo ${s}${n.minimum.toString()} ${f.unit}`:`Premajhno: pri\u010Dakovano, da bo ${n.origin} ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`Neveljaven niz: mora se za\u010Deti z "${s.prefix}"`:s.format==="ends_with"?`Neveljaven niz: mora se kon\u010Dati z "${s.suffix}"`:s.format==="includes"?`Neveljaven niz: mora vsebovati "${s.includes}"`:s.format==="regex"?`Neveljaven niz: mora ustrezati vzorcu ${s.pattern}`:`Neveljaven ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`Neveljavno \u0161tevilo: mora biti ve\u010Dkratnik ${n.divisor}`;case"unrecognized_keys":return`Neprepoznan${n.keys.length>1?"i klju\u010Di":" klju\u010D"}: ${$(n.keys,", ")}`;case"invalid_key":return`Neveljaven klju\u010D v ${n.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${n.origin}`;default:return"Neveljaven vnos"}}};function Iy(){return{localeError:gI()}}var vI=()=>{let t={string:{unit:"tecken",verb:"att ha"},file:{unit:"bytes",verb:"att ha"},array:{unit:"objekt",verb:"att inneh\xE5lla"},set:{unit:"objekt",verb:"att inneh\xE5lla"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"regulj\xE4rt uttryck",email:"e-postadress",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datum och tid",date:"ISO-datum",time:"ISO-tid",duration:"ISO-varaktighet",ipv4:"IPv4-intervall",ipv6:"IPv6-intervall",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodad str\xE4ng",base64url:"base64url-kodad str\xE4ng",json_string:"JSON-str\xE4ng",e164:"E.164-nummer",jwt:"JWT",template_literal:"mall-literal"},o={nan:"NaN",number:"antal",array:"lista"};return n=>{var i,a,c,u,l,d,s,f,p,m;switch(n.code){case"invalid_type":{let h=(i=o[n.expected])!=null?i:n.expected,v=P(n.input),y=(a=o[v])!=null?a:v;return/^[A-Z]/.test(n.expected)?`Ogiltig inmatning: f\xF6rv\xE4ntat instanceof ${n.expected}, fick ${y}`:`Ogiltig inmatning: f\xF6rv\xE4ntat ${h}, fick ${y}`}case"invalid_value":return n.values.length===1?`Ogiltig inmatning: f\xF6rv\xE4ntat ${S(n.values[0])}`:`Ogiltigt val: f\xF6rv\xE4ntade en av ${$(n.values,"|")}`;case"too_big":{let h=n.inclusive?"<=":"<",v=e(n.origin);return v?`F\xF6r stor(t): f\xF6rv\xE4ntade ${(c=n.origin)!=null?c:"v\xE4rdet"} att ha ${h}${n.maximum.toString()} ${(u=v.unit)!=null?u:"element"}`:`F\xF6r stor(t): f\xF6rv\xE4ntat ${(l=n.origin)!=null?l:"v\xE4rdet"} att ha ${h}${n.maximum.toString()}`}case"too_small":{let h=n.inclusive?">=":">",v=e(n.origin);return v?`F\xF6r lite(t): f\xF6rv\xE4ntade ${(d=n.origin)!=null?d:"v\xE4rdet"} att ha ${h}${n.minimum.toString()} ${v.unit}`:`F\xF6r lite(t): f\xF6rv\xE4ntade ${(s=n.origin)!=null?s:"v\xE4rdet"} att ha ${h}${n.minimum.toString()}`}case"invalid_format":{let h=n;return h.format==="starts_with"?`Ogiltig str\xE4ng: m\xE5ste b\xF6rja med "${h.prefix}"`:h.format==="ends_with"?`Ogiltig str\xE4ng: m\xE5ste sluta med "${h.suffix}"`:h.format==="includes"?`Ogiltig str\xE4ng: m\xE5ste inneh\xE5lla "${h.includes}"`:h.format==="regex"?`Ogiltig str\xE4ng: m\xE5ste matcha m\xF6nstret "${h.pattern}"`:`Ogiltig(t) ${(f=r[h.format])!=null?f:n.format}`}case"not_multiple_of":return`Ogiltigt tal: m\xE5ste vara en multipel av ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"Ok\xE4nda nycklar":"Ok\xE4nd nyckel"}: ${$(n.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${(p=n.origin)!=null?p:"v\xE4rdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt v\xE4rde i ${(m=n.origin)!=null?m:"v\xE4rdet"}`;default:return"Ogiltig input"}}};function Py(){return{localeError:vI()}}var _I=()=>{let t={string:{unit:"\u0B8E\u0BB4\u0BC1\u0BA4\u0BCD\u0BA4\u0BC1\u0B95\u0BCD\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},file:{unit:"\u0BAA\u0BC8\u0B9F\u0BCD\u0B9F\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},array:{unit:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},set:{unit:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1",email:"\u0BAE\u0BBF\u0BA9\u0BCD\u0BA9\u0B9E\u0BCD\u0B9A\u0BB2\u0BCD \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0BA4\u0BC7\u0BA4\u0BBF \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",date:"ISO \u0BA4\u0BC7\u0BA4\u0BBF",time:"ISO \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",duration:"ISO \u0B95\u0BBE\u0BB2 \u0B85\u0BB3\u0BB5\u0BC1",ipv4:"IPv4 \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",ipv6:"IPv6 \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",cidrv4:"IPv4 \u0BB5\u0BB0\u0BAE\u0BCD\u0BAA\u0BC1",cidrv6:"IPv6 \u0BB5\u0BB0\u0BAE\u0BCD\u0BAA\u0BC1",base64:"base64-encoded \u0B9A\u0BB0\u0BAE\u0BCD",base64url:"base64url-encoded \u0B9A\u0BB0\u0BAE\u0BCD",json_string:"JSON \u0B9A\u0BB0\u0BAE\u0BCD",e164:"E.164 \u0B8E\u0BA3\u0BCD",jwt:"JWT",template_literal:"input"},o={nan:"NaN",number:"\u0B8E\u0BA3\u0BCD",array:"\u0B85\u0BA3\u0BBF",null:"\u0BB5\u0BC6\u0BB1\u0BC1\u0BAE\u0BC8"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 instanceof ${n.expected}, \u0BAA\u0BC6\u0BB1\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${p}`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${s}, \u0BAA\u0BC6\u0BB1\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${p}`}case"invalid_value":return n.values.length===1?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${S(n.values[0])}`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BB5\u0BBF\u0BB0\u0BC1\u0BAA\u0BCD\u0BAA\u0BAE\u0BCD: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${$(n.values,"|")} \u0B87\u0BB2\u0BCD \u0B92\u0BA9\u0BCD\u0BB1\u0BC1`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`\u0BAE\u0BBF\u0B95 \u0BAA\u0BC6\u0BB0\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${(c=n.origin)!=null?c:"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD"} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BAE\u0BBF\u0B95 \u0BAA\u0BC6\u0BB0\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${(l=n.origin)!=null?l:"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${s}${n.maximum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`\u0BAE\u0BBF\u0B95\u0B9A\u0BCD \u0B9A\u0BBF\u0BB1\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin} ${s}${n.minimum.toString()} ${f.unit} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BAE\u0BBF\u0B95\u0B9A\u0BCD \u0B9A\u0BBF\u0BB1\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin} ${s}${n.minimum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"invalid_format":{let s=n;return s.format==="starts_with"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${s.prefix}" \u0B87\u0BB2\u0BCD \u0BA4\u0BCA\u0B9F\u0B99\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:s.format==="ends_with"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${s.suffix}" \u0B87\u0BB2\u0BCD \u0BAE\u0BC1\u0B9F\u0BBF\u0BB5\u0B9F\u0BC8\u0BAF \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:s.format==="includes"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${s.includes}" \u0B90 \u0B89\u0BB3\u0BCD\u0BB3\u0B9F\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:s.format==="regex"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: ${s.pattern} \u0BAE\u0BC1\u0BB1\u0BC8\u0BAA\u0BBE\u0B9F\u0BCD\u0B9F\u0BC1\u0B9F\u0BA9\u0BCD \u0BAA\u0BCA\u0BB0\u0BC1\u0BA8\u0BCD\u0BA4 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B8E\u0BA3\u0BCD: ${n.divisor} \u0B87\u0BA9\u0BCD \u0BAA\u0BB2\u0BAE\u0BBE\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`;case"unrecognized_keys":return`\u0B85\u0B9F\u0BC8\u0BAF\u0BBE\u0BB3\u0BAE\u0BCD \u0BA4\u0BC6\u0BB0\u0BBF\u0BAF\u0BBE\u0BA4 \u0BB5\u0BBF\u0B9A\u0BC8${n.keys.length>1?"\u0B95\u0BB3\u0BCD":""}: ${$(n.keys,", ")}`;case"invalid_key":return`${n.origin} \u0B87\u0BB2\u0BCD \u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BB5\u0BBF\u0B9A\u0BC8`;case"invalid_union":return"\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1";case"invalid_element":return`${n.origin} \u0B87\u0BB2\u0BCD \u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1`;default:return"\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1"}}};function Ey(){return{localeError:_I()}}var yI=()=>{let t={string:{unit:"\u0E15\u0E31\u0E27\u0E2D\u0E31\u0E01\u0E29\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},file:{unit:"\u0E44\u0E1A\u0E15\u0E4C",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},array:{unit:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},set:{unit:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19",email:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48\u0E2D\u0E35\u0E40\u0E21\u0E25",url:"URL",emoji:"\u0E2D\u0E34\u0E42\u0E21\u0E08\u0E34",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",date:"\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E41\u0E1A\u0E1A ISO",time:"\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",duration:"\u0E0A\u0E48\u0E27\u0E07\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",ipv4:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv4",ipv6:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv6",cidrv4:"\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv4",cidrv6:"\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv6",base64:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64",base64url:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64 \u0E2A\u0E33\u0E2B\u0E23\u0E31\u0E1A URL",json_string:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A JSON",e164:"\u0E40\u0E1A\u0E2D\u0E23\u0E4C\u0E42\u0E17\u0E23\u0E28\u0E31\u0E1E\u0E17\u0E4C\u0E23\u0E30\u0E2B\u0E27\u0E48\u0E32\u0E07\u0E1B\u0E23\u0E30\u0E40\u0E17\u0E28 (E.164)",jwt:"\u0E42\u0E17\u0E40\u0E04\u0E19 JWT",template_literal:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19"},o={nan:"NaN",number:"\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02",array:"\u0E2D\u0E32\u0E23\u0E4C\u0E40\u0E23\u0E22\u0E4C (Array)",null:"\u0E44\u0E21\u0E48\u0E21\u0E35\u0E04\u0E48\u0E32 (null)"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 instanceof ${n.expected} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${p}`:`\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${s} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${p}`}case"invalid_value":return n.values.length===1?`\u0E04\u0E48\u0E32\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${S(n.values[0])}`:`\u0E15\u0E31\u0E27\u0E40\u0E25\u0E37\u0E2D\u0E01\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19\u0E2B\u0E19\u0E36\u0E48\u0E07\u0E43\u0E19 ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"\u0E44\u0E21\u0E48\u0E40\u0E01\u0E34\u0E19":"\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32",f=e(n.origin);return f?`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${(c=n.origin)!=null?c:"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${s} ${n.maximum.toString()} ${(u=f.unit)!=null?u:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23"}`:`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${(l=n.origin)!=null?l:"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${s} ${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?"\u0E2D\u0E22\u0E48\u0E32\u0E07\u0E19\u0E49\u0E2D\u0E22":"\u0E21\u0E32\u0E01\u0E01\u0E27\u0E48\u0E32",f=e(n.origin);return f?`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${s} ${n.minimum.toString()} ${f.unit}`:`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${s} ${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E02\u0E36\u0E49\u0E19\u0E15\u0E49\u0E19\u0E14\u0E49\u0E27\u0E22 "${s.prefix}"`:s.format==="ends_with"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E25\u0E07\u0E17\u0E49\u0E32\u0E22\u0E14\u0E49\u0E27\u0E22 "${s.suffix}"`:s.format==="includes"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E21\u0E35 "${s.includes}" \u0E2D\u0E22\u0E39\u0E48\u0E43\u0E19\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21`:s.format==="regex"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E15\u0E49\u0E2D\u0E07\u0E15\u0E23\u0E07\u0E01\u0E31\u0E1A\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E17\u0E35\u0E48\u0E01\u0E33\u0E2B\u0E19\u0E14 ${s.pattern}`:`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E15\u0E49\u0E2D\u0E07\u0E40\u0E1B\u0E47\u0E19\u0E08\u0E33\u0E19\u0E27\u0E19\u0E17\u0E35\u0E48\u0E2B\u0E32\u0E23\u0E14\u0E49\u0E27\u0E22 ${n.divisor} \u0E44\u0E14\u0E49\u0E25\u0E07\u0E15\u0E31\u0E27`;case"unrecognized_keys":return`\u0E1E\u0E1A\u0E04\u0E35\u0E22\u0E4C\u0E17\u0E35\u0E48\u0E44\u0E21\u0E48\u0E23\u0E39\u0E49\u0E08\u0E31\u0E01: ${$(n.keys,", ")}`;case"invalid_key":return`\u0E04\u0E35\u0E22\u0E4C\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${n.origin}`;case"invalid_union":return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E44\u0E21\u0E48\u0E15\u0E23\u0E07\u0E01\u0E31\u0E1A\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E22\u0E39\u0E40\u0E19\u0E35\u0E22\u0E19\u0E17\u0E35\u0E48\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E44\u0E27\u0E49";case"invalid_element":return`\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${n.origin}`;default:return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07"}}};function Ty(){return{localeError:yI()}}var $I=()=>{let t={string:{unit:"karakter",verb:"olmal\u0131"},file:{unit:"bayt",verb:"olmal\u0131"},array:{unit:"\xF6\u011Fe",verb:"olmal\u0131"},set:{unit:"\xF6\u011Fe",verb:"olmal\u0131"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"girdi",email:"e-posta adresi",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO tarih ve saat",date:"ISO tarih",time:"ISO saat",duration:"ISO s\xFCre",ipv4:"IPv4 adresi",ipv6:"IPv6 adresi",cidrv4:"IPv4 aral\u0131\u011F\u0131",cidrv6:"IPv6 aral\u0131\u011F\u0131",base64:"base64 ile \u015Fifrelenmi\u015F metin",base64url:"base64url ile \u015Fifrelenmi\u015F metin",json_string:"JSON dizesi",e164:"E.164 say\u0131s\u0131",jwt:"JWT",template_literal:"\u015Eablon dizesi"},o={nan:"NaN"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`Ge\xE7ersiz de\u011Fer: beklenen instanceof ${n.expected}, al\u0131nan ${p}`:`Ge\xE7ersiz de\u011Fer: beklenen ${s}, al\u0131nan ${p}`}case"invalid_value":return n.values.length===1?`Ge\xE7ersiz de\u011Fer: beklenen ${S(n.values[0])}`:`Ge\xE7ersiz se\xE7enek: a\u015Fa\u011F\u0131dakilerden biri olmal\u0131: ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`\xC7ok b\xFCy\xFCk: beklenen ${(c=n.origin)!=null?c:"de\u011Fer"} ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"\xF6\u011Fe"}`:`\xC7ok b\xFCy\xFCk: beklenen ${(l=n.origin)!=null?l:"de\u011Fer"} ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`\xC7ok k\xFC\xE7\xFCk: beklenen ${n.origin} ${s}${n.minimum.toString()} ${f.unit}`:`\xC7ok k\xFC\xE7\xFCk: beklenen ${n.origin} ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`Ge\xE7ersiz metin: "${s.prefix}" ile ba\u015Flamal\u0131`:s.format==="ends_with"?`Ge\xE7ersiz metin: "${s.suffix}" ile bitmeli`:s.format==="includes"?`Ge\xE7ersiz metin: "${s.includes}" i\xE7ermeli`:s.format==="regex"?`Ge\xE7ersiz metin: ${s.pattern} desenine uymal\u0131`:`Ge\xE7ersiz ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`Ge\xE7ersiz say\u0131: ${n.divisor} ile tam b\xF6l\xFCnebilmeli`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar${n.keys.length>1?"lar":""}: ${$(n.keys,", ")}`;case"invalid_key":return`${n.origin} i\xE7inde ge\xE7ersiz anahtar`;case"invalid_union":return"Ge\xE7ersiz de\u011Fer";case"invalid_element":return`${n.origin} i\xE7inde ge\xE7ersiz de\u011Fer`;default:return"Ge\xE7ersiz de\u011Fer"}}};function Oy(){return{localeError:$I()}}var bI=()=>{let t={string:{unit:"\u0441\u0438\u043C\u0432\u043E\u043B\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},file:{unit:"\u0431\u0430\u0439\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},array:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},set:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456",email:"\u0430\u0434\u0440\u0435\u0441\u0430 \u0435\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u043E\u0457 \u043F\u043E\u0448\u0442\u0438",url:"URL",emoji:"\u0435\u043C\u043E\u0434\u0437\u0456",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0434\u0430\u0442\u0430 \u0442\u0430 \u0447\u0430\u0441 ISO",date:"\u0434\u0430\u0442\u0430 ISO",time:"\u0447\u0430\u0441 ISO",duration:"\u0442\u0440\u0438\u0432\u0430\u043B\u0456\u0441\u0442\u044C ISO",ipv4:"\u0430\u0434\u0440\u0435\u0441\u0430 IPv4",ipv6:"\u0430\u0434\u0440\u0435\u0441\u0430 IPv6",cidrv4:"\u0434\u0456\u0430\u043F\u0430\u0437\u043E\u043D IPv4",cidrv6:"\u0434\u0456\u0430\u043F\u0430\u0437\u043E\u043D IPv6",base64:"\u0440\u044F\u0434\u043E\u043A \u0443 \u043A\u043E\u0434\u0443\u0432\u0430\u043D\u043D\u0456 base64",base64url:"\u0440\u044F\u0434\u043E\u043A \u0443 \u043A\u043E\u0434\u0443\u0432\u0430\u043D\u043D\u0456 base64url",json_string:"\u0440\u044F\u0434\u043E\u043A JSON",e164:"\u043D\u043E\u043C\u0435\u0440 E.164",jwt:"JWT",template_literal:"\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"},o={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0438\u0432"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F instanceof ${n.expected}, \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043E ${p}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F ${s}, \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043E ${p}`}case"invalid_value":return n.values.length===1?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F ${S(n.values[0])}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0430 \u043E\u043F\u0446\u0456\u044F: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F \u043E\u0434\u043D\u0435 \u0437 ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u0432\u0435\u043B\u0438\u043A\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${(c=n.origin)!=null?c:"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} ${f.verb} ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432"}`:`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u0432\u0435\u043B\u0438\u043A\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${(l=n.origin)!=null?l:"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} \u0431\u0443\u0434\u0435 ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u043C\u0430\u043B\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin} ${f.verb} ${s}${n.minimum.toString()} ${f.unit}`:`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u043C\u0430\u043B\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin} \u0431\u0443\u0434\u0435 ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u043F\u043E\u0447\u0438\u043D\u0430\u0442\u0438\u0441\u044F \u0437 "${s.prefix}"`:s.format==="ends_with"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u0437\u0430\u043A\u0456\u043D\u0447\u0443\u0432\u0430\u0442\u0438\u0441\u044F \u043D\u0430 "${s.suffix}"`:s.format==="includes"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u043C\u0456\u0441\u0442\u0438\u0442\u0438 "${s.includes}"`:s.format==="regex"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u0432\u0456\u0434\u043F\u043E\u0432\u0456\u0434\u0430\u0442\u0438 \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${s.pattern}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0435 \u0447\u0438\u0441\u043B\u043E: \u043F\u043E\u0432\u0438\u043D\u043D\u043E \u0431\u0443\u0442\u0438 \u043A\u0440\u0430\u0442\u043D\u0438\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u043E\u0437\u043F\u0456\u0437\u043D\u0430\u043D\u0438\u0439 \u043A\u043B\u044E\u0447${n.keys.length>1?"\u0456":""}: ${$(n.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u043A\u043B\u044E\u0447 \u0443 ${n.origin}`;case"invalid_union":return"\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456";case"invalid_element":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F \u0443 ${n.origin}`;default:return"\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"}}};function hu(){return{localeError:bI()}}function jy(){return hu()}var xI=()=>{let t={string:{unit:"\u062D\u0631\u0648\u0641",verb:"\u06C1\u0648\u0646\u0627"},file:{unit:"\u0628\u0627\u0626\u0679\u0633",verb:"\u06C1\u0648\u0646\u0627"},array:{unit:"\u0622\u0626\u0679\u0645\u0632",verb:"\u06C1\u0648\u0646\u0627"},set:{unit:"\u0622\u0626\u0679\u0645\u0632",verb:"\u06C1\u0648\u0646\u0627"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u0627\u0646 \u067E\u0679",email:"\u0627\u06CC \u0645\u06CC\u0644 \u0627\u06CC\u0688\u0631\u06CC\u0633",url:"\u06CC\u0648 \u0622\u0631 \u0627\u06CC\u0644",emoji:"\u0627\u06CC\u0645\u0648\u062C\u06CC",uuid:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",uuidv4:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC \u0648\u06CC 4",uuidv6:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC \u0648\u06CC 6",nanoid:"\u0646\u06CC\u0646\u0648 \u0622\u0626\u06CC \u0688\u06CC",guid:"\u062C\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",cuid:"\u0633\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",cuid2:"\u0633\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC 2",ulid:"\u06CC\u0648 \u0627\u06CC\u0644 \u0622\u0626\u06CC \u0688\u06CC",xid:"\u0627\u06CC\u06A9\u0633 \u0622\u0626\u06CC \u0688\u06CC",ksuid:"\u06A9\u06D2 \u0627\u06CC\u0633 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",datetime:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0688\u06CC\u0679 \u0679\u0627\u0626\u0645",date:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u062A\u0627\u0631\u06CC\u062E",time:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0648\u0642\u062A",duration:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0645\u062F\u062A",ipv4:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 4 \u0627\u06CC\u0688\u0631\u06CC\u0633",ipv6:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 6 \u0627\u06CC\u0688\u0631\u06CC\u0633",cidrv4:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 4 \u0631\u06CC\u0646\u062C",cidrv6:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 6 \u0631\u06CC\u0646\u062C",base64:"\u0628\u06CC\u0633 64 \u0627\u0646 \u06A9\u0648\u0688\u0688 \u0633\u0679\u0631\u0646\u06AF",base64url:"\u0628\u06CC\u0633 64 \u06CC\u0648 \u0622\u0631 \u0627\u06CC\u0644 \u0627\u0646 \u06A9\u0648\u0688\u0688 \u0633\u0679\u0631\u0646\u06AF",json_string:"\u062C\u06D2 \u0627\u06CC\u0633 \u0627\u0648 \u0627\u06CC\u0646 \u0633\u0679\u0631\u0646\u06AF",e164:"\u0627\u06CC 164 \u0646\u0645\u0628\u0631",jwt:"\u062C\u06D2 \u0688\u0628\u0644\u06CC\u0648 \u0679\u06CC",template_literal:"\u0627\u0646 \u067E\u0679"},o={nan:"NaN",number:"\u0646\u0645\u0628\u0631",array:"\u0622\u0631\u06D2",null:"\u0646\u0644"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: instanceof ${n.expected} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627\u060C ${p} \u0645\u0648\u0635\u0648\u0644 \u06C1\u0648\u0627`:`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${s} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627\u060C ${p} \u0645\u0648\u0635\u0648\u0644 \u06C1\u0648\u0627`}case"invalid_value":return n.values.length===1?`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${S(n.values[0])} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`:`\u063A\u0644\u0637 \u0622\u067E\u0634\u0646: ${$(n.values,"|")} \u0645\u06CC\u06BA \u0633\u06D2 \u0627\u06CC\u06A9 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`\u0628\u06C1\u062A \u0628\u0691\u0627: ${(c=n.origin)!=null?c:"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u06D2 ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"\u0639\u0646\u0627\u0635\u0631"} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`:`\u0628\u06C1\u062A \u0628\u0691\u0627: ${(l=n.origin)!=null?l:"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u0627 ${s}${n.maximum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${n.origin} \u06A9\u06D2 ${s}${n.minimum.toString()} ${f.unit} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`:`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${n.origin} \u06A9\u0627 ${s}${n.minimum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"invalid_format":{let s=n;return s.format==="starts_with"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${s.prefix}" \u0633\u06D2 \u0634\u0631\u0648\u0639 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:s.format==="ends_with"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${s.suffix}" \u067E\u0631 \u062E\u062A\u0645 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:s.format==="includes"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${s.includes}" \u0634\u0627\u0645\u0644 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:s.format==="regex"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: \u067E\u06CC\u0679\u0631\u0646 ${s.pattern} \u0633\u06D2 \u0645\u06CC\u0686 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:`\u063A\u0644\u0637 ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`\u063A\u0644\u0637 \u0646\u0645\u0628\u0631: ${n.divisor} \u06A9\u0627 \u0645\u0636\u0627\u0639\u0641 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`;case"unrecognized_keys":return`\u063A\u06CC\u0631 \u062A\u0633\u0644\u06CC\u0645 \u0634\u062F\u06C1 \u06A9\u06CC${n.keys.length>1?"\u0632":""}: ${$(n.keys,"\u060C ")}`;case"invalid_key":return`${n.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u06A9\u06CC`;case"invalid_union":return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679";case"invalid_element":return`${n.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u0648\u06CC\u0644\u06CC\u0648`;default:return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679"}}};function Ry(){return{localeError:xI()}}var wI=()=>{let t={string:{unit:"belgi",verb:"bo\u2018lishi kerak"},file:{unit:"bayt",verb:"bo\u2018lishi kerak"},array:{unit:"element",verb:"bo\u2018lishi kerak"},set:{unit:"element",verb:"bo\u2018lishi kerak"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"kirish",email:"elektron pochta manzili",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO sana va vaqti",date:"ISO sana",time:"ISO vaqt",duration:"ISO davomiylik",ipv4:"IPv4 manzil",ipv6:"IPv6 manzil",mac:"MAC manzil",cidrv4:"IPv4 diapazon",cidrv6:"IPv6 diapazon",base64:"base64 kodlangan satr",base64url:"base64url kodlangan satr",json_string:"JSON satr",e164:"E.164 raqam",jwt:"JWT",template_literal:"kirish"},o={nan:"NaN",number:"raqam",array:"massiv"};return n=>{var i,a,c,u,l;switch(n.code){case"invalid_type":{let d=(i=o[n.expected])!=null?i:n.expected,s=P(n.input),f=(a=o[s])!=null?a:s;return/^[A-Z]/.test(n.expected)?`Noto\u2018g\u2018ri kirish: kutilgan instanceof ${n.expected}, qabul qilingan ${f}`:`Noto\u2018g\u2018ri kirish: kutilgan ${d}, qabul qilingan ${f}`}case"invalid_value":return n.values.length===1?`Noto\u2018g\u2018ri kirish: kutilgan ${S(n.values[0])}`:`Noto\u2018g\u2018ri variant: quyidagilardan biri kutilgan ${$(n.values,"|")}`;case"too_big":{let d=n.inclusive?"<=":"<",s=e(n.origin);return s?`Juda katta: kutilgan ${(c=n.origin)!=null?c:"qiymat"} ${d}${n.maximum.toString()} ${s.unit} ${s.verb}`:`Juda katta: kutilgan ${(u=n.origin)!=null?u:"qiymat"} ${d}${n.maximum.toString()}`}case"too_small":{let d=n.inclusive?">=":">",s=e(n.origin);return s?`Juda kichik: kutilgan ${n.origin} ${d}${n.minimum.toString()} ${s.unit} ${s.verb}`:`Juda kichik: kutilgan ${n.origin} ${d}${n.minimum.toString()}`}case"invalid_format":{let d=n;return d.format==="starts_with"?`Noto\u2018g\u2018ri satr: "${d.prefix}" bilan boshlanishi kerak`:d.format==="ends_with"?`Noto\u2018g\u2018ri satr: "${d.suffix}" bilan tugashi kerak`:d.format==="includes"?`Noto\u2018g\u2018ri satr: "${d.includes}" ni o\u2018z ichiga olishi kerak`:d.format==="regex"?`Noto\u2018g\u2018ri satr: ${d.pattern} shabloniga mos kelishi kerak`:`Noto\u2018g\u2018ri ${(l=r[d.format])!=null?l:n.format}`}case"not_multiple_of":return`Noto\u2018g\u2018ri raqam: ${n.divisor} ning karralisi bo\u2018lishi kerak`;case"unrecognized_keys":return`Noma\u2019lum kalit${n.keys.length>1?"lar":""}: ${$(n.keys,", ")}`;case"invalid_key":return`${n.origin} dagi kalit noto\u2018g\u2018ri`;case"invalid_union":return"Noto\u2018g\u2018ri kirish";case"invalid_element":return`${n.origin} da noto\u2018g\u2018ri qiymat`;default:return"Noto\u2018g\u2018ri kirish"}}};function Ny(){return{localeError:wI()}}var kI=()=>{let t={string:{unit:"k\xFD t\u1EF1",verb:"c\xF3"},file:{unit:"byte",verb:"c\xF3"},array:{unit:"ph\u1EA7n t\u1EED",verb:"c\xF3"},set:{unit:"ph\u1EA7n t\u1EED",verb:"c\xF3"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u0111\u1EA7u v\xE0o",email:"\u0111\u1ECBa ch\u1EC9 email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ng\xE0y gi\u1EDD ISO",date:"ng\xE0y ISO",time:"gi\u1EDD ISO",duration:"kho\u1EA3ng th\u1EDDi gian ISO",ipv4:"\u0111\u1ECBa ch\u1EC9 IPv4",ipv6:"\u0111\u1ECBa ch\u1EC9 IPv6",cidrv4:"d\u1EA3i IPv4",cidrv6:"d\u1EA3i IPv6",base64:"chu\u1ED7i m\xE3 h\xF3a base64",base64url:"chu\u1ED7i m\xE3 h\xF3a base64url",json_string:"chu\u1ED7i JSON",e164:"s\u1ED1 E.164",jwt:"JWT",template_literal:"\u0111\u1EA7u v\xE0o"},o={nan:"NaN",number:"s\u1ED1",array:"m\u1EA3ng"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i instanceof ${n.expected}, nh\u1EADn \u0111\u01B0\u1EE3c ${p}`:`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${s}, nh\u1EADn \u0111\u01B0\u1EE3c ${p}`}case"invalid_value":return n.values.length===1?`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${S(n.values[0])}`:`T\xF9y ch\u1ECDn kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i m\u1ED9t trong c\xE1c gi\xE1 tr\u1ECB ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${(c=n.origin)!=null?c:"gi\xE1 tr\u1ECB"} ${f.verb} ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"ph\u1EA7n t\u1EED"}`:`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${(l=n.origin)!=null?l:"gi\xE1 tr\u1ECB"} ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${n.origin} ${f.verb} ${s}${n.minimum.toString()} ${f.unit}`:`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${n.origin} ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i b\u1EAFt \u0111\u1EA7u b\u1EB1ng "${s.prefix}"`:s.format==="ends_with"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i k\u1EBFt th\xFAc b\u1EB1ng "${s.suffix}"`:s.format==="includes"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i bao g\u1ED3m "${s.includes}"`:s.format==="regex"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i kh\u1EDBp v\u1EDBi m\u1EABu ${s.pattern}`:`${(d=r[s.format])!=null?d:n.format} kh\xF4ng h\u1EE3p l\u1EC7`}case"not_multiple_of":return`S\u1ED1 kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i l\xE0 b\u1ED9i s\u1ED1 c\u1EE7a ${n.divisor}`;case"unrecognized_keys":return`Kh\xF3a kh\xF4ng \u0111\u01B0\u1EE3c nh\u1EADn d\u1EA1ng: ${$(n.keys,", ")}`;case"invalid_key":return`Kh\xF3a kh\xF4ng h\u1EE3p l\u1EC7 trong ${n.origin}`;case"invalid_union":return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7";case"invalid_element":return`Gi\xE1 tr\u1ECB kh\xF4ng h\u1EE3p l\u1EC7 trong ${n.origin}`;default:return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7"}}};function Cy(){return{localeError:kI()}}var SI=()=>{let t={string:{unit:"\u5B57\u7B26",verb:"\u5305\u542B"},file:{unit:"\u5B57\u8282",verb:"\u5305\u542B"},array:{unit:"\u9879",verb:"\u5305\u542B"},set:{unit:"\u9879",verb:"\u5305\u542B"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u8F93\u5165",email:"\u7535\u5B50\u90AE\u4EF6",url:"URL",emoji:"\u8868\u60C5\u7B26\u53F7",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO\u65E5\u671F\u65F6\u95F4",date:"ISO\u65E5\u671F",time:"ISO\u65F6\u95F4",duration:"ISO\u65F6\u957F",ipv4:"IPv4\u5730\u5740",ipv6:"IPv6\u5730\u5740",cidrv4:"IPv4\u7F51\u6BB5",cidrv6:"IPv6\u7F51\u6BB5",base64:"base64\u7F16\u7801\u5B57\u7B26\u4E32",base64url:"base64url\u7F16\u7801\u5B57\u7B26\u4E32",json_string:"JSON\u5B57\u7B26\u4E32",e164:"E.164\u53F7\u7801",jwt:"JWT",template_literal:"\u8F93\u5165"},o={nan:"NaN",number:"\u6570\u5B57",array:"\u6570\u7EC4",null:"\u7A7A\u503C(null)"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B instanceof ${n.expected}\uFF0C\u5B9E\u9645\u63A5\u6536 ${p}`:`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${s}\uFF0C\u5B9E\u9645\u63A5\u6536 ${p}`}case"invalid_value":return n.values.length===1?`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${S(n.values[0])}`:`\u65E0\u6548\u9009\u9879\uFF1A\u671F\u671B\u4EE5\u4E0B\u4E4B\u4E00 ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${(c=n.origin)!=null?c:"\u503C"} ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"\u4E2A\u5143\u7D20"}`:`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${(l=n.origin)!=null?l:"\u503C"} ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${n.origin} ${s}${n.minimum.toString()} ${f.unit}`:`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${n.origin} ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u4EE5 "${s.prefix}" \u5F00\u5934`:s.format==="ends_with"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u4EE5 "${s.suffix}" \u7ED3\u5C3E`:s.format==="includes"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u5305\u542B "${s.includes}"`:s.format==="regex"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u6EE1\u8DB3\u6B63\u5219\u8868\u8FBE\u5F0F ${s.pattern}`:`\u65E0\u6548${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`\u65E0\u6548\u6570\u5B57\uFF1A\u5FC5\u987B\u662F ${n.divisor} \u7684\u500D\u6570`;case"unrecognized_keys":return`\u51FA\u73B0\u672A\u77E5\u7684\u952E(key): ${$(n.keys,", ")}`;case"invalid_key":return`${n.origin} \u4E2D\u7684\u952E(key)\u65E0\u6548`;case"invalid_union":return"\u65E0\u6548\u8F93\u5165";case"invalid_element":return`${n.origin} \u4E2D\u5305\u542B\u65E0\u6548\u503C(value)`;default:return"\u65E0\u6548\u8F93\u5165"}}};function Dy(){return{localeError:SI()}}var zI=()=>{let t={string:{unit:"\u5B57\u5143",verb:"\u64C1\u6709"},file:{unit:"\u4F4D\u5143\u7D44",verb:"\u64C1\u6709"},array:{unit:"\u9805\u76EE",verb:"\u64C1\u6709"},set:{unit:"\u9805\u76EE",verb:"\u64C1\u6709"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u8F38\u5165",email:"\u90F5\u4EF6\u5730\u5740",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u65E5\u671F\u6642\u9593",date:"ISO \u65E5\u671F",time:"ISO \u6642\u9593",duration:"ISO \u671F\u9593",ipv4:"IPv4 \u4F4D\u5740",ipv6:"IPv6 \u4F4D\u5740",cidrv4:"IPv4 \u7BC4\u570D",cidrv6:"IPv6 \u7BC4\u570D",base64:"base64 \u7DE8\u78BC\u5B57\u4E32",base64url:"base64url \u7DE8\u78BC\u5B57\u4E32",json_string:"JSON \u5B57\u4E32",e164:"E.164 \u6578\u503C",jwt:"JWT",template_literal:"\u8F38\u5165"},o={nan:"NaN"};return n=>{var i,a,c,u,l,d;switch(n.code){case"invalid_type":{let s=(i=o[n.expected])!=null?i:n.expected,f=P(n.input),p=(a=o[f])!=null?a:f;return/^[A-Z]/.test(n.expected)?`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA instanceof ${n.expected}\uFF0C\u4F46\u6536\u5230 ${p}`:`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${s}\uFF0C\u4F46\u6536\u5230 ${p}`}case"invalid_value":return n.values.length===1?`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${S(n.values[0])}`:`\u7121\u6548\u7684\u9078\u9805\uFF1A\u9810\u671F\u70BA\u4EE5\u4E0B\u5176\u4E2D\u4E4B\u4E00 ${$(n.values,"|")}`;case"too_big":{let s=n.inclusive?"<=":"<",f=e(n.origin);return f?`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${(c=n.origin)!=null?c:"\u503C"} \u61C9\u70BA ${s}${n.maximum.toString()} ${(u=f.unit)!=null?u:"\u500B\u5143\u7D20"}`:`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${(l=n.origin)!=null?l:"\u503C"} \u61C9\u70BA ${s}${n.maximum.toString()}`}case"too_small":{let s=n.inclusive?">=":">",f=e(n.origin);return f?`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${n.origin} \u61C9\u70BA ${s}${n.minimum.toString()} ${f.unit}`:`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${n.origin} \u61C9\u70BA ${s}${n.minimum.toString()}`}case"invalid_format":{let s=n;return s.format==="starts_with"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u4EE5 "${s.prefix}" \u958B\u982D`:s.format==="ends_with"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u4EE5 "${s.suffix}" \u7D50\u5C3E`:s.format==="includes"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u5305\u542B "${s.includes}"`:s.format==="regex"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u7B26\u5408\u683C\u5F0F ${s.pattern}`:`\u7121\u6548\u7684 ${(d=r[s.format])!=null?d:n.format}`}case"not_multiple_of":return`\u7121\u6548\u7684\u6578\u5B57\uFF1A\u5FC5\u9808\u70BA ${n.divisor} \u7684\u500D\u6578`;case"unrecognized_keys":return`\u7121\u6CD5\u8B58\u5225\u7684\u9375\u503C${n.keys.length>1?"\u5011":""}\uFF1A${$(n.keys,"\u3001")}`;case"invalid_key":return`${n.origin} \u4E2D\u6709\u7121\u6548\u7684\u9375\u503C`;case"invalid_union":return"\u7121\u6548\u7684\u8F38\u5165\u503C";case"invalid_element":return`${n.origin} \u4E2D\u6709\u7121\u6548\u7684\u503C`;default:return"\u7121\u6548\u7684\u8F38\u5165\u503C"}}};function Uy(){return{localeError:zI()}}var II=()=>{let t={string:{unit:"\xE0mi",verb:"n\xED"},file:{unit:"bytes",verb:"n\xED"},array:{unit:"nkan",verb:"n\xED"},set:{unit:"nkan",verb:"n\xED"}};function e(n){var i;return(i=t[n])!=null?i:null}let r={regex:"\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9",email:"\xE0d\xEDr\u1EB9\u0301s\xEC \xECm\u1EB9\u0301l\xEC",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\xE0k\xF3k\xF2 ISO",date:"\u1ECDj\u1ECD\u0301 ISO",time:"\xE0k\xF3k\xF2 ISO",duration:"\xE0k\xF3k\xF2 t\xF3 p\xE9 ISO",ipv4:"\xE0d\xEDr\u1EB9\u0301s\xEC IPv4",ipv6:"\xE0d\xEDr\u1EB9\u0301s\xEC IPv6",cidrv4:"\xE0gb\xE8gb\xE8 IPv4",cidrv6:"\xE0gb\xE8gb\xE8 IPv6",base64:"\u1ECD\u0300r\u1ECD\u0300 t\xED a k\u1ECD\u0301 n\xED base64",base64url:"\u1ECD\u0300r\u1ECD\u0300 base64url",json_string:"\u1ECD\u0300r\u1ECD\u0300 JSON",e164:"n\u1ECD\u0301mb\xE0 E.164",jwt:"JWT",template_literal:"\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9"},o={nan:"NaN",number:"n\u1ECD\u0301mb\xE0",array:"akop\u1ECD"};return n=>{var i,a,c,u;switch(n.code){case"invalid_type":{let l=(i=o[n.expected])!=null?i:n.expected,d=P(n.input),s=(a=o[d])!=null?a:d;return/^[A-Z]/.test(n.expected)?`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi instanceof ${n.expected}, \xE0m\u1ECD\u0300 a r\xED ${s}`:`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${l}, \xE0m\u1ECD\u0300 a r\xED ${s}`}case"invalid_value":return n.values.length===1?`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${S(n.values[0])}`:`\xC0\u1E63\xE0y\xE0n a\u1E63\xEC\u1E63e: yan \u1ECD\u0300kan l\xE1ra ${$(n.values,"|")}`;case"too_big":{let l=n.inclusive?"<=":"<",d=e(n.origin);return d?`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${(c=n.origin)!=null?c:"iye"} ${d.verb} ${l}${n.maximum} ${d.unit}`:`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 ${l}${n.maximum}`}case"too_small":{let l=n.inclusive?">=":">",d=e(n.origin);return d?`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${n.origin} ${d.verb} ${l}${n.minimum} ${d.unit}`:`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 ${l}${n.minimum}`}case"invalid_format":{let l=n;return l.format==="starts_with"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 b\u1EB9\u0300r\u1EB9\u0300 p\u1EB9\u0300l\xFA "${l.prefix}"`:l.format==="ends_with"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 par\xED p\u1EB9\u0300l\xFA "${l.suffix}"`:l.format==="includes"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 n\xED "${l.includes}"`:l.format==="regex"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 b\xE1 \xE0p\u1EB9\u1EB9r\u1EB9 mu ${l.pattern}`:`A\u1E63\xEC\u1E63e: ${(u=r[l.format])!=null?u:n.format}`}case"not_multiple_of":return`N\u1ECD\u0301mb\xE0 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 j\u1EB9\u0301 \xE8y\xE0 p\xEDp\xEDn ti ${n.divisor}`;case"unrecognized_keys":return`B\u1ECDt\xECn\xEC \xE0\xECm\u1ECD\u0300: ${$(n.keys,", ")}`;case"invalid_key":return`B\u1ECDt\xECn\xEC a\u1E63\xEC\u1E63e n\xEDn\xFA ${n.origin}`;case"invalid_union":return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e";case"invalid_element":return`Iye a\u1E63\xEC\u1E63e n\xEDn\xFA ${n.origin}`;default:return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e"}}};function Zy(){return{localeError:II()}}var Ay,ip=Symbol("ZodOutput"),ap=Symbol("ZodInput"),gu=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...r){let o=r[0];return this._map.set(e,o),o&&typeof o=="object"&&"id"in o&&this._idmap.set(o.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let r=this._map.get(e);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(e),this}get(e){var o;let r=e._zod.parent;if(r){let n={...(o=this.get(r))!=null?o:{}};delete n.id;let i={...n,...this._map.get(e)};return Object.keys(i).length?i:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function vu(){return new gu}var My;(My=(Ay=globalThis).__zod_globalRegistry)!=null||(Ay.__zod_globalRegistry=vu());var Fe=globalThis.__zod_globalRegistry;function _u(t,e){return new t({type:"string",...T(e)})}function Ji(t,e){return new t({type:"string",coerce:!0,...T(e)})}function Hi(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...T(e)})}function uo(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...T(e)})}function Wi(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...T(e)})}function Bi(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...T(e)})}function Gi(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...T(e)})}function Ki(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...T(e)})}function lo(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...T(e)})}function Xi(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...T(e)})}function Yi(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...T(e)})}function Qi(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...T(e)})}function ea(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...T(e)})}function ta(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...T(e)})}function ra(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...T(e)})}function na(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...T(e)})}function oa(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...T(e)})}function ia(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...T(e)})}function yu(t,e){return new t({type:"string",format:"mac",check:"string_format",abort:!1,...T(e)})}function aa(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...T(e)})}function sa(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...T(e)})}function ca(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...T(e)})}function ua(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...T(e)})}function la(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...T(e)})}function da(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...T(e)})}var sp={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};function fa(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...T(e)})}function pa(t,e){return new t({type:"string",format:"date",check:"string_format",...T(e)})}function ma(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...T(e)})}function ha(t,e){return new t({type:"string",format:"duration",check:"string_format",...T(e)})}function $u(t,e){return new t({type:"number",checks:[],...T(e)})}function ga(t,e){return new t({type:"number",coerce:!0,checks:[],...T(e)})}function bu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...T(e)})}function xu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float32",...T(e)})}function wu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float64",...T(e)})}function ku(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"int32",...T(e)})}function Su(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"uint32",...T(e)})}function zu(t,e){return new t({type:"boolean",...T(e)})}function va(t,e){return new t({type:"boolean",coerce:!0,...T(e)})}function Iu(t,e){return new t({type:"bigint",...T(e)})}function _a(t,e){return new t({type:"bigint",coerce:!0,...T(e)})}function Pu(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...T(e)})}function Eu(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...T(e)})}function Tu(t,e){return new t({type:"symbol",...T(e)})}function Ou(t,e){return new t({type:"undefined",...T(e)})}function ju(t,e){return new t({type:"null",...T(e)})}function Ru(t){return new t({type:"any"})}function Nu(t){return new t({type:"unknown"})}function Cu(t,e){return new t({type:"never",...T(e)})}function Du(t,e){return new t({type:"void",...T(e)})}function Uu(t,e){return new t({type:"date",...T(e)})}function ya(t,e){return new t({type:"date",coerce:!0,...T(e)})}function Zu(t,e){return new t({type:"nan",...T(e)})}function Wt(t,e){return new oc({check:"less_than",...T(e),value:t,inclusive:!1})}function st(t,e){return new oc({check:"less_than",...T(e),value:t,inclusive:!0})}function Bt(t,e){return new ic({check:"greater_than",...T(e),value:t,inclusive:!1})}function Je(t,e){return new ic({check:"greater_than",...T(e),value:t,inclusive:!0})}function Au(t){return Bt(0,t)}function Mu(t){return Wt(0,t)}function qu(t){return st(0,t)}function Lu(t){return Je(0,t)}function Rr(t,e){return new Df({check:"multiple_of",...T(e),value:t})}function Nr(t,e){return new Af({check:"max_size",...T(e),maximum:t})}function Gt(t,e){return new Mf({check:"min_size",...T(e),minimum:t})}function pn(t,e){return new qf({check:"size_equals",...T(e),size:t})}function mn(t,e){return new Lf({check:"max_length",...T(e),maximum:t})}function lr(t,e){return new Vf({check:"min_length",...T(e),minimum:t})}function hn(t,e){return new Ff({check:"length_equals",...T(e),length:t})}function fo(t,e){return new Jf({check:"string_format",format:"regex",...T(e),pattern:t})}function po(t){return new Hf({check:"string_format",format:"lowercase",...T(t)})}function mo(t){return new Wf({check:"string_format",format:"uppercase",...T(t)})}function ho(t,e){return new Bf({check:"string_format",format:"includes",...T(e),includes:t})}function go(t,e){return new Gf({check:"string_format",format:"starts_with",...T(e),prefix:t})}function vo(t,e){return new Kf({check:"string_format",format:"ends_with",...T(e),suffix:t})}function Vu(t,e,r){return new Xf({check:"property",property:t,schema:e,...T(r)})}function _o(t,e){return new Yf({check:"mime_type",mime:t,...T(e)})}function Ct(t){return new Qf({check:"overwrite",tx:t})}function yo(t){return Ct(e=>e.normalize(t))}function $o(){return Ct(t=>t.trim())}function bo(){return Ct(t=>t.toLowerCase())}function xo(){return Ct(t=>t.toUpperCase())}function $a(){return Ct(t=>Qd(t))}function cp(t,e,r){return new t({type:"array",element:e,...T(r)})}function EI(t,e,r){return new t({type:"union",options:e,...T(r)})}function TI(t,e,r){return new t({type:"union",options:e,inclusive:!1,...T(r)})}function OI(t,e,r,o){return new t({type:"union",options:r,discriminator:e,...T(o)})}function jI(t,e,r){return new t({type:"intersection",left:e,right:r})}function RI(t,e,r,o){let n=r instanceof J,i=n?o:r,a=n?r:null;return new t({type:"tuple",items:e,rest:a,...T(i)})}function NI(t,e,r,o){return new t({type:"record",keyType:e,valueType:r,...T(o)})}function CI(t,e,r,o){return new t({type:"map",keyType:e,valueType:r,...T(o)})}function DI(t,e,r){return new t({type:"set",valueType:e,...T(r)})}function UI(t,e,r){let o=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new t({type:"enum",entries:o,...T(r)})}function ZI(t,e,r){return new t({type:"enum",entries:e,...T(r)})}function AI(t,e,r){return new t({type:"literal",values:Array.isArray(e)?e:[e],...T(r)})}function Fu(t,e){return new t({type:"file",...T(e)})}function MI(t,e){return new t({type:"transform",transform:e})}function qI(t,e){return new t({type:"optional",innerType:e})}function LI(t,e){return new t({type:"nullable",innerType:e})}function VI(t,e,r){return new t({type:"default",innerType:e,get defaultValue(){return typeof r=="function"?r():Ws(r)}})}function FI(t,e,r){return new t({type:"nonoptional",innerType:e,...T(r)})}function JI(t,e){return new t({type:"success",innerType:e})}function HI(t,e,r){return new t({type:"catch",innerType:e,catchValue:typeof r=="function"?r:()=>r})}function WI(t,e,r){return new t({type:"pipe",in:e,out:r})}function BI(t,e){return new t({type:"readonly",innerType:e})}function GI(t,e,r){return new t({type:"template_literal",parts:e,...T(r)})}function KI(t,e){return new t({type:"lazy",getter:e})}function XI(t,e){return new t({type:"promise",innerType:e})}function Ju(t,e,r){var i;let o=T(r);return(i=o.abort)!=null||(o.abort=!0),new t({type:"custom",check:"custom",fn:e,...o})}function Hu(t,e,r){return new t({type:"custom",check:"custom",fn:e,...T(r)})}function Wu(t){let e=qy(r=>(r.addIssue=o=>{var n,i,a,c;if(typeof o=="string")r.issues.push(Yn(o,r.value,e._zod.def));else{let u=o;u.fatal&&(u.continue=!1),(n=u.code)!=null||(u.code="custom"),(i=u.input)!=null||(u.input=r.value),(a=u.inst)!=null||(u.inst=e),(c=u.continue)!=null||(u.continue=!e._zod.def.abort),r.issues.push(Yn(u))}},t(r.value,r)));return e}function qy(t,e){let r=new ge({check:"custom",...T(e)});return r._zod.check=t,r}function Bu(t){let e=new ge({check:"describe"});return e._zod.onattach=[r=>{var n;let o=(n=Fe.get(r))!=null?n:{};Fe.add(r,{...o,description:t})}],e._zod.check=()=>{},e}function Gu(t){let e=new ge({check:"meta"});return e._zod.onattach=[r=>{var n;let o=(n=Fe.get(r))!=null?n:{};Fe.add(r,{...o,...t})}],e._zod.check=()=>{},e}function Ku(t,e){var p,m,h,v,y;let r=T(e),o=(p=r.truthy)!=null?p:["true","1","yes","on","y","enabled"],n=(m=r.falsy)!=null?m:["false","0","no","off","n","disabled"];r.case!=="sensitive"&&(o=o.map(w=>typeof w=="string"?w.toLowerCase():w),n=n.map(w=>typeof w=="string"?w.toLowerCase():w));let i=new Set(o),a=new Set(n),c=(h=t.Codec)!=null?h:so,u=(v=t.Boolean)!=null?v:fn,l=(y=t.String)!=null?y:ur,d=new l({type:"string",error:r.error}),s=new u({type:"boolean",error:r.error}),f=new c({type:"pipe",in:d,out:s,transform:((w,k)=>{let x=w;return r.case!=="sensitive"&&(x=x.toLowerCase()),i.has(x)?!0:a.has(x)?!1:(k.issues.push({code:"invalid_value",expected:"stringbool",values:[...i,...a],input:k.value,inst:f,continue:!1}),{})}),reverseTransform:((w,k)=>w===!0?o[0]||"true":n[0]||"false"),error:r.error});return f}function gn(t,e,r,o={}){let n=T(o),i={...T(o),check:"string_format",type:"string",format:e,fn:typeof r=="function"?r:c=>r.test(c),...n};return r instanceof RegExp&&(i.pattern=r),new t(i)}function Cr(t){var r,o,n,i,a,c,u,l,d;let e=(r=t==null?void 0:t.target)!=null?r:"draft-2020-12";return e==="draft-4"&&(e="draft-04"),e==="draft-7"&&(e="draft-07"),{processors:(o=t.processors)!=null?o:{},metadataRegistry:(n=t==null?void 0:t.metadata)!=null?n:Fe,target:e,unrepresentable:(i=t==null?void 0:t.unrepresentable)!=null?i:"throw",override:(a=t==null?void 0:t.override)!=null?a:(()=>{}),io:(c=t==null?void 0:t.io)!=null?c:"output",counter:0,seen:new Map,cycles:(u=t==null?void 0:t.cycles)!=null?u:"ref",reused:(l=t==null?void 0:t.reused)!=null?l:"inline",external:(d=t==null?void 0:t.external)!=null?d:void 0}}function pe(t,e,r={path:[],schemaPath:[]}){var d,s,f;var o;let n=t._zod.def,i=e.seen.get(t);if(i)return i.count++,r.schemaPath.includes(t)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};e.seen.set(t,a);let c=(s=(d=t._zod).toJSONSchema)==null?void 0:s.call(d);if(c)a.schema=c;else{let p={...r,schemaPath:[...r.schemaPath,t],path:r.path};if(t._zod.processJSONSchema)t._zod.processJSONSchema(e,a.schema,p);else{let h=a.schema,v=e.processors[n.type];if(!v)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${n.type}`);v(t,e,h,p)}let m=t._zod.parent;m&&(a.ref||(a.ref=m),pe(m,e,p),e.seen.get(m).isParent=!0)}let u=e.metadataRegistry.get(t);return u&&Object.assign(a.schema,u),e.io==="input"&&Xe(t)&&(delete a.schema.examples,delete a.schema.default),e.io==="input"&&a.schema._prefault&&((f=(o=a.schema).default)!=null||(o.default=a.schema._prefault)),delete a.schema._prefault,e.seen.get(t).schema}function Dr(t,e){var a,c,u,l;let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let o=new Map;for(let d of t.seen.entries()){let s=(a=t.metadataRegistry.get(d[0]))==null?void 0:a.id;if(s){let f=o.get(s);if(f&&f!==d[0])throw new Error(`Duplicate schema id "${s}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);o.set(s,d[0])}}let n=d=>{var h,v,y,w,k;let s=t.target==="draft-2020-12"?"$defs":"definitions";if(t.external){let x=(h=t.external.registry.get(d[0]))==null?void 0:h.id,b=(v=t.external.uri)!=null?v:(H=>H);if(x)return{ref:b(x)};let L=(w=(y=d[1].defId)!=null?y:d[1].schema.id)!=null?w:`schema${t.counter++}`;return d[1].defId=L,{defId:L,ref:`${b("__shared")}#/${s}/${L}`}}if(d[1]===r)return{ref:"#"};let p=`#/${s}/`,m=(k=d[1].schema.id)!=null?k:`__schema${t.counter++}`;return{defId:m,ref:p+m}},i=d=>{if(d[1].schema.$ref)return;let s=d[1],{ref:f,defId:p}=n(d);s.def={...s.schema},p&&(s.defId=p);let m=s.schema;for(let h in m)delete m[h];m.$ref=f};if(t.cycles==="throw")for(let d of t.seen.entries()){let s=d[1];if(s.cycle)throw new Error(`Cycle detected: #/${(c=s.cycle)==null?void 0:c.join("/")}/ + +Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let d of t.seen.entries()){let s=d[1];if(e===d[0]){i(d);continue}if(t.external){let p=(u=t.external.registry.get(d[0]))==null?void 0:u.id;if(e!==d[0]&&p){i(d);continue}}if((l=t.metadataRegistry.get(d[0]))==null?void 0:l.id){i(d);continue}if(s.cycle){i(d);continue}if(s.count>1&&t.reused==="ref"){i(d);continue}}}function Ur(t,e){var a,c,u,l,d;let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let o=s=>{var y,w,k;let f=t.seen.get(s);if(f.ref===null)return;let p=(y=f.def)!=null?y:f.schema,m={...p},h=f.ref;if(f.ref=null,h){o(h);let x=t.seen.get(h),b=x.schema;if(b.$ref&&(t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0")?(p.allOf=(w=p.allOf)!=null?w:[],p.allOf.push(b)):Object.assign(p,b),Object.assign(p,m),s._zod.parent===h)for(let H in p)H==="$ref"||H==="allOf"||H in m||delete p[H];if(b.$ref&&x.def)for(let H in p)H==="$ref"||H==="allOf"||H in x.def&&JSON.stringify(p[H])===JSON.stringify(x.def[H])&&delete p[H]}let v=s._zod.parent;if(v&&v!==h){o(v);let x=t.seen.get(v);if(x!=null&&x.schema.$ref&&(p.$ref=x.schema.$ref,x.def))for(let b in p)b==="$ref"||b==="allOf"||b in x.def&&JSON.stringify(p[b])===JSON.stringify(x.def[b])&&delete p[b]}t.override({zodSchema:s,jsonSchema:p,path:(k=f.path)!=null?k:[]})};for(let s of[...t.seen.entries()].reverse())o(s[0]);let n={};if(t.target==="draft-2020-12"?n.$schema="https://json-schema.org/draft/2020-12/schema":t.target==="draft-07"?n.$schema="http://json-schema.org/draft-07/schema#":t.target==="draft-04"?n.$schema="http://json-schema.org/draft-04/schema#":t.target,(a=t.external)!=null&&a.uri){let s=(c=t.external.registry.get(e))==null?void 0:c.id;if(!s)throw new Error("Schema is missing an `id` property");n.$id=t.external.uri(s)}Object.assign(n,(u=r.def)!=null?u:r.schema);let i=(d=(l=t.external)==null?void 0:l.defs)!=null?d:{};for(let s of t.seen.entries()){let f=s[1];f.def&&f.defId&&(i[f.defId]=f.def)}t.external||Object.keys(i).length>0&&(t.target==="draft-2020-12"?n.$defs=i:n.definitions=i);try{let s=JSON.parse(JSON.stringify(n));return Object.defineProperty(s,"~standard",{value:{...e["~standard"],jsonSchema:{input:wo(e,"input",t.processors),output:wo(e,"output",t.processors)}},enumerable:!1,writable:!1}),s}catch{throw new Error("Error converting schema to JSON.")}}function Xe(t,e){let r=e!=null?e:{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let o=t._zod.def;if(o.type==="transform")return!0;if(o.type==="array")return Xe(o.element,r);if(o.type==="set")return Xe(o.valueType,r);if(o.type==="lazy")return Xe(o.getter(),r);if(o.type==="promise"||o.type==="optional"||o.type==="nonoptional"||o.type==="nullable"||o.type==="readonly"||o.type==="default"||o.type==="prefault")return Xe(o.innerType,r);if(o.type==="intersection")return Xe(o.left,r)||Xe(o.right,r);if(o.type==="record"||o.type==="map")return Xe(o.keyType,r)||Xe(o.valueType,r);if(o.type==="pipe")return Xe(o.in,r)||Xe(o.out,r);if(o.type==="object"){for(let n in o.shape)if(Xe(o.shape[n],r))return!0;return!1}if(o.type==="union"){for(let n of o.options)if(Xe(n,r))return!0;return!1}if(o.type==="tuple"){for(let n of o.items)if(Xe(n,r))return!0;return!!(o.rest&&Xe(o.rest,r))}return!1}var up=(t,e={})=>r=>{let o=Cr({...r,processors:e});return pe(t,o),Dr(o,t),Ur(o,t)},wo=(t,e,r={})=>o=>{let{libraryOptions:n,target:i}=o!=null?o:{},a=Cr({...n!=null?n:{},target:i,io:e,processors:r});return pe(t,a),Dr(a,t),Ur(a,t)};var YI={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},lp=(t,e,r,o)=>{var d;let n=r;n.type="string";let{minimum:i,maximum:a,format:c,patterns:u,contentEncoding:l}=t._zod.bag;if(typeof i=="number"&&(n.minLength=i),typeof a=="number"&&(n.maxLength=a),c&&(n.format=(d=YI[c])!=null?d:c,n.format===""&&delete n.format,c==="time"&&delete n.format),l&&(n.contentEncoding=l),u&&u.size>0){let s=[...u];s.length===1?n.pattern=s[0].source:s.length>1&&(n.allOf=[...s.map(f=>({...e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"?{type:"string"}:{},pattern:f.source}))])}},dp=(t,e,r,o)=>{let n=r,{minimum:i,maximum:a,format:c,multipleOf:u,exclusiveMaximum:l,exclusiveMinimum:d}=t._zod.bag;typeof c=="string"&&c.includes("int")?n.type="integer":n.type="number",typeof d=="number"&&(e.target==="draft-04"||e.target==="openapi-3.0"?(n.minimum=d,n.exclusiveMinimum=!0):n.exclusiveMinimum=d),typeof i=="number"&&(n.minimum=i,typeof d=="number"&&e.target!=="draft-04"&&(d>=i?delete n.minimum:delete n.exclusiveMinimum)),typeof l=="number"&&(e.target==="draft-04"||e.target==="openapi-3.0"?(n.maximum=l,n.exclusiveMaximum=!0):n.exclusiveMaximum=l),typeof a=="number"&&(n.maximum=a,typeof l=="number"&&e.target!=="draft-04"&&(l<=a?delete n.maximum:delete n.exclusiveMaximum)),typeof u=="number"&&(n.multipleOf=u)},fp=(t,e,r,o)=>{r.type="boolean"},pp=(t,e,r,o)=>{if(e.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema")},mp=(t,e,r,o)=>{if(e.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema")},hp=(t,e,r,o)=>{e.target==="openapi-3.0"?(r.type="string",r.nullable=!0,r.enum=[null]):r.type="null"},gp=(t,e,r,o)=>{if(e.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema")},vp=(t,e,r,o)=>{if(e.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},_p=(t,e,r,o)=>{r.not={}},yp=(t,e,r,o)=>{},$p=(t,e,r,o)=>{},bp=(t,e,r,o)=>{if(e.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},xp=(t,e,r,o)=>{let n=t._zod.def,i=zi(n.entries);i.every(a=>typeof a=="number")&&(r.type="number"),i.every(a=>typeof a=="string")&&(r.type="string"),r.enum=i},wp=(t,e,r,o)=>{let n=t._zod.def,i=[];for(let a of n.values)if(a===void 0){if(e.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof a=="bigint"){if(e.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");i.push(Number(a))}else i.push(a);if(i.length!==0)if(i.length===1){let a=i[0];r.type=a===null?"null":typeof a,e.target==="draft-04"||e.target==="openapi-3.0"?r.enum=[a]:r.const=a}else i.every(a=>typeof a=="number")&&(r.type="number"),i.every(a=>typeof a=="string")&&(r.type="string"),i.every(a=>typeof a=="boolean")&&(r.type="boolean"),i.every(a=>a===null)&&(r.type="null"),r.enum=i},kp=(t,e,r,o)=>{if(e.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema")},Sp=(t,e,r,o)=>{let n=r,i=t._zod.pattern;if(!i)throw new Error("Pattern not found in template literal");n.type="string",n.pattern=i.source},zp=(t,e,r,o)=>{let n=r,i={type:"string",format:"binary",contentEncoding:"binary"},{minimum:a,maximum:c,mime:u}=t._zod.bag;a!==void 0&&(i.minLength=a),c!==void 0&&(i.maxLength=c),u?u.length===1?(i.contentMediaType=u[0],Object.assign(n,i)):(Object.assign(n,i),n.anyOf=u.map(l=>({contentMediaType:l}))):Object.assign(n,i)},Ip=(t,e,r,o)=>{r.type="boolean"},Pp=(t,e,r,o)=>{if(e.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},Ep=(t,e,r,o)=>{if(e.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema")},Tp=(t,e,r,o)=>{if(e.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},Op=(t,e,r,o)=>{if(e.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema")},jp=(t,e,r,o)=>{if(e.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema")},Rp=(t,e,r,o)=>{let n=r,i=t._zod.def,{minimum:a,maximum:c}=t._zod.bag;typeof a=="number"&&(n.minItems=a),typeof c=="number"&&(n.maxItems=c),n.type="array",n.items=pe(i.element,e,{...o,path:[...o.path,"items"]})},Np=(t,e,r,o)=>{var l;let n=r,i=t._zod.def;n.type="object",n.properties={};let a=i.shape;for(let d in a)n.properties[d]=pe(a[d],e,{...o,path:[...o.path,"properties",d]});let c=new Set(Object.keys(a)),u=new Set([...c].filter(d=>{let s=i.shape[d]._zod;return e.io==="input"?s.optin===void 0:s.optout===void 0}));u.size>0&&(n.required=Array.from(u)),((l=i.catchall)==null?void 0:l._zod.def.type)==="never"?n.additionalProperties=!1:i.catchall?i.catchall&&(n.additionalProperties=pe(i.catchall,e,{...o,path:[...o.path,"additionalProperties"]})):e.io==="output"&&(n.additionalProperties=!1)},Yu=(t,e,r,o)=>{let n=t._zod.def,i=n.inclusive===!1,a=n.options.map((c,u)=>pe(c,e,{...o,path:[...o.path,i?"oneOf":"anyOf",u]}));i?r.oneOf=a:r.anyOf=a},Cp=(t,e,r,o)=>{let n=t._zod.def,i=pe(n.left,e,{...o,path:[...o.path,"allOf",0]}),a=pe(n.right,e,{...o,path:[...o.path,"allOf",1]}),c=l=>"allOf"in l&&Object.keys(l).length===1,u=[...c(i)?i.allOf:[i],...c(a)?a.allOf:[a]];r.allOf=u},Dp=(t,e,r,o)=>{let n=r,i=t._zod.def;n.type="array";let a=e.target==="draft-2020-12"?"prefixItems":"items",c=e.target==="draft-2020-12"||e.target==="openapi-3.0"?"items":"additionalItems",u=i.items.map((f,p)=>pe(f,e,{...o,path:[...o.path,a,p]})),l=i.rest?pe(i.rest,e,{...o,path:[...o.path,c,...e.target==="openapi-3.0"?[i.items.length]:[]]}):null;e.target==="draft-2020-12"?(n.prefixItems=u,l&&(n.items=l)):e.target==="openapi-3.0"?(n.items={anyOf:u},l&&n.items.anyOf.push(l),n.minItems=u.length,l||(n.maxItems=u.length)):(n.items=u,l&&(n.additionalItems=l));let{minimum:d,maximum:s}=t._zod.bag;typeof d=="number"&&(n.minItems=d),typeof s=="number"&&(n.maxItems=s)},Up=(t,e,r,o)=>{let n=r,i=t._zod.def;n.type="object";let a=i.keyType,c=a._zod.bag,u=c==null?void 0:c.patterns;if(i.mode==="loose"&&u&&u.size>0){let d=pe(i.valueType,e,{...o,path:[...o.path,"patternProperties","*"]});n.patternProperties={};for(let s of u)n.patternProperties[s.source]=d}else(e.target==="draft-07"||e.target==="draft-2020-12")&&(n.propertyNames=pe(i.keyType,e,{...o,path:[...o.path,"propertyNames"]})),n.additionalProperties=pe(i.valueType,e,{...o,path:[...o.path,"additionalProperties"]});let l=a._zod.values;if(l){let d=[...l].filter(s=>typeof s=="string"||typeof s=="number");d.length>0&&(n.required=d)}},Zp=(t,e,r,o)=>{let n=t._zod.def,i=pe(n.innerType,e,o),a=e.seen.get(t);e.target==="openapi-3.0"?(a.ref=n.innerType,r.nullable=!0):r.anyOf=[i,{type:"null"}]},Ap=(t,e,r,o)=>{let n=t._zod.def;pe(n.innerType,e,o);let i=e.seen.get(t);i.ref=n.innerType},Mp=(t,e,r,o)=>{let n=t._zod.def;pe(n.innerType,e,o);let i=e.seen.get(t);i.ref=n.innerType,r.default=JSON.parse(JSON.stringify(n.defaultValue))},qp=(t,e,r,o)=>{let n=t._zod.def;pe(n.innerType,e,o);let i=e.seen.get(t);i.ref=n.innerType,e.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(n.defaultValue)))},Lp=(t,e,r,o)=>{let n=t._zod.def;pe(n.innerType,e,o);let i=e.seen.get(t);i.ref=n.innerType;let a;try{a=n.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=a},Vp=(t,e,r,o)=>{let n=t._zod.def,i=e.io==="input"?n.in._zod.def.type==="transform"?n.out:n.in:n.out;pe(i,e,o);let a=e.seen.get(t);a.ref=i},Fp=(t,e,r,o)=>{let n=t._zod.def;pe(n.innerType,e,o);let i=e.seen.get(t);i.ref=n.innerType,r.readOnly=!0},Jp=(t,e,r,o)=>{let n=t._zod.def;pe(n.innerType,e,o);let i=e.seen.get(t);i.ref=n.innerType},Qu=(t,e,r,o)=>{let n=t._zod.def;pe(n.innerType,e,o);let i=e.seen.get(t);i.ref=n.innerType},Hp=(t,e,r,o)=>{let n=t._zod.innerType;pe(n,e,o);let i=e.seen.get(t);i.ref=n},Xu={string:lp,number:dp,boolean:fp,bigint:pp,symbol:mp,null:hp,undefined:gp,void:vp,never:_p,any:yp,unknown:$p,date:bp,enum:xp,literal:wp,nan:kp,template_literal:Sp,file:zp,success:Ip,custom:Pp,function:Ep,transform:Tp,map:Op,set:jp,array:Rp,object:Np,union:Yu,intersection:Cp,tuple:Dp,record:Up,nullable:Zp,nonoptional:Ap,default:Mp,prefault:qp,catch:Lp,pipe:Vp,readonly:Fp,promise:Jp,optional:Qu,lazy:Hp};function ba(t,e){if("_idmap"in t){let o=t,n=Cr({...e,processors:Xu}),i={};for(let u of o._idmap.entries()){let[l,d]=u;pe(d,n)}let a={},c={registry:o,uri:e==null?void 0:e.uri,defs:i};n.external=c;for(let u of o._idmap.entries()){let[l,d]=u;Dr(n,d),a[l]=Ur(n,d)}if(Object.keys(i).length>0){let u=n.target==="draft-2020-12"?"$defs":"definitions";a.__shared={[u]:i}}return{schemas:a}}let r=Cr({...e,processors:Xu});return pe(t,r),Dr(r,t),Ur(r,t)}var el=class{get metadataRegistry(){return this.ctx.metadataRegistry}get target(){return this.ctx.target}get unrepresentable(){return this.ctx.unrepresentable}get override(){return this.ctx.override}get io(){return this.ctx.io}get counter(){return this.ctx.counter}set counter(e){this.ctx.counter=e}get seen(){return this.ctx.seen}constructor(e){var o;let r=(o=e==null?void 0:e.target)!=null?o:"draft-2020-12";r==="draft-4"&&(r="draft-04"),r==="draft-7"&&(r="draft-07"),this.ctx=Cr({processors:Xu,target:r,...(e==null?void 0:e.metadata)&&{metadata:e.metadata},...(e==null?void 0:e.unrepresentable)&&{unrepresentable:e.unrepresentable},...(e==null?void 0:e.override)&&{override:e.override},...(e==null?void 0:e.io)&&{io:e.io}})}process(e,r={path:[],schemaPath:[]}){return pe(e,this.ctx,r)}emit(e,r){r&&(r.cycles&&(this.ctx.cycles=r.cycles),r.reused&&(this.ctx.reused=r.reused),r.external&&(this.ctx.external=r.external)),Dr(this.ctx,e);let o=Ur(this.ctx,e),{"~standard":n,...i}=o;return i}};var Wp={};var xa=_("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");J.init(t,e),t.def=e,t.type=e.type,t.parse=(r,o)=>cn(t,r,o,{callee:t.parse}),t.safeParse=(r,o)=>Or(t,r,o),t.parseAsync=async(r,o)=>un(t,r,o,{callee:t.parseAsync}),t.safeParseAsync=async(r,o)=>ln(t,r,o),t.check=(...r)=>{var o;return t.clone({...e,checks:[...(o=e.checks)!=null?o:[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]},{parent:!0})},t.with=t.check,t.clone=(r,o)=>De(t,r,o),t.brand=()=>t,t.register=((r,o)=>(r.add(t,o),t)),t.apply=r=>r(t)}),Bp=_("ZodMiniString",(t,e)=>{ur.init(t,e),xa.init(t,e)});var wa=_("ZodMiniStringFormat",(t,e)=>{fe.init(t,e),Bp.init(t,e)});var Ly=_("ZodMiniNumber",(t,e)=>{oo.init(t,e),xa.init(t,e)});var Vy=_("ZodMiniBoolean",(t,e)=>{fn.init(t,e),xa.init(t,e)});var Fy=_("ZodMiniBigInt",(t,e)=>{io.init(t,e),xa.init(t,e)});var Jy=_("ZodMiniDate",(t,e)=>{qi.init(t,e),xa.init(t,e)});var Qp={};Ot(Qp,{ZodMiniISODate:()=>Kp,ZodMiniISODateTime:()=>Gp,ZodMiniISODuration:()=>Yp,ZodMiniISOTime:()=>Xp,date:()=>rP,datetime:()=>tP,duration:()=>oP,time:()=>nP});var Gp=_("ZodMiniISODateTime",(t,e)=>{Ui.init(t,e),wa.init(t,e)});function tP(t){return fa(Gp,t)}var Kp=_("ZodMiniISODate",(t,e)=>{Zi.init(t,e),wa.init(t,e)});function rP(t){return pa(Kp,t)}var Xp=_("ZodMiniISOTime",(t,e)=>{Ai.init(t,e),wa.init(t,e)});function nP(t){return ma(Xp,t)}var Yp=_("ZodMiniISODuration",(t,e)=>{Mi.init(t,e),wa.init(t,e)});function oP(t){return ha(Yp,t)}var em={};Ot(em,{bigint:()=>cP,boolean:()=>sP,date:()=>uP,number:()=>aP,string:()=>iP});function iP(t){return Ji(Bp,t)}function aP(t){return ga(Ly,t)}function sP(t){return va(Vy,t)}function cP(t){return _a(Fy,t)}function uP(t){return ya(Jy,t)}function Zr(t){return!!t._zod}function Ye(t,e){return Zr(t)?Or(t,e):t.safeParse(e)}function ko(t){var r,o;if(!t)return;let e;if(Zr(t)?e=(o=(r=t._zod)==null?void 0:r.def)==null?void 0:o.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function By(t){var n;if(Zr(t)){let a=(n=t._zod)==null?void 0:n.def;if(a){if(a.value!==void 0)return a.value;if(Array.isArray(a.values)&&a.values.length>0)return a.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let o=t.value;if(o!==void 0)return o}var ka={};Ot(ka,{ZodAny:()=>f$,ZodArray:()=>g$,ZodBase64:()=>km,ZodBase64URL:()=>Sm,ZodBigInt:()=>Ta,ZodBigIntFormat:()=>Pm,ZodBoolean:()=>Ea,ZodCIDRv4:()=>xm,ZodCIDRv6:()=>wm,ZodCUID:()=>hm,ZodCUID2:()=>gm,ZodCatch:()=>D$,ZodCodec:()=>Cm,ZodCustom:()=>dl,ZodCustomStringFormat:()=>Ia,ZodDate:()=>al,ZodDefault:()=>T$,ZodDiscriminatedUnion:()=>_$,ZodE164:()=>zm,ZodEmail:()=>dm,ZodEmoji:()=>pm,ZodEnum:()=>Sa,ZodExactOptional:()=>I$,ZodFile:()=>S$,ZodFunction:()=>J$,ZodGUID:()=>rl,ZodIPv4:()=>$m,ZodIPv6:()=>bm,ZodIntersection:()=>y$,ZodJWT:()=>Im,ZodKSUID:()=>ym,ZodLazy:()=>L$,ZodLiteral:()=>k$,ZodMAC:()=>c$,ZodMap:()=>x$,ZodNaN:()=>Z$,ZodNanoID:()=>mm,ZodNever:()=>m$,ZodNonOptional:()=>Rm,ZodNull:()=>d$,ZodNullable:()=>E$,ZodNumber:()=>Pa,ZodNumberFormat:()=>So,ZodObject:()=>sl,ZodOptional:()=>jm,ZodPipe:()=>Nm,ZodPrefault:()=>j$,ZodPromise:()=>F$,ZodReadonly:()=>A$,ZodRecord:()=>ll,ZodSet:()=>w$,ZodString:()=>za,ZodStringFormat:()=>ye,ZodSuccess:()=>C$,ZodSymbol:()=>u$,ZodTemplateLiteral:()=>q$,ZodTransform:()=>z$,ZodTuple:()=>$$,ZodType:()=>X,ZodULID:()=>vm,ZodURL:()=>il,ZodUUID:()=>dr,ZodUndefined:()=>l$,ZodUnion:()=>cl,ZodUnknown:()=>p$,ZodVoid:()=>h$,ZodXID:()=>_m,ZodXor:()=>v$,_ZodString:()=>lm,_default:()=>O$,_function:()=>dE,any:()=>Em,array:()=>j,base64:()=>OP,base64url:()=>jP,bigint:()=>VP,boolean:()=>me,catch:()=>U$,check:()=>fE,cidrv4:()=>EP,cidrv6:()=>TP,codec:()=>cE,cuid:()=>bP,cuid2:()=>xP,custom:()=>Dm,date:()=>GP,describe:()=>pE,discriminatedUnion:()=>ul,e164:()=>RP,email:()=>fP,emoji:()=>yP,enum:()=>He,exactOptional:()=>P$,file:()=>oE,float32:()=>AP,float64:()=>MP,function:()=>dE,guid:()=>pP,hash:()=>ZP,hex:()=>UP,hostname:()=>DP,httpUrl:()=>_P,instanceof:()=>hE,int:()=>um,int32:()=>qP,int64:()=>FP,intersection:()=>ja,ipv4:()=>zP,ipv6:()=>PP,json:()=>vE,jwt:()=>NP,keyof:()=>KP,ksuid:()=>SP,lazy:()=>V$,literal:()=>Z,looseObject:()=>Ne,looseRecord:()=>eE,mac:()=>IP,map:()=>tE,meta:()=>mE,nan:()=>sE,nanoid:()=>$P,nativeEnum:()=>nE,never:()=>Tm,nonoptional:()=>N$,null:()=>Oa,nullable:()=>nl,nullish:()=>iE,number:()=>se,object:()=>R,optional:()=>ke,partialRecord:()=>QP,pipe:()=>ol,prefault:()=>R$,preprocess:()=>fl,promise:()=>lE,readonly:()=>M$,record:()=>xe,refine:()=>H$,set:()=>rE,strictObject:()=>XP,string:()=>g,stringFormat:()=>CP,stringbool:()=>gE,success:()=>aE,superRefine:()=>W$,symbol:()=>HP,templateLiteral:()=>uE,transform:()=>Om,tuple:()=>b$,uint32:()=>LP,uint64:()=>JP,ulid:()=>wP,undefined:()=>WP,union:()=>ve,unknown:()=>$e,url:()=>fm,uuid:()=>mP,uuidv4:()=>hP,uuidv6:()=>gP,uuidv7:()=>vP,void:()=>BP,xid:()=>kP,xor:()=>YP});var tl={};Ot(tl,{endsWith:()=>vo,gt:()=>Bt,gte:()=>Je,includes:()=>ho,length:()=>hn,lowercase:()=>po,lt:()=>Wt,lte:()=>st,maxLength:()=>mn,maxSize:()=>Nr,mime:()=>_o,minLength:()=>lr,minSize:()=>Gt,multipleOf:()=>Rr,negative:()=>Mu,nonnegative:()=>Lu,nonpositive:()=>qu,normalize:()=>yo,overwrite:()=>Ct,positive:()=>Au,property:()=>Vu,regex:()=>fo,size:()=>pn,slugify:()=>$a,startsWith:()=>go,toLowerCase:()=>bo,toUpperCase:()=>xo,trim:()=>$o,uppercase:()=>mo});var Ar={};Ot(Ar,{ZodISODate:()=>nm,ZodISODateTime:()=>tm,ZodISODuration:()=>sm,ZodISOTime:()=>im,date:()=>om,datetime:()=>rm,duration:()=>cm,time:()=>am});var tm=_("ZodISODateTime",(t,e)=>{Ui.init(t,e),ye.init(t,e)});function rm(t){return fa(tm,t)}var nm=_("ZodISODate",(t,e)=>{Zi.init(t,e),ye.init(t,e)});function om(t){return pa(nm,t)}var im=_("ZodISOTime",(t,e)=>{Ai.init(t,e),ye.init(t,e)});function am(t){return ma(im,t)}var sm=_("ZodISODuration",(t,e)=>{Mi.init(t,e),ye.init(t,e)});function cm(t){return ha(sm,t)}var Gy=(t,e)=>{Oi.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Ri(t,r)},flatten:{value:r=>ji(t,r)},addIssue:{value:r=>{t.issues.push(r),t.message=JSON.stringify(t.issues,Kn,2)}},addIssues:{value:r=>{t.issues.push(...r),t.message=JSON.stringify(t.issues,Kn,2)}},isEmpty:{get(){return t.issues.length===0}}})},sM=_("ZodError",Gy),vt=_("ZodError",Gy,{Parent:Error});var Ky=Qn(vt),Xy=eo(vt),Yy=to(vt),Qy=ro(vt),e$=Bs(vt),t$=Gs(vt),r$=Ks(vt),n$=Xs(vt),o$=Ys(vt),i$=Qs(vt),a$=ec(vt),s$=tc(vt);var X=_("ZodType",(t,e)=>(J.init(t,e),Object.assign(t["~standard"],{jsonSchema:{input:wo(t,"input"),output:wo(t,"output")}}),t.toJSONSchema=up(t,{}),t.def=e,t.type=e.type,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>{var o;return t.clone(I.mergeDefs(e,{checks:[...(o=e.checks)!=null?o:[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0})},t.with=t.check,t.clone=(r,o)=>De(t,r,o),t.brand=()=>t,t.register=((r,o)=>(r.add(t,o),t)),t.parse=(r,o)=>Ky(t,r,o,{callee:t.parse}),t.safeParse=(r,o)=>Yy(t,r,o),t.parseAsync=async(r,o)=>Xy(t,r,o,{callee:t.parseAsync}),t.safeParseAsync=async(r,o)=>Qy(t,r,o),t.spa=t.safeParseAsync,t.encode=(r,o)=>e$(t,r,o),t.decode=(r,o)=>t$(t,r,o),t.encodeAsync=async(r,o)=>r$(t,r,o),t.decodeAsync=async(r,o)=>n$(t,r,o),t.safeEncode=(r,o)=>o$(t,r,o),t.safeDecode=(r,o)=>i$(t,r,o),t.safeEncodeAsync=async(r,o)=>a$(t,r,o),t.safeDecodeAsync=async(r,o)=>s$(t,r,o),t.refine=(r,o)=>t.check(H$(r,o)),t.superRefine=r=>t.check(W$(r)),t.overwrite=r=>t.check(Ct(r)),t.optional=()=>ke(t),t.exactOptional=()=>P$(t),t.nullable=()=>nl(t),t.nullish=()=>ke(nl(t)),t.nonoptional=r=>N$(t,r),t.array=()=>j(t),t.or=r=>ve([t,r]),t.and=r=>ja(t,r),t.transform=r=>ol(t,Om(r)),t.default=r=>O$(t,r),t.prefault=r=>R$(t,r),t.catch=r=>U$(t,r),t.pipe=r=>ol(t,r),t.readonly=()=>M$(t),t.describe=r=>{let o=t.clone();return Fe.add(o,{description:r}),o},Object.defineProperty(t,"description",{get(){var r;return(r=Fe.get(t))==null?void 0:r.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Fe.get(t);let o=t.clone();return Fe.add(o,r[0]),o},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t.apply=r=>r(t),t)),lm=_("_ZodString",(t,e)=>{var o,n,i;ur.init(t,e),X.init(t,e),t._zod.processJSONSchema=(a,c,u)=>lp(t,a,c,u);let r=t._zod.bag;t.format=(o=r.format)!=null?o:null,t.minLength=(n=r.minimum)!=null?n:null,t.maxLength=(i=r.maximum)!=null?i:null,t.regex=(...a)=>t.check(fo(...a)),t.includes=(...a)=>t.check(ho(...a)),t.startsWith=(...a)=>t.check(go(...a)),t.endsWith=(...a)=>t.check(vo(...a)),t.min=(...a)=>t.check(lr(...a)),t.max=(...a)=>t.check(mn(...a)),t.length=(...a)=>t.check(hn(...a)),t.nonempty=(...a)=>t.check(lr(1,...a)),t.lowercase=a=>t.check(po(a)),t.uppercase=a=>t.check(mo(a)),t.trim=()=>t.check($o()),t.normalize=(...a)=>t.check(yo(...a)),t.toLowerCase=()=>t.check(bo()),t.toUpperCase=()=>t.check(xo()),t.slugify=()=>t.check($a())}),za=_("ZodString",(t,e)=>{ur.init(t,e),lm.init(t,e),t.email=r=>t.check(Hi(dm,r)),t.url=r=>t.check(lo(il,r)),t.jwt=r=>t.check(da(Im,r)),t.emoji=r=>t.check(Xi(pm,r)),t.guid=r=>t.check(uo(rl,r)),t.uuid=r=>t.check(Wi(dr,r)),t.uuidv4=r=>t.check(Bi(dr,r)),t.uuidv6=r=>t.check(Gi(dr,r)),t.uuidv7=r=>t.check(Ki(dr,r)),t.nanoid=r=>t.check(Yi(mm,r)),t.guid=r=>t.check(uo(rl,r)),t.cuid=r=>t.check(Qi(hm,r)),t.cuid2=r=>t.check(ea(gm,r)),t.ulid=r=>t.check(ta(vm,r)),t.base64=r=>t.check(ca(km,r)),t.base64url=r=>t.check(ua(Sm,r)),t.xid=r=>t.check(ra(_m,r)),t.ksuid=r=>t.check(na(ym,r)),t.ipv4=r=>t.check(oa($m,r)),t.ipv6=r=>t.check(ia(bm,r)),t.cidrv4=r=>t.check(aa(xm,r)),t.cidrv6=r=>t.check(sa(wm,r)),t.e164=r=>t.check(la(zm,r)),t.datetime=r=>t.check(rm(r)),t.date=r=>t.check(om(r)),t.time=r=>t.check(am(r)),t.duration=r=>t.check(cm(r))});function g(t){return _u(za,t)}var ye=_("ZodStringFormat",(t,e)=>{fe.init(t,e),lm.init(t,e)}),dm=_("ZodEmail",(t,e)=>{pc.init(t,e),ye.init(t,e)});function fP(t){return Hi(dm,t)}var rl=_("ZodGUID",(t,e)=>{dc.init(t,e),ye.init(t,e)});function pP(t){return uo(rl,t)}var dr=_("ZodUUID",(t,e)=>{fc.init(t,e),ye.init(t,e)});function mP(t){return Wi(dr,t)}function hP(t){return Bi(dr,t)}function gP(t){return Gi(dr,t)}function vP(t){return Ki(dr,t)}var il=_("ZodURL",(t,e)=>{mc.init(t,e),ye.init(t,e)});function fm(t){return lo(il,t)}function _P(t){return lo(il,{protocol:/^https?$/,hostname:at.domain,...I.normalizeParams(t)})}var pm=_("ZodEmoji",(t,e)=>{hc.init(t,e),ye.init(t,e)});function yP(t){return Xi(pm,t)}var mm=_("ZodNanoID",(t,e)=>{gc.init(t,e),ye.init(t,e)});function $P(t){return Yi(mm,t)}var hm=_("ZodCUID",(t,e)=>{vc.init(t,e),ye.init(t,e)});function bP(t){return Qi(hm,t)}var gm=_("ZodCUID2",(t,e)=>{_c.init(t,e),ye.init(t,e)});function xP(t){return ea(gm,t)}var vm=_("ZodULID",(t,e)=>{yc.init(t,e),ye.init(t,e)});function wP(t){return ta(vm,t)}var _m=_("ZodXID",(t,e)=>{$c.init(t,e),ye.init(t,e)});function kP(t){return ra(_m,t)}var ym=_("ZodKSUID",(t,e)=>{bc.init(t,e),ye.init(t,e)});function SP(t){return na(ym,t)}var $m=_("ZodIPv4",(t,e)=>{xc.init(t,e),ye.init(t,e)});function zP(t){return oa($m,t)}var c$=_("ZodMAC",(t,e)=>{kc.init(t,e),ye.init(t,e)});function IP(t){return yu(c$,t)}var bm=_("ZodIPv6",(t,e)=>{wc.init(t,e),ye.init(t,e)});function PP(t){return ia(bm,t)}var xm=_("ZodCIDRv4",(t,e)=>{Sc.init(t,e),ye.init(t,e)});function EP(t){return aa(xm,t)}var wm=_("ZodCIDRv6",(t,e)=>{zc.init(t,e),ye.init(t,e)});function TP(t){return sa(wm,t)}var km=_("ZodBase64",(t,e)=>{Ic.init(t,e),ye.init(t,e)});function OP(t){return ca(km,t)}var Sm=_("ZodBase64URL",(t,e)=>{Pc.init(t,e),ye.init(t,e)});function jP(t){return ua(Sm,t)}var zm=_("ZodE164",(t,e)=>{Ec.init(t,e),ye.init(t,e)});function RP(t){return la(zm,t)}var Im=_("ZodJWT",(t,e)=>{Tc.init(t,e),ye.init(t,e)});function NP(t){return da(Im,t)}var Ia=_("ZodCustomStringFormat",(t,e)=>{Oc.init(t,e),ye.init(t,e)});function CP(t,e,r={}){return gn(Ia,t,e,r)}function DP(t){return gn(Ia,"hostname",at.hostname,t)}function UP(t){return gn(Ia,"hex",at.hex,t)}function ZP(t,e){var i;let r=(i=e==null?void 0:e.enc)!=null?i:"hex",o=`${t}_${r}`,n=at[o];if(!n)throw new Error(`Unrecognized hash format: ${o}`);return gn(Ia,o,n,e)}var Pa=_("ZodNumber",(t,e)=>{var o,n,i,a,c,u,l,d,s;oo.init(t,e),X.init(t,e),t._zod.processJSONSchema=(f,p,m)=>dp(t,f,p,m),t.gt=(f,p)=>t.check(Bt(f,p)),t.gte=(f,p)=>t.check(Je(f,p)),t.min=(f,p)=>t.check(Je(f,p)),t.lt=(f,p)=>t.check(Wt(f,p)),t.lte=(f,p)=>t.check(st(f,p)),t.max=(f,p)=>t.check(st(f,p)),t.int=f=>t.check(um(f)),t.safe=f=>t.check(um(f)),t.positive=f=>t.check(Bt(0,f)),t.nonnegative=f=>t.check(Je(0,f)),t.negative=f=>t.check(Wt(0,f)),t.nonpositive=f=>t.check(st(0,f)),t.multipleOf=(f,p)=>t.check(Rr(f,p)),t.step=(f,p)=>t.check(Rr(f,p)),t.finite=()=>t;let r=t._zod.bag;t.minValue=(i=Math.max((o=r.minimum)!=null?o:Number.NEGATIVE_INFINITY,(n=r.exclusiveMinimum)!=null?n:Number.NEGATIVE_INFINITY))!=null?i:null,t.maxValue=(u=Math.min((a=r.maximum)!=null?a:Number.POSITIVE_INFINITY,(c=r.exclusiveMaximum)!=null?c:Number.POSITIVE_INFINITY))!=null?u:null,t.isInt=((l=r.format)!=null?l:"").includes("int")||Number.isSafeInteger((d=r.multipleOf)!=null?d:.5),t.isFinite=!0,t.format=(s=r.format)!=null?s:null});function se(t){return $u(Pa,t)}var So=_("ZodNumberFormat",(t,e)=>{jc.init(t,e),Pa.init(t,e)});function um(t){return bu(So,t)}function AP(t){return xu(So,t)}function MP(t){return wu(So,t)}function qP(t){return ku(So,t)}function LP(t){return Su(So,t)}var Ea=_("ZodBoolean",(t,e)=>{fn.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>fp(t,r,o,n)});function me(t){return zu(Ea,t)}var Ta=_("ZodBigInt",(t,e)=>{var o,n,i;io.init(t,e),X.init(t,e),t._zod.processJSONSchema=(a,c,u)=>pp(t,a,c,u),t.gte=(a,c)=>t.check(Je(a,c)),t.min=(a,c)=>t.check(Je(a,c)),t.gt=(a,c)=>t.check(Bt(a,c)),t.gte=(a,c)=>t.check(Je(a,c)),t.min=(a,c)=>t.check(Je(a,c)),t.lt=(a,c)=>t.check(Wt(a,c)),t.lte=(a,c)=>t.check(st(a,c)),t.max=(a,c)=>t.check(st(a,c)),t.positive=a=>t.check(Bt(BigInt(0),a)),t.negative=a=>t.check(Wt(BigInt(0),a)),t.nonpositive=a=>t.check(st(BigInt(0),a)),t.nonnegative=a=>t.check(Je(BigInt(0),a)),t.multipleOf=(a,c)=>t.check(Rr(a,c));let r=t._zod.bag;t.minValue=(o=r.minimum)!=null?o:null,t.maxValue=(n=r.maximum)!=null?n:null,t.format=(i=r.format)!=null?i:null});function VP(t){return Iu(Ta,t)}var Pm=_("ZodBigIntFormat",(t,e)=>{Rc.init(t,e),Ta.init(t,e)});function FP(t){return Pu(Pm,t)}function JP(t){return Eu(Pm,t)}var u$=_("ZodSymbol",(t,e)=>{Nc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>mp(t,r,o,n)});function HP(t){return Tu(u$,t)}var l$=_("ZodUndefined",(t,e)=>{Cc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>gp(t,r,o,n)});function WP(t){return Ou(l$,t)}var d$=_("ZodNull",(t,e)=>{Dc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>hp(t,r,o,n)});function Oa(t){return ju(d$,t)}var f$=_("ZodAny",(t,e)=>{Uc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>yp(t,r,o,n)});function Em(){return Ru(f$)}var p$=_("ZodUnknown",(t,e)=>{Zc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>$p(t,r,o,n)});function $e(){return Nu(p$)}var m$=_("ZodNever",(t,e)=>{Ac.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>_p(t,r,o,n)});function Tm(t){return Cu(m$,t)}var h$=_("ZodVoid",(t,e)=>{Mc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>vp(t,r,o,n)});function BP(t){return Du(h$,t)}var al=_("ZodDate",(t,e)=>{qi.init(t,e),X.init(t,e),t._zod.processJSONSchema=(o,n,i)=>bp(t,o,n,i),t.min=(o,n)=>t.check(Je(o,n)),t.max=(o,n)=>t.check(st(o,n));let r=t._zod.bag;t.minDate=r.minimum?new Date(r.minimum):null,t.maxDate=r.maximum?new Date(r.maximum):null});function GP(t){return Uu(al,t)}var g$=_("ZodArray",(t,e)=>{qc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Rp(t,r,o,n),t.element=e.element,t.min=(r,o)=>t.check(lr(r,o)),t.nonempty=r=>t.check(lr(1,r)),t.max=(r,o)=>t.check(mn(r,o)),t.length=(r,o)=>t.check(hn(r,o)),t.unwrap=()=>t.element});function j(t,e){return cp(g$,t,e)}function KP(t){let e=t._zod.def.shape;return He(Object.keys(e))}var sl=_("ZodObject",(t,e)=>{op.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Np(t,r,o,n),I.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>He(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:$e()}),t.loose=()=>t.clone({...t._zod.def,catchall:$e()}),t.strict=()=>t.clone({...t._zod.def,catchall:Tm()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>I.extend(t,r),t.safeExtend=r=>I.safeExtend(t,r),t.merge=r=>I.merge(t,r),t.pick=r=>I.pick(t,r),t.omit=r=>I.omit(t,r),t.partial=(...r)=>I.partial(jm,t,r[0]),t.required=(...r)=>I.required(Rm,t,r[0])});function R(t,e){let r={type:"object",shape:t!=null?t:{},...I.normalizeParams(e)};return new sl(r)}function XP(t,e){return new sl({type:"object",shape:t,catchall:Tm(),...I.normalizeParams(e)})}function Ne(t,e){return new sl({type:"object",shape:t,catchall:$e(),...I.normalizeParams(e)})}var cl=_("ZodUnion",(t,e)=>{ao.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Yu(t,r,o,n),t.options=e.options});function ve(t,e){return new cl({type:"union",options:t,...I.normalizeParams(e)})}var v$=_("ZodXor",(t,e)=>{cl.init(t,e),Lc.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Yu(t,r,o,n),t.options=e.options});function YP(t,e){return new v$({type:"union",options:t,inclusive:!1,...I.normalizeParams(e)})}var _$=_("ZodDiscriminatedUnion",(t,e)=>{cl.init(t,e),Vc.init(t,e)});function ul(t,e,r){return new _$({type:"union",options:e,discriminator:t,...I.normalizeParams(r)})}var y$=_("ZodIntersection",(t,e)=>{Fc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Cp(t,r,o,n)});function ja(t,e){return new y$({type:"intersection",left:t,right:e})}var $$=_("ZodTuple",(t,e)=>{Li.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Dp(t,r,o,n),t.rest=r=>t.clone({...t._zod.def,rest:r})});function b$(t,e,r){let o=e instanceof J,n=o?r:e,i=o?e:null;return new $$({type:"tuple",items:t,rest:i,...I.normalizeParams(n)})}var ll=_("ZodRecord",(t,e)=>{Jc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Up(t,r,o,n),t.keyType=e.keyType,t.valueType=e.valueType});function xe(t,e,r){return new ll({type:"record",keyType:t,valueType:e,...I.normalizeParams(r)})}function QP(t,e,r){let o=De(t);return o._zod.values=void 0,new ll({type:"record",keyType:o,valueType:e,...I.normalizeParams(r)})}function eE(t,e,r){return new ll({type:"record",keyType:t,valueType:e,mode:"loose",...I.normalizeParams(r)})}var x$=_("ZodMap",(t,e)=>{Hc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Op(t,r,o,n),t.keyType=e.keyType,t.valueType=e.valueType,t.min=(...r)=>t.check(Gt(...r)),t.nonempty=r=>t.check(Gt(1,r)),t.max=(...r)=>t.check(Nr(...r)),t.size=(...r)=>t.check(pn(...r))});function tE(t,e,r){return new x$({type:"map",keyType:t,valueType:e,...I.normalizeParams(r)})}var w$=_("ZodSet",(t,e)=>{Wc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>jp(t,r,o,n),t.min=(...r)=>t.check(Gt(...r)),t.nonempty=r=>t.check(Gt(1,r)),t.max=(...r)=>t.check(Nr(...r)),t.size=(...r)=>t.check(pn(...r))});function rE(t,e){return new w$({type:"set",valueType:t,...I.normalizeParams(e)})}var Sa=_("ZodEnum",(t,e)=>{Bc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(o,n,i)=>xp(t,o,n,i),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(o,n)=>{let i={};for(let a of o)if(r.has(a))i[a]=e.entries[a];else throw new Error(`Key ${a} not found in enum`);return new Sa({...e,checks:[],...I.normalizeParams(n),entries:i})},t.exclude=(o,n)=>{let i={...e.entries};for(let a of o)if(r.has(a))delete i[a];else throw new Error(`Key ${a} not found in enum`);return new Sa({...e,checks:[],...I.normalizeParams(n),entries:i})}});function He(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(o=>[o,o])):t;return new Sa({type:"enum",entries:r,...I.normalizeParams(e)})}function nE(t,e){return new Sa({type:"enum",entries:t,...I.normalizeParams(e)})}var k$=_("ZodLiteral",(t,e)=>{Gc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>wp(t,r,o,n),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function Z(t,e){return new k$({type:"literal",values:Array.isArray(t)?t:[t],...I.normalizeParams(e)})}var S$=_("ZodFile",(t,e)=>{Kc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>zp(t,r,o,n),t.min=(r,o)=>t.check(Gt(r,o)),t.max=(r,o)=>t.check(Nr(r,o)),t.mime=(r,o)=>t.check(_o(Array.isArray(r)?r:[r],o))});function oE(t){return Fu(S$,t)}var z$=_("ZodTransform",(t,e)=>{Xc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Tp(t,r,o,n),t._zod.parse=(r,o)=>{if(o.direction==="backward")throw new zr(t.constructor.name);r.addIssue=i=>{var a,c,u;if(typeof i=="string")r.issues.push(I.issue(i,r.value,e));else{let l=i;l.fatal&&(l.continue=!1),(a=l.code)!=null||(l.code="custom"),(c=l.input)!=null||(l.input=r.value),(u=l.inst)!=null||(l.inst=t),r.issues.push(I.issue(l))}};let n=e.transform(r.value,r);return n instanceof Promise?n.then(i=>(r.value=i,r)):(r.value=n,r)}});function Om(t){return new z$({type:"transform",transform:t})}var jm=_("ZodOptional",(t,e)=>{Vi.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Qu(t,r,o,n),t.unwrap=()=>t._zod.def.innerType});function ke(t){return new jm({type:"optional",innerType:t})}var I$=_("ZodExactOptional",(t,e)=>{Yc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Qu(t,r,o,n),t.unwrap=()=>t._zod.def.innerType});function P$(t){return new I$({type:"optional",innerType:t})}var E$=_("ZodNullable",(t,e)=>{Qc.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Zp(t,r,o,n),t.unwrap=()=>t._zod.def.innerType});function nl(t){return new E$({type:"nullable",innerType:t})}function iE(t){return ke(nl(t))}var T$=_("ZodDefault",(t,e)=>{eu.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Mp(t,r,o,n),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function O$(t,e){return new T$({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():I.shallowClone(e)}})}var j$=_("ZodPrefault",(t,e)=>{tu.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>qp(t,r,o,n),t.unwrap=()=>t._zod.def.innerType});function R$(t,e){return new j$({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():I.shallowClone(e)}})}var Rm=_("ZodNonOptional",(t,e)=>{ru.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Ap(t,r,o,n),t.unwrap=()=>t._zod.def.innerType});function N$(t,e){return new Rm({type:"nonoptional",innerType:t,...I.normalizeParams(e)})}var C$=_("ZodSuccess",(t,e)=>{nu.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Ip(t,r,o,n),t.unwrap=()=>t._zod.def.innerType});function aE(t){return new C$({type:"success",innerType:t})}var D$=_("ZodCatch",(t,e)=>{ou.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Lp(t,r,o,n),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function U$(t,e){return new D$({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Z$=_("ZodNaN",(t,e)=>{iu.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>kp(t,r,o,n)});function sE(t){return Zu(Z$,t)}var Nm=_("ZodPipe",(t,e)=>{au.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Vp(t,r,o,n),t.in=e.in,t.out=e.out});function ol(t,e){return new Nm({type:"pipe",in:t,out:e})}var Cm=_("ZodCodec",(t,e)=>{Nm.init(t,e),so.init(t,e)});function cE(t,e,r){return new Cm({type:"pipe",in:t,out:e,transform:r.decode,reverseTransform:r.encode})}var A$=_("ZodReadonly",(t,e)=>{su.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Fp(t,r,o,n),t.unwrap=()=>t._zod.def.innerType});function M$(t){return new A$({type:"readonly",innerType:t})}var q$=_("ZodTemplateLiteral",(t,e)=>{cu.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Sp(t,r,o,n)});function uE(t,e){return new q$({type:"template_literal",parts:t,...I.normalizeParams(e)})}var L$=_("ZodLazy",(t,e)=>{du.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Hp(t,r,o,n),t.unwrap=()=>t._zod.def.getter()});function V$(t){return new L$({type:"lazy",getter:t})}var F$=_("ZodPromise",(t,e)=>{lu.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Jp(t,r,o,n),t.unwrap=()=>t._zod.def.innerType});function lE(t){return new F$({type:"promise",innerType:t})}var J$=_("ZodFunction",(t,e)=>{uu.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Ep(t,r,o,n)});function dE(t){var e,r;return new J$({type:"function",input:Array.isArray(t==null?void 0:t.input)?b$(t==null?void 0:t.input):(e=t==null?void 0:t.input)!=null?e:j($e()),output:(r=t==null?void 0:t.output)!=null?r:$e()})}var dl=_("ZodCustom",(t,e)=>{fu.init(t,e),X.init(t,e),t._zod.processJSONSchema=(r,o,n)=>Pp(t,r,o,n)});function fE(t){let e=new ge({check:"custom"});return e._zod.check=t,e}function Dm(t,e){return Ju(dl,t!=null?t:(()=>!0),e)}function H$(t,e={}){return Hu(dl,t,e)}function W$(t){return Wu(t)}var pE=Bu,mE=Gu;function hE(t,e={}){let r=new dl({type:"custom",check:"custom",fn:o=>o instanceof t,abort:!0,...I.normalizeParams(e)});return r._zod.bag.Class=t,r._zod.check=o=>{var n;o.value instanceof t||o.issues.push({code:"invalid_type",expected:t.name,input:o.value,inst:r,path:[...(n=r._zod.def.path)!=null?n:[]]})},r}var gE=(...t)=>Ku({Codec:Cm,Boolean:Ea,String:za},...t);function vE(t){let e=V$(()=>ve([g(t),se(),me(),Oa(),j(e),xe(g(),e)]));return e}function fl(t,e){return ol(Om(t),e)}var G$={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};var B$;B$||(B$={});var hM={...ka,...tl,iso:Ar};var Ra={};Ot(Ra,{bigint:()=>bE,boolean:()=>$E,date:()=>xE,number:()=>yE,string:()=>_E});function _E(t){return Ji(za,t)}function yE(t){return ga(Pa,t)}function $E(t){return va(Ea,t)}function bE(t){return _a(Ta,t)}function xE(t){return ya(al,t)}Re(pu());var Mr="2025-11-25",X$="2025-03-26",qr=[Mr,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Lr="io.modelcontextprotocol/related-task",ml="2.0",Ue=Dm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Y$=ve([g(),se().int()]),Q$=g(),NM=Ne({ttl:ve([se(),Oa()]).optional(),pollInterval:se().optional()}),kE=R({ttl:se().optional()}),SE=R({taskId:g()}),Zm=Ne({progressToken:Y$.optional(),[Lr]:SE.optional()}),_t=R({_meta:Zm.optional()}),Na=_t.extend({task:kE.optional()}),eb=t=>Na.safeParse(t).success,Ze=R({method:g(),params:_t.loose().optional()}),kt=R({_meta:Zm.optional()}),St=R({method:g(),params:kt.loose().optional()}),Ae=Ne({_meta:Zm.optional()}),hl=ve([g(),se().int()]),tb=R({jsonrpc:Z(ml),id:hl,...Ze.shape}).strict(),Kt=t=>tb.safeParse(t).success,rb=R({jsonrpc:Z(ml),...St.shape}).strict(),nb=t=>rb.safeParse(t).success,Am=R({jsonrpc:Z(ml),id:hl,result:Ae}).strict(),Dt=t=>Am.safeParse(t).success;var q;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(q||(q={}));var Mm=R({jsonrpc:Z(ml),id:hl.optional(),error:R({code:se().int(),message:g(),data:$e().optional()})}).strict();var Io=t=>Mm.safeParse(t).success;var yt=ve([tb,rb,Am,Mm]),CM=ve([Am,Mm]),fr=Ae.strict(),zE=kt.extend({requestId:hl.optional(),reason:g().optional()}),gl=St.extend({method:Z("notifications/cancelled"),params:zE}),IE=R({src:g(),mimeType:g().optional(),sizes:j(g()).optional(),theme:He(["light","dark"]).optional()}),Ca=R({icons:j(IE).optional()}),zo=R({name:g(),title:g().optional()}),ob=zo.extend({...zo.shape,...Ca.shape,version:g(),websiteUrl:g().optional(),description:g().optional()}),PE=ja(R({applyDefaults:me().optional()}),xe(g(),$e())),EE=fl(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ja(R({form:PE.optional(),url:Ue.optional()}),xe(g(),$e()).optional())),TE=Ne({list:Ue.optional(),cancel:Ue.optional(),requests:Ne({sampling:Ne({createMessage:Ue.optional()}).optional(),elicitation:Ne({create:Ue.optional()}).optional()}).optional()}),OE=Ne({list:Ue.optional(),cancel:Ue.optional(),requests:Ne({tools:Ne({call:Ue.optional()}).optional()}).optional()}),jE=R({experimental:xe(g(),Ue).optional(),sampling:R({context:Ue.optional(),tools:Ue.optional()}).optional(),elicitation:EE.optional(),roots:R({listChanged:me().optional()}).optional(),tasks:TE.optional()}),RE=_t.extend({protocolVersion:g(),capabilities:jE,clientInfo:ob}),vl=Ze.extend({method:Z("initialize"),params:RE}),qm=t=>vl.safeParse(t).success,NE=R({experimental:xe(g(),Ue).optional(),logging:Ue.optional(),completions:Ue.optional(),prompts:R({listChanged:me().optional()}).optional(),resources:R({subscribe:me().optional(),listChanged:me().optional()}).optional(),tools:R({listChanged:me().optional()}).optional(),tasks:OE.optional()}),Lm=Ae.extend({protocolVersion:g(),capabilities:NE,serverInfo:ob,instructions:g().optional()}),_l=St.extend({method:Z("notifications/initialized"),params:kt.optional()}),ib=t=>_l.safeParse(t).success,Po=Ze.extend({method:Z("ping"),params:_t.optional()}),CE=R({progress:se(),total:ke(se()),message:ke(g())}),DE=R({...kt.shape,...CE.shape,progressToken:Y$}),Eo=St.extend({method:Z("notifications/progress"),params:DE}),UE=_t.extend({cursor:Q$.optional()}),Da=Ze.extend({params:UE.optional()}),Ua=Ae.extend({nextCursor:Q$.optional()}),ZE=He(["working","input_required","completed","failed","cancelled"]),Za=R({taskId:g(),status:ZE,ttl:ve([se(),Oa()]),createdAt:g(),lastUpdatedAt:g(),pollInterval:ke(se()),statusMessage:ke(g())}),pr=Ae.extend({task:Za}),AE=kt.merge(Za),Aa=St.extend({method:Z("notifications/tasks/status"),params:AE}),yl=Ze.extend({method:Z("tasks/get"),params:_t.extend({taskId:g()})}),$l=Ae.merge(Za),bl=Ze.extend({method:Z("tasks/result"),params:_t.extend({taskId:g()})}),DM=Ae.loose(),xl=Da.extend({method:Z("tasks/list")}),wl=Ua.extend({tasks:j(Za)}),kl=Ze.extend({method:Z("tasks/cancel"),params:_t.extend({taskId:g()})}),ab=Ae.merge(Za),sb=R({uri:g(),mimeType:ke(g()),_meta:xe(g(),$e()).optional()}),cb=sb.extend({text:g()}),Vm=g().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),ub=sb.extend({blob:Vm}),Ma=He(["user","assistant"]),To=R({audience:j(Ma).optional(),priority:se().min(0).max(1).optional(),lastModified:Ar.datetime({offset:!0}).optional()}),lb=R({...zo.shape,...Ca.shape,uri:g(),description:ke(g()),mimeType:ke(g()),annotations:To.optional(),_meta:ke(Ne({}))}),ME=R({...zo.shape,...Ca.shape,uriTemplate:g(),description:ke(g()),mimeType:ke(g()),annotations:To.optional(),_meta:ke(Ne({}))}),qE=Da.extend({method:Z("resources/list")}),Fm=Ua.extend({resources:j(lb)}),LE=Da.extend({method:Z("resources/templates/list")}),Jm=Ua.extend({resourceTemplates:j(ME)}),Hm=_t.extend({uri:g()}),VE=Hm,FE=Ze.extend({method:Z("resources/read"),params:VE}),Wm=Ae.extend({contents:j(ve([cb,ub]))}),Bm=St.extend({method:Z("notifications/resources/list_changed"),params:kt.optional()}),JE=Hm,HE=Ze.extend({method:Z("resources/subscribe"),params:JE}),WE=Hm,BE=Ze.extend({method:Z("resources/unsubscribe"),params:WE}),GE=kt.extend({uri:g()}),KE=St.extend({method:Z("notifications/resources/updated"),params:GE}),XE=R({name:g(),description:ke(g()),required:ke(me())}),YE=R({...zo.shape,...Ca.shape,description:ke(g()),arguments:ke(j(XE)),_meta:ke(Ne({}))}),QE=Da.extend({method:Z("prompts/list")}),Gm=Ua.extend({prompts:j(YE)}),eT=_t.extend({name:g(),arguments:xe(g(),g()).optional()}),tT=Ze.extend({method:Z("prompts/get"),params:eT}),Km=R({type:Z("text"),text:g(),annotations:To.optional(),_meta:xe(g(),$e()).optional()}),Xm=R({type:Z("image"),data:Vm,mimeType:g(),annotations:To.optional(),_meta:xe(g(),$e()).optional()}),Ym=R({type:Z("audio"),data:Vm,mimeType:g(),annotations:To.optional(),_meta:xe(g(),$e()).optional()}),rT=R({type:Z("tool_use"),name:g(),id:g(),input:xe(g(),$e()),_meta:xe(g(),$e()).optional()}),nT=R({type:Z("resource"),resource:ve([cb,ub]),annotations:To.optional(),_meta:xe(g(),$e()).optional()}),oT=lb.extend({type:Z("resource_link")}),Qm=ve([Km,Xm,Ym,oT,nT]),iT=R({role:Ma,content:Qm}),eh=Ae.extend({description:g().optional(),messages:j(iT)}),th=St.extend({method:Z("notifications/prompts/list_changed"),params:kt.optional()}),aT=R({title:g().optional(),readOnlyHint:me().optional(),destructiveHint:me().optional(),idempotentHint:me().optional(),openWorldHint:me().optional()}),sT=R({taskSupport:He(["required","optional","forbidden"]).optional()}),db=R({...zo.shape,...Ca.shape,description:g().optional(),inputSchema:R({type:Z("object"),properties:xe(g(),Ue).optional(),required:j(g()).optional()}).catchall($e()),outputSchema:R({type:Z("object"),properties:xe(g(),Ue).optional(),required:j(g()).optional()}).catchall($e()).optional(),annotations:aT.optional(),execution:sT.optional(),_meta:xe(g(),$e()).optional()}),rh=Da.extend({method:Z("tools/list")}),nh=Ua.extend({tools:j(db)}),Vr=Ae.extend({content:j(Qm).default([]),structuredContent:xe(g(),$e()).optional(),isError:me().optional()}),UM=Vr.or(Ae.extend({toolResult:$e()})),cT=Na.extend({name:g(),arguments:xe(g(),$e()).optional()}),qa=Ze.extend({method:Z("tools/call"),params:cT}),oh=St.extend({method:Z("notifications/tools/list_changed"),params:kt.optional()}),fb=R({autoRefresh:me().default(!0),debounceMs:se().int().nonnegative().default(300)}),La=He(["debug","info","notice","warning","error","critical","alert","emergency"]),uT=_t.extend({level:La}),ih=Ze.extend({method:Z("logging/setLevel"),params:uT}),lT=kt.extend({level:La,logger:g().optional(),data:$e()}),dT=St.extend({method:Z("notifications/message"),params:lT}),fT=R({name:g().optional()}),pT=R({hints:j(fT).optional(),costPriority:se().min(0).max(1).optional(),speedPriority:se().min(0).max(1).optional(),intelligencePriority:se().min(0).max(1).optional()}),mT=R({mode:He(["auto","required","none"]).optional()}),hT=R({type:Z("tool_result"),toolUseId:g().describe("The unique identifier for the corresponding tool call."),content:j(Qm).default([]),structuredContent:R({}).loose().optional(),isError:me().optional(),_meta:xe(g(),$e()).optional()}),gT=ul("type",[Km,Xm,Ym]),pl=ul("type",[Km,Xm,Ym,rT,hT]),vT=R({role:Ma,content:ve([pl,j(pl)]),_meta:xe(g(),$e()).optional()}),_T=Na.extend({messages:j(vT),modelPreferences:pT.optional(),systemPrompt:g().optional(),includeContext:He(["none","thisServer","allServers"]).optional(),temperature:se().optional(),maxTokens:se().int(),stopSequences:j(g()).optional(),metadata:Ue.optional(),tools:j(db).optional(),toolChoice:mT.optional()}),ah=Ze.extend({method:Z("sampling/createMessage"),params:_T}),vn=Ae.extend({model:g(),stopReason:ke(He(["endTurn","stopSequence","maxTokens"]).or(g())),role:Ma,content:gT}),Va=Ae.extend({model:g(),stopReason:ke(He(["endTurn","stopSequence","maxTokens","toolUse"]).or(g())),role:Ma,content:ve([pl,j(pl)])}),yT=R({type:Z("boolean"),title:g().optional(),description:g().optional(),default:me().optional()}),$T=R({type:Z("string"),title:g().optional(),description:g().optional(),minLength:se().optional(),maxLength:se().optional(),format:He(["email","uri","date","date-time"]).optional(),default:g().optional()}),bT=R({type:He(["number","integer"]),title:g().optional(),description:g().optional(),minimum:se().optional(),maximum:se().optional(),default:se().optional()}),xT=R({type:Z("string"),title:g().optional(),description:g().optional(),enum:j(g()),default:g().optional()}),wT=R({type:Z("string"),title:g().optional(),description:g().optional(),oneOf:j(R({const:g(),title:g()})),default:g().optional()}),kT=R({type:Z("string"),title:g().optional(),description:g().optional(),enum:j(g()),enumNames:j(g()).optional(),default:g().optional()}),ST=ve([xT,wT]),zT=R({type:Z("array"),title:g().optional(),description:g().optional(),minItems:se().optional(),maxItems:se().optional(),items:R({type:Z("string"),enum:j(g())}),default:j(g()).optional()}),IT=R({type:Z("array"),title:g().optional(),description:g().optional(),minItems:se().optional(),maxItems:se().optional(),items:R({anyOf:j(R({const:g(),title:g()}))}),default:j(g()).optional()}),PT=ve([zT,IT]),ET=ve([kT,ST,PT]),TT=ve([ET,yT,$T,bT]),OT=Na.extend({mode:Z("form").optional(),message:g(),requestedSchema:R({type:Z("object"),properties:xe(g(),TT),required:j(g()).optional()})}),jT=Na.extend({mode:Z("url"),message:g(),elicitationId:g(),url:g().url()}),RT=ve([OT,jT]),sh=Ze.extend({method:Z("elicitation/create"),params:RT}),NT=kt.extend({elicitationId:g()}),CT=St.extend({method:Z("notifications/elicitation/complete"),params:NT}),Fr=Ae.extend({action:He(["accept","decline","cancel"]),content:fl(t=>t===null?void 0:t,xe(g(),ve([g(),se(),me(),j(g())])).optional())}),DT=R({type:Z("ref/resource"),uri:g()});var UT=R({type:Z("ref/prompt"),name:g()}),ZT=_t.extend({ref:ve([UT,DT]),argument:R({name:g(),value:g()}),context:R({arguments:xe(g(),g()).optional()}).optional()}),AT=Ze.extend({method:Z("completion/complete"),params:ZT});var ch=Ae.extend({completion:Ne({values:j(g()).max(100),total:ke(se().int()),hasMore:ke(me())})}),MT=R({uri:g().startsWith("file://"),name:g().optional(),_meta:xe(g(),$e()).optional()}),uh=Ze.extend({method:Z("roots/list"),params:_t.optional()}),lh=Ae.extend({roots:j(MT)}),qT=St.extend({method:Z("notifications/roots/list_changed"),params:kt.optional()}),ZM=ve([Po,vl,AT,ih,tT,QE,qE,LE,FE,HE,BE,qa,rh,yl,bl,xl,kl]),AM=ve([gl,Eo,_l,qT,Aa]),MM=ve([fr,vn,Va,Fr,lh,$l,wl,pr]),qM=ve([Po,ah,sh,uh,yl,bl,xl,kl]),LM=ve([gl,Eo,dT,KE,Bm,oh,th,Aa,CT]),VM=ve([fr,Lm,ch,eh,Gm,Fm,Jm,Wm,Vr,nh,$l,wl,pr]),A=class t extends Error{constructor(e,r,o){super(`MCP error ${e}: ${r}`),this.code=e,this.data=o,this.name="McpError"}static fromError(e,r,o){if(e===q.UrlElicitationRequired&&o){let n=o;if(n.elicitations)return new Um(n.elicitations,r)}return new t(e,r,o)}},Um=class extends A{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(q.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){var e,r;return(r=(e=this.data)==null?void 0:e.elicitations)!=null?r:[]}};function Jr(t){return t==="completed"||t==="failed"||t==="cancelled"}var mb=Symbol("Let zodToJsonSchema decide on which parser to use");var pb={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},hb=t=>typeof t=="string"?{...pb,name:t}:{...pb,...t};var gb=t=>{let e=hb(t),r=e.name!==void 0?[...e.basePath,e.definitionPath,e.name]:e.basePath;return{...e,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(e.definitions).map(([o,n])=>[n._def,{def:n._def,path:[...e.basePath,e.definitionPath,o],jsonSchema:void 0}]))}};function dh(t,e,r,o){o!=null&&o.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function ie(t,e,r,o,n){t[e]=r,dh(t,e,o,n)}var Sl=(t,e)=>{let r=0;for(;rF(t.innerType._def,e);function fh(t,e,r){let o=r!=null?r:e.dateStrategy;if(Array.isArray(o))return{anyOf:o.map((n,i)=>fh(t,e,n))};switch(o){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return LT(t,e)}}var LT=(t,e)=>{let r={type:"integer",format:"unix-time"};if(e.target==="openApi3")return r;for(let o of t.checks)switch(o.kind){case"min":ie(r,"minimum",o.value,o.message,e);break;case"max":ie(r,"maximum",o.value,o.message,e);break}return r};function bb(t,e){return{...F(t.innerType._def,e),default:t.defaultValue()}}function xb(t,e){return e.effectStrategy==="input"?F(t.schema._def,e):Ie(e)}function wb(t){return{type:"string",enum:Array.from(t.values)}}var VT=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function kb(t,e){let r=[F(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),F(t.right._def,{...e,currentPath:[...e.currentPath,"allOf","1"]})].filter(i=>!!i),o=e.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,n=[];return r.forEach(i=>{if(VT(i))n.push(...i.allOf),i.unevaluatedProperties===void 0&&(o=void 0);else{let a=i;if("additionalProperties"in i&&i.additionalProperties===!1){let{additionalProperties:c,...u}=i;a=u}else o=void 0;n.push(a)}}),n.length?{allOf:n,...o}:void 0}function Sb(t,e){let r=typeof t.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(t.value)?"array":"object"}:e.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[t.value]}:{type:r==="bigint"?"integer":r,const:t.value}}var ph,Ut={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(ph===void 0&&(ph=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),ph),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function Il(t,e){let r={type:"string"};if(t.checks)for(let o of t.checks)switch(o.kind){case"min":ie(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,o.value):o.value,o.message,e);break;case"max":ie(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,o.value):o.value,o.message,e);break;case"email":switch(e.emailStrategy){case"format:email":Zt(r,"email",o.message,e);break;case"format:idn-email":Zt(r,"idn-email",o.message,e);break;case"pattern:zod":Qe(r,Ut.email,o.message,e);break}break;case"url":Zt(r,"uri",o.message,e);break;case"uuid":Zt(r,"uuid",o.message,e);break;case"regex":Qe(r,o.regex,o.message,e);break;case"cuid":Qe(r,Ut.cuid,o.message,e);break;case"cuid2":Qe(r,Ut.cuid2,o.message,e);break;case"startsWith":Qe(r,RegExp(`^${mh(o.value,e)}`),o.message,e);break;case"endsWith":Qe(r,RegExp(`${mh(o.value,e)}$`),o.message,e);break;case"datetime":Zt(r,"date-time",o.message,e);break;case"date":Zt(r,"date",o.message,e);break;case"time":Zt(r,"time",o.message,e);break;case"duration":Zt(r,"duration",o.message,e);break;case"length":ie(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,o.value):o.value,o.message,e),ie(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,o.value):o.value,o.message,e);break;case"includes":{Qe(r,RegExp(mh(o.value,e)),o.message,e);break}case"ip":{o.version!=="v6"&&Zt(r,"ipv4",o.message,e),o.version!=="v4"&&Zt(r,"ipv6",o.message,e);break}case"base64url":Qe(r,Ut.base64url,o.message,e);break;case"jwt":Qe(r,Ut.jwt,o.message,e);break;case"cidr":{o.version!=="v6"&&Qe(r,Ut.ipv4Cidr,o.message,e),o.version!=="v4"&&Qe(r,Ut.ipv6Cidr,o.message,e);break}case"emoji":Qe(r,Ut.emoji(),o.message,e);break;case"ulid":{Qe(r,Ut.ulid,o.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{Zt(r,"binary",o.message,e);break}case"contentEncoding:base64":{ie(r,"contentEncoding","base64",o.message,e);break}case"pattern:zod":{Qe(r,Ut.base64,o.message,e);break}}break}case"nanoid":Qe(r,Ut.nanoid,o.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function mh(t,e){return e.patternStrategy==="escape"?JT(t):t}var FT=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function JT(t){let e="";for(let r=0;ri.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&o.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&o.errorMessages&&{errorMessage:{format:r}}})):ie(t,"format",e,r,o)}function Qe(t,e,r,o){var n;t.pattern||(n=t.allOf)!=null&&n.some(i=>i.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&o.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:zb(e,o),...r&&o.errorMessages&&{errorMessage:{pattern:r}}})):ie(t,"pattern",zb(e,o),r,o)}function zb(t,e){var u;if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},o=r.i?t.source.toLowerCase():t.source,n="",i=!1,a=!1,c=!1;for(let l=0;l{var f;return{...d,[s]:(f=F(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",s]}))!=null?f:Ie(e)}},{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:(n=F(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]}))!=null?n:e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(((i=t.keyType)==null?void 0:i._def.typeName)===E.ZodString&&((a=t.keyType._def.checks)!=null&&a.length)){let{type:d,...s}=Il(t.keyType._def,e);return{...r,propertyNames:s}}else{if(((c=t.keyType)==null?void 0:c._def.typeName)===E.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(((u=t.keyType)==null?void 0:u._def.typeName)===E.ZodBranded&&t.keyType._def.type._def.typeName===E.ZodString&&((l=t.keyType._def.type._def.checks)!=null&&l.length)){let{type:d,...s}=zl(t.keyType._def,e);return{...r,propertyNames:s}}}return r}function Ib(t,e){if(e.mapStrategy==="record")return Pl(t,e);let r=F(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||Ie(e),o=F(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||Ie(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,o],minItems:2,maxItems:2}}}function Pb(t){let e=t.values,o=Object.keys(t.values).filter(i=>typeof e[e[i]]!="number").map(i=>e[i]),n=Array.from(new Set(o.map(i=>typeof i)));return{type:n.length===1?n[0]==="string"?"string":"number":["string","number"],enum:o}}function Eb(t){return t.target==="openAi"?void 0:{not:Ie({...t,currentPath:[...t.currentPath,"not"]})}}function Tb(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Fa={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function jb(t,e){if(e.target==="openApi3")return Ob(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(o=>o._def.typeName in Fa&&(!o._def.checks||!o._def.checks.length))){let o=r.reduce((n,i)=>{let a=Fa[i._def.typeName];return a&&!n.includes(a)?[...n,a]:n},[]);return{type:o.length>1?o:o[0]}}else if(r.every(o=>o._def.typeName==="ZodLiteral"&&!o.description)){let o=r.reduce((n,i)=>{let a=typeof i._def.value;switch(a){case"string":case"number":case"boolean":return[...n,a];case"bigint":return[...n,"integer"];case"object":if(i._def.value===null)return[...n,"null"];case"symbol":case"undefined":case"function":default:return n}},[]);if(o.length===r.length){let n=o.filter((i,a,c)=>c.indexOf(i)===a);return{type:n.length>1?n:n[0],enum:r.reduce((i,a)=>i.includes(a._def.value)?i:[...i,a._def.value],[])}}}else if(r.every(o=>o._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((o,n)=>[...o,...n._def.values.filter(i=>!o.includes(i))],[])};return Ob(t,e)}var Ob=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((o,n)=>F(o._def,{...e,currentPath:[...e.currentPath,"anyOf",`${n}`]})).filter(o=>!!o&&(!e.strictUnions||typeof o=="object"&&Object.keys(o).length>0));return r.length?{anyOf:r}:void 0};function Rb(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:Fa[t.innerType._def.typeName],nullable:!0}:{type:[Fa[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let o=F(t.innerType._def,{...e,currentPath:[...e.currentPath]});return o&&"$ref"in o?{allOf:[o],nullable:!0}:o&&{...o,nullable:!0}}let r=F(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function Nb(t,e){let r={type:"number"};if(!t.checks)return r;for(let o of t.checks)switch(o.kind){case"int":r.type="integer",dh(r,"type",o.message,e);break;case"min":e.target==="jsonSchema7"?o.inclusive?ie(r,"minimum",o.value,o.message,e):ie(r,"exclusiveMinimum",o.value,o.message,e):(o.inclusive||(r.exclusiveMinimum=!0),ie(r,"minimum",o.value,o.message,e));break;case"max":e.target==="jsonSchema7"?o.inclusive?ie(r,"maximum",o.value,o.message,e):ie(r,"exclusiveMaximum",o.value,o.message,e):(o.inclusive||(r.exclusiveMaximum=!0),ie(r,"maximum",o.value,o.message,e));break;case"multipleOf":ie(r,"multipleOf",o.value,o.message,e);break}return r}function Cb(t,e){let r=e.target==="openAi",o={type:"object",properties:{}},n=[],i=t.shape();for(let c in i){let u=i[c];if(u===void 0||u._def===void 0)continue;let l=WT(u);l&&r&&(u._def.typeName==="ZodOptional"&&(u=u._def.innerType),u.isNullable()||(u=u.nullable()),l=!1);let d=F(u._def,{...e,currentPath:[...e.currentPath,"properties",c],propertyPath:[...e.currentPath,"properties",c]});d!==void 0&&(o.properties[c]=d,l||n.push(c))}n.length&&(o.required=n);let a=HT(t,e);return a!==void 0&&(o.additionalProperties=a),o}function HT(t,e){if(t.catchall._def.typeName!=="ZodNever")return F(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]});switch(t.unknownKeys){case"passthrough":return e.allowedAdditionalProperties;case"strict":return e.rejectedAdditionalProperties;case"strip":return e.removeAdditionalStrategy==="strict"?e.allowedAdditionalProperties:e.rejectedAdditionalProperties}}function WT(t){try{return t.isOptional()}catch{return!0}}var Db=(t,e)=>{var o;if(e.currentPath.toString()===((o=e.propertyPath)==null?void 0:o.toString()))return F(t.innerType._def,e);let r=F(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:Ie(e)},r]}:Ie(e)};var Ub=(t,e)=>{if(e.pipeStrategy==="input")return F(t.in._def,e);if(e.pipeStrategy==="output")return F(t.out._def,e);let r=F(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),o=F(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,o].filter(n=>n!==void 0)}};function Zb(t,e){return F(t.type._def,e)}function Ab(t,e){let o={type:"array",uniqueItems:!0,items:F(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&ie(o,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&ie(o,"maxItems",t.maxSize.value,t.maxSize.message,e),o}function Mb(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,o)=>F(r._def,{...e,currentPath:[...e.currentPath,"items",`${o}`]})).reduce((r,o)=>o===void 0?r:[...r,o],[]),additionalItems:F(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,o)=>F(r._def,{...e,currentPath:[...e.currentPath,"items",`${o}`]})).reduce((r,o)=>o===void 0?r:[...r,o],[])}}function qb(t){return{not:Ie(t)}}function Lb(t){return Ie(t)}var Vb=(t,e)=>F(t.innerType._def,e);var Fb=(t,e,r)=>{switch(e){case E.ZodString:return Il(t,r);case E.ZodNumber:return Nb(t,r);case E.ZodObject:return Cb(t,r);case E.ZodBigInt:return _b(t,r);case E.ZodBoolean:return yb();case E.ZodDate:return fh(t,r);case E.ZodUndefined:return qb(r);case E.ZodNull:return Tb(r);case E.ZodArray:return vb(t,r);case E.ZodUnion:case E.ZodDiscriminatedUnion:return jb(t,r);case E.ZodIntersection:return kb(t,r);case E.ZodTuple:return Mb(t,r);case E.ZodRecord:return Pl(t,r);case E.ZodLiteral:return Sb(t,r);case E.ZodEnum:return wb(t);case E.ZodNativeEnum:return Pb(t);case E.ZodNullable:return Rb(t,r);case E.ZodOptional:return Db(t,r);case E.ZodMap:return Ib(t,r);case E.ZodSet:return Ab(t,r);case E.ZodLazy:return()=>t.getter()._def;case E.ZodPromise:return Zb(t,r);case E.ZodNaN:case E.ZodNever:return Eb(r);case E.ZodEffects:return xb(t,r);case E.ZodAny:return Ie(r);case E.ZodUnknown:return Lb(r);case E.ZodDefault:return bb(t,r);case E.ZodBranded:return zl(t,r);case E.ZodReadonly:return Vb(t,r);case E.ZodCatch:return $b(t,r);case E.ZodPipeline:return Ub(t,r);case E.ZodFunction:case E.ZodVoid:case E.ZodSymbol:return;default:return(o=>{})(e)}};function F(t,e,r=!1){var c;let o=e.seen.get(t);if(e.override){let u=(c=e.override)==null?void 0:c.call(e,t,e,o,r);if(u!==mb)return u}if(o&&!r){let u=BT(o,e);if(u!==void 0)return u}let n={def:t,path:e.currentPath,jsonSchema:void 0};e.seen.set(t,n);let i=Fb(t,t.typeName,e),a=typeof i=="function"?F(i(),e):i;if(a&>(t,e,a),e.postProcess){let u=e.postProcess(a,t,e);return n.jsonSchema=a,u}return n.jsonSchema=a,a}var BT=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:Sl(e.currentPath,t.path)};case"none":case"seen":return t.path.lengthe.currentPath[o]===r)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),Ie(e)):e.$refStrategy==="seen"?Ie(e):void 0}},GT=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var El=(t,e)=>{var u;let r=gb(e),o=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((l,[d,s])=>{var f;return{...l,[d]:(f=F(s._def,{...r,currentPath:[...r.basePath,r.definitionPath,d]},!0))!=null?f:Ie(r)}},{}):void 0,n=typeof e=="string"?e:(e==null?void 0:e.nameStrategy)==="title"||e==null?void 0:e.name,i=(u=F(t._def,n===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,n]},!1))!=null?u:Ie(r),a=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;a!==void 0&&(i.title=a),r.flags.hasReferencedOpenAiAnyType&&(o||(o={}),o[r.openAiAnyTypeName]||(o[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let c=n===void 0?o?{...i,[r.definitionPath]:o}:i:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,n].join("/"),[r.definitionPath]:{...o,[n]:i}};return r.target==="jsonSchema7"?c.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(c.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in c||"oneOf"in c||"allOf"in c||"type"in c&&Array.isArray(c.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),c};function hh(t){let e=ko(t),r=e==null?void 0:e.method;if(!r)throw new Error("Schema is missing a method literal");let o=By(r);if(typeof o!="string")throw new Error("Schema method literal must be a string");return o}function gh(t,e){let r=Ye(t,e);if(!r.success)throw r.error;return r.data}var KT=6e4,Oo=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(gl,r=>{this._oncancel(r)}),this.setNotificationHandler(Eo,r=>{this._onprogress(r)}),this.setRequestHandler(Po,r=>({})),this._taskStore=e==null?void 0:e.taskStore,this._taskMessageQueue=e==null?void 0:e.taskMessageQueue,this._taskStore&&(this.setRequestHandler(yl,async(r,o)=>{let n=await this._taskStore.getTask(r.params.taskId,o.sessionId);if(!n)throw new A(q.InvalidParams,"Failed to retrieve task: Task not found");return{...n}}),this.setRequestHandler(bl,async(r,o)=>{let n=async()=>{var c;let i=r.params.taskId;if(this._taskMessageQueue){let u;for(;u=await this._taskMessageQueue.dequeue(i,o.sessionId);){if(u.type==="response"||u.type==="error"){let l=u.message,d=l.id,s=this._requestResolvers.get(d);if(s)if(this._requestResolvers.delete(d),u.type==="response")s(l);else{let f=l,p=new A(f.error.code,f.error.message,f.error.data);s(p)}else{let f=u.type==="response"?"Response":"Error";this._onerror(new Error(`${f} handler missing for request ${d}`))}continue}await((c=this._transport)==null?void 0:c.send(u.message,{relatedRequestId:o.requestId}))}}let a=await this._taskStore.getTask(i,o.sessionId);if(!a)throw new A(q.InvalidParams,`Task not found: ${i}`);if(!Jr(a.status))return await this._waitForTaskUpdate(i,o.signal),await n();if(Jr(a.status)){let u=await this._taskStore.getTaskResult(i,o.sessionId);return this._clearTaskQueue(i),{...u,_meta:{...u._meta,[Lr]:{taskId:i}}}}return await n()};return await n()}),this.setRequestHandler(xl,async(r,o)=>{var n;try{let{tasks:i,nextCursor:a}=await this._taskStore.listTasks((n=r.params)==null?void 0:n.cursor,o.sessionId);return{tasks:i,nextCursor:a,_meta:{}}}catch(i){throw new A(q.InvalidParams,`Failed to list tasks: ${i instanceof Error?i.message:String(i)}`)}}),this.setRequestHandler(kl,async(r,o)=>{try{let n=await this._taskStore.getTask(r.params.taskId,o.sessionId);if(!n)throw new A(q.InvalidParams,`Task not found: ${r.params.taskId}`);if(Jr(n.status))throw new A(q.InvalidParams,`Cannot cancel task in terminal status: ${n.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",o.sessionId),this._clearTaskQueue(r.params.taskId);let i=await this._taskStore.getTask(r.params.taskId,o.sessionId);if(!i)throw new A(q.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...i}}catch(n){throw n instanceof A?n:new A(q.InvalidRequest,`Failed to cancel task: ${n instanceof Error?n.message:String(n)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;let r=this._requestHandlerAbortControllers.get(e.params.requestId);r==null||r.abort(e.params.reason)}_setupTimeout(e,r,o,n,i=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(n,r),startTime:Date.now(),timeout:r,maxTotalTimeout:o,resetTimeoutOnProgress:i,onTimeout:n})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let o=Date.now()-r.startTime;if(r.maxTotalTimeout&&o>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),A.fromError(q.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:o});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){var i,a,c;if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=(i=this.transport)==null?void 0:i.onclose;this._transport.onclose=()=>{r==null||r(),this._onclose()};let o=(a=this.transport)==null?void 0:a.onerror;this._transport.onerror=u=>{o==null||o(u),this._onerror(u)};let n=(c=this._transport)==null?void 0:c.onmessage;this._transport.onmessage=(u,l)=>{n==null||n(u,l),Dt(u)||Io(u)?this._onresponse(u):Kt(u)?this._onrequest(u,l):nb(u)?this._onnotification(u):this._onerror(new Error(`Unknown message type: ${JSON.stringify(u)}`))},await this._transport.start()}_onclose(){var o;let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=A.fromError(q.ConnectionClosed,"Connection closed");this._transport=void 0,(o=this.onclose)==null||o.call(this);for(let n of e.values())n(r)}_onerror(e){var r;(r=this.onerror)==null||r.call(this,e)}_onnotification(e){var o;let r=(o=this._notificationHandlers.get(e.method))!=null?o:this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){var d,s,f,p,m;let o=(d=this._requestHandlers.get(e.method))!=null?d:this.fallbackRequestHandler,n=this._transport,i=(p=(f=(s=e.params)==null?void 0:s._meta)==null?void 0:f[Lr])==null?void 0:p.taskId;if(o===void 0){let h={jsonrpc:"2.0",id:e.id,error:{code:q.MethodNotFound,message:"Method not found"}};i&&this._taskMessageQueue?this._enqueueTaskMessage(i,{type:"error",message:h,timestamp:Date.now()},n==null?void 0:n.sessionId).catch(v=>this._onerror(new Error(`Failed to enqueue error response: ${v}`))):n==null||n.send(h).catch(v=>this._onerror(new Error(`Failed to send an error response: ${v}`)));return}let a=new AbortController;this._requestHandlerAbortControllers.set(e.id,a);let c=eb(e.params)?e.params.task:void 0,u=this._taskStore?this.requestTaskStore(e,n==null?void 0:n.sessionId):void 0,l={signal:a.signal,sessionId:n==null?void 0:n.sessionId,_meta:(m=e.params)==null?void 0:m._meta,sendNotification:async h=>{if(a.signal.aborted)return;let v={relatedRequestId:e.id};i&&(v.relatedTask={taskId:i}),await this.notification(h,v)},sendRequest:async(h,v,y)=>{var x,b;if(a.signal.aborted)throw new A(q.ConnectionClosed,"Request was cancelled");let w={...y,relatedRequestId:e.id};i&&!w.relatedTask&&(w.relatedTask={taskId:i});let k=(b=(x=w.relatedTask)==null?void 0:x.taskId)!=null?b:i;return k&&u&&await u.updateTaskStatus(k,"input_required"),await this.request(h,v,w)},authInfo:r==null?void 0:r.authInfo,requestId:e.id,requestInfo:r==null?void 0:r.requestInfo,taskId:i,taskStore:u,taskRequestedTtl:c==null?void 0:c.ttl,closeSSEStream:r==null?void 0:r.closeSSEStream,closeStandaloneSSEStream:r==null?void 0:r.closeStandaloneSSEStream};Promise.resolve().then(()=>{c&&this.assertTaskHandlerCapability(e.method)}).then(()=>o(e,l)).then(async h=>{if(a.signal.aborted)return;let v={result:h,jsonrpc:"2.0",id:e.id};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:"response",message:v,timestamp:Date.now()},n==null?void 0:n.sessionId):await(n==null?void 0:n.send(v))},async h=>{var y;if(a.signal.aborted)return;let v={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(h.code)?h.code:q.InternalError,message:(y=h.message)!=null?y:"Internal error",...h.data!==void 0&&{data:h.data}}};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:"error",message:v,timestamp:Date.now()},n==null?void 0:n.sessionId):await(n==null?void 0:n.send(v))}).catch(h=>this._onerror(new Error(`Failed to send response: ${h}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===a&&this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...o}=e.params,n=Number(r),i=this._progressHandlers.get(n);if(!i){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let a=this._responseHandlers.get(n),c=this._timeoutInfo.get(n);if(c&&a&&c.resetTimeoutOnProgress)try{this._resetTimeout(n)}catch(u){this._responseHandlers.delete(n),this._progressHandlers.delete(n),this._cleanupTimeout(n),a(u);return}i(o)}_onresponse(e){let r=Number(e.id),o=this._requestResolvers.get(r);if(o){if(this._requestResolvers.delete(r),Dt(e))o(e);else{let a=new A(e.error.code,e.error.message,e.error.data);o(a)}return}let n=this._responseHandlers.get(r);if(n===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let i=!1;if(Dt(e)&&e.result&&typeof e.result=="object"){let a=e.result;if(a.task&&typeof a.task=="object"){let c=a.task;typeof c.taskId=="string"&&(i=!0,this._taskProgressTokens.set(c.taskId,r))}}if(i||this._progressHandlers.delete(r),Dt(e))n(e);else{let a=A.fromError(e.error.code,e.error.message,e.error.data);n(a)}}get transport(){return this._transport}async close(){var e;await((e=this._transport)==null?void 0:e.close())}async*requestStream(e,r,o){var a,c,u,l;let{task:n}=o!=null?o:{};if(!n){try{yield{type:"result",result:await this.request(e,r,o)}}catch(d){yield{type:"error",error:d instanceof A?d:new A(q.InternalError,String(d))}}return}let i;try{let d=await this.request(e,pr,o);if(d.task)i=d.task.taskId,yield{type:"taskCreated",task:d.task};else throw new A(q.InternalError,"Task creation did not return a task");for(;;){let s=await this.getTask({taskId:i},o);if(yield{type:"taskStatus",task:s},Jr(s.status)){s.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:i},r,o)}:s.status==="failed"?yield{type:"error",error:new A(q.InternalError,`Task ${i} failed`)}:s.status==="cancelled"&&(yield{type:"error",error:new A(q.InternalError,`Task ${i} was cancelled`)});return}if(s.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:i},r,o)};return}let f=(u=(c=s.pollInterval)!=null?c:(a=this._options)==null?void 0:a.defaultTaskPollInterval)!=null?u:1e3;await new Promise(p=>setTimeout(p,f)),(l=o==null?void 0:o.signal)==null||l.throwIfAborted()}}catch(d){yield{type:"error",error:d instanceof A?d:new A(q.InternalError,String(d))}}}request(e,r,o){let{relatedRequestId:n,resumptionToken:i,onresumptiontoken:a,task:c,relatedTask:u}=o!=null?o:{};return new Promise((l,d)=>{var w,k,x,b,L,H,he;let s=W=>{d(W)};if(!this._transport){s(new Error("Not connected"));return}if(((w=this._options)==null?void 0:w.enforceStrictCapabilities)===!0)try{this.assertCapabilityForMethod(e.method),c&&this.assertTaskCapability(e.method)}catch(W){s(W);return}(k=o==null?void 0:o.signal)==null||k.throwIfAborted();let f=this._requestMessageId++,p={...e,jsonrpc:"2.0",id:f};o!=null&&o.onprogress&&(this._progressHandlers.set(f,o.onprogress),p.params={...e.params,_meta:{...((x=e.params)==null?void 0:x._meta)||{},progressToken:f}}),c&&(p.params={...p.params,task:c}),u&&(p.params={...p.params,_meta:{...((b=p.params)==null?void 0:b._meta)||{},[Lr]:u}});let m=W=>{var Te;this._responseHandlers.delete(f),this._progressHandlers.delete(f),this._cleanupTimeout(f),(Te=this._transport)==null||Te.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:f,reason:String(W)}},{relatedRequestId:n,resumptionToken:i,onresumptiontoken:a}).catch(de=>this._onerror(new Error(`Failed to send cancellation: ${de}`)));let we=W instanceof A?W:new A(q.RequestTimeout,String(W));d(we)};this._responseHandlers.set(f,W=>{var we;if(!((we=o==null?void 0:o.signal)!=null&&we.aborted)){if(W instanceof Error)return d(W);try{let Te=Ye(r,W.result);Te.success?l(Te.data):d(Te.error)}catch(Te){d(Te)}}}),(L=o==null?void 0:o.signal)==null||L.addEventListener("abort",()=>{var W;m((W=o==null?void 0:o.signal)==null?void 0:W.reason)});let h=(H=o==null?void 0:o.timeout)!=null?H:KT,v=()=>m(A.fromError(q.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,o==null?void 0:o.maxTotalTimeout,v,(he=o==null?void 0:o.resetTimeoutOnProgress)!=null?he:!1);let y=u==null?void 0:u.taskId;if(y){let W=we=>{let Te=this._responseHandlers.get(f);Te?Te(we):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,W),this._enqueueTaskMessage(y,{type:"request",message:p,timestamp:Date.now()}).catch(we=>{this._cleanupTimeout(f),d(we)})}else this._transport.send(p,{relatedRequestId:n,resumptionToken:i,onresumptiontoken:a}).catch(W=>{this._cleanupTimeout(f),d(W)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},$l,r)}async getTaskResult(e,r,o){return this.request({method:"tasks/result",params:e},r,o)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},wl,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},ab,r)}async notification(e,r){var c,u,l,d,s;if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let o=(c=r==null?void 0:r.relatedTask)==null?void 0:c.taskId;if(o){let f={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...((u=e.params)==null?void 0:u._meta)||{},[Lr]:r.relatedTask}}};await this._enqueueTaskMessage(o,{type:"notification",message:f,timestamp:Date.now()});return}if(((d=(l=this._options)==null?void 0:l.debouncedNotificationMethods)!=null?d:[]).includes(e.method)&&!e.params&&!(r!=null&&r.relatedRequestId)&&!(r!=null&&r.relatedTask)){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{var p,m;if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let f={...e,jsonrpc:"2.0"};r!=null&&r.relatedTask&&(f={...f,params:{...f.params,_meta:{...((p=f.params)==null?void 0:p._meta)||{},[Lr]:r.relatedTask}}}),(m=this._transport)==null||m.send(f,r).catch(h=>this._onerror(h))});return}let a={...e,jsonrpc:"2.0"};r!=null&&r.relatedTask&&(a={...a,params:{...a.params,_meta:{...((s=a.params)==null?void 0:s._meta)||{},[Lr]:r.relatedTask}}}),await this._transport.send(a,r)}setRequestHandler(e,r){let o=hh(e);this.assertRequestHandlerCapability(o),this._requestHandlers.set(o,(n,i)=>{let a=gh(e,n);return Promise.resolve(r(a,i))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw new Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,r){let o=hh(e);this._notificationHandlers.set(o,n=>{let i=gh(e,n);return Promise.resolve(r(i))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let r=this._taskProgressTokens.get(e);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,r,o){var i;if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let n=(i=this._options)==null?void 0:i.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,o,n)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let o=await this._taskMessageQueue.dequeueAll(e,r);for(let n of o)if(n.type==="request"&&Kt(n.message)){let i=n.message.id,a=this._requestResolvers.get(i);a?(a(new A(q.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(i)):this._onerror(new Error(`Resolver missing for request ${i} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){var n,i,a;let o=(i=(n=this._options)==null?void 0:n.defaultTaskPollInterval)!=null?i:1e3;try{let c=await((a=this._taskStore)==null?void 0:a.getTask(e));c!=null&&c.pollInterval&&(o=c.pollInterval)}catch{}return new Promise((c,u)=>{if(r.aborted){u(new A(q.InvalidRequest,"Request cancelled"));return}let l=setTimeout(c,o);r.addEventListener("abort",()=>{clearTimeout(l),u(new A(q.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let o=this._taskStore;if(!o)throw new Error("No task store configured");return{createTask:async n=>{if(!e)throw new Error("No request provided");return await o.createTask(n,e.id,{method:e.method,params:e.params},r)},getTask:async n=>{let i=await o.getTask(n,r);if(!i)throw new A(q.InvalidParams,"Failed to retrieve task: Task not found");return i},storeTaskResult:async(n,i,a)=>{await o.storeTaskResult(n,i,a,r);let c=await o.getTask(n,r);if(c){let u=Aa.parse({method:"notifications/tasks/status",params:c});await this.notification(u),Jr(c.status)&&this._cleanupTaskProgressHandler(n)}},getTaskResult:n=>o.getTaskResult(n,r),updateTaskStatus:async(n,i,a)=>{let c=await o.getTask(n,r);if(!c)throw new A(q.InvalidParams,`Task "${n}" not found - it may have been cleaned up`);if(Jr(c.status))throw new A(q.InvalidParams,`Cannot update task "${n}" from terminal status "${c.status}" to "${i}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await o.updateTaskStatus(n,i,a,r);let u=await o.getTask(n,r);if(u){let l=Aa.parse({method:"notifications/tasks/status",params:u});await this.notification(l),Jr(u.status)&&this._cleanupTaskProgressHandler(n)}},listTasks:n=>o.listTasks(n,r)}}};function Jb(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Tl(t,e){let r={...t};for(let o in e){let n=o,i=e[n];if(i===void 0)continue;let a=r[n];Jb(a)&&Jb(i)?r[n]={...a,...i}:r[n]=i}return r}var Ok=nr(tv(),1),jk=nr(Tk(),1);function q4(){let t=new Ok.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,jk.default)(t),t}var Go=class{constructor(e){this._ajv=e!=null?e:q4()}getValidator(e){var o;let r="$id"in e&&typeof e.$id=="string"?(o=this._ajv.getSchema(e.$id))!=null?o:this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var fd=class{constructor(e){this._client=e}async*callToolStream(e,r=Vr,o){var u;let n=this._client,i={...o,task:(u=o==null?void 0:o.task)!=null?u:n.isToolTask(e.name)?{}:void 0},a=n.requestStream({method:"tools/call",params:e},r,i),c=n.getToolOutputValidator(e.name);for await(let l of a){if(l.type==="result"&&c){let d=l.result;if(!d.structuredContent&&!d.isError){yield{type:"error",error:new A(q.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`)};return}if(d.structuredContent)try{let s=c(d.structuredContent);if(!s.valid){yield{type:"error",error:new A(q.InvalidParams,`Structured content does not match the tool's output schema: ${s.errorMessage}`)};return}}catch(s){if(s instanceof A){yield{type:"error",error:s};return}yield{type:"error",error:new A(q.InvalidParams,`Failed to validate structured content: ${s instanceof Error?s.message:String(s)}`)};return}}yield l}}async getTask(e,r){return this._client.getTask({taskId:e},r)}async getTaskResult(e,r,o){return this._client.getTaskResult({taskId:e},r,o)}async listTasks(e,r){return this._client.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._client.cancelTask({taskId:e},r)}requestStream(e,r,o){return this._client.requestStream(e,r,o)}};function pd(t,e,r){var o;if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"tools/call":if(!((o=t.tools)!=null&&o.call))throw new Error(`${r} does not support task creation for tools/call (required for ${e})`);break;default:break}}function md(t,e,r){var o,n;if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!((o=t.sampling)!=null&&o.createMessage))throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!((n=t.elicitation)!=null&&n.create))throw new Error(`${r} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}function hd(t,e){if(!(!t||e===null||typeof e!="object")){if(t.type==="object"&&t.properties&&typeof t.properties=="object"){let r=e,o=t.properties;for(let n of Object.keys(o)){let i=o[n];r[n]===void 0&&Object.prototype.hasOwnProperty.call(i,"default")&&(r[n]=i.default),r[n]!==void 0&&hd(i,r[n])}}if(Array.isArray(t.anyOf))for(let r of t.anyOf)typeof r!="boolean"&&hd(r,e);if(Array.isArray(t.oneOf))for(let r of t.oneOf)typeof r!="boolean"&&hd(r,e)}}function L4(t){if(!t)return{supportsFormMode:!1,supportsUrlMode:!1};let e=t.form!==void 0,r=t.url!==void 0;return{supportsFormMode:e||!e&&!r,supportsUrlMode:r}}var gd=class extends Oo{constructor(e,r){var o,n;super(r),this._clientInfo=e,this._cachedToolOutputValidators=new Map,this._cachedKnownTaskTools=new Set,this._cachedRequiredTaskTools=new Set,this._listChangedDebounceTimers=new Map,this._capabilities=(o=r==null?void 0:r.capabilities)!=null?o:{},this._jsonSchemaValidator=(n=r==null?void 0:r.jsonSchemaValidator)!=null?n:new Go,r!=null&&r.listChanged&&(this._pendingListChangedConfig=r.listChanged)}_setupListChangedHandlers(e){var r,o,n,i,a,c;e.tools&&((o=(r=this._serverCapabilities)==null?void 0:r.tools)!=null&&o.listChanged)&&this._setupListChangedHandler("tools",oh,e.tools,async()=>(await this.listTools()).tools),e.prompts&&((i=(n=this._serverCapabilities)==null?void 0:n.prompts)!=null&&i.listChanged)&&this._setupListChangedHandler("prompts",th,e.prompts,async()=>(await this.listPrompts()).prompts),e.resources&&((c=(a=this._serverCapabilities)==null?void 0:a.resources)!=null&&c.listChanged)&&this._setupListChangedHandler("resources",Bm,e.resources,async()=>(await this.listResources()).resources)}get experimental(){return this._experimental||(this._experimental={tasks:new fd(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Tl(this._capabilities,e)}setRequestHandler(e,r){var c,u,l;let o=ko(e),n=o==null?void 0:o.method;if(!n)throw new Error("Schema is missing a method literal");let i;if(Zr(n)){let d=n,s=(c=d._zod)==null?void 0:c.def;i=(u=s==null?void 0:s.value)!=null?u:d.value}else{let d=n,s=d._def;i=(l=s==null?void 0:s.value)!=null?l:d.value}if(typeof i!="string")throw new Error("Schema method literal must be a string");let a=i;if(a==="elicitation/create"){let d=async(s,f)=>{var b,L,H;let p=Ye(sh,s);if(!p.success){let he=p.error instanceof Error?p.error.message:String(p.error);throw new A(q.InvalidParams,`Invalid elicitation request: ${he}`)}let{params:m}=p.data;m.mode=(b=m.mode)!=null?b:"form";let{supportsFormMode:h,supportsUrlMode:v}=L4(this._capabilities.elicitation);if(m.mode==="form"&&!h)throw new A(q.InvalidParams,"Client does not support form-mode elicitation requests");if(m.mode==="url"&&!v)throw new A(q.InvalidParams,"Client does not support URL-mode elicitation requests");let y=await Promise.resolve(r(s,f));if(m.task){let he=Ye(pr,y);if(!he.success){let W=he.error instanceof Error?he.error.message:String(he.error);throw new A(q.InvalidParams,`Invalid task creation result: ${W}`)}return he.data}let w=Ye(Fr,y);if(!w.success){let he=w.error instanceof Error?w.error.message:String(w.error);throw new A(q.InvalidParams,`Invalid elicitation result: ${he}`)}let k=w.data,x=m.mode==="form"?m.requestedSchema:void 0;if(m.mode==="form"&&k.action==="accept"&&k.content&&x&&(H=(L=this._capabilities.elicitation)==null?void 0:L.form)!=null&&H.applyDefaults)try{hd(x,k.content)}catch{}return k};return super.setRequestHandler(e,d)}if(a==="sampling/createMessage"){let d=async(s,f)=>{let p=Ye(ah,s);if(!p.success){let k=p.error instanceof Error?p.error.message:String(p.error);throw new A(q.InvalidParams,`Invalid sampling request: ${k}`)}let{params:m}=p.data,h=await Promise.resolve(r(s,f));if(m.task){let k=Ye(pr,h);if(!k.success){let x=k.error instanceof Error?k.error.message:String(k.error);throw new A(q.InvalidParams,`Invalid task creation result: ${x}`)}return k.data}let y=m.tools||m.toolChoice?Va:vn,w=Ye(y,h);if(!w.success){let k=w.error instanceof Error?w.error.message:String(w.error);throw new A(q.InvalidParams,`Invalid sampling result: ${k}`)}return w.data};return super.setRequestHandler(e,d)}return super.setRequestHandler(e,r)}assertCapability(e,r){var o;if(!((o=this._serverCapabilities)!=null&&o[e]))throw new Error(`Server does not support ${e} (required for ${r})`)}async connect(e,r){if(await super.connect(e),e.sessionId===void 0)try{let o=await this.request({method:"initialize",params:{protocolVersion:Mr,capabilities:this._capabilities,clientInfo:this._clientInfo}},Lm,r);if(o===void 0)throw new Error(`Server sent invalid initialize result: ${o}`);if(!qr.includes(o.protocolVersion))throw new Error(`Server's protocol version is not supported: ${o.protocolVersion}`);this._serverCapabilities=o.capabilities,this._serverVersion=o.serverInfo,e.setProtocolVersion&&e.setProtocolVersion(o.protocolVersion),this._instructions=o.instructions,await this.notification({method:"notifications/initialized"}),this._pendingListChangedConfig&&(this._setupListChangedHandlers(this._pendingListChangedConfig),this._pendingListChangedConfig=void 0)}catch(o){throw this.close(),o}}getServerCapabilities(){return this._serverCapabilities}getServerVersion(){return this._serverVersion}getInstructions(){return this._instructions}assertCapabilityForMethod(e){var r,o,n,i,a;switch(e){case"logging/setLevel":if(!((r=this._serverCapabilities)!=null&&r.logging))throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!((o=this._serverCapabilities)!=null&&o.prompts))throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":case"resources/subscribe":case"resources/unsubscribe":if(!((n=this._serverCapabilities)!=null&&n.resources))throw new Error(`Server does not support resources (required for ${e})`);if(e==="resources/subscribe"&&!this._serverCapabilities.resources.subscribe)throw new Error(`Server does not support resource subscriptions (required for ${e})`);break;case"tools/call":case"tools/list":if(!((i=this._serverCapabilities)!=null&&i.tools))throw new Error(`Server does not support tools (required for ${e})`);break;case"completion/complete":if(!((a=this._serverCapabilities)!=null&&a.completions))throw new Error(`Server does not support completions (required for ${e})`);break;case"initialize":break;case"ping":break}}assertNotificationCapability(e){var r;switch(e){case"notifications/roots/list_changed":if(!((r=this._capabilities.roots)!=null&&r.listChanged))throw new Error(`Client does not support roots list changed notifications (required for ${e})`);break;case"notifications/initialized":break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"sampling/createMessage":if(!this._capabilities.sampling)throw new Error(`Client does not support sampling capability (required for ${e})`);break;case"elicitation/create":if(!this._capabilities.elicitation)throw new Error(`Client does not support elicitation capability (required for ${e})`);break;case"roots/list":if(!this._capabilities.roots)throw new Error(`Client does not support roots capability (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Client does not support tasks capability (required for ${e})`);break;case"ping":break}}assertTaskCapability(e){var r,o;pd((o=(r=this._serverCapabilities)==null?void 0:r.tasks)==null?void 0:o.requests,e,"Server")}assertTaskHandlerCapability(e){var r;this._capabilities&&md((r=this._capabilities.tasks)==null?void 0:r.requests,e,"Client")}async ping(e){return this.request({method:"ping"},fr,e)}async complete(e,r){return this.request({method:"completion/complete",params:e},ch,r)}async setLoggingLevel(e,r){return this.request({method:"logging/setLevel",params:{level:e}},fr,r)}async getPrompt(e,r){return this.request({method:"prompts/get",params:e},eh,r)}async listPrompts(e,r){return this.request({method:"prompts/list",params:e},Gm,r)}async listResources(e,r){return this.request({method:"resources/list",params:e},Fm,r)}async listResourceTemplates(e,r){return this.request({method:"resources/templates/list",params:e},Jm,r)}async readResource(e,r){return this.request({method:"resources/read",params:e},Wm,r)}async subscribeResource(e,r){return this.request({method:"resources/subscribe",params:e},fr,r)}async unsubscribeResource(e,r){return this.request({method:"resources/unsubscribe",params:e},fr,r)}async callTool(e,r=Vr,o){if(this.isToolTaskRequired(e.name))throw new A(q.InvalidRequest,`Tool "${e.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let n=await this.request({method:"tools/call",params:e},r,o),i=this.getToolOutputValidator(e.name);if(i){if(!n.structuredContent&&!n.isError)throw new A(q.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`);if(n.structuredContent)try{let a=i(n.structuredContent);if(!a.valid)throw new A(q.InvalidParams,`Structured content does not match the tool's output schema: ${a.errorMessage}`)}catch(a){throw a instanceof A?a:new A(q.InvalidParams,`Failed to validate structured content: ${a instanceof Error?a.message:String(a)}`)}}return n}isToolTask(e){var r,o,n,i;return(i=(n=(o=(r=this._serverCapabilities)==null?void 0:r.tasks)==null?void 0:o.requests)==null?void 0:n.tools)!=null&&i.call?this._cachedKnownTaskTools.has(e):!1}isToolTaskRequired(e){return this._cachedRequiredTaskTools.has(e)}cacheToolMetadata(e){var r;this._cachedToolOutputValidators.clear(),this._cachedKnownTaskTools.clear(),this._cachedRequiredTaskTools.clear();for(let o of e){if(o.outputSchema){let i=this._jsonSchemaValidator.getValidator(o.outputSchema);this._cachedToolOutputValidators.set(o.name,i)}let n=(r=o.execution)==null?void 0:r.taskSupport;(n==="required"||n==="optional")&&this._cachedKnownTaskTools.add(o.name),n==="required"&&this._cachedRequiredTaskTools.add(o.name)}}getToolOutputValidator(e){return this._cachedToolOutputValidators.get(e)}async listTools(e,r){let o=await this.request({method:"tools/list",params:e},nh,r);return this.cacheToolMetadata(o.tools),o}_setupListChangedHandler(e,r,o,n){let i=fb.safeParse(o);if(!i.success)throw new Error(`Invalid ${e} listChanged options: ${i.error.message}`);if(typeof o.onChanged!="function")throw new Error(`Invalid ${e} listChanged options: onChanged must be a function`);let{autoRefresh:a,debounceMs:c}=i.data,{onChanged:u}=o,l=async()=>{if(!a){u(null,null);return}try{let s=await n();u(null,s)}catch(s){let f=s instanceof Error?s:new Error(String(s));u(f,null)}},d=()=>{if(c){let s=this._listChangedDebounceTimers.get(e);s&&clearTimeout(s);let f=setTimeout(l,c);this._listChangedDebounceTimers.set(e,f)}else l()};this.setNotificationHandler(r,d)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}};var vd=class{constructor(e){this._server=e}requestStream(e,r,o){return this._server.requestStream(e,r,o)}createMessageStream(e,r){var n;let o=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!((n=o==null?void 0:o.sampling)!=null&&n.tools))throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let i=e.messages[e.messages.length-1],a=Array.isArray(i.content)?i.content:[i.content],c=a.some(s=>s.type==="tool_result"),u=e.messages.length>1?e.messages[e.messages.length-2]:void 0,l=u?Array.isArray(u.content)?u.content:[u.content]:[],d=l.some(s=>s.type==="tool_use");if(c){if(a.some(s=>s.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!d)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(d){let s=new Set(l.filter(p=>p.type==="tool_use").map(p=>p.id)),f=new Set(a.filter(p=>p.type==="tool_result").map(p=>p.toolUseId));if(s.size!==f.size||![...s].every(p=>f.has(p)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},vn,r)}elicitInputStream(e,r){var a,c,u;let o=this._server.getClientCapabilities(),n=(a=e.mode)!=null?a:"form";switch(n){case"url":{if(!((c=o==null?void 0:o.elicitation)!=null&&c.url))throw new Error("Client does not support url elicitation.");break}case"form":{if(!((u=o==null?void 0:o.elicitation)!=null&&u.form))throw new Error("Client does not support form elicitation.");break}}let i=n==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:i},Fr,r)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,o){return this._server.getTaskResult({taskId:e},r,o)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};var _d=class extends Oo{constructor(e,r){var o,n;super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(La.options.map((i,a)=>[i,a])),this.isMessageIgnored=(i,a)=>{let c=this._loggingLevels.get(a);return c?this.LOG_LEVEL_SEVERITY.get(i)this._oninitialize(i)),this.setNotificationHandler(_l,()=>{var i;return(i=this.oninitialized)==null?void 0:i.call(this)}),this._capabilities.logging&&this.setRequestHandler(ih,async(i,a)=>{var d;let c=a.sessionId||((d=a.requestInfo)==null?void 0:d.headers["mcp-session-id"])||void 0,{level:u}=i.params,l=La.safeParse(u);return l.success&&this._loggingLevels.set(c,l.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new vd(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Tl(this._capabilities,e)}setRequestHandler(e,r){var c,u,l;let o=ko(e),n=o==null?void 0:o.method;if(!n)throw new Error("Schema is missing a method literal");let i;if(Zr(n)){let d=n,s=(c=d._zod)==null?void 0:c.def;i=(u=s==null?void 0:s.value)!=null?u:d.value}else{let d=n,s=d._def;i=(l=s==null?void 0:s.value)!=null?l:d.value}if(typeof i!="string")throw new Error("Schema method literal must be a string");if(i==="tools/call"){let d=async(s,f)=>{let p=Ye(qa,s);if(!p.success){let y=p.error instanceof Error?p.error.message:String(p.error);throw new A(q.InvalidParams,`Invalid tools/call request: ${y}`)}let{params:m}=p.data,h=await Promise.resolve(r(s,f));if(m.task){let y=Ye(pr,h);if(!y.success){let w=y.error instanceof Error?y.error.message:String(y.error);throw new A(q.InvalidParams,`Invalid task creation result: ${w}`)}return y.data}let v=Ye(Vr,h);if(!v.success){let y=v.error instanceof Error?v.error.message:String(v.error);throw new A(q.InvalidParams,`Invalid tools/call result: ${y}`)}return v.data};return super.setRequestHandler(e,d)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){var r,o,n;switch(e){case"sampling/createMessage":if(!((r=this._clientCapabilities)!=null&&r.sampling))throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!((o=this._clientCapabilities)!=null&&o.elicitation))throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!((n=this._clientCapabilities)!=null&&n.roots))throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){var r,o;switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!((o=(r=this._clientCapabilities)==null?void 0:r.elicitation)!=null&&o.url))throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){var r,o;md((o=(r=this._clientCapabilities)==null?void 0:r.tasks)==null?void 0:o.requests,e,"Client")}assertTaskHandlerCapability(e){var r;this._capabilities&&pd((r=this._capabilities.tasks)==null?void 0:r.requests,e,"Server")}async _oninitialize(e){let r=e.params.protocolVersion;return this._clientCapabilities=e.params.capabilities,this._clientVersion=e.params.clientInfo,{protocolVersion:qr.includes(r)?r:Mr,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},fr)}async createMessage(e,r){var o,n;if((e.tools||e.toolChoice)&&!((n=(o=this._clientCapabilities)==null?void 0:o.sampling)!=null&&n.tools))throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let i=e.messages[e.messages.length-1],a=Array.isArray(i.content)?i.content:[i.content],c=a.some(s=>s.type==="tool_result"),u=e.messages.length>1?e.messages[e.messages.length-2]:void 0,l=u?Array.isArray(u.content)?u.content:[u.content]:[],d=l.some(s=>s.type==="tool_use");if(c){if(a.some(s=>s.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!d)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(d){let s=new Set(l.filter(p=>p.type==="tool_use").map(p=>p.id)),f=new Set(a.filter(p=>p.type==="tool_result").map(p=>p.toolUseId));if(s.size!==f.size||![...s].every(p=>f.has(p)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},Va,r):this.request({method:"sampling/createMessage",params:e},vn,r)}async elicitInput(e,r){var n,i,a,c,u;switch((n=e.mode)!=null?n:"form"){case"url":{if(!((a=(i=this._clientCapabilities)==null?void 0:i.elicitation)!=null&&a.url))throw new Error("Client does not support url elicitation.");let l=e;return this.request({method:"elicitation/create",params:l},Fr,r)}case"form":{if(!((u=(c=this._clientCapabilities)==null?void 0:c.elicitation)!=null&&u.form))throw new Error("Client does not support form elicitation.");let l=e.mode==="form"?e:{...e,mode:"form"},d=await this.request({method:"elicitation/create",params:l},Fr,r);if(d.action==="accept"&&d.content&&l.requestedSchema)try{let f=this._jsonSchemaValidator.getValidator(l.requestedSchema)(d.content);if(!f.valid)throw new A(q.InvalidParams,`Elicitation response content does not match requested schema: ${f.errorMessage}`)}catch(s){throw s instanceof A?s:new A(q.InternalError,`Error validating elicitation response: ${s instanceof Error?s.message:String(s)}`)}return d}}}createElicitationCompletionNotifier(e,r){var o,n;if(!((n=(o=this._clientCapabilities)==null?void 0:o.elicitation)!=null&&n.url))throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},lh,r)}async sendLoggingMessage(e,r){if(this._capabilities.logging&&!this.isMessageIgnored(e.level,r))return this.notification({method:"notifications/message",params:e})}async sendResourceUpdated(e){return this.notification({method:"notifications/resources/updated",params:e})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}};var yd=class extends Error{constructor(e,r){super(e),this.name="ParseError",this.type=r.type,this.field=r.field,this.value=r.value,this.line=r.line}};function uv(t){}function $d(t){if(typeof t=="function")throw new TypeError("`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?");let{onEvent:e=uv,onError:r=uv,onRetry:o=uv,onComment:n}=t,i="",a=!0,c,u="",l="";function d(h){let v=a?h.replace(/^\xEF\xBB\xBF/,""):h,[y,w]=V4(`${i}${v}`);for(let k of y)s(k);i=w,a=!1}function s(h){if(h===""){p();return}if(h.startsWith(":")){n&&n(h.slice(h.startsWith(": ")?2:1));return}let v=h.indexOf(":");if(v!==-1){let y=h.slice(0,v),w=h[v+1]===" "?2:1,k=h.slice(v+w);f(y,k,h);return}f(h,"",h)}function f(h,v,y){switch(h){case"event":l=v;break;case"data":u=`${u}${v} +`;break;case"id":c=v.includes("\0")?void 0:v;break;case"retry":/^\d+$/.test(v)?o(parseInt(v,10)):r(new yd(`Invalid \`retry\` value: "${v}"`,{type:"invalid-retry",value:v,line:y}));break;default:r(new yd(`Unknown field "${h.length>20?`${h.slice(0,20)}\u2026`:h}"`,{type:"unknown-field",field:h,value:v,line:y}));break}}function p(){u.length>0&&e({id:c,event:l||void 0,data:u.endsWith(` +`)?u.slice(0,-1):u}),c=void 0,u="",l=""}function m(h={}){i&&h.consume&&s(i),a=!0,c=void 0,u="",l="",i=""}return{feed:d,reset:m}}function V4(t){let e=[],r="",o=0;for(;o{throw TypeError(t)},_v=(t,e,r)=>e.has(t)||Ck("Cannot "+r),ne=(t,e,r)=>(_v(t,e,"read from private field"),r?r.call(t):e.get(t)),Ce=(t,e,r)=>e.has(t)?Ck("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),Pe=(t,e,r,o)=>(_v(t,e,"write to private field"),e.set(t,r),r),yr=(t,e,r)=>(_v(t,e,"access private method"),r),pt,Pn,Ko,bd,wd,xs,Qo,ws,en,Xo,ei,Yo,$s,Ft,dv,fv,pv,Nk,mv,hv,bs,gv,vv,En=class extends EventTarget{constructor(e,r){var o,n;super(),Ce(this,Ft),this.CONNECTING=0,this.OPEN=1,this.CLOSED=2,Ce(this,pt),Ce(this,Pn),Ce(this,Ko),Ce(this,bd),Ce(this,wd),Ce(this,xs),Ce(this,Qo),Ce(this,ws,null),Ce(this,en),Ce(this,Xo),Ce(this,ei,null),Ce(this,Yo,null),Ce(this,$s,null),Ce(this,fv,async i=>{var a;ne(this,Xo).reset();let{body:c,redirected:u,status:l,headers:d}=i;if(l===204){yr(this,Ft,bs).call(this,"Server sent HTTP 204, not reconnecting",204),this.close();return}if(u?Pe(this,Ko,new URL(i.url)):Pe(this,Ko,void 0),l!==200){yr(this,Ft,bs).call(this,`Non-200 status code (${l})`,l);return}if(!(d.get("content-type")||"").startsWith("text/event-stream")){yr(this,Ft,bs).call(this,'Invalid content type, expected "text/event-stream"',l);return}if(ne(this,pt)===this.CLOSED)return;Pe(this,pt,this.OPEN);let s=new Event("open");if((a=ne(this,$s))==null||a.call(this,s),this.dispatchEvent(s),typeof c!="object"||!c||!("getReader"in c)){yr(this,Ft,bs).call(this,"Invalid response body, expected a web ReadableStream",l),this.close();return}let f=new TextDecoder,p=c.getReader(),m=!0;do{let{done:h,value:v}=await p.read();v&&ne(this,Xo).feed(f.decode(v,{stream:!h})),h&&(m=!1,ne(this,Xo).reset(),yr(this,Ft,gv).call(this))}while(m)}),Ce(this,pv,i=>{Pe(this,en,void 0),!(i.name==="AbortError"||i.type==="aborted")&&yr(this,Ft,gv).call(this,lv(i))}),Ce(this,mv,i=>{typeof i.id=="string"&&Pe(this,ws,i.id);let a=new MessageEvent(i.event||"message",{data:i.data,origin:ne(this,Ko)?ne(this,Ko).origin:ne(this,Pn).origin,lastEventId:i.id||""});ne(this,Yo)&&(!i.event||i.event==="message")&&ne(this,Yo).call(this,a),this.dispatchEvent(a)}),Ce(this,hv,i=>{Pe(this,xs,i)}),Ce(this,vv,()=>{Pe(this,Qo,void 0),ne(this,pt)===this.CONNECTING&&yr(this,Ft,dv).call(this)});try{if(e instanceof URL)Pe(this,Pn,e);else if(typeof e=="string")Pe(this,Pn,new URL(e,J4()));else throw new Error("Invalid URL")}catch{throw F4("An invalid or illegal string was specified")}Pe(this,Xo,$d({onEvent:ne(this,mv),onRetry:ne(this,hv)})),Pe(this,pt,this.CONNECTING),Pe(this,xs,3e3),Pe(this,wd,(o=r==null?void 0:r.fetch)!=null?o:globalThis.fetch),Pe(this,bd,(n=r==null?void 0:r.withCredentials)!=null?n:!1),yr(this,Ft,dv).call(this)}get readyState(){return ne(this,pt)}get url(){return ne(this,Pn).href}get withCredentials(){return ne(this,bd)}get onerror(){return ne(this,ei)}set onerror(e){Pe(this,ei,e)}get onmessage(){return ne(this,Yo)}set onmessage(e){Pe(this,Yo,e)}get onopen(){return ne(this,$s)}set onopen(e){Pe(this,$s,e)}addEventListener(e,r,o){let n=r;super.addEventListener(e,n,o)}removeEventListener(e,r,o){let n=r;super.removeEventListener(e,n,o)}close(){ne(this,Qo)&&clearTimeout(ne(this,Qo)),ne(this,pt)!==this.CLOSED&&(ne(this,en)&&ne(this,en).abort(),Pe(this,pt,this.CLOSED),Pe(this,en,void 0))}};pt=new WeakMap,Pn=new WeakMap,Ko=new WeakMap,bd=new WeakMap,wd=new WeakMap,xs=new WeakMap,Qo=new WeakMap,ws=new WeakMap,en=new WeakMap,Xo=new WeakMap,ei=new WeakMap,Yo=new WeakMap,$s=new WeakMap,Ft=new WeakSet,dv=function(){Pe(this,pt,this.CONNECTING),Pe(this,en,new AbortController),ne(this,wd)(ne(this,Pn),yr(this,Ft,Nk).call(this)).then(ne(this,fv)).catch(ne(this,pv))},fv=new WeakMap,pv=new WeakMap,Nk=function(){var t;let e={mode:"cors",redirect:"follow",headers:{Accept:"text/event-stream",...ne(this,ws)?{"Last-Event-ID":ne(this,ws)}:void 0},cache:"no-store",signal:(t=ne(this,en))==null?void 0:t.signal};return"window"in globalThis&&(e.credentials=this.withCredentials?"include":"same-origin"),e},mv=new WeakMap,hv=new WeakMap,bs=function(t,e){var r;ne(this,pt)!==this.CLOSED&&Pe(this,pt,this.CLOSED);let o=new xd("error",{code:e,message:t});(r=ne(this,ei))==null||r.call(this,o),this.dispatchEvent(o)},gv=function(t,e){var r;if(ne(this,pt)===this.CLOSED)return;Pe(this,pt,this.CONNECTING);let o=new xd("error",{code:e,message:t});(r=ne(this,ei))==null||r.call(this,o),this.dispatchEvent(o),Pe(this,Qo,setTimeout(ne(this,vv),ne(this,xs)))},vv=new WeakMap,En.CONNECTING=0,En.OPEN=1,En.CLOSED=2;function J4(){let t="document"in globalThis?globalThis.document:void 0;return t&&typeof t=="object"&&"baseURI"in t&&typeof t.baseURI=="string"?t.baseURI:void 0}function ti(t){return t?t instanceof Headers?Object.fromEntries(t.entries()):Array.isArray(t)?Object.fromEntries(t):{...t}:{}}function kd(t=fetch,e){return e?async(r,o)=>{let n={...e,...o,headers:o!=null&&o.headers?{...ti(e.headers),...ti(o.headers)}:e.headers};return t(r,n)}:t}var yv,Dk,Uk,Zk;yv=(Zk=(Uk=(Dk=globalThis.crypto)==null?void 0:Dk.webcrypto)!=null?Uk:globalThis.crypto)!=null?Zk:import("node:crypto").then(t=>t.webcrypto);async function H4(t){return(await yv).getRandomValues(new Uint8Array(t))}async function W4(t){let e="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~",r="",o=await H4(t);for(let n=0;n128)throw`Expected a length between 43 and 128. Received ${t}.`;let e=await B4(t),r=await G4(e);return{code_verifier:e,code_challenge:r}}var Le=fm().superRefine((t,e)=>{if(!URL.canParse(t))return e.addIssue({code:G$.custom,message:"URL must be parseable",fatal:!0}),ki}).refine(t=>{let e=new URL(t);return e.protocol!=="javascript:"&&e.protocol!=="data:"&&e.protocol!=="vbscript:"},{message:"URL cannot use javascript:, data:, or vbscript: scheme"}),Mk=Ne({resource:g().url(),authorization_servers:j(Le).optional(),jwks_uri:g().url().optional(),scopes_supported:j(g()).optional(),bearer_methods_supported:j(g()).optional(),resource_signing_alg_values_supported:j(g()).optional(),resource_name:g().optional(),resource_documentation:g().optional(),resource_policy_uri:g().url().optional(),resource_tos_uri:g().url().optional(),tls_client_certificate_bound_access_tokens:me().optional(),authorization_details_types_supported:j(g()).optional(),dpop_signing_alg_values_supported:j(g()).optional(),dpop_bound_access_tokens_required:me().optional()}),bv=Ne({issuer:g(),authorization_endpoint:Le,token_endpoint:Le,registration_endpoint:Le.optional(),scopes_supported:j(g()).optional(),response_types_supported:j(g()),response_modes_supported:j(g()).optional(),grant_types_supported:j(g()).optional(),token_endpoint_auth_methods_supported:j(g()).optional(),token_endpoint_auth_signing_alg_values_supported:j(g()).optional(),service_documentation:Le.optional(),revocation_endpoint:Le.optional(),revocation_endpoint_auth_methods_supported:j(g()).optional(),revocation_endpoint_auth_signing_alg_values_supported:j(g()).optional(),introspection_endpoint:g().optional(),introspection_endpoint_auth_methods_supported:j(g()).optional(),introspection_endpoint_auth_signing_alg_values_supported:j(g()).optional(),code_challenge_methods_supported:j(g()).optional(),client_id_metadata_document_supported:me().optional()}),K4=Ne({issuer:g(),authorization_endpoint:Le,token_endpoint:Le,userinfo_endpoint:Le.optional(),jwks_uri:Le,registration_endpoint:Le.optional(),scopes_supported:j(g()).optional(),response_types_supported:j(g()),response_modes_supported:j(g()).optional(),grant_types_supported:j(g()).optional(),acr_values_supported:j(g()).optional(),subject_types_supported:j(g()),id_token_signing_alg_values_supported:j(g()),id_token_encryption_alg_values_supported:j(g()).optional(),id_token_encryption_enc_values_supported:j(g()).optional(),userinfo_signing_alg_values_supported:j(g()).optional(),userinfo_encryption_alg_values_supported:j(g()).optional(),userinfo_encryption_enc_values_supported:j(g()).optional(),request_object_signing_alg_values_supported:j(g()).optional(),request_object_encryption_alg_values_supported:j(g()).optional(),request_object_encryption_enc_values_supported:j(g()).optional(),token_endpoint_auth_methods_supported:j(g()).optional(),token_endpoint_auth_signing_alg_values_supported:j(g()).optional(),display_values_supported:j(g()).optional(),claim_types_supported:j(g()).optional(),claims_supported:j(g()).optional(),service_documentation:g().optional(),claims_locales_supported:j(g()).optional(),ui_locales_supported:j(g()).optional(),claims_parameter_supported:me().optional(),request_parameter_supported:me().optional(),request_uri_parameter_supported:me().optional(),require_request_uri_registration:me().optional(),op_policy_uri:Le.optional(),op_tos_uri:Le.optional(),client_id_metadata_document_supported:me().optional()}),qk=R({...K4.shape,...bv.pick({code_challenge_methods_supported:!0}).shape}),Lk=R({access_token:g(),id_token:g().optional(),token_type:g(),expires_in:Ra.number().optional(),scope:g().optional(),refresh_token:g().optional()}).strip(),Vk=R({error:g(),error_description:g().optional(),error_uri:g().optional()}),Ak=Le.optional().or(Z("").transform(()=>{})),X4=R({redirect_uris:j(Le),token_endpoint_auth_method:g().optional(),grant_types:j(g()).optional(),response_types:j(g()).optional(),client_name:g().optional(),client_uri:Le.optional(),logo_uri:Ak,scope:g().optional(),contacts:j(g()).optional(),tos_uri:Ak,policy_uri:g().optional(),jwks_uri:Le.optional(),jwks:Em().optional(),software_id:g().optional(),software_version:g().optional(),software_statement:g().optional()}).strip(),Y4=R({client_id:g(),client_secret:g().optional(),client_id_issued_at:se().optional(),client_secret_expires_at:se().optional()}).strip(),Fk=X4.merge(Y4),O9=R({error:g(),error_description:g().optional()}).strip(),j9=R({token:g(),token_type_hint:g().optional()}).strip();function Jk(t){let e=typeof t=="string"?new URL(t):new URL(t.href);return e.hash="",e}function Hk({requestedResource:t,configuredResource:e}){let r=typeof t=="string"?new URL(t):new URL(t.href),o=typeof e=="string"?new URL(e):new URL(e.href);if(r.origin!==o.origin||r.pathname.length=400&&t.status<500&&e!=="/"}async function uC(t,e,r,o){var u,l;let n=new URL(t),i=(u=o==null?void 0:o.protocolVersion)!=null?u:Mr,a;if(o!=null&&o.metadataUrl)a=new URL(o.metadataUrl);else{let d=sC(e,n.pathname);a=new URL(d,(l=o==null?void 0:o.metadataServerUrl)!=null?l:n),a.search=n.search}let c=await Bk(a,i,r);if(!(o!=null&&o.metadataUrl)&&cC(c,n.pathname)){let d=new URL(`/.well-known/${e}`,n);c=await Bk(d,i,r)}return c}function lC(t){let e=typeof t=="string"?new URL(t):t,r=e.pathname!=="/",o=[];if(!r)return o.push({url:new URL("/.well-known/oauth-authorization-server",e.origin),type:"oauth"}),o.push({url:new URL("/.well-known/openid-configuration",e.origin),type:"oidc"}),o;let n=e.pathname;return n.endsWith("/")&&(n=n.slice(0,-1)),o.push({url:new URL(`/.well-known/oauth-authorization-server${n}`,e.origin),type:"oauth"}),o.push({url:new URL(`/.well-known/openid-configuration${n}`,e.origin),type:"oidc"}),o.push({url:new URL(`${n}/.well-known/openid-configuration`,e.origin),type:"oidc"}),o}async function Xk(t,{fetchFn:e=fetch,protocolVersion:r=Mr}={}){var i;let o={"MCP-Protocol-Version":r,Accept:"application/json"},n=lC(t);for(let{url:a,type:c}of n){let u=await zv(a,o,e);if(u){if(!u.ok){if(await((i=u.body)==null?void 0:i.cancel()),u.status>=400&&u.status<500)continue;throw new Error(`HTTP ${u.status} trying to load ${c==="oauth"?"OAuth":"OpenID provider"} metadata from ${a}`)}return c==="oauth"?bv.parse(await u.json()):qk.parse(await u.json())}}}async function dC(t,e){let r,o;try{r=await Kk(t,{resourceMetadataUrl:e==null?void 0:e.resourceMetadataUrl},e==null?void 0:e.fetchFn),r.authorization_servers&&r.authorization_servers.length>0&&(o=r.authorization_servers[0])}catch{}o||(o=String(new URL("/",t)));let n=await Xk(o,{fetchFn:e==null?void 0:e.fetchFn});return{authorizationServerUrl:o,authorizationServerMetadata:n,resourceMetadata:r}}async function fC(t,{metadata:e,clientInformation:r,redirectUrl:o,scope:n,state:i,resource:a}){let c;if(e){if(c=new URL(e.authorization_endpoint),!e.response_types_supported.includes(xv))throw new Error(`Incompatible auth server: does not support response type ${xv}`);if(e.code_challenge_methods_supported&&!e.code_challenge_methods_supported.includes(wv))throw new Error(`Incompatible auth server: does not support code challenge method ${wv}`)}else c=new URL("/authorize",t);let u=await $v(),l=u.code_verifier,d=u.code_challenge;return c.searchParams.set("response_type",xv),c.searchParams.set("client_id",r.client_id),c.searchParams.set("code_challenge",d),c.searchParams.set("code_challenge_method",wv),c.searchParams.set("redirect_uri",String(o)),i&&c.searchParams.set("state",i),n&&c.searchParams.set("scope",n),n!=null&&n.includes("offline_access")&&c.searchParams.append("prompt","consent"),a&&c.searchParams.set("resource",a.href),{authorizationUrl:c,codeVerifier:l}}function pC(t,e,r){return new URLSearchParams({grant_type:"authorization_code",code:t,code_verifier:e,redirect_uri:String(r)})}async function Yk(t,{metadata:e,tokenRequestParams:r,clientInformation:o,addClientAuthentication:n,resource:i,fetchFn:a}){var d;let c=e!=null&&e.token_endpoint?new URL(e.token_endpoint):new URL("/token",t),u=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"});if(i&&r.set("resource",i.href),n)await n(u,r,c,e);else if(o){let s=(d=e==null?void 0:e.token_endpoint_auth_methods_supported)!=null?d:[],f=eC(o,s);tC(f,o,u,r)}let l=await(a!=null?a:fetch)(c,{method:"POST",headers:u,body:r});if(!l.ok)throw await Gk(l);return Lk.parse(await l.json())}async function mC(t,{metadata:e,clientInformation:r,refreshToken:o,resource:n,addClientAuthentication:i,fetchFn:a}){let c=new URLSearchParams({grant_type:"refresh_token",refresh_token:o}),u=await Yk(t,{metadata:e,tokenRequestParams:c,clientInformation:r,addClientAuthentication:i,resource:n,fetchFn:a});return{refresh_token:o,...u}}async function hC(t,e,{metadata:r,resource:o,authorizationCode:n,fetchFn:i}={}){let a=t.clientMetadata.scope,c;if(t.prepareTokenRequest&&(c=await t.prepareTokenRequest(a)),!c){if(!n)throw new Error("Either provider.prepareTokenRequest() or authorizationCode is required");if(!t.redirectUrl)throw new Error("redirectUrl is required for authorization_code flow");let l=await t.codeVerifier();c=pC(n,l,t.redirectUrl)}let u=await t.clientInformation();return Yk(e,{metadata:r,tokenRequestParams:c,clientInformation:u!=null?u:void 0,addClientAuthentication:t.addClientAuthentication,resource:o,fetchFn:i})}async function gC(t,{metadata:e,clientMetadata:r,scope:o,fetchFn:n}){let i;if(e){if(!e.registration_endpoint)throw new Error("Incompatible auth server: does not support dynamic client registration");i=new URL(e.registration_endpoint)}else i=new URL("/register",t);let a=await(n!=null?n:fetch)(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...r,...o!==void 0?{scope:o}:{}})});if(!a.ok)throw await Gk(a);return Fk.parse(await a.json())}var Iv=class extends Error{constructor(e,r,o){super(`SSE error: ${r}`),this.code=e,this.event=o}},Sd=class{constructor(e,r){this._url=e,this._resourceMetadataUrl=void 0,this._scope=void 0,this._eventSourceInit=r==null?void 0:r.eventSourceInit,this._requestInit=r==null?void 0:r.requestInit,this._authProvider=r==null?void 0:r.authProvider,this._fetch=r==null?void 0:r.fetch,this._fetchWithInit=kd(r==null?void 0:r.fetch,r==null?void 0:r.requestInit)}async _authThenStart(){var r;if(!this._authProvider)throw new rt("No auth provider");let e;try{e=await br(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})}catch(o){throw(r=this.onerror)==null||r.call(this,o),o}if(e!=="AUTHORIZED")throw new rt;return await this._startOrAuth()}async _commonHeaders(){var o;let e={};if(this._authProvider){let n=await this._authProvider.tokens();n&&(e.Authorization=`Bearer ${n.access_token}`)}this._protocolVersion&&(e["mcp-protocol-version"]=this._protocolVersion);let r=ti((o=this._requestInit)==null?void 0:o.headers);return new Headers({...e,...r})}_startOrAuth(){var r,o,n;let e=(n=(o=(r=this==null?void 0:this._eventSourceInit)==null?void 0:r.fetch)!=null?o:this._fetch)!=null?n:fetch;return new Promise((i,a)=>{this._eventSource=new En(this._url.href,{...this._eventSourceInit,fetch:async(c,u)=>{let l=await this._commonHeaders();l.set("Accept","text/event-stream");let d=await e(c,{...u,headers:l});if(d.status===401&&d.headers.has("www-authenticate")){let{resourceMetadataUrl:s,scope:f}=ri(d);this._resourceMetadataUrl=s,this._scope=f}return d}}),this._abortController=new AbortController,this._eventSource.onerror=c=>{var l;if(c.code===401&&this._authProvider){this._authThenStart().then(i,a);return}let u=new Iv(c.code,c.message,c);a(u),(l=this.onerror)==null||l.call(this,u)},this._eventSource.onopen=()=>{},this._eventSource.addEventListener("endpoint",c=>{var l;let u=c;try{if(this._endpoint=new URL(u.data,this._url),this._endpoint.origin!==this._url.origin)throw new Error(`Endpoint origin does not match connection origin: ${this._endpoint.origin}`)}catch(d){a(d),(l=this.onerror)==null||l.call(this,d),this.close();return}i()}),this._eventSource.onmessage=c=>{var d,s;let u=c,l;try{l=yt.parse(JSON.parse(u.data))}catch(f){(d=this.onerror)==null||d.call(this,f);return}(s=this.onmessage)==null||s.call(this,l)}})}async start(){if(this._eventSource)throw new Error("SSEClientTransport already started! If using Client class, note that connect() calls start() automatically.");return await this._startOrAuth()}async finishAuth(e){if(!this._authProvider)throw new rt("No auth provider");if(await br(this._authProvider,{serverUrl:this._url,authorizationCode:e,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})!=="AUTHORIZED")throw new rt("Failed to authorize")}async close(){var e,r,o;(e=this._abortController)==null||e.abort(),(r=this._eventSource)==null||r.close(),(o=this.onclose)==null||o.call(this)}async send(e){var r,o,n,i;if(!this._endpoint)throw new Error("Not connected");try{let a=await this._commonHeaders();a.set("content-type","application/json");let c={...this._requestInit,method:"POST",headers:a,body:JSON.stringify(e),signal:(r=this._abortController)==null?void 0:r.signal},u=await((o=this._fetch)!=null?o:fetch)(this._endpoint,c);if(!u.ok){let l=await u.text().catch(()=>null);if(u.status===401&&this._authProvider){let{resourceMetadataUrl:d,scope:s}=ri(u);if(this._resourceMetadataUrl=d,this._scope=s,await br(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})!=="AUTHORIZED")throw new rt;return this.send(e)}throw new Error(`Error POSTing to endpoint (HTTP ${u.status}): ${l}`)}await((n=u.body)==null?void 0:n.cancel())}catch(a){throw(i=this.onerror)==null||i.call(this,a),a}}setProtocolVersion(e){this._protocolVersion=e}};var sS=require("node:crypto"),cS=require("node:tls");var rS=nr(tS());function Pv(t,{limit:e,encoding:r}){let o=rS.default.parse(e);return new Promise((n,i)=>{let a=0,c=[];t.on("data",u=>{if(a+=u.length,a>o)return i(new Error(`Message size exceeds limit of ${e} bytes`));c.push(u)}),t.on("end",()=>{try{n(Buffer.concat(c).toString(r))}catch(u){i(u)}}),t.on("error",u=>{i(u)})})}var uS=nr(aS(),1),Tv=require("node:url"),EC="4mb",Id=class{constructor(e,r,o){this._endpoint=e,this.res=r,this._sessionId=(0,sS.randomUUID)(),this._options=o||{enableDnsRebindingProtection:!1}}validateRequestHeaders(e){if(this._options.enableDnsRebindingProtection){if(this._options.allowedHosts&&this._options.allowedHosts.length>0){let r=e.headers.host;if(!r||!this._options.allowedHosts.includes(r))return`Invalid Host header: ${r}`}if(this._options.allowedOrigins&&this._options.allowedOrigins.length>0){let r=e.headers.origin;if(r&&!this._options.allowedOrigins.includes(r))return`Invalid Origin header: ${r}`}}}async start(){if(this._sseResponse)throw new Error("SSEServerTransport already started! If using Server class, note that connect() calls start() automatically.");this.res.writeHead(200,{"Content-Type":"text/event-stream","Cache-Control":"no-cache, no-transform",Connection:"keep-alive"});let e="http://localhost",r=new Tv.URL(this._endpoint,e);r.searchParams.set("sessionId",this._sessionId);let o=r.pathname+r.search+r.hash;this.res.write(`event: endpoint +data: ${o} + +`),this._sseResponse=this.res,this.res.on("close",()=>{var n;this._sseResponse=void 0,(n=this.onclose)==null||n.call(this)})}async handlePostMessage(e,r,o){var s,f,p,m;if(!this._sseResponse){let h="SSE connection not established";throw r.writeHead(500).end(h),new Error(h)}let n=this.validateRequestHeaders(e);if(n){r.writeHead(403).end(n),(s=this.onerror)==null||s.call(this,new Error(n));return}let i=e.auth,a=e.headers.host,c=e.socket instanceof cS.TLSSocket?"https":"http",u=a&&e.url?new Tv.URL(e.url,`${c}://${a}`):void 0,l={headers:e.headers,url:u},d;try{let h=uS.default.parse((f=e.headers["content-type"])!=null?f:"");if(h.type!=="application/json")throw new Error(`Unsupported content-type: ${h.type}`);d=o!=null?o:await Pv(e,{limit:EC,encoding:(p=h.parameters.charset)!=null?p:"utf-8"})}catch(h){r.writeHead(400).end(String(h)),(m=this.onerror)==null||m.call(this,h);return}try{await this.handleMessage(typeof d=="string"?JSON.parse(d):d,{requestInfo:l,authInfo:i})}catch{r.writeHead(400).end(`Invalid message: ${d}`);return}r.writeHead(202).end("Accepted")}async handleMessage(e,r){var n,i;let o;try{o=yt.parse(e)}catch(a){throw(n=this.onerror)==null||n.call(this,a),a}(i=this.onmessage)==null||i.call(this,o,r)}async close(){var e,r;(e=this._sseResponse)==null||e.end(),this._sseResponse=void 0,(r=this.onclose)==null||r.call(this)}async send(e){if(!this._sseResponse)throw new Error("Not connected");this._sseResponse.write(`event: message +data: ${JSON.stringify(e)} + +`)}get sessionId(){return this._sessionId}};var YS=nr(XS(),1),Ds=nr(require("node:process"),1),QS=require("node:stream");var ii=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(` +`);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),rD(r)}clear(){this._buffer=void 0}};function rD(t){return yt.parse(JSON.parse(t))}function Ed(t){return JSON.stringify(t)+` +`}var nD=Ds.default.platform==="win32"?["APPDATA","HOMEDRIVE","HOMEPATH","LOCALAPPDATA","PATH","PROCESSOR_ARCHITECTURE","SYSTEMDRIVE","SYSTEMROOT","TEMP","USERNAME","USERPROFILE","PROGRAMFILES"]:["HOME","LOGNAME","PATH","SHELL","TERM","USER"];function oD(){let t={};for(let e of nD){let r=Ds.default.env[e];r!==void 0&&(r.startsWith("()")||(t[e]=r))}return t}var Td=class{constructor(e){this._readBuffer=new ii,this._stderrStream=null,this._serverParams=e,(e.stderr==="pipe"||e.stderr==="overlapped")&&(this._stderrStream=new QS.PassThrough)}async start(){if(this._process)throw new Error("StdioClientTransport already started! If using Client class, note that connect() calls start() automatically.");return new Promise((e,r)=>{var o,n,i,a,c;this._process=(0,YS.default)(this._serverParams.command,(o=this._serverParams.args)!=null?o:[],{env:{...oD(),...this._serverParams.env},stdio:["pipe","pipe",(n=this._serverParams.stderr)!=null?n:"inherit"],shell:!1,windowsHide:Ds.default.platform==="win32"&&iD(),cwd:this._serverParams.cwd}),this._process.on("error",u=>{var l;r(u),(l=this.onerror)==null||l.call(this,u)}),this._process.on("spawn",()=>{e()}),this._process.on("close",u=>{var l;this._process=void 0,(l=this.onclose)==null||l.call(this)}),(i=this._process.stdin)==null||i.on("error",u=>{var l;(l=this.onerror)==null||l.call(this,u)}),(a=this._process.stdout)==null||a.on("data",u=>{this._readBuffer.append(u),this.processReadBuffer()}),(c=this._process.stdout)==null||c.on("error",u=>{var l;(l=this.onerror)==null||l.call(this,u)}),this._stderrStream&&this._process.stderr&&this._process.stderr.pipe(this._stderrStream)})}get stderr(){var e,r;return this._stderrStream?this._stderrStream:(r=(e=this._process)==null?void 0:e.stderr)!=null?r:null}get pid(){var e,r;return(r=(e=this._process)==null?void 0:e.pid)!=null?r:null}processReadBuffer(){var e,r;for(;;)try{let o=this._readBuffer.readMessage();if(o===null)break;(e=this.onmessage)==null||e.call(this,o)}catch(o){(r=this.onerror)==null||r.call(this,o)}}async close(){var e;if(this._process){let r=this._process;this._process=void 0;let o=new Promise(n=>{r.once("close",()=>{n()})});try{(e=r.stdin)==null||e.end()}catch{}if(await Promise.race([o,new Promise(n=>setTimeout(n,2e3).unref())]),r.exitCode===null){try{r.kill("SIGTERM")}catch{}await Promise.race([o,new Promise(n=>setTimeout(n,2e3).unref())])}if(r.exitCode===null)try{r.kill("SIGKILL")}catch{}}this._readBuffer.clear()}send(e){return new Promise(r=>{var n;if(!((n=this._process)!=null&&n.stdin))throw new Error("Not connected");let o=Ed(e);this._process.stdin.write(o)?r():this._process.stdin.once("drain",r)})}};function iD(){return"type"in Ds.default}var Mv=nr(require("node:process"),1);var Od=class{constructor(e=Mv.default.stdin,r=Mv.default.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new ii,this._started=!1,this._ondata=o=>{this._readBuffer.append(o),this.processReadBuffer()},this._onerror=o=>{var n;(n=this.onerror)==null||n.call(this,o)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){var e,r;for(;;)try{let o=this._readBuffer.readMessage();if(o===null)break;(e=this.onmessage)==null||e.call(this,o)}catch(o){(r=this.onerror)==null||r.call(this,o)}}async close(){var r;this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),(r=this.onclose)==null||r.call(this)}send(e){return new Promise(r=>{let o=Ed(e);this._stdout.write(o)?r():this._stdout.once("drain",r)})}};var e0=require("http2"),Rd=require("http2"),Vv=require("stream"),n0=nr(require("crypto"),1);var Nn=class extends Error{constructor(t,e){super(t,e),this.name="RequestError"}},aD=t=>t instanceof Nn?t:new Nn(t.message,{cause:t}),sD=global.Request,Us=class extends sD{constructor(t,e){var r,o;typeof t=="object"&&ci in t&&(t=t[ci]()),typeof((r=e==null?void 0:e.body)==null?void 0:r.getReader)!="undefined"&&((o=e.duplex)!=null||(e.duplex="half")),super(t,e)}},cD=t=>{let e=[],r=t.rawHeaders;for(let o=0;o{let i={method:t,headers:r,signal:n.signal};if(t==="TRACE"){i.method="GET";let a=new Us(e,i);return Object.defineProperty(a,"method",{get(){return"TRACE"}}),a}if(!(t==="GET"||t==="HEAD"))if("rawBody"in o&&o.rawBody instanceof Buffer)i.body=new ReadableStream({start(a){a.enqueue(o.rawBody),a.close()}});else if(o[t0]){let a;i.body=new ReadableStream({async pull(c){try{a||(a=Vv.Readable.toWeb(o).getReader());let{done:u,value:l}=await a.read();u?c.close():c.enqueue(l)}catch(u){c.error(u)}}})}else i.body=Vv.Readable.toWeb(o);return new Us(e,i)},ci=Symbol("getRequestCache"),qv=Symbol("requestCache"),Nd=Symbol("incomingKey"),Cd=Symbol("urlKey"),Lv=Symbol("headersKey"),rn=Symbol("abortControllerKey"),lD=Symbol("getAbortController"),Dd={get method(){return this[Nd].method||"GET"},get url(){return this[Cd]},get headers(){return this[Lv]||(this[Lv]=cD(this[Nd]))},[lD](){return this[ci](),this[rn]},[ci](){return this[rn]||(this[rn]=new AbortController),this[qv]||(this[qv]=uD(this.method,this[Cd],this.headers,this[Nd],this[rn]))}};["body","bodyUsed","cache","credentials","destination","integrity","mode","redirect","referrer","referrerPolicy","signal","keepalive"].forEach(t=>{Object.defineProperty(Dd,t,{get(){return this[ci]()[t]}})});["arrayBuffer","blob","clone","formData","json","text"].forEach(t=>{Object.defineProperty(Dd,t,{value:function(){return this[ci]()[t]()}})});Object.setPrototypeOf(Dd,Us.prototype);var dD=(t,e)=>{let r=Object.create(Dd);r[Nd]=t;let o=t.url||"";if(o[0]!=="/"&&(o.startsWith("http://")||o.startsWith("https://"))){if(t instanceof Rd.Http2ServerRequest)throw new Nn("Absolute URL for :path is not allowed in HTTP/2");try{let c=new URL(o);r[Cd]=c.href}catch(c){throw new Nn("Invalid absolute URL",{cause:c})}return r}let n=(t instanceof Rd.Http2ServerRequest?t.authority:t.headers.host)||e;if(!n)throw new Nn("Missing host header");let i;if(t instanceof Rd.Http2ServerRequest){if(i=t.scheme,!(i==="http"||i==="https"))throw new Nn("Unsupported scheme")}else i=t.socket&&t.socket.encrypted?"https":"http";let a=new URL(`${i}://${n}${o}`);if(a.hostname.length!==n.length&&a.hostname!==n.replace(/:\d+$/,""))throw new Nn("Invalid host header");return r[Cd]=a.href,r},jd=Symbol("responseCache"),ai=Symbol("getResponseCache"),Cn=Symbol("cache"),Hv=global.Response,Zs,xr,si,As=(si=class{constructor(e,r){Ld(this,Zs);Ld(this,xr);let o;if(li(this,Zs,e),r instanceof si){let n=r[jd];if(n){li(this,xr,n),this[ai]();return}else li(this,xr,ui(r,xr)),o=new Headers(ui(r,xr).headers)}else li(this,xr,r);(typeof e=="string"||typeof(e==null?void 0:e.getReader)!="undefined"||e instanceof Blob||e instanceof Uint8Array)&&(this[Cn]=[(r==null?void 0:r.status)||200,e,o||(r==null?void 0:r.headers)])}[ai](){return delete this[Cn],this[jd]||(this[jd]=new Hv(ui(this,Zs),ui(this,xr)))}get headers(){let e=this[Cn];return e?(e[2]instanceof Headers||(e[2]=new Headers(e[2]||{"content-type":"text/plain; charset=UTF-8"})),e[2]):this[ai]().headers}get status(){var e,r;return(r=(e=this[Cn])==null?void 0:e[0])!=null?r:this[ai]().status}get ok(){let e=this.status;return e>=200&&e<300}},Zs=new WeakMap,xr=new WeakMap,si);["body","bodyUsed","redirected","statusText","trailers","type","url"].forEach(t=>{Object.defineProperty(As.prototype,t,{get(){return this[ai]()[t]}})});["arrayBuffer","blob","clone","formData","json","text"].forEach(t=>{Object.defineProperty(As.prototype,t,{value:function(){return this[ai]()[t]()}})});Object.setPrototypeOf(As,Hv);Object.setPrototypeOf(As.prototype,Hv.prototype);async function fD(t){return Promise.race([t,Promise.resolve().then(()=>Promise.resolve(void 0))])}function r0(t,e,r){let o=c=>{t.cancel(c).catch(()=>{})};return e.on("close",o),e.on("error",o),(r!=null?r:t.read()).then(a,n),t.closed.finally(()=>{e.off("close",o),e.off("error",o)});function n(c){c&&e.destroy(c)}function i(){t.read().then(a,n)}function a({done:c,value:u}){try{if(c)e.end();else if(!e.write(u))e.once("drain",i);else return t.read().then(a,n)}catch(l){n(l)}}}function pD(t,e){if(t.locked)throw new TypeError("ReadableStream is locked.");return e.destroyed?void 0:r0(t.getReader(),e)}var Fv=t=>{var o;let e={};t instanceof Headers||(t=new Headers(t!=null?t:void 0));let r=[];for(let[n,i]of t)n==="set-cookie"?r.push(i):e[n]=i;return r.length>0&&(e["set-cookie"]=r),(o=e["content-type"])!=null||(e["content-type"]="text/plain; charset=UTF-8"),e},mD="x-hono-already-sent";typeof global.crypto=="undefined"&&(global.crypto=n0.default);var Wv=Symbol("outgoingEnded"),hD=()=>new Response(null,{status:400}),o0=t=>new Response(null,{status:t instanceof Error&&(t.name==="TimeoutError"||t.constructor.name==="TimeoutError")?504:500}),Jv=(t,e)=>{let r=t instanceof Error?t:new Error("unknown error",{cause:t});r.code==="ERR_STREAM_PREMATURE_CLOSE"?console.info("The user aborted a request."):(console.error(t),e.headersSent||e.writeHead(500,{"Content-Type":"text/plain"}),e.end(`Error: ${r.message}`),e.destroy(r))},i0=t=>{"flushHeaders"in t&&t.writable&&t.flushHeaders()},a0=async(t,e)=>{var a,c;let[r,o,n]=t[Cn],i=!1;if(!n)n={"content-type":"text/plain; charset=UTF-8"};else if(n instanceof Headers)i=n.has("content-length"),n=Fv(n);else if(Array.isArray(n)){let u=new Headers(n);i=u.has("content-length"),n=Fv(u)}else for(let u in n)if(u.length===14&&u.toLowerCase()==="content-length"){i=!0;break}i||(typeof o=="string"?n["Content-Length"]=Buffer.byteLength(o):o instanceof Uint8Array?n["Content-Length"]=o.byteLength:o instanceof Blob&&(n["Content-Length"]=o.size)),e.writeHead(r,n),typeof o=="string"||o instanceof Uint8Array?e.end(o):o instanceof Blob?e.end(new Uint8Array(await o.arrayBuffer())):(i0(e),await((a=pD(o,e))==null?void 0:a.catch(u=>Jv(u,e)))),(c=e[Wv])==null||c.call(e)},gD=t=>typeof t.then=="function",vD=async(t,e,r={})=>{var n;if(gD(t))if(r.errorHandler)try{t=await t}catch(i){let a=await r.errorHandler(i);if(!a)return;t=a}else t=await t.catch(o0);if(Cn in t)return a0(t,e);let o=Fv(t.headers);if(t.body){let i=t.body.getReader(),a=[],c=!1,u;if(o["transfer-encoding"]!=="chunked"){let l=2;for(let d=0;d{console.error(f),c=!0});if(!s){if(d===1){await new Promise(f=>setTimeout(f)),l=3;continue}break}if(u=void 0,s.value&&a.push(s.value),s.done){c=!0;break}}c&&!("content-length"in o)&&(o["content-length"]=a.reduce((d,s)=>d+s.length,0))}e.writeHead(t.status,o),a.forEach(l=>{e.write(l)}),c?e.end():(a.length===0&&i0(e),await r0(i,e,u))}else o[mD]||(e.writeHead(t.status,o),e.end());(n=e[Wv])==null||n.call(e)},Bv=(t,e={})=>{var o;let r=(o=e.autoCleanupIncoming)!=null?o:!0;return e.overrideGlobalObjects!==!1&&global.Request!==Us&&(Object.defineProperty(global,"Request",{value:Us}),Object.defineProperty(global,"Response",{value:As})),async(n,i)=>{let a,c;try{c=dD(n,e.hostname);let u=!r||n.method==="GET"||n.method==="HEAD";if(u||(n[t0]=!0,n.on("end",()=>{u=!0}),n instanceof e0.Http2ServerRequest&&(i[Wv]=()=>{u||setTimeout(()=>{u||setTimeout(()=>{n.destroy(),i.destroy()})})})),i.on("close",()=>{c[rn]&&(n.errored?c[rn].abort(n.errored.toString()):i.writableFinished||c[rn].abort("Client connection prematurely closed.")),u||setTimeout(()=>{u||setTimeout(()=>{n.destroy()})})}),a=t(c,{incoming:n,outgoing:i}),Cn in a)return a0(a,i)}catch(u){if(a)return Jv(u,i);if(e.errorHandler){if(a=await e.errorHandler(c?u:aD(u)),!a)return}else c?a=o0(u):a=hD()}try{return await vD(a,i,e)}catch(u){return Jv(u,i)}}};var Ud=class{constructor(e={}){var r,o;this._started=!1,this._hasHandledRequest=!1,this._streamMapping=new Map,this._requestToStreamMapping=new Map,this._requestResponseMap=new Map,this._initialized=!1,this._enableJsonResponse=!1,this._standaloneSseStreamId="_GET_stream",this.sessionIdGenerator=e.sessionIdGenerator,this._enableJsonResponse=(r=e.enableJsonResponse)!=null?r:!1,this._eventStore=e.eventStore,this._onsessioninitialized=e.onsessioninitialized,this._onsessionclosed=e.onsessionclosed,this._allowedHosts=e.allowedHosts,this._allowedOrigins=e.allowedOrigins,this._enableDnsRebindingProtection=(o=e.enableDnsRebindingProtection)!=null?o:!1,this._retryInterval=e.retryInterval}async start(){if(this._started)throw new Error("Transport already started");this._started=!0}createJsonErrorResponse(e,r,o,n){let i={code:r,message:o};return(n==null?void 0:n.data)!==void 0&&(i.data=n.data),new Response(JSON.stringify({jsonrpc:"2.0",error:i,id:null}),{status:e,headers:{"Content-Type":"application/json",...n==null?void 0:n.headers}})}validateRequestHeaders(e){var r,o;if(this._enableDnsRebindingProtection){if(this._allowedHosts&&this._allowedHosts.length>0){let n=e.headers.get("host");if(!n||!this._allowedHosts.includes(n)){let i=`Invalid Host header: ${n}`;return(r=this.onerror)==null||r.call(this,new Error(i)),this.createJsonErrorResponse(403,-32e3,i)}}if(this._allowedOrigins&&this._allowedOrigins.length>0){let n=e.headers.get("origin");if(n&&!this._allowedOrigins.includes(n)){let i=`Invalid Origin header: ${n}`;return(o=this.onerror)==null||o.call(this,new Error(i)),this.createJsonErrorResponse(403,-32e3,i)}}}}async handleRequest(e,r){if(!this.sessionIdGenerator&&this._hasHandledRequest)throw new Error("Stateless transport cannot be reused across requests. Create a new transport per request.");this._hasHandledRequest=!0;let o=this.validateRequestHeaders(e);if(o)return o;switch(e.method){case"POST":return this.handlePostRequest(e,r);case"GET":return this.handleGetRequest(e);case"DELETE":return this.handleDeleteRequest(e);default:return this.handleUnsupportedRequest()}}async writePrimingEvent(e,r,o,n){if(!this._eventStore||n<"2025-11-25")return;let i=await this._eventStore.storeEvent(o,{}),a=`id: ${i} +data: + +`;this._retryInterval!==void 0&&(a=`id: ${i} +retry: ${this._retryInterval} +data: + +`),e.enqueue(r.encode(a))}async handleGetRequest(e){var l,d;let r=e.headers.get("accept");if(!(r!=null&&r.includes("text/event-stream")))return(l=this.onerror)==null||l.call(this,new Error("Not Acceptable: Client must accept text/event-stream")),this.createJsonErrorResponse(406,-32e3,"Not Acceptable: Client must accept text/event-stream");let o=this.validateSession(e);if(o)return o;let n=this.validateProtocolVersion(e);if(n)return n;if(this._eventStore){let s=e.headers.get("last-event-id");if(s)return this.replayEvents(s)}if(this._streamMapping.get(this._standaloneSseStreamId)!==void 0)return(d=this.onerror)==null||d.call(this,new Error("Conflict: Only one SSE stream is allowed per session")),this.createJsonErrorResponse(409,-32e3,"Conflict: Only one SSE stream is allowed per session");let i=new TextEncoder,a,c=new ReadableStream({start:s=>{a=s},cancel:()=>{this._streamMapping.delete(this._standaloneSseStreamId)}}),u={"Content-Type":"text/event-stream","Cache-Control":"no-cache, no-transform",Connection:"keep-alive"};return this.sessionId!==void 0&&(u["mcp-session-id"]=this.sessionId),this._streamMapping.set(this._standaloneSseStreamId,{controller:a,encoder:i,cleanup:()=>{this._streamMapping.delete(this._standaloneSseStreamId);try{a.close()}catch{}}}),new Response(c,{headers:u})}async replayEvents(e){var r,o,n,i;if(!this._eventStore)return(r=this.onerror)==null||r.call(this,new Error("Event store not configured")),this.createJsonErrorResponse(400,-32e3,"Event store not configured");try{let a;if(this._eventStore.getStreamIdForEventId){if(a=await this._eventStore.getStreamIdForEventId(e),!a)return(o=this.onerror)==null||o.call(this,new Error("Invalid event ID format")),this.createJsonErrorResponse(400,-32e3,"Invalid event ID format");if(this._streamMapping.get(a)!==void 0)return(n=this.onerror)==null||n.call(this,new Error("Conflict: Stream already has an active connection")),this.createJsonErrorResponse(409,-32e3,"Conflict: Stream already has an active connection")}let c={"Content-Type":"text/event-stream","Cache-Control":"no-cache, no-transform",Connection:"keep-alive"};this.sessionId!==void 0&&(c["mcp-session-id"]=this.sessionId);let u=new TextEncoder,l,d=new ReadableStream({start:f=>{l=f},cancel:()=>{}}),s=await this._eventStore.replayEventsAfter(e,{send:async(f,p)=>{var h;if(!this.writeSSEEvent(l,u,p,f)){(h=this.onerror)==null||h.call(this,new Error("Failed replay events"));try{l.close()}catch{}}}});return this._streamMapping.set(s,{controller:l,encoder:u,cleanup:()=>{this._streamMapping.delete(s);try{l.close()}catch{}}}),new Response(d,{headers:c})}catch(a){return(i=this.onerror)==null||i.call(this,a),this.createJsonErrorResponse(500,-32e3,"Error replaying events")}}writeSSEEvent(e,r,o,n){var i;try{let a=`event: message +`;return n&&(a+=`id: ${n} +`),a+=`data: ${JSON.stringify(o)} + +`,e.enqueue(r.encode(a)),!0}catch(a){return(i=this.onerror)==null||i.call(this,a),!1}}handleUnsupportedRequest(){var e;return(e=this.onerror)==null||e.call(this,new Error("Method not allowed.")),new Response(JSON.stringify({jsonrpc:"2.0",error:{code:-32e3,message:"Method not allowed."},id:null}),{status:405,headers:{Allow:"GET, POST, DELETE","Content-Type":"application/json"}})}async handlePostRequest(e,r){var o,n,i,a,c,u,l,d,s,f,p;try{let m=e.headers.get("accept");if(!(m!=null&&m.includes("application/json"))||!m.includes("text/event-stream"))return(o=this.onerror)==null||o.call(this,new Error("Not Acceptable: Client must accept both application/json and text/event-stream")),this.createJsonErrorResponse(406,-32e3,"Not Acceptable: Client must accept both application/json and text/event-stream");let h=e.headers.get("content-type");if(!h||!h.includes("application/json"))return(n=this.onerror)==null||n.call(this,new Error("Unsupported Media Type: Content-Type must be application/json")),this.createJsonErrorResponse(415,-32e3,"Unsupported Media Type: Content-Type must be application/json");let v={headers:Object.fromEntries(e.headers.entries()),url:new URL(e.url)},y;if((r==null?void 0:r.parsedBody)!==void 0)y=r.parsedBody;else try{y=await e.json()}catch{return(i=this.onerror)==null||i.call(this,new Error("Parse error: Invalid JSON")),this.createJsonErrorResponse(400,-32700,"Parse error: Invalid JSON")}let w;try{Array.isArray(y)?w=y.map(de=>yt.parse(de)):w=[yt.parse(y)]}catch{return(a=this.onerror)==null||a.call(this,new Error("Parse error: Invalid JSON-RPC message")),this.createJsonErrorResponse(400,-32700,"Parse error: Invalid JSON-RPC message")}let k=w.some(qm);if(k){if(this._initialized&&this.sessionId!==void 0)return(c=this.onerror)==null||c.call(this,new Error("Invalid Request: Server already initialized")),this.createJsonErrorResponse(400,-32600,"Invalid Request: Server already initialized");if(w.length>1)return(u=this.onerror)==null||u.call(this,new Error("Invalid Request: Only one initialization request is allowed")),this.createJsonErrorResponse(400,-32600,"Invalid Request: Only one initialization request is allowed");this.sessionId=(l=this.sessionIdGenerator)==null?void 0:l.call(this),this._initialized=!0,this.sessionId&&this._onsessioninitialized&&await Promise.resolve(this._onsessioninitialized(this.sessionId))}if(!k){let de=this.validateSession(e);if(de)return de;let nt=this.validateProtocolVersion(e);if(nt)return nt}if(!w.some(Kt)){for(let de of w)(d=this.onmessage)==null||d.call(this,de,{authInfo:r==null?void 0:r.authInfo,requestInfo:v});return new Response(null,{status:202})}let b=crypto.randomUUID(),L=w.find(de=>qm(de)),H=L?L.params.protocolVersion:(s=e.headers.get("mcp-protocol-version"))!=null?s:X$;if(this._enableJsonResponse)return new Promise(de=>{var nt;this._streamMapping.set(b,{resolveJson:de,cleanup:()=>{this._streamMapping.delete(b)}});for(let $t of w)Kt($t)&&this._requestToStreamMapping.set($t.id,b);for(let $t of w)(nt=this.onmessage)==null||nt.call(this,$t,{authInfo:r==null?void 0:r.authInfo,requestInfo:v})});let he=new TextEncoder,W,we=new ReadableStream({start:de=>{W=de},cancel:()=>{this._streamMapping.delete(b)}}),Te={"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"};this.sessionId!==void 0&&(Te["mcp-session-id"]=this.sessionId);for(let de of w)Kt(de)&&(this._streamMapping.set(b,{controller:W,encoder:he,cleanup:()=>{this._streamMapping.delete(b);try{W.close()}catch{}}}),this._requestToStreamMapping.set(de.id,b));await this.writePrimingEvent(W,he,b,H);for(let de of w){let nt,$t;Kt(de)&&this._eventStore&&H>="2025-11-25"&&(nt=()=>{this.closeSSEStream(de.id)},$t=()=>{this.closeStandaloneSSEStream()}),(f=this.onmessage)==null||f.call(this,de,{authInfo:r==null?void 0:r.authInfo,requestInfo:v,closeSSEStream:nt,closeStandaloneSSEStream:$t})}return new Response(we,{status:200,headers:Te})}catch(m){return(p=this.onerror)==null||p.call(this,m),this.createJsonErrorResponse(400,-32700,"Parse error",{data:String(m)})}}async handleDeleteRequest(e){var n;let r=this.validateSession(e);if(r)return r;let o=this.validateProtocolVersion(e);return o||(await Promise.resolve((n=this._onsessionclosed)==null?void 0:n.call(this,this.sessionId)),await this.close(),new Response(null,{status:200}))}validateSession(e){var o,n,i;if(this.sessionIdGenerator===void 0)return;if(!this._initialized)return(o=this.onerror)==null||o.call(this,new Error("Bad Request: Server not initialized")),this.createJsonErrorResponse(400,-32e3,"Bad Request: Server not initialized");let r=e.headers.get("mcp-session-id");if(!r)return(n=this.onerror)==null||n.call(this,new Error("Bad Request: Mcp-Session-Id header is required")),this.createJsonErrorResponse(400,-32e3,"Bad Request: Mcp-Session-Id header is required");if(r!==this.sessionId)return(i=this.onerror)==null||i.call(this,new Error("Session not found")),this.createJsonErrorResponse(404,-32001,"Session not found")}validateProtocolVersion(e){var o;let r=e.headers.get("mcp-protocol-version");if(r!==null&&!qr.includes(r))return(o=this.onerror)==null||o.call(this,new Error(`Bad Request: Unsupported protocol version: ${r} (supported versions: ${qr.join(", ")})`)),this.createJsonErrorResponse(400,-32e3,`Bad Request: Unsupported protocol version: ${r} (supported versions: ${qr.join(", ")})`)}async close(){var e;this._streamMapping.forEach(({cleanup:r})=>{r()}),this._streamMapping.clear(),this._requestResponseMap.clear(),(e=this.onclose)==null||e.call(this)}closeSSEStream(e){let r=this._requestToStreamMapping.get(e);if(!r)return;let o=this._streamMapping.get(r);o&&o.cleanup()}closeStandaloneSSEStream(){let e=this._streamMapping.get(this._standaloneSseStreamId);e&&e.cleanup()}async send(e,r){let o=r==null?void 0:r.relatedRequestId;if((Dt(e)||Io(e))&&(o=e.id),o===void 0){if(Dt(e)||Io(e))throw new Error("Cannot send a response on a standalone SSE stream unless resuming a previous client request");let a;this._eventStore&&(a=await this._eventStore.storeEvent(this._standaloneSseStreamId,e));let c=this._streamMapping.get(this._standaloneSseStreamId);if(c===void 0)return;c.controller&&c.encoder&&this.writeSSEEvent(c.controller,c.encoder,e,a);return}let n=this._requestToStreamMapping.get(o);if(!n)throw new Error(`No connection established for request ID: ${String(o)}`);let i=this._streamMapping.get(n);if(!this._enableJsonResponse&&(i!=null&&i.controller)&&(i!=null&&i.encoder)){let a;this._eventStore&&(a=await this._eventStore.storeEvent(n,e)),this.writeSSEEvent(i.controller,i.encoder,e,a)}if(Dt(e)||Io(e)){this._requestResponseMap.set(o,e);let a=Array.from(this._requestToStreamMapping.entries()).filter(([u,l])=>l===n).map(([u])=>u);if(a.every(u=>this._requestResponseMap.has(u))){if(!i)throw new Error(`No connection established for request ID: ${String(o)}`);if(this._enableJsonResponse&&i.resolveJson){let u={"Content-Type":"application/json"};this.sessionId!==void 0&&(u["mcp-session-id"]=this.sessionId);let l=a.map(d=>this._requestResponseMap.get(d));l.length===1?i.resolveJson(new Response(JSON.stringify(l[0]),{status:200,headers:u})):i.resolveJson(new Response(JSON.stringify(l),{status:200,headers:u}))}else i.cleanup();for(let u of a)this._requestResponseMap.delete(u),this._requestToStreamMapping.delete(u)}}}};var Zd=class{constructor(e={}){this._requestContext=new WeakMap,this._webStandardTransport=new Ud(e),this._requestListener=Bv(async r=>{let o=this._requestContext.get(r);return this._webStandardTransport.handleRequest(r,{authInfo:o==null?void 0:o.authInfo,parsedBody:o==null?void 0:o.parsedBody})},{overrideGlobalObjects:!1})}get sessionId(){return this._webStandardTransport.sessionId}set onclose(e){this._webStandardTransport.onclose=e}get onclose(){return this._webStandardTransport.onclose}set onerror(e){this._webStandardTransport.onerror=e}get onerror(){return this._webStandardTransport.onerror}set onmessage(e){this._webStandardTransport.onmessage=e}get onmessage(){return this._webStandardTransport.onmessage}async start(){return this._webStandardTransport.start()}async close(){return this._webStandardTransport.close()}async send(e,r){return this._webStandardTransport.send(e,r)}async handleRequest(e,r,o){let n=e.auth;await Bv(async a=>this._webStandardTransport.handleRequest(a,{authInfo:n,parsedBody:o}),{overrideGlobalObjects:!1})(e,r)}closeSSEStream(e){this._webStandardTransport.closeSSEStream(e)}closeStandaloneSSEStream(){this._webStandardTransport.closeStandaloneSSEStream()}};var Ad=class extends TransformStream{constructor({onError:e,onRetry:r,onComment:o}={}){let n;super({start(i){n=$d({onEvent:a=>{i.enqueue(a)},onError(a){e==="terminate"?i.error(a):typeof e=="function"&&e(a)},onRetry:r,onComment:o})},transform(i){n.feed(i)}})}};var _D={initialReconnectionDelay:1e3,maxReconnectionDelay:3e4,reconnectionDelayGrowFactor:1.5,maxRetries:2},nn=class extends Error{constructor(e,r){super(`Streamable HTTP error: ${r}`),this.code=e}},Md=class{constructor(e,r){var o;this._hasCompletedAuthFlow=!1,this._url=e,this._resourceMetadataUrl=void 0,this._scope=void 0,this._requestInit=r==null?void 0:r.requestInit,this._authProvider=r==null?void 0:r.authProvider,this._fetch=r==null?void 0:r.fetch,this._fetchWithInit=kd(r==null?void 0:r.fetch,r==null?void 0:r.requestInit),this._sessionId=r==null?void 0:r.sessionId,this._reconnectionOptions=(o=r==null?void 0:r.reconnectionOptions)!=null?o:_D}async _authThenStart(){var r;if(!this._authProvider)throw new rt("No auth provider");let e;try{e=await br(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})}catch(o){throw(r=this.onerror)==null||r.call(this,o),o}if(e!=="AUTHORIZED")throw new rt;return await this._startOrAuthSse({resumptionToken:void 0})}async _commonHeaders(){var o;let e={};if(this._authProvider){let n=await this._authProvider.tokens();n&&(e.Authorization=`Bearer ${n.access_token}`)}this._sessionId&&(e["mcp-session-id"]=this._sessionId),this._protocolVersion&&(e["mcp-protocol-version"]=this._protocolVersion);let r=ti((o=this._requestInit)==null?void 0:o.headers);return new Headers({...e,...r})}async _startOrAuthSse(e){var o,n,i,a;let{resumptionToken:r}=e;try{let c=await this._commonHeaders();c.set("Accept","text/event-stream"),r&&c.set("last-event-id",r);let u=await((o=this._fetch)!=null?o:fetch)(this._url,{method:"GET",headers:c,signal:(n=this._abortController)==null?void 0:n.signal});if(!u.ok){if(await((i=u.body)==null?void 0:i.cancel()),u.status===401&&this._authProvider)return await this._authThenStart();if(u.status===405)return;throw new nn(u.status,`Failed to open SSE stream: ${u.statusText}`)}this._handleSseStream(u.body,e,!0)}catch(c){throw(a=this.onerror)==null||a.call(this,c),c}}_getNextReconnectionDelay(e){if(this._serverRetryMs!==void 0)return this._serverRetryMs;let r=this._reconnectionOptions.initialReconnectionDelay,o=this._reconnectionOptions.reconnectionDelayGrowFactor,n=this._reconnectionOptions.maxReconnectionDelay;return Math.min(r*Math.pow(o,e),n)}_scheduleReconnection(e,r=0){var i;let o=this._reconnectionOptions.maxRetries;if(r>=o){(i=this.onerror)==null||i.call(this,new Error(`Maximum reconnection attempts (${o}) exceeded.`));return}let n=this._getNextReconnectionDelay(r);this._reconnectionTimeout=setTimeout(()=>{this._startOrAuthSse(e).catch(a=>{var c;(c=this.onerror)==null||c.call(this,new Error(`Failed to reconnect SSE stream: ${a instanceof Error?a.message:String(a)}`)),this._scheduleReconnection(e,r+1)})},n)}_handleSseStream(e,r,o){if(!e)return;let{onresumptiontoken:n,replayMessageId:i}=r,a,c=!1,u=!1;(async()=>{var d,s,f,p;try{let m=e.pipeThrough(new TextDecoderStream).pipeThrough(new Ad({onRetry:y=>{this._serverRetryMs=y}})).getReader();for(;;){let{value:y,done:w}=await m.read();if(w)break;if(y.id&&(a=y.id,c=!0,n==null||n(y.id)),!!y.data&&(!y.event||y.event==="message"))try{let k=yt.parse(JSON.parse(y.data));Dt(k)&&(u=!0,i!==void 0&&(k.id=i)),(d=this.onmessage)==null||d.call(this,k)}catch(k){(s=this.onerror)==null||s.call(this,k)}}(o||c)&&!u&&this._abortController&&!this._abortController.signal.aborted&&this._scheduleReconnection({resumptionToken:a,onresumptiontoken:n,replayMessageId:i},0)}catch(m){if((f=this.onerror)==null||f.call(this,new Error(`SSE stream disconnected: ${m}`)),(o||c)&&!u&&this._abortController&&!this._abortController.signal.aborted)try{this._scheduleReconnection({resumptionToken:a,onresumptiontoken:n,replayMessageId:i},0)}catch(y){(p=this.onerror)==null||p.call(this,new Error(`Failed to reconnect: ${y instanceof Error?y.message:String(y)}`))}}})()}async start(){if(this._abortController)throw new Error("StreamableHTTPClientTransport already started! If using Client class, note that connect() calls start() automatically.");this._abortController=new AbortController}async finishAuth(e){if(!this._authProvider)throw new rt("No auth provider");if(await br(this._authProvider,{serverUrl:this._url,authorizationCode:e,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})!=="AUTHORIZED")throw new rt("Failed to authorize")}async close(){var e,r;this._reconnectionTimeout&&(clearTimeout(this._reconnectionTimeout),this._reconnectionTimeout=void 0),(e=this._abortController)==null||e.abort(),(r=this.onclose)==null||r.call(this)}async send(e,r){var o,n,i,a,c,u,l;try{let{resumptionToken:d,onresumptiontoken:s}=r||{};if(d){this._startOrAuthSse({resumptionToken:d,replayMessageId:Kt(e)?e.id:void 0}).catch(k=>{var x;return(x=this.onerror)==null?void 0:x.call(this,k)});return}let f=await this._commonHeaders();f.set("content-type","application/json"),f.set("accept","application/json, text/event-stream");let p={...this._requestInit,method:"POST",headers:f,body:JSON.stringify(e),signal:(o=this._abortController)==null?void 0:o.signal},m=await((n=this._fetch)!=null?n:fetch)(this._url,p),h=m.headers.get("mcp-session-id");if(h&&(this._sessionId=h),!m.ok){let k=await m.text().catch(()=>null);if(m.status===401&&this._authProvider){if(this._hasCompletedAuthFlow)throw new nn(401,"Server returned 401 after successful authentication");let{resourceMetadataUrl:x,scope:b}=ri(m);if(this._resourceMetadataUrl=x,this._scope=b,await br(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})!=="AUTHORIZED")throw new rt;return this._hasCompletedAuthFlow=!0,this.send(e)}if(m.status===403&&this._authProvider){let{resourceMetadataUrl:x,scope:b,error:L}=ri(m);if(L==="insufficient_scope"){let H=m.headers.get("WWW-Authenticate");if(this._lastUpscopingHeader===H)throw new nn(403,"Server returned 403 after trying upscoping");if(b&&(this._scope=b),x&&(this._resourceMetadataUrl=x),this._lastUpscopingHeader=H!=null?H:void 0,await br(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetch})!=="AUTHORIZED")throw new rt;return this.send(e)}}throw new nn(m.status,`Error POSTing to endpoint: ${k}`)}if(this._hasCompletedAuthFlow=!1,this._lastUpscopingHeader=void 0,m.status===202){await((i=m.body)==null?void 0:i.cancel()),ib(e)&&this._startOrAuthSse({resumptionToken:void 0}).catch(k=>{var x;return(x=this.onerror)==null?void 0:x.call(this,k)});return}let y=(Array.isArray(e)?e:[e]).filter(k=>"method"in k&&"id"in k&&k.id!==void 0).length>0,w=m.headers.get("content-type");if(y)if(w!=null&&w.includes("text/event-stream"))this._handleSseStream(m.body,{onresumptiontoken:s},!1);else if(w!=null&&w.includes("application/json")){let k=await m.json(),x=Array.isArray(k)?k.map(b=>yt.parse(b)):[yt.parse(k)];for(let b of x)(a=this.onmessage)==null||a.call(this,b)}else throw await((c=m.body)==null?void 0:c.cancel()),new nn(-1,`Unexpected content type: ${w}`);else await((u=m.body)==null?void 0:u.cancel())}catch(d){throw(l=this.onerror)==null||l.call(this,d),d}}get sessionId(){return this._sessionId}async terminateSession(){var e,r,o,n;if(this._sessionId)try{let i=await this._commonHeaders(),a={...this._requestInit,method:"DELETE",headers:i,signal:(e=this._abortController)==null?void 0:e.signal},c=await((r=this._fetch)!=null?r:fetch)(this._url,a);if(await((o=c.body)==null?void 0:o.cancel()),!c.ok&&c.status!==405)throw new nn(c.status,`Failed to terminate session: ${c.statusText}`);this._sessionId=void 0}catch(i){throw(n=this.onerror)==null||n.call(this,i),i}}setProtocolVersion(e){this._protocolVersion=e}get protocolVersion(){return this._protocolVersion}async resumeStream(e,r){await this._startOrAuthSse({resumptionToken:e,onresumptiontoken:r==null?void 0:r.onresumptiontoken})}};0&&(module.exports={CallToolRequestSchema,Client,ListRootsRequestSchema,ListToolsRequestSchema,PingRequestSchema,ProgressNotificationSchema,SSEClientTransport,SSEServerTransport,Server,StdioClientTransport,StdioServerTransport,StreamableHTTPClientTransport,StreamableHTTPServerTransport,zodToJsonSchema}); +/*! Bundled license information: + +bytes/index.js: + (*! + * bytes + * Copyright(c) 2012-2014 TJ Holowaychuk + * Copyright(c) 2015 Jed Watson + * MIT Licensed + *) + +content-type/index.js: + (*! + * content-type + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + *) +*/ diff --git a/node_modules.codex-backup/playwright-core/lib/remote/playwrightPipeServer.js b/node_modules.codex-backup/playwright-core/lib/remote/playwrightPipeServer.js new file mode 100644 index 00000000..e02602a0 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/remote/playwrightPipeServer.js @@ -0,0 +1,100 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var playwrightPipeServer_exports = {}; +__export(playwrightPipeServer_exports, { + PlaywrightPipeServer: () => PlaywrightPipeServer +}); +module.exports = __toCommonJS(playwrightPipeServer_exports); +var import_net = __toESM(require("net")); +var import_fs = __toESM(require("fs")); +var import_playwrightConnection = require("./playwrightConnection"); +var import_serverTransport = require("./serverTransport"); +var import_debugLogger = require("../server/utils/debugLogger"); +var import_browser = require("../server/browser"); +var import_utils = require("../utils"); +class PlaywrightPipeServer { + constructor(browser) { + this._connections = /* @__PURE__ */ new Set(); + this._connectionId = 0; + this._browser = browser; + browser.on(import_browser.Browser.Events.Disconnected, () => this.close()); + } + async listen(pipeName) { + if (!pipeName.startsWith("\\\\.\\pipe\\")) { + try { + import_fs.default.unlinkSync(pipeName); + } catch { + } + } + this._server = import_net.default.createServer((socket) => { + const id = String(++this._connectionId); + import_debugLogger.debugLogger.log("server", `[${id}] pipe client connected`); + const transport = new import_serverTransport.SocketServerTransport(socket); + const connection = new import_playwrightConnection.PlaywrightConnection( + new import_utils.Semaphore(1), + transport, + false, + this._browser.attribution.playwright, + () => this._initPreLaunchedBrowserMode(id), + id + ); + this._connections.add(connection); + transport.on("close", () => this._connections.delete(connection)); + }); + (0, import_utils.decorateServer)(this._server); + await new Promise((resolve, reject) => { + this._server.listen(pipeName, () => resolve()); + this._server.on("error", reject); + }); + import_debugLogger.debugLogger.log("server", `Pipe server listening at ${pipeName}`); + } + async _initPreLaunchedBrowserMode(id) { + import_debugLogger.debugLogger.log("server", `[${id}] engaged pre-launched (browser) pipe mode`); + return { + preLaunchedBrowser: this._browser, + sharedBrowser: true, + denyLaunch: true + }; + } + async close() { + if (!this._server) + return; + import_debugLogger.debugLogger.log("server", "closing pipe server"); + for (const connection of this._connections) + await connection.close({ code: 1001, reason: "Server closing" }); + this._connections.clear(); + await new Promise((f) => this._server.close(() => f())); + this._server = void 0; + import_debugLogger.debugLogger.log("server", "closed pipe server"); + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + PlaywrightPipeServer +}); diff --git a/node_modules.codex-backup/playwright-core/lib/remote/playwrightWebSocketServer.js b/node_modules.codex-backup/playwright-core/lib/remote/playwrightWebSocketServer.js new file mode 100644 index 00000000..b5d7c22d --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/remote/playwrightWebSocketServer.js @@ -0,0 +1,73 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var playwrightWebSocketServer_exports = {}; +__export(playwrightWebSocketServer_exports, { + PlaywrightWebSocketServer: () => PlaywrightWebSocketServer +}); +module.exports = __toCommonJS(playwrightWebSocketServer_exports); +var import_playwrightConnection = require("./playwrightConnection"); +var import_serverTransport = require("./serverTransport"); +var import_debugLogger = require("../server/utils/debugLogger"); +var import_browser = require("../server/browser"); +var import_utils = require("../utils"); +var import_wsServer = require("../server/utils/wsServer"); +class PlaywrightWebSocketServer { + constructor(browser, path) { + this._browser = browser; + browser.on(import_browser.Browser.Events.Disconnected, () => this.close()); + const semaphore = new import_utils.Semaphore(Infinity); + this._wsServer = new import_wsServer.WSServer({ + onRequest: (request, response) => { + response.end("Running"); + }, + onUpgrade: () => void 0, + onHeaders: () => { + }, + onConnection: (request, url, ws, id) => { + import_debugLogger.debugLogger.log("server", `[${id}] ws client connected`); + return new import_playwrightConnection.PlaywrightConnection( + semaphore, + new import_serverTransport.WebSocketServerTransport(ws), + false, + this._browser.attribution.playwright, + () => this._initPreLaunchedBrowserMode(id), + id + ); + } + }); + } + async _initPreLaunchedBrowserMode(id) { + import_debugLogger.debugLogger.log("server", `[${id}] engaged pre-launched (browser) ws mode`); + return { + preLaunchedBrowser: this._browser, + sharedBrowser: true, + denyLaunch: true + }; + } + async listen(port = 0, hostname, path) { + return await this._wsServer.listen(port, hostname, path || "/"); + } + async close() { + await this._wsServer.close(); + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + PlaywrightWebSocketServer +}); diff --git a/node_modules.codex-backup/playwright-core/lib/remote/serverTransport.js b/node_modules.codex-backup/playwright-core/lib/remote/serverTransport.js new file mode 100644 index 00000000..53392d2c --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/remote/serverTransport.js @@ -0,0 +1,96 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var serverTransport_exports = {}; +__export(serverTransport_exports, { + SocketServerTransport: () => SocketServerTransport, + WebSocketServerTransport: () => WebSocketServerTransport +}); +module.exports = __toCommonJS(serverTransport_exports); +var import_events = require("events"); +class WebSocketServerTransport { + constructor(ws) { + this._ws = ws; + } + send(message) { + this._ws.send(message); + } + close(reason) { + this._ws.close(reason?.code, reason?.reason); + } + on(event, handler) { + this._ws.on(event, handler); + } + isClosed() { + return this._ws.readyState === this._ws.CLOSING || this._ws.readyState === this._ws.CLOSED; + } +} +class SocketServerTransport extends import_events.EventEmitter { + constructor(socket) { + super(); + this._closed = false; + this._pendingBuffers = []; + this._socket = socket; + socket.on("data", (buffer) => this._dispatch(buffer)); + socket.on("close", () => { + this._closed = true; + super.emit("close"); + }); + socket.on("error", (error) => { + super.emit("error", error); + }); + } + send(message) { + if (this._closed) + return; + this._socket.write(message); + this._socket.write("\0"); + } + close(reason) { + if (this._closed) + return; + this._closed = true; + this._socket.end(); + } + isClosed() { + return this._closed; + } + _dispatch(buffer) { + let end = buffer.indexOf("\0"); + if (end === -1) { + this._pendingBuffers.push(buffer); + return; + } + this._pendingBuffers.push(buffer.slice(0, end)); + const message = Buffer.concat(this._pendingBuffers).toString(); + super.emit("message", message); + let start = end + 1; + end = buffer.indexOf("\0", start); + while (end !== -1) { + super.emit("message", buffer.toString(void 0, start, end)); + start = end + 1; + end = buffer.indexOf("\0", start); + } + this._pendingBuffers = [buffer.slice(start)]; + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + SocketServerTransport, + WebSocketServerTransport +}); diff --git a/node_modules.codex-backup/playwright-core/lib/server/dispatchers/debuggerDispatcher.js b/node_modules.codex-backup/playwright-core/lib/server/dispatchers/debuggerDispatcher.js new file mode 100644 index 00000000..9ead089a --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/server/dispatchers/debuggerDispatcher.js @@ -0,0 +1,84 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var debuggerDispatcher_exports = {}; +__export(debuggerDispatcher_exports, { + DebuggerDispatcher: () => DebuggerDispatcher +}); +module.exports = __toCommonJS(debuggerDispatcher_exports); +var import_dispatcher = require("./dispatcher"); +var import_debugger = require("../debugger"); +var import_protocolFormatter = require("../../utils/isomorphic/protocolFormatter"); +class DebuggerDispatcher extends import_dispatcher.Dispatcher { + constructor(scope, debugger_) { + super(scope, debugger_, "Debugger", {}); + this._type_EventTarget = true; + this._type_Debugger = true; + this.addObjectListener(import_debugger.Debugger.Events.PausedStateChanged, () => { + this._dispatchEvent("pausedStateChanged", { pausedDetails: this._serializePausedDetails() }); + }); + this._dispatchEvent("pausedStateChanged", { pausedDetails: this._serializePausedDetails() }); + } + static from(scope, debugger_) { + const result = scope.connection.existingDispatcher(debugger_); + return result || new DebuggerDispatcher(scope, debugger_); + } + _serializePausedDetails() { + const details = this._object.pausedDetails(); + if (!details) + return void 0; + const { metadata } = details; + return { + location: { + file: metadata.location?.file ?? "", + line: metadata.location?.line, + column: metadata.location?.column + }, + title: (0, import_protocolFormatter.renderTitleForCall)(metadata) + }; + } + async requestPause(params, progress) { + if (this._object.isPaused()) + throw new Error("Debugger is already paused"); + this._object.setPauseBeforeWaitingActions(); + this._object.setPauseAt({ next: true }); + } + async resume(params, progress) { + if (!this._object.isPaused()) + throw new Error("Debugger is not paused"); + this._object.resume(); + } + async next(params, progress) { + if (!this._object.isPaused()) + throw new Error("Debugger is not paused"); + this._object.setPauseBeforeWaitingActions(); + this._object.setPauseAt({ next: true }); + this._object.resume(); + } + async runTo(params, progress) { + if (!this._object.isPaused()) + throw new Error("Debugger is not paused"); + this._object.setPauseBeforeWaitingActions(); + this._object.setPauseAt({ location: params.location }); + this._object.resume(); + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + DebuggerDispatcher +}); diff --git a/node_modules.codex-backup/playwright-core/lib/server/dispatchers/disposableDispatcher.js b/node_modules.codex-backup/playwright-core/lib/server/dispatchers/disposableDispatcher.js new file mode 100644 index 00000000..259450a6 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/server/dispatchers/disposableDispatcher.js @@ -0,0 +1,39 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var disposableDispatcher_exports = {}; +__export(disposableDispatcher_exports, { + DisposableDispatcher: () => DisposableDispatcher +}); +module.exports = __toCommonJS(disposableDispatcher_exports); +var import_dispatcher = require("./dispatcher"); +class DisposableDispatcher extends import_dispatcher.Dispatcher { + constructor(scope, disposable) { + super(scope, disposable, "Disposable", {}); + this._type_Disposable = true; + } + async dispose(_, progress) { + progress.metadata.potentiallyClosesScope = true; + await this._object.dispose(); + this._dispose(); + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + DisposableDispatcher +}); diff --git a/node_modules.codex-backup/playwright-core/lib/server/disposable.js b/node_modules.codex-backup/playwright-core/lib/server/disposable.js new file mode 100644 index 00000000..018c4cdf --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/server/disposable.js @@ -0,0 +1,41 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var disposable_exports = {}; +__export(disposable_exports, { + DisposableObject: () => DisposableObject, + disposeAll: () => disposeAll +}); +module.exports = __toCommonJS(disposable_exports); +var import_instrumentation = require("./instrumentation"); +class DisposableObject extends import_instrumentation.SdkObject { + constructor(parent) { + super(parent, "disposable"); + this.parent = parent; + } +} +async function disposeAll(disposables) { + const copy = [...disposables]; + disposables.length = 0; + await Promise.all(copy.map((d) => d.dispose())); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + DisposableObject, + disposeAll +}); diff --git a/node_modules.codex-backup/playwright-core/lib/server/overlay.js b/node_modules.codex-backup/playwright-core/lib/server/overlay.js new file mode 100644 index 00000000..71dfb008 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/server/overlay.js @@ -0,0 +1,138 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var overlay_exports = {}; +__export(overlay_exports, { + Overlay: () => Overlay +}); +module.exports = __toCommonJS(overlay_exports); +var import_utils = require("../utils"); +var import_page = require("./page"); +class Overlay { + constructor(page) { + this._overlays = /* @__PURE__ */ new Map(); + this._page = page; + this._page.on(import_page.Page.Events.InternalFrameNavigatedToNewDocument, (frame) => { + if (frame.parentFrame()) + return; + for (const [id, html] of this._overlays) + this._doAdd(id, html).catch((e) => import_utils.debugLogger.log("error", e)); + }); + } + dispose() { + } + async show(html, duration) { + const id = (0, import_utils.createGuid)(); + this._overlays.set(id, html); + await this._doAdd(id, html).catch((e) => import_utils.debugLogger.log("error", e)); + if (duration) { + await new Promise((f) => setTimeout(f, duration)); + await this.remove(id); + } + return id; + } + async _doAdd(id, html) { + const utility = await this._page.mainFrame()._utilityContext(); + await utility.evaluate(({ injected, html: html2, id: id2 }) => { + return injected.addUserOverlay(id2, html2); + }, { injected: await utility.injectedScript(), html, id }); + } + async remove(id) { + this._overlays.delete(id); + const utility = await this._page.mainFrame()._utilityContext(); + await utility.evaluate(({ injected, id: id2 }) => { + injected.removeUserOverlay(id2); + }, { injected: await utility.injectedScript(), id }).catch((e) => import_utils.debugLogger.log("error", e)); + } + async chapter(options) { + const fadeDuration = 300; + const descriptionHtml = options.description ? `
${(0, import_utils.escapeHTML)(options.description)}
` : ""; + const styleSheet = ` + @keyframes pw-chapter-fade-in { + from { opacity: 0; } + to { opacity: 1; } + } + @keyframes pw-chapter-fade-out { + from { opacity: 1; } + to { opacity: 0; } + } + #background { + position: absolute; + inset: 0; + display: flex; + align-items: center; + justify-content: center; + backdrop-filter: blur(2px); + animation: pw-chapter-fade-in ${fadeDuration}ms ease-out forwards; + } + #background.fade-out { + animation: pw-chapter-fade-out ${fadeDuration}ms ease-in forwards; + } + #content { + background: rgba(0, 0, 0, 0.7); + border: 1px solid rgba(255, 255, 255, 0.15); + border-radius: 16px; + padding: 40px 56px; + max-width: 560px; + box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4); + } + #title { + color: white; + font-family: system-ui, -apple-system, sans-serif; + font-size: 28px; + font-weight: 600; + line-height: 1.3; + text-align: center; + letter-spacing: -0.01em; + } + #description { + color: rgba(255, 255, 255, 0.7); + font-family: system-ui, -apple-system, sans-serif; + font-size: 15px; + line-height: 1.5; + margin-top: 12px; + text-align: center; + } + `; + const duration = options.duration ?? 2e3; + const html = `
${(0, import_utils.escapeHTML)(options.title)}
${descriptionHtml}
`; + const id = await this.show(html); + await new Promise((f) => setTimeout(f, duration)); + const utility = await this._page.mainFrame()._utilityContext(); + await utility.evaluate(({ injected, id: id2, fadeDuration: fadeDuration2 }) => { + const overlay = injected.getUserOverlay(id2); + const bg = overlay?.querySelector("#background"); + if (bg) + bg.classList.add("fade-out"); + return new Promise((f) => injected.utils.builtins.setTimeout(f, fadeDuration2)); + }, { injected: await utility.injectedScript(), id, fadeDuration }).catch((e) => import_utils.debugLogger.log("error", e)); + await this.remove(id); + } + async setVisible(visible) { + if (!this._overlays.size) + return; + const utility = await this._page.mainFrame()._utilityContext(); + await utility.evaluate(({ injected, visible: visible2 }) => { + injected.setUserOverlaysVisible(visible2); + }, { injected: await utility.injectedScript(), visible }).catch((e) => import_utils.debugLogger.log("error", e)); + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + Overlay +}); diff --git a/node_modules.codex-backup/playwright-core/lib/server/utils/disposable.js b/node_modules.codex-backup/playwright-core/lib/server/utils/disposable.js new file mode 100644 index 00000000..1eec393c --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/server/utils/disposable.js @@ -0,0 +1,32 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var disposable_exports = {}; +__export(disposable_exports, { + disposeAll: () => disposeAll +}); +module.exports = __toCommonJS(disposable_exports); +async function disposeAll(disposables) { + const copy = [...disposables]; + disposables.length = 0; + await Promise.all(copy.map((d) => d.dispose())); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + disposeAll +}); diff --git a/node_modules.codex-backup/playwright-core/lib/serverRegistry.js b/node_modules.codex-backup/playwright-core/lib/serverRegistry.js new file mode 100644 index 00000000..fc9b8d9d --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/serverRegistry.js @@ -0,0 +1,156 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var serverRegistry_exports = {}; +__export(serverRegistry_exports, { + serverRegistry: () => serverRegistry +}); +module.exports = __toCommonJS(serverRegistry_exports); +var import_fs = __toESM(require("fs")); +var import_net = __toESM(require("net")); +var import_path = __toESM(require("path")); +var import_os = __toESM(require("os")); +const packageVersion = require("../package.json").version; +class ServerRegistry { + async list() { + const files = await import_fs.default.promises.readdir(this._browsersDir()).catch(() => []); + const result = /* @__PURE__ */ new Map(); + for (const file of files) { + try { + const filePath = import_path.default.join(this._browsersDir(), file); + const content = await import_fs.default.promises.readFile(filePath, "utf-8"); + const descriptor = JSON.parse(content); + const key = descriptor.workspaceDir ?? ""; + let list = result.get(key); + if (!list) { + list = []; + result.set(key, list); + } + list.push(canConnect(descriptor).then((connectable) => ({ ...descriptor, canConnect: connectable, file: filePath }))); + } catch { + } + } + const resolvedResult = /* @__PURE__ */ new Map(); + for (const [key, promises] of result) { + const entries = await Promise.all(promises); + const descriptors = []; + for (const entry of entries) { + if (!entry.canConnect && !entry.browser.userDataDir) { + await import_fs.default.promises.unlink(entry.file).catch(() => { + }); + continue; + } + descriptors.push(entry); + } + if (descriptors.length) + resolvedResult.set(key, descriptors); + } + return resolvedResult; + } + async create(browser, endpoint) { + const file = import_path.default.join(this._browsersDir(), browser.guid); + await import_fs.default.promises.mkdir(this._browsersDir(), { recursive: true }); + const descriptor = { + playwrightVersion: packageVersion, + playwrightLib: require.resolve(".."), + title: endpoint.title, + browser, + endpoint: endpoint.endpoint, + workspaceDir: endpoint.workspaceDir + }; + await import_fs.default.promises.writeFile(file, JSON.stringify(descriptor), "utf-8"); + } + async delete(guid) { + const file = import_path.default.join(this._browsersDir(), guid); + await import_fs.default.promises.unlink(file).catch(() => { + }); + } + async deleteUserData(guid) { + const filePath = import_path.default.join(this._browsersDir(), guid); + const content = await import_fs.default.promises.readFile(filePath, "utf-8"); + const descriptor = JSON.parse(content); + if (descriptor.browser.userDataDir) + await import_fs.default.promises.rm(descriptor.browser.userDataDir, { recursive: true, force: true }); + await import_fs.default.promises.unlink(filePath); + } + readDescriptor(guid) { + const filePath = import_path.default.join(this._browsersDir(), guid); + const content = import_fs.default.readFileSync(filePath, "utf-8"); + const descriptor = JSON.parse(content); + return descriptor; + } + async find(name) { + const entries = await this.list(); + for (const [, browsers] of entries) { + for (const browser of browsers) { + if (browser.title === name) + return browser; + } + } + return null; + } + _browsersDir() { + return process.env.PLAYWRIGHT_SERVER_REGISTRY || registryDirectory; + } +} +async function canConnect(descriptor) { + if (!descriptor.endpoint) + return false; + if (descriptor.endpoint.startsWith("ws://") || descriptor.endpoint.startsWith("wss://")) { + return await new Promise((resolve) => { + const url = new URL(descriptor.endpoint); + const socket = import_net.default.createConnection(Number(url.port), url.hostname, () => { + socket.destroy(); + resolve(true); + }); + socket.on("error", () => resolve(false)); + }); + } + return await new Promise((resolve) => { + const socket = import_net.default.createConnection(descriptor.endpoint ?? descriptor.pipeName, () => { + socket.destroy(); + resolve(true); + }); + socket.on("error", () => resolve(false)); + }); +} +const defaultCacheDirectory = (() => { + if (process.platform === "linux") + return process.env.XDG_CACHE_HOME || import_path.default.join(import_os.default.homedir(), ".cache"); + if (process.platform === "darwin") + return import_path.default.join(import_os.default.homedir(), "Library", "Caches"); + if (process.platform === "win32") + return process.env.LOCALAPPDATA || import_path.default.join(import_os.default.homedir(), "AppData", "Local"); + throw new Error("Unsupported platform: " + process.platform); +})(); +const registryDirectory = import_path.default.join(defaultCacheDirectory, "ms-playwright", "b"); +const serverRegistry = new ServerRegistry(); +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + serverRegistry +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/browserBackend.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/browserBackend.js new file mode 100644 index 00000000..07841c05 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/browserBackend.js @@ -0,0 +1,79 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var browserBackend_exports = {}; +__export(browserBackend_exports, { + BrowserBackend: () => BrowserBackend +}); +module.exports = __toCommonJS(browserBackend_exports); +var import_context = require("./context"); +var import_response = require("./response"); +var import_sessionLog = require("./sessionLog"); +var import_utilsBundle = require("../../utilsBundle"); +class BrowserBackend { + constructor(config, browserContext, tools) { + this._config = config; + this._tools = tools; + this.browserContext = browserContext; + } + async initialize(clientInfo) { + this._sessionLog = this._config.saveSession ? await import_sessionLog.SessionLog.create(this._config, clientInfo.cwd) : void 0; + this._context = new import_context.Context(this.browserContext, { + config: this._config, + sessionLog: this._sessionLog, + cwd: clientInfo.cwd + }); + } + async dispose() { + await this._context?.dispose().catch((e) => (0, import_utilsBundle.debug)("pw:tools:error")(e)); + } + async callTool(name, rawArguments = {}) { + const tool = this._tools.find((tool2) => tool2.schema.name === name); + if (!tool) { + return { + content: [{ type: "text", text: `### Error +Tool "${name}" not found` }], + isError: true + }; + } + const parsedArguments = tool.schema.inputSchema.parse(rawArguments); + const cwd = rawArguments._meta?.cwd; + const context = this._context; + const response = new import_response.Response(context, name, parsedArguments, cwd); + context.setRunningTool(name); + let responseObject; + try { + await tool.handle(context, parsedArguments, response); + responseObject = await response.serialize(); + this._sessionLog?.logResponse(name, parsedArguments, responseObject); + } catch (error) { + return { + content: [{ type: "text", text: `### Error +${String(error)}` }], + isError: true + }; + } finally { + context.setRunningTool(void 0); + } + return responseObject; + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + BrowserBackend +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/common.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/common.js new file mode 100644 index 00000000..de397887 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/common.js @@ -0,0 +1,63 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var common_exports = {}; +__export(common_exports, { + default: () => common_default +}); +module.exports = __toCommonJS(common_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +var import_response = require("./response"); +const close = (0, import_tool.defineTool)({ + capability: "core", + schema: { + name: "browser_close", + title: "Close browser", + description: "Close the page", + inputSchema: import_zodBundle.z.object({}), + type: "action" + }, + handle: async (context, params, response) => { + const result = (0, import_response.renderTabsMarkdown)([]); + response.addTextResult(result.join("\n")); + response.addCode(`await page.close()`); + response.setClose(); + } +}); +const resize = (0, import_tool.defineTabTool)({ + capability: "core", + schema: { + name: "browser_resize", + title: "Resize browser window", + description: "Resize the browser window", + inputSchema: import_zodBundle.z.object({ + width: import_zodBundle.z.number().describe("Width of the browser window"), + height: import_zodBundle.z.number().describe("Height of the browser window") + }), + type: "action" + }, + handle: async (tab, params, response) => { + response.addCode(`await page.setViewportSize({ width: ${params.width}, height: ${params.height} });`); + await tab.page.setViewportSize({ width: params.width, height: params.height }); + } +}); +var common_default = [ + close, + resize +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/config.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/config.js new file mode 100644 index 00000000..9b4b2209 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/config.js @@ -0,0 +1,41 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var config_exports = {}; +__export(config_exports, { + default: () => config_default +}); +module.exports = __toCommonJS(config_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const configShow = (0, import_tool.defineTool)({ + capability: "config", + schema: { + name: "browser_get_config", + title: "Get config", + description: "Get the final resolved config after merging CLI options, environment variables and config file.", + inputSchema: import_zodBundle.z.object({}), + type: "readOnly" + }, + handle: async (context, params, response) => { + response.addTextResult(JSON.stringify(context.config, null, 2)); + } +}); +var config_default = [ + configShow +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/console.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/console.js new file mode 100644 index 00000000..164ec5a8 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/console.js @@ -0,0 +1,66 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var console_exports = {}; +__export(console_exports, { + default: () => console_default +}); +module.exports = __toCommonJS(console_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const console = (0, import_tool.defineTabTool)({ + capability: "core", + schema: { + name: "browser_console_messages", + title: "Get console messages", + description: "Returns all console messages", + inputSchema: import_zodBundle.z.object({ + level: import_zodBundle.z.enum(["error", "warning", "info", "debug"]).default("info").describe('Level of the console messages to return. Each level includes the messages of more severe levels. Defaults to "info".'), + all: import_zodBundle.z.boolean().optional().describe("Return all console messages since the beginning of the session, not just since the last navigation. Defaults to false."), + filename: import_zodBundle.z.string().optional().describe("Filename to save the console messages to. If not provided, messages are returned as text.") + }), + type: "readOnly" + }, + handle: async (tab, params, response) => { + const count = await tab.consoleMessageCount(); + const header = [`Total messages: ${count.total} (Errors: ${count.errors}, Warnings: ${count.warnings})`]; + const messages = await tab.consoleMessages(params.level, params.all); + if (messages.length !== count.total) + header.push(`Returning ${messages.length} messages for level "${params.level}"`); + const text = [...header, "", ...messages.map((message) => message.toString())].join("\n"); + await response.addResult("Console", text, { prefix: "console", ext: "log", suggestedFilename: params.filename }); + } +}); +const consoleClear = (0, import_tool.defineTabTool)({ + capability: "core", + skillOnly: true, + schema: { + name: "browser_console_clear", + title: "Clear console messages", + description: "Clear all console messages", + inputSchema: import_zodBundle.z.object({}), + type: "readOnly" + }, + handle: async (tab) => { + await tab.clearConsoleMessages(); + } +}); +var console_default = [ + console, + consoleClear +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/context.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/context.js new file mode 100644 index 00000000..ae017ca1 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/context.js @@ -0,0 +1,296 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var context_exports = {}; +__export(context_exports, { + Context: () => Context, + outputDir: () => outputDir, + outputFile: () => outputFile, + workspaceFile: () => workspaceFile +}); +module.exports = __toCommonJS(context_exports); +var import_fs = __toESM(require("fs")); +var import_path = __toESM(require("path")); +var import_utilsBundle = require("../../utilsBundle"); +var import_stringUtils = require("../../utils/isomorphic/stringUtils"); +var import__ = require("../../.."); +var import_tab = require("./tab"); +var import_disposable = require("../../server/utils/disposable"); +var import_eventsHelper = require("../../server/utils/eventsHelper"); +const testDebug = (0, import_utilsBundle.debug)("pw:mcp:test"); +class Context { + constructor(browserContext, options) { + this._tabs = []; + this._routes = []; + this._disposables = []; + this.config = options.config; + this.sessionLog = options.sessionLog; + this.options = options; + this._rawBrowserContext = browserContext; + testDebug("create context"); + } + async dispose() { + await (0, import_disposable.disposeAll)(this._disposables); + for (const tab of this._tabs) + await tab.dispose(); + this._tabs.length = 0; + this._currentTab = void 0; + await this.stopVideoRecording(); + } + debugger() { + return this._rawBrowserContext.debugger; + } + tabs() { + return this._tabs; + } + currentTab() { + return this._currentTab; + } + currentTabOrDie() { + if (!this._currentTab) + throw new Error("No open pages available."); + return this._currentTab; + } + async newTab() { + const browserContext = await this.ensureBrowserContext(); + const page = await browserContext.newPage(); + this._currentTab = this._tabs.find((t) => t.page === page); + return this._currentTab; + } + async selectTab(index) { + const tab = this._tabs[index]; + if (!tab) + throw new Error(`Tab ${index} not found`); + await tab.page.bringToFront(); + this._currentTab = tab; + return tab; + } + async ensureTab() { + const browserContext = await this.ensureBrowserContext(); + if (!this._currentTab) + await browserContext.newPage(); + return this._currentTab; + } + async closeTab(index) { + const tab = index === void 0 ? this._currentTab : this._tabs[index]; + if (!tab) + throw new Error(`Tab ${index} not found`); + const url = tab.page.url(); + await tab.page.close(); + return url; + } + async workspaceFile(fileName, perCallWorkspaceDir) { + return await workspaceFile(this.options, fileName, perCallWorkspaceDir); + } + async outputFile(template, options) { + const baseName = template.suggestedFilename || `${template.prefix}-${(template.date ?? /* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-")}${template.ext ? "." + template.ext : ""}`; + return await outputFile(this.options, baseName, options); + } + async startVideoRecording(fileName, params) { + if (this._video) + throw new Error("Video recording has already been started."); + this._video = { params, fileName, fileNames: [] }; + const browserContext = await this.ensureBrowserContext(); + for (const page of browserContext.pages()) + await this._startPageVideo(page); + } + async stopVideoRecording() { + if (!this._video) + return []; + const video = this._video; + for (const page of this._rawBrowserContext.pages()) + await page.screencast.stop(); + this._video = void 0; + return [...video.fileNames]; + } + async _startPageVideo(page) { + if (!this._video) + return; + const suffix = this._video.fileNames.length ? `-${this._video.fileNames.length}` : ""; + let fileName = this._video.fileName; + if (fileName && suffix) { + const ext = import_path.default.extname(fileName); + fileName = import_path.default.basename(fileName, ext) + suffix + ext; + } + this._video.fileNames.push(fileName); + await page.screencast.start({ path: fileName, ...this._video.params }); + } + _onPageCreated(page) { + const tab = new import_tab.Tab(this, page, (tab2) => this._onPageClosed(tab2)); + this._tabs.push(tab); + if (!this._currentTab) + this._currentTab = tab; + this._startPageVideo(page).catch(() => { + }); + } + _onPageClosed(tab) { + const index = this._tabs.indexOf(tab); + if (index === -1) + return; + this._tabs.splice(index, 1); + if (this._currentTab === tab) + this._currentTab = this._tabs[Math.min(index, this._tabs.length - 1)]; + } + routes() { + return this._routes; + } + async addRoute(entry) { + const browserContext = await this.ensureBrowserContext(); + await browserContext.route(entry.pattern, entry.handler); + this._routes.push(entry); + } + async removeRoute(pattern) { + let removed = 0; + const browserContext = await this.ensureBrowserContext(); + if (pattern) { + const toRemove = this._routes.filter((r) => r.pattern === pattern); + for (const route of toRemove) + await browserContext.unroute(route.pattern, route.handler); + this._routes = this._routes.filter((r) => r.pattern !== pattern); + removed = toRemove.length; + } else { + for (const route of this._routes) + await browserContext.unroute(route.pattern, route.handler); + removed = this._routes.length; + this._routes = []; + } + return removed; + } + isRunningTool() { + return this._runningToolName !== void 0; + } + setRunningTool(name) { + this._runningToolName = name; + } + async _setupRequestInterception(context) { + if (this.config.network?.allowedOrigins?.length) { + this._disposables.push(await context.route("**", (route) => route.abort("blockedbyclient"))); + for (const origin of this.config.network.allowedOrigins) { + const glob = originOrHostGlob(origin); + this._disposables.push(await context.route(glob, (route) => route.continue())); + } + } + if (this.config.network?.blockedOrigins?.length) { + for (const origin of this.config.network.blockedOrigins) + this._disposables.push(await context.route(originOrHostGlob(origin), (route) => route.abort("blockedbyclient"))); + } + } + async ensureBrowserContext() { + if (this._browserContextPromise) + return this._browserContextPromise; + this._browserContextPromise = this._initializeBrowserContext(); + return this._browserContextPromise; + } + async _initializeBrowserContext() { + if (this.config.testIdAttribute) + import__.selectors.setTestIdAttribute(this.config.testIdAttribute); + const browserContext = this._rawBrowserContext; + await this._setupRequestInterception(browserContext); + if (this.config.saveTrace) { + await browserContext.tracing.start({ + name: "trace-" + Date.now(), + screenshots: true, + snapshots: true, + live: true + }); + this._disposables.push({ + dispose: async () => { + await browserContext.tracing.stop(); + } + }); + } + for (const initScript of this.config.browser?.initScript || []) + this._disposables.push(await browserContext.addInitScript({ path: import_path.default.resolve(this.options.cwd, initScript) })); + for (const page of browserContext.pages()) + this._onPageCreated(page); + this._disposables.push(import_eventsHelper.eventsHelper.addEventListener(browserContext, "page", (page) => this._onPageCreated(page))); + return browserContext; + } + checkUrlAllowed(url) { + if (this.config.allowUnrestrictedFileAccess) + return; + if (!URL.canParse(url)) + return; + if (new URL(url).protocol === "file:") + throw new Error(`Access to "file:" protocol is blocked. Attempted URL: "${url}"`); + } + lookupSecret(secretName) { + if (!this.config.secrets?.[secretName]) + return { value: secretName, code: (0, import_stringUtils.escapeWithQuotes)(secretName, "'") }; + return { + value: this.config.secrets[secretName], + code: `process.env['${secretName}']` + }; + } +} +function originOrHostGlob(originOrHost) { + const wildcardPortMatch = originOrHost.match(/^(https?:\/\/[^/:]+):\*$/); + if (wildcardPortMatch) + return `${wildcardPortMatch[1]}:*/**`; + try { + const url = new URL(originOrHost); + if (url.origin !== "null") + return `${url.origin}/**`; + } catch { + } + return `*://${originOrHost}/**`; +} +async function workspaceFile(options, fileName, perCallWorkspaceDir) { + const workspace = perCallWorkspaceDir ?? options.cwd; + const resolvedName = import_path.default.resolve(workspace, fileName); + await checkFile(options, resolvedName, { origin: "llm" }); + return resolvedName; +} +function outputDir(options) { + if (options.config.outputDir) + return import_path.default.resolve(options.config.outputDir); + return import_path.default.resolve(options.cwd, options.config.skillMode ? ".playwright-cli" : ".playwright-mcp"); +} +async function outputFile(options, fileName, flags) { + const resolvedFile = import_path.default.resolve(outputDir(options), fileName); + await checkFile(options, resolvedFile, flags); + await import_fs.default.promises.mkdir(import_path.default.dirname(resolvedFile), { recursive: true }); + (0, import_utilsBundle.debug)("pw:mcp:file")(resolvedFile); + return resolvedFile; +} +async function checkFile(options, resolvedFilename, flags) { + if (flags.origin === "code" || options.config.allowUnrestrictedFileAccess) + return; + const output = outputDir(options); + const workspace = options.cwd; + const withinDir = (root) => resolvedFilename === root || resolvedFilename.startsWith(root + import_path.default.sep); + if (!withinDir(output) && !withinDir(workspace)) + throw new Error(`File access denied: ${resolvedFilename} is outside allowed roots. Allowed roots: ${output}, ${workspace}`); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + Context, + outputDir, + outputFile, + workspaceFile +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/cookies.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/cookies.js new file mode 100644 index 00000000..469942e2 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/cookies.js @@ -0,0 +1,152 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var cookies_exports = {}; +__export(cookies_exports, { + default: () => cookies_default +}); +module.exports = __toCommonJS(cookies_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const cookieList = (0, import_tool.defineTool)({ + capability: "storage", + schema: { + name: "browser_cookie_list", + title: "List cookies", + description: "List all cookies (optionally filtered by domain/path)", + inputSchema: import_zodBundle.z.object({ + domain: import_zodBundle.z.string().optional().describe("Filter cookies by domain"), + path: import_zodBundle.z.string().optional().describe("Filter cookies by path") + }), + type: "readOnly" + }, + handle: async (context, params, response) => { + const browserContext = await context.ensureBrowserContext(); + let cookies = await browserContext.cookies(); + if (params.domain) + cookies = cookies.filter((c) => c.domain.includes(params.domain)); + if (params.path) + cookies = cookies.filter((c) => c.path.startsWith(params.path)); + if (cookies.length === 0) + response.addTextResult("No cookies found"); + else + response.addTextResult(cookies.map((c) => `${c.name}=${c.value} (domain: ${c.domain}, path: ${c.path})`).join("\n")); + response.addCode(`await page.context().cookies();`); + } +}); +const cookieGet = (0, import_tool.defineTool)({ + capability: "storage", + schema: { + name: "browser_cookie_get", + title: "Get cookie", + description: "Get a specific cookie by name", + inputSchema: import_zodBundle.z.object({ + name: import_zodBundle.z.string().describe("Cookie name to get") + }), + type: "readOnly" + }, + handle: async (context, params, response) => { + const browserContext = await context.ensureBrowserContext(); + const cookies = await browserContext.cookies(); + const cookie = cookies.find((c) => c.name === params.name); + if (!cookie) + response.addTextResult(`Cookie '${params.name}' not found`); + else + response.addTextResult(`${cookie.name}=${cookie.value} (domain: ${cookie.domain}, path: ${cookie.path}, httpOnly: ${cookie.httpOnly}, secure: ${cookie.secure}, sameSite: ${cookie.sameSite})`); + response.addCode(`await page.context().cookies();`); + } +}); +const cookieSet = (0, import_tool.defineTool)({ + capability: "storage", + schema: { + name: "browser_cookie_set", + title: "Set cookie", + description: "Set a cookie with optional flags (domain, path, expires, httpOnly, secure, sameSite)", + inputSchema: import_zodBundle.z.object({ + name: import_zodBundle.z.string().describe("Cookie name"), + value: import_zodBundle.z.string().describe("Cookie value"), + domain: import_zodBundle.z.string().optional().describe("Cookie domain"), + path: import_zodBundle.z.string().optional().describe("Cookie path"), + expires: import_zodBundle.z.number().optional().describe("Cookie expiration as Unix timestamp"), + httpOnly: import_zodBundle.z.boolean().optional().describe("Whether the cookie is HTTP only"), + secure: import_zodBundle.z.boolean().optional().describe("Whether the cookie is secure"), + sameSite: import_zodBundle.z.enum(["Strict", "Lax", "None"]).optional().describe("Cookie SameSite attribute") + }), + type: "action" + }, + handle: async (context, params, response) => { + const browserContext = await context.ensureBrowserContext(); + const tab = await context.ensureTab(); + const url = new URL(tab.page.url()); + const cookie = { + name: params.name, + value: params.value, + domain: params.domain || url.hostname, + path: params.path || "/" + }; + if (params.expires !== void 0) + cookie.expires = params.expires; + if (params.httpOnly !== void 0) + cookie.httpOnly = params.httpOnly; + if (params.secure !== void 0) + cookie.secure = params.secure; + if (params.sameSite !== void 0) + cookie.sameSite = params.sameSite; + await browserContext.addCookies([cookie]); + response.addCode(`await page.context().addCookies([${JSON.stringify(cookie)}]);`); + } +}); +const cookieDelete = (0, import_tool.defineTool)({ + capability: "storage", + schema: { + name: "browser_cookie_delete", + title: "Delete cookie", + description: "Delete a specific cookie", + inputSchema: import_zodBundle.z.object({ + name: import_zodBundle.z.string().describe("Cookie name to delete") + }), + type: "action" + }, + handle: async (context, params, response) => { + const browserContext = await context.ensureBrowserContext(); + await browserContext.clearCookies({ name: params.name }); + response.addCode(`await page.context().clearCookies({ name: '${params.name}' });`); + } +}); +const cookieClear = (0, import_tool.defineTool)({ + capability: "storage", + schema: { + name: "browser_cookie_clear", + title: "Clear cookies", + description: "Clear all cookies", + inputSchema: import_zodBundle.z.object({}), + type: "action" + }, + handle: async (context, params, response) => { + const browserContext = await context.ensureBrowserContext(); + await browserContext.clearCookies(); + response.addCode(`await page.context().clearCookies();`); + } +}); +var cookies_default = [ + cookieList, + cookieGet, + cookieSet, + cookieDelete, + cookieClear +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/devtools.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/devtools.js new file mode 100644 index 00000000..21c63b0c --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/devtools.js @@ -0,0 +1,69 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var devtools_exports = {}; +__export(devtools_exports, { + default: () => devtools_default +}); +module.exports = __toCommonJS(devtools_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const resume = (0, import_tool.defineTool)({ + capability: "devtools", + schema: { + name: "browser_resume", + title: "Resume paused script execution", + description: "Resume script execution after it was paused. When called with step set to true, execution will pause again before the next action.", + inputSchema: import_zodBundle.z.object({ + step: import_zodBundle.z.boolean().optional().describe("When true, execution will pause again before the next action, allowing step-by-step debugging."), + location: import_zodBundle.z.string().optional().describe('Pause execution at a specific :, e.g. "example.spec.ts:42".') + }), + type: "action" + }, + handle: async (context, params, response) => { + const browserContext = await context.ensureBrowserContext(); + const pausedPromise = new Promise((resolve) => { + const listener = () => { + if (browserContext.debugger.pausedDetails()) { + browserContext.debugger.off("pausedstatechanged", listener); + resolve(); + } + }; + browserContext.debugger.on("pausedstatechanged", listener); + }); + if (params.location) { + const [file, lineStr] = params.location.split(":"); + let location; + if (lineStr) { + const line = Number(lineStr); + if (isNaN(line)) + throw new Error(`Invalid location "${params.location}", expected format is :, e.g. "example.spec.ts:42"`); + location = { file, line }; + } else { + location = { file: params.location }; + } + await browserContext.debugger.runTo(location); + } else if (params.step) { + await browserContext.debugger.next(); + } else { + await browserContext.debugger.resume(); + } + await pausedPromise; + } +}); +var devtools_default = [resume]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/dialogs.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/dialogs.js new file mode 100644 index 00000000..44583a75 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/dialogs.js @@ -0,0 +1,59 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var dialogs_exports = {}; +__export(dialogs_exports, { + default: () => dialogs_default, + handleDialog: () => handleDialog +}); +module.exports = __toCommonJS(dialogs_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const handleDialog = (0, import_tool.defineTabTool)({ + capability: "core", + schema: { + name: "browser_handle_dialog", + title: "Handle a dialog", + description: "Handle a dialog", + inputSchema: import_zodBundle.z.object({ + accept: import_zodBundle.z.boolean().describe("Whether to accept the dialog."), + promptText: import_zodBundle.z.string().optional().describe("The text of the prompt in case of a prompt dialog.") + }), + type: "action" + }, + handle: async (tab, params, response) => { + const dialogState = tab.modalStates().find((state) => state.type === "dialog"); + if (!dialogState) + throw new Error("No dialog visible"); + tab.clearModalState(dialogState); + await tab.waitForCompletion(async () => { + if (params.accept) + await dialogState.dialog.accept(params.promptText); + else + await dialogState.dialog.dismiss(); + }); + }, + clearsModalState: "dialog" +}); +var dialogs_default = [ + handleDialog +]; +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + handleDialog +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/evaluate.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/evaluate.js new file mode 100644 index 00000000..46b7c093 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/evaluate.js @@ -0,0 +1,64 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var evaluate_exports = {}; +__export(evaluate_exports, { + default: () => evaluate_default +}); +module.exports = __toCommonJS(evaluate_exports); +var import_zodBundle = require("../../zodBundle"); +var import_stringUtils = require("../../utils/isomorphic/stringUtils"); +var import_tool = require("./tool"); +const evaluateSchema = import_zodBundle.z.object({ + function: import_zodBundle.z.string().describe("() => { /* code */ } or (element) => { /* code */ } when element is provided"), + element: import_zodBundle.z.string().optional().describe("Human-readable element description used to obtain permission to interact with the element"), + ref: import_zodBundle.z.string().optional().describe("Exact target element reference from the page snapshot"), + selector: import_zodBundle.z.string().optional().describe('CSS or role selector for the target element, when "ref" is not available.'), + filename: import_zodBundle.z.string().optional().describe("Filename to save the result to. If not provided, result is returned as text.") +}); +const evaluate = (0, import_tool.defineTabTool)({ + capability: "core", + schema: { + name: "browser_evaluate", + title: "Evaluate JavaScript", + description: "Evaluate JavaScript expression on page or element", + inputSchema: evaluateSchema, + type: "action" + }, + handle: async (tab, params, response) => { + let locator; + if (!params.function.includes("=>")) + params.function = `() => (${params.function})`; + if (params.ref) { + locator = await tab.refLocator({ ref: params.ref, selector: params.selector, element: params.element || "element" }); + response.addCode(`await page.${locator.resolved}.evaluate(${(0, import_stringUtils.escapeWithQuotes)(params.function)});`); + } else { + response.addCode(`await page.evaluate(${(0, import_stringUtils.escapeWithQuotes)(params.function)});`); + } + await tab.waitForCompletion(async () => { + const func = new Function(); + func.toString = () => params.function; + const result = locator?.locator ? await locator?.locator.evaluate(func) : await tab.page.evaluate(func); + const text = JSON.stringify(result, null, 2) || "undefined"; + await response.addResult("Evaluation result", text, { prefix: "result", ext: "json", suggestedFilename: params.filename }); + }); + } +}); +var evaluate_default = [ + evaluate +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/files.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/files.js new file mode 100644 index 00000000..908a1882 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/files.js @@ -0,0 +1,60 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var files_exports = {}; +__export(files_exports, { + default: () => files_default, + uploadFile: () => uploadFile +}); +module.exports = __toCommonJS(files_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const uploadFile = (0, import_tool.defineTabTool)({ + capability: "core", + schema: { + name: "browser_file_upload", + title: "Upload files", + description: "Upload one or multiple files", + inputSchema: import_zodBundle.z.object({ + paths: import_zodBundle.z.array(import_zodBundle.z.string()).optional().describe("The absolute paths to the files to upload. Can be single file or multiple files. If omitted, file chooser is cancelled.") + }), + type: "action" + }, + handle: async (tab, params, response) => { + response.setIncludeSnapshot(); + const modalState = tab.modalStates().find((state) => state.type === "fileChooser"); + if (!modalState) + throw new Error("No file chooser visible"); + if (params.paths) + await Promise.all(params.paths.map((filePath) => response.resolveClientFilename(filePath))); + response.addCode(`await fileChooser.setFiles(${JSON.stringify(params.paths)})`); + tab.clearModalState(modalState); + await tab.waitForCompletion(async () => { + if (params.paths) + await modalState.fileChooser.setFiles(params.paths); + }); + }, + clearsModalState: "fileChooser" +}); +var files_default = [ + uploadFile +]; +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + uploadFile +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/form.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/form.js new file mode 100644 index 00000000..c484ecc1 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/form.js @@ -0,0 +1,64 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var form_exports = {}; +__export(form_exports, { + default: () => form_default +}); +module.exports = __toCommonJS(form_exports); +var import_zodBundle = require("../../zodBundle"); +var import_stringUtils = require("../../utils/isomorphic/stringUtils"); +var import_tool = require("./tool"); +const fillForm = (0, import_tool.defineTabTool)({ + capability: "core", + schema: { + name: "browser_fill_form", + title: "Fill form", + description: "Fill multiple form fields", + inputSchema: import_zodBundle.z.object({ + fields: import_zodBundle.z.array(import_zodBundle.z.object({ + name: import_zodBundle.z.string().describe("Human-readable field name"), + type: import_zodBundle.z.enum(["textbox", "checkbox", "radio", "combobox", "slider"]).describe("Type of the field"), + ref: import_zodBundle.z.string().describe("Exact target field reference from the page snapshot"), + selector: import_zodBundle.z.string().optional().describe('CSS or role selector for the field element, when "ref" is not available. Either "selector" or "ref" is required.'), + value: import_zodBundle.z.string().describe("Value to fill in the field. If the field is a checkbox, the value should be `true` or `false`. If the field is a combobox, the value should be the text of the option.") + })).describe("Fields to fill in") + }), + type: "input" + }, + handle: async (tab, params, response) => { + for (const field of params.fields) { + const { locator, resolved } = await tab.refLocator({ element: field.name, ref: field.ref, selector: field.selector }); + const locatorSource = `await page.${resolved}`; + if (field.type === "textbox" || field.type === "slider") { + const secret = tab.context.lookupSecret(field.value); + await locator.fill(secret.value, tab.actionTimeoutOptions); + response.addCode(`${locatorSource}.fill(${secret.code});`); + } else if (field.type === "checkbox" || field.type === "radio") { + await locator.setChecked(field.value === "true", tab.actionTimeoutOptions); + response.addCode(`${locatorSource}.setChecked(${field.value});`); + } else if (field.type === "combobox") { + await locator.selectOption({ label: field.value }, tab.actionTimeoutOptions); + response.addCode(`${locatorSource}.selectOption(${(0, import_stringUtils.escapeWithQuotes)(field.value)});`); + } + } + } +}); +var form_default = [ + fillForm +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/keyboard.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/keyboard.js new file mode 100644 index 00000000..7f949599 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/keyboard.js @@ -0,0 +1,155 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var keyboard_exports = {}; +__export(keyboard_exports, { + default: () => keyboard_default +}); +module.exports = __toCommonJS(keyboard_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +var import_snapshot = require("./snapshot"); +const press = (0, import_tool.defineTabTool)({ + capability: "core-input", + schema: { + name: "browser_press_key", + title: "Press a key", + description: "Press a key on the keyboard", + inputSchema: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Name of the key to press or a character to generate, such as `ArrowLeft` or `a`") + }), + type: "input" + }, + handle: async (tab, params, response) => { + response.addCode(`// Press ${params.key}`); + response.addCode(`await page.keyboard.press('${params.key}');`); + if (params.key === "Enter") { + response.setIncludeSnapshot(); + await tab.waitForCompletion(async () => { + await tab.page.keyboard.press("Enter"); + }); + } else { + await tab.page.keyboard.press(params.key); + } + } +}); +const pressSequentially = (0, import_tool.defineTabTool)({ + capability: "core-input", + skillOnly: true, + schema: { + name: "browser_press_sequentially", + title: "Type text key by key", + description: "Type text key by key on the keyboard", + inputSchema: import_zodBundle.z.object({ + text: import_zodBundle.z.string().describe("Text to type"), + submit: import_zodBundle.z.boolean().optional().describe("Whether to submit entered text (press Enter after)") + }), + type: "input" + }, + handle: async (tab, params, response) => { + response.addCode(`// Press ${params.text}`); + response.addCode(`await page.keyboard.type('${params.text}');`); + await tab.page.keyboard.type(params.text); + if (params.submit) { + response.addCode(`await page.keyboard.press('Enter');`); + response.setIncludeSnapshot(); + await tab.waitForCompletion(async () => { + await tab.page.keyboard.press("Enter"); + }); + } + } +}); +const typeSchema = import_snapshot.elementSchema.extend({ + text: import_zodBundle.z.string().describe("Text to type into the element"), + submit: import_zodBundle.z.boolean().optional().describe("Whether to submit entered text (press Enter after)"), + slowly: import_zodBundle.z.boolean().optional().describe("Whether to type one character at a time. Useful for triggering key handlers in the page. By default entire text is filled in at once.") +}); +const type = (0, import_tool.defineTabTool)({ + capability: "core-input", + schema: { + name: "browser_type", + title: "Type text", + description: "Type text into editable element", + inputSchema: typeSchema, + type: "input" + }, + handle: async (tab, params, response) => { + const { locator, resolved } = await tab.refLocator(params); + const secret = tab.context.lookupSecret(params.text); + const action = async () => { + if (params.slowly) { + response.setIncludeSnapshot(); + response.addCode(`await page.${resolved}.pressSequentially(${secret.code});`); + await locator.pressSequentially(secret.value, tab.actionTimeoutOptions); + } else { + response.addCode(`await page.${resolved}.fill(${secret.code});`); + await locator.fill(secret.value, tab.actionTimeoutOptions); + } + if (params.submit) { + response.setIncludeSnapshot(); + response.addCode(`await page.${resolved}.press('Enter');`); + await locator.press("Enter", tab.actionTimeoutOptions); + } + }; + if (params.submit || params.slowly) + await tab.waitForCompletion(action); + else + await action(); + } +}); +const keydown = (0, import_tool.defineTabTool)({ + capability: "core-input", + skillOnly: true, + schema: { + name: "browser_keydown", + title: "Press a key down", + description: "Press a key down on the keyboard", + inputSchema: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Name of the key to press or a character to generate, such as `ArrowLeft` or `a`") + }), + type: "input" + }, + handle: async (tab, params, response) => { + response.addCode(`await page.keyboard.down('${params.key}');`); + await tab.page.keyboard.down(params.key); + } +}); +const keyup = (0, import_tool.defineTabTool)({ + capability: "core-input", + skillOnly: true, + schema: { + name: "browser_keyup", + title: "Press a key up", + description: "Press a key up on the keyboard", + inputSchema: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Name of the key to press or a character to generate, such as `ArrowLeft` or `a`") + }), + type: "input" + }, + handle: async (tab, params, response) => { + response.addCode(`await page.keyboard.up('${params.key}');`); + await tab.page.keyboard.up(params.key); + } +}); +var keyboard_default = [ + press, + type, + pressSequentially, + keydown, + keyup +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/logFile.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/logFile.js new file mode 100644 index 00000000..ad34b722 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/logFile.js @@ -0,0 +1,95 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var logFile_exports = {}; +__export(logFile_exports, { + LogFile: () => LogFile +}); +module.exports = __toCommonJS(logFile_exports); +var import_fs = __toESM(require("fs")); +var import_path = __toESM(require("path")); +var import_utilsBundle = require("../../utilsBundle"); +class LogFile { + constructor(context, startTime, filePrefix, title) { + this._stopped = false; + this._line = 0; + this._entries = 0; + this._lastLine = 0; + this._lastEntries = 0; + this._writeChain = Promise.resolve(); + this._context = context; + this._startTime = startTime; + this._filePrefix = filePrefix; + this._title = title; + } + appendLine(wallTime, text) { + this._writeChain = this._writeChain.then(() => this._write(wallTime, text)).catch((e) => (0, import_utilsBundle.debug)("pw:tools:error")(e)); + } + stop() { + this._stopped = true; + } + async take(relativeTo) { + const logChunk = await this._take(); + if (!logChunk) + return void 0; + const logFilePath = relativeTo ? import_path.default.relative(relativeTo, logChunk.file) : logChunk.file; + const lineRange = logChunk.fromLine === logChunk.toLine ? `#L${logChunk.fromLine}` : `#L${logChunk.fromLine}-L${logChunk.toLine}`; + return `${logFilePath}${lineRange}`; + } + async _take() { + await this._writeChain; + if (!this._file || this._entries === this._lastEntries) + return void 0; + const chunk = { + type: this._title.toLowerCase(), + file: this._file, + fromLine: this._lastLine + 1, + toLine: this._line, + entryCount: this._entries - this._lastEntries + }; + this._lastLine = this._line; + this._lastEntries = this._entries; + return chunk; + } + async _write(wallTime, text) { + if (this._stopped) + return; + this._file ??= await this._context.outputFile({ prefix: this._filePrefix, ext: "log", date: new Date(this._startTime) }, { origin: "code" }); + const relativeTime = Math.round(wallTime - this._startTime); + const logLine = `[${String(relativeTime).padStart(8, " ")}ms] ${text} +`; + await import_fs.default.promises.appendFile(this._file, logLine); + const lineCount = logLine.split("\n").length - 1; + this._line += lineCount; + this._entries++; + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + LogFile +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/mouse.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/mouse.js new file mode 100644 index 00000000..2cae978c --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/mouse.js @@ -0,0 +1,168 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var mouse_exports = {}; +__export(mouse_exports, { + default: () => mouse_default +}); +module.exports = __toCommonJS(mouse_exports); +var import_zodBundle = require("../../zodBundle"); +var import_stringUtils = require("../../utils/isomorphic/stringUtils"); +var import_tool = require("./tool"); +const mouseMove = (0, import_tool.defineTabTool)({ + capability: "vision", + schema: { + name: "browser_mouse_move_xy", + title: "Move mouse", + description: "Move mouse to a given position", + inputSchema: import_zodBundle.z.object({ + x: import_zodBundle.z.number().describe("X coordinate"), + y: import_zodBundle.z.number().describe("Y coordinate") + }), + type: "input" + }, + handle: async (tab, params, response) => { + response.addCode(`// Move mouse to (${params.x}, ${params.y})`); + response.addCode(`await page.mouse.move(${params.x}, ${params.y});`); + await tab.page.mouse.move(params.x, params.y); + } +}); +const mouseDown = (0, import_tool.defineTabTool)({ + capability: "vision", + schema: { + name: "browser_mouse_down", + title: "Press mouse down", + description: "Press mouse down", + inputSchema: import_zodBundle.z.object({ + button: import_zodBundle.z.enum(["left", "right", "middle"]).optional().describe("Button to press, defaults to left") + }), + type: "input" + }, + handle: async (tab, params, response) => { + const options = { button: params.button }; + const optionsArg = (0, import_stringUtils.formatObjectOrVoid)(options); + response.addCode(`// Press mouse down`); + response.addCode(`await page.mouse.down(${optionsArg});`); + await tab.page.mouse.down(options); + } +}); +const mouseUp = (0, import_tool.defineTabTool)({ + capability: "vision", + schema: { + name: "browser_mouse_up", + title: "Press mouse up", + description: "Press mouse up", + inputSchema: import_zodBundle.z.object({ + button: import_zodBundle.z.enum(["left", "right", "middle"]).optional().describe("Button to press, defaults to left") + }), + type: "input" + }, + handle: async (tab, params, response) => { + const options = { button: params.button }; + const optionsArg = (0, import_stringUtils.formatObjectOrVoid)(options); + response.addCode(`// Press mouse up`); + response.addCode(`await page.mouse.up(${optionsArg});`); + await tab.page.mouse.up(options); + } +}); +const mouseWheel = (0, import_tool.defineTabTool)({ + capability: "vision", + schema: { + name: "browser_mouse_wheel", + title: "Scroll mouse wheel", + description: "Scroll mouse wheel", + inputSchema: import_zodBundle.z.object({ + deltaX: import_zodBundle.z.number().default(0).describe("X delta"), + deltaY: import_zodBundle.z.number().default(0).describe("Y delta") + }), + type: "input" + }, + handle: async (tab, params, response) => { + response.addCode(`// Scroll mouse wheel`); + response.addCode(`await page.mouse.wheel(${params.deltaX}, ${params.deltaY});`); + await tab.page.mouse.wheel(params.deltaX, params.deltaY); + } +}); +const mouseClick = (0, import_tool.defineTabTool)({ + capability: "vision", + schema: { + name: "browser_mouse_click_xy", + title: "Click", + description: "Click mouse button at a given position", + inputSchema: import_zodBundle.z.object({ + x: import_zodBundle.z.number().describe("X coordinate"), + y: import_zodBundle.z.number().describe("Y coordinate"), + button: import_zodBundle.z.enum(["left", "right", "middle"]).optional().describe("Button to click, defaults to left"), + clickCount: import_zodBundle.z.number().optional().describe("Number of clicks, defaults to 1"), + delay: import_zodBundle.z.number().optional().describe("Time to wait between mouse down and mouse up in milliseconds, defaults to 0") + }), + type: "input" + }, + handle: async (tab, params, response) => { + response.setIncludeSnapshot(); + const options = { + button: params.button, + clickCount: params.clickCount, + delay: params.delay + }; + const formatted = (0, import_stringUtils.formatObjectOrVoid)(options); + const optionsArg = formatted ? `, ${formatted}` : ""; + response.addCode(`// Click mouse at coordinates (${params.x}, ${params.y})`); + response.addCode(`await page.mouse.click(${params.x}, ${params.y}${optionsArg});`); + await tab.waitForCompletion(async () => { + await tab.page.mouse.click(params.x, params.y, options); + }); + } +}); +const mouseDrag = (0, import_tool.defineTabTool)({ + capability: "vision", + schema: { + name: "browser_mouse_drag_xy", + title: "Drag mouse", + description: "Drag left mouse button to a given position", + inputSchema: import_zodBundle.z.object({ + startX: import_zodBundle.z.number().describe("Start X coordinate"), + startY: import_zodBundle.z.number().describe("Start Y coordinate"), + endX: import_zodBundle.z.number().describe("End X coordinate"), + endY: import_zodBundle.z.number().describe("End Y coordinate") + }), + type: "input" + }, + handle: async (tab, params, response) => { + response.setIncludeSnapshot(); + response.addCode(`// Drag mouse from (${params.startX}, ${params.startY}) to (${params.endX}, ${params.endY})`); + response.addCode(`await page.mouse.move(${params.startX}, ${params.startY});`); + response.addCode(`await page.mouse.down();`); + response.addCode(`await page.mouse.move(${params.endX}, ${params.endY});`); + response.addCode(`await page.mouse.up();`); + await tab.waitForCompletion(async () => { + await tab.page.mouse.move(params.startX, params.startY); + await tab.page.mouse.down(); + await tab.page.mouse.move(params.endX, params.endY); + await tab.page.mouse.up(); + }); + } +}); +var mouse_default = [ + mouseMove, + mouseClick, + mouseDrag, + mouseDown, + mouseUp, + mouseWheel +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/navigate.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/navigate.js new file mode 100644 index 00000000..9fbd3ce0 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/navigate.js @@ -0,0 +1,106 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var navigate_exports = {}; +__export(navigate_exports, { + default: () => navigate_default +}); +module.exports = __toCommonJS(navigate_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const navigate = (0, import_tool.defineTool)({ + capability: "core-navigation", + schema: { + name: "browser_navigate", + title: "Navigate to a URL", + description: "Navigate to a URL", + inputSchema: import_zodBundle.z.object({ + url: import_zodBundle.z.string().describe("The URL to navigate to") + }), + type: "action" + }, + handle: async (context, params, response) => { + const tab = await context.ensureTab(); + let url = params.url; + try { + new URL(url); + } catch (e) { + if (url.startsWith("localhost")) + url = "http://" + url; + else + url = "https://" + url; + } + context.checkUrlAllowed(url); + await tab.navigate(url); + response.setIncludeSnapshot(); + response.addCode(`await page.goto('${url}');`); + } +}); +const goBack = (0, import_tool.defineTabTool)({ + capability: "core-navigation", + schema: { + name: "browser_navigate_back", + title: "Go back", + description: "Go back to the previous page in the history", + inputSchema: import_zodBundle.z.object({}), + type: "action" + }, + handle: async (tab, params, response) => { + await tab.page.goBack(tab.navigationTimeoutOptions); + response.setIncludeSnapshot(); + response.addCode(`await page.goBack();`); + } +}); +const goForward = (0, import_tool.defineTabTool)({ + capability: "core-navigation", + skillOnly: true, + schema: { + name: "browser_navigate_forward", + title: "Go forward", + description: "Go forward to the next page in the history", + inputSchema: import_zodBundle.z.object({}), + type: "action" + }, + handle: async (tab, params, response) => { + await tab.page.goForward(tab.navigationTimeoutOptions); + response.setIncludeSnapshot(); + response.addCode(`await page.goForward();`); + } +}); +const reload = (0, import_tool.defineTabTool)({ + capability: "core-navigation", + skillOnly: true, + schema: { + name: "browser_reload", + title: "Reload the page", + description: "Reload the current page", + inputSchema: import_zodBundle.z.object({}), + type: "action" + }, + handle: async (tab, params, response) => { + await tab.page.reload(tab.navigationTimeoutOptions); + response.setIncludeSnapshot(); + response.addCode(`await page.reload();`); + } +}); +var navigate_default = [ + navigate, + goBack, + goForward, + reload +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/network.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/network.js new file mode 100644 index 00000000..74bf3192 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/network.js @@ -0,0 +1,135 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var network_exports = {}; +__export(network_exports, { + default: () => network_default, + isFetch: () => isFetch, + renderRequest: () => renderRequest +}); +module.exports = __toCommonJS(network_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const requests = (0, import_tool.defineTabTool)({ + capability: "core", + schema: { + name: "browser_network_requests", + title: "List network requests", + description: "Returns all network requests since loading the page", + inputSchema: import_zodBundle.z.object({ + static: import_zodBundle.z.boolean().default(false).describe("Whether to include successful static resources like images, fonts, scripts, etc. Defaults to false."), + requestBody: import_zodBundle.z.boolean().default(false).describe("Whether to include request body. Defaults to false."), + requestHeaders: import_zodBundle.z.boolean().default(false).describe("Whether to include request headers. Defaults to false."), + filter: import_zodBundle.z.string().optional().describe('Only return requests whose URL matches this regexp (e.g. "/api/.*user").'), + filename: import_zodBundle.z.string().optional().describe("Filename to save the network requests to. If not provided, requests are returned as text.") + }), + type: "readOnly" + }, + handle: async (tab, params, response) => { + const requests2 = await tab.requests(); + const filter = params.filter ? new RegExp(params.filter) : void 0; + const text = []; + for (const request of requests2) { + if (!params.static && !isFetch(request) && isSuccessfulResponse(request)) + continue; + if (filter) { + filter.lastIndex = 0; + if (!filter.test(request.url())) + continue; + } + text.push(await renderRequest(request, params.requestBody, params.requestHeaders)); + } + await response.addResult("Network", text.join("\n"), { prefix: "network", ext: "log", suggestedFilename: params.filename }); + } +}); +const networkClear = (0, import_tool.defineTabTool)({ + capability: "core", + skillOnly: true, + schema: { + name: "browser_network_clear", + title: "Clear network requests", + description: "Clear all network requests", + inputSchema: import_zodBundle.z.object({}), + type: "readOnly" + }, + handle: async (tab, params, response) => { + await tab.clearRequests(); + } +}); +function isSuccessfulResponse(request) { + if (request.failure()) + return false; + const response = request.existingResponse(); + return !!response && response.status() < 400; +} +function isFetch(request) { + return ["fetch", "xhr"].includes(request.resourceType()); +} +async function renderRequest(request, includeBody = false, includeHeaders = false) { + const response = request.existingResponse(); + const result = []; + result.push(`[${request.method().toUpperCase()}] ${request.url()}`); + if (response) + result.push(` => [${response.status()}] ${response.statusText()}`); + else if (request.failure()) + result.push(` => [FAILED] ${request.failure()?.errorText ?? "Unknown error"}`); + if (includeHeaders) { + const headers = request.headers(); + const headerLines = Object.entries(headers).map(([k, v]) => ` ${k}: ${v}`).join("\n"); + if (headerLines) + result.push(` + Request headers: +${headerLines}`); + } + if (includeBody) { + const postData = request.postData(); + if (postData) + result.push(` + Request body: ${postData}`); + } + return result.join(""); +} +const networkStateSet = (0, import_tool.defineTool)({ + capability: "network", + schema: { + name: "browser_network_state_set", + title: "Set network state", + description: "Sets the browser network state to online or offline. When offline, all network requests will fail.", + inputSchema: import_zodBundle.z.object({ + state: import_zodBundle.z.enum(["online", "offline"]).describe('Set to "offline" to simulate offline mode, "online" to restore network connectivity') + }), + type: "action" + }, + handle: async (context, params, response) => { + const browserContext = await context.ensureBrowserContext(); + const offline = params.state === "offline"; + await browserContext.setOffline(offline); + response.addTextResult(`Network is now ${params.state}`); + response.addCode(`await page.context().setOffline(${offline});`); + } +}); +var network_default = [ + requests, + networkClear, + networkStateSet +]; +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + isFetch, + renderRequest +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/pdf.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/pdf.js new file mode 100644 index 00000000..f41a0294 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/pdf.js @@ -0,0 +1,48 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var pdf_exports = {}; +__export(pdf_exports, { + default: () => pdf_default +}); +module.exports = __toCommonJS(pdf_exports); +var import_zodBundle = require("../../zodBundle"); +var import_stringUtils = require("../../utils/isomorphic/stringUtils"); +var import_tool = require("./tool"); +const pdfSchema = import_zodBundle.z.object({ + filename: import_zodBundle.z.string().optional().describe("File name to save the pdf to. Defaults to `page-{timestamp}.pdf` if not specified. Prefer relative file names to stay within the output directory.") +}); +const pdf = (0, import_tool.defineTabTool)({ + capability: "pdf", + schema: { + name: "browser_pdf_save", + title: "Save as PDF", + description: "Save page as PDF", + inputSchema: pdfSchema, + type: "readOnly" + }, + handle: async (tab, params, response) => { + const data = await tab.page.pdf(); + const result = await response.resolveClientFile({ prefix: "page", ext: "pdf", suggestedFilename: params.filename }, "Page as pdf"); + await response.addFileResult(result, data); + response.addCode(`await page.pdf(${(0, import_stringUtils.formatObject)({ path: result.relativeName })});`); + } +}); +var pdf_default = [ + pdf +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/response.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/response.js new file mode 100644 index 00000000..efdf6576 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/response.js @@ -0,0 +1,305 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var response_exports = {}; +__export(response_exports, { + Response: () => Response, + parseResponse: () => parseResponse, + renderTabMarkdown: () => renderTabMarkdown, + renderTabsMarkdown: () => renderTabsMarkdown, + requestDebug: () => requestDebug +}); +module.exports = __toCommonJS(response_exports); +var import_fs = __toESM(require("fs")); +var import_path = __toESM(require("path")); +var import_utilsBundle = require("../../utilsBundle"); +var import_tab = require("./tab"); +var import_screenshot = require("./screenshot"); +const requestDebug = (0, import_utilsBundle.debug)("pw:mcp:request"); +class Response { + constructor(context, toolName, toolArgs, relativeTo) { + this._results = []; + this._errors = []; + this._code = []; + this._includeSnapshot = "none"; + this._isClose = false; + this._imageResults = []; + this._context = context; + this.toolName = toolName; + this.toolArgs = toolArgs; + this._clientWorkspace = relativeTo ?? context.options.cwd; + } + _computRelativeTo(fileName) { + return import_path.default.relative(this._clientWorkspace, fileName); + } + async resolveClientFile(template, title) { + let fileName; + if (template.suggestedFilename) + fileName = await this.resolveClientFilename(template.suggestedFilename); + else + fileName = await this._context.outputFile(template, { origin: "llm" }); + const relativeName = this._computRelativeTo(fileName); + const printableLink = `- [${title}](${relativeName})`; + return { fileName, relativeName, printableLink }; + } + async resolveClientFilename(filename) { + return await this._context.workspaceFile(filename, this._clientWorkspace); + } + addTextResult(text) { + this._results.push(text); + } + async addResult(title, data, file) { + if (file.suggestedFilename || typeof data !== "string") { + const resolvedFile = await this.resolveClientFile(file, title); + await this.addFileResult(resolvedFile, data); + } else { + this.addTextResult(data); + } + } + async _writeFile(resolvedFile, data) { + if (typeof data === "string") + await import_fs.default.promises.writeFile(resolvedFile.fileName, this._redactSecrets(data), "utf-8"); + else if (data) + await import_fs.default.promises.writeFile(resolvedFile.fileName, data); + } + async addFileResult(resolvedFile, data) { + await this._writeFile(resolvedFile, data); + this.addTextResult(resolvedFile.printableLink); + } + addFileLink(title, fileName) { + const relativeName = this._computRelativeTo(fileName); + this.addTextResult(`- [${title}](${relativeName})`); + } + async registerImageResult(data, imageType) { + this._imageResults.push({ data, imageType }); + } + setClose() { + this._isClose = true; + } + addError(error) { + this._errors.push(error); + } + addCode(code) { + this._code.push(code); + } + setIncludeSnapshot() { + this._includeSnapshot = this._context.config.snapshot?.mode ?? "full"; + } + setIncludeFullSnapshot(includeSnapshotFileName, selector, depth) { + this._includeSnapshot = "explicit"; + this._includeSnapshotFileName = includeSnapshotFileName; + this._includeSnapshotDepth = depth; + this._includeSnapshotSelector = selector; + } + _redactSecrets(text) { + for (const [secretName, secretValue] of Object.entries(this._context.config.secrets ?? {})) { + if (!secretValue) + continue; + text = text.replaceAll(secretValue, `${secretName}`); + } + return text; + } + async serialize() { + const sections = await this._build(); + const text = []; + for (const section of sections) { + if (!section.content.length) + continue; + text.push(`### ${section.title}`); + if (section.codeframe) + text.push(`\`\`\`${section.codeframe}`); + text.push(...section.content); + if (section.codeframe) + text.push("```"); + } + const content = [ + { + type: "text", + text: sanitizeUnicode(this._redactSecrets(text.join("\n"))) + } + ]; + if (this._context.config.imageResponses !== "omit") { + for (const imageResult of this._imageResults) { + const scaledData = (0, import_screenshot.scaleImageToFitMessage)(imageResult.data, imageResult.imageType); + content.push({ type: "image", data: scaledData.toString("base64"), mimeType: imageResult.imageType === "png" ? "image/png" : "image/jpeg" }); + } + } + return { + content, + ...this._isClose ? { isClose: true } : {}, + ...sections.some((section) => section.isError) ? { isError: true } : {} + }; + } + async _build() { + const sections = []; + const addSection = (title, content, codeframe) => { + const section = { title, content, isError: title === "Error", codeframe }; + sections.push(section); + return content; + }; + if (this._errors.length) + addSection("Error", this._errors); + if (this._results.length) + addSection("Result", this._results); + if (this._context.config.codegen !== "none" && this._code.length) + addSection("Ran Playwright code", this._code, "js"); + const tabSnapshot = this._context.currentTab() ? await this._context.currentTabOrDie().captureSnapshot(this._includeSnapshotSelector, this._includeSnapshotDepth, this._clientWorkspace) : void 0; + const tabHeaders = await Promise.all(this._context.tabs().map((tab) => tab.headerSnapshot())); + if (this._includeSnapshot !== "none" || tabHeaders.some((header) => header.changed)) { + if (tabHeaders.length !== 1) + addSection("Open tabs", renderTabsMarkdown(tabHeaders)); + addSection("Page", renderTabMarkdown(tabHeaders.find((h) => h.current) ?? tabHeaders[0])); + } + if (this._context.tabs().length === 0) + this._isClose = true; + if (tabSnapshot?.modalStates.length) + addSection("Modal state", (0, import_tab.renderModalStates)(this._context.config, tabSnapshot.modalStates)); + if (tabSnapshot && this._includeSnapshot !== "none") { + if (this._includeSnapshot !== "explicit" || this._includeSnapshotFileName) { + const suggestedFilename = this._includeSnapshotFileName === "" ? void 0 : this._includeSnapshotFileName; + const resolvedFile = await this.resolveClientFile({ prefix: "page", ext: "yml", suggestedFilename }, "Snapshot"); + await this._writeFile(resolvedFile, tabSnapshot.ariaSnapshot); + addSection("Snapshot", [resolvedFile.printableLink]); + } else { + addSection("Snapshot", [tabSnapshot.ariaSnapshot], "yaml"); + } + } + const text = []; + if (tabSnapshot?.consoleLink) + text.push(`- New console entries: ${tabSnapshot.consoleLink}`); + if (tabSnapshot?.events.filter((event) => event.type !== "request").length) { + for (const event of tabSnapshot.events) { + if (event.type === "download-start") + text.push(`- Downloading file ${event.download.download.suggestedFilename()} ...`); + else if (event.type === "download-finish") + text.push(`- Downloaded file ${event.download.download.suggestedFilename()} to "${this._computRelativeTo(event.download.outputFile)}"`); + } + } + if (text.length) + addSection("Events", text); + const pausedDetails = this._context.debugger().pausedDetails(); + if (pausedDetails) { + addSection("Paused", [ + `- ${pausedDetails.title} at ${this._computRelativeTo(pausedDetails.location.file)}${pausedDetails.location.line ? ":" + pausedDetails.location.line : ""}`, + "- Use any tools to explore and interact, resume by calling resume/step-over/pause-at" + ]); + } + return sections; + } +} +function renderTabMarkdown(tab) { + const lines = [`- Page URL: ${tab.url}`]; + if (tab.title) + lines.push(`- Page Title: ${tab.title}`); + if (tab.console.errors || tab.console.warnings) + lines.push(`- Console: ${tab.console.errors} errors, ${tab.console.warnings} warnings`); + return lines; +} +function renderTabsMarkdown(tabs) { + if (!tabs.length) + return ["No open tabs. Navigate to a URL to create one."]; + const lines = []; + for (let i = 0; i < tabs.length; i++) { + const tab = tabs[i]; + const current = tab.current ? " (current)" : ""; + lines.push(`- ${i}:${current} [${tab.title}](${tab.url})`); + } + return lines; +} +function sanitizeUnicode(text) { + return text.toWellFormed?.() ?? text; +} +function parseSections(text) { + const sections = /* @__PURE__ */ new Map(); + const sectionHeaders = text.split(/^### /m).slice(1); + for (const section of sectionHeaders) { + const firstNewlineIndex = section.indexOf("\n"); + if (firstNewlineIndex === -1) + continue; + const sectionName = section.substring(0, firstNewlineIndex); + const sectionContent = section.substring(firstNewlineIndex + 1).trim(); + sections.set(sectionName, sectionContent); + } + return sections; +} +function parseResponse(response, cwd) { + if (response.content?.[0].type !== "text") + return void 0; + const text = response.content[0].text; + const sections = parseSections(text); + const error = sections.get("Error"); + const result = sections.get("Result"); + const code = sections.get("Ran Playwright code"); + const tabs = sections.get("Open tabs"); + const page = sections.get("Page"); + const snapshotSection = sections.get("Snapshot"); + const events = sections.get("Events"); + const modalState = sections.get("Modal state"); + const paused = sections.get("Paused"); + const codeNoFrame = code?.replace(/^```js\n/, "").replace(/\n```$/, ""); + const isError = response.isError; + const attachments = response.content.length > 1 ? response.content.slice(1) : void 0; + let snapshot; + let inlineSnapshot; + if (snapshotSection) { + const match = snapshotSection.match(/\[Snapshot\]\(([^)]+)\)/); + if (match) { + if (cwd) { + try { + snapshot = import_fs.default.readFileSync(import_path.default.resolve(cwd, match[1]), "utf-8"); + } catch { + } + } + } else { + inlineSnapshot = snapshotSection.replace(/^```yaml\n?/, "").replace(/\n?```$/, ""); + } + } + return { + result, + error, + code: codeNoFrame, + tabs, + page, + snapshot, + inlineSnapshot, + events, + modalState, + paused, + isError, + attachments, + text + }; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + Response, + parseResponse, + renderTabMarkdown, + renderTabsMarkdown, + requestDebug +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/route.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/route.js new file mode 100644 index 00000000..e7ad049b --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/route.js @@ -0,0 +1,140 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var route_exports = {}; +__export(route_exports, { + default: () => route_default +}); +module.exports = __toCommonJS(route_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const route = (0, import_tool.defineTool)({ + capability: "network", + schema: { + name: "browser_route", + title: "Mock network requests", + description: "Set up a route to mock network requests matching a URL pattern", + inputSchema: import_zodBundle.z.object({ + pattern: import_zodBundle.z.string().describe('URL pattern to match (e.g., "**/api/users", "**/*.{png,jpg}")'), + status: import_zodBundle.z.number().optional().describe("HTTP status code to return (default: 200)"), + body: import_zodBundle.z.string().optional().describe("Response body (text or JSON string)"), + contentType: import_zodBundle.z.string().optional().describe('Content-Type header (e.g., "application/json", "text/html")'), + headers: import_zodBundle.z.array(import_zodBundle.z.string()).optional().describe('Headers to add in "Name: Value" format'), + removeHeaders: import_zodBundle.z.string().optional().describe("Comma-separated list of header names to remove from request") + }), + type: "action" + }, + handle: async (context, params, response) => { + const addHeaders = params.headers ? Object.fromEntries(params.headers.map((h) => { + const colonIndex = h.indexOf(":"); + return [h.substring(0, colonIndex).trim(), h.substring(colonIndex + 1).trim()]; + })) : void 0; + const removeHeaders = params.removeHeaders ? params.removeHeaders.split(",").map((h) => h.trim()) : void 0; + const handler = async (route2) => { + if (params.body !== void 0 || params.status !== void 0) { + await route2.fulfill({ + status: params.status ?? 200, + contentType: params.contentType, + body: params.body + }); + return; + } + const headers = { ...route2.request().headers() }; + if (addHeaders) { + for (const [key, value] of Object.entries(addHeaders)) + headers[key] = value; + } + if (removeHeaders) { + for (const header of removeHeaders) + delete headers[header.toLowerCase()]; + } + await route2.continue({ headers }); + }; + const entry = { + pattern: params.pattern, + status: params.status, + body: params.body, + contentType: params.contentType, + addHeaders, + removeHeaders, + handler + }; + await context.addRoute(entry); + response.addTextResult(`Route added for pattern: ${params.pattern}`); + response.addCode(`await page.context().route('${params.pattern}', async route => { /* route handler */ });`); + } +}); +const routeList = (0, import_tool.defineTool)({ + capability: "network", + schema: { + name: "browser_route_list", + title: "List network routes", + description: "List all active network routes", + inputSchema: import_zodBundle.z.object({}), + type: "readOnly" + }, + handle: async (context, params, response) => { + const routes = context.routes(); + if (routes.length === 0) { + response.addTextResult("No active routes"); + return; + } + const lines = []; + for (let i = 0; i < routes.length; i++) { + const route2 = routes[i]; + const details = []; + if (route2.status !== void 0) + details.push(`status=${route2.status}`); + if (route2.body !== void 0) + details.push(`body=${route2.body.length > 50 ? route2.body.substring(0, 50) + "..." : route2.body}`); + if (route2.contentType) + details.push(`contentType=${route2.contentType}`); + if (route2.addHeaders) + details.push(`addHeaders=${JSON.stringify(route2.addHeaders)}`); + if (route2.removeHeaders) + details.push(`removeHeaders=${route2.removeHeaders.join(",")}`); + const detailsStr = details.length ? ` (${details.join(", ")})` : ""; + lines.push(`${i + 1}. ${route2.pattern}${detailsStr}`); + } + response.addTextResult(lines.join("\n")); + } +}); +const unroute = (0, import_tool.defineTool)({ + capability: "network", + schema: { + name: "browser_unroute", + title: "Remove network routes", + description: "Remove network routes matching a pattern (or all routes if no pattern specified)", + inputSchema: import_zodBundle.z.object({ + pattern: import_zodBundle.z.string().optional().describe("URL pattern to unroute (omit to remove all routes)") + }), + type: "action" + }, + handle: async (context, params, response) => { + const removed = await context.removeRoute(params.pattern); + if (params.pattern) + response.addTextResult(`Removed ${removed} route(s) for pattern: ${params.pattern}`); + else + response.addTextResult(`Removed all ${removed} route(s)`); + } +}); +var route_default = [ + route, + routeList, + unroute +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/runCode.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/runCode.js new file mode 100644 index 00000000..ed36df7a --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/runCode.js @@ -0,0 +1,77 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var runCode_exports = {}; +__export(runCode_exports, { + default: () => runCode_default +}); +module.exports = __toCommonJS(runCode_exports); +var import_fs = __toESM(require("fs")); +var import_vm = __toESM(require("vm")); +var import_manualPromise = require("../../utils/isomorphic/manualPromise"); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const codeSchema = import_zodBundle.z.object({ + code: import_zodBundle.z.string().optional().describe(`A JavaScript function containing Playwright code to execute. It will be invoked with a single argument, page, which you can use for any page interaction. For example: \`async (page) => { await page.getByRole('button', { name: 'Submit' }).click(); return await page.title(); }\``), + filename: import_zodBundle.z.string().optional().describe("Load code from the specified file. If both code and filename are provided, code will be ignored.") +}); +const runCode = (0, import_tool.defineTabTool)({ + capability: "core", + schema: { + name: "browser_run_code", + title: "Run Playwright code", + description: "Run Playwright code snippet", + inputSchema: codeSchema, + type: "action" + }, + handle: async (tab, params, response) => { + let code = params.code; + if (params.filename) { + const resolvedPath = await response.resolveClientFilename(params.filename); + code = await import_fs.default.promises.readFile(resolvedPath, "utf-8"); + } + response.addCode(`await (${code})(page);`); + const __end__ = new import_manualPromise.ManualPromise(); + const context = { + page: tab.page, + __end__ + }; + import_vm.default.createContext(context); + await tab.waitForCompletion(async () => { + context.__fn__ = import_vm.default.runInContext("(" + code + ")", context); + const snippet = "(async () => {\n try {\n const result = await __fn__(page);\n __end__.resolve(JSON.stringify(result));\n } catch (e) {\n __end__.reject(e);\n }\n})()"; + await import_vm.default.runInContext(snippet, context); + const result = await __end__; + if (typeof result === "string") + response.addTextResult(result); + }); + } +}); +var runCode_default = [ + runCode +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/screenshot.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/screenshot.js new file mode 100644 index 00000000..605b8cfa --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/screenshot.js @@ -0,0 +1,88 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var screenshot_exports = {}; +__export(screenshot_exports, { + default: () => screenshot_default, + scaleImageToFitMessage: () => scaleImageToFitMessage +}); +module.exports = __toCommonJS(screenshot_exports); +var import_imageUtils = require("../../utils/isomorphic/imageUtils"); +var import_utilsBundle = require("../../utilsBundle"); +var import_stringUtils = require("../../utils/isomorphic/stringUtils"); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const screenshotSchema = import_zodBundle.z.object({ + type: import_zodBundle.z.enum(["png", "jpeg"]).default("png").describe("Image format for the screenshot. Default is png."), + filename: import_zodBundle.z.string().optional().describe("File name to save the screenshot to. Defaults to `page-{timestamp}.{png|jpeg}` if not specified. Prefer relative file names to stay within the output directory."), + element: import_zodBundle.z.string().optional().describe("Human-readable element description used to obtain permission to screenshot the element. If not provided, the screenshot will be taken of viewport. If element is provided, ref must be provided too."), + ref: import_zodBundle.z.string().optional().describe("Exact target element reference from the page snapshot. If not provided, the screenshot will be taken of viewport. If ref is provided, element must be provided too."), + selector: import_zodBundle.z.string().optional().describe('CSS or role selector for the target element, when "ref" is not available.'), + fullPage: import_zodBundle.z.boolean().optional().describe("When true, takes a screenshot of the full scrollable page, instead of the currently visible viewport. Cannot be used with element screenshots.") +}); +const screenshot = (0, import_tool.defineTabTool)({ + capability: "core", + schema: { + name: "browser_take_screenshot", + title: "Take a screenshot", + description: `Take a screenshot of the current page. You can't perform actions based on the screenshot, use browser_snapshot for actions.`, + inputSchema: screenshotSchema, + type: "readOnly" + }, + handle: async (tab, params, response) => { + if (params.fullPage && params.ref) + throw new Error("fullPage cannot be used with element screenshots."); + const fileType = params.type || "png"; + const options = { + type: fileType, + quality: fileType === "png" ? void 0 : 90, + scale: "css", + ...tab.actionTimeoutOptions, + ...params.fullPage !== void 0 && { fullPage: params.fullPage } + }; + const screenshotTarget = params.ref ? params.element || "element" : params.fullPage ? "full page" : "viewport"; + const ref = params.ref || params.selector ? await tab.refLocator({ element: params.element || "", ref: params.ref || "", selector: params.selector }) : null; + const data = ref ? await ref.locator.screenshot(options) : await tab.page.screenshot(options); + const resolvedFile = await response.resolveClientFile({ prefix: ref ? "element" : "page", ext: fileType, suggestedFilename: params.filename }, `Screenshot of ${screenshotTarget}`); + response.addCode(`// Screenshot ${screenshotTarget} and save it as ${resolvedFile.relativeName}`); + if (ref) + response.addCode(`await page.${ref.resolved}.screenshot(${(0, import_stringUtils.formatObject)({ ...options, path: resolvedFile.relativeName })});`); + else + response.addCode(`await page.screenshot(${(0, import_stringUtils.formatObject)({ ...options, path: resolvedFile.relativeName })});`); + await response.addFileResult(resolvedFile, data); + await response.registerImageResult(data, fileType); + } +}); +function scaleImageToFitMessage(buffer, imageType) { + const image = imageType === "png" ? import_utilsBundle.PNG.sync.read(buffer) : import_utilsBundle.jpegjs.decode(buffer, { maxMemoryUsageInMB: 512 }); + const pixels = image.width * image.height; + const shrink = Math.min(1568 / image.width, 1568 / image.height, Math.sqrt(1.15 * 1024 * 1024 / pixels)); + if (shrink > 1) + return buffer; + const width = image.width * shrink | 0; + const height = image.height * shrink | 0; + const scaledImage = (0, import_imageUtils.scaleImageToSize)(image, { width, height }); + return imageType === "png" ? import_utilsBundle.PNG.sync.write(scaledImage) : import_utilsBundle.jpegjs.encode(scaledImage, 80).data; +} +var screenshot_default = [ + screenshot +]; +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + scaleImageToFitMessage +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/sessionLog.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/sessionLog.js new file mode 100644 index 00000000..e930ae8f --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/sessionLog.js @@ -0,0 +1,74 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var sessionLog_exports = {}; +__export(sessionLog_exports, { + SessionLog: () => SessionLog +}); +module.exports = __toCommonJS(sessionLog_exports); +var import_fs = __toESM(require("fs")); +var import_path = __toESM(require("path")); +var import_context = require("./context"); +var import_response = require("./response"); +class SessionLog { + constructor(sessionFolder, cwd) { + this._sessionFileQueue = Promise.resolve(); + this._folder = sessionFolder; + this._file = import_path.default.join(this._folder, "session.md"); + this._cwd = cwd; + } + static async create(config, cwd) { + const sessionFolder = await (0, import_context.outputFile)({ config, cwd }, `session-${Date.now()}`, { origin: "code" }); + await import_fs.default.promises.mkdir(sessionFolder, { recursive: true }); + console.error(`Session: ${sessionFolder}`); + return new SessionLog(sessionFolder, cwd); + } + logResponse(toolName, toolArgs, responseObject) { + const parsed = { ...(0, import_response.parseResponse)(responseObject, this._cwd), text: void 0 }; + const lines = [""]; + lines.push( + `### Tool call: ${toolName}`, + `- Args`, + "```json", + JSON.stringify(toolArgs, null, 2), + "```" + ); + if (parsed) { + lines.push(`- Result`); + lines.push("```json"); + lines.push(JSON.stringify(parsed, null, 2)); + lines.push("```"); + } + lines.push(""); + this._sessionFileQueue = this._sessionFileQueue.then(() => import_fs.default.promises.appendFile(this._file, lines.join("\n"))); + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + SessionLog +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/snapshot.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/snapshot.js new file mode 100644 index 00000000..7f425452 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/snapshot.js @@ -0,0 +1,208 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var snapshot_exports = {}; +__export(snapshot_exports, { + default: () => snapshot_default, + elementSchema: () => elementSchema +}); +module.exports = __toCommonJS(snapshot_exports); +var import_zodBundle = require("../../zodBundle"); +var import_stringUtils = require("../../utils/isomorphic/stringUtils"); +var import_tool = require("./tool"); +const snapshot = (0, import_tool.defineTool)({ + capability: "core", + schema: { + name: "browser_snapshot", + title: "Page snapshot", + description: "Capture accessibility snapshot of the current page, this is better than screenshot", + inputSchema: import_zodBundle.z.object({ + filename: import_zodBundle.z.string().optional().describe("Save snapshot to markdown file instead of returning it in the response."), + selector: import_zodBundle.z.string().optional().describe("Element selector of the root element to capture a partial snapshot instead of the whole page"), + depth: import_zodBundle.z.number().optional().describe("Limit the depth of the snapshot tree") + }), + type: "readOnly" + }, + handle: async (context, params, response) => { + await context.ensureTab(); + response.setIncludeFullSnapshot(params.filename, params.selector, params.depth); + } +}); +const elementSchema = import_zodBundle.z.object({ + element: import_zodBundle.z.string().optional().describe("Human-readable element description used to obtain permission to interact with the element"), + ref: import_zodBundle.z.string().describe("Exact target element reference from the page snapshot"), + selector: import_zodBundle.z.string().optional().describe('CSS or role selector for the target element, when "ref" is not available') +}); +const clickSchema = elementSchema.extend({ + doubleClick: import_zodBundle.z.boolean().optional().describe("Whether to perform a double click instead of a single click"), + button: import_zodBundle.z.enum(["left", "right", "middle"]).optional().describe("Button to click, defaults to left"), + modifiers: import_zodBundle.z.array(import_zodBundle.z.enum(["Alt", "Control", "ControlOrMeta", "Meta", "Shift"])).optional().describe("Modifier keys to press") +}); +const click = (0, import_tool.defineTabTool)({ + capability: "core", + schema: { + name: "browser_click", + title: "Click", + description: "Perform click on a web page", + inputSchema: clickSchema, + type: "input" + }, + handle: async (tab, params, response) => { + response.setIncludeSnapshot(); + const { locator, resolved } = await tab.refLocator(params); + const options = { + button: params.button, + modifiers: params.modifiers, + ...tab.actionTimeoutOptions + }; + const optionsArg = (0, import_stringUtils.formatObjectOrVoid)(options); + if (params.doubleClick) + response.addCode(`await page.${resolved}.dblclick(${optionsArg});`); + else + response.addCode(`await page.${resolved}.click(${optionsArg});`); + await tab.waitForCompletion(async () => { + if (params.doubleClick) + await locator.dblclick(options); + else + await locator.click(options); + }); + } +}); +const drag = (0, import_tool.defineTabTool)({ + capability: "core", + schema: { + name: "browser_drag", + title: "Drag mouse", + description: "Perform drag and drop between two elements", + inputSchema: import_zodBundle.z.object({ + startElement: import_zodBundle.z.string().describe("Human-readable source element description used to obtain the permission to interact with the element"), + startRef: import_zodBundle.z.string().describe("Exact source element reference from the page snapshot"), + startSelector: import_zodBundle.z.string().optional().describe("CSS or role selector for the source element, when ref is not available"), + endElement: import_zodBundle.z.string().describe("Human-readable target element description used to obtain the permission to interact with the element"), + endRef: import_zodBundle.z.string().describe("Exact target element reference from the page snapshot"), + endSelector: import_zodBundle.z.string().optional().describe("CSS or role selector for the target element, when ref is not available") + }), + type: "input" + }, + handle: async (tab, params, response) => { + response.setIncludeSnapshot(); + const [start, end] = await tab.refLocators([ + { ref: params.startRef, selector: params.startSelector, element: params.startElement }, + { ref: params.endRef, selector: params.endSelector, element: params.endElement } + ]); + await tab.waitForCompletion(async () => { + await start.locator.dragTo(end.locator, tab.actionTimeoutOptions); + }); + response.addCode(`await page.${start.resolved}.dragTo(page.${end.resolved});`); + } +}); +const hover = (0, import_tool.defineTabTool)({ + capability: "core", + schema: { + name: "browser_hover", + title: "Hover mouse", + description: "Hover over element on page", + inputSchema: elementSchema, + type: "input" + }, + handle: async (tab, params, response) => { + response.setIncludeSnapshot(); + const { locator, resolved } = await tab.refLocator(params); + response.addCode(`await page.${resolved}.hover();`); + await locator.hover(tab.actionTimeoutOptions); + } +}); +const selectOptionSchema = elementSchema.extend({ + values: import_zodBundle.z.array(import_zodBundle.z.string()).describe("Array of values to select in the dropdown. This can be a single value or multiple values.") +}); +const selectOption = (0, import_tool.defineTabTool)({ + capability: "core", + schema: { + name: "browser_select_option", + title: "Select option", + description: "Select an option in a dropdown", + inputSchema: selectOptionSchema, + type: "input" + }, + handle: async (tab, params, response) => { + response.setIncludeSnapshot(); + const { locator, resolved } = await tab.refLocator(params); + response.addCode(`await page.${resolved}.selectOption(${(0, import_stringUtils.formatObject)(params.values)});`); + await locator.selectOption(params.values, tab.actionTimeoutOptions); + } +}); +const pickLocator = (0, import_tool.defineTabTool)({ + capability: "testing", + schema: { + name: "browser_generate_locator", + title: "Create locator for element", + description: "Generate locator for the given element to use in tests", + inputSchema: elementSchema, + type: "readOnly" + }, + handle: async (tab, params, response) => { + const { resolved } = await tab.refLocator(params); + response.addTextResult(resolved); + } +}); +const check = (0, import_tool.defineTabTool)({ + capability: "core-input", + skillOnly: true, + schema: { + name: "browser_check", + title: "Check", + description: "Check a checkbox or radio button", + inputSchema: elementSchema, + type: "input" + }, + handle: async (tab, params, response) => { + const { locator, resolved } = await tab.refLocator(params); + response.addCode(`await page.${resolved}.check();`); + await locator.check(tab.actionTimeoutOptions); + } +}); +const uncheck = (0, import_tool.defineTabTool)({ + capability: "core-input", + skillOnly: true, + schema: { + name: "browser_uncheck", + title: "Uncheck", + description: "Uncheck a checkbox or radio button", + inputSchema: elementSchema, + type: "input" + }, + handle: async (tab, params, response) => { + const { locator, resolved } = await tab.refLocator(params); + response.addCode(`await page.${resolved}.uncheck();`); + await locator.uncheck(tab.actionTimeoutOptions); + } +}); +var snapshot_default = [ + snapshot, + click, + drag, + hover, + selectOption, + pickLocator, + check, + uncheck +]; +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + elementSchema +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/storage.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/storage.js new file mode 100644 index 00000000..23543316 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/storage.js @@ -0,0 +1,68 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var storage_exports = {}; +__export(storage_exports, { + default: () => storage_default +}); +module.exports = __toCommonJS(storage_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const storageState = (0, import_tool.defineTool)({ + capability: "storage", + schema: { + name: "browser_storage_state", + title: "Save storage state", + description: "Save storage state (cookies, local storage) to a file for later reuse", + inputSchema: import_zodBundle.z.object({ + filename: import_zodBundle.z.string().optional().describe("File name to save the storage state to. Defaults to `storage-state-{timestamp}.json` if not specified.") + }), + type: "readOnly" + }, + handle: async (context, params, response) => { + const browserContext = await context.ensureBrowserContext(); + const state = await browserContext.storageState(); + const serializedState = JSON.stringify(state, null, 2); + const resolvedFile = await response.resolveClientFile({ prefix: "storage-state", ext: "json", suggestedFilename: params.filename }, "Storage state"); + response.addCode(`await page.context().storageState({ path: '${resolvedFile.relativeName}' });`); + await response.addFileResult(resolvedFile, serializedState); + } +}); +const setStorageState = (0, import_tool.defineTool)({ + capability: "storage", + schema: { + name: "browser_set_storage_state", + title: "Restore storage state", + description: "Restore storage state (cookies, local storage) from a file. This clears existing cookies and local storage before restoring.", + inputSchema: import_zodBundle.z.object({ + filename: import_zodBundle.z.string().describe("Path to the storage state file to restore from") + }), + type: "action" + }, + handle: async (context, params, response) => { + const browserContext = await context.ensureBrowserContext(); + const resolvedFilename = await response.resolveClientFilename(params.filename); + await browserContext.setStorageState(resolvedFilename); + response.addTextResult(`Storage state restored from ${params.filename}`); + response.addCode(`await page.context().setStorageState('${params.filename}');`); + } +}); +var storage_default = [ + storageState, + setStorageState +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/tab.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/tab.js new file mode 100644 index 00000000..e354efb1 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/tab.js @@ -0,0 +1,445 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var tab_exports = {}; +__export(tab_exports, { + Tab: () => Tab, + renderModalStates: () => renderModalStates, + shouldIncludeMessage: () => shouldIncludeMessage +}); +module.exports = __toCommonJS(tab_exports); +var import_url = __toESM(require("url")); +var import_events = require("events"); +var import_locatorGenerators = require("../../utils/isomorphic/locatorGenerators"); +var import_locatorParser = require("../../utils/isomorphic/locatorParser"); +var import_manualPromise = require("../../utils/isomorphic/manualPromise"); +var import_utilsBundle = require("../../utilsBundle"); +var import_eventsHelper = require("../../server/utils/eventsHelper"); +var import_disposable = require("../../server/utils/disposable"); +var import_utils = require("./utils"); +var import_logFile = require("./logFile"); +var import_dialogs = require("./dialogs"); +var import_files = require("./files"); +const TabEvents = { + modalState: "modalState" +}; +class Tab extends import_events.EventEmitter { + constructor(context, page, onPageClose) { + super(); + this._lastHeader = { title: "about:blank", url: "about:blank", current: false, console: { total: 0, warnings: 0, errors: 0 } }; + this._downloads = []; + this._requests = []; + this._modalStates = []; + this._recentEventEntries = []; + this.context = context; + this.page = page; + this._onPageClose = onPageClose; + const p = page; + this._disposables = [ + import_eventsHelper.eventsHelper.addEventListener(p, "console", (event) => this._handleConsoleMessage(messageToConsoleMessage(event))), + import_eventsHelper.eventsHelper.addEventListener(p, "pageerror", (error) => this._handleConsoleMessage(pageErrorToConsoleMessage(error))), + import_eventsHelper.eventsHelper.addEventListener(p, "request", (request) => this._handleRequest(request)), + import_eventsHelper.eventsHelper.addEventListener(p, "response", (response) => this._handleResponse(response)), + import_eventsHelper.eventsHelper.addEventListener(p, "requestfailed", (request) => this._handleRequestFailed(request)), + import_eventsHelper.eventsHelper.addEventListener(p, "close", () => this._onClose()), + import_eventsHelper.eventsHelper.addEventListener(p, "filechooser", (chooser) => { + this.setModalState({ + type: "fileChooser", + description: "File chooser", + fileChooser: chooser, + clearedBy: { tool: import_files.uploadFile.schema.name, skill: "upload" } + }); + }), + import_eventsHelper.eventsHelper.addEventListener(p, "dialog", (dialog) => this._dialogShown(dialog)), + import_eventsHelper.eventsHelper.addEventListener(p, "download", (download) => { + void this._downloadStarted(download); + }) + ]; + page[tabSymbol] = this; + const wallTime = Date.now(); + this._consoleLog = new import_logFile.LogFile(this.context, wallTime, "console", "Console"); + this._initializedPromise = this._initialize(); + this.actionTimeoutOptions = { timeout: context.config.timeouts?.action }; + this.navigationTimeoutOptions = { timeout: context.config.timeouts?.navigation }; + this.expectTimeoutOptions = { timeout: context.config.timeouts?.expect }; + } + async dispose() { + await (0, import_disposable.disposeAll)(this._disposables); + this._consoleLog.stop(); + } + static forPage(page) { + return page[tabSymbol]; + } + static async collectConsoleMessages(page) { + const result = []; + const messages = await page.consoleMessages().catch(() => []); + for (const message of messages) + result.push(messageToConsoleMessage(message)); + const errors = await page.pageErrors().catch(() => []); + for (const error of errors) + result.push(pageErrorToConsoleMessage(error)); + return result; + } + async _initialize() { + for (const message of await Tab.collectConsoleMessages(this.page)) + this._handleConsoleMessage(message); + const requests = await this.page.requests().catch(() => []); + for (const request of requests.filter((r) => r.existingResponse() || r.failure())) + this._requests.push(request); + for (const initPage of this.context.config.browser?.initPage || []) { + try { + const { default: func } = await import(import_url.default.pathToFileURL(initPage).href); + await func({ page: this.page }); + } catch (e) { + (0, import_utilsBundle.debug)("pw:tools:error")(e); + } + } + } + modalStates() { + return this._modalStates; + } + setModalState(modalState) { + this._modalStates.push(modalState); + this.emit(TabEvents.modalState, modalState); + } + clearModalState(modalState) { + this._modalStates = this._modalStates.filter((state) => state !== modalState); + } + _dialogShown(dialog) { + this.setModalState({ + type: "dialog", + description: `"${dialog.type()}" dialog with message "${dialog.message()}"`, + dialog, + clearedBy: { tool: import_dialogs.handleDialog.schema.name, skill: "dialog-accept or dialog-dismiss" } + }); + } + async _downloadStarted(download) { + const outputFile = await this.context.outputFile({ suggestedFilename: sanitizeForFilePath(download.suggestedFilename()), prefix: "download", ext: "bin" }, { origin: "code" }); + const entry = { + download, + finished: false, + outputFile + }; + this._downloads.push(entry); + this._addLogEntry({ type: "download-start", wallTime: Date.now(), download: entry }); + await download.saveAs(entry.outputFile); + entry.finished = true; + this._addLogEntry({ type: "download-finish", wallTime: Date.now(), download: entry }); + } + _clearCollectedArtifacts() { + this._downloads.length = 0; + this._requests.length = 0; + this._recentEventEntries.length = 0; + this._resetLogs(); + } + _resetLogs() { + const wallTime = Date.now(); + this._consoleLog.stop(); + this._consoleLog = new import_logFile.LogFile(this.context, wallTime, "console", "Console"); + } + _handleRequest(request) { + this._requests.push(request); + const wallTime = request.timing().startTime || Date.now(); + this._addLogEntry({ type: "request", wallTime, request }); + } + _handleResponse(response) { + const timing = response.request().timing(); + const wallTime = timing.responseStart + timing.startTime; + this._addLogEntry({ type: "request", wallTime, request: response.request() }); + } + _handleRequestFailed(request) { + this._requests.push(request); + const timing = request.timing(); + const wallTime = timing.responseEnd + timing.startTime; + this._addLogEntry({ type: "request", wallTime, request }); + } + _handleConsoleMessage(message) { + const wallTime = message.timestamp; + this._addLogEntry({ type: "console", wallTime, message }); + if (shouldIncludeMessage(this.context.config.console?.level, message.type)) + this._consoleLog.appendLine(wallTime, message.toString()); + } + _addLogEntry(entry) { + this._recentEventEntries.push(entry); + } + _onClose() { + this._clearCollectedArtifacts(); + this._onPageClose(this); + } + async headerSnapshot() { + let title; + await this._raceAgainstModalStates(async () => { + title = await this.page.title(); + }); + const newHeader = { + title: title ?? "", + url: this.page.url(), + current: this.isCurrentTab(), + console: await this.consoleMessageCount() + }; + if (!tabHeaderEquals(this._lastHeader, newHeader)) { + this._lastHeader = newHeader; + return { ...this._lastHeader, changed: true }; + } + return { ...this._lastHeader, changed: false }; + } + isCurrentTab() { + return this === this.context.currentTab(); + } + async waitForLoadState(state, options) { + await this._initializedPromise; + await this.page.waitForLoadState(state, options).catch((e) => (0, import_utilsBundle.debug)("pw:tools:error")(e)); + } + async navigate(url2) { + await this._initializedPromise; + this._clearCollectedArtifacts(); + const { promise: downloadEvent, abort: abortDownloadEvent } = (0, import_utils.eventWaiter)(this.page, "download", 3e3); + try { + await this.page.goto(url2, { waitUntil: "domcontentloaded", ...this.navigationTimeoutOptions }); + abortDownloadEvent(); + } catch (_e) { + const e = _e; + const mightBeDownload = e.message.includes("net::ERR_ABORTED") || e.message.includes("Download is starting"); + if (!mightBeDownload) + throw e; + const download = await downloadEvent; + if (!download) + throw e; + await new Promise((resolve) => setTimeout(resolve, 500)); + return; + } + await this.waitForLoadState("load", { timeout: 5e3 }); + } + async consoleMessageCount() { + await this._initializedPromise; + const messages = await this.page.consoleMessages({ filter: "since-navigation" }); + const pageErrors = await this.page.pageErrors({ filter: "since-navigation" }); + let errors = pageErrors.length; + let warnings = 0; + for (const message of messages) { + if (message.type() === "error") + errors++; + else if (message.type() === "warning") + warnings++; + } + return { total: messages.length + pageErrors.length, errors, warnings }; + } + async consoleMessages(level, all) { + await this._initializedPromise; + const result = []; + const messages = await this.page.consoleMessages({ filter: all ? "all" : "since-navigation" }); + for (const message of messages) { + const cm = messageToConsoleMessage(message); + if (shouldIncludeMessage(level, cm.type)) + result.push(cm); + } + if (shouldIncludeMessage(level, "error")) { + const errors = await this.page.pageErrors({ filter: all ? "all" : "since-navigation" }); + for (const error of errors) + result.push(pageErrorToConsoleMessage(error)); + } + return result; + } + async clearConsoleMessages() { + await this._initializedPromise; + await Promise.all([ + this.page.clearConsoleMessages(), + this.page.clearPageErrors() + ]); + } + async requests() { + await this._initializedPromise; + return this._requests; + } + async clearRequests() { + await this._initializedPromise; + this._requests.length = 0; + } + async captureSnapshot(selector, depth, relativeTo) { + await this._initializedPromise; + let tabSnapshot; + const modalStates = await this._raceAgainstModalStates(async () => { + const ariaSnapshot = selector ? await this.page.locator(selector).ariaSnapshot({ mode: "ai", depth }) : await this.page.ariaSnapshot({ mode: "ai", depth }); + tabSnapshot = { + ariaSnapshot, + modalStates: [], + events: [] + }; + }); + if (tabSnapshot) { + tabSnapshot.consoleLink = await this._consoleLog.take(relativeTo); + tabSnapshot.events = this._recentEventEntries; + this._recentEventEntries = []; + } + return tabSnapshot ?? { + ariaSnapshot: "", + modalStates, + events: [] + }; + } + _javaScriptBlocked() { + return this._modalStates.some((state) => state.type === "dialog"); + } + async _raceAgainstModalStates(action) { + if (this.modalStates().length) + return this.modalStates(); + const promise = new import_manualPromise.ManualPromise(); + const listener = (modalState) => promise.resolve([modalState]); + this.once(TabEvents.modalState, listener); + return await Promise.race([ + action().then(() => { + this.off(TabEvents.modalState, listener); + return []; + }), + promise + ]); + } + async waitForCompletion(callback) { + await this._initializedPromise; + await this._raceAgainstModalStates(() => (0, import_utils.waitForCompletion)(this, callback)); + } + async refLocator(params) { + await this._initializedPromise; + return (await this.refLocators([params]))[0]; + } + async refLocators(params) { + await this._initializedPromise; + return Promise.all(params.map(async (param) => { + if (param.selector) { + const selector = (0, import_locatorParser.locatorOrSelectorAsSelector)("javascript", param.selector, this.context.config.testIdAttribute || "data-testid"); + const handle = await this.page.$(selector); + if (!handle) + throw new Error(`"${param.selector}" does not match any elements.`); + handle.dispose().catch(() => { + }); + return { locator: this.page.locator(selector), resolved: (0, import_locatorGenerators.asLocator)("javascript", selector) }; + } else { + try { + let locator = this.page.locator(`aria-ref=${param.ref}`); + if (param.element) + locator = locator.describe(param.element); + const resolved = await locator.normalize(); + return { locator, resolved: resolved.toString() }; + } catch (e) { + throw new Error(`Ref ${param.ref} not found in the current page snapshot. Try capturing new snapshot.`); + } + } + })); + } + async waitForTimeout(time) { + if (this._javaScriptBlocked()) { + await new Promise((f) => setTimeout(f, time)); + return; + } + await this.page.evaluate(() => new Promise((f) => setTimeout(f, 1e3))).catch(() => { + }); + } +} +function messageToConsoleMessage(message) { + return { + type: message.type(), + timestamp: message.timestamp(), + text: message.text(), + toString: () => `[${message.type().toUpperCase()}] ${message.text()} @ ${message.location().url}:${message.location().lineNumber}` + }; +} +function pageErrorToConsoleMessage(errorOrValue) { + if (errorOrValue instanceof Error) { + return { + type: "error", + timestamp: Date.now(), + text: errorOrValue.message, + toString: () => errorOrValue.stack || errorOrValue.message + }; + } + return { + type: "error", + timestamp: Date.now(), + text: String(errorOrValue), + toString: () => String(errorOrValue) + }; +} +function renderModalStates(config, modalStates) { + const result = []; + if (modalStates.length === 0) + result.push("- There is no modal state present"); + for (const state of modalStates) + result.push(`- [${state.description}]: can be handled by ${config.skillMode ? state.clearedBy.skill : state.clearedBy.tool}`); + return result; +} +const consoleMessageLevels = ["error", "warning", "info", "debug"]; +function shouldIncludeMessage(thresholdLevel, type) { + const messageLevel = consoleLevelForMessageType(type); + return consoleMessageLevels.indexOf(messageLevel) <= consoleMessageLevels.indexOf(thresholdLevel || "info"); +} +function consoleLevelForMessageType(type) { + switch (type) { + case "assert": + case "error": + return "error"; + case "warning": + return "warning"; + case "count": + case "dir": + case "dirxml": + case "info": + case "log": + case "table": + case "time": + case "timeEnd": + return "info"; + case "clear": + case "debug": + case "endGroup": + case "profile": + case "profileEnd": + case "startGroup": + case "startGroupCollapsed": + case "trace": + return "debug"; + default: + return "info"; + } +} +const tabSymbol = Symbol("tabSymbol"); +function sanitizeForFilePath(s) { + const sanitize = (s2) => s2.replace(/[\x00-\x2C\x2E-\x2F\x3A-\x40\x5B-\x60\x7B-\x7F]+/g, "-"); + const separator = s.lastIndexOf("."); + if (separator === -1) + return sanitize(s); + return sanitize(s.substring(0, separator)) + "." + sanitize(s.substring(separator + 1)); +} +function tabHeaderEquals(a, b) { + return a.title === b.title && a.url === b.url && a.current === b.current && a.console.errors === b.console.errors && a.console.warnings === b.console.warnings && a.console.total === b.console.total; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + Tab, + renderModalStates, + shouldIncludeMessage +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/tabs.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/tabs.js new file mode 100644 index 00000000..5d622af0 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/tabs.js @@ -0,0 +1,67 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var tabs_exports = {}; +__export(tabs_exports, { + default: () => tabs_default +}); +module.exports = __toCommonJS(tabs_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +var import_response = require("./response"); +const browserTabs = (0, import_tool.defineTool)({ + capability: "core-tabs", + schema: { + name: "browser_tabs", + title: "Manage tabs", + description: "List, create, close, or select a browser tab.", + inputSchema: import_zodBundle.z.object({ + action: import_zodBundle.z.enum(["list", "new", "close", "select"]).describe("Operation to perform"), + index: import_zodBundle.z.number().optional().describe("Tab index, used for close/select. If omitted for close, current tab is closed.") + }), + type: "action" + }, + handle: async (context, params, response) => { + switch (params.action) { + case "list": { + await context.ensureTab(); + break; + } + case "new": { + await context.newTab(); + break; + } + case "close": { + await context.closeTab(params.index); + break; + } + case "select": { + if (params.index === void 0) + throw new Error("Tab index is required"); + await context.selectTab(params.index); + break; + } + } + const tabHeaders = await Promise.all(context.tabs().map((tab) => tab.headerSnapshot())); + const result = (0, import_response.renderTabsMarkdown)(tabHeaders); + response.addTextResult(result.join("\n")); + } +}); +var tabs_default = [ + browserTabs +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/tool.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/tool.js new file mode 100644 index 00000000..a6161ac3 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/tool.js @@ -0,0 +1,47 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var tool_exports = {}; +__export(tool_exports, { + defineTabTool: () => defineTabTool, + defineTool: () => defineTool +}); +module.exports = __toCommonJS(tool_exports); +function defineTool(tool) { + return tool; +} +function defineTabTool(tool) { + return { + ...tool, + handle: async (context, params, response) => { + const tab = await context.ensureTab(); + const modalStates = tab.modalStates().map((state) => state.type); + if (tool.clearsModalState && !modalStates.includes(tool.clearsModalState)) + response.addError(`Error: The tool "${tool.schema.name}" can only be used when there is related modal state present.`); + else if (!tool.clearsModalState && modalStates.length) + response.addError(`Error: Tool "${tool.schema.name}" does not handle the modal state.`); + else + return tool.handle(tab, params, response); + } + }; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + defineTabTool, + defineTool +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/tools.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/tools.js new file mode 100644 index 00000000..c274894a --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/tools.js @@ -0,0 +1,102 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var tools_exports = {}; +__export(tools_exports, { + browserTools: () => browserTools, + filteredTools: () => filteredTools +}); +module.exports = __toCommonJS(tools_exports); +var import_zodBundle = require("../../zodBundle"); +var import_common = __toESM(require("./common")); +var import_config = __toESM(require("./config")); +var import_console = __toESM(require("./console")); +var import_cookies = __toESM(require("./cookies")); +var import_devtools = __toESM(require("./devtools")); +var import_dialogs = __toESM(require("./dialogs")); +var import_evaluate = __toESM(require("./evaluate")); +var import_files = __toESM(require("./files")); +var import_form = __toESM(require("./form")); +var import_keyboard = __toESM(require("./keyboard")); +var import_mouse = __toESM(require("./mouse")); +var import_navigate = __toESM(require("./navigate")); +var import_network = __toESM(require("./network")); +var import_pdf = __toESM(require("./pdf")); +var import_route = __toESM(require("./route")); +var import_runCode = __toESM(require("./runCode")); +var import_snapshot = __toESM(require("./snapshot")); +var import_screenshot = __toESM(require("./screenshot")); +var import_storage = __toESM(require("./storage")); +var import_tabs = __toESM(require("./tabs")); +var import_tracing = __toESM(require("./tracing")); +var import_verify = __toESM(require("./verify")); +var import_video = __toESM(require("./video")); +var import_wait = __toESM(require("./wait")); +var import_webstorage = __toESM(require("./webstorage")); +const browserTools = [ + ...import_common.default, + ...import_config.default, + ...import_console.default, + ...import_cookies.default, + ...import_devtools.default, + ...import_dialogs.default, + ...import_evaluate.default, + ...import_files.default, + ...import_form.default, + ...import_keyboard.default, + ...import_mouse.default, + ...import_navigate.default, + ...import_network.default, + ...import_pdf.default, + ...import_route.default, + ...import_runCode.default, + ...import_screenshot.default, + ...import_snapshot.default, + ...import_storage.default, + ...import_tabs.default, + ...import_tracing.default, + ...import_verify.default, + ...import_video.default, + ...import_wait.default, + ...import_webstorage.default +]; +function filteredTools(config2) { + return browserTools.filter((tool) => tool.capability.startsWith("core") || config2.capabilities?.includes(tool.capability)).filter((tool) => !tool.skillOnly).map((tool) => ({ + ...tool, + schema: { + ...tool.schema, + // Note: we first ensure that "selector" property is present, so that we can omit() it without an error. + inputSchema: tool.schema.inputSchema.extend({ selector: import_zodBundle.z.string(), startSelector: import_zodBundle.z.string(), endSelector: import_zodBundle.z.string() }).omit({ selector: true, startSelector: true, endSelector: true }) + } + })); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + browserTools, + filteredTools +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/tracing.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/tracing.js new file mode 100644 index 00000000..b5d59a20 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/tracing.js @@ -0,0 +1,78 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var tracing_exports = {}; +__export(tracing_exports, { + default: () => tracing_default +}); +module.exports = __toCommonJS(tracing_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const tracingStart = (0, import_tool.defineTool)({ + capability: "devtools", + schema: { + name: "browser_start_tracing", + title: "Start tracing", + description: "Start trace recording", + inputSchema: import_zodBundle.z.object({}), + type: "readOnly" + }, + handle: async (context, params, response) => { + const browserContext = await context.ensureBrowserContext(); + const tracesDir = await context.outputFile({ prefix: "", suggestedFilename: `traces`, ext: "" }, { origin: "code" }); + const name = "trace-" + Date.now(); + await browserContext.tracing.start({ + name, + screenshots: true, + snapshots: true, + live: true + }); + response.addTextResult(`Trace recording started`); + response.addFileLink("Action log", `${tracesDir}/${name}.trace`); + response.addFileLink("Network log", `${tracesDir}/${name}.network`); + response.addFileLink("Resources", `${tracesDir}/resources`); + browserContext.tracing[traceLegendSymbol] = { tracesDir, name }; + } +}); +const tracingStop = (0, import_tool.defineTool)({ + capability: "devtools", + schema: { + name: "browser_stop_tracing", + title: "Stop tracing", + description: "Stop trace recording", + inputSchema: import_zodBundle.z.object({}), + type: "readOnly" + }, + handle: async (context, params, response) => { + const browserContext = await context.ensureBrowserContext(); + await browserContext.tracing.stop(); + const traceLegend = browserContext.tracing[traceLegendSymbol]; + if (!traceLegend) + throw new Error("Tracing is not started"); + delete browserContext.tracing[traceLegendSymbol]; + response.addTextResult(`Trace recording stopped.`); + response.addFileLink("Trace", `${traceLegend.tracesDir}/${traceLegend.name}.trace`); + response.addFileLink("Network log", `${traceLegend.tracesDir}/${traceLegend.name}.network`); + response.addFileLink("Resources", `${traceLegend.tracesDir}/resources`); + } +}); +var tracing_default = [ + tracingStart, + tracingStop +]; +const traceLegendSymbol = Symbol("tracesDir"); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/utils.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/utils.js new file mode 100644 index 00000000..522b25c8 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/utils.js @@ -0,0 +1,83 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var utils_exports = {}; +__export(utils_exports, { + eventWaiter: () => eventWaiter, + waitForCompletion: () => waitForCompletion +}); +module.exports = __toCommonJS(utils_exports); +async function waitForCompletion(tab, callback) { + const requests = []; + const requestListener = (request) => requests.push(request); + const disposeListeners = () => { + tab.page.off("request", requestListener); + }; + tab.page.on("request", requestListener); + let result; + try { + result = await callback(); + await tab.waitForTimeout(500); + } finally { + disposeListeners(); + } + const requestedNavigation = requests.some((request) => request.isNavigationRequest()); + if (requestedNavigation) { + await tab.page.mainFrame().waitForLoadState("load", { timeout: 1e4 }).catch(() => { + }); + return result; + } + const promises = []; + for (const request of requests) { + if (["document", "stylesheet", "script", "xhr", "fetch"].includes(request.resourceType())) + promises.push(request.response().then((r) => r?.finished()).catch(() => { + })); + else + promises.push(request.response().catch(() => { + })); + } + const timeout = new Promise((resolve) => setTimeout(resolve, 5e3)); + await Promise.race([Promise.all(promises), timeout]); + if (requests.length) + await tab.waitForTimeout(500); + return result; +} +function eventWaiter(page, event, timeout) { + const disposables = []; + const eventPromise = new Promise((resolve, reject) => { + page.on(event, resolve); + disposables.push(() => page.off(event, resolve)); + }); + let abort; + const abortPromise = new Promise((resolve, reject) => { + abort = () => resolve(void 0); + }); + const timeoutPromise = new Promise((f) => { + const timeoutId = setTimeout(() => f(void 0), timeout); + disposables.push(() => clearTimeout(timeoutId)); + }); + return { + promise: Promise.race([eventPromise, abortPromise, timeoutPromise]).finally(() => disposables.forEach((dispose) => dispose())), + abort + }; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + eventWaiter, + waitForCompletion +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/verify.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/verify.js new file mode 100644 index 00000000..02cdd66d --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/verify.js @@ -0,0 +1,151 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var verify_exports = {}; +__export(verify_exports, { + default: () => verify_default +}); +module.exports = __toCommonJS(verify_exports); +var import_zodBundle = require("../../zodBundle"); +var import_stringUtils = require("../../utils/isomorphic/stringUtils"); +var import_tool = require("./tool"); +const verifyElement = (0, import_tool.defineTabTool)({ + capability: "testing", + schema: { + name: "browser_verify_element_visible", + title: "Verify element visible", + description: "Verify element is visible on the page", + inputSchema: import_zodBundle.z.object({ + role: import_zodBundle.z.string().describe('ROLE of the element. Can be found in the snapshot like this: `- {ROLE} "Accessible Name":`'), + accessibleName: import_zodBundle.z.string().describe('ACCESSIBLE_NAME of the element. Can be found in the snapshot like this: `- role "{ACCESSIBLE_NAME}"`') + }), + type: "assertion" + }, + handle: async (tab, params, response) => { + for (const frame of tab.page.frames()) { + const locator = frame.getByRole(params.role, { name: params.accessibleName }); + if (await locator.count() > 0) { + const resolved = await locator.normalize(); + response.addCode(`await expect(page.${resolved}).toBeVisible();`); + response.addTextResult("Done"); + return; + } + } + response.addError(`Element with role "${params.role}" and accessible name "${params.accessibleName}" not found`); + } +}); +const verifyText = (0, import_tool.defineTabTool)({ + capability: "testing", + schema: { + name: "browser_verify_text_visible", + title: "Verify text visible", + description: `Verify text is visible on the page. Prefer ${verifyElement.schema.name} if possible.`, + inputSchema: import_zodBundle.z.object({ + text: import_zodBundle.z.string().describe('TEXT to verify. Can be found in the snapshot like this: `- role "Accessible Name": {TEXT}` or like this: `- text: {TEXT}`') + }), + type: "assertion" + }, + handle: async (tab, params, response) => { + for (const frame of tab.page.frames()) { + const locator = frame.getByText(params.text).filter({ visible: true }); + if (await locator.count() > 0) { + const resolved = await locator.normalize(); + response.addCode(`await expect(page.${resolved}).toBeVisible();`); + response.addTextResult("Done"); + return; + } + } + response.addError("Text not found"); + } +}); +const verifyList = (0, import_tool.defineTabTool)({ + capability: "testing", + schema: { + name: "browser_verify_list_visible", + title: "Verify list visible", + description: "Verify list is visible on the page", + inputSchema: import_zodBundle.z.object({ + element: import_zodBundle.z.string().describe("Human-readable list description"), + ref: import_zodBundle.z.string().describe("Exact target element reference that points to the list"), + selector: import_zodBundle.z.string().optional().describe('CSS or role selector for the target list, when "ref" is not available.'), + items: import_zodBundle.z.array(import_zodBundle.z.string()).describe("Items to verify") + }), + type: "assertion" + }, + handle: async (tab, params, response) => { + const { locator } = await tab.refLocator({ ref: params.ref, selector: params.selector, element: params.element }); + const itemTexts = []; + for (const item of params.items) { + const itemLocator = locator.getByText(item); + if (await itemLocator.count() === 0) { + response.addError(`Item "${item}" not found`); + return; + } + itemTexts.push(await itemLocator.textContent(tab.expectTimeoutOptions)); + } + const ariaSnapshot = `\` +- list: +${itemTexts.map((t) => ` - listitem: ${(0, import_stringUtils.escapeWithQuotes)(t, '"')}`).join("\n")} +\``; + response.addCode(`await expect(page.locator('body')).toMatchAriaSnapshot(${ariaSnapshot});`); + response.addTextResult("Done"); + } +}); +const verifyValue = (0, import_tool.defineTabTool)({ + capability: "testing", + schema: { + name: "browser_verify_value", + title: "Verify value", + description: "Verify element value", + inputSchema: import_zodBundle.z.object({ + type: import_zodBundle.z.enum(["textbox", "checkbox", "radio", "combobox", "slider"]).describe("Type of the element"), + element: import_zodBundle.z.string().describe("Human-readable element description"), + ref: import_zodBundle.z.string().describe("Exact target element reference from the page snapshot"), + selector: import_zodBundle.z.string().optional().describe('CSS or role selector for the target element, when "ref" is not available'), + value: import_zodBundle.z.string().describe('Value to verify. For checkbox, use "true" or "false".') + }), + type: "assertion" + }, + handle: async (tab, params, response) => { + const { locator, resolved } = await tab.refLocator({ ref: params.ref, selector: params.selector, element: params.element }); + const locatorSource = `page.${resolved}`; + if (params.type === "textbox" || params.type === "slider" || params.type === "combobox") { + const value = await locator.inputValue(tab.expectTimeoutOptions); + if (value !== params.value) { + response.addError(`Expected value "${params.value}", but got "${value}"`); + return; + } + response.addCode(`await expect(${locatorSource}).toHaveValue(${(0, import_stringUtils.escapeWithQuotes)(params.value)});`); + } else if (params.type === "checkbox" || params.type === "radio") { + const value = await locator.isChecked(tab.expectTimeoutOptions); + if (value !== (params.value === "true")) { + response.addError(`Expected value "${params.value}", but got "${value}"`); + return; + } + const matcher = value ? "toBeChecked" : "not.toBeChecked"; + response.addCode(`await expect(${locatorSource}).${matcher}();`); + } + response.addTextResult("Done"); + } +}); +var verify_default = [ + verifyElement, + verifyText, + verifyList, + verifyValue +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/video.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/video.js new file mode 100644 index 00000000..98d0d407 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/video.js @@ -0,0 +1,98 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var video_exports = {}; +__export(video_exports, { + default: () => video_default +}); +module.exports = __toCommonJS(video_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const videoStart = (0, import_tool.defineTool)({ + capability: "devtools", + schema: { + name: "browser_start_video", + title: "Start video", + description: "Start video recording", + inputSchema: import_zodBundle.z.object({ + filename: import_zodBundle.z.string().optional().describe("Filename to save the video."), + size: import_zodBundle.z.object({ + width: import_zodBundle.z.number().describe("Video width"), + height: import_zodBundle.z.number().describe("Video height") + }).optional().describe("Video size") + }), + type: "readOnly" + }, + handle: async (context, params, response) => { + const resolvedFile = await response.resolveClientFile({ prefix: "video", ext: "webm", suggestedFilename: params.filename }, "Video"); + await context.startVideoRecording(resolvedFile.fileName, { size: params.size }); + response.addTextResult("Video recording started."); + } +}); +const videoStop = (0, import_tool.defineTool)({ + capability: "devtools", + schema: { + name: "browser_stop_video", + title: "Stop video", + description: "Stop video recording", + inputSchema: import_zodBundle.z.object({}), + type: "readOnly" + }, + handle: async (context, params, response) => { + const fileNames = await context.stopVideoRecording(); + if (!fileNames.length) { + response.addTextResult("No videos were recorded."); + return; + } + for (const fileName of fileNames) { + const resolvedFile = await response.resolveClientFile({ + prefix: "video", + ext: "webm", + suggestedFilename: fileName + }, "Video"); + await response.addFileResult(resolvedFile, null); + } + } +}); +const videoChapter = (0, import_tool.defineTool)({ + capability: "devtools", + schema: { + name: "browser_video_chapter", + title: "Video chapter", + description: "Add a chapter marker to the video recording. Shows a full-screen chapter card with blurred backdrop.", + inputSchema: import_zodBundle.z.object({ + title: import_zodBundle.z.string().describe("Chapter title"), + description: import_zodBundle.z.string().optional().describe("Chapter description"), + duration: import_zodBundle.z.number().optional().describe("Duration in milliseconds to show the chapter card") + }), + type: "readOnly" + }, + handle: async (context, params, response) => { + const tab = context.currentTabOrDie(); + await tab.page.screencast.showChapter(params.title, { + description: params.description, + duration: params.duration + }); + response.addTextResult(`Chapter '${params.title}' added.`); + } +}); +var video_default = [ + videoStart, + videoStop, + videoChapter +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/wait.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/wait.js new file mode 100644 index 00000000..71f70173 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/wait.js @@ -0,0 +1,63 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var wait_exports = {}; +__export(wait_exports, { + default: () => wait_default +}); +module.exports = __toCommonJS(wait_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const wait = (0, import_tool.defineTool)({ + capability: "core", + schema: { + name: "browser_wait_for", + title: "Wait for", + description: "Wait for text to appear or disappear or a specified time to pass", + inputSchema: import_zodBundle.z.object({ + time: import_zodBundle.z.number().optional().describe("The time to wait in seconds"), + text: import_zodBundle.z.string().optional().describe("The text to wait for"), + textGone: import_zodBundle.z.string().optional().describe("The text to wait for to disappear") + }), + type: "assertion" + }, + handle: async (context, params, response) => { + if (!params.text && !params.textGone && !params.time) + throw new Error("Either time, text or textGone must be provided"); + if (params.time) { + response.addCode(`await new Promise(f => setTimeout(f, ${params.time} * 1000));`); + await new Promise((f) => setTimeout(f, Math.min(3e4, params.time * 1e3))); + } + const tab = context.currentTabOrDie(); + const locator = params.text ? tab.page.getByText(params.text).first() : void 0; + const goneLocator = params.textGone ? tab.page.getByText(params.textGone).first() : void 0; + if (goneLocator) { + response.addCode(`await page.getByText(${JSON.stringify(params.textGone)}).first().waitFor({ state: 'hidden' });`); + await goneLocator.waitFor({ state: "hidden" }); + } + if (locator) { + response.addCode(`await page.getByText(${JSON.stringify(params.text)}).first().waitFor({ state: 'visible' });`); + await locator.waitFor({ state: "visible" }); + } + response.addTextResult(`Waited for ${params.text || params.textGone || params.time}`); + response.setIncludeSnapshot(); + } +}); +var wait_default = [ + wait +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/backend/webstorage.js b/node_modules.codex-backup/playwright-core/lib/tools/backend/webstorage.js new file mode 100644 index 00000000..e8a58b30 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/backend/webstorage.js @@ -0,0 +1,223 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var webstorage_exports = {}; +__export(webstorage_exports, { + default: () => webstorage_default +}); +module.exports = __toCommonJS(webstorage_exports); +var import_zodBundle = require("../../zodBundle"); +var import_tool = require("./tool"); +const localStorageList = (0, import_tool.defineTabTool)({ + capability: "storage", + schema: { + name: "browser_localstorage_list", + title: "List localStorage", + description: "List all localStorage key-value pairs", + inputSchema: import_zodBundle.z.object({}), + type: "readOnly" + }, + handle: async (tab, params, response) => { + const items = await tab.page.evaluate(() => { + const result = []; + for (let i = 0; i < localStorage.length; i++) { + const key = localStorage.key(i); + if (key !== null) + result.push({ key, value: localStorage.getItem(key) || "" }); + } + return result; + }); + if (items.length === 0) + response.addTextResult("No localStorage items found"); + else + response.addTextResult(items.map((item) => `${item.key}=${item.value}`).join("\n")); + response.addCode(`await page.evaluate(() => ({ ...localStorage }));`); + } +}); +const localStorageGet = (0, import_tool.defineTabTool)({ + capability: "storage", + schema: { + name: "browser_localstorage_get", + title: "Get localStorage item", + description: "Get a localStorage item by key", + inputSchema: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Key to get") + }), + type: "readOnly" + }, + handle: async (tab, params, response) => { + const value = await tab.page.evaluate((key) => localStorage.getItem(key), params.key); + if (value === null) + response.addTextResult(`localStorage key '${params.key}' not found`); + else + response.addTextResult(`${params.key}=${value}`); + response.addCode(`await page.evaluate(() => localStorage.getItem('${params.key}'));`); + } +}); +const localStorageSet = (0, import_tool.defineTabTool)({ + capability: "storage", + schema: { + name: "browser_localstorage_set", + title: "Set localStorage item", + description: "Set a localStorage item", + inputSchema: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Key to set"), + value: import_zodBundle.z.string().describe("Value to set") + }), + type: "action" + }, + handle: async (tab, params, response) => { + await tab.page.evaluate(({ key, value }) => localStorage.setItem(key, value), params); + response.addCode(`await page.evaluate(() => localStorage.setItem('${params.key}', '${params.value}'));`); + } +}); +const localStorageDelete = (0, import_tool.defineTabTool)({ + capability: "storage", + schema: { + name: "browser_localstorage_delete", + title: "Delete localStorage item", + description: "Delete a localStorage item", + inputSchema: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Key to delete") + }), + type: "action" + }, + handle: async (tab, params, response) => { + await tab.page.evaluate((key) => localStorage.removeItem(key), params.key); + response.addCode(`await page.evaluate(() => localStorage.removeItem('${params.key}'));`); + } +}); +const localStorageClear = (0, import_tool.defineTabTool)({ + capability: "storage", + schema: { + name: "browser_localstorage_clear", + title: "Clear localStorage", + description: "Clear all localStorage", + inputSchema: import_zodBundle.z.object({}), + type: "action" + }, + handle: async (tab, params, response) => { + await tab.page.evaluate(() => localStorage.clear()); + response.addCode(`await page.evaluate(() => localStorage.clear());`); + } +}); +const sessionStorageList = (0, import_tool.defineTabTool)({ + capability: "storage", + schema: { + name: "browser_sessionstorage_list", + title: "List sessionStorage", + description: "List all sessionStorage key-value pairs", + inputSchema: import_zodBundle.z.object({}), + type: "readOnly" + }, + handle: async (tab, params, response) => { + const items = await tab.page.evaluate(() => { + const result = []; + for (let i = 0; i < sessionStorage.length; i++) { + const key = sessionStorage.key(i); + if (key !== null) + result.push({ key, value: sessionStorage.getItem(key) || "" }); + } + return result; + }); + if (items.length === 0) + response.addTextResult("No sessionStorage items found"); + else + response.addTextResult(items.map((item) => `${item.key}=${item.value}`).join("\n")); + response.addCode(`await page.evaluate(() => ({ ...sessionStorage }));`); + } +}); +const sessionStorageGet = (0, import_tool.defineTabTool)({ + capability: "storage", + schema: { + name: "browser_sessionstorage_get", + title: "Get sessionStorage item", + description: "Get a sessionStorage item by key", + inputSchema: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Key to get") + }), + type: "readOnly" + }, + handle: async (tab, params, response) => { + const value = await tab.page.evaluate((key) => sessionStorage.getItem(key), params.key); + if (value === null) + response.addTextResult(`sessionStorage key '${params.key}' not found`); + else + response.addTextResult(`${params.key}=${value}`); + response.addCode(`await page.evaluate(() => sessionStorage.getItem('${params.key}'));`); + } +}); +const sessionStorageSet = (0, import_tool.defineTabTool)({ + capability: "storage", + schema: { + name: "browser_sessionstorage_set", + title: "Set sessionStorage item", + description: "Set a sessionStorage item", + inputSchema: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Key to set"), + value: import_zodBundle.z.string().describe("Value to set") + }), + type: "action" + }, + handle: async (tab, params, response) => { + await tab.page.evaluate(({ key, value }) => sessionStorage.setItem(key, value), params); + response.addCode(`await page.evaluate(() => sessionStorage.setItem('${params.key}', '${params.value}'));`); + } +}); +const sessionStorageDelete = (0, import_tool.defineTabTool)({ + capability: "storage", + schema: { + name: "browser_sessionstorage_delete", + title: "Delete sessionStorage item", + description: "Delete a sessionStorage item", + inputSchema: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Key to delete") + }), + type: "action" + }, + handle: async (tab, params, response) => { + await tab.page.evaluate((key) => sessionStorage.removeItem(key), params.key); + response.addCode(`await page.evaluate(() => sessionStorage.removeItem('${params.key}'));`); + } +}); +const sessionStorageClear = (0, import_tool.defineTabTool)({ + capability: "storage", + schema: { + name: "browser_sessionstorage_clear", + title: "Clear sessionStorage", + description: "Clear all sessionStorage", + inputSchema: import_zodBundle.z.object({}), + type: "action" + }, + handle: async (tab, params, response) => { + await tab.page.evaluate(() => sessionStorage.clear()); + response.addCode(`await page.evaluate(() => sessionStorage.clear());`); + } +}); +var webstorage_default = [ + localStorageList, + localStorageGet, + localStorageSet, + localStorageDelete, + localStorageClear, + sessionStorageList, + sessionStorageGet, + sessionStorageSet, + sessionStorageDelete, + sessionStorageClear +]; diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/cli.js b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/cli.js new file mode 100644 index 00000000..52ec58a0 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/cli.js @@ -0,0 +1,6 @@ +"use strict"; +var import_program = require("./program"); +(0, import_program.program)().catch((e) => { + console.error(e.message); + process.exit(1); +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/help.json b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/help.json new file mode 100644 index 00000000..d459ca84 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/help.json @@ -0,0 +1,399 @@ +{ + "global": "Usage: playwright-cli [args] [options]\nUsage: playwright-cli -s= [args] [options]\n\nCore:\n open [url] open the browser\n attach attach to a running playwright browser\n close close the browser\n goto navigate to a url\n type type text into editable element\n click [button] perform click on a web page\n dblclick [button] perform double click on a web page\n fill fill text into editable element\n drag perform drag and drop between two elements\n hover hover over element on page\n select select an option in a dropdown\n upload upload one or multiple files\n check check a checkbox or radio button\n uncheck uncheck a checkbox or radio button\n snapshot [element] capture page snapshot to obtain element ref\n eval [element] evaluate javascript expression on page or element\n dialog-accept [prompt] accept a dialog\n dialog-dismiss dismiss a dialog\n resize resize the browser window\n delete-data delete session data\n\nNavigation:\n go-back go back to the previous page\n go-forward go forward to the next page\n reload reload the current page\n\nKeyboard:\n press press a key on the keyboard, `a`, `arrowleft`\n keydown press a key down on the keyboard\n keyup press a key up on the keyboard\n\nMouse:\n mousemove move mouse to a given position\n mousedown [button] press mouse down\n mouseup [button] press mouse up\n mousewheel scroll mouse wheel\n\nSave as:\n screenshot [target] screenshot of the current page or element\n pdf save page as pdf\n\nTabs:\n tab-list list all tabs\n tab-new [url] create a new tab\n tab-close [index] close a browser tab\n tab-select select a browser tab\n\nStorage:\n state-load loads browser storage (authentication) state from a file\n state-save [filename] saves the current storage (authentication) state to a file\n cookie-list list all cookies (optionally filtered by domain/path)\n cookie-get get a specific cookie by name\n cookie-set set a cookie with optional flags\n cookie-delete delete a specific cookie\n cookie-clear clear all cookies\n localstorage-list list all localstorage key-value pairs\n localstorage-get get a localstorage item by key\n localstorage-set set a localstorage item\n localstorage-delete delete a localstorage item\n localstorage-clear clear all localstorage\n sessionstorage-list list all sessionstorage key-value pairs\n sessionstorage-get get a sessionstorage item by key\n sessionstorage-set set a sessionstorage item\n sessionstorage-delete delete a sessionstorage item\n sessionstorage-clear clear all sessionstorage\n\nNetwork:\n route mock network requests matching a url pattern\n route-list list all active network routes\n unroute [pattern] remove routes matching a pattern (or all routes)\n network-state-set set the browser network state to online or offline\n\nDevTools:\n console [min-level] list console messages\n run-code [code] run playwright code snippet\n network list all network requests since loading the page\n tracing-start start trace recording\n tracing-stop stop trace recording\n video-start [filename] start video recording\n video-stop stop video recording\n video-chapter add a chapter marker to the video recording\n show show browser devtools\n pause-at <location> run the test up to a specific location and pause there\n resume resume the test execution\n step-over step over the next call in the test\n\nInstall:\n install initialize workspace\n install-browser [browser] install browser\n\nBrowser sessions:\n list list browser sessions\n close-all close all browser sessions\n kill-all forcefully kill all browser sessions (for stale/zombie processes)\n\nGlobal options:\n --help [command] print help\n --version print version", + "commands": { + "open": { + "help": "playwright-cli open [url]\n\nOpen the browser\n\nArguments:\n [url] the url to navigate to\nOptions:\n --browser browser or chrome channel to use, possible values: chrome, firefox, webkit, msedge.\n --config path to the configuration file, defaults to .playwright/cli.config.json\n --extension connect to browser extension\n --headed run browser in headed mode\n --persistent use persistent browser profile\n --profile use persistent browser profile, store profile in specified directory.", + "flags": { + "browser": "string", + "config": "string", + "extension": "boolean", + "headed": "boolean", + "persistent": "boolean", + "profile": "string" + } + }, + "attach": { + "help": "playwright-cli attach <name>\n\nAttach to a running Playwright browser\n\nArguments:\n <name> name or endpoint of the browser to attach to\nOptions:\n --config path to the configuration file, defaults to .playwright/cli.config.json\n --session session name alias (defaults to the attach target name)", + "flags": { + "config": "string", + "session": "string" + } + }, + "close": { + "help": "playwright-cli close \n\nClose the browser\n", + "flags": {} + }, + "goto": { + "help": "playwright-cli goto <url>\n\nNavigate to a URL\n\nArguments:\n <url> the url to navigate to", + "flags": {} + }, + "type": { + "help": "playwright-cli type <text>\n\nType text into editable element\n\nArguments:\n <text> text to type into the element\nOptions:\n --submit whether to submit entered text (press enter after)", + "flags": { + "submit": "boolean" + } + }, + "click": { + "help": "playwright-cli click <target> [button]\n\nPerform click on a web page\n\nArguments:\n <target> exact target element reference from the page snapshot, or a unique element selector\n [button] button to click, defaults to left\nOptions:\n --modifiers modifier keys to press", + "flags": { + "modifiers": "string" + } + }, + "dblclick": { + "help": "playwright-cli dblclick <target> [button]\n\nPerform double click on a web page\n\nArguments:\n <target> exact target element reference from the page snapshot, or a unique element selector\n [button] button to click, defaults to left\nOptions:\n --modifiers modifier keys to press", + "flags": { + "modifiers": "string" + } + }, + "fill": { + "help": "playwright-cli fill <target> <text>\n\nFill text into editable element\n\nArguments:\n <target> exact target element reference from the page snapshot, or a unique element selector\n <text> text to fill into the element\nOptions:\n --submit whether to submit entered text (press enter after)", + "flags": { + "submit": "boolean" + } + }, + "drag": { + "help": "playwright-cli drag <startElement> <endElement>\n\nPerform drag and drop between two elements\n\nArguments:\n <startElement> exact source element reference from the page snapshot, or a unique element selector\n <endElement> exact target element reference from the page snapshot, or a unique element selector", + "flags": {} + }, + "hover": { + "help": "playwright-cli hover <target>\n\nHover over element on page\n\nArguments:\n <target> exact target element reference from the page snapshot, or a unique element selector", + "flags": {} + }, + "select": { + "help": "playwright-cli select <target> <val>\n\nSelect an option in a dropdown\n\nArguments:\n <target> exact target element reference from the page snapshot, or a unique element selector\n <val> value to select in the dropdown", + "flags": {} + }, + "upload": { + "help": "playwright-cli upload <file>\n\nUpload one or multiple files\n\nArguments:\n <file> the absolute paths to the files to upload", + "flags": {} + }, + "check": { + "help": "playwright-cli check <target>\n\nCheck a checkbox or radio button\n\nArguments:\n <target> exact target element reference from the page snapshot, or a unique element selector", + "flags": {} + }, + "uncheck": { + "help": "playwright-cli uncheck <target>\n\nUncheck a checkbox or radio button\n\nArguments:\n <target> exact target element reference from the page snapshot, or a unique element selector", + "flags": {} + }, + "snapshot": { + "help": "playwright-cli snapshot [element]\n\nCapture page snapshot to obtain element ref\n\nArguments:\n [element] element selector of the root element to capture a partial snapshot instead of the whole page\nOptions:\n --filename save snapshot to markdown file instead of returning it in the response.\n --depth limit snapshot depth, unlimited by default.", + "flags": { + "filename": "string", + "depth": "string" + } + }, + "eval": { + "help": "playwright-cli eval <func> [element]\n\nEvaluate JavaScript expression on page or element\n\nArguments:\n <func> () => { /* code */ } or (element) => { /* code */ } when element is provided\n [element] exact target element reference from the page snapshot, or a unique element selector\nOptions:\n --filename save evaluation result to a file instead of returning it in the response.", + "flags": { + "filename": "string" + } + }, + "console": { + "help": "playwright-cli console [min-level]\n\nList console messages\n\nArguments:\n [min-level] level of the console messages to return. each level includes the messages of more severe levels. defaults to \"info\".\nOptions:\n --clear whether to clear the console list", + "flags": { + "clear": "boolean" + } + }, + "dialog-accept": { + "help": "playwright-cli dialog-accept [prompt]\n\nAccept a dialog\n\nArguments:\n [prompt] the text of the prompt in case of a prompt dialog.", + "flags": {} + }, + "dialog-dismiss": { + "help": "playwright-cli dialog-dismiss \n\nDismiss a dialog\n", + "flags": {} + }, + "resize": { + "help": "playwright-cli resize <w> <h>\n\nResize the browser window\n\nArguments:\n <w> width of the browser window\n <h> height of the browser window", + "flags": {} + }, + "run-code": { + "help": "playwright-cli run-code [code]\n\nRun Playwright code snippet\n\nArguments:\n [code] a javascript function containing playwright code to execute. it will be invoked with a single argument, page, which you can use for any page interaction.\nOptions:\n --filename load code from the specified file.", + "flags": { + "filename": "string" + } + }, + "delete-data": { + "help": "playwright-cli delete-data \n\nDelete session data\n", + "flags": {} + }, + "go-back": { + "help": "playwright-cli go-back \n\nGo back to the previous page\n", + "flags": {} + }, + "go-forward": { + "help": "playwright-cli go-forward \n\nGo forward to the next page\n", + "flags": {} + }, + "reload": { + "help": "playwright-cli reload \n\nReload the current page\n", + "flags": {} + }, + "press": { + "help": "playwright-cli press <key>\n\nPress a key on the keyboard, `a`, `ArrowLeft`\n\nArguments:\n <key> name of the key to press or a character to generate, such as `arrowleft` or `a`", + "flags": {} + }, + "keydown": { + "help": "playwright-cli keydown <key>\n\nPress a key down on the keyboard\n\nArguments:\n <key> name of the key to press or a character to generate, such as `arrowleft` or `a`", + "flags": {} + }, + "keyup": { + "help": "playwright-cli keyup <key>\n\nPress a key up on the keyboard\n\nArguments:\n <key> name of the key to press or a character to generate, such as `arrowleft` or `a`", + "flags": {} + }, + "mousemove": { + "help": "playwright-cli mousemove <x> <y>\n\nMove mouse to a given position\n\nArguments:\n <x> x coordinate\n <y> y coordinate", + "flags": {} + }, + "mousedown": { + "help": "playwright-cli mousedown [button]\n\nPress mouse down\n\nArguments:\n [button] button to press, defaults to left", + "flags": {} + }, + "mouseup": { + "help": "playwright-cli mouseup [button]\n\nPress mouse up\n\nArguments:\n [button] button to press, defaults to left", + "flags": {} + }, + "mousewheel": { + "help": "playwright-cli mousewheel <dx> <dy>\n\nScroll mouse wheel\n\nArguments:\n <dx> x delta\n <dy> y delta", + "flags": {} + }, + "screenshot": { + "help": "playwright-cli screenshot [target]\n\nscreenshot of the current page or element\n\nArguments:\n [target] exact target element reference from the page snapshot, or a unique element selector.\nOptions:\n --filename file name to save the screenshot to. defaults to `page-{timestamp}.{png|jpeg}` if not specified.\n --full-page when true, takes a screenshot of the full scrollable page, instead of the currently visible viewport.", + "flags": { + "filename": "string", + "full-page": "boolean" + } + }, + "pdf": { + "help": "playwright-cli pdf \n\nSave page as PDF\n\nOptions:\n --filename file name to save the pdf to. defaults to `page-{timestamp}.pdf` if not specified.", + "flags": { + "filename": "string" + } + }, + "tab-list": { + "help": "playwright-cli tab-list \n\nList all tabs\n", + "flags": {} + }, + "tab-new": { + "help": "playwright-cli tab-new [url]\n\nCreate a new tab\n\nArguments:\n [url] the url to navigate to in the new tab. if omitted, the new tab will be blank.", + "flags": {} + }, + "tab-close": { + "help": "playwright-cli tab-close [index]\n\nClose a browser tab\n\nArguments:\n [index] tab index. if omitted, current tab is closed.", + "flags": {} + }, + "tab-select": { + "help": "playwright-cli tab-select <index>\n\nSelect a browser tab\n\nArguments:\n <index> tab index", + "flags": {} + }, + "state-load": { + "help": "playwright-cli state-load <filename>\n\nLoads browser storage (authentication) state from a file\n\nArguments:\n <filename> file name to load the storage state from.", + "flags": {} + }, + "state-save": { + "help": "playwright-cli state-save [filename]\n\nSaves the current storage (authentication) state to a file\n\nArguments:\n [filename] file name to save the storage state to.", + "flags": {} + }, + "cookie-list": { + "help": "playwright-cli cookie-list \n\nList all cookies (optionally filtered by domain/path)\n\nOptions:\n --domain filter cookies by domain\n --path filter cookies by path", + "flags": { + "domain": "string", + "path": "string" + } + }, + "cookie-get": { + "help": "playwright-cli cookie-get <name>\n\nGet a specific cookie by name\n\nArguments:\n <name> cookie name", + "flags": {} + }, + "cookie-set": { + "help": "playwright-cli cookie-set <name> <value>\n\nSet a cookie with optional flags\n\nArguments:\n <name> cookie name\n <value> cookie value\nOptions:\n --domain cookie domain\n --path cookie path\n --expires cookie expiration as unix timestamp\n --httpOnly whether the cookie is http only\n --secure whether the cookie is secure\n --sameSite cookie samesite attribute", + "flags": { + "domain": "string", + "path": "string", + "expires": "string", + "httpOnly": "boolean", + "secure": "boolean", + "sameSite": "string" + } + }, + "cookie-delete": { + "help": "playwright-cli cookie-delete <name>\n\nDelete a specific cookie\n\nArguments:\n <name> cookie name", + "flags": {} + }, + "cookie-clear": { + "help": "playwright-cli cookie-clear \n\nClear all cookies\n", + "flags": {} + }, + "localstorage-list": { + "help": "playwright-cli localstorage-list \n\nList all localStorage key-value pairs\n", + "flags": {} + }, + "localstorage-get": { + "help": "playwright-cli localstorage-get <key>\n\nGet a localStorage item by key\n\nArguments:\n <key> key to get", + "flags": {} + }, + "localstorage-set": { + "help": "playwright-cli localstorage-set <key> <value>\n\nSet a localStorage item\n\nArguments:\n <key> key to set\n <value> value to set", + "flags": {} + }, + "localstorage-delete": { + "help": "playwright-cli localstorage-delete <key>\n\nDelete a localStorage item\n\nArguments:\n <key> key to delete", + "flags": {} + }, + "localstorage-clear": { + "help": "playwright-cli localstorage-clear \n\nClear all localStorage\n", + "flags": {} + }, + "sessionstorage-list": { + "help": "playwright-cli sessionstorage-list \n\nList all sessionStorage key-value pairs\n", + "flags": {} + }, + "sessionstorage-get": { + "help": "playwright-cli sessionstorage-get <key>\n\nGet a sessionStorage item by key\n\nArguments:\n <key> key to get", + "flags": {} + }, + "sessionstorage-set": { + "help": "playwright-cli sessionstorage-set <key> <value>\n\nSet a sessionStorage item\n\nArguments:\n <key> key to set\n <value> value to set", + "flags": {} + }, + "sessionstorage-delete": { + "help": "playwright-cli sessionstorage-delete <key>\n\nDelete a sessionStorage item\n\nArguments:\n <key> key to delete", + "flags": {} + }, + "sessionstorage-clear": { + "help": "playwright-cli sessionstorage-clear \n\nClear all sessionStorage\n", + "flags": {} + }, + "route": { + "help": "playwright-cli route <pattern>\n\nMock network requests matching a URL pattern\n\nArguments:\n <pattern> url pattern to match (e.g., \"**/api/users\")\nOptions:\n --status http status code (default: 200)\n --body response body (text or json string)\n --content-type content-type header\n --header header to add in \"name: value\" format (repeatable)\n --remove-header comma-separated header names to remove", + "flags": { + "status": "string", + "body": "string", + "content-type": "string", + "header": "string", + "remove-header": "string" + } + }, + "route-list": { + "help": "playwright-cli route-list \n\nList all active network routes\n", + "flags": {} + }, + "unroute": { + "help": "playwright-cli unroute [pattern]\n\nRemove routes matching a pattern (or all routes)\n\nArguments:\n [pattern] url pattern to unroute (omit to remove all)", + "flags": {} + }, + "network-state-set": { + "help": "playwright-cli network-state-set <state>\n\nSet the browser network state to online or offline\n\nArguments:\n <state> set to \"offline\" to simulate offline mode, \"online\" to restore network connectivity", + "flags": {} + }, + "config-print": { + "help": "playwright-cli config-print \n\nPrint the final resolved config after merging CLI options, environment variables and config file.\n", + "flags": {} + }, + "install": { + "help": "playwright-cli install \n\nInitialize workspace\n\nOptions:\n --skills install skills to \".claude\" (default) or \".agents\" dir", + "flags": { + "skills": "string" + } + }, + "install-browser": { + "help": "playwright-cli install-browser [browser]\n\nInstall browser\n\nArguments:\n [browser] browser to install\nOptions:\n --with-deps install system dependencies for browsers\n --dry-run do not execute installation, only print information\n --list prints list of browsers from all playwright installations\n --force force reinstall of already installed browsers\n --only-shell only install headless shell when installing chromium\n --no-shell do not install chromium headless shell", + "flags": { + "with-deps": "boolean", + "dry-run": "boolean", + "list": "boolean", + "force": "boolean", + "only-shell": "boolean", + "no-shell": "boolean" + } + }, + "network": { + "help": "playwright-cli network \n\nList all network requests since loading the page\n\nOptions:\n --static whether to include successful static resources like images, fonts, scripts, etc. defaults to false.\n --request-body whether to include request body. defaults to false.\n --request-headers whether to include request headers. defaults to false.\n --filter only return requests whose url matches this regexp (e.g. \"/api/.*user\").\n --clear whether to clear the network list", + "flags": { + "static": "boolean", + "request-body": "boolean", + "request-headers": "boolean", + "filter": "string", + "clear": "boolean" + } + }, + "tracing-start": { + "help": "playwright-cli tracing-start \n\nStart trace recording\n", + "flags": {} + }, + "tracing-stop": { + "help": "playwright-cli tracing-stop \n\nStop trace recording\n", + "flags": {} + }, + "video-start": { + "help": "playwright-cli video-start [filename]\n\nStart video recording\n\nArguments:\n [filename] filename to save the video.\nOptions:\n --size video frame size, e.g. \"800x600\". if not specified, the size of the recorded video will fit 800x800.", + "flags": { + "size": "string" + } + }, + "video-stop": { + "help": "playwright-cli video-stop \n\nStop video recording\n", + "flags": {} + }, + "video-chapter": { + "help": "playwright-cli video-chapter <title>\n\nAdd a chapter marker to the video recording\n\nArguments:\n <title> chapter title.\nOptions:\n --description chapter description.\n --duration duration in milliseconds to show the chapter card.", + "flags": { + "description": "string", + "duration": "string" + } + }, + "show": { + "help": "playwright-cli show \n\nShow browser DevTools\n", + "flags": {} + }, + "pause-at": { + "help": "playwright-cli pause-at <location>\n\nRun the test up to a specific location and pause there\n\nArguments:\n <location> location to pause at. format is <file>:<line>, e.g. \"example.spec.ts:42\".", + "flags": {} + }, + "resume": { + "help": "playwright-cli resume \n\nResume the test execution\n", + "flags": {} + }, + "step-over": { + "help": "playwright-cli step-over \n\nStep over the next call in the test\n", + "flags": {} + }, + "list": { + "help": "playwright-cli list \n\nList browser sessions\n\nOptions:\n --all list all browser sessions across all workspaces", + "flags": { + "all": "boolean" + } + }, + "close-all": { + "help": "playwright-cli close-all \n\nClose all browser sessions\n", + "flags": {} + }, + "kill-all": { + "help": "playwright-cli kill-all \n\nForcefully kill all browser sessions (for stale/zombie processes)\n", + "flags": {} + }, + "tray": { + "help": "playwright-cli tray \n\nRun tray\n", + "flags": {} + } + }, + "booleanOptions": [ + "extension", + "headed", + "persistent", + "submit", + "clear", + "full-page", + "httpOnly", + "secure", + "with-deps", + "dry-run", + "list", + "force", + "only-shell", + "no-shell", + "static", + "request-body", + "request-headers", + "all" + ] +} \ No newline at end of file diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/minimist.js b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/minimist.js new file mode 100644 index 00000000..1f5a4b04 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/minimist.js @@ -0,0 +1,128 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var minimist_exports = {}; +__export(minimist_exports, { + minimist: () => minimist +}); +module.exports = __toCommonJS(minimist_exports); +function minimist(args, opts) { + if (!opts) + opts = {}; + const bools = {}; + const strings = {}; + for (const key of toArray(opts.boolean)) + bools[key] = true; + for (const key of toArray(opts.string)) + strings[key] = true; + const argv = { _: [] }; + function setArg(key, val) { + if (argv[key] === void 0 || bools[key] || typeof argv[key] === "boolean") + argv[key] = val; + else if (Array.isArray(argv[key])) + argv[key].push(val); + else + argv[key] = [argv[key], val]; + } + let notFlags = []; + const doubleDashIndex = args.indexOf("--"); + if (doubleDashIndex !== -1) { + notFlags = args.slice(doubleDashIndex + 1); + args = args.slice(0, doubleDashIndex); + } + for (let i = 0; i < args.length; i++) { + const arg = args[i]; + let key; + let next; + if (/^--.+=/.test(arg)) { + const m = arg.match(/^--([^=]+)=([\s\S]*)$/); + key = m[1]; + if (bools[key]) + throw new Error(`boolean option '--${key}' should not be passed with '=value', use '--${key}' or '--no-${key}' instead`); + setArg(key, m[2]); + } else if (/^--no-.+/.test(arg)) { + key = arg.match(/^--no-(.+)/)[1]; + setArg(key, false); + } else if (/^--.+/.test(arg)) { + key = arg.match(/^--(.+)/)[1]; + next = args[i + 1]; + if (next !== void 0 && !/^(-|--)[^-]/.test(next) && !bools[key]) { + setArg(key, next); + i += 1; + } else if (/^(true|false)$/.test(next)) { + setArg(key, next === "true"); + i += 1; + } else { + setArg(key, strings[key] ? "" : true); + } + } else if (/^-[^-]+/.test(arg)) { + const letters = arg.slice(1, -1).split(""); + let broken = false; + for (let j = 0; j < letters.length; j++) { + next = arg.slice(j + 2); + if (next === "-") { + setArg(letters[j], next); + continue; + } + if (/[A-Za-z]/.test(letters[j]) && next[0] === "=") { + setArg(letters[j], next.slice(1)); + broken = true; + break; + } + if (/[A-Za-z]/.test(letters[j]) && /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) { + setArg(letters[j], next); + broken = true; + break; + } + if (letters[j + 1] && letters[j + 1].match(/\W/)) { + setArg(letters[j], arg.slice(j + 2)); + broken = true; + break; + } else { + setArg(letters[j], strings[letters[j]] ? "" : true); + } + } + key = arg.slice(-1)[0]; + if (!broken && key !== "-") { + if (args[i + 1] && !/^(-|--)[^-]/.test(args[i + 1]) && !bools[key]) { + setArg(key, args[i + 1]); + i += 1; + } else if (args[i + 1] && /^(true|false)$/.test(args[i + 1])) { + setArg(key, args[i + 1] === "true"); + i += 1; + } else { + setArg(key, strings[key] ? "" : true); + } + } + } else { + argv._.push(arg); + } + } + for (const k of notFlags) + argv._.push(k); + return argv; +} +function toArray(value) { + if (!value) + return []; + return Array.isArray(value) ? value : [value]; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + minimist +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/program.js b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/program.js new file mode 100644 index 00000000..43c3b6f6 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/program.js @@ -0,0 +1,350 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var program_exports = {}; +__export(program_exports, { + calculateSha1: () => calculateSha1, + program: () => program +}); +module.exports = __toCommonJS(program_exports); +var import_child_process = require("child_process"); +var import_crypto = __toESM(require("crypto")); +var import_os = __toESM(require("os")); +var import_path = __toESM(require("path")); +var import_registry = require("./registry"); +var import_session = require("./session"); +var import_serverRegistry = require("../../serverRegistry"); +var import_minimist = require("./minimist"); +const globalOptions = [ + "endpoint", + "browser", + "config", + "extension", + "headed", + "help", + "persistent", + "profile", + "session", + "version" +]; +const booleanOptions = [ + "all", + "help", + "version" +]; +async function program(options) { + const clientInfo = (0, import_registry.createClientInfo)(); + const help = require("./help.json"); + const argv = process.argv.slice(2); + const boolean = [...help.booleanOptions, ...booleanOptions]; + const args = (0, import_minimist.minimist)(argv, { boolean, string: ["_"] }); + if (args.s) { + args.session = args.s; + delete args.s; + } + const commandName = args._?.[0]; + if (args.version || args.v) { + console.log(options?.embedderVersion ?? clientInfo.version); + process.exit(0); + } + const command = commandName && help.commands[commandName]; + if (args.help || args.h) { + if (command) { + console.log(command.help); + } else { + console.log("playwright-cli - run playwright mcp commands from terminal\n"); + console.log(help.global); + } + process.exit(0); + } + if (!command) { + console.error(`Unknown command: ${commandName} +`); + console.log(help.global); + process.exit(1); + } + validateFlags(args, command); + const registry = await import_registry.Registry.load(); + const sessionName = (0, import_registry.resolveSessionName)(args.session); + switch (commandName) { + case "list": { + await listSessions(registry, clientInfo, !!args.all); + return; + } + case "close-all": { + const entries = registry.entries(clientInfo); + for (const entry of entries) + await new import_session.Session(entry).stop(true); + return; + } + case "delete-data": { + const entry = registry.entry(clientInfo, sessionName); + if (!entry) { + console.log(`No user data found for browser '${sessionName}'.`); + return; + } + await new import_session.Session(entry).deleteData(); + return; + } + case "kill-all": { + await killAllDaemons(); + return; + } + case "open": { + await startSession(sessionName, registry, clientInfo, args); + return; + } + case "attach": { + const attachTarget = args._[1]; + const attachSessionName = (0, import_registry.explicitSessionName)(args.session) ?? attachTarget; + args.endpoint = attachTarget; + args.session = attachSessionName; + await startSession(attachSessionName, registry, clientInfo, args); + return; + } + case "close": + const closeEntry = registry.entry(clientInfo, sessionName); + const session = closeEntry ? new import_session.Session(closeEntry) : void 0; + if (!session || !await session.canConnect()) { + console.log(`Browser '${sessionName}' is not open.`); + return; + } + await session.stop(); + return; + case "install": + await runInitWorkspace(args); + return; + case "install-browser": + await installBrowser(); + return; + case "show": { + const daemonScript = require.resolve("../dashboard/dashboardApp.js"); + const child = (0, import_child_process.spawn)(process.execPath, [daemonScript], { + detached: true, + stdio: "ignore" + }); + child.unref(); + return; + } + default: { + const entry = registry.entry(clientInfo, sessionName); + if (!entry) { + console.log(`The browser '${sessionName}' is not open, please run open first`); + console.log(""); + console.log(` playwright-cli${sessionName !== "default" ? ` -s=${sessionName}` : ""} open [params]`); + process.exit(1); + } + await runInSession(entry, clientInfo, args); + } + } +} +async function startSession(sessionName, registry, clientInfo, args) { + const entry = registry.entry(clientInfo, sessionName); + if (entry) + await new import_session.Session(entry).stop(true); + await import_session.Session.startDaemon(clientInfo, args); + const newEntry = await registry.loadEntry(clientInfo, sessionName); + await runInSession(newEntry, clientInfo, args); +} +async function runInSession(entry, clientInfo, args) { + for (const globalOption of globalOptions) + delete args[globalOption]; + const session = new import_session.Session(entry); + const result = await session.run(clientInfo, args); + console.log(result.text); +} +async function runInitWorkspace(args) { + const cliPath = require.resolve("../cli-daemon/program.js"); + const daemonArgs = [cliPath, "--init-workspace", ...args.skills ? ["--init-skills", String(args.skills)] : []]; + await new Promise((resolve, reject) => { + const child = (0, import_child_process.spawn)(process.execPath, daemonArgs, { + stdio: "inherit", + cwd: process.cwd() + }); + child.on("close", (code) => { + if (code === 0) + resolve(); + else + reject(new Error(`Workspace initialization failed with exit code ${code}`)); + }); + }); +} +async function installBrowser() { + const { program: program2 } = require("../../cli/program"); + const argv = process.argv.map((arg) => arg === "install-browser" ? "install" : arg); + program2.parse(argv); +} +async function killAllDaemons() { + const platform = import_os.default.platform(); + let killed = 0; + try { + if (platform === "win32") { + const result = (0, import_child_process.execSync)( + `powershell -NoProfile -NonInteractive -Command "Get-CimInstance Win32_Process | Where-Object { $_.CommandLine -like '*run-mcp-server*' -or $_.CommandLine -like '*run-cli-server*' -or $_.CommandLine -like '*cli-daemon*' -or $_.CommandLine -like '*dashboardApp.js*' } | ForEach-Object { Stop-Process -Id $_.ProcessId -Force -ErrorAction SilentlyContinue; $_.ProcessId }"`, + { encoding: "utf-8" } + ); + const pids = result.split("\n").map((line) => line.trim()).filter((line) => /^\d+$/.test(line)); + for (const pid of pids) + console.log(`Killed daemon process ${pid}`); + killed = pids.length; + } else { + const result = (0, import_child_process.execSync)("ps aux", { encoding: "utf-8" }); + const lines = result.split("\n"); + for (const line of lines) { + if (line.includes("run-mcp-server") || line.includes("run-cli-server") || line.includes("cli-daemon") || line.includes("dashboardApp.js")) { + const parts = line.trim().split(/\s+/); + const pid = parts[1]; + if (pid && /^\d+$/.test(pid)) { + try { + process.kill(parseInt(pid, 10), "SIGKILL"); + console.log(`Killed daemon process ${pid}`); + killed++; + } catch { + } + } + } + } + } + } catch (e) { + } + if (killed === 0) + console.log("No daemon processes found."); + else if (killed > 0) + console.log(`Killed ${killed} daemon process${killed === 1 ? "" : "es"}.`); +} +async function listSessions(registry, clientInfo, all) { + console.log("### Browsers"); + let count = 0; + const runningSessions = /* @__PURE__ */ new Set(); + const entries = registry.entryMap(); + for (const [workspace, list] of entries) { + if (!all && workspace !== clientInfo.workspaceDir) + continue; + count += await gcAndPrintSessions(clientInfo, list.map((entry) => new import_session.Session(entry)), all ? `${import_path.default.relative(process.cwd(), workspace) || "/"}:` : void 0, runningSessions); + } + const serverEntries = await import_serverRegistry.serverRegistry.list(); + const filteredServerEntries = /* @__PURE__ */ new Map(); + for (const [workspace, list] of serverEntries) { + if (!all && workspace !== clientInfo.workspaceDir) + continue; + const unattached = list.filter((d) => !runningSessions.has(d.title)); + if (unattached.length) + filteredServerEntries.set(workspace, unattached); + } + if (filteredServerEntries.size) { + if (count) + console.log(""); + console.log("### Browser servers available for attach"); + } + for (const [workspace, list] of filteredServerEntries) + count += await gcAndPrintBrowserSessions(workspace, list); + if (!count) + console.log(" (no browsers)"); +} +async function gcAndPrintSessions(clientInfo, sessions, header, runningSessions) { + const running = []; + const stopped = []; + for (const session of sessions) { + const canConnect = await session.canConnect(); + if (canConnect) { + running.push(session); + runningSessions?.add(session.name); + } else { + if (session.config.cli.persistent) + stopped.push(session); + else + await session.deleteSessionConfig(); + } + } + if (header && (running.length || stopped.length)) + console.log(header); + for (const session of running) + console.log(await renderSessionStatus(clientInfo, session)); + for (const session of stopped) + console.log(await renderSessionStatus(clientInfo, session)); + return running.length + stopped.length; +} +async function gcAndPrintBrowserSessions(workspace, list) { + if (!list.length) + return 0; + if (workspace) + console.log(`${import_path.default.relative(process.cwd(), workspace) || "/"}:`); + for (const descriptor of list) { + const text = []; + text.push(`- browser "${descriptor.title}":`); + text.push(` - browser: ${descriptor.browser.browserName}`); + text.push(` - version: v${descriptor.playwrightVersion}`); + text.push(` - status: ${descriptor.canConnect ? "open" : "closed"}`); + if (descriptor.browser.userDataDir) + text.push(` - data-dir: ${descriptor.browser.userDataDir}`); + else + text.push(` - data-dir: <in-memory>`); + text.push(` - run \`playwright-cli attach "${descriptor.title}"\` to attach`); + console.log(text.join("\n")); + } + return list.length; +} +async function renderSessionStatus(clientInfo, session) { + const text = []; + const config = session.config; + const canConnect = await session.canConnect(); + text.push(`- ${session.name}:`); + text.push(` - status: ${canConnect ? "open" : "closed"}`); + if (canConnect && !session.isCompatible(clientInfo)) + text.push(` - version: v${config.version} [incompatible please re-open]`); + if (config.browser) + text.push(...(0, import_session.renderResolvedConfig)(config)); + return text.join("\n"); +} +function validateFlags(args, command) { + const unknownFlags = []; + for (const key of Object.keys(args)) { + if (key === "_") + continue; + if (globalOptions.includes(key)) + continue; + if (!(key in command.flags)) + unknownFlags.push(key); + } + if (unknownFlags.length) { + console.error(`Unknown option${unknownFlags.length > 1 ? "s" : ""}: ${unknownFlags.map((f) => `--${f}`).join(", ")}`); + console.log(""); + console.log(command.help); + process.exit(1); + } +} +function calculateSha1(buffer) { + const hash = import_crypto.default.createHash("sha1"); + hash.update(buffer); + return hash.digest("hex"); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + calculateSha1, + program +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/registry.js b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/registry.js new file mode 100644 index 00000000..bfe10872 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/registry.js @@ -0,0 +1,176 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var registry_exports = {}; +__export(registry_exports, { + Registry: () => Registry, + baseDaemonDir: () => baseDaemonDir, + createClientInfo: () => createClientInfo, + explicitSessionName: () => explicitSessionName, + resolveSessionName: () => resolveSessionName +}); +module.exports = __toCommonJS(registry_exports); +var import_crypto = __toESM(require("crypto")); +var import_fs = __toESM(require("fs")); +var import_os = __toESM(require("os")); +var import_path = __toESM(require("path")); +class Registry { + constructor(files) { + this._files = files; + } + entry(clientInfo, sessionName) { + const key = clientInfo.workspaceDir || clientInfo.workspaceDirHash; + const entries = this._files.get(key) || []; + return entries.find((entry) => entry.config.name === sessionName); + } + entries(clientInfo) { + const key = clientInfo.workspaceDir || clientInfo.workspaceDirHash; + return this._files.get(key) || []; + } + entryMap() { + return this._files; + } + async loadEntry(clientInfo, sessionName) { + const entry = await Registry._loadSessionEntry(clientInfo.daemonProfilesDir, sessionName + ".session"); + if (!entry) + throw new Error(`Could not start the session "${sessionName}"`); + const key = clientInfo.workspaceDir || clientInfo.workspaceDirHash; + let list = this._files.get(key); + if (!list) { + list = []; + this._files.set(key, list); + } + const oldIndex = list.findIndex((e) => e.config.name === sessionName); + if (oldIndex !== -1) + list.splice(oldIndex, 1); + list.push(entry); + return entry; + } + static async _loadSessionEntry(daemonDir, file) { + try { + const fileName = import_path.default.join(daemonDir, file); + const data = await import_fs.default.promises.readFile(fileName, "utf-8"); + const config = JSON.parse(data); + if (!config.name) + config.name = import_path.default.basename(file, ".session"); + if (!config.timestamp) + config.timestamp = 0; + return { file: fileName, config, daemonDir }; + } catch { + return void 0; + } + } + static async load() { + const sessions = /* @__PURE__ */ new Map(); + const hashDirs = await import_fs.default.promises.readdir(baseDaemonDir).catch(() => []); + for (const workspaceDirHash of hashDirs) { + const daemonDir = import_path.default.join(baseDaemonDir, workspaceDirHash); + const stat = await import_fs.default.promises.stat(daemonDir); + if (!stat.isDirectory()) + continue; + const files = await import_fs.default.promises.readdir(daemonDir).catch(() => []); + for (const file of files) { + if (!file.endsWith(".session")) + continue; + const entry = await Registry._loadSessionEntry(daemonDir, file); + if (!entry) + continue; + const key = entry.config.workspaceDir || workspaceDirHash; + let list = sessions.get(key); + if (!list) { + list = []; + sessions.set(key, list); + } + list.push(entry); + } + } + return new Registry(sessions); + } +} +const baseDaemonDir = (() => { + if (process.env.PLAYWRIGHT_DAEMON_SESSION_DIR) + return process.env.PLAYWRIGHT_DAEMON_SESSION_DIR; + let localCacheDir; + if (process.platform === "linux") + localCacheDir = process.env.XDG_CACHE_HOME || import_path.default.join(import_os.default.homedir(), ".cache"); + if (process.platform === "darwin") + localCacheDir = import_path.default.join(import_os.default.homedir(), "Library", "Caches"); + if (process.platform === "win32") + localCacheDir = process.env.LOCALAPPDATA || import_path.default.join(import_os.default.homedir(), "AppData", "Local"); + if (!localCacheDir) + throw new Error("Unsupported platform: " + process.platform); + return import_path.default.join(localCacheDir, "ms-playwright", "daemon"); +})(); +function createClientInfo() { + const packageLocation = require.resolve("../../../package.json"); + const packageJSON = require(packageLocation); + const workspaceDir = findWorkspaceDir(process.cwd()); + const version = process.env.PLAYWRIGHT_CLI_VERSION_FOR_TEST || packageJSON.version; + const hash = import_crypto.default.createHash("sha1"); + hash.update(workspaceDir || packageLocation); + const workspaceDirHash = hash.digest("hex").substring(0, 16); + return { + version, + workspaceDir, + workspaceDirHash, + daemonProfilesDir: daemonProfilesDir(workspaceDirHash) + }; +} +function findWorkspaceDir(startDir) { + let dir = startDir; + for (let i = 0; i < 10; i++) { + if (import_fs.default.existsSync(import_path.default.join(dir, ".playwright"))) + return dir; + const parentDir = import_path.default.dirname(dir); + if (parentDir === dir) + break; + dir = parentDir; + } + return void 0; +} +const daemonProfilesDir = (workspaceDirHash) => { + return import_path.default.join(baseDaemonDir, workspaceDirHash); +}; +function explicitSessionName(sessionName) { + return sessionName || process.env.PLAYWRIGHT_CLI_SESSION; +} +function resolveSessionName(sessionName) { + if (sessionName) + return sessionName; + if (process.env.PLAYWRIGHT_CLI_SESSION) + return process.env.PLAYWRIGHT_CLI_SESSION; + return "default"; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + Registry, + baseDaemonDir, + createClientInfo, + explicitSessionName, + resolveSessionName +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/session.js b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/session.js new file mode 100644 index 00000000..e9a020eb --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/session.js @@ -0,0 +1,289 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var session_exports = {}; +__export(session_exports, { + Session: () => Session, + renderResolvedConfig: () => renderResolvedConfig +}); +module.exports = __toCommonJS(session_exports); +var import_child_process = require("child_process"); +var import_fs = __toESM(require("fs")); +var import_net = __toESM(require("net")); +var import_os = __toESM(require("os")); +var import_path = __toESM(require("path")); +var import_socketConnection = require("../utils/socketConnection"); +var import_registry = require("./registry"); +class Session { + constructor(sessionFile) { + this.config = sessionFile.config; + this.name = this.config.name; + this._sessionFile = sessionFile; + } + isCompatible(clientInfo) { + return (0, import_socketConnection.compareSemver)(clientInfo.version, this.config.version) >= 0; + } + async run(clientInfo, args) { + if (!this.isCompatible(clientInfo)) + throw new Error(`Client is v${clientInfo.version}, session '${this.name}' is v${this.config.version}. Run + + playwright-cli${this.name !== "default" ? ` -s=${this.name}` : ""} open + +to restart the browser session.`); + const { socket } = await this._connect(); + if (!socket) + throw new Error(`Browser '${this.name}' is not open. Run + + playwright-cli${this.name !== "default" ? ` -s=${this.name}` : ""} open + +to start the browser session.`); + return await SocketConnectionClient.sendAndClose(socket, "run", { args, cwd: process.cwd() }); + } + async stop(quiet = false) { + if (!await this.canConnect()) { + if (!quiet) + console.log(`Browser '${this.name}' is not open.`); + return; + } + await this._stopDaemon(); + if (!quiet) + console.log(`Browser '${this.name}' closed +`); + } + async deleteData() { + await this.stop(); + const dataDirs = await import_fs.default.promises.readdir(this._sessionFile.daemonDir).catch(() => []); + const matchingEntries = dataDirs.filter((file) => file === `${this.name}.session` || file.startsWith(`ud-${this.name}-`)); + if (matchingEntries.length === 0) { + console.log(`No user data found for browser '${this.name}'.`); + return; + } + for (const entry of matchingEntries) { + const userDataDir = import_path.default.resolve(this._sessionFile.daemonDir, entry); + for (let i = 0; i < 5; i++) { + try { + await import_fs.default.promises.rm(userDataDir, { recursive: true }); + if (entry.startsWith("ud-")) + console.log(`Deleted user data for browser '${this.name}'.`); + break; + } catch (e) { + if (e.code === "ENOENT") { + console.log(`No user data found for browser '${this.name}'.`); + break; + } + await new Promise((resolve) => setTimeout(resolve, 1e3)); + if (i === 4) + throw e; + } + } + } + } + async _connect() { + return await new Promise((resolve) => { + const socket = import_net.default.createConnection(this.config.socketPath, () => { + resolve({ socket }); + }); + socket.on("error", (error) => { + if (import_os.default.platform() !== "win32") + void import_fs.default.promises.unlink(this.config.socketPath).catch(() => { + }).then(() => resolve({ error })); + else + resolve({ error }); + }); + }); + } + async canConnect() { + const { socket } = await this._connect(); + if (socket) { + socket.destroy(); + return true; + } + return false; + } + static async startDaemon(clientInfo, cliArgs) { + await import_fs.default.promises.mkdir(clientInfo.daemonProfilesDir, { recursive: true }); + const cliPath = require.resolve("../cli-daemon/program.js"); + const sessionName = (0, import_registry.resolveSessionName)(cliArgs.session); + const errLog = import_path.default.join(clientInfo.daemonProfilesDir, sessionName + ".err"); + const err = import_fs.default.openSync(errLog, "w"); + const args = [ + cliPath, + sessionName + ]; + if (cliArgs.headed) + args.push("--headed"); + if (cliArgs.extension) + args.push("--extension"); + if (cliArgs.browser) + args.push(`--browser=${cliArgs.browser}`); + if (cliArgs.persistent) + args.push("--persistent"); + if (cliArgs.profile) + args.push(`--profile=${cliArgs.profile}`); + if (cliArgs.config) + args.push(`--config=${cliArgs.config}`); + if (cliArgs.endpoint || process.env.PLAYWRIGHT_CLI_SESSION) + args.push(`--endpoint=${cliArgs.endpoint || process.env.PLAYWRIGHT_CLI_SESSION}`); + const child = (0, import_child_process.spawn)(process.execPath, args, { + detached: true, + stdio: ["ignore", "pipe", err], + cwd: process.cwd() + // Will be used as root. + }); + let signalled = false; + const sigintHandler = () => { + signalled = true; + child.kill("SIGINT"); + }; + const sigtermHandler = () => { + signalled = true; + child.kill("SIGTERM"); + }; + process.on("SIGINT", sigintHandler); + process.on("SIGTERM", sigtermHandler); + let outLog = ""; + await new Promise((resolve, reject) => { + child.stdout.on("data", (data) => { + outLog += data.toString(); + if (!outLog.includes("<EOF>")) + return; + const errorMatch = outLog.match(/### Error\n([\s\S]*)<EOF>/); + const error = errorMatch ? errorMatch[1].trim() : void 0; + if (error) { + const errLogContent = import_fs.default.readFileSync(errLog, "utf-8"); + const message = error + (errLogContent ? "\n" + errLogContent : ""); + reject(new Error(message)); + } + const successMatch = outLog.match(/### Success\nDaemon listening on (.*)\n<EOF>/); + if (successMatch) + resolve(); + }); + child.on("close", (code) => { + if (!signalled) { + const errLogContent = import_fs.default.readFileSync(errLog, "utf-8"); + const message = `Daemon process exited with code ${code}` + (errLogContent ? "\n" + errLogContent : ""); + reject(new Error(message)); + } + }); + }); + process.off("SIGINT", sigintHandler); + process.off("SIGTERM", sigtermHandler); + child.stdout.destroy(); + child.unref(); + if (cliArgs["endpoint"]) { + console.log(`### Session \`${sessionName}\` created, attached to \`${cliArgs["endpoint"]}\`.`); + console.log(`Run commands with: playwright-cli --session=${sessionName} <command>`); + } else { + console.log(`### Browser \`${sessionName}\` opened with pid ${child.pid}.`); + } + } + async _stopDaemon() { + const { socket, error: socketError } = await this._connect(); + if (!socket) { + console.log(`Browser '${this.name}' is not open.${socketError ? " Error: " + socketError.message : ""}`); + return; + } + let error; + await SocketConnectionClient.sendAndClose(socket, "stop", {}).catch((e) => error = e); + if (error && !error?.message?.includes("Session closed")) + throw error; + } + async deleteSessionConfig() { + await import_fs.default.promises.rm(this._sessionFile.file).catch(() => { + }); + } +} +function renderResolvedConfig(config) { + const channel = config.browser.launchOptions.channel ?? config.browser.browserName; + const lines = []; + if (channel) + lines.push(` - browser-type: ${channel}`); + if (!config.cli.persistent) + lines.push(` - user-data-dir: <in-memory>`); + else + lines.push(` - user-data-dir: ${config.browser.userDataDir}`); + lines.push(` - headed: ${!config.browser.launchOptions.headless}`); + return lines; +} +class SocketConnectionClient { + constructor(socket) { + this._nextMessageId = 1; + this._callbacks = /* @__PURE__ */ new Map(); + this._connection = new import_socketConnection.SocketConnection(socket); + this._connection.onmessage = (message) => this._onMessage(message); + this._connection.onclose = () => this._rejectCallbacks(); + } + async send(method, params = {}) { + const messageId = this._nextMessageId++; + const message = { + id: messageId, + method, + params + }; + const responsePromise = new Promise((resolve, reject) => { + this._callbacks.set(messageId, { resolve, reject, method, params }); + }); + const [result] = await Promise.all([responsePromise, this._connection.send(message)]); + return result; + } + static async sendAndClose(socket, method, params = {}) { + const connection = new SocketConnectionClient(socket); + try { + return await connection.send(method, params); + } finally { + connection.close(); + } + } + close() { + this._connection.close(); + } + _onMessage(object) { + if (object.id && this._callbacks.has(object.id)) { + const callback = this._callbacks.get(object.id); + this._callbacks.delete(object.id); + if (object.error) + callback.reject(new Error(object.error)); + else + callback.resolve(object.result); + } else if (object.id) { + throw new Error(`Unexpected message id: ${object.id}`); + } else { + throw new Error(`Unexpected message without id: ${JSON.stringify(object)}`); + } + } + _rejectCallbacks() { + for (const callback of this._callbacks.values()) + callback.reject(new Error("Session closed")); + this._callbacks.clear(); + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + Session, + renderResolvedConfig +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/SKILL.md b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/SKILL.md new file mode 100644 index 00000000..19a81706 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/SKILL.md @@ -0,0 +1,328 @@ +--- +name: playwright-cli +description: Automate browser interactions, test web pages and work with Playwright tests. +allowed-tools: Bash(playwright-cli:*) Bash(npx:*) Bash(npm:*) +--- + +# Browser Automation with playwright-cli + +## Quick start + +```bash +# open new browser +playwright-cli open +# navigate to a page +playwright-cli goto https://playwright.dev +# interact with the page using refs from the snapshot +playwright-cli click e15 +playwright-cli type "page.click" +playwright-cli press Enter +# take a screenshot (rarely used, as snapshot is more common) +playwright-cli screenshot +# close the browser +playwright-cli close +``` + +## Commands + +### Core + +```bash +playwright-cli open +# open and navigate right away +playwright-cli open https://example.com/ +playwright-cli goto https://playwright.dev +playwright-cli type "search query" +playwright-cli click e3 +playwright-cli dblclick e7 +# --submit presses Enter after filling the element +playwright-cli fill e5 "user@example.com" --submit +playwright-cli drag e2 e8 +playwright-cli hover e4 +playwright-cli select e9 "option-value" +playwright-cli upload ./document.pdf +playwright-cli check e12 +playwright-cli uncheck e12 +playwright-cli snapshot +playwright-cli eval "document.title" +playwright-cli eval "el => el.textContent" e5 +# get element id, class, or any attribute not visible in the snapshot +playwright-cli eval "el => el.id" e5 +playwright-cli eval "el => el.getAttribute('data-testid')" e5 +playwright-cli dialog-accept +playwright-cli dialog-accept "confirmation text" +playwright-cli dialog-dismiss +playwright-cli resize 1920 1080 +playwright-cli close +``` + +### Navigation + +```bash +playwright-cli go-back +playwright-cli go-forward +playwright-cli reload +``` + +### Keyboard + +```bash +playwright-cli press Enter +playwright-cli press ArrowDown +playwright-cli keydown Shift +playwright-cli keyup Shift +``` + +### Mouse + +```bash +playwright-cli mousemove 150 300 +playwright-cli mousedown +playwright-cli mousedown right +playwright-cli mouseup +playwright-cli mouseup right +playwright-cli mousewheel 0 100 +``` + +### Save as + +```bash +playwright-cli screenshot +playwright-cli screenshot e5 +playwright-cli screenshot --filename=page.png +playwright-cli pdf --filename=page.pdf +``` + +### Tabs + +```bash +playwright-cli tab-list +playwright-cli tab-new +playwright-cli tab-new https://example.com/page +playwright-cli tab-close +playwright-cli tab-close 2 +playwright-cli tab-select 0 +``` + +### Storage + +```bash +playwright-cli state-save +playwright-cli state-save auth.json +playwright-cli state-load auth.json + +# Cookies +playwright-cli cookie-list +playwright-cli cookie-list --domain=example.com +playwright-cli cookie-get session_id +playwright-cli cookie-set session_id abc123 +playwright-cli cookie-set session_id abc123 --domain=example.com --httpOnly --secure +playwright-cli cookie-delete session_id +playwright-cli cookie-clear + +# LocalStorage +playwright-cli localstorage-list +playwright-cli localstorage-get theme +playwright-cli localstorage-set theme dark +playwright-cli localstorage-delete theme +playwright-cli localstorage-clear + +# SessionStorage +playwright-cli sessionstorage-list +playwright-cli sessionstorage-get step +playwright-cli sessionstorage-set step 3 +playwright-cli sessionstorage-delete step +playwright-cli sessionstorage-clear +``` + +### Network + +```bash +playwright-cli route "**/*.jpg" --status=404 +playwright-cli route "https://api.example.com/**" --body='{"mock": true}' +playwright-cli route-list +playwright-cli unroute "**/*.jpg" +playwright-cli unroute +``` + +### DevTools + +```bash +playwright-cli console +playwright-cli console warning +playwright-cli network +playwright-cli run-code "async page => await page.context().grantPermissions(['geolocation'])" +playwright-cli run-code --filename=script.js +playwright-cli tracing-start +playwright-cli tracing-stop +playwright-cli video-start video.webm +playwright-cli video-chapter "Chapter Title" --description="Details" --duration=2000 +playwright-cli video-stop +``` + +## Open parameters +```bash +# Use specific browser when creating session +playwright-cli open --browser=chrome +playwright-cli open --browser=firefox +playwright-cli open --browser=webkit +playwright-cli open --browser=msedge +# Connect to browser via extension +playwright-cli open --extension + +# Use persistent profile (by default profile is in-memory) +playwright-cli open --persistent +# Use persistent profile with custom directory +playwright-cli open --profile=/path/to/profile + +# Start with config file +playwright-cli open --config=my-config.json + +# Close the browser +playwright-cli close +# Delete user data for the default session +playwright-cli delete-data +``` + +## Snapshots + +After each command, playwright-cli provides a snapshot of the current browser state. + +```bash +> playwright-cli goto https://example.com +### Page +- Page URL: https://example.com/ +- Page Title: Example Domain +### Snapshot +[Snapshot](.playwright-cli/page-2026-02-14T19-22-42-679Z.yml) +``` + +You can also take a snapshot on demand using `playwright-cli snapshot` command. All the options below can be combined as needed. + +```bash +# default - save to a file with timestamp-based name +playwright-cli snapshot + +# save to file, use when snapshot is a part of the workflow result +playwright-cli snapshot --filename=after-click.yaml + +# snapshot an element instead of the whole page +playwright-cli snapshot "#main" + +# limit snapshot depth for efficiency, take a partial snapshot afterwards +playwright-cli snapshot --depth=4 +playwright-cli snapshot e34 +``` + +## Targeting elements + +By default, use refs from the snapshot to interact with page elements. + +```bash +# get snapshot with refs +playwright-cli snapshot + +# interact using a ref +playwright-cli click e15 +``` + +You can also use css selectors or Playwright locators. + +```bash +# css selector +playwright-cli click "#main > button.submit" + +# role locator +playwright-cli click "getByRole('button', { name: 'Submit' })" + +# test id +playwright-cli click "getByTestId('submit-button')" +``` + +## Browser Sessions + +```bash +# create new browser session named "mysession" with persistent profile +playwright-cli -s=mysession open example.com --persistent +# same with manually specified profile directory (use when requested explicitly) +playwright-cli -s=mysession open example.com --profile=/path/to/profile +playwright-cli -s=mysession click e6 +playwright-cli -s=mysession close # stop a named browser +playwright-cli -s=mysession delete-data # delete user data for persistent session + +playwright-cli list +# Close all browsers +playwright-cli close-all +# Forcefully kill all browser processes +playwright-cli kill-all +``` + +## Installation + +If global `playwright-cli` command is not available, try a local version via `npx playwright-cli`: + +```bash +npx --no-install playwright-cli --version +``` + +When local version is available, use `npx playwright-cli` in all commands. Otherwise, install `playwright-cli` as a global command: + +```bash +npm install -g @playwright/cli@latest +``` + +## Example: Form submission + +```bash +playwright-cli open https://example.com/form +playwright-cli snapshot + +playwright-cli fill e1 "user@example.com" +playwright-cli fill e2 "password123" +playwright-cli click e3 +playwright-cli snapshot +playwright-cli close +``` + +## Example: Multi-tab workflow + +```bash +playwright-cli open https://example.com +playwright-cli tab-new https://example.com/other +playwright-cli tab-list +playwright-cli tab-select 0 +playwright-cli snapshot +playwright-cli close +``` + +## Example: Debugging with DevTools + +```bash +playwright-cli open https://example.com +playwright-cli click e4 +playwright-cli fill e7 "test" +playwright-cli console +playwright-cli network +playwright-cli close +``` + +```bash +playwright-cli open https://example.com +playwright-cli tracing-start +playwright-cli click e4 +playwright-cli fill e7 "test" +playwright-cli tracing-stop +playwright-cli close +``` + +## Specific tasks + +* **Running and Debugging Playwright tests** [references/playwright-tests.md](references/playwright-tests.md) +* **Request mocking** [references/request-mocking.md](references/request-mocking.md) +* **Running Playwright code** [references/running-code.md](references/running-code.md) +* **Browser session management** [references/session-management.md](references/session-management.md) +* **Storage state (cookies, localStorage)** [references/storage-state.md](references/storage-state.md) +* **Test generation** [references/test-generation.md](references/test-generation.md) +* **Tracing** [references/tracing.md](references/tracing.md) +* **Video recording** [references/video-recording.md](references/video-recording.md) +* **Inspecting element attributes** [references/element-attributes.md](references/element-attributes.md) diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/element-attributes.md b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/element-attributes.md new file mode 100644 index 00000000..4e9fa6b9 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/element-attributes.md @@ -0,0 +1,23 @@ +# Inspecting Element Attributes + +When the snapshot doesn't show an element's `id`, `class`, `data-*` attributes, or other DOM properties, use `eval` to inspect them. + +## Examples + +```bash +playwright-cli snapshot +# snapshot shows a button as e7 but doesn't reveal its id or data attributes + +# get the element's id +playwright-cli eval "el => el.id" e7 + +# get all CSS classes +playwright-cli eval "el => el.className" e7 + +# get a specific attribute +playwright-cli eval "el => el.getAttribute('data-testid')" e7 +playwright-cli eval "el => el.getAttribute('aria-label')" e7 + +# get a computed style property +playwright-cli eval "el => getComputedStyle(el).display" e7 +``` diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/playwright-tests.md b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/playwright-tests.md new file mode 100644 index 00000000..47627c2a --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/playwright-tests.md @@ -0,0 +1,39 @@ +# Running Playwright Tests + +To run Playwright tests, use the `npx playwright test` command, or a package manager script. To avoid opening the interactive html report, use `PLAYWRIGHT_HTML_OPEN=never` environment variable. + +```bash +# Run all tests +PLAYWRIGHT_HTML_OPEN=never npx playwright test + +# Run all tests through a custom npm script +PLAYWRIGHT_HTML_OPEN=never npm run special-test-command +``` + +# Debugging Playwright Tests + +To debug a failing Playwright test, run it with `--debug=cli` option. This command will pause the test at the start and print the debugging instructions. + +**IMPORTANT**: run the command in the background and check the output until "Debugging Instructions" is printed. + +Once instructions containing a session name are printed, use `playwright-cli` to attach the session and explore the page. + +```bash +# Run the test +PLAYWRIGHT_HTML_OPEN=never npx playwright test --debug=cli +# ... +# ... debugging instructions for "tw-abcdef" session ... +# ... + +# Attach to the test +playwright-cli attach tw-abcdef +``` + +Keep the test running in the background while you explore and look for a fix. +The test is paused at the start, so you should step over or pause at a particular location +where the problem is most likely to be. + +Every action you perform with `playwright-cli` generates corresponding Playwright TypeScript code. +This code appears in the output and can be copied directly into the test. Most of the time, a specific locator or an expectation should be updated, but it could also be a bug in the app. Use your judgement. + +After fixing the test, stop the background test run. Rerun to check that test passes. diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/request-mocking.md b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/request-mocking.md new file mode 100644 index 00000000..9005fda6 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/request-mocking.md @@ -0,0 +1,87 @@ +# Request Mocking + +Intercept, mock, modify, and block network requests. + +## CLI Route Commands + +```bash +# Mock with custom status +playwright-cli route "**/*.jpg" --status=404 + +# Mock with JSON body +playwright-cli route "**/api/users" --body='[{"id":1,"name":"Alice"}]' --content-type=application/json + +# Mock with custom headers +playwright-cli route "**/api/data" --body='{"ok":true}' --header="X-Custom: value" + +# Remove headers from requests +playwright-cli route "**/*" --remove-header=cookie,authorization + +# List active routes +playwright-cli route-list + +# Remove a route or all routes +playwright-cli unroute "**/*.jpg" +playwright-cli unroute +``` + +## URL Patterns + +``` +**/api/users - Exact path match +**/api/*/details - Wildcard in path +**/*.{png,jpg,jpeg} - Match file extensions +**/search?q=* - Match query parameters +``` + +## Advanced Mocking with run-code + +For conditional responses, request body inspection, response modification, or delays: + +### Conditional Response Based on Request + +```bash +playwright-cli run-code "async page => { + await page.route('**/api/login', route => { + const body = route.request().postDataJSON(); + if (body.username === 'admin') { + route.fulfill({ body: JSON.stringify({ token: 'mock-token' }) }); + } else { + route.fulfill({ status: 401, body: JSON.stringify({ error: 'Invalid' }) }); + } + }); +}" +``` + +### Modify Real Response + +```bash +playwright-cli run-code "async page => { + await page.route('**/api/user', async route => { + const response = await route.fetch(); + const json = await response.json(); + json.isPremium = true; + await route.fulfill({ response, json }); + }); +}" +``` + +### Simulate Network Failures + +```bash +playwright-cli run-code "async page => { + await page.route('**/api/offline', route => route.abort('internetdisconnected')); +}" +# Options: connectionrefused, timedout, connectionreset, internetdisconnected +``` + +### Delayed Response + +```bash +playwright-cli run-code "async page => { + await page.route('**/api/slow', async route => { + await new Promise(r => setTimeout(r, 3000)); + route.fulfill({ body: JSON.stringify({ data: 'loaded' }) }); + }); +}" +``` diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/running-code.md b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/running-code.md new file mode 100644 index 00000000..8b35e9a4 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/running-code.md @@ -0,0 +1,231 @@ +# Running Custom Playwright Code + +Use `run-code` to execute arbitrary Playwright code for advanced scenarios not covered by CLI commands. + +## Syntax + +```bash +playwright-cli run-code "async page => { + // Your Playwright code here + // Access page.context() for browser context operations +}" +``` + +## Geolocation + +```bash +# Grant geolocation permission and set location +playwright-cli run-code "async page => { + await page.context().grantPermissions(['geolocation']); + await page.context().setGeolocation({ latitude: 37.7749, longitude: -122.4194 }); +}" + +# Set location to London +playwright-cli run-code "async page => { + await page.context().grantPermissions(['geolocation']); + await page.context().setGeolocation({ latitude: 51.5074, longitude: -0.1278 }); +}" + +# Clear geolocation override +playwright-cli run-code "async page => { + await page.context().clearPermissions(); +}" +``` + +## Permissions + +```bash +# Grant multiple permissions +playwright-cli run-code "async page => { + await page.context().grantPermissions([ + 'geolocation', + 'notifications', + 'camera', + 'microphone' + ]); +}" + +# Grant permissions for specific origin +playwright-cli run-code "async page => { + await page.context().grantPermissions(['clipboard-read'], { + origin: 'https://example.com' + }); +}" +``` + +## Media Emulation + +```bash +# Emulate dark color scheme +playwright-cli run-code "async page => { + await page.emulateMedia({ colorScheme: 'dark' }); +}" + +# Emulate light color scheme +playwright-cli run-code "async page => { + await page.emulateMedia({ colorScheme: 'light' }); +}" + +# Emulate reduced motion +playwright-cli run-code "async page => { + await page.emulateMedia({ reducedMotion: 'reduce' }); +}" + +# Emulate print media +playwright-cli run-code "async page => { + await page.emulateMedia({ media: 'print' }); +}" +``` + +## Wait Strategies + +```bash +# Wait for network idle +playwright-cli run-code "async page => { + await page.waitForLoadState('networkidle'); +}" + +# Wait for specific element +playwright-cli run-code "async page => { + await page.locator('.loading').waitFor({ state: 'hidden' }); +}" + +# Wait for function to return true +playwright-cli run-code "async page => { + await page.waitForFunction(() => window.appReady === true); +}" + +# Wait with timeout +playwright-cli run-code "async page => { + await page.locator('.result').waitFor({ timeout: 10000 }); +}" +``` + +## Frames and Iframes + +```bash +# Work with iframe +playwright-cli run-code "async page => { + const frame = page.locator('iframe#my-iframe').contentFrame(); + await frame.locator('button').click(); +}" + +# Get all frames +playwright-cli run-code "async page => { + const frames = page.frames(); + return frames.map(f => f.url()); +}" +``` + +## File Downloads + +```bash +# Handle file download +playwright-cli run-code "async page => { + const downloadPromise = page.waitForEvent('download'); + await page.getByRole('link', { name: 'Download' }).click(); + const download = await downloadPromise; + await download.saveAs('./downloaded-file.pdf'); + return download.suggestedFilename(); +}" +``` + +## Clipboard + +```bash +# Read clipboard (requires permission) +playwright-cli run-code "async page => { + await page.context().grantPermissions(['clipboard-read']); + return await page.evaluate(() => navigator.clipboard.readText()); +}" + +# Write to clipboard +playwright-cli run-code "async page => { + await page.evaluate(text => navigator.clipboard.writeText(text), 'Hello clipboard!'); +}" +``` + +## Page Information + +```bash +# Get page title +playwright-cli run-code "async page => { + return await page.title(); +}" + +# Get current URL +playwright-cli run-code "async page => { + return page.url(); +}" + +# Get page content +playwright-cli run-code "async page => { + return await page.content(); +}" + +# Get viewport size +playwright-cli run-code "async page => { + return page.viewportSize(); +}" +``` + +## JavaScript Execution + +```bash +# Execute JavaScript and return result +playwright-cli run-code "async page => { + return await page.evaluate(() => { + return { + userAgent: navigator.userAgent, + language: navigator.language, + cookiesEnabled: navigator.cookieEnabled + }; + }); +}" + +# Pass arguments to evaluate +playwright-cli run-code "async page => { + const multiplier = 5; + return await page.evaluate(m => document.querySelectorAll('li').length * m, multiplier); +}" +``` + +## Error Handling + +```bash +# Try-catch in run-code +playwright-cli run-code "async page => { + try { + await page.getByRole('button', { name: 'Submit' }).click({ timeout: 1000 }); + return 'clicked'; + } catch (e) { + return 'element not found'; + } +}" +``` + +## Complex Workflows + +```bash +# Login and save state +playwright-cli run-code "async page => { + await page.goto('https://example.com/login'); + await page.getByRole('textbox', { name: 'Email' }).fill('user@example.com'); + await page.getByRole('textbox', { name: 'Password' }).fill('secret'); + await page.getByRole('button', { name: 'Sign in' }).click(); + await page.waitForURL('**/dashboard'); + await page.context().storageState({ path: 'auth.json' }); + return 'Login successful'; +}" + +# Scrape data from multiple pages +playwright-cli run-code "async page => { + const results = []; + for (let i = 1; i <= 3; i++) { + await page.goto(\`https://example.com/page/\${i}\`); + const items = await page.locator('.item').allTextContents(); + results.push(...items); + } + return results; +}" +``` diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/session-management.md b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/session-management.md new file mode 100644 index 00000000..fac96066 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/session-management.md @@ -0,0 +1,169 @@ +# Browser Session Management + +Run multiple isolated browser sessions concurrently with state persistence. + +## Named Browser Sessions + +Use `-s` flag to isolate browser contexts: + +```bash +# Browser 1: Authentication flow +playwright-cli -s=auth open https://app.example.com/login + +# Browser 2: Public browsing (separate cookies, storage) +playwright-cli -s=public open https://example.com + +# Commands are isolated by browser session +playwright-cli -s=auth fill e1 "user@example.com" +playwright-cli -s=public snapshot +``` + +## Browser Session Isolation Properties + +Each browser session has independent: +- Cookies +- LocalStorage / SessionStorage +- IndexedDB +- Cache +- Browsing history +- Open tabs + +## Browser Session Commands + +```bash +# List all browser sessions +playwright-cli list + +# Stop a browser session (close the browser) +playwright-cli close # stop the default browser +playwright-cli -s=mysession close # stop a named browser + +# Stop all browser sessions +playwright-cli close-all + +# Forcefully kill all daemon processes (for stale/zombie processes) +playwright-cli kill-all + +# Delete browser session user data (profile directory) +playwright-cli delete-data # delete default browser data +playwright-cli -s=mysession delete-data # delete named browser data +``` + +## Environment Variable + +Set a default browser session name via environment variable: + +```bash +export PLAYWRIGHT_CLI_SESSION="mysession" +playwright-cli open example.com # Uses "mysession" automatically +``` + +## Common Patterns + +### Concurrent Scraping + +```bash +#!/bin/bash +# Scrape multiple sites concurrently + +# Start all browsers +playwright-cli -s=site1 open https://site1.com & +playwright-cli -s=site2 open https://site2.com & +playwright-cli -s=site3 open https://site3.com & +wait + +# Take snapshots from each +playwright-cli -s=site1 snapshot +playwright-cli -s=site2 snapshot +playwright-cli -s=site3 snapshot + +# Cleanup +playwright-cli close-all +``` + +### A/B Testing Sessions + +```bash +# Test different user experiences +playwright-cli -s=variant-a open "https://app.com?variant=a" +playwright-cli -s=variant-b open "https://app.com?variant=b" + +# Compare +playwright-cli -s=variant-a screenshot +playwright-cli -s=variant-b screenshot +``` + +### Persistent Profile + +By default, browser profile is kept in memory only. Use `--persistent` flag on `open` to persist the browser profile to disk: + +```bash +# Use persistent profile (auto-generated location) +playwright-cli open https://example.com --persistent + +# Use persistent profile with custom directory +playwright-cli open https://example.com --profile=/path/to/profile +``` + +## Default Browser Session + +When `-s` is omitted, commands use the default browser session: + +```bash +# These use the same default browser session +playwright-cli open https://example.com +playwright-cli snapshot +playwright-cli close # Stops default browser +``` + +## Browser Session Configuration + +Configure a browser session with specific settings when opening: + +```bash +# Open with config file +playwright-cli open https://example.com --config=.playwright/my-cli.json + +# Open with specific browser +playwright-cli open https://example.com --browser=firefox + +# Open in headed mode +playwright-cli open https://example.com --headed + +# Open with persistent profile +playwright-cli open https://example.com --persistent +``` + +## Best Practices + +### 1. Name Browser Sessions Semantically + +```bash +# GOOD: Clear purpose +playwright-cli -s=github-auth open https://github.com +playwright-cli -s=docs-scrape open https://docs.example.com + +# AVOID: Generic names +playwright-cli -s=s1 open https://github.com +``` + +### 2. Always Clean Up + +```bash +# Stop browsers when done +playwright-cli -s=auth close +playwright-cli -s=scrape close + +# Or stop all at once +playwright-cli close-all + +# If browsers become unresponsive or zombie processes remain +playwright-cli kill-all +``` + +### 3. Delete Stale Browser Data + +```bash +# Remove old browser data to free disk space +playwright-cli -s=oldsession delete-data +``` diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/storage-state.md b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/storage-state.md new file mode 100644 index 00000000..c856db5e --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/storage-state.md @@ -0,0 +1,275 @@ +# Storage Management + +Manage cookies, localStorage, sessionStorage, and browser storage state. + +## Storage State + +Save and restore complete browser state including cookies and storage. + +### Save Storage State + +```bash +# Save to auto-generated filename (storage-state-{timestamp}.json) +playwright-cli state-save + +# Save to specific filename +playwright-cli state-save my-auth-state.json +``` + +### Restore Storage State + +```bash +# Load storage state from file +playwright-cli state-load my-auth-state.json + +# Reload page to apply cookies +playwright-cli open https://example.com +``` + +### Storage State File Format + +The saved file contains: + +```json +{ + "cookies": [ + { + "name": "session_id", + "value": "abc123", + "domain": "example.com", + "path": "/", + "expires": 1735689600, + "httpOnly": true, + "secure": true, + "sameSite": "Lax" + } + ], + "origins": [ + { + "origin": "https://example.com", + "localStorage": [ + { "name": "theme", "value": "dark" }, + { "name": "user_id", "value": "12345" } + ] + } + ] +} +``` + +## Cookies + +### List All Cookies + +```bash +playwright-cli cookie-list +``` + +### Filter Cookies by Domain + +```bash +playwright-cli cookie-list --domain=example.com +``` + +### Filter Cookies by Path + +```bash +playwright-cli cookie-list --path=/api +``` + +### Get Specific Cookie + +```bash +playwright-cli cookie-get session_id +``` + +### Set a Cookie + +```bash +# Basic cookie +playwright-cli cookie-set session abc123 + +# Cookie with options +playwright-cli cookie-set session abc123 --domain=example.com --path=/ --httpOnly --secure --sameSite=Lax + +# Cookie with expiration (Unix timestamp) +playwright-cli cookie-set remember_me token123 --expires=1735689600 +``` + +### Delete a Cookie + +```bash +playwright-cli cookie-delete session_id +``` + +### Clear All Cookies + +```bash +playwright-cli cookie-clear +``` + +### Advanced: Multiple Cookies or Custom Options + +For complex scenarios like adding multiple cookies at once, use `run-code`: + +```bash +playwright-cli run-code "async page => { + await page.context().addCookies([ + { name: 'session_id', value: 'sess_abc123', domain: 'example.com', path: '/', httpOnly: true }, + { name: 'preferences', value: JSON.stringify({ theme: 'dark' }), domain: 'example.com', path: '/' } + ]); +}" +``` + +## Local Storage + +### List All localStorage Items + +```bash +playwright-cli localstorage-list +``` + +### Get Single Value + +```bash +playwright-cli localstorage-get token +``` + +### Set Value + +```bash +playwright-cli localstorage-set theme dark +``` + +### Set JSON Value + +```bash +playwright-cli localstorage-set user_settings '{"theme":"dark","language":"en"}' +``` + +### Delete Single Item + +```bash +playwright-cli localstorage-delete token +``` + +### Clear All localStorage + +```bash +playwright-cli localstorage-clear +``` + +### Advanced: Multiple Operations + +For complex scenarios like setting multiple values at once, use `run-code`: + +```bash +playwright-cli run-code "async page => { + await page.evaluate(() => { + localStorage.setItem('token', 'jwt_abc123'); + localStorage.setItem('user_id', '12345'); + localStorage.setItem('expires_at', Date.now() + 3600000); + }); +}" +``` + +## Session Storage + +### List All sessionStorage Items + +```bash +playwright-cli sessionstorage-list +``` + +### Get Single Value + +```bash +playwright-cli sessionstorage-get form_data +``` + +### Set Value + +```bash +playwright-cli sessionstorage-set step 3 +``` + +### Delete Single Item + +```bash +playwright-cli sessionstorage-delete step +``` + +### Clear sessionStorage + +```bash +playwright-cli sessionstorage-clear +``` + +## IndexedDB + +### List Databases + +```bash +playwright-cli run-code "async page => { + return await page.evaluate(async () => { + const databases = await indexedDB.databases(); + return databases; + }); +}" +``` + +### Delete Database + +```bash +playwright-cli run-code "async page => { + await page.evaluate(() => { + indexedDB.deleteDatabase('myDatabase'); + }); +}" +``` + +## Common Patterns + +### Authentication State Reuse + +```bash +# Step 1: Login and save state +playwright-cli open https://app.example.com/login +playwright-cli snapshot +playwright-cli fill e1 "user@example.com" +playwright-cli fill e2 "password123" +playwright-cli click e3 + +# Save the authenticated state +playwright-cli state-save auth.json + +# Step 2: Later, restore state and skip login +playwright-cli state-load auth.json +playwright-cli open https://app.example.com/dashboard +# Already logged in! +``` + +### Save and Restore Roundtrip + +```bash +# Set up authentication state +playwright-cli open https://example.com +playwright-cli eval "() => { document.cookie = 'session=abc123'; localStorage.setItem('user', 'john'); }" + +# Save state to file +playwright-cli state-save my-session.json + +# ... later, in a new session ... + +# Restore state +playwright-cli state-load my-session.json +playwright-cli open https://example.com +# Cookies and localStorage are restored! +``` + +## Security Notes + +- Never commit storage state files containing auth tokens +- Add `*.auth-state.json` to `.gitignore` +- Delete state files after automation completes +- Use environment variables for sensitive data +- By default, sessions run in-memory mode which is safer for sensitive operations diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/test-generation.md b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/test-generation.md new file mode 100644 index 00000000..7a09df38 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/test-generation.md @@ -0,0 +1,88 @@ +# Test Generation + +Generate Playwright test code automatically as you interact with the browser. + +## How It Works + +Every action you perform with `playwright-cli` generates corresponding Playwright TypeScript code. +This code appears in the output and can be copied directly into your test files. + +## Example Workflow + +```bash +# Start a session +playwright-cli open https://example.com/login + +# Take a snapshot to see elements +playwright-cli snapshot +# Output shows: e1 [textbox "Email"], e2 [textbox "Password"], e3 [button "Sign In"] + +# Fill form fields - generates code automatically +playwright-cli fill e1 "user@example.com" +# Ran Playwright code: +# await page.getByRole('textbox', { name: 'Email' }).fill('user@example.com'); + +playwright-cli fill e2 "password123" +# Ran Playwright code: +# await page.getByRole('textbox', { name: 'Password' }).fill('password123'); + +playwright-cli click e3 +# Ran Playwright code: +# await page.getByRole('button', { name: 'Sign In' }).click(); +``` + +## Building a Test File + +Collect the generated code into a Playwright test: + +```typescript +import { test, expect } from '@playwright/test'; + +test('login flow', async ({ page }) => { + // Generated code from playwright-cli session: + await page.goto('https://example.com/login'); + await page.getByRole('textbox', { name: 'Email' }).fill('user@example.com'); + await page.getByRole('textbox', { name: 'Password' }).fill('password123'); + await page.getByRole('button', { name: 'Sign In' }).click(); + + // Add assertions + await expect(page).toHaveURL(/.*dashboard/); +}); +``` + +## Best Practices + +### 1. Use Semantic Locators + +The generated code uses role-based locators when possible, which are more resilient: + +```typescript +// Generated (good - semantic) +await page.getByRole('button', { name: 'Submit' }).click(); + +// Avoid (fragile - CSS selectors) +await page.locator('#submit-btn').click(); +``` + +### 2. Explore Before Recording + +Take snapshots to understand the page structure before recording actions: + +```bash +playwright-cli open https://example.com +playwright-cli snapshot +# Review the element structure +playwright-cli click e5 +``` + +### 3. Add Assertions Manually + +Generated code captures actions but not assertions. Add expectations in your test: + +```typescript +// Generated action +await page.getByRole('button', { name: 'Submit' }).click(); + +// Manual assertion +await expect(page.getByText('Success')).toBeVisible(); +``` diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/tracing.md b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/tracing.md new file mode 100644 index 00000000..7ce7babb --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/tracing.md @@ -0,0 +1,139 @@ +# Tracing + +Capture detailed execution traces for debugging and analysis. Traces include DOM snapshots, screenshots, network activity, and console logs. + +## Basic Usage + +```bash +# Start trace recording +playwright-cli tracing-start + +# Perform actions +playwright-cli open https://example.com +playwright-cli click e1 +playwright-cli fill e2 "test" + +# Stop trace recording +playwright-cli tracing-stop +``` + +## Trace Output Files + +When you start tracing, Playwright creates a `traces/` directory with several files: + +### `trace-{timestamp}.trace` + +**Action log** - The main trace file containing: +- Every action performed (clicks, fills, navigations) +- DOM snapshots before and after each action +- Screenshots at each step +- Timing information +- Console messages +- Source locations + +### `trace-{timestamp}.network` + +**Network log** - Complete network activity: +- All HTTP requests and responses +- Request headers and bodies +- Response headers and bodies +- Timing (DNS, connect, TLS, TTFB, download) +- Resource sizes +- Failed requests and errors + +### `resources/` + +**Resources directory** - Cached resources: +- Images, fonts, stylesheets, scripts +- Response bodies for replay +- Assets needed to reconstruct page state + +## What Traces Capture + +| Category | Details | +|----------|---------| +| **Actions** | Clicks, fills, hovers, keyboard input, navigations | +| **DOM** | Full DOM snapshot before/after each action | +| **Screenshots** | Visual state at each step | +| **Network** | All requests, responses, headers, bodies, timing | +| **Console** | All console.log, warn, error messages | +| **Timing** | Precise timing for each operation | + +## Use Cases + +### Debugging Failed Actions + +```bash +playwright-cli tracing-start +playwright-cli open https://app.example.com + +# This click fails - why? +playwright-cli click e5 + +playwright-cli tracing-stop +# Open trace to see DOM state when click was attempted +``` + +### Analyzing Performance + +```bash +playwright-cli tracing-start +playwright-cli open https://slow-site.com +playwright-cli tracing-stop + +# View network waterfall to identify slow resources +``` + +### Capturing Evidence + +```bash +# Record a complete user flow for documentation +playwright-cli tracing-start + +playwright-cli open https://app.example.com/checkout +playwright-cli fill e1 "4111111111111111" +playwright-cli fill e2 "12/25" +playwright-cli fill e3 "123" +playwright-cli click e4 + +playwright-cli tracing-stop +# Trace shows exact sequence of events +``` + +## Trace vs Video vs Screenshot + +| Feature | Trace | Video | Screenshot | +|---------|-------|-------|------------| +| **Format** | .trace file | .webm video | .png/.jpeg image | +| **DOM inspection** | Yes | No | No | +| **Network details** | Yes | No | No | +| **Step-by-step replay** | Yes | Continuous | Single frame | +| **File size** | Medium | Large | Small | +| **Best for** | Debugging | Demos | Quick capture | + +## Best Practices + +### 1. Start Tracing Before the Problem + +```bash +# Trace the entire flow, not just the failing step +playwright-cli tracing-start +playwright-cli open https://example.com +# ... all steps leading to the issue ... +playwright-cli tracing-stop +``` + +### 2. Clean Up Old Traces + +Traces can consume significant disk space: + +```bash +# Remove traces older than 7 days +find .playwright-cli/traces -mtime +7 -delete +``` + +## Limitations + +- Traces add overhead to automation +- Large traces can consume significant disk space +- Some dynamic content may not replay perfectly diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/video-recording.md b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/video-recording.md new file mode 100644 index 00000000..9c04afb9 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-client/skill/references/video-recording.md @@ -0,0 +1,143 @@ +# Video Recording + +Capture browser automation sessions as video for debugging, documentation, or verification. Produces WebM (VP8/VP9 codec). + +## Basic Recording + +```bash +# Open browser first +playwright-cli open + +# Start recording +playwright-cli video-start demo.webm + +# Add a chapter marker for section transitions +playwright-cli video-chapter "Getting Started" --description="Opening the homepage" --duration=2000 + +# Navigate and perform actions +playwright-cli goto https://example.com +playwright-cli snapshot +playwright-cli click e1 + +# Add another chapter +playwright-cli video-chapter "Filling Form" --description="Entering test data" --duration=2000 +playwright-cli fill e2 "test input" + +# Stop and save +playwright-cli video-stop +``` + +## Best Practices + +### 1. Use Descriptive Filenames + +```bash +# Include context in filename +playwright-cli video-start recordings/login-flow-2024-01-15.webm +playwright-cli video-start recordings/checkout-test-run-42.webm +``` + +### 2. Record entire hero scripts. + +When recording a video for the user or as a proof of work, it is best to create a code snippet and execute it with run-code. +It allows pulling appropriate pauses between the actions and annotating the video. There are new Playwright APIs for that. + +1) Perform scenario using CLI and take note of all locators and actions. You'll need those locators to request thier bounding boxes for highlight. +2) Create a file with the intended script for video (below). Use pressSequentially w/ delay for nice typing, make reasonable pauses. +3) Use playwright-cli run-code --file your-script.js + +**Important**: Overlays are `pointer-events: none` — they do not interfere with page interactions. You can safely keep sticky overlays visible while clicking, filling, or performing any actions on the page. + +```js +async page => { + await page.screencast.start({ path: 'video.webm', size: { width: 1280, height: 800 } }); + await page.goto('https://demo.playwright.dev/todomvc'); + + // Show a chapter card — blurs the page and shows a dialog. + // Blocks until duration expires, then auto-removes. + // Use this for simple use cases, but always feel free to hand-craft your own beautiful + // overlay via await page.screencast.showOverlay(). + await page.screencast.showChapter('Adding Todo Items', { + description: 'We will add several items to the todo list.', + duration: 2000, + }); + + // Perform action + await page.getByRole('textbox', { name: 'What needs to be done?' }).pressSequentially('Walk the dog', { delay: 60 }); + await page.getByRole('textbox', { name: 'What needs to be done?' }).press('Enter'); + await page.waitForTimeout(1000); + + // Show next chapter + await page.screencast.showChapter('Verifying Results', { + description: 'Checking the item appeared in the list.', + duration: 2000, + }); + + // Add a sticky annotation that stays while you perform actions. + // Overlays are pointer-events: none, so they won't block clicks. + const annotation = await page.screencast.showOverlay(` + <div style="position: absolute; top: 8px; right: 8px; + padding: 6px 12px; background: rgba(0,0,0,0.7); + border-radius: 8px; font-size: 13px; color: white;"> + ✓ Item added successfully + </div> + `); + + // Perform more actions while the annotation is visible + await page.getByRole('textbox', { name: 'What needs to be done?' }).pressSequentially('Buy groceries', { delay: 60 }); + await page.getByRole('textbox', { name: 'What needs to be done?' }).press('Enter'); + await page.waitForTimeout(1500); + + // Remove the annotation when done + await annotation.dispose(); + + // You can also highlight relevant locators and provide contextual annotations. + const bounds = await page.getByText('Walk the dog').boundingBox(); + await page.screencast.showOverlay(` + <div style="position: absolute; + top: ${bounds.y}px; + left: ${bounds.x}px; + width: ${bounds.width}px; + height: ${bounds.height}px; + border: 1px solid red;"> + </div> + <div style="position: absolute; + top: ${bounds.y + bounds.height + 5}px; + left: ${bounds.x + bounds.width / 2}px; + transform: translateX(-50%); + padding: 6px; + background: #808080; + border-radius: 10px; + font-size: 14px; + color: white;">Check it out, it is right above this text + </div> + `, { duration: 2000 }); + + await page.screencast.stop(); +} +``` + +Embrace creativity, overlays are powerful. + +### Overlay API Summary + +| Method | Use Case | +|--------|----------| +| `page.screencast.showChapter(title, { description?, duration?, styleSheet? })` | Full-screen chapter card with blurred backdrop — ideal for section transitions | +| `page.screencast.showOverlay(html, { duration? })` | Custom HTML overlay — use for callouts, labels, highlights | +| `disposable.dispose()` | Remove a sticky overlay added without duration | +| `page.screencast.hideOverlays()` / `page.screencast.showOverlays()` | Temporarily hide/show all overlays | + +## Tracing vs Video + +| Feature | Video | Tracing | +|---------|-------|---------| +| Output | WebM file | Trace file (viewable in Trace Viewer) | +| Shows | Visual recording | DOM snapshots, network, console, actions | +| Use case | Demos, documentation | Debugging, analysis | +| Size | Larger | Smaller | + +## Limitations + +- Recording adds slight overhead to automation +- Large recordings can consume significant disk space diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/command.js b/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/command.js new file mode 100644 index 00000000..a1e9abb3 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/command.js @@ -0,0 +1,73 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var command_exports = {}; +__export(command_exports, { + declareCommand: () => declareCommand, + parseCommand: () => parseCommand +}); +module.exports = __toCommonJS(command_exports); +var import_zodBundle = require("../../zodBundle"); +function declareCommand(command) { + return command; +} +const kEmptyOptions = import_zodBundle.z.object({}); +const kEmptyArgs = import_zodBundle.z.object({}); +function parseCommand(command, args) { + const optionsObject = { ...args }; + delete optionsObject["_"]; + const optionsSchema = (command.options ?? kEmptyOptions).strict(); + const options = zodParse(optionsSchema, optionsObject, "option"); + const argsSchema = (command.args ?? kEmptyArgs).strict(); + const argNames = [...Object.keys(argsSchema.shape)]; + const argv = args["_"].slice(1); + if (argv.length > argNames.length) + throw new Error(`error: too many arguments: expected ${argNames.length}, received ${argv.length}`); + const argsObject = {}; + argNames.forEach((name, index) => argsObject[name] = argv[index]); + const parsedArgsObject = zodParse(argsSchema, argsObject, "argument"); + const toolName = typeof command.toolName === "function" ? command.toolName({ ...parsedArgsObject, ...options }) : command.toolName; + const toolParams = command.toolParams({ ...parsedArgsObject, ...options }); + return { toolName, toolParams }; +} +function zodParse(schema, data, type) { + try { + return schema.parse(data); + } catch (e) { + throw new Error(e.issues.map((issue) => { + const keys = issue.code === "unrecognized_keys" ? issue.keys : [""]; + const props = keys.map((key) => [...issue.path, key].filter(Boolean).join(".")); + return props.map((prop) => { + const label = type === "option" ? `'--${prop}' option` : `'${prop}' argument`; + switch (issue.code) { + case "invalid_type": + return "error: " + label + ": " + issue.message.replace(/Invalid input:/, "").trim(); + case "unrecognized_keys": + return "error: unknown " + label; + default: + return "error: " + label + ": " + issue.message; + } + }); + }).flat().join("\n")); + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + declareCommand, + parseCommand +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/commands.js b/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/commands.js new file mode 100644 index 00000000..06f63a1a --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/commands.js @@ -0,0 +1,956 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var commands_exports = {}; +__export(commands_exports, { + commands: () => commands +}); +module.exports = __toCommonJS(commands_exports); +var import_zodBundle = require("../../zodBundle"); +var import_command = require("./command"); +const numberArg = import_zodBundle.z.preprocess((val, ctx) => { + const number = Number(val); + if (Number.isNaN(number)) { + ctx.issues.push({ + code: "custom", + message: `expected number, received '${val}'`, + input: val + }); + } + return number; +}, import_zodBundle.z.number()); +function asRef(refOrSelector) { + if (refOrSelector === void 0) + return {}; + if (refOrSelector.match(/^(f\d+)?e\d+$/)) + return { ref: refOrSelector }; + return { ref: "", selector: refOrSelector }; +} +const open = (0, import_command.declareCommand)({ + name: "open", + description: "Open the browser", + category: "core", + args: import_zodBundle.z.object({ + url: import_zodBundle.z.string().optional().describe("The URL to navigate to") + }), + options: import_zodBundle.z.object({ + browser: import_zodBundle.z.string().optional().describe("Browser or chrome channel to use, possible values: chrome, firefox, webkit, msedge."), + config: import_zodBundle.z.string().optional().describe("Path to the configuration file, defaults to .playwright/cli.config.json"), + extension: import_zodBundle.z.boolean().optional().describe("Connect to browser extension"), + headed: import_zodBundle.z.boolean().optional().describe("Run browser in headed mode"), + persistent: import_zodBundle.z.boolean().optional().describe("Use persistent browser profile"), + profile: import_zodBundle.z.string().optional().describe("Use persistent browser profile, store profile in specified directory.") + }), + toolName: ({ url }) => url ? "browser_navigate" : "browser_snapshot", + toolParams: ({ url }) => url ? { url: url || "about:blank" } : { filename: "<auto>" } +}); +const attach = (0, import_command.declareCommand)({ + name: "attach", + description: "Attach to a running Playwright browser", + category: "core", + args: import_zodBundle.z.object({ + name: import_zodBundle.z.string().describe("Name or endpoint of the browser to attach to") + }), + options: import_zodBundle.z.object({ + config: import_zodBundle.z.string().optional().describe("Path to the configuration file, defaults to .playwright/cli.config.json"), + session: import_zodBundle.z.string().optional().describe("Session name alias (defaults to the attach target name)") + }), + toolName: "browser_snapshot", + toolParams: () => ({ filename: "<auto>" }) +}); +const close = (0, import_command.declareCommand)({ + name: "close", + description: "Close the browser", + category: "core", + args: import_zodBundle.z.object({}), + toolName: "", + toolParams: () => ({}) +}); +const goto = (0, import_command.declareCommand)({ + name: "goto", + description: "Navigate to a URL", + category: "core", + args: import_zodBundle.z.object({ + url: import_zodBundle.z.string().describe("The URL to navigate to") + }), + toolName: "browser_navigate", + toolParams: ({ url }) => ({ url }) +}); +const goBack = (0, import_command.declareCommand)({ + name: "go-back", + description: "Go back to the previous page", + category: "navigation", + args: import_zodBundle.z.object({}), + toolName: "browser_navigate_back", + toolParams: () => ({}) +}); +const goForward = (0, import_command.declareCommand)({ + name: "go-forward", + description: "Go forward to the next page", + category: "navigation", + args: import_zodBundle.z.object({}), + toolName: "browser_navigate_forward", + toolParams: () => ({}) +}); +const reload = (0, import_command.declareCommand)({ + name: "reload", + description: "Reload the current page", + category: "navigation", + args: import_zodBundle.z.object({}), + toolName: "browser_reload", + toolParams: () => ({}) +}); +const pressKey = (0, import_command.declareCommand)({ + name: "press", + description: "Press a key on the keyboard, `a`, `ArrowLeft`", + category: "keyboard", + args: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Name of the key to press or a character to generate, such as `ArrowLeft` or `a`") + }), + toolName: "browser_press_key", + toolParams: ({ key }) => ({ key }) +}); +const type = (0, import_command.declareCommand)({ + name: "type", + description: "Type text into editable element", + category: "core", + args: import_zodBundle.z.object({ + text: import_zodBundle.z.string().describe("Text to type into the element") + }), + options: import_zodBundle.z.object({ + submit: import_zodBundle.z.boolean().optional().describe("Whether to submit entered text (press Enter after)") + }), + toolName: "browser_press_sequentially", + toolParams: ({ text, submit }) => ({ text, submit }) +}); +const keydown = (0, import_command.declareCommand)({ + name: "keydown", + description: "Press a key down on the keyboard", + category: "keyboard", + args: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Name of the key to press or a character to generate, such as `ArrowLeft` or `a`") + }), + toolName: "browser_keydown", + toolParams: ({ key }) => ({ key }) +}); +const keyup = (0, import_command.declareCommand)({ + name: "keyup", + description: "Press a key up on the keyboard", + category: "keyboard", + args: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Name of the key to press or a character to generate, such as `ArrowLeft` or `a`") + }), + toolName: "browser_keyup", + toolParams: ({ key }) => ({ key }) +}); +const mouseMove = (0, import_command.declareCommand)({ + name: "mousemove", + description: "Move mouse to a given position", + category: "mouse", + args: import_zodBundle.z.object({ + x: numberArg.describe("X coordinate"), + y: numberArg.describe("Y coordinate") + }), + toolName: "browser_mouse_move_xy", + toolParams: ({ x, y }) => ({ x, y }) +}); +const mouseDown = (0, import_command.declareCommand)({ + name: "mousedown", + description: "Press mouse down", + category: "mouse", + args: import_zodBundle.z.object({ + button: import_zodBundle.z.string().optional().describe("Button to press, defaults to left") + }), + toolName: "browser_mouse_down", + toolParams: ({ button }) => ({ button }) +}); +const mouseUp = (0, import_command.declareCommand)({ + name: "mouseup", + description: "Press mouse up", + category: "mouse", + args: import_zodBundle.z.object({ + button: import_zodBundle.z.string().optional().describe("Button to press, defaults to left") + }), + toolName: "browser_mouse_up", + toolParams: ({ button }) => ({ button }) +}); +const mouseWheel = (0, import_command.declareCommand)({ + name: "mousewheel", + description: "Scroll mouse wheel", + category: "mouse", + args: import_zodBundle.z.object({ + dx: numberArg.describe("X delta"), + dy: numberArg.describe("Y delta") + }), + toolName: "browser_mouse_wheel", + toolParams: ({ dx: deltaX, dy: deltaY }) => ({ deltaX, deltaY }) +}); +const click = (0, import_command.declareCommand)({ + name: "click", + description: "Perform click on a web page", + category: "core", + args: import_zodBundle.z.object({ + target: import_zodBundle.z.string().describe("Exact target element reference from the page snapshot, or a unique element selector"), + button: import_zodBundle.z.string().optional().describe("Button to click, defaults to left") + }), + options: import_zodBundle.z.object({ + modifiers: import_zodBundle.z.array(import_zodBundle.z.string()).optional().describe("Modifier keys to press") + }), + toolName: "browser_click", + toolParams: ({ target, button, modifiers }) => ({ ...asRef(target), button, modifiers }) +}); +const doubleClick = (0, import_command.declareCommand)({ + name: "dblclick", + description: "Perform double click on a web page", + category: "core", + args: import_zodBundle.z.object({ + target: import_zodBundle.z.string().describe("Exact target element reference from the page snapshot, or a unique element selector"), + button: import_zodBundle.z.string().optional().describe("Button to click, defaults to left") + }), + options: import_zodBundle.z.object({ + modifiers: import_zodBundle.z.array(import_zodBundle.z.string()).optional().describe("Modifier keys to press") + }), + toolName: "browser_click", + toolParams: ({ target, button, modifiers }) => ({ ...asRef(target), button, modifiers, doubleClick: true }) +}); +const drag = (0, import_command.declareCommand)({ + name: "drag", + description: "Perform drag and drop between two elements", + category: "core", + args: import_zodBundle.z.object({ + startElement: import_zodBundle.z.string().describe("Exact source element reference from the page snapshot, or a unique element selector"), + endElement: import_zodBundle.z.string().describe("Exact target element reference from the page snapshot, or a unique element selector") + }), + toolName: "browser_drag", + toolParams: ({ startElement, endElement }) => { + const start = asRef(startElement); + const end = asRef(endElement); + return { startRef: start.ref, startSelector: start.selector, endRef: end.ref, endSelector: end.selector }; + } +}); +const fill = (0, import_command.declareCommand)({ + name: "fill", + description: "Fill text into editable element", + category: "core", + args: import_zodBundle.z.object({ + target: import_zodBundle.z.string().describe("Exact target element reference from the page snapshot, or a unique element selector"), + text: import_zodBundle.z.string().describe("Text to fill into the element") + }), + options: import_zodBundle.z.object({ + submit: import_zodBundle.z.boolean().optional().describe("Whether to submit entered text (press Enter after)") + }), + toolName: "browser_type", + toolParams: ({ target, text, submit }) => ({ ...asRef(target), text, submit }) +}); +const hover = (0, import_command.declareCommand)({ + name: "hover", + description: "Hover over element on page", + category: "core", + args: import_zodBundle.z.object({ + target: import_zodBundle.z.string().describe("Exact target element reference from the page snapshot, or a unique element selector") + }), + toolName: "browser_hover", + toolParams: ({ target }) => ({ ...asRef(target) }) +}); +const select = (0, import_command.declareCommand)({ + name: "select", + description: "Select an option in a dropdown", + category: "core", + args: import_zodBundle.z.object({ + target: import_zodBundle.z.string().describe("Exact target element reference from the page snapshot, or a unique element selector"), + val: import_zodBundle.z.string().describe("Value to select in the dropdown") + }), + toolName: "browser_select_option", + toolParams: ({ target, val: value }) => ({ ...asRef(target), values: [value] }) +}); +const fileUpload = (0, import_command.declareCommand)({ + name: "upload", + description: "Upload one or multiple files", + category: "core", + args: import_zodBundle.z.object({ + file: import_zodBundle.z.string().describe("The absolute paths to the files to upload") + }), + toolName: "browser_file_upload", + toolParams: ({ file }) => ({ paths: [file] }) +}); +const check = (0, import_command.declareCommand)({ + name: "check", + description: "Check a checkbox or radio button", + category: "core", + args: import_zodBundle.z.object({ + target: import_zodBundle.z.string().describe("Exact target element reference from the page snapshot, or a unique element selector") + }), + toolName: "browser_check", + toolParams: ({ target }) => ({ ...asRef(target) }) +}); +const uncheck = (0, import_command.declareCommand)({ + name: "uncheck", + description: "Uncheck a checkbox or radio button", + category: "core", + args: import_zodBundle.z.object({ + target: import_zodBundle.z.string().describe("Exact target element reference from the page snapshot, or a unique element selector") + }), + toolName: "browser_uncheck", + toolParams: ({ target }) => ({ ...asRef(target) }) +}); +const snapshot = (0, import_command.declareCommand)({ + name: "snapshot", + description: "Capture page snapshot to obtain element ref", + category: "core", + args: import_zodBundle.z.object({ + element: import_zodBundle.z.string().optional().describe("Element selector of the root element to capture a partial snapshot instead of the whole page") + }), + options: import_zodBundle.z.object({ + filename: import_zodBundle.z.string().optional().describe("Save snapshot to markdown file instead of returning it in the response."), + depth: numberArg.optional().describe("Limit snapshot depth, unlimited by default.") + }), + toolName: "browser_snapshot", + toolParams: ({ filename, element, depth }) => ({ filename, selector: element, depth }) +}); +const evaluate = (0, import_command.declareCommand)({ + name: "eval", + description: "Evaluate JavaScript expression on page or element", + category: "core", + args: import_zodBundle.z.object({ + func: import_zodBundle.z.string().describe("() => { /* code */ } or (element) => { /* code */ } when element is provided"), + element: import_zodBundle.z.string().optional().describe("Exact target element reference from the page snapshot, or a unique element selector") + }), + options: import_zodBundle.z.object({ + filename: import_zodBundle.z.string().optional().describe("Save evaluation result to a file instead of returning it in the response.") + }), + toolName: "browser_evaluate", + toolParams: ({ func, element, filename }) => ({ function: func, filename, ...asRef(element) }) +}); +const dialogAccept = (0, import_command.declareCommand)({ + name: "dialog-accept", + description: "Accept a dialog", + category: "core", + args: import_zodBundle.z.object({ + prompt: import_zodBundle.z.string().optional().describe("The text of the prompt in case of a prompt dialog.") + }), + toolName: "browser_handle_dialog", + toolParams: ({ prompt: promptText }) => ({ accept: true, promptText }) +}); +const dialogDismiss = (0, import_command.declareCommand)({ + name: "dialog-dismiss", + description: "Dismiss a dialog", + category: "core", + args: import_zodBundle.z.object({}), + toolName: "browser_handle_dialog", + toolParams: () => ({ accept: false }) +}); +const resize = (0, import_command.declareCommand)({ + name: "resize", + description: "Resize the browser window", + category: "core", + args: import_zodBundle.z.object({ + w: numberArg.describe("Width of the browser window"), + h: numberArg.describe("Height of the browser window") + }), + toolName: "browser_resize", + toolParams: ({ w: width, h: height }) => ({ width, height }) +}); +const runCode = (0, import_command.declareCommand)({ + name: "run-code", + description: "Run Playwright code snippet", + category: "devtools", + args: import_zodBundle.z.object({ + code: import_zodBundle.z.string().optional().describe("A JavaScript function containing Playwright code to execute. It will be invoked with a single argument, page, which you can use for any page interaction.") + }), + options: import_zodBundle.z.object({ + filename: import_zodBundle.z.string().optional().describe("Load code from the specified file.") + }), + toolName: "browser_run_code", + toolParams: ({ code, filename }) => ({ code, filename }) +}); +const tabList = (0, import_command.declareCommand)({ + name: "tab-list", + description: "List all tabs", + category: "tabs", + args: import_zodBundle.z.object({}), + toolName: "browser_tabs", + toolParams: () => ({ action: "list" }) +}); +const tabNew = (0, import_command.declareCommand)({ + name: "tab-new", + description: "Create a new tab", + category: "tabs", + args: import_zodBundle.z.object({ + url: import_zodBundle.z.string().optional().describe("The URL to navigate to in the new tab. If omitted, the new tab will be blank.") + }), + toolName: "browser_tabs", + toolParams: ({ url }) => ({ action: "new", url }) +}); +const tabClose = (0, import_command.declareCommand)({ + name: "tab-close", + description: "Close a browser tab", + category: "tabs", + args: import_zodBundle.z.object({ + index: numberArg.optional().describe("Tab index. If omitted, current tab is closed.") + }), + toolName: "browser_tabs", + toolParams: ({ index }) => ({ action: "close", index }) +}); +const tabSelect = (0, import_command.declareCommand)({ + name: "tab-select", + description: "Select a browser tab", + category: "tabs", + args: import_zodBundle.z.object({ + index: numberArg.describe("Tab index") + }), + toolName: "browser_tabs", + toolParams: ({ index }) => ({ action: "select", index }) +}); +const stateLoad = (0, import_command.declareCommand)({ + name: "state-load", + description: "Loads browser storage (authentication) state from a file", + category: "storage", + args: import_zodBundle.z.object({ + filename: import_zodBundle.z.string().describe("File name to load the storage state from.") + }), + toolName: "browser_set_storage_state", + toolParams: ({ filename }) => ({ filename }) +}); +const stateSave = (0, import_command.declareCommand)({ + name: "state-save", + description: "Saves the current storage (authentication) state to a file", + category: "storage", + args: import_zodBundle.z.object({ + filename: import_zodBundle.z.string().optional().describe("File name to save the storage state to.") + }), + toolName: "browser_storage_state", + toolParams: ({ filename }) => ({ filename }) +}); +const cookieList = (0, import_command.declareCommand)({ + name: "cookie-list", + description: "List all cookies (optionally filtered by domain/path)", + category: "storage", + args: import_zodBundle.z.object({}), + options: import_zodBundle.z.object({ + domain: import_zodBundle.z.string().optional().describe("Filter cookies by domain"), + path: import_zodBundle.z.string().optional().describe("Filter cookies by path") + }), + toolName: "browser_cookie_list", + toolParams: ({ domain, path }) => ({ domain, path }) +}); +const cookieGet = (0, import_command.declareCommand)({ + name: "cookie-get", + description: "Get a specific cookie by name", + category: "storage", + args: import_zodBundle.z.object({ + name: import_zodBundle.z.string().describe("Cookie name") + }), + toolName: "browser_cookie_get", + toolParams: ({ name }) => ({ name }) +}); +const cookieSet = (0, import_command.declareCommand)({ + name: "cookie-set", + description: "Set a cookie with optional flags", + category: "storage", + args: import_zodBundle.z.object({ + name: import_zodBundle.z.string().describe("Cookie name"), + value: import_zodBundle.z.string().describe("Cookie value") + }), + options: import_zodBundle.z.object({ + domain: import_zodBundle.z.string().optional().describe("Cookie domain"), + path: import_zodBundle.z.string().optional().describe("Cookie path"), + expires: numberArg.optional().describe("Cookie expiration as Unix timestamp"), + httpOnly: import_zodBundle.z.boolean().optional().describe("Whether the cookie is HTTP only"), + secure: import_zodBundle.z.boolean().optional().describe("Whether the cookie is secure"), + sameSite: import_zodBundle.z.enum(["Strict", "Lax", "None"]).optional().describe("Cookie SameSite attribute") + }), + toolName: "browser_cookie_set", + toolParams: ({ name, value, domain, path, expires, httpOnly, secure, sameSite }) => ({ name, value, domain, path, expires, httpOnly, secure, sameSite }) +}); +const cookieDelete = (0, import_command.declareCommand)({ + name: "cookie-delete", + description: "Delete a specific cookie", + category: "storage", + args: import_zodBundle.z.object({ + name: import_zodBundle.z.string().describe("Cookie name") + }), + toolName: "browser_cookie_delete", + toolParams: ({ name }) => ({ name }) +}); +const cookieClear = (0, import_command.declareCommand)({ + name: "cookie-clear", + description: "Clear all cookies", + category: "storage", + args: import_zodBundle.z.object({}), + toolName: "browser_cookie_clear", + toolParams: () => ({}) +}); +const localStorageList = (0, import_command.declareCommand)({ + name: "localstorage-list", + description: "List all localStorage key-value pairs", + category: "storage", + args: import_zodBundle.z.object({}), + toolName: "browser_localstorage_list", + toolParams: () => ({}) +}); +const localStorageGet = (0, import_command.declareCommand)({ + name: "localstorage-get", + description: "Get a localStorage item by key", + category: "storage", + args: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Key to get") + }), + toolName: "browser_localstorage_get", + toolParams: ({ key }) => ({ key }) +}); +const localStorageSet = (0, import_command.declareCommand)({ + name: "localstorage-set", + description: "Set a localStorage item", + category: "storage", + args: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Key to set"), + value: import_zodBundle.z.string().describe("Value to set") + }), + toolName: "browser_localstorage_set", + toolParams: ({ key, value }) => ({ key, value }) +}); +const localStorageDelete = (0, import_command.declareCommand)({ + name: "localstorage-delete", + description: "Delete a localStorage item", + category: "storage", + args: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Key to delete") + }), + toolName: "browser_localstorage_delete", + toolParams: ({ key }) => ({ key }) +}); +const localStorageClear = (0, import_command.declareCommand)({ + name: "localstorage-clear", + description: "Clear all localStorage", + category: "storage", + args: import_zodBundle.z.object({}), + toolName: "browser_localstorage_clear", + toolParams: () => ({}) +}); +const sessionStorageList = (0, import_command.declareCommand)({ + name: "sessionstorage-list", + description: "List all sessionStorage key-value pairs", + category: "storage", + args: import_zodBundle.z.object({}), + toolName: "browser_sessionstorage_list", + toolParams: () => ({}) +}); +const sessionStorageGet = (0, import_command.declareCommand)({ + name: "sessionstorage-get", + description: "Get a sessionStorage item by key", + category: "storage", + args: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Key to get") + }), + toolName: "browser_sessionstorage_get", + toolParams: ({ key }) => ({ key }) +}); +const sessionStorageSet = (0, import_command.declareCommand)({ + name: "sessionstorage-set", + description: "Set a sessionStorage item", + category: "storage", + args: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Key to set"), + value: import_zodBundle.z.string().describe("Value to set") + }), + toolName: "browser_sessionstorage_set", + toolParams: ({ key, value }) => ({ key, value }) +}); +const sessionStorageDelete = (0, import_command.declareCommand)({ + name: "sessionstorage-delete", + description: "Delete a sessionStorage item", + category: "storage", + args: import_zodBundle.z.object({ + key: import_zodBundle.z.string().describe("Key to delete") + }), + toolName: "browser_sessionstorage_delete", + toolParams: ({ key }) => ({ key }) +}); +const sessionStorageClear = (0, import_command.declareCommand)({ + name: "sessionstorage-clear", + description: "Clear all sessionStorage", + category: "storage", + args: import_zodBundle.z.object({}), + toolName: "browser_sessionstorage_clear", + toolParams: () => ({}) +}); +const routeMock = (0, import_command.declareCommand)({ + name: "route", + description: "Mock network requests matching a URL pattern", + category: "network", + args: import_zodBundle.z.object({ + pattern: import_zodBundle.z.string().describe('URL pattern to match (e.g., "**/api/users")') + }), + options: import_zodBundle.z.object({ + status: numberArg.optional().describe("HTTP status code (default: 200)"), + body: import_zodBundle.z.string().optional().describe("Response body (text or JSON string)"), + ["content-type"]: import_zodBundle.z.string().optional().describe("Content-Type header"), + header: import_zodBundle.z.union([import_zodBundle.z.string(), import_zodBundle.z.array(import_zodBundle.z.string())]).optional().transform((v) => v ? Array.isArray(v) ? v : [v] : void 0).describe('Header to add in "Name: Value" format (repeatable)'), + ["remove-header"]: import_zodBundle.z.string().optional().describe("Comma-separated header names to remove") + }), + toolName: "browser_route", + toolParams: ({ pattern, status, body, ["content-type"]: contentType, header: headers, ["remove-header"]: removeHeaders }) => ({ + pattern, + status, + body, + contentType, + headers, + removeHeaders + }) +}); +const routeList = (0, import_command.declareCommand)({ + name: "route-list", + description: "List all active network routes", + category: "network", + args: import_zodBundle.z.object({}), + toolName: "browser_route_list", + toolParams: () => ({}) +}); +const unroute = (0, import_command.declareCommand)({ + name: "unroute", + description: "Remove routes matching a pattern (or all routes)", + category: "network", + args: import_zodBundle.z.object({ + pattern: import_zodBundle.z.string().optional().describe("URL pattern to unroute (omit to remove all)") + }), + toolName: "browser_unroute", + toolParams: ({ pattern }) => ({ pattern }) +}); +const networkStateSet = (0, import_command.declareCommand)({ + name: "network-state-set", + description: "Set the browser network state to online or offline", + category: "network", + args: import_zodBundle.z.object({ + state: import_zodBundle.z.enum(["online", "offline"]).describe('Set to "offline" to simulate offline mode, "online" to restore network connectivity') + }), + toolName: "browser_network_state_set", + toolParams: ({ state }) => ({ state }) +}); +const screenshot = (0, import_command.declareCommand)({ + name: "screenshot", + description: "screenshot of the current page or element", + category: "export", + args: import_zodBundle.z.object({ + target: import_zodBundle.z.string().optional().describe("Exact target element reference from the page snapshot, or a unique element selector.") + }), + options: import_zodBundle.z.object({ + filename: import_zodBundle.z.string().optional().describe("File name to save the screenshot to. Defaults to `page-{timestamp}.{png|jpeg}` if not specified."), + ["full-page"]: import_zodBundle.z.boolean().optional().describe("When true, takes a screenshot of the full scrollable page, instead of the currently visible viewport.") + }), + toolName: "browser_take_screenshot", + toolParams: ({ target, filename, ["full-page"]: fullPage }) => ({ filename, ...asRef(target), fullPage }) +}); +const pdfSave = (0, import_command.declareCommand)({ + name: "pdf", + description: "Save page as PDF", + category: "export", + args: import_zodBundle.z.object({}), + options: import_zodBundle.z.object({ + filename: import_zodBundle.z.string().optional().describe("File name to save the pdf to. Defaults to `page-{timestamp}.pdf` if not specified.") + }), + toolName: "browser_pdf_save", + toolParams: ({ filename }) => ({ filename }) +}); +const consoleList = (0, import_command.declareCommand)({ + name: "console", + description: "List console messages", + category: "devtools", + args: import_zodBundle.z.object({ + ["min-level"]: import_zodBundle.z.string().optional().describe('Level of the console messages to return. Each level includes the messages of more severe levels. Defaults to "info".') + }), + options: import_zodBundle.z.object({ + clear: import_zodBundle.z.boolean().optional().describe("Whether to clear the console list") + }), + toolName: ({ clear }) => clear ? "browser_console_clear" : "browser_console_messages", + toolParams: ({ ["min-level"]: level, clear }) => clear ? {} : { level } +}); +const networkRequests = (0, import_command.declareCommand)({ + name: "network", + description: "List all network requests since loading the page", + category: "devtools", + args: import_zodBundle.z.object({}), + options: import_zodBundle.z.object({ + static: import_zodBundle.z.boolean().optional().describe("Whether to include successful static resources like images, fonts, scripts, etc. Defaults to false."), + ["request-body"]: import_zodBundle.z.boolean().optional().describe("Whether to include request body. Defaults to false."), + ["request-headers"]: import_zodBundle.z.boolean().optional().describe("Whether to include request headers. Defaults to false."), + filter: import_zodBundle.z.string().optional().describe('Only return requests whose URL matches this regexp (e.g. "/api/.*user").'), + clear: import_zodBundle.z.boolean().optional().describe("Whether to clear the network list") + }), + toolName: ({ clear }) => clear ? "browser_network_clear" : "browser_network_requests", + toolParams: ({ static: s, "request-body": requestBody, "request-headers": requestHeaders, filter, clear }) => clear ? {} : { static: s, requestBody, requestHeaders, filter } +}); +const tracingStart = (0, import_command.declareCommand)({ + name: "tracing-start", + description: "Start trace recording", + category: "devtools", + args: import_zodBundle.z.object({}), + toolName: "browser_start_tracing", + toolParams: () => ({}) +}); +const tracingStop = (0, import_command.declareCommand)({ + name: "tracing-stop", + description: "Stop trace recording", + category: "devtools", + args: import_zodBundle.z.object({}), + toolName: "browser_stop_tracing", + toolParams: () => ({}) +}); +const videoStart = (0, import_command.declareCommand)({ + name: "video-start", + description: "Start video recording", + category: "devtools", + args: import_zodBundle.z.object({ + filename: import_zodBundle.z.string().optional().describe("Filename to save the video.") + }), + options: import_zodBundle.z.object({ + size: import_zodBundle.z.string().optional().describe('Video frame size, e.g. "800x600". If not specified, the size of the recorded video will fit 800x800.') + }), + toolName: "browser_start_video", + toolParams: ({ filename, size }) => { + const parsedSize = size ? size.split("x").map(Number) : void 0; + return { filename, size: parsedSize ? { width: parsedSize[0], height: parsedSize[1] } : void 0 }; + } +}); +const videoStop = (0, import_command.declareCommand)({ + name: "video-stop", + description: "Stop video recording", + category: "devtools", + toolName: "browser_stop_video", + toolParams: () => ({}) +}); +const videoChapter = (0, import_command.declareCommand)({ + name: "video-chapter", + description: "Add a chapter marker to the video recording", + category: "devtools", + args: import_zodBundle.z.object({ + title: import_zodBundle.z.string().describe("Chapter title.") + }), + options: import_zodBundle.z.object({ + description: import_zodBundle.z.string().optional().describe("Chapter description."), + duration: numberArg.optional().describe("Duration in milliseconds to show the chapter card.") + }), + toolName: "browser_video_chapter", + toolParams: ({ title, description, duration }) => ({ title, description, duration }) +}); +const devtoolsShow = (0, import_command.declareCommand)({ + name: "show", + description: "Show browser DevTools", + category: "devtools", + args: import_zodBundle.z.object({}), + toolName: "", + toolParams: () => ({}) +}); +const resume = (0, import_command.declareCommand)({ + name: "resume", + description: "Resume the test execution", + category: "devtools", + args: import_zodBundle.z.object({}), + toolName: "browser_resume", + toolParams: ({ step }) => ({ step }) +}); +const stepOver = (0, import_command.declareCommand)({ + name: "step-over", + description: "Step over the next call in the test", + category: "devtools", + args: import_zodBundle.z.object({}), + toolName: "browser_resume", + toolParams: ({}) => ({ step: true }) +}); +const pauseAt = (0, import_command.declareCommand)({ + name: "pause-at", + description: "Run the test up to a specific location and pause there", + category: "devtools", + args: import_zodBundle.z.object({ + location: import_zodBundle.z.string().describe('Location to pause at. Format is <file>:<line>, e.g. "example.spec.ts:42".') + }), + toolName: "browser_resume", + toolParams: ({ location }) => ({ location }) +}); +const sessionList = (0, import_command.declareCommand)({ + name: "list", + description: "List browser sessions", + category: "browsers", + args: import_zodBundle.z.object({}), + options: import_zodBundle.z.object({ + all: import_zodBundle.z.boolean().optional().describe("List all browser sessions across all workspaces") + }), + toolName: "", + toolParams: () => ({}) +}); +const sessionCloseAll = (0, import_command.declareCommand)({ + name: "close-all", + description: "Close all browser sessions", + category: "browsers", + toolName: "", + toolParams: () => ({}) +}); +const killAll = (0, import_command.declareCommand)({ + name: "kill-all", + description: "Forcefully kill all browser sessions (for stale/zombie processes)", + category: "browsers", + toolName: "", + toolParams: () => ({}) +}); +const deleteData = (0, import_command.declareCommand)({ + name: "delete-data", + description: "Delete session data", + category: "core", + toolName: "", + toolParams: () => ({}) +}); +const configPrint = (0, import_command.declareCommand)({ + name: "config-print", + description: "Print the final resolved config after merging CLI options, environment variables and config file.", + category: "config", + hidden: true, + toolName: "browser_get_config", + toolParams: () => ({}) +}); +const install = (0, import_command.declareCommand)({ + name: "install", + description: "Initialize workspace", + category: "install", + args: import_zodBundle.z.object({}), + options: import_zodBundle.z.object({ + skills: import_zodBundle.z.string().optional().describe('Install skills to ".claude" (default) or ".agents" dir') + }), + toolName: "", + toolParams: () => ({}) +}); +const installBrowser = (0, import_command.declareCommand)({ + name: "install-browser", + description: "Install browser", + category: "install", + args: import_zodBundle.z.object({ + browser: import_zodBundle.z.string().optional().describe("Browser to install") + }), + options: import_zodBundle.z.object({ + ["with-deps"]: import_zodBundle.z.boolean().optional().describe("Install system dependencies for browsers"), + ["dry-run"]: import_zodBundle.z.boolean().optional().describe("Do not execute installation, only print information"), + list: import_zodBundle.z.boolean().optional().describe("Prints list of browsers from all Playwright installations"), + force: import_zodBundle.z.boolean().optional().describe("Force reinstall of already installed browsers"), + ["only-shell"]: import_zodBundle.z.boolean().optional().describe("Only install headless shell when installing Chromium"), + ["no-shell"]: import_zodBundle.z.boolean().optional().describe("Do not install Chromium headless shell") + }), + toolName: "", + toolParams: () => ({}) +}); +const tray = (0, import_command.declareCommand)({ + name: "tray", + description: "Run tray", + category: "config", + hidden: true, + toolName: "", + toolParams: () => ({}) +}); +const commandsArray = [ + // core category + open, + attach, + close, + goto, + type, + click, + doubleClick, + fill, + drag, + hover, + select, + fileUpload, + check, + uncheck, + snapshot, + evaluate, + consoleList, + dialogAccept, + dialogDismiss, + resize, + runCode, + deleteData, + // navigation category + goBack, + goForward, + reload, + // keyboard category + pressKey, + keydown, + keyup, + // mouse category + mouseMove, + mouseDown, + mouseUp, + mouseWheel, + // export category + screenshot, + pdfSave, + // tabs category + tabList, + tabNew, + tabClose, + tabSelect, + // storage category + stateLoad, + stateSave, + cookieList, + cookieGet, + cookieSet, + cookieDelete, + cookieClear, + localStorageList, + localStorageGet, + localStorageSet, + localStorageDelete, + localStorageClear, + sessionStorageList, + sessionStorageGet, + sessionStorageSet, + sessionStorageDelete, + sessionStorageClear, + // network category + routeMock, + routeList, + unroute, + networkStateSet, + // config category + configPrint, + // install category + install, + installBrowser, + // devtools category + networkRequests, + tracingStart, + tracingStop, + videoStart, + videoStop, + videoChapter, + devtoolsShow, + pauseAt, + resume, + stepOver, + // session category + sessionList, + sessionCloseAll, + killAll, + // Hidden commands + tray +]; +const commands = Object.fromEntries(commandsArray.map((cmd) => [cmd.name, cmd])); +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + commands +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/daemon.js b/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/daemon.js new file mode 100644 index 00000000..dd4ad232 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/daemon.js @@ -0,0 +1,157 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var daemon_exports = {}; +__export(daemon_exports, { + startCliDaemonServer: () => startCliDaemonServer +}); +module.exports = __toCommonJS(daemon_exports); +var import_fs = __toESM(require("fs")); +var import_net = __toESM(require("net")); +var import_path = __toESM(require("path")); +var import_network = require("../../server/utils/network"); +var import_fileUtils = require("../../server/utils/fileUtils"); +var import_processLauncher = require("../../server/utils/processLauncher"); +var import_browserBackend = require("../backend/browserBackend"); +var import_tools = require("../backend/tools"); +var import_command = require("./command"); +var import_commands = require("./commands"); +var import_socketConnection = require("../utils/socketConnection"); +var import_registry = require("../cli-client/registry"); +async function socketExists(socketPath) { + try { + const stat = await import_fs.default.promises.stat(socketPath); + if (stat?.isSocket()) + return true; + } catch (e) { + } + return false; +} +async function startCliDaemonServer(sessionName, browserContext, browserInfo, contextConfig = {}, clientInfo = (0, import_registry.createClientInfo)(), options) { + const sessionConfig = createSessionConfig(clientInfo, sessionName, browserInfo, options); + const { socketPath } = sessionConfig; + if (process.platform !== "win32" && await socketExists(socketPath)) { + try { + await import_fs.default.promises.unlink(socketPath); + } catch (error) { + throw error; + } + } + const backend = new import_browserBackend.BrowserBackend(contextConfig, browserContext, import_tools.browserTools); + await backend.initialize({ cwd: process.cwd() }); + if (browserContext.isClosed()) + throw new Error("Browser context was closed before the daemon could start"); + const server = import_net.default.createServer((socket) => { + const connection = new import_socketConnection.SocketConnection(socket); + connection.onmessage = async (message) => { + const { id, method, params } = message; + try { + if (method === "stop") { + await deleteSessionFile(clientInfo, sessionConfig); + const sendAck = async () => connection.send({ id, result: "ok" }).catch(() => { + }); + if (options?.exitOnClose) + (0, import_processLauncher.gracefullyProcessExitDoNotHang)(0, () => sendAck()); + else + await sendAck(); + } else if (method === "run") { + const { toolName, toolParams } = parseCliCommand(params.args); + if (params.cwd) + toolParams._meta = { cwd: params.cwd }; + const response = await backend.callTool(toolName, toolParams); + await connection.send({ id, result: formatResult(response) }); + } else { + throw new Error(`Unknown method: ${method}`); + } + } catch (e) { + const error = process.env.PWDEBUGIMPL ? e.stack || e.message : e.message; + connection.send({ id, error }).catch(() => { + }); + } + }; + }); + (0, import_network.decorateServer)(server); + browserContext.on("close", () => Promise.resolve().then(async () => { + await deleteSessionFile(clientInfo, sessionConfig); + if (options?.exitOnClose) + (0, import_processLauncher.gracefullyProcessExitDoNotHang)(0); + })); + await new Promise((resolve, reject) => { + server.on("error", reject); + server.listen(socketPath, () => resolve()); + }); + await saveSessionFile(clientInfo, sessionConfig); + return socketPath; +} +async function saveSessionFile(clientInfo, sessionConfig) { + await import_fs.default.promises.mkdir(clientInfo.daemonProfilesDir, { recursive: true }); + const sessionFile = import_path.default.join(clientInfo.daemonProfilesDir, `${sessionConfig.name}.session`); + await import_fs.default.promises.writeFile(sessionFile, JSON.stringify(sessionConfig, null, 2)); +} +async function deleteSessionFile(clientInfo, sessionConfig) { + await import_fs.default.promises.unlink(sessionConfig.socketPath).catch(() => { + }); + if (!sessionConfig.cli.persistent) { + const sessionFile = import_path.default.join(clientInfo.daemonProfilesDir, `${sessionConfig.name}.session`); + await import_fs.default.promises.rm(sessionFile).catch(() => { + }); + } +} +function formatResult(result) { + const isError = result.isError; + const text = result.content[0].type === "text" ? result.content[0].text : void 0; + return { isError, text }; +} +function parseCliCommand(args) { + const command = import_commands.commands[args._[0]]; + if (!command) + throw new Error("Command is required"); + return (0, import_command.parseCommand)(command, args); +} +function daemonSocketPath(clientInfo, sessionName) { + return (0, import_fileUtils.makeSocketPath)("cli", `${clientInfo.workspaceDirHash}-${sessionName}`); +} +function createSessionConfig(clientInfo, sessionName, browserInfo, options = {}) { + return { + name: sessionName, + version: clientInfo.version, + timestamp: Date.now(), + socketPath: daemonSocketPath(clientInfo, sessionName), + workspaceDir: clientInfo.workspaceDir, + cli: { persistent: options.persistent }, + browser: { + browserName: browserInfo.browserName, + launchOptions: browserInfo.launchOptions, + userDataDir: browserInfo.userDataDir + } + }; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + startCliDaemonServer +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/helpGenerator.js b/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/helpGenerator.js new file mode 100644 index 00000000..d1fb8ce7 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/helpGenerator.js @@ -0,0 +1,177 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var helpGenerator_exports = {}; +__export(helpGenerator_exports, { + generateHelp: () => generateHelp, + generateHelpJSON: () => generateHelpJSON, + generateReadme: () => generateReadme +}); +module.exports = __toCommonJS(helpGenerator_exports); +var import_zodBundle = require("../../zodBundle"); +var import_commands = require("./commands"); +function commandArgs(command) { + const args = []; + const shape = command.args ? command.args.shape : {}; + for (const [name, schema] of Object.entries(shape)) { + const zodSchema = schema; + const description = zodSchema.description ?? ""; + args.push({ name, description, optional: zodSchema.safeParse(void 0).success }); + } + return args; +} +function commandArgsText(args) { + return args.map((a) => a.optional ? `[${a.name}]` : `<${a.name}>`).join(" "); +} +function generateCommandHelp(command) { + const args = commandArgs(command); + const lines = [ + `playwright-cli ${command.name} ${commandArgsText(args)}`, + "", + command.description, + "" + ]; + if (args.length) { + lines.push("Arguments:"); + lines.push(...args.map((a) => formatWithGap(` ${a.optional ? `[${a.name}]` : `<${a.name}>`}`, a.description.toLowerCase()))); + } + if (command.options) { + lines.push("Options:"); + const optionsShape = command.options.shape; + for (const [name, schema] of Object.entries(optionsShape)) { + const zodSchema = schema; + const description = (zodSchema.description ?? "").toLowerCase(); + lines.push(formatWithGap(` --${name}`, description)); + } + } + return lines.join("\n"); +} +const categories = [ + { name: "core", title: "Core" }, + { name: "navigation", title: "Navigation" }, + { name: "keyboard", title: "Keyboard" }, + { name: "mouse", title: "Mouse" }, + { name: "export", title: "Save as" }, + { name: "tabs", title: "Tabs" }, + { name: "storage", title: "Storage" }, + { name: "network", title: "Network" }, + { name: "devtools", title: "DevTools" }, + { name: "install", title: "Install" }, + { name: "config", title: "Configuration" }, + { name: "browsers", title: "Browser sessions" } +]; +function generateHelp() { + const lines = []; + lines.push("Usage: playwright-cli <command> [args] [options]"); + lines.push("Usage: playwright-cli -s=<session> <command> [args] [options]"); + const commandsByCategory = /* @__PURE__ */ new Map(); + for (const c of categories) + commandsByCategory.set(c.name, []); + for (const command of Object.values(import_commands.commands)) { + if (command.hidden) + continue; + commandsByCategory.get(command.category).push(command); + } + for (const c of categories) { + const cc = commandsByCategory.get(c.name); + if (!cc.length) + continue; + lines.push(` +${c.title}:`); + for (const command of cc) + lines.push(generateHelpEntry(command)); + } + lines.push("\nGlobal options:"); + lines.push(formatWithGap(" --help [command]", "print help")); + lines.push(formatWithGap(" --version", "print version")); + return lines.join("\n"); +} +function generateReadme() { + const lines = []; + lines.push("\n## Commands"); + const commandsByCategory = /* @__PURE__ */ new Map(); + for (const c of categories) + commandsByCategory.set(c.name, []); + for (const command of Object.values(import_commands.commands)) + commandsByCategory.get(command.category).push(command); + for (const c of categories) { + const cc = commandsByCategory.get(c.name); + if (!cc.length) + continue; + lines.push(` +### ${c.title} +`); + lines.push("```bash"); + for (const command of cc) + lines.push(generateReadmeEntry(command)); + lines.push("```"); + } + return lines.join("\n"); +} +function generateHelpEntry(command) { + const args = commandArgs(command); + const prefix = ` ${command.name} ${commandArgsText(args)}`; + const suffix = command.description.toLowerCase(); + return formatWithGap(prefix, suffix); +} +function generateReadmeEntry(command) { + const args = commandArgs(command); + const prefix = `playwright-cli ${command.name} ${commandArgsText(args)}`; + const suffix = "# " + command.description.toLowerCase(); + return formatWithGap(prefix, suffix, 40); +} +function unwrapZodType(schema) { + if ("unwrap" in schema && typeof schema.unwrap === "function") + return unwrapZodType(schema.unwrap()); + return schema; +} +function isBooleanSchema(schema) { + return unwrapZodType(schema) instanceof import_zodBundle.z.ZodBoolean; +} +function generateHelpJSON() { + const booleanOptions = /* @__PURE__ */ new Set(); + const commandEntries = {}; + for (const [name, command] of Object.entries(import_commands.commands)) { + const flags = {}; + if (command.options) { + const optionsShape = command.options.shape; + for (const [flagName, schema] of Object.entries(optionsShape)) { + const isBoolean = isBooleanSchema(schema); + flags[flagName] = isBoolean ? "boolean" : "string"; + if (isBoolean) + booleanOptions.add(flagName); + } + } + commandEntries[name] = { help: generateCommandHelp(command), flags }; + } + return { + global: generateHelp(), + commands: commandEntries, + booleanOptions: [...booleanOptions] + }; +} +function formatWithGap(prefix, text, threshold = 30) { + const indent = Math.max(1, threshold - prefix.length); + return prefix + " ".repeat(indent) + text; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + generateHelp, + generateHelpJSON, + generateReadme +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/program.js b/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/program.js new file mode 100644 index 00000000..e5a49a1f --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/cli-daemon/program.js @@ -0,0 +1,129 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var import_fs = __toESM(require("fs")); +var import_os = __toESM(require("os")); +var import_path = __toESM(require("path")); +var import_daemon = require("./daemon"); +var import_watchdog = require("../mcp/watchdog"); +var import_browserFactory = require("../mcp/browserFactory"); +var configUtils = __toESM(require("../mcp/config")); +var import_registry = require("../cli-client/registry"); +var import_utilsBundle = require("../../utilsBundle"); +var import_registry2 = require("../../server/registry/index"); +import_utilsBundle.program.argument("[session-name]", "name of the session to create or connect to", "default").option("--headed", "run in headed mode (non-headless)").option("--extension", "run with the extension").option("--browser <name>", "browser to use (chromium, chrome, firefox, webkit)").option("--persistent", "use a persistent browser context").option("--profile <path>", "path to the user data dir").option("--config <path>", "path to the config file; by default uses .playwright/cli.config.json in the project directory and ~/.playwright/cli.config.json as global config").option("--endpoint <endpoint>", "attach to a running Playwright browser endpoint").option("--init-workspace", "initialize workspace").option("--init-skills <value>", 'install skills for the given agent type ("claude" or "agents")').action(async (sessionName, options) => { + if (options.initWorkspace) { + await initWorkspace(options.initSkills); + return; + } + (0, import_watchdog.setupExitWatchdog)(); + const clientInfo = (0, import_registry.createClientInfo)(); + const mcpConfig = await configUtils.resolveCLIConfigForCLI(clientInfo.daemonProfilesDir, sessionName, options); + const clientInfoEx = { + cwd: process.cwd(), + sessionName, + workspaceDir: clientInfo.workspaceDir + }; + try { + const { browser, browserInfo } = await (0, import_browserFactory.createBrowserWithInfo)(mcpConfig, clientInfoEx); + const browserContext = mcpConfig.browser.isolated ? await browser.newContext(mcpConfig.browser.contextOptions) : browser.contexts()[0]; + if (!browserContext) + throw new Error("Error: unable to connect to a browser that does not have any contexts"); + const persistent = options.persistent || options.profile || mcpConfig.browser.userDataDir ? true : void 0; + const socketPath = await (0, import_daemon.startCliDaemonServer)(sessionName, browserContext, browserInfo, mcpConfig, clientInfo, { persistent, exitOnClose: true }); + console.log(`### Success +Daemon listening on ${socketPath}`); + console.log("<EOF>"); + } catch (error) { + const message = process.env.PWDEBUGIMPL ? error.stack || error.message : error.message; + console.log(`### Error +${message}`); + console.log("<EOF>"); + } +}); +void import_utilsBundle.program.parseAsync(); +function defaultConfigFile() { + return import_path.default.resolve(".playwright", "cli.config.json"); +} +function globalConfigFile() { + return import_path.default.join(process.env["PWTEST_CLI_GLOBAL_CONFIG"] ?? import_os.default.homedir(), ".playwright", "cli.config.json"); +} +async function initWorkspace(initSkills) { + const cwd = process.cwd(); + const playwrightDir = import_path.default.join(cwd, ".playwright"); + await import_fs.default.promises.mkdir(playwrightDir, { recursive: true }); + console.log(`\u2705 Workspace initialized at \`${cwd}\`.`); + if (initSkills) { + const skillSourceDir = import_path.default.join(__dirname, "../cli-client/skill"); + const target = initSkills === "agents" ? "agents" : "claude"; + const skillDestDir = import_path.default.join(cwd, `.${target}`, "skills", "playwright-cli"); + if (!import_fs.default.existsSync(skillSourceDir)) { + console.error("\u274C Skills source directory not found:", skillSourceDir); + process.exit(1); + } + await import_fs.default.promises.cp(skillSourceDir, skillDestDir, { recursive: true }); + console.log(`\u2705 Skills installed to \`${import_path.default.relative(cwd, skillDestDir)}\`.`); + } + await ensureConfiguredBrowserInstalled(); +} +async function ensureConfiguredBrowserInstalled() { + if (import_fs.default.existsSync(defaultConfigFile()) || import_fs.default.existsSync(globalConfigFile())) { + const clientInfo = (0, import_registry.createClientInfo)(); + const config = await configUtils.resolveCLIConfigForCLI(clientInfo.daemonProfilesDir, "default", {}); + const browserName = config.browser.browserName; + const channel = config.browser.launchOptions.channel; + if (!channel || channel.startsWith("chromium")) { + const executable = import_registry2.registry.findExecutable(channel ?? browserName); + if (executable && !import_fs.default.existsSync(executable.executablePath())) + await import_registry2.registry.install([executable]); + } + } else { + const channel = await findOrInstallDefaultBrowser(); + if (channel !== "chrome") + await createDefaultConfig(channel); + } +} +async function findOrInstallDefaultBrowser() { + const channels = ["chrome", "msedge"]; + for (const channel of channels) { + const executable = import_registry2.registry.findExecutable(channel); + if (!executable?.executablePath()) + continue; + console.log(`\u2705 Found ${channel}, will use it as the default browser.`); + return channel; + } + const chromiumExecutable = import_registry2.registry.findExecutable("chromium"); + if (!import_fs.default.existsSync(chromiumExecutable?.executablePath())) + await import_registry2.registry.install([chromiumExecutable]); + return "chromium"; +} +async function createDefaultConfig(channel) { + const config = { + browser: { + browserName: "chromium", + launchOptions: { channel } + } + }; + await import_fs.default.promises.writeFile(defaultConfigFile(), JSON.stringify(config, null, 2)); + console.log(`\u2705 Created default config for ${channel} at ${import_path.default.relative(process.cwd(), defaultConfigFile())}.`); +} diff --git a/node_modules.codex-backup/playwright-core/lib/tools/dashboard/appIcon.png b/node_modules.codex-backup/playwright-core/lib/tools/dashboard/appIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..1c898466493ebb26f97a58ea33348cf34a5df648 GIT binary patch literal 16565 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 VN?b*Rn)aU;<fN2AwV%I){y(q8palQ` literal 0 HcmV?d00001 diff --git a/node_modules.codex-backup/playwright-core/lib/tools/dashboard/dashboardApp.js b/node_modules.codex-backup/playwright-core/lib/tools/dashboard/dashboardApp.js new file mode 100644 index 00000000..bd5933f0 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/dashboard/dashboardApp.js @@ -0,0 +1,284 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var dashboardApp_exports = {}; +__export(dashboardApp_exports, { + syncLocalStorageWithSettings: () => syncLocalStorageWithSettings +}); +module.exports = __toCommonJS(dashboardApp_exports); +var import_fs = __toESM(require("fs")); +var import_path = __toESM(require("path")); +var import_net = __toESM(require("net")); +var import__ = require("../../.."); +var import_httpServer = require("../../server/utils/httpServer"); +var import_fileUtils = require("../../server/utils/fileUtils"); +var import_processLauncher = require("../../server/utils/processLauncher"); +var import_registry = require("../../server/registry/index"); +var import_dashboardController = require("./dashboardController"); +var import_serverRegistry = require("../../serverRegistry"); +var import_connect = require("../utils/connect"); +function readBody(request) { + return new Promise((resolve, reject) => { + const chunks = []; + request.on("data", (chunk) => chunks.push(chunk)); + request.on("end", () => { + try { + const text = Buffer.concat(chunks).toString(); + resolve(text ? JSON.parse(text) : {}); + } catch (e) { + reject(e); + } + }); + request.on("error", reject); + }); +} +async function parseRequest(request) { + const body = await readBody(request); + if (!body.guid) + throw new Error("Dashboard app is too old, please close it and open again"); + return { guid: body.guid }; +} +function sendJSON(response, data, statusCode = 200) { + response.statusCode = statusCode; + response.setHeader("Content-Type", "application/json"); + response.end(JSON.stringify(data)); +} +async function loadBrowserDescriptorSessions(wsPath) { + const entriesByWorkspace = await import_serverRegistry.serverRegistry.list(); + const sessions = []; + for (const [, entries] of entriesByWorkspace) { + for (const entry of entries) { + let wsUrl; + if (entry.canConnect) { + const url = new URL(wsPath, "http://localhost"); + url.searchParams.set("guid", entry.browser.guid); + wsUrl = url.pathname + url.search; + } + sessions.push({ ...entry, wsUrl }); + } + } + return sessions; +} +const browserGuidToDashboardConnection = /* @__PURE__ */ new Map(); +async function handleApiRequest(httpServer, request, response) { + const url = new URL(request.url, httpServer.urlPrefix("human-readable")); + const apiPath = url.pathname; + if (apiPath === "/api/sessions/list" && request.method === "GET") { + const sessions = await loadBrowserDescriptorSessions(httpServer.wsGuid()); + sendJSON(response, { sessions }); + return; + } + if (apiPath === "/api/sessions/close" && request.method === "POST") { + const { guid } = await parseRequest(request); + let browser; + try { + const browserDescriptor = import_serverRegistry.serverRegistry.readDescriptor(guid); + browser = await (0, import_connect.connectToBrowserAcrossVersions)(browserDescriptor); + } catch (e) { + sendJSON(response, { error: "Failed to connect to browser socket: " + e.message }, 500); + return; + } + try { + await Promise.all(browser.contexts().map((context) => context.close())); + await browser.close(); + sendJSON(response, { success: true }); + return; + } catch (e) { + sendJSON(response, { error: "Failed to close browser: " + e.message }, 500); + return; + } + } + if (apiPath === "/api/sessions/delete-data" && request.method === "POST") { + const { guid } = await parseRequest(request); + try { + await import_serverRegistry.serverRegistry.deleteUserData(guid); + } catch (e) { + sendJSON(response, { error: "Failed to delete session data: " + e.message }, 500); + return; + } + sendJSON(response, { success: true }); + return; + } + response.statusCode = 404; + response.end(JSON.stringify({ error: "Not found" })); +} +async function openDashboardApp() { + const httpServer = new import_httpServer.HttpServer(); + const libDir = require.resolve("playwright-core/package.json"); + const dashboardDir = import_path.default.join(import_path.default.dirname(libDir), "lib/vite/dashboard"); + httpServer.routePrefix("/api/", (request, response) => { + handleApiRequest(httpServer, request, response).catch((e) => { + response.statusCode = 500; + response.end(JSON.stringify({ error: e.message })); + }); + return true; + }); + httpServer.createWebSocket((url2) => { + const guid = url2.searchParams.get("guid"); + if (!guid) + throw new Error("Unsupported WebSocket URL: " + url2.toString()); + const browserDescriptor = import_serverRegistry.serverRegistry.readDescriptor(guid); + const cdpPageId = url2.searchParams.get("cdpPageId"); + if (cdpPageId) { + const connection2 = browserGuidToDashboardConnection.get(guid); + if (!connection2) + throw new Error("CDP connection not found for session: " + guid); + const page2 = connection2.pageForId(cdpPageId); + if (!page2) + throw new Error("Page not found for page ID: " + cdpPageId); + return new import_dashboardController.CDPConnection(page2); + } + const cdpUrl = new URL(httpServer.urlPrefix("human-readable")); + cdpUrl.pathname = httpServer.wsGuid(); + cdpUrl.searchParams.set("guid", guid); + const connection = new import_dashboardController.DashboardConnection(browserDescriptor, cdpUrl, () => browserGuidToDashboardConnection.delete(guid)); + browserGuidToDashboardConnection.set(guid, connection); + return connection; + }); + httpServer.routePrefix("/", (request, response) => { + const pathname = new URL(request.url, `http://${request.headers.host}`).pathname; + const filePath = pathname === "/" ? "index.html" : pathname.substring(1); + const resolved = import_path.default.join(dashboardDir, filePath); + if (!resolved.startsWith(dashboardDir)) + return false; + return httpServer.serveFile(request, response, resolved); + }); + await httpServer.start(); + const url = httpServer.urlPrefix("human-readable"); + const { page } = await launchApp("dashboard"); + await page.goto(url); + return page; +} +async function launchApp(appName) { + const channel = (0, import_registry.findChromiumChannelBestEffort)("javascript"); + const debugPort = parseInt(process.env.PLAYWRIGHT_DASHBOARD_DEBUG_PORT, 10) || void 0; + const context = await import__.chromium.launchPersistentContext("", { + ignoreDefaultArgs: ["--enable-automation"], + channel, + headless: debugPort !== void 0, + args: [ + "--app=data:text/html,", + "--test-type=", + `--window-size=1280,800`, + `--window-position=100,100`, + ...debugPort !== void 0 ? [`--remote-debugging-port=${debugPort}`] : [] + ], + viewport: null + }); + const [page] = context.pages(); + if (process.platform === "darwin") { + context.on("page", async (newPage) => { + if (newPage.mainFrame().url() === "chrome://new-tab-page/") { + await page.bringToFront(); + await newPage.close(); + } + }); + } + page.on("close", () => { + (0, import_processLauncher.gracefullyProcessExitDoNotHang)(0); + }); + const image = await import_fs.default.promises.readFile(import_path.default.join(__dirname, "appIcon.png")); + await page._setDockTile?.(image); + await syncLocalStorageWithSettings(page, appName); + return { context, page }; +} +async function syncLocalStorageWithSettings(page, appName) { + const settingsFile = import_path.default.join(import_registry.registryDirectory, ".settings", `${appName}.json`); + await page.exposeBinding("_saveSerializedSettings", (_, settings2) => { + import_fs.default.mkdirSync(import_path.default.dirname(settingsFile), { recursive: true }); + import_fs.default.writeFileSync(settingsFile, settings2); + }); + const settings = await import_fs.default.promises.readFile(settingsFile, "utf-8").catch(() => "{}"); + await page.addInitScript( + `(${String((settings2) => { + if (location && location.protocol === "data:") + return; + if (window.top !== window) + return; + Object.entries(settings2).map(([k, v]) => localStorage[k] = v); + window.saveSettings = () => { + window._saveSerializedSettings(JSON.stringify({ ...localStorage })); + }; + })})(${settings}); + ` + ); +} +function dashboardSocketPath() { + return (0, import_fileUtils.makeSocketPath)("dashboard", "app"); +} +async function acquireSingleton() { + const socketPath = dashboardSocketPath(); + if (process.platform !== "win32") + await import_fs.default.promises.mkdir(import_path.default.dirname(socketPath), { recursive: true }); + return await new Promise((resolve, reject) => { + const server = import_net.default.createServer(); + server.listen(socketPath, () => resolve(server)); + server.on("error", (err) => { + if (err.code !== "EADDRINUSE") + return reject(err); + const client = import_net.default.connect(socketPath, () => { + client.write("bringToFront"); + client.end(); + reject(new Error("already running")); + }); + client.on("error", () => { + if (process.platform !== "win32") + import_fs.default.unlinkSync(socketPath); + server.listen(socketPath, () => resolve(server)); + }); + }); + }); +} +async function main() { + let server; + process.on("exit", () => server?.close()); + const underTest = !!process.env.PLAYWRIGHT_DASHBOARD_DEBUG_PORT; + if (!underTest) { + try { + server = await acquireSingleton(); + } catch { + return; + } + } + const page = await openDashboardApp(); + server?.on("connection", (socket) => { + socket.on("data", (data) => { + if (data.toString() === "bringToFront") + page?.bringToFront().catch(() => { + }); + }); + }); +} +process.on("unhandledRejection", (error) => { + console.error("Unhandled promise rejection:", error); +}); +void main(); +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + syncLocalStorageWithSettings +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/dashboard/dashboardController.js b/node_modules.codex-backup/playwright-core/lib/tools/dashboard/dashboardController.js new file mode 100644 index 00000000..8d3d5546 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/dashboard/dashboardController.js @@ -0,0 +1,296 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var dashboardController_exports = {}; +__export(dashboardController_exports, { + CDPConnection: () => CDPConnection, + DashboardConnection: () => DashboardConnection +}); +module.exports = __toCommonJS(dashboardController_exports); +var import_eventsHelper = require("../../server/utils/eventsHelper"); +var import_connect = require("../utils/connect"); +class DashboardConnection { + constructor(browserDescriptor, cdpUrl, onclose) { + this.version = 1; + this.selectedPage = null; + this._lastFrameData = null; + this._lastViewportSize = null; + this._pageListeners = []; + this._contextListeners = []; + this._eventListeners = /* @__PURE__ */ new Map(); + this._browserDescriptor = browserDescriptor; + this._cdpUrl = cdpUrl; + this._onclose = onclose; + } + on(event, listener) { + let set = this._eventListeners.get(event); + if (!set) { + set = /* @__PURE__ */ new Set(); + this._eventListeners.set(event, set); + } + set.add(listener); + } + off(event, listener) { + this._eventListeners.get(event)?.delete(listener); + } + _emit(event, params) { + this.sendEvent?.(event, params); + const set = this._eventListeners.get(event); + if (set) { + for (const fn of set) + fn(params); + } + } + onconnect() { + this._initPromise = this._init(); + this._initPromise.catch(() => this.close?.()); + } + async _init() { + this._browser = await (0, import_connect.connectToBrowserAcrossVersions)(this._browserDescriptor); + this._context = this._browser.contexts()[0]; + this._contextListeners.push( + import_eventsHelper.eventsHelper.addEventListener(this._context, "page", (page) => { + this._sendTabList(); + if (!this.selectedPage) + this._selectPage(page); + }) + ); + const pages = this._context.pages(); + if (pages.length > 0) + this._selectPage(pages[0]); + this._sendCachedState(); + } + onclose() { + this._deselectPage(); + this._contextListeners.forEach((d) => d.dispose()); + this._contextListeners = []; + this._onclose(); + this._browser?.close().catch(() => { + }); + } + async dispatch(method, params) { + await this._initPromise; + return this[method]?.(params); + } + async selectTab(params) { + const page = this._context.pages().find((p) => this._pageId(p) === params.pageId); + if (page) + await this._selectPage(page); + } + async closeTab(params) { + const page = this._context.pages().find((p) => this._pageId(p) === params.pageId); + if (page) + await page.close({ reason: "Closed in Dashboard" }); + } + async newTab() { + const page = await this._context.newPage(); + await this._selectPage(page); + } + async navigate(params) { + if (!this.selectedPage || !params.url) + return; + const page = this.selectedPage; + await page.goto(params.url); + } + async back() { + await this.selectedPage?.goBack(); + } + async forward() { + await this.selectedPage?.goForward(); + } + async reload() { + await this.selectedPage?.reload(); + } + async mousemove(params) { + await this.selectedPage?.mouse.move(params.x, params.y); + } + async mousedown(params) { + await this.selectedPage?.mouse.move(params.x, params.y); + await this.selectedPage?.mouse.down({ button: params.button || "left" }); + } + async mouseup(params) { + await this.selectedPage?.mouse.move(params.x, params.y); + await this.selectedPage?.mouse.up({ button: params.button || "left" }); + } + async wheel(params) { + await this.selectedPage?.mouse.wheel(params.deltaX, params.deltaY); + } + async keydown(params) { + await this.selectedPage?.keyboard.down(params.key); + } + async keyup(params) { + await this.selectedPage?.keyboard.up(params.key); + } + async _selectPage(page) { + if (this.selectedPage === page) + return; + if (this.selectedPage) { + this._pageListeners.forEach((d) => d.dispose()); + this._pageListeners = []; + await this.selectedPage.screencast.stop(); + } + this.selectedPage = page; + this._lastFrameData = null; + this._lastViewportSize = null; + this._sendTabList(); + this._pageListeners.push( + import_eventsHelper.eventsHelper.addEventListener(page, "close", () => { + this._deselectPage(); + const pages = page.context().pages(); + if (pages.length > 0) + this._selectPage(pages[0]); + this._sendTabList(); + }), + import_eventsHelper.eventsHelper.addEventListener(page, "framenavigated", (frame) => { + if (frame === page.mainFrame()) + this._sendTabList(); + }) + ); + const size = { width: 1280, height: 800 }; + await page.screencast.start({ + onFrame: ({ data }) => this._writeFrame(data, page.viewportSize()?.width ?? 0, page.viewportSize()?.height ?? 0), + size + }); + } + _deselectPage() { + if (!this.selectedPage) + return; + this._pageListeners.forEach((d) => d.dispose()); + this._pageListeners = []; + this.selectedPage.screencast.stop().catch(() => { + }); + this.selectedPage = null; + this._lastFrameData = null; + this._lastViewportSize = null; + } + async pickLocator() { + if (!this.selectedPage) + return; + const locator = await this.selectedPage.pickLocator(); + this._emit("elementPicked", { selector: locator.toString() }); + } + async cancelPickLocator() { + await this.selectedPage?.cancelPickLocator(); + } + _sendCachedState() { + if (this._lastFrameData && this._lastViewportSize) + this._emit("frame", { data: this._lastFrameData, viewportWidth: this._lastViewportSize.width, viewportHeight: this._lastViewportSize.height }); + this._sendTabList(); + } + async tabs() { + return { tabs: await this._tabList() }; + } + async _tabList() { + const pages = this._context.pages(); + if (pages.length === 0) + return []; + const devtoolsUrl = await this._devtoolsUrl(pages[0]); + return await Promise.all(pages.map(async (page) => { + const title = await page.title(); + return { + pageId: this._pageId(page), + title, + url: page.url(), + selected: page === this.selectedPage, + inspectorUrl: devtoolsUrl ? await this._pageInspectorUrl(page, devtoolsUrl) : "data:text/plain,Dashboard only supported in Chromium based browsers" + }; + })); + } + pageForId(pageId) { + return this._context?.pages().find((p) => this._pageId(p) === pageId); + } + _pageId(p) { + return p._guid; + } + async _devtoolsUrl(page) { + const cdpPort = this._browserDescriptor.browser.launchOptions.cdpPort; + if (cdpPort) + return new URL(`http://localhost:${cdpPort}/devtools/`); + const browserRevision = await getBrowserRevision(page); + if (!browserRevision) + return null; + return new URL(`https://chrome-devtools-frontend.appspot.com/serve_rev/${browserRevision}/`); + } + async _pageInspectorUrl(page, devtoolsUrl) { + const inspector = new URL("./devtools_app.html", devtoolsUrl); + const cdp = new URL(this._cdpUrl); + cdp.searchParams.set("cdpPageId", this._pageId(page)); + inspector.searchParams.set("ws", `${cdp.host}${cdp.pathname}${cdp.search}`); + const url = inspector.toString(); + return url; + } + _sendTabList() { + this._tabList().then((tabs) => this._emit("tabs", { tabs })); + } + _writeFrame(frame, viewportWidth, viewportHeight) { + const data = frame.toString("base64"); + this._lastFrameData = data; + this._lastViewportSize = { width: viewportWidth, height: viewportHeight }; + this._emit("frame", { data, viewportWidth, viewportHeight }); + } +} +async function getBrowserRevision(page) { + try { + const session = await page.context().newCDPSession(page); + const version = await session.send("Browser.getVersion"); + await session.detach(); + return version.revision; + } catch (error) { + return null; + } +} +class CDPConnection { + constructor(page) { + this._rawSession = null; + this._rawSessionListeners = []; + this._page = page; + } + onconnect() { + this._initializePromise = this._initializeRawSession(); + } + async dispatch(method, params) { + await this._initializePromise; + if (!this._rawSession) + throw new Error("CDP session is not initialized"); + return await this._rawSession.send(method, params); + } + onclose() { + this._rawSessionListeners.forEach((listener) => listener.dispose()); + this._rawSession?.detach().catch(() => { + }); + this._rawSession = null; + this._initializePromise = void 0; + } + async _initializeRawSession() { + const session = await this._page.context().newCDPSession(this._page); + this._rawSession = session; + this._rawSessionListeners = [ + import_eventsHelper.eventsHelper.addEventListener(session, "event", ({ method, params }) => { + this.sendEvent?.(method, params); + }), + import_eventsHelper.eventsHelper.addEventListener(session, "close", () => { + this.close?.(); + }) + ]; + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + CDPConnection, + DashboardConnection +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/exports.js b/node_modules.codex-backup/playwright-core/lib/tools/exports.js new file mode 100644 index 00000000..3eff53a0 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/exports.js @@ -0,0 +1,60 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var exports_exports = {}; +__export(exports_exports, { + BrowserBackend: () => import_browserBackend.BrowserBackend, + Tab: () => import_tab.Tab, + browserTools: () => import_tools.browserTools, + createClientInfo: () => import_registry.createClientInfo, + createConnection: () => import_mcp.createConnection, + filteredTools: () => import_tools.filteredTools, + logUnhandledError: () => import_log.logUnhandledError, + parseResponse: () => import_response.parseResponse, + setupExitWatchdog: () => import_watchdog.setupExitWatchdog, + start: () => import_server.start, + startCliDaemonServer: () => import_daemon.startCliDaemonServer, + toMcpTool: () => import_tool.toMcpTool +}); +module.exports = __toCommonJS(exports_exports); +var import_registry = require("./cli-client/registry"); +var import_daemon = require("./cli-daemon/daemon"); +var import_log = require("./mcp/log"); +var import_watchdog = require("./mcp/watchdog"); +var import_tool = require("./utils/mcp/tool"); +var import_browserBackend = require("./backend/browserBackend"); +var import_response = require("./backend/response"); +var import_tab = require("./backend/tab"); +var import_tools = require("./backend/tools"); +var import_server = require("./utils/mcp/server"); +var import_mcp = require("./mcp/index"); +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + BrowserBackend, + Tab, + browserTools, + createClientInfo, + createConnection, + filteredTools, + logUnhandledError, + parseResponse, + setupExitWatchdog, + start, + startCliDaemonServer, + toMcpTool +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/mcp/browserFactory.js b/node_modules.codex-backup/playwright-core/lib/tools/mcp/browserFactory.js new file mode 100644 index 00000000..4cdb3c2a --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/mcp/browserFactory.js @@ -0,0 +1,233 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var browserFactory_exports = {}; +__export(browserFactory_exports, { + createBrowser: () => createBrowser, + createBrowserWithInfo: () => createBrowserWithInfo, + isProfileLocked: () => isProfileLocked +}); +module.exports = __toCommonJS(browserFactory_exports); +var import_crypto = __toESM(require("crypto")); +var import_fs = __toESM(require("fs")); +var import_net = __toESM(require("net")); +var import_path = __toESM(require("path")); +var playwright = __toESM(require("../../..")); +var import_registry = require("../../server/registry/index"); +var import_log = require("./log"); +var import_context = require("../backend/context"); +var import_extensionContextFactory = require("./extensionContextFactory"); +var import_connect = require("../utils/connect"); +var import_serverRegistry = require("../../serverRegistry"); +var import_connect2 = require("../../client/connect"); +async function createBrowser(config, clientInfo) { + const { browser } = await createBrowserWithInfo(config, clientInfo); + return browser; +} +async function createBrowserWithInfo(config, clientInfo) { + if (config.browser.remoteEndpoint) + return await createRemoteBrowser(config); + let browser; + if (config.browser.cdpEndpoint) + browser = await createCDPBrowser(config, clientInfo); + else if (config.browser.isolated) + browser = await createIsolatedBrowser(config, clientInfo); + else if (config.extension) + browser = await (0, import_extensionContextFactory.createExtensionBrowser)(config, clientInfo); + else + browser = await createPersistentBrowser(config, clientInfo); + return { browser, browserInfo: browserInfo(browser, config) }; +} +function browserInfo(browser, config) { + return { + // eslint-disable-next-line no-restricted-syntax + guid: browser._guid, + browserName: config.browser.browserName, + launchOptions: config.browser.launchOptions, + userDataDir: config.browser.userDataDir + }; +} +async function createIsolatedBrowser(config, clientInfo) { + (0, import_log.testDebug)("create browser (isolated)"); + await injectCdpPort(config.browser); + const browserType = playwright[config.browser.browserName]; + const tracesDir = await computeTracesDir(config, clientInfo); + const browser = await browserType.launch({ + tracesDir, + ...config.browser.launchOptions, + handleSIGINT: false, + handleSIGTERM: false + }).catch((error) => { + if (error.message.includes("Executable doesn't exist")) + throwBrowserIsNotInstalledError(config); + throw error; + }); + await startServer(browser, clientInfo); + return browser; +} +async function createCDPBrowser(config, clientInfo) { + (0, import_log.testDebug)("create browser (cdp)"); + const browser = await playwright.chromium.connectOverCDP(config.browser.cdpEndpoint, { + headers: config.browser.cdpHeaders, + timeout: config.browser.cdpTimeout + }); + await startServer(browser, clientInfo); + return browser; +} +async function createRemoteBrowser(config) { + (0, import_log.testDebug)("create browser (remote)"); + const descriptor = await import_serverRegistry.serverRegistry.find(config.browser.remoteEndpoint); + if (descriptor) { + const browser2 = await (0, import_connect.connectToBrowserAcrossVersions)(descriptor); + return { + browser: browser2, + browserInfo: { + guid: descriptor.browser.guid, + browserName: descriptor.browser.browserName, + launchOptions: descriptor.browser.launchOptions, + userDataDir: descriptor.browser.userDataDir + } + }; + } + const endpoint = config.browser.remoteEndpoint; + const playwrightObject = playwright; + const browser = await (0, import_connect2.connectToBrowser)(playwrightObject, { endpoint }); + browser._connectToBrowserType(playwrightObject[browser._browserName], {}, void 0); + return { browser, browserInfo: browserInfo(browser, config) }; +} +async function createPersistentBrowser(config, clientInfo) { + (0, import_log.testDebug)("create browser (persistent)"); + await injectCdpPort(config.browser); + const userDataDir = config.browser.userDataDir ?? await createUserDataDir(config, clientInfo); + const tracesDir = await computeTracesDir(config, clientInfo); + if (await isProfileLocked5Times(userDataDir)) + throw new Error(`Browser is already in use for ${userDataDir}, use --isolated to run multiple instances of the same browser`); + const browserType = playwright[config.browser.browserName]; + const launchOptions = { + tracesDir, + ...config.browser.launchOptions, + ...config.browser.contextOptions, + handleSIGINT: false, + handleSIGTERM: false, + ignoreDefaultArgs: [ + "--disable-extensions" + ] + }; + try { + const browserContext = await browserType.launchPersistentContext(userDataDir, launchOptions); + const browser = browserContext.browser(); + await startServer(browser, clientInfo); + return browser; + } catch (error) { + if (error.message.includes("Executable doesn't exist")) + throwBrowserIsNotInstalledError(config); + if (error.message.includes("cannot open shared object file: No such file or directory")) { + const browserName = launchOptions.channel ?? config.browser.browserName; + throw new Error(`Missing system dependencies required to run browser ${browserName}. Install them with: sudo npx playwright install-deps ${browserName}`); + } + if (error.message.includes("ProcessSingleton") || error.message.includes("exitCode=21")) + throw new Error(`Browser is already in use for ${userDataDir}, use --isolated to run multiple instances of the same browser`); + throw error; + } +} +async function createUserDataDir(config, clientInfo) { + const dir = process.env.PWMCP_PROFILES_DIR_FOR_TEST ?? import_registry.registryDirectory; + const browserToken = config.browser.launchOptions?.channel ?? config.browser?.browserName; + const rootPathToken = createHash(clientInfo.cwd); + const result = import_path.default.join(dir, `mcp-${browserToken}-${rootPathToken}`); + await import_fs.default.promises.mkdir(result, { recursive: true }); + return result; +} +async function injectCdpPort(browserConfig) { + if (browserConfig.browserName === "chromium") + browserConfig.launchOptions.cdpPort = await findFreePort(); +} +async function findFreePort() { + return new Promise((resolve, reject) => { + const server = import_net.default.createServer(); + server.listen(0, "127.0.0.1", () => { + const { port } = server.address(); + server.close(() => resolve(port)); + }); + server.on("error", reject); + }); +} +function createHash(data) { + return import_crypto.default.createHash("sha256").update(data).digest("hex").slice(0, 7); +} +async function computeTracesDir(config, clientInfo) { + return import_path.default.resolve((0, import_context.outputDir)({ config, cwd: clientInfo.cwd }), "traces"); +} +async function isProfileLocked5Times(userDataDir) { + for (let i = 0; i < 5; i++) { + if (!isProfileLocked(userDataDir)) + return false; + await new Promise((f) => setTimeout(f, 1e3)); + } + return true; +} +function isProfileLocked(userDataDir) { + const lockFile = process.platform === "win32" ? "lockfile" : "SingletonLock"; + const lockPath = import_path.default.join(userDataDir, lockFile); + if (process.platform === "win32") { + try { + const fd = import_fs.default.openSync(lockPath, "r+"); + import_fs.default.closeSync(fd); + return false; + } catch (e) { + return e.code !== "ENOENT"; + } + } + try { + const target = import_fs.default.readlinkSync(lockPath); + const pid = parseInt(target.split("-").pop() || "", 10); + if (isNaN(pid)) + return false; + process.kill(pid, 0); + return true; + } catch { + return false; + } +} +function throwBrowserIsNotInstalledError(config) { + const channel = config.browser.launchOptions?.channel ?? config.browser.browserName; + if (config.skillMode) + throw new Error(`Browser "${channel}" is not installed. Run \`playwright-cli install-browser ${channel}\` to install`); + else + throw new Error(`Browser "${channel}" is not installed. Run \`npx @playwright/mcp install-browser ${channel}\` to install`); +} +async function startServer(browser, clientInfo) { + if (clientInfo.sessionName) + await browser.bind(clientInfo.sessionName, { workspaceDir: clientInfo.workspaceDir }); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + createBrowser, + createBrowserWithInfo, + isProfileLocked +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/mcp/cdpRelay.js b/node_modules.codex-backup/playwright-core/lib/tools/mcp/cdpRelay.js new file mode 100644 index 00000000..6bc53c27 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/mcp/cdpRelay.js @@ -0,0 +1,352 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var cdpRelay_exports = {}; +__export(cdpRelay_exports, { + CDPRelayServer: () => CDPRelayServer +}); +module.exports = __toCommonJS(cdpRelay_exports); +var import_child_process = require("child_process"); +var import_os = __toESM(require("os")); +var import_utilsBundle = require("../../utilsBundle"); +var import_registry = require("../../server/registry/index"); +var import_manualPromise = require("../../utils/isomorphic/manualPromise"); +var import_http2 = require("../utils/mcp/http"); +var import_log = require("./log"); +var protocol = __toESM(require("./protocol")); +const debugLogger = (0, import_utilsBundle.debug)("pw:mcp:relay"); +class CDPRelayServer { + constructor(server, browserChannel, userDataDir, executablePath) { + this._playwrightConnection = null; + this._extensionConnection = null; + this._nextSessionId = 1; + this._wsHost = (0, import_http2.addressToString)(server.address(), { protocol: "ws" }); + this._browserChannel = browserChannel; + this._userDataDir = userDataDir; + this._executablePath = executablePath; + const uuid = crypto.randomUUID(); + this._cdpPath = `/cdp/${uuid}`; + this._extensionPath = `/extension/${uuid}`; + this._resetExtensionConnection(); + this._wss = new import_utilsBundle.wsServer({ server }); + this._wss.on("connection", this._onConnection.bind(this)); + } + cdpEndpoint() { + return `${this._wsHost}${this._cdpPath}`; + } + extensionEndpoint() { + return `${this._wsHost}${this._extensionPath}`; + } + async ensureExtensionConnectionForMCPContext(clientInfo) { + debugLogger("Ensuring extension connection for MCP context"); + if (this._extensionConnection) + return; + this._connectBrowser(clientInfo); + debugLogger("Waiting for incoming extension connection"); + await Promise.race([ + this._extensionConnectionPromise, + new Promise((_, reject) => setTimeout(() => { + reject(new Error(`Extension connection timeout. Make sure the "Playwright MCP Bridge" extension is installed. See https://github.com/microsoft/playwright-mcp/blob/main/packages/extension/README.md for installation instructions.`)); + }, process.env.PWMCP_TEST_CONNECTION_TIMEOUT ? parseInt(process.env.PWMCP_TEST_CONNECTION_TIMEOUT, 10) : 5e3)) + ]); + debugLogger("Extension connection established"); + } + _connectBrowser(clientInfo) { + const mcpRelayEndpoint = `${this._wsHost}${this._extensionPath}`; + const url = new URL("chrome-extension://mmlmfjhmonkocbjadbfplnigmagldckm/connect.html"); + url.searchParams.set("mcpRelayUrl", mcpRelayEndpoint); + const client = { + name: "Playwright Agent", + version: require("../../../package.json").version + }; + url.searchParams.set("client", JSON.stringify(client)); + url.searchParams.set("protocolVersion", process.env.PWMCP_TEST_PROTOCOL_VERSION ?? protocol.VERSION.toString()); + const token = process.env.PLAYWRIGHT_MCP_EXTENSION_TOKEN; + if (token) + url.searchParams.set("token", token); + const href = url.toString(); + const channel = import_registry.registry.isChromiumAlias(this._browserChannel) ? "chromium" : this._browserChannel; + let executablePath = this._executablePath; + if (!executablePath) { + const executableInfo = import_registry.registry.findExecutable(channel); + if (!executableInfo) + throw new Error(`Unsupported channel: "${this._browserChannel}"`); + executablePath = executableInfo.executablePath(); + if (!executablePath) + throw new Error(`"${this._browserChannel}" executable not found. Make sure it is installed at a standard location.`); + } + const args = []; + if (this._userDataDir) + args.push(`--user-data-dir=${this._userDataDir}`); + if (import_os.default.platform() === "linux" && channel === "chromium") + args.push("--no-sandbox"); + args.push(href); + (0, import_child_process.spawn)(executablePath, args, { + windowsHide: true, + detached: true, + shell: false, + stdio: "ignore" + }); + } + stop() { + this.closeConnections("Server stopped"); + this._wss.close(); + } + closeConnections(reason) { + this._closePlaywrightConnection(reason); + this._closeExtensionConnection(reason); + } + _onConnection(ws2, request) { + const url = new URL(`http://localhost${request.url}`); + debugLogger(`New connection to ${url.pathname}`); + if (url.pathname === this._cdpPath) { + this._handlePlaywrightConnection(ws2); + } else if (url.pathname === this._extensionPath) { + this._handleExtensionConnection(ws2); + } else { + debugLogger(`Invalid path: ${url.pathname}`); + ws2.close(4004, "Invalid path"); + } + } + _handlePlaywrightConnection(ws2) { + if (this._playwrightConnection) { + debugLogger("Rejecting second Playwright connection"); + ws2.close(1e3, "Another CDP client already connected"); + return; + } + this._playwrightConnection = ws2; + ws2.on("message", async (data) => { + try { + const message = JSON.parse(data.toString()); + await this._handlePlaywrightMessage(message); + } catch (error) { + debugLogger(`Error while handling Playwright message +${data.toString()} +`, error); + } + }); + ws2.on("close", () => { + if (this._playwrightConnection !== ws2) + return; + this._playwrightConnection = null; + this._closeExtensionConnection("Playwright client disconnected"); + debugLogger("Playwright WebSocket closed"); + }); + ws2.on("error", (error) => { + debugLogger("Playwright WebSocket error:", error); + }); + debugLogger("Playwright MCP connected"); + } + _closeExtensionConnection(reason) { + this._extensionConnection?.close(reason); + this._extensionConnectionPromise.reject(new Error(reason)); + this._resetExtensionConnection(); + } + _resetExtensionConnection() { + this._connectedTabInfo = void 0; + this._extensionConnection = null; + this._extensionConnectionPromise = new import_manualPromise.ManualPromise(); + void this._extensionConnectionPromise.catch(import_log.logUnhandledError); + } + _closePlaywrightConnection(reason) { + if (this._playwrightConnection?.readyState === import_utilsBundle.ws.OPEN) + this._playwrightConnection.close(1e3, reason); + this._playwrightConnection = null; + } + _handleExtensionConnection(ws2) { + if (this._extensionConnection) { + ws2.close(1e3, "Another extension connection already established"); + return; + } + this._extensionConnection = new ExtensionConnection(ws2); + this._extensionConnection.onclose = (c, reason) => { + debugLogger("Extension WebSocket closed:", reason, c === this._extensionConnection); + if (this._extensionConnection !== c) + return; + this._resetExtensionConnection(); + this._closePlaywrightConnection(`Extension disconnected: ${reason}`); + }; + this._extensionConnection.onmessage = this._handleExtensionMessage.bind(this); + this._extensionConnectionPromise.resolve(); + } + _handleExtensionMessage(method, params) { + switch (method) { + case "forwardCDPEvent": + const sessionId = params.sessionId || this._connectedTabInfo?.sessionId; + this._sendToPlaywright({ + sessionId, + method: params.method, + params: params.params + }); + break; + } + } + async _handlePlaywrightMessage(message) { + debugLogger("\u2190 Playwright:", `${message.method} (id=${message.id})`); + const { id, sessionId, method, params } = message; + try { + const result = await this._handleCDPCommand(method, params, sessionId); + this._sendToPlaywright({ id, sessionId, result }); + } catch (e) { + debugLogger("Error in the extension:", e); + this._sendToPlaywright({ + id, + sessionId, + error: { message: e.message } + }); + } + } + async _handleCDPCommand(method, params, sessionId) { + switch (method) { + case "Browser.getVersion": { + return { + protocolVersion: "1.3", + product: "Chrome/Extension-Bridge", + userAgent: "CDP-Bridge-Server/1.0.0" + }; + } + case "Browser.setDownloadBehavior": { + return {}; + } + case "Target.setAutoAttach": { + if (sessionId) + break; + const { targetInfo } = await this._extensionConnection.send("attachToTab", {}); + this._connectedTabInfo = { + targetInfo, + sessionId: `pw-tab-${this._nextSessionId++}` + }; + debugLogger("Simulating auto-attach"); + this._sendToPlaywright({ + method: "Target.attachedToTarget", + params: { + sessionId: this._connectedTabInfo.sessionId, + targetInfo: { + ...this._connectedTabInfo.targetInfo, + attached: true + }, + waitingForDebugger: false + } + }); + return {}; + } + case "Target.getTargetInfo": { + return this._connectedTabInfo?.targetInfo; + } + } + return await this._forwardToExtension(method, params, sessionId); + } + async _forwardToExtension(method, params, sessionId) { + if (!this._extensionConnection) + throw new Error("Extension not connected"); + if (this._connectedTabInfo?.sessionId === sessionId) + sessionId = void 0; + return await this._extensionConnection.send("forwardCDPCommand", { sessionId, method, params }); + } + _sendToPlaywright(message) { + debugLogger("\u2192 Playwright:", `${message.method ?? `response(id=${message.id})`}`); + this._playwrightConnection?.send(JSON.stringify(message)); + } +} +class ExtensionConnection { + constructor(ws2) { + this._callbacks = /* @__PURE__ */ new Map(); + this._lastId = 0; + this._ws = ws2; + this._ws.on("message", this._onMessage.bind(this)); + this._ws.on("close", this._onClose.bind(this)); + this._ws.on("error", this._onError.bind(this)); + } + async send(method, params) { + if (this._ws.readyState !== import_utilsBundle.ws.OPEN) + throw new Error(`Unexpected WebSocket state: ${this._ws.readyState}`); + const id = ++this._lastId; + this._ws.send(JSON.stringify({ id, method, params })); + const error = new Error(`Protocol error: ${method}`); + return new Promise((resolve, reject) => { + this._callbacks.set(id, { resolve, reject, error }); + }); + } + close(message) { + debugLogger("closing extension connection:", message); + if (this._ws.readyState === import_utilsBundle.ws.OPEN) + this._ws.close(1e3, message); + } + _onMessage(event) { + const eventData = event.toString(); + let parsedJson; + try { + parsedJson = JSON.parse(eventData); + } catch (e) { + debugLogger(`<closing ws> Closing websocket due to malformed JSON. eventData=${eventData} e=${e?.message}`); + this._ws.close(); + return; + } + try { + this._handleParsedMessage(parsedJson); + } catch (e) { + debugLogger(`<closing ws> Closing websocket due to failed onmessage callback. eventData=${eventData} e=${e?.message}`); + this._ws.close(); + } + } + _handleParsedMessage(object) { + if (object.id && this._callbacks.has(object.id)) { + const callback = this._callbacks.get(object.id); + this._callbacks.delete(object.id); + if (object.error) { + const error = callback.error; + error.message = object.error; + callback.reject(error); + } else { + callback.resolve(object.result); + } + } else if (object.id) { + debugLogger("\u2190 Extension: unexpected response", object); + } else { + this.onmessage?.(object.method, object.params); + } + } + _onClose(event) { + debugLogger(`<ws closed> code=${event.code} reason=${event.reason}`); + this._dispose(); + this.onclose?.(this, event.reason); + } + _onError(event) { + debugLogger(`<ws error> message=${event.message} type=${event.type} target=${event.target}`); + this._dispose(); + } + _dispose() { + for (const callback of this._callbacks.values()) + callback.reject(new Error("WebSocket closed")); + this._callbacks.clear(); + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + CDPRelayServer +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/mcp/cli-stub.js b/node_modules.codex-backup/playwright-core/lib/tools/mcp/cli-stub.js new file mode 100644 index 00000000..090c338e --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/mcp/cli-stub.js @@ -0,0 +1,7 @@ +"use strict"; +var import_utilsBundle = require("../../utilsBundle"); +var import_program = require("./program"); +const packageJSON = require("../../../package.json"); +const p = import_utilsBundle.program.version("Version " + packageJSON.version).name("Playwright MCP"); +(0, import_program.decorateMCPCommand)(p); +void import_utilsBundle.program.parseAsync(process.argv); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/mcp/config.d.js b/node_modules.codex-backup/playwright-core/lib/tools/mcp/config.d.js new file mode 100644 index 00000000..051aab7d --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/mcp/config.d.js @@ -0,0 +1,16 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var config_d_exports = {}; +module.exports = __toCommonJS(config_d_exports); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/mcp/config.js b/node_modules.codex-backup/playwright-core/lib/tools/mcp/config.js new file mode 100644 index 00000000..8985aac9 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/mcp/config.js @@ -0,0 +1,446 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var config_exports = {}; +__export(config_exports, { + commaSeparatedList: () => commaSeparatedList, + configFromEnv: () => configFromEnv, + dotenvFileLoader: () => dotenvFileLoader, + enumParser: () => enumParser, + headerParser: () => headerParser, + loadConfig: () => loadConfig, + numberParser: () => numberParser, + resolutionParser: () => resolutionParser, + resolveCLIConfigForCLI: () => resolveCLIConfigForCLI, + resolveCLIConfigForMCP: () => resolveCLIConfigForMCP, + resolveConfig: () => resolveConfig, + semicolonSeparatedList: () => semicolonSeparatedList +}); +module.exports = __toCommonJS(config_exports); +var import_fs = __toESM(require("fs")); +var import_path = __toESM(require("path")); +var import_os = __toESM(require("os")); +var import__ = require("../../.."); +var import_utilsBundle = require("../../utilsBundle"); +var import_configIni = require("./configIni"); +async function fileExistsAsync(resolved) { + try { + return (await import_fs.default.promises.stat(resolved)).isFile(); + } catch { + return false; + } +} +const defaultConfig = { + browser: { + launchOptions: {}, + contextOptions: {} + }, + timeouts: { + action: 5e3, + navigation: 6e4, + expect: 5e3 + } +}; +async function resolveConfig(config) { + const merged = mergeConfig(defaultConfig, config); + const browser = await validateBrowserConfig(merged.browser); + return { ...merged, browser }; +} +async function resolveCLIConfigForMCP(cliOptions, env) { + const envOverrides = configFromEnv(env); + const cliOverrides = configFromCLIOptions(cliOptions); + const configFile = cliOverrides.configFile ?? envOverrides.configFile; + const configInFile = await loadConfig(configFile); + let result = defaultConfig; + result = mergeConfig(result, configInFile); + result = mergeConfig(result, envOverrides); + result = mergeConfig(result, cliOverrides); + const browser = await validateBrowserConfig(result.browser); + if (browser.launchOptions.headless === void 0) + browser.launchOptions.headless = import_os.default.platform() === "linux" && !process.env.DISPLAY; + return { ...result, browser, configFile }; +} +async function resolveCLIConfigForCLI(daemonProfilesDir, sessionName, options, env) { + const config = options.config ? import_path.default.resolve(options.config) : void 0; + try { + const defaultConfigFile = import_path.default.resolve(".playwright", "cli.config.json"); + if (!config && import_fs.default.existsSync(defaultConfigFile)) + options.config = defaultConfigFile; + } catch { + } + const daemonOverrides = configFromCLIOptions({ + endpoint: options.endpoint, + config: options.config, + browser: options.browser, + headless: options.headed ? false : void 0, + extension: options.extension, + userDataDir: options.profile, + snapshotMode: "full" + }); + const envOverrides = configFromEnv(env); + const configFile = daemonOverrides.configFile ?? envOverrides.configFile; + const configInFile = await loadConfig(configFile); + const globalConfigPath = import_path.default.join((env ?? process.env)["PWTEST_CLI_GLOBAL_CONFIG"] ?? import_os.default.homedir(), ".playwright", "cli.config.json"); + const globalConfigInFile = await loadConfig(import_fs.default.existsSync(globalConfigPath) ? globalConfigPath : void 0); + let result = defaultConfig; + result = mergeConfig(result, globalConfigInFile); + result = mergeConfig(result, configInFile); + result = mergeConfig(result, envOverrides); + result = mergeConfig(result, daemonOverrides); + if (result.browser.isolated === void 0) + result.browser.isolated = !options.profile && !options.persistent && !result.browser.userDataDir && !result.browser.remoteEndpoint && !result.extension; + if (!result.extension && !result.browser.isolated && !result.browser.userDataDir && !result.browser.remoteEndpoint) { + const browserToken = result.browser.launchOptions?.channel ?? result.browser?.browserName; + const userDataDir = import_path.default.resolve(daemonProfilesDir, `ud-${sessionName}-${browserToken}`); + result.browser.userDataDir = userDataDir; + } + if (result.browser.launchOptions.headless === void 0) + result.browser.launchOptions.headless = true; + const browser = await validateBrowserConfig(result.browser); + return { ...result, browser, configFile, skillMode: true }; +} +async function validateBrowserConfig(browser) { + let browserName = browser.browserName; + if (!browserName) { + browserName = "chromium"; + if (browser.launchOptions.channel === void 0) + browser.launchOptions.channel = "chrome"; + } + if (browser.browserName === "chromium" && browser.launchOptions.chromiumSandbox === void 0) { + if (process.platform === "linux") + browser.launchOptions.chromiumSandbox = browser.launchOptions.channel !== "chromium" && browser.launchOptions.channel !== "chrome-for-testing"; + else + browser.launchOptions.chromiumSandbox = true; + } + if (browser.isolated && browser.userDataDir) + throw new Error("Browser userDataDir is not supported in isolated mode."); + if (browser.initScript) { + for (const script of browser.initScript) { + if (!await fileExistsAsync(script)) + throw new Error(`Init script file does not exist: ${script}`); + } + } + if (browser.initPage) { + for (const page of browser.initPage) { + if (!await fileExistsAsync(page)) + throw new Error(`Init page file does not exist: ${page}`); + } + } + if (browser.contextOptions.viewport === void 0) { + if (browser.launchOptions.headless) + browser.contextOptions.viewport = { width: 1280, height: 720 }; + else + browser.contextOptions.viewport = null; + } + return { ...browser, browserName }; +} +function configFromCLIOptions(cliOptions) { + let browserName; + let channel; + switch (cliOptions.browser) { + case "chrome": + case "chrome-beta": + case "chrome-canary": + case "chrome-dev": + case "msedge": + case "msedge-beta": + case "msedge-canary": + case "msedge-dev": + browserName = "chromium"; + channel = cliOptions.browser; + break; + case "chromium": + browserName = "chromium"; + channel = "chrome-for-testing"; + break; + case "firefox": + browserName = "firefox"; + break; + case "webkit": + browserName = "webkit"; + break; + } + const launchOptions = { + channel, + executablePath: cliOptions.executablePath, + headless: cliOptions.headless + }; + if (cliOptions.sandbox !== void 0) + launchOptions.chromiumSandbox = cliOptions.sandbox; + if (cliOptions.proxyServer) { + launchOptions.proxy = { + server: cliOptions.proxyServer + }; + if (cliOptions.proxyBypass) + launchOptions.proxy.bypass = cliOptions.proxyBypass; + } + if (cliOptions.device && cliOptions.cdpEndpoint) + throw new Error("Device emulation is not supported with cdpEndpoint."); + const contextOptions = cliOptions.device ? import__.devices[cliOptions.device] : {}; + if (cliOptions.storageState) + contextOptions.storageState = cliOptions.storageState; + if (cliOptions.userAgent) + contextOptions.userAgent = cliOptions.userAgent; + if (cliOptions.viewportSize) + contextOptions.viewport = cliOptions.viewportSize; + if (cliOptions.ignoreHttpsErrors) + contextOptions.ignoreHTTPSErrors = true; + if (cliOptions.blockServiceWorkers) + contextOptions.serviceWorkers = "block"; + if (cliOptions.grantPermissions) + contextOptions.permissions = cliOptions.grantPermissions; + const config = { + browser: { + browserName, + isolated: cliOptions.isolated, + userDataDir: cliOptions.userDataDir, + launchOptions, + contextOptions, + cdpEndpoint: cliOptions.cdpEndpoint, + cdpHeaders: cliOptions.cdpHeader, + cdpTimeout: cliOptions.cdpTimeout, + initPage: cliOptions.initPage, + initScript: cliOptions.initScript, + remoteEndpoint: cliOptions.endpoint + }, + extension: cliOptions.extension, + server: { + port: cliOptions.port, + host: cliOptions.host, + allowedHosts: cliOptions.allowedHosts + }, + capabilities: cliOptions.caps, + console: { + level: cliOptions.consoleLevel + }, + network: { + allowedOrigins: cliOptions.allowedOrigins, + blockedOrigins: cliOptions.blockedOrigins + }, + allowUnrestrictedFileAccess: cliOptions.allowUnrestrictedFileAccess, + codegen: cliOptions.codegen, + saveSession: cliOptions.saveSession, + secrets: cliOptions.secrets, + sharedBrowserContext: cliOptions.sharedBrowserContext, + snapshot: cliOptions.snapshotMode ? { mode: cliOptions.snapshotMode } : void 0, + outputDir: cliOptions.outputDir, + imageResponses: cliOptions.imageResponses, + testIdAttribute: cliOptions.testIdAttribute, + timeouts: { + action: cliOptions.timeoutAction, + navigation: cliOptions.timeoutNavigation + } + }; + return { ...config, configFile: cliOptions.config }; +} +function configFromEnv(env) { + const e = env ?? process.env; + const options = {}; + options.allowedHosts = commaSeparatedList(e.PLAYWRIGHT_MCP_ALLOWED_HOSTS); + options.allowedOrigins = semicolonSeparatedList(e.PLAYWRIGHT_MCP_ALLOWED_ORIGINS); + options.allowUnrestrictedFileAccess = envToBoolean(e.PLAYWRIGHT_MCP_ALLOW_UNRESTRICTED_FILE_ACCESS); + options.blockedOrigins = semicolonSeparatedList(e.PLAYWRIGHT_MCP_BLOCKED_ORIGINS); + options.blockServiceWorkers = envToBoolean(e.PLAYWRIGHT_MCP_BLOCK_SERVICE_WORKERS); + options.browser = envToString(e.PLAYWRIGHT_MCP_BROWSER); + options.caps = commaSeparatedList(e.PLAYWRIGHT_MCP_CAPS); + options.cdpEndpoint = envToString(e.PLAYWRIGHT_MCP_CDP_ENDPOINT); + options.cdpHeader = headerParser(envToString(e.PLAYWRIGHT_MCP_CDP_HEADERS)); + options.cdpTimeout = numberParser(e.PLAYWRIGHT_MCP_CDP_TIMEOUT); + options.config = envToString(e.PLAYWRIGHT_MCP_CONFIG); + if (e.PLAYWRIGHT_MCP_CONSOLE_LEVEL) + options.consoleLevel = enumParser("--console-level", ["error", "warning", "info", "debug"], e.PLAYWRIGHT_MCP_CONSOLE_LEVEL); + options.device = envToString(e.PLAYWRIGHT_MCP_DEVICE); + options.executablePath = envToString(e.PLAYWRIGHT_MCP_EXECUTABLE_PATH); + options.extension = envToBoolean(e.PLAYWRIGHT_MCP_EXTENSION); + options.grantPermissions = commaSeparatedList(e.PLAYWRIGHT_MCP_GRANT_PERMISSIONS); + options.headless = envToBoolean(e.PLAYWRIGHT_MCP_HEADLESS); + options.host = envToString(e.PLAYWRIGHT_MCP_HOST); + options.ignoreHttpsErrors = envToBoolean(e.PLAYWRIGHT_MCP_IGNORE_HTTPS_ERRORS); + const initPage = envToString(e.PLAYWRIGHT_MCP_INIT_PAGE); + if (initPage) + options.initPage = [initPage]; + const initScript = envToString(e.PLAYWRIGHT_MCP_INIT_SCRIPT); + if (initScript) + options.initScript = [initScript]; + options.isolated = envToBoolean(e.PLAYWRIGHT_MCP_ISOLATED); + if (e.PLAYWRIGHT_MCP_IMAGE_RESPONSES) + options.imageResponses = enumParser("--image-responses", ["allow", "omit"], e.PLAYWRIGHT_MCP_IMAGE_RESPONSES); + options.sandbox = envToBoolean(e.PLAYWRIGHT_MCP_SANDBOX); + options.outputDir = envToString(e.PLAYWRIGHT_MCP_OUTPUT_DIR); + options.port = numberParser(e.PLAYWRIGHT_MCP_PORT); + options.proxyBypass = envToString(e.PLAYWRIGHT_MCP_PROXY_BYPASS); + options.proxyServer = envToString(e.PLAYWRIGHT_MCP_PROXY_SERVER); + options.secrets = dotenvFileLoader(e.PLAYWRIGHT_MCP_SECRETS_FILE); + options.storageState = envToString(e.PLAYWRIGHT_MCP_STORAGE_STATE); + options.testIdAttribute = envToString(e.PLAYWRIGHT_MCP_TEST_ID_ATTRIBUTE); + options.timeoutAction = numberParser(e.PLAYWRIGHT_MCP_TIMEOUT_ACTION); + options.timeoutNavigation = numberParser(e.PLAYWRIGHT_MCP_TIMEOUT_NAVIGATION); + options.userAgent = envToString(e.PLAYWRIGHT_MCP_USER_AGENT); + options.userDataDir = envToString(e.PLAYWRIGHT_MCP_USER_DATA_DIR); + options.viewportSize = resolutionParser("--viewport-size", e.PLAYWRIGHT_MCP_VIEWPORT_SIZE); + return configFromCLIOptions(options); +} +async function loadConfig(configFile) { + if (!configFile) + return {}; + if (configFile.endsWith(".ini")) + return (0, import_configIni.configFromIniFile)(configFile); + try { + const data = await import_fs.default.promises.readFile(configFile, "utf8"); + return JSON.parse(data.charCodeAt(0) === 65279 ? data.slice(1) : data); + } catch { + return (0, import_configIni.configFromIniFile)(configFile); + } +} +function pickDefined(obj) { + return Object.fromEntries( + Object.entries(obj ?? {}).filter(([_, v]) => v !== void 0) + ); +} +function mergeConfig(base, overrides) { + const browser = { + ...pickDefined(base.browser), + ...pickDefined(overrides.browser), + browserName: overrides.browser?.browserName ?? base.browser?.browserName, + isolated: overrides.browser?.isolated ?? base.browser?.isolated, + launchOptions: { + ...pickDefined(base.browser?.launchOptions), + ...pickDefined(overrides.browser?.launchOptions), + // Assistant mode is not a part of the public API. + ...{ assistantMode: true } + }, + contextOptions: { + ...pickDefined(base.browser?.contextOptions), + ...pickDefined(overrides.browser?.contextOptions) + } + }; + if (browser.browserName !== "chromium" && browser.launchOptions) + delete browser.launchOptions.channel; + return { + ...pickDefined(base), + ...pickDefined(overrides), + browser, + console: { + ...pickDefined(base.console), + ...pickDefined(overrides.console) + }, + network: { + ...pickDefined(base.network), + ...pickDefined(overrides.network) + }, + server: { + ...pickDefined(base.server), + ...pickDefined(overrides.server) + }, + snapshot: { + ...pickDefined(base.snapshot), + ...pickDefined(overrides.snapshot) + }, + timeouts: { + ...pickDefined(base.timeouts), + ...pickDefined(overrides.timeouts) + } + }; +} +function semicolonSeparatedList(value) { + if (!value) + return void 0; + return value.split(";").map((v) => v.trim()); +} +function commaSeparatedList(value) { + if (!value) + return void 0; + return value.split(",").map((v) => v.trim()); +} +function dotenvFileLoader(value) { + if (!value) + return void 0; + return import_utilsBundle.dotenv.parse(import_fs.default.readFileSync(value, "utf8")); +} +function numberParser(value) { + if (!value) + return void 0; + return +value; +} +function resolutionParser(name, value) { + if (!value) + return void 0; + if (value.includes("x")) { + const [width, height] = value.split("x").map((v) => +v); + if (isNaN(width) || isNaN(height) || width <= 0 || height <= 0) + throw new Error(`Invalid resolution format: use ${name}="800x600"`); + return { width, height }; + } + if (value.includes(",")) { + const [width, height] = value.split(",").map((v) => +v); + if (isNaN(width) || isNaN(height) || width <= 0 || height <= 0) + throw new Error(`Invalid resolution format: use ${name}="800x600"`); + return { width, height }; + } + throw new Error(`Invalid resolution format: use ${name}="800x600"`); +} +function headerParser(arg, previous) { + if (!arg) + return previous; + const result = { ...previous ?? {} }; + const colonIndex = arg.indexOf(":"); + const name = colonIndex === -1 ? arg.trim() : arg.substring(0, colonIndex).trim(); + const value = colonIndex === -1 ? "" : arg.substring(colonIndex + 1).trim(); + result[name] = value; + return result; +} +function enumParser(name, options, value) { + if (!options.includes(value)) + throw new Error(`Invalid ${name}: ${value}. Valid values are: ${options.join(", ")}`); + return value; +} +function envToBoolean(value) { + if (value === "true" || value === "1") + return true; + if (value === "false" || value === "0") + return false; + return void 0; +} +function envToString(value) { + return value ? value.trim() : void 0; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + commaSeparatedList, + configFromEnv, + dotenvFileLoader, + enumParser, + headerParser, + loadConfig, + numberParser, + resolutionParser, + resolveCLIConfigForCLI, + resolveCLIConfigForMCP, + resolveConfig, + semicolonSeparatedList +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/mcp/configIni.js b/node_modules.codex-backup/playwright-core/lib/tools/mcp/configIni.js new file mode 100644 index 00000000..ff787f80 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/mcp/configIni.js @@ -0,0 +1,189 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var configIni_exports = {}; +__export(configIni_exports, { + configFromIniFile: () => configFromIniFile, + configsFromIniFile: () => configsFromIniFile +}); +module.exports = __toCommonJS(configIni_exports); +var import_fs = __toESM(require("fs")); +var import_utilsBundle = require("../../utilsBundle"); +function configFromIniFile(filePath) { + const content = import_fs.default.readFileSync(filePath, "utf8"); + const parsed = import_utilsBundle.ini.parse(content); + return iniEntriesToConfig(parsed); +} +function configsFromIniFile(filePath) { + const content = import_fs.default.readFileSync(filePath, "utf8"); + const parsed = import_utilsBundle.ini.parse(content); + const result = /* @__PURE__ */ new Map(); + for (const [sectionName, sectionData] of Object.entries(parsed)) { + if (typeof sectionData !== "object" || sectionData === null) + continue; + result.set(sectionName, iniEntriesToConfig(sectionData)); + } + return result; +} +function iniEntriesToConfig(entries) { + const config = {}; + for (const [targetPath, rawValue] of Object.entries(entries)) { + const type = longhandTypes[targetPath]; + const value = type ? coerceToType(rawValue, type) : coerceIniValue(rawValue); + setNestedValue(config, targetPath, value); + } + return config; +} +function coerceToType(value, type) { + switch (type) { + case "string": + return String(value); + case "number": + return Number(value); + case "boolean": + if (typeof value === "boolean") + return value; + return value === "true" || value === "1"; + case "string[]": + if (Array.isArray(value)) + return value.map(String); + return [String(value)]; + case "size": { + if (typeof value === "string" && value.includes("x")) { + const [w, h] = value.split("x").map(Number); + if (!isNaN(w) && !isNaN(h) && w > 0 && h > 0) + return { width: w, height: h }; + } + return void 0; + } + } +} +function coerceIniValue(value) { + if (typeof value !== "string") + return value; + const trimmed = value.trim(); + if (trimmed === "") + return trimmed; + const num = Number(trimmed); + if (!isNaN(num)) + return num; + return value; +} +function setNestedValue(obj, dotPath, value) { + const parts = dotPath.split("."); + let current = obj; + for (let i = 0; i < parts.length - 1; i++) { + const part = parts[i]; + if (!(part in current) || typeof current[part] !== "object" || current[part] === null) + current[part] = {}; + current = current[part]; + } + current[parts[parts.length - 1]] = value; +} +const longhandTypes = { + // browser direct + "browser.browserName": "string", + "browser.isolated": "boolean", + "browser.userDataDir": "string", + "browser.cdpEndpoint": "string", + "browser.cdpTimeout": "number", + "browser.remoteEndpoint": "string", + "browser.initPage": "string[]", + "browser.initScript": "string[]", + // browser.launchOptions + "browser.launchOptions.channel": "string", + "browser.launchOptions.headless": "boolean", + "browser.launchOptions.executablePath": "string", + "browser.launchOptions.chromiumSandbox": "boolean", + "browser.launchOptions.args": "string[]", + "browser.launchOptions.downloadsPath": "string", + "browser.launchOptions.handleSIGHUP": "boolean", + "browser.launchOptions.handleSIGINT": "boolean", + "browser.launchOptions.handleSIGTERM": "boolean", + "browser.launchOptions.slowMo": "number", + "browser.launchOptions.timeout": "number", + "browser.launchOptions.tracesDir": "string", + "browser.launchOptions.proxy.server": "string", + "browser.launchOptions.proxy.bypass": "string", + "browser.launchOptions.proxy.username": "string", + "browser.launchOptions.proxy.password": "string", + // browser.contextOptions + "browser.contextOptions.acceptDownloads": "boolean", + "browser.contextOptions.baseURL": "string", + "browser.contextOptions.bypassCSP": "boolean", + "browser.contextOptions.colorScheme": "string", + "browser.contextOptions.contrast": "string", + "browser.contextOptions.deviceScaleFactor": "number", + "browser.contextOptions.forcedColors": "string", + "browser.contextOptions.hasTouch": "boolean", + "browser.contextOptions.ignoreHTTPSErrors": "boolean", + "browser.contextOptions.isMobile": "boolean", + "browser.contextOptions.javaScriptEnabled": "boolean", + "browser.contextOptions.locale": "string", + "browser.contextOptions.offline": "boolean", + "browser.contextOptions.permissions": "string[]", + "browser.contextOptions.reducedMotion": "string", + "browser.contextOptions.screen": "size", + "browser.contextOptions.serviceWorkers": "string", + "browser.contextOptions.storageState": "string", + "browser.contextOptions.strictSelectors": "boolean", + "browser.contextOptions.timezoneId": "string", + "browser.contextOptions.userAgent": "string", + "browser.contextOptions.viewport": "size", + // top-level + "extension": "boolean", + "capabilities": "string[]", + "saveSession": "boolean", + "saveTrace": "boolean", + "saveVideo": "size", + "sharedBrowserContext": "boolean", + "outputDir": "string", + "imageResponses": "string", + "allowUnrestrictedFileAccess": "boolean", + "codegen": "string", + "testIdAttribute": "string", + // server + "server.port": "number", + "server.host": "string", + "server.allowedHosts": "string[]", + // console + "console.level": "string", + // network + "network.allowedOrigins": "string[]", + "network.blockedOrigins": "string[]", + // timeouts + "timeouts.action": "number", + "timeouts.navigation": "number", + // snapshot + "snapshot.mode": "string" +}; +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + configFromIniFile, + configsFromIniFile +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/mcp/extensionContextFactory.js b/node_modules.codex-backup/playwright-core/lib/tools/mcp/extensionContextFactory.js new file mode 100644 index 00000000..de9c76c0 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/mcp/extensionContextFactory.js @@ -0,0 +1,55 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var extensionContextFactory_exports = {}; +__export(extensionContextFactory_exports, { + createExtensionBrowser: () => createExtensionBrowser +}); +module.exports = __toCommonJS(extensionContextFactory_exports); +var playwright = __toESM(require("../../..")); +var import_utilsBundle = require("../../utilsBundle"); +var import_network = require("../../server/utils/network"); +var import_cdpRelay = require("./cdpRelay"); +const debugLogger = (0, import_utilsBundle.debug)("pw:mcp:relay"); +async function createExtensionBrowser(config, clientInfo) { + const httpServer = (0, import_network.createHttpServer)(); + await (0, import_network.startHttpServer)(httpServer, {}); + const relay = new import_cdpRelay.CDPRelayServer( + httpServer, + config.browser.launchOptions.channel || "chrome", + config.browser.userDataDir, + config.browser.launchOptions.executablePath + ); + debugLogger(`CDP relay server started, extension endpoint: ${relay.extensionEndpoint()}.`); + await relay.ensureExtensionConnectionForMCPContext(clientInfo); + return await playwright.chromium.connectOverCDP(relay.cdpEndpoint(), { isLocal: true }); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + createExtensionBrowser +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/mcp/index.js b/node_modules.codex-backup/playwright-core/lib/tools/mcp/index.js new file mode 100644 index 00000000..5e22d4f2 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/mcp/index.js @@ -0,0 +1,62 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var mcp_exports = {}; +__export(mcp_exports, { + createConnection: () => createConnection +}); +module.exports = __toCommonJS(mcp_exports); +var import_config = require("./config"); +var import_tools = require("../backend/tools"); +var import_browserFactory = require("./browserFactory"); +var import_browserBackend = require("../backend/browserBackend"); +var import_server = require("../utils/mcp/server"); +const packageJSON = require("../../../package.json"); +async function createConnection(userConfig = {}, contextGetter) { + const config = await (0, import_config.resolveConfig)(userConfig); + const tools = (0, import_tools.filteredTools)(config); + const backendFactory = { + name: "api", + nameInConfig: "api", + version: packageJSON.version, + toolSchemas: tools.map((tool) => tool.schema), + create: async (clientInfo) => { + const browser = contextGetter ? new SimpleBrowser(await contextGetter()) : await (0, import_browserFactory.createBrowser)(config, clientInfo); + const context = config.browser.isolated ? await browser.newContext(config.browser.contextOptions) : browser.contexts()[0]; + return new import_browserBackend.BrowserBackend(config, context, tools); + }, + disposed: async () => { + } + }; + return (0, import_server.createServer)("api", packageJSON.version, backendFactory, false); +} +class SimpleBrowser { + constructor(context) { + this._context = context; + } + contexts() { + return [this._context]; + } + async newContext() { + throw new Error("Creating a new context is not supported in SimpleBrowserContextFactory."); + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + createConnection +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/mcp/log.js b/node_modules.codex-backup/playwright-core/lib/tools/mcp/log.js new file mode 100644 index 00000000..7f8e5f34 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/mcp/log.js @@ -0,0 +1,35 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var log_exports = {}; +__export(log_exports, { + logUnhandledError: () => logUnhandledError, + testDebug: () => testDebug +}); +module.exports = __toCommonJS(log_exports); +var import_utilsBundle = require("../../utilsBundle"); +const errorDebug = (0, import_utilsBundle.debug)("pw:mcp:error"); +function logUnhandledError(error) { + errorDebug(error); +} +const testDebug = (0, import_utilsBundle.debug)("pw:mcp:test"); +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + logUnhandledError, + testDebug +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/mcp/program.js b/node_modules.codex-backup/playwright-core/lib/tools/mcp/program.js new file mode 100644 index 00000000..bde6084a --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/mcp/program.js @@ -0,0 +1,107 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var program_exports = {}; +__export(program_exports, { + decorateMCPCommand: () => decorateMCPCommand +}); +module.exports = __toCommonJS(program_exports); +var import_utilsBundle = require("../../utilsBundle"); +var mcpServer = __toESM(require("../utils/mcp/server")); +var import_config = require("./config"); +var import_watchdog = require("./watchdog"); +var import_browserFactory = require("./browserFactory"); +var import_browserBackend = require("../backend/browserBackend"); +var import_tools = require("../backend/tools"); +var import_log = require("./log"); +const version = require("../../../package.json").version; +function decorateMCPCommand(command) { + command.option("--allowed-hosts <hosts...>", "comma-separated list of hosts this server is allowed to serve from. Defaults to the host the server is bound to. Pass '*' to disable the host check.", import_config.commaSeparatedList).option("--allowed-origins <origins>", "semicolon-separated list of TRUSTED origins to allow the browser to request. Default is to allow all.\nImportant: *does not* serve as a security boundary and *does not* affect redirects. ", import_config.semicolonSeparatedList).option("--allow-unrestricted-file-access", "allow access to files outside of the workspace roots. Also allows unrestricted access to file:// URLs. By default access to file system is restricted to workspace root directories (or cwd if no roots are configured) only, and navigation to file:// URLs is blocked.").option("--blocked-origins <origins>", "semicolon-separated list of origins to block the browser from requesting. Blocklist is evaluated before allowlist. If used without the allowlist, requests not matching the blocklist are still allowed.\nImportant: *does not* serve as a security boundary and *does not* affect redirects.", import_config.semicolonSeparatedList).option("--block-service-workers", "block service workers").option("--browser <browser>", "browser or chrome channel to use, possible values: chrome, firefox, webkit, msedge.").option("--caps <caps>", "comma-separated list of additional capabilities to enable, possible values: vision, pdf, devtools.", import_config.commaSeparatedList).option("--cdp-endpoint <endpoint>", "CDP endpoint to connect to.").option("--cdp-header <headers...>", "CDP headers to send with the connect request, multiple can be specified.", import_config.headerParser).option("--cdp-timeout <timeout>", "timeout in milliseconds for connecting to CDP endpoint, defaults to 30000ms", import_config.numberParser).option("--codegen <lang>", 'specify the language to use for code generation, possible values: "typescript", "none". Default is "typescript".', import_config.enumParser.bind(null, "--codegen", ["none", "typescript"])).option("--config <path>", "path to the configuration file.").option("--console-level <level>", 'level of console messages to return: "error", "warning", "info", "debug". Each level includes the messages of more severe levels.', import_config.enumParser.bind(null, "--console-level", ["error", "warning", "info", "debug"])).option("--device <device>", 'device to emulate, for example: "iPhone 15"').option("--executable-path <path>", "path to the browser executable.").option("--extension", 'Connect to a running browser instance (Edge/Chrome only). Requires the "Playwright MCP Bridge" browser extension to be installed.').option("--endpoint <endpoint>", "Bound browser endpoint to connect to.").option("--grant-permissions <permissions...>", 'List of permissions to grant to the browser context, for example "geolocation", "clipboard-read", "clipboard-write".', import_config.commaSeparatedList).option("--headless", "run browser in headless mode, headed by default").option("--host <host>", "host to bind server to. Default is localhost. Use 0.0.0.0 to bind to all interfaces.").option("--ignore-https-errors", "ignore https errors").option("--init-page <path...>", "path to TypeScript file to evaluate on Playwright page object").option("--init-script <path...>", "path to JavaScript file to add as an initialization script. The script will be evaluated in every page before any of the page's scripts. Can be specified multiple times.").option("--isolated", "keep the browser profile in memory, do not save it to disk.").option("--image-responses <mode>", 'whether to send image responses to the client. Can be "allow" or "omit", Defaults to "allow".', import_config.enumParser.bind(null, "--image-responses", ["allow", "omit"])).option("--no-sandbox", "disable the sandbox for all process types that are normally sandboxed.").option("--output-dir <path>", "path to the directory for output files.").option("--output-mode <mode>", 'whether to save snapshots, console messages, network logs to a file or to the standard output. Can be "file" or "stdout". Default is "stdout".', import_config.enumParser.bind(null, "--output-mode", ["file", "stdout"])).option("--port <port>", "port to listen on for SSE transport.").option("--proxy-bypass <bypass>", 'comma-separated domains to bypass proxy, for example ".com,chromium.org,.domain.com"').option("--proxy-server <proxy>", 'specify proxy server, for example "http://myproxy:3128" or "socks5://myproxy:8080"').option("--sandbox", "enable the sandbox for all process types that are normally not sandboxed.").option("--save-session", "Whether to save the Playwright MCP session into the output directory.").option("--secrets <path>", "path to a file containing secrets in the dotenv format", import_config.dotenvFileLoader).option("--shared-browser-context", "reuse the same browser context between all connected HTTP clients.").option("--snapshot-mode <mode>", 'when taking snapshots for responses, specifies the mode to use. Can be "full" or "none". Default is "full".').option("--storage-state <path>", "path to the storage state file for isolated sessions.").option("--test-id-attribute <attribute>", 'specify the attribute to use for test ids, defaults to "data-testid"').option("--timeout-action <timeout>", "specify action timeout in milliseconds, defaults to 5000ms", import_config.numberParser).option("--timeout-navigation <timeout>", "specify navigation timeout in milliseconds, defaults to 60000ms", import_config.numberParser).option("--user-agent <ua string>", "specify user agent string").option("--user-data-dir <path>", "path to the user data directory. If not specified, a temporary directory will be created.").option("--viewport-size <size>", 'specify browser viewport size in pixels, for example "1280x720"', import_config.resolutionParser.bind(null, "--viewport-size")).addOption(new import_utilsBundle.ProgramOption("--vision", "Legacy option, use --caps=vision instead").hideHelp()).action(async (options) => { + options.sandbox = options.sandbox === true ? void 0 : false; + (0, import_watchdog.setupExitWatchdog)(); + if (options.vision) { + console.error("The --vision option is deprecated, use --caps=vision instead"); + options.caps = "vision"; + } + if (options.caps?.includes("tracing")) + options.caps.push("devtools"); + const config = await (0, import_config.resolveCLIConfigForMCP)(options); + const tools = (0, import_tools.filteredTools)(config); + if (config.extension) { + const serverBackendFactory = { + name: "Playwright w/ extension", + nameInConfig: "playwright-extension", + version, + toolSchemas: tools.map((tool) => tool.schema), + create: async (clientInfo) => { + const browser = await (0, import_browserFactory.createBrowser)(config, clientInfo); + const browserContext = browser.contexts()[0]; + return new import_browserBackend.BrowserBackend(config, browserContext, tools); + }, + disposed: async () => { + } + }; + await mcpServer.start(serverBackendFactory, config.server); + return; + } + const useSharedBrowser = config.sharedBrowserContext || config.browser.isolated; + let sharedBrowser; + let clientCount = 0; + const factory = { + name: "Playwright", + nameInConfig: "playwright", + version, + toolSchemas: tools.map((tool) => tool.schema), + create: async (clientInfo) => { + if (useSharedBrowser && clientCount === 0) + sharedBrowser = await (0, import_browserFactory.createBrowser)(config, clientInfo); + clientCount++; + const browser = sharedBrowser || await (0, import_browserFactory.createBrowser)(config, clientInfo); + const browserContext = config.browser.isolated ? await browser.newContext(config.browser.contextOptions) : browser.contexts()[0]; + return new import_browserBackend.BrowserBackend(config, browserContext, tools); + }, + disposed: async (backend) => { + clientCount--; + if (sharedBrowser && clientCount > 0) + return; + (0, import_log.testDebug)("close browser"); + sharedBrowser = void 0; + const browserContext = backend.browserContext; + await browserContext.close().catch(() => { + }); + await browserContext.browser().close().catch(() => { + }); + } + }; + await mcpServer.start(factory, config.server); + }); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + decorateMCPCommand +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/mcp/protocol.js b/node_modules.codex-backup/playwright-core/lib/tools/mcp/protocol.js new file mode 100644 index 00000000..1f057168 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/mcp/protocol.js @@ -0,0 +1,28 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var protocol_exports = {}; +__export(protocol_exports, { + VERSION: () => VERSION +}); +module.exports = __toCommonJS(protocol_exports); +const VERSION = 1; +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + VERSION +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/mcp/watchdog.js b/node_modules.codex-backup/playwright-core/lib/tools/mcp/watchdog.js new file mode 100644 index 00000000..990e096e --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/mcp/watchdog.js @@ -0,0 +1,44 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var watchdog_exports = {}; +__export(watchdog_exports, { + setupExitWatchdog: () => setupExitWatchdog +}); +module.exports = __toCommonJS(watchdog_exports); +var import_utils = require("../../utils"); +var import_log = require("./log"); +function setupExitWatchdog() { + let isExiting = false; + const handleExit = async (signal) => { + if (isExiting) + return; + isExiting = true; + setTimeout(() => process.exit(0), 15e3); + (0, import_log.testDebug)("gracefully closing " + import_utils.gracefullyCloseSet.size); + await (0, import_utils.gracefullyCloseAll)(); + process.exit(0); + }; + process.stdin.on("close", () => handleExit("close")); + process.on("SIGINT", () => handleExit("SIGINT")); + process.on("SIGTERM", () => handleExit("SIGTERM")); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + setupExitWatchdog +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/trace/SKILL.md b/node_modules.codex-backup/playwright-core/lib/tools/trace/SKILL.md new file mode 100644 index 00000000..cc2e80a3 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/trace/SKILL.md @@ -0,0 +1,171 @@ +--- +name: playwright-trace +description: Inspect Playwright trace files from the command line — list actions, view requests, console, errors, snapshots and screenshots. +allowed-tools: Bash(npx:*) +--- + +# Playwright Trace CLI + +Inspect `.zip` trace files produced by Playwright tests without opening a browser. + +## Workflow + +1. Start with `trace open <trace.zip>` to extract the trace and see its metadata. +2. Use `trace actions` to see all actions with their action IDs. +3. Use `trace action <action-id>` to drill into a specific action — see parameters, logs, source location, and available snapshots. +4. Use `trace requests`, `trace console`, or `trace errors` for cross-cutting views. +5. Use `trace snapshot <action-id>` to get the DOM snapshot, or run a browser command against it. +6. Use `trace close` to remove the extracted trace data when done. + +All commands after `open` operate on the currently opened trace — no need to pass the trace file again. Opening a new trace replaces the previous one. + +## Commands + +### Open a trace + +```bash +# Extract trace and show metadata: browser, viewport, duration, action/error counts +npx playwright trace open <trace.zip> +``` + +### Close a trace + +```bash +# Remove extracted trace data +npx playwright trace close +``` + +### Actions + +```bash +# List all actions as a tree with action IDs and timing +npx playwright trace actions + +# Filter by action title (regex, case-insensitive) +npx playwright trace actions --grep "click" + +# Only failed actions +npx playwright trace actions --errors-only +``` + +### Action details + +```bash +# Show full details for one action: params, result, logs, source, snapshots +npx playwright trace action <action-id> +``` + +The `action` command displays available snapshot phases (before, input, after) and the exact command to extract them. + +### Requests + +```bash +# All network requests: method, status, URL, duration, size +npx playwright trace requests + +# Filter by URL pattern +npx playwright trace requests --grep "api" + +# Filter by HTTP method +npx playwright trace requests --method POST + +# Only failed requests (status >= 400) +npx playwright trace requests --failed +``` + +### Request details + +```bash +# Show full details for one request: headers, body, security +npx playwright trace request <request-id> +``` + +### Console + +```bash +# All console messages and stdout/stderr +npx playwright trace console + +# Only errors +npx playwright trace console --errors-only + +# Only browser console (no stdout/stderr) +npx playwright trace console --browser + +# Only stdout/stderr (no browser console) +npx playwright trace console --stdio +``` + +### Errors + +```bash +# All errors with stack traces and associated actions +npx playwright trace errors +``` + +### Snapshots + +The `snapshot` command loads the DOM snapshot for an action into a headless browser and runs a single browser command against it. Without a browser command, it returns the accessibility snapshot. + +```bash +# Get the accessibility snapshot (default) +npx playwright trace snapshot <action-id> + +# Use a specific phase +npx playwright trace snapshot <action-id> --name before + +# Run eval to query the DOM +npx playwright trace snapshot <action-id> -- eval "document.title" +npx playwright trace snapshot <action-id> -- eval "document.querySelector('#error').textContent" + +# Eval on a specific element ref (from the snapshot) +npx playwright trace snapshot <action-id> -- eval "el => el.getAttribute('data-testid')" e5 + +# Take a screenshot of the snapshot +npx playwright trace snapshot <action-id> -- screenshot + +# Redirect output to a file +npx playwright trace snapshot <action-id> -- eval "document.body.outerHTML" --filename=page.html +npx playwright trace snapshot <action-id> -- screenshot --filename=screenshot.png +``` + +Only three browser commands are useful on a frozen snapshot: `snapshot`, `eval`, and `screenshot`. + +### Attachments + +```bash +# List all trace attachments +npx playwright trace attachments + +# Extract an attachment by its number +npx playwright trace attachment 1 +npx playwright trace attachment 1 -o out.png +``` + +## Typical investigation + +```bash +# 1. Open the trace and see what's inside +npx playwright trace open test-results/my-test/trace.zip + +# 2. What actions ran? +npx playwright trace actions + +# 3. Which action failed? +npx playwright trace actions --errors-only + +# 4. What went wrong? +npx playwright trace action 12 + +# 5. What did the page look like at that moment? +npx playwright trace snapshot 12 + +# 6. Query the DOM for more detail +npx playwright trace snapshot 12 -- eval "document.querySelector('.error-message').textContent" + +# 7. Any relevant network failures? +npx playwright trace requests --failed + +# 8. Any console errors? +npx playwright trace console --errors-only +``` diff --git a/node_modules.codex-backup/playwright-core/lib/tools/trace/installSkill.js b/node_modules.codex-backup/playwright-core/lib/tools/trace/installSkill.js new file mode 100644 index 00000000..e4f412f6 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/trace/installSkill.js @@ -0,0 +1,48 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var installSkill_exports = {}; +__export(installSkill_exports, { + installSkill: () => installSkill +}); +module.exports = __toCommonJS(installSkill_exports); +var import_fs = __toESM(require("fs")); +var import_path = __toESM(require("path")); +async function installSkill() { + const cwd = process.cwd(); + const skillSource = import_path.default.join(__dirname, "SKILL.md"); + const destDir = import_path.default.join(cwd, ".claude", "skills", "playwright-trace"); + await import_fs.default.promises.mkdir(destDir, { recursive: true }); + const destFile = import_path.default.join(destDir, "SKILL.md"); + await import_fs.default.promises.copyFile(skillSource, destFile); + console.log(`\u2705 Skill installed to \`${import_path.default.relative(cwd, destFile)}\`.`); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + installSkill +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/trace/traceActions.js b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceActions.js new file mode 100644 index 00000000..a68e2349 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceActions.js @@ -0,0 +1,142 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var traceActions_exports = {}; +__export(traceActions_exports, { + traceAction: () => traceAction, + traceActions: () => traceActions +}); +module.exports = __toCommonJS(traceActions_exports); +var import_traceModel = require("../../utils/isomorphic/trace/traceModel"); +var import_locatorGenerators = require("../../utils/isomorphic/locatorGenerators"); +var import_traceUtils = require("./traceUtils"); +var import_formatUtils = require("../../utils/isomorphic/formatUtils"); +async function traceActions(options) { + const trace = await (0, import_traceUtils.loadTrace)(); + const actions = filterActions(trace.model.actions, options); + const { rootItem } = (0, import_traceModel.buildActionTree)(actions); + console.log(` ${"#".padStart(4)} ${"Time".padEnd(9)} ${"Action".padEnd(55)} ${"Duration".padStart(8)}`); + console.log(` ${"\u2500".repeat(4)} ${"\u2500".repeat(9)} ${"\u2500".repeat(55)} ${"\u2500".repeat(8)}`); + const visit = (item, indent) => { + const action = item.action; + const ordinal = trace.callIdToOrdinal.get(action.callId) ?? "?"; + const ts = (0, import_traceUtils.formatTimestamp)(action.startTime, trace.model.startTime); + const duration = action.endTime ? (0, import_formatUtils.msToString)(action.endTime - action.startTime) : "running"; + const title = (0, import_traceUtils.actionTitle)(action); + const locator = actionLocator(action); + const error = action.error ? " \u2717" : ""; + const prefix = ` ${(ordinal + ".").padStart(4)} ${ts} ${indent}`; + console.log(`${prefix}${title.padEnd(Math.max(1, 55 - indent.length))} ${duration.padStart(8)}${error}`); + if (locator) + console.log(`${" ".repeat(prefix.length)}${locator}`); + for (const child of item.children) + visit(child, indent + " "); + }; + for (const child of rootItem.children) + visit(child, ""); +} +function filterActions(actions, options) { + let result = actions.filter((a) => a.group !== "configuration"); + if (options.grep) { + const pattern = new RegExp(options.grep, "i"); + result = result.filter((a) => pattern.test((0, import_traceUtils.actionTitle)(a)) || pattern.test(actionLocator(a) || "")); + } + if (options.errorsOnly) + result = result.filter((a) => !!a.error); + return result; +} +function actionLocator(action, sdkLanguage) { + return action.params.selector ? (0, import_locatorGenerators.asLocatorDescription)(sdkLanguage || "javascript", action.params.selector) : void 0; +} +async function traceAction(actionId) { + const trace = await (0, import_traceUtils.loadTrace)(); + const action = trace.resolveActionId(actionId); + if (!action) { + console.error(`Action '${actionId}' not found. Use 'trace actions' to see available action IDs.`); + process.exitCode = 1; + return; + } + const title = (0, import_traceUtils.actionTitle)(action); + console.log(` + ${title} +`); + console.log(" Time"); + console.log(` start: ${(0, import_traceUtils.formatTimestamp)(action.startTime, trace.model.startTime)}`); + const duration = action.endTime ? (0, import_formatUtils.msToString)(action.endTime - action.startTime) : action.error ? "Timed Out" : "Running"; + console.log(` duration: ${duration}`); + const paramKeys = Object.keys(action.params).filter((name) => name !== "info"); + if (paramKeys.length) { + console.log("\n Parameters"); + for (const key of paramKeys) { + const value = formatParamValue(action.params[key]); + console.log(` ${key}: ${value}`); + } + } + if (action.result) { + console.log("\n Return value"); + for (const [key, value] of Object.entries(action.result)) + console.log(` ${key}: ${formatParamValue(value)}`); + } + if (action.error) { + console.log("\n Error"); + console.log(` ${action.error.message}`); + } + if (action.log.length) { + console.log("\n Log"); + for (const entry of action.log) { + const time = entry.time !== -1 ? (0, import_traceUtils.formatTimestamp)(entry.time, trace.model.startTime) : ""; + console.log(` ${time.padEnd(12)} ${entry.message}`); + } + } + if (action.stack?.length) { + console.log("\n Source"); + for (const frame of action.stack.slice(0, 5)) { + const file = frame.file.replace(/.*[/\\](.*)/, "$1"); + console.log(` ${file}:${frame.line}:${frame.column}`); + } + } + const snapshots = []; + if (action.beforeSnapshot) + snapshots.push("before"); + if (action.inputSnapshot) + snapshots.push("input"); + if (action.afterSnapshot) + snapshots.push("after"); + if (snapshots.length) { + console.log("\n Snapshots"); + console.log(` available: ${snapshots.join(", ")}`); + console.log(` usage: npx playwright trace snapshot ${actionId} --name <${snapshots.join("|")}>`); + } + console.log(""); +} +function formatParamValue(value) { + if (value === void 0 || value === null) + return String(value); + if (typeof value === "string") + return `"${value}"`; + if (typeof value !== "object") + return String(value); + if (value.guid) + return "<handle>"; + return JSON.stringify(value).slice(0, 1e3); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + traceAction, + traceActions +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/trace/traceAttachments.js b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceAttachments.js new file mode 100644 index 00000000..361e14a0 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceAttachments.js @@ -0,0 +1,69 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var traceAttachments_exports = {}; +__export(traceAttachments_exports, { + traceAttachment: () => traceAttachment, + traceAttachments: () => traceAttachments +}); +module.exports = __toCommonJS(traceAttachments_exports); +var import_traceUtils = require("./traceUtils"); +async function traceAttachments() { + const trace = await (0, import_traceUtils.loadTrace)(); + if (!trace.model.attachments.length) { + console.log(" No attachments"); + return; + } + console.log(` ${"#".padStart(4)} ${"Name".padEnd(40)} ${"Content-Type".padEnd(30)} ${"Action".padEnd(8)}`); + console.log(` ${"\u2500".repeat(4)} ${"\u2500".repeat(40)} ${"\u2500".repeat(30)} ${"\u2500".repeat(8)}`); + for (let i = 0; i < trace.model.attachments.length; i++) { + const a = trace.model.attachments[i]; + const actionOrdinal = trace.callIdToOrdinal.get(a.callId); + console.log(` ${(i + 1 + ".").padStart(4)} ${a.name.padEnd(40)} ${a.contentType.padEnd(30)} ${(actionOrdinal !== void 0 ? String(actionOrdinal) : a.callId).padEnd(8)}`); + } +} +async function traceAttachment(attachmentId, options) { + const trace = await (0, import_traceUtils.loadTrace)(); + const ordinal = parseInt(attachmentId, 10); + const attachment = !isNaN(ordinal) && ordinal >= 1 && ordinal <= trace.model.attachments.length ? trace.model.attachments[ordinal - 1] : void 0; + if (!attachment) { + console.error(`Attachment '${attachmentId}' not found. Use 'trace attachments' to see available attachments.`); + process.exitCode = 1; + return; + } + let content; + if (attachment.sha1) { + const blob = await trace.loader.resourceForSha1(attachment.sha1); + if (blob) + content = Buffer.from(await blob.arrayBuffer()); + } else if (attachment.base64) { + content = Buffer.from(attachment.base64, "base64"); + } + if (!content) { + console.error(`Could not extract attachment content.`); + process.exitCode = 1; + return; + } + const outFile = await (0, import_traceUtils.saveOutputFile)(attachment.name, content, options.output); + console.log(` Attachment saved to ${outFile}`); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + traceAttachment, + traceAttachments +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/trace/traceCli.js b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceCli.js new file mode 100644 index 00000000..a50ff326 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceCli.js @@ -0,0 +1,87 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var traceCli_exports = {}; +__export(traceCli_exports, { + addTraceCommands: () => addTraceCommands +}); +module.exports = __toCommonJS(traceCli_exports); +function addTraceCommands(program, logErrorAndExit) { + const traceCommand = program.command("trace").description("inspect trace files from the command line"); + traceCommand.command("open <trace>").description("extract trace file for inspection").action(async (trace) => { + const { traceOpen } = require("./traceOpen"); + traceOpen(trace).catch(logErrorAndExit); + }); + traceCommand.command("close").description("remove extracted trace data").action(async () => { + const { closeTrace } = require("./traceUtils"); + closeTrace().catch(logErrorAndExit); + }); + traceCommand.command("actions").description("list actions in the trace").option("--grep <pattern>", "filter actions by title pattern").option("--errors-only", "only show failed actions").action(async (options) => { + const { traceActions } = require("./traceActions"); + traceActions(options).catch(logErrorAndExit); + }); + traceCommand.command("action <action-id>").description("show details of a specific action").action(async (actionId) => { + const { traceAction } = require("./traceActions"); + traceAction(actionId).catch(logErrorAndExit); + }); + traceCommand.command("requests").description("show network requests").option("--grep <pattern>", "filter by URL pattern").option("--method <method>", "filter by HTTP method").option("--status <code>", "filter by status code").option("--failed", "only show failed requests (status >= 400)").action(async (options) => { + const { traceRequests } = require("./traceRequests"); + traceRequests(options).catch(logErrorAndExit); + }); + traceCommand.command("request <request-id>").description("show details of a specific network request").action(async (requestId) => { + const { traceRequest } = require("./traceRequests"); + traceRequest(requestId).catch(logErrorAndExit); + }); + traceCommand.command("console").description("show console messages").option("--errors-only", "only show errors").option("--warnings", "show errors and warnings").option("--browser", "only browser console messages").option("--stdio", "only stdout/stderr").action(async (options) => { + const { traceConsole } = require("./traceConsole"); + traceConsole(options).catch(logErrorAndExit); + }); + traceCommand.command("errors").description("show errors with stack traces").action(async () => { + const { traceErrors } = require("./traceErrors"); + traceErrors().catch(logErrorAndExit); + }); + traceCommand.command("snapshot <action-id>").description("run a playwright-cli command against a DOM snapshot").option("--name <name>", "snapshot phase: before, input, or after").option("--serve", "serve snapshot on localhost and keep running").allowUnknownOption(true).allowExcessArguments(true).action(async (actionId, options, cmd) => { + try { + const { traceSnapshot } = require("./traceSnapshot"); + const browserArgs = cmd.args.slice(1); + await traceSnapshot(actionId, { ...options, browserArgs }); + } catch (e) { + logErrorAndExit(e); + } + }); + traceCommand.command("screenshot <action-id>").description("save screencast screenshot for an action").option("-o, --output <path>", "output file path").action(async (actionId, options) => { + const { traceScreenshot } = require("./traceScreenshot"); + traceScreenshot(actionId, options).catch(logErrorAndExit); + }); + traceCommand.command("attachments").description("list trace attachments").action(async () => { + const { traceAttachments } = require("./traceAttachments"); + traceAttachments().catch(logErrorAndExit); + }); + traceCommand.command("attachment <attachment-id>").description("extract a trace attachment by its number").option("-o, --output <path>", "output file path").action(async (attachmentId, options) => { + const { traceAttachment } = require("./traceAttachments"); + traceAttachment(attachmentId, options).catch(logErrorAndExit); + }); + traceCommand.command("install-skill").description("install SKILL.md for LLM integration").action(async () => { + const { installSkill } = require("./installSkill"); + installSkill().catch(logErrorAndExit); + }); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + addTraceCommands +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/trace/traceConsole.js b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceConsole.js new file mode 100644 index 00000000..7808ba66 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceConsole.js @@ -0,0 +1,97 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var traceConsole_exports = {}; +__export(traceConsole_exports, { + traceConsole: () => traceConsole +}); +module.exports = __toCommonJS(traceConsole_exports); +var import_traceUtils = require("./traceUtils"); +async function traceConsole(options) { + const trace = await (0, import_traceUtils.loadTrace)(); + const model = trace.model; + const items = []; + for (const event of model.events) { + if (event.type === "console") { + if (options.stdio) + continue; + const level = event.messageType; + if (options.errorsOnly && level !== "error") + continue; + if (options.warnings && level !== "error" && level !== "warning") + continue; + const url = event.location.url; + const filename = url ? url.substring(url.lastIndexOf("/") + 1) : "<anonymous>"; + items.push({ + type: "browser", + level, + text: event.text, + location: `${filename}:${event.location.lineNumber}`, + timestamp: event.time + }); + } + if (event.type === "event" && event.method === "pageError") { + if (options.stdio) + continue; + const error = event.params.error; + items.push({ + type: "browser", + level: "error", + text: error?.error?.message || String(error?.value || ""), + timestamp: event.time + }); + } + } + for (const event of model.stdio) { + if (options.browser) + continue; + if (options.errorsOnly && event.type !== "stderr") + continue; + if (options.warnings && event.type !== "stderr") + continue; + let text = ""; + if (event.text) + text = event.text.trim(); + if (event.base64) + text = Buffer.from(event.base64, "base64").toString("utf-8").trim(); + if (!text) + continue; + items.push({ + type: event.type, + level: event.type === "stderr" ? "error" : "info", + text, + timestamp: event.timestamp + }); + } + items.sort((a, b) => a.timestamp - b.timestamp); + if (!items.length) { + console.log(" No console entries"); + return; + } + for (const item of items) { + const ts = (0, import_traceUtils.formatTimestamp)(item.timestamp, model.startTime); + const source = item.type === "browser" ? "[browser]" : `[${item.type}]`; + const level = item.level.padEnd(8); + const location = item.location ? ` ${item.location}` : ""; + console.log(` ${ts} ${source.padEnd(10)} ${level} ${item.text}${location}`); + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + traceConsole +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/trace/traceErrors.js b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceErrors.js new file mode 100644 index 00000000..f2ad0aac --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceErrors.js @@ -0,0 +1,55 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var traceErrors_exports = {}; +__export(traceErrors_exports, { + traceErrors: () => traceErrors +}); +module.exports = __toCommonJS(traceErrors_exports); +var import_traceUtils = require("./traceUtils"); +async function traceErrors() { + const trace = await (0, import_traceUtils.loadTrace)(); + const model = trace.model; + if (!model.errorDescriptors.length) { + console.log(" No errors"); + return; + } + for (const error of model.errorDescriptors) { + if (error.action) { + const title = (0, import_traceUtils.actionTitle)(error.action); + console.log(` + \u2717 ${title}`); + } else { + console.log(` + \u2717 Error`); + } + if (error.stack?.length) { + const frame = error.stack[0]; + const file = frame.file.replace(/.*[/\\](.*)/, "$1"); + console.log(` at ${file}:${frame.line}:${frame.column}`); + } + console.log(""); + const indented = error.message.split("\n").map((l) => ` ${l}`).join("\n"); + console.log(indented); + } + console.log(""); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + traceErrors +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/trace/traceOpen.js b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceOpen.js new file mode 100644 index 00000000..9a7d6ce3 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceOpen.js @@ -0,0 +1,69 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var traceOpen_exports = {}; +__export(traceOpen_exports, { + traceOpen: () => traceOpen +}); +module.exports = __toCommonJS(traceOpen_exports); +var import_traceUtils = require("./traceUtils"); +var import_formatUtils = require("../../utils/isomorphic/formatUtils"); +async function traceOpen(traceFile) { + await (0, import_traceUtils.openTrace)(traceFile); + await traceInfo(); +} +async function traceInfo() { + const trace = await (0, import_traceUtils.loadTrace)(); + const model = trace.model; + const info = { + browser: model.browserName || "unknown", + platform: model.platform || "unknown", + playwrightVersion: model.playwrightVersion || "unknown", + title: model.title || "", + duration: (0, import_formatUtils.msToString)(model.endTime - model.startTime), + durationMs: model.endTime - model.startTime, + startTime: model.wallTime ? new Date(model.wallTime).toISOString() : "unknown", + viewport: model.options.viewport ? `${model.options.viewport.width}x${model.options.viewport.height}` : "default", + actions: model.actions.length, + pages: model.pages.length, + network: model.resources.length, + errors: model.errorDescriptors.length, + attachments: model.attachments.length, + consoleMessages: model.events.filter((e) => e.type === "console").length + }; + console.log(""); + console.log(` Browser: ${info.browser}`); + console.log(` Platform: ${info.platform}`); + console.log(` Playwright: ${info.playwrightVersion}`); + if (info.title) + console.log(` Title: ${info.title}`); + console.log(` Duration: ${info.duration}`); + console.log(` Start time: ${info.startTime}`); + console.log(` Viewport: ${info.viewport}`); + console.log(` Actions: ${info.actions}`); + console.log(` Pages: ${info.pages}`); + console.log(` Network: ${info.network} requests`); + console.log(` Errors: ${info.errors}`); + console.log(` Attachments: ${info.attachments}`); + console.log(` Console: ${info.consoleMessages} messages`); + console.log(""); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + traceOpen +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/trace/traceParser.js b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceParser.js new file mode 100644 index 00000000..45046065 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceParser.js @@ -0,0 +1,96 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var traceParser_exports = {}; +__export(traceParser_exports, { + DirTraceLoaderBackend: () => DirTraceLoaderBackend, + extractTrace: () => extractTrace +}); +module.exports = __toCommonJS(traceParser_exports); +var import_fs = __toESM(require("fs")); +var import_path = __toESM(require("path")); +var import_zipFile = require("../../server/utils/zipFile"); +class DirTraceLoaderBackend { + constructor(dir) { + this._dir = dir; + } + isLive() { + return false; + } + async entryNames() { + const entries = []; + const walk = async (dir, prefix) => { + const items = await import_fs.default.promises.readdir(dir, { withFileTypes: true }); + for (const item of items) { + if (item.isDirectory()) + await walk(import_path.default.join(dir, item.name), prefix ? `${prefix}/${item.name}` : item.name); + else + entries.push(prefix ? `${prefix}/${item.name}` : item.name); + } + }; + await walk(this._dir, ""); + return entries; + } + async hasEntry(entryName) { + try { + await import_fs.default.promises.access(import_path.default.join(this._dir, entryName)); + return true; + } catch { + return false; + } + } + async readText(entryName) { + try { + return await import_fs.default.promises.readFile(import_path.default.join(this._dir, entryName), "utf-8"); + } catch { + } + } + async readBlob(entryName) { + try { + const buffer = await import_fs.default.promises.readFile(import_path.default.join(this._dir, entryName)); + return new Blob([new Uint8Array(buffer)]); + } catch { + } + } +} +async function extractTrace(traceFile, outDir) { + const zipFile = new import_zipFile.ZipFile(traceFile); + const entries = await zipFile.entries(); + for (const entry of entries) { + const outPath = import_path.default.join(outDir, entry); + await import_fs.default.promises.mkdir(import_path.default.dirname(outPath), { recursive: true }); + const buffer = await zipFile.read(entry); + await import_fs.default.promises.writeFile(outPath, buffer); + } + zipFile.close(); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + DirTraceLoaderBackend, + extractTrace +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/trace/traceRequests.js b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceRequests.js new file mode 100644 index 00000000..1f9438a0 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceRequests.js @@ -0,0 +1,182 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var traceRequests_exports = {}; +__export(traceRequests_exports, { + traceRequest: () => traceRequest, + traceRequests: () => traceRequests +}); +module.exports = __toCommonJS(traceRequests_exports); +var import_path = __toESM(require("path")); +var import_traceUtils = require("./traceUtils"); +var import_formatUtils = require("../../utils/isomorphic/formatUtils"); +async function traceRequests(options) { + const trace = await (0, import_traceUtils.loadTrace)(); + const model = trace.model; + let indexed = model.resources.map((r, i) => ({ resource: r, ordinal: i + 1 })); + if (options.grep) { + const pattern = new RegExp(options.grep, "i"); + indexed = indexed.filter(({ resource: r }) => pattern.test(r.request.url)); + } + if (options.method) + indexed = indexed.filter(({ resource: r }) => r.request.method.toLowerCase() === options.method.toLowerCase()); + if (options.status) { + const code = parseInt(options.status, 10); + indexed = indexed.filter(({ resource: r }) => r.response.status === code); + } + if (options.failed) + indexed = indexed.filter(({ resource: r }) => r.response.status >= 400 || r.response.status === -1); + if (!indexed.length) { + console.log(" No network requests"); + return; + } + console.log(` ${"#".padStart(4)} ${"Method".padEnd(8)} ${"Status".padEnd(8)} ${"Name".padEnd(45)} ${"Duration".padStart(10)} ${"Size".padStart(8)} ${"Route".padEnd(10)}`); + console.log(` ${"\u2500".repeat(4)} ${"\u2500".repeat(8)} ${"\u2500".repeat(8)} ${"\u2500".repeat(45)} ${"\u2500".repeat(10)} ${"\u2500".repeat(8)} ${"\u2500".repeat(10)}`); + for (const { resource: r, ordinal } of indexed) { + let name; + try { + const url = new URL(r.request.url); + name = url.pathname.substring(url.pathname.lastIndexOf("/") + 1); + if (!name) + name = url.host; + if (url.search) + name += url.search; + } catch { + name = r.request.url; + } + if (name.length > 45) + name = name.substring(0, 42) + "..."; + const status = r.response.status > 0 ? String(r.response.status) : "ERR"; + const size = r.response._transferSize > 0 ? r.response._transferSize : r.response.bodySize; + const route = formatRouteStatus(r); + console.log(` ${(ordinal + ".").padStart(4)} ${r.request.method.padEnd(8)} ${status.padEnd(8)} ${name.padEnd(45)} ${(0, import_formatUtils.msToString)(r.time).padStart(10)} ${bytesToString(size).padStart(8)} ${route.padEnd(10)}`); + } +} +async function traceRequest(requestId) { + const trace = await (0, import_traceUtils.loadTrace)(); + const model = trace.model; + const ordinal = parseInt(requestId, 10); + const resource = !isNaN(ordinal) && ordinal >= 1 && ordinal <= model.resources.length ? model.resources[ordinal - 1] : void 0; + if (!resource) { + console.error(`Request '${requestId}' not found. Use 'trace requests' to see available request IDs.`); + process.exitCode = 1; + return; + } + const r = resource; + const status = r.response.status > 0 ? `${r.response.status} ${r.response.statusText}` : "ERR"; + const size = r.response._transferSize > 0 ? r.response._transferSize : r.response.bodySize; + console.log(` + ${r.request.method} ${r.request.url} +`); + console.log(" General"); + console.log(` status: ${status}`); + console.log(` duration: ${(0, import_formatUtils.msToString)(r.time)}`); + console.log(` size: ${bytesToString(size)}`); + if (r.response.content.mimeType) + console.log(` type: ${r.response.content.mimeType}`); + const route = formatRouteStatus(r); + if (route) + console.log(` route: ${route}`); + if (r.serverIPAddress) + console.log(` server: ${r.serverIPAddress}${r._serverPort ? ":" + r._serverPort : ""}`); + if (r.response._failureText) + console.log(` error: ${r.response._failureText}`); + if (r.request.headers.length) { + console.log("\n Request headers"); + for (const h of r.request.headers) + console.log(` ${h.name}: ${h.value}`); + } + if (r.request.postData) { + console.log("\n Request body"); + const resource2 = r.request.postData._sha1 ?? r.request.postData._file; + if (resource2) { + console.log(` ${import_path.default.relative(process.cwd(), import_path.default.join(trace.model.traceUri, "resources", resource2))}`); + } else { + const text = r.request.postData.text.length > 2e3 ? r.request.postData.text.substring(0, 2e3) + "..." : r.request.postData.text; + console.log(` ${text}`); + } + } + if (r.response.headers.length) { + console.log("\n Response headers"); + for (const h of r.response.headers) + console.log(` ${h.name}: ${h.value}`); + } + if (r.response.bodySize > 0) { + const resource2 = r.response.content._sha1 ?? r.response.content._file; + if (resource2) { + console.log("\n Response body"); + console.log(` ${import_path.default.relative(process.cwd(), import_path.default.join(trace.model.traceUri, "resources", resource2))}`); + } else if (r.response.content.text) { + const text = r.response.content.text.length > 2e3 ? r.response.content.text.substring(0, 2e3) + "..." : r.response.content.text; + console.log("\n Response body"); + console.log(` ${text}`); + } + } + if (r._securityDetails) { + console.log("\n Security"); + if (r._securityDetails.protocol) + console.log(` protocol: ${r._securityDetails.protocol}`); + if (r._securityDetails.subjectName) + console.log(` subject: ${r._securityDetails.subjectName}`); + if (r._securityDetails.issuer) + console.log(` issuer: ${r._securityDetails.issuer}`); + } + console.log(""); +} +function bytesToString(bytes) { + if (bytes < 0 || !isFinite(bytes)) + return "-"; + if (bytes === 0) + return "0"; + if (bytes < 1e3) + return bytes.toFixed(0); + const kb = bytes / 1024; + if (kb < 1e3) + return kb.toFixed(1) + "K"; + const mb = kb / 1024; + if (mb < 1e3) + return mb.toFixed(1) + "M"; + const gb = mb / 1024; + return gb.toFixed(1) + "G"; +} +function formatRouteStatus(r) { + if (r._wasAborted) + return "aborted"; + if (r._wasContinued) + return "continued"; + if (r._wasFulfilled) + return "fulfilled"; + if (r._apiRequest) + return "api"; + return ""; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + traceRequest, + traceRequests +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/trace/traceScreenshot.js b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceScreenshot.js new file mode 100644 index 00000000..36563112 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceScreenshot.js @@ -0,0 +1,68 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var traceScreenshot_exports = {}; +__export(traceScreenshot_exports, { + traceScreenshot: () => traceScreenshot +}); +module.exports = __toCommonJS(traceScreenshot_exports); +var import_traceUtils = require("./traceUtils"); +async function traceScreenshot(actionId, options) { + const trace = await (0, import_traceUtils.loadTrace)(); + const action = trace.resolveActionId(actionId); + if (!action) { + console.error(`Action '${actionId}' not found.`); + process.exitCode = 1; + return; + } + const pageId = action.pageId; + if (!pageId) { + console.error(`Action '${actionId}' has no associated page.`); + process.exitCode = 1; + return; + } + const callId = action.callId; + const storage = trace.loader.storage(); + const snapshotNames = ["input", "before", "after"]; + let sha1; + for (const name of snapshotNames) { + const renderer = storage.snapshotByName(pageId, `${name}@${callId}`); + sha1 = renderer?.closestScreenshot(); + if (sha1) + break; + } + if (!sha1) { + console.error(`No screenshot found for action '${actionId}'.`); + process.exitCode = 1; + return; + } + const blob = await trace.loader.resourceForSha1(sha1); + if (!blob) { + console.error(`Screenshot resource not found.`); + process.exitCode = 1; + return; + } + const defaultName = `screenshot-${actionId}.png`; + const buffer = Buffer.from(await blob.arrayBuffer()); + const outFile = await (0, import_traceUtils.saveOutputFile)(defaultName, buffer, options.output); + console.log(` Screenshot saved to ${outFile}`); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + traceScreenshot +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/trace/traceSnapshot.js b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceSnapshot.js new file mode 100644 index 00000000..c6d85e8b --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceSnapshot.js @@ -0,0 +1,149 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var traceSnapshot_exports = {}; +__export(traceSnapshot_exports, { + traceSnapshot: () => traceSnapshot +}); +module.exports = __toCommonJS(traceSnapshot_exports); +var import_browserBackend = require("../backend/browserBackend"); +var import_tools = require("../backend/tools"); +var playwright = __toESM(require("../../..")); +var import_utils = require("../../utils"); +var import_command = require("../cli-daemon/command"); +var import_minimist = require("../cli-client/minimist"); +var import_commands = require("../cli-daemon/commands"); +var import_traceUtils = require("./traceUtils"); +async function traceSnapshot(actionId, options) { + const trace = await (0, import_traceUtils.loadTrace)(); + const action = trace.resolveActionId(actionId); + if (!action) { + console.error(`Action '${actionId}' not found.`); + process.exitCode = 1; + return; + } + const pageId = action.pageId; + if (!pageId) { + console.error(`Action '${actionId}' has no associated page.`); + process.exitCode = 1; + return; + } + const callId = action.callId; + const storage = trace.loader.storage(); + let snapshotName; + let renderer; + if (options.name) { + snapshotName = options.name; + renderer = storage.snapshotByName(pageId, `${snapshotName}@${callId}`); + } else { + for (const candidate of ["input", "before", "after"]) { + renderer = storage.snapshotByName(pageId, `${candidate}@${callId}`); + if (renderer) { + snapshotName = candidate; + break; + } + } + } + if (!renderer || !snapshotName) { + console.error(`No snapshot found for action '${actionId}'.`); + process.exitCode = 1; + return; + } + const snapshotKey = `${snapshotName}@${callId}`; + const server = await serveTraceSnapshot(storage, trace.loader, pageId, snapshotKey); + if (options.serve) { + console.log(`Serving snapshot at ${server.url}`); + await new Promise(() => { + }); + return; + } + await runCommandOnSnapshot(server, options.browserArgs || []); +} +async function serveTraceSnapshot(storage, loader, pageId, snapshotKey) { + const { SnapshotServer } = require("../../utils/isomorphic/trace/snapshotServer"); + const { HttpServer } = require("../../server/utils/httpServer"); + const snapshotServer = new SnapshotServer(storage, (sha1) => loader.resourceForSha1(sha1)); + const httpServer = new HttpServer(); + httpServer.routePrefix("/snapshot", (request, response) => { + const url = new URL("http://localhost" + request.url); + const searchParams = url.searchParams; + searchParams.set("name", snapshotKey); + const snapshotResponse = snapshotServer.serveSnapshot(pageId, searchParams, "/snapshot"); + response.statusCode = snapshotResponse.status; + snapshotResponse.headers.forEach((value, key) => response.setHeader(key, value)); + snapshotResponse.text().then((text) => response.end(text)); + return true; + }); + httpServer.routePrefix("/", (_request, response) => { + response.statusCode = 302; + response.setHeader("Location", "/snapshot"); + response.end(); + return true; + }); + await httpServer.start({ preferredPort: 0 }); + return { url: httpServer.urlPrefix("human-readable"), stop: () => httpServer.stop() }; +} +async function runCommandOnSnapshot(server, browserArgs) { + const browser = await playwright.chromium.launch({ headless: true }); + const context = await browser.newContext(); + const page = await context.newPage(); + await page.goto(server.url); + const backend = new import_browserBackend.BrowserBackend({ + snapshot: { mode: "full" }, + outputMode: "file", + skillMode: true + }, context, import_tools.browserTools); + await backend.initialize({ cwd: process.cwd() }); + try { + if (!browserArgs.length) + browserArgs = ["snapshot"]; + const args = (0, import_minimist.minimist)(browserArgs, { string: ["_"] }); + const command = import_commands.commands[args._[0]]; + if (!command) + throw new Error(`Unknown command: ${args._[0]}`); + const { toolName, toolParams } = (0, import_command.parseCommand)(command, args); + const result = await backend.callTool(toolName, toolParams); + const text = result.content[0]?.type === "text" ? result.content[0].text : void 0; + if (text) + console.log(text); + if (result.isError) { + console.error("Command failed."); + process.exitCode = 1; + } + } catch (e) { + console.error(e.message); + process.exitCode = 1; + } finally { + await server.stop().catch((e) => console.error(e)); + await (0, import_utils.gracefullyCloseAll)(); + } +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + traceSnapshot +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/trace/traceUtils.js b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceUtils.js new file mode 100644 index 00000000..b5a1fd79 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/trace/traceUtils.js @@ -0,0 +1,153 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var traceUtils_exports = {}; +__export(traceUtils_exports, { + LoadedTrace: () => LoadedTrace, + actionTitle: () => actionTitle, + closeTrace: () => closeTrace, + formatTimestamp: () => formatTimestamp, + loadTrace: () => loadTrace, + openTrace: () => openTrace, + saveOutputFile: () => saveOutputFile +}); +module.exports = __toCommonJS(traceUtils_exports); +var import_fs = __toESM(require("fs")); +var import_path = __toESM(require("path")); +var import_traceModel = require("../../utils/isomorphic/trace/traceModel"); +var import_traceLoader = require("../../utils/isomorphic/trace/traceLoader"); +var import_protocolFormatter = require("../../utils/isomorphic/protocolFormatter"); +var import_traceParser = require("./traceParser"); +const traceDir = import_path.default.join(".playwright-cli", "trace"); +const cliOutputDir = ".playwright-cli"; +class LoadedTrace { + constructor(model, loader, ordinals) { + this.model = model; + this.loader = loader; + this.ordinalToCallId = ordinals.ordinalToCallId; + this.callIdToOrdinal = ordinals.callIdToOrdinal; + } + resolveActionId(actionId) { + const ordinal = parseInt(actionId, 10); + if (!isNaN(ordinal)) { + const callId = this.ordinalToCallId.get(ordinal); + if (callId) + return this.model.actions.find((a) => a.callId === callId); + } + return this.model.actions.find((a) => a.callId === actionId); + } +} +function ensureTraceOpen() { + if (!import_fs.default.existsSync(traceDir)) + throw new Error(`No trace opened. Run 'npx playwright trace open <file>' first.`); + return traceDir; +} +async function closeTrace() { + if (import_fs.default.existsSync(traceDir)) + await import_fs.default.promises.rm(traceDir, { recursive: true }); +} +async function openTrace(traceFile) { + const filePath = import_path.default.resolve(traceFile); + if (!import_fs.default.existsSync(filePath)) + throw new Error(`Trace file not found: ${filePath}`); + await closeTrace(); + await import_fs.default.promises.mkdir(traceDir, { recursive: true }); + if (filePath.endsWith(".zip")) + await (0, import_traceParser.extractTrace)(filePath, traceDir); + else + await import_fs.default.promises.writeFile(import_path.default.join(traceDir, ".link"), filePath, "utf-8"); +} +async function loadTrace() { + const dir = ensureTraceOpen(); + const linkFile = import_path.default.join(dir, ".link"); + let traceDir2; + let traceFile; + if (import_fs.default.existsSync(linkFile)) { + const tracePath = await import_fs.default.promises.readFile(linkFile, "utf-8"); + traceDir2 = import_path.default.dirname(tracePath); + traceFile = import_path.default.basename(tracePath); + } else { + traceDir2 = dir; + } + const backend = new import_traceParser.DirTraceLoaderBackend(traceDir2); + const loader = new import_traceLoader.TraceLoader(); + await loader.load(backend, traceFile); + const model = new import_traceModel.TraceModel(traceDir2, loader.contextEntries); + return new LoadedTrace(model, loader, buildOrdinalMap(model)); +} +function formatTimestamp(ms, base) { + const relative = ms - base; + if (relative < 0) + return "0:00.000"; + const totalMs = Math.floor(relative); + const minutes = Math.floor(totalMs / 6e4); + const seconds = Math.floor(totalMs % 6e4 / 1e3); + const millis = totalMs % 1e3; + return `${minutes}:${seconds.toString().padStart(2, "0")}.${millis.toString().padStart(3, "0")}`; +} +function actionTitle(action) { + return (0, import_protocolFormatter.renderTitleForCall)({ ...action, type: action.class }) || `${action.class}.${action.method}`; +} +async function saveOutputFile(fileName, content, explicitOutput) { + let outFile; + if (explicitOutput) { + outFile = explicitOutput; + } else { + await import_fs.default.promises.mkdir(cliOutputDir, { recursive: true }); + outFile = import_path.default.join(cliOutputDir, fileName); + } + await import_fs.default.promises.writeFile(outFile, content); + return outFile; +} +function buildOrdinalMap(model) { + const actions = model.actions.filter((a) => a.group !== "configuration"); + const { rootItem } = (0, import_traceModel.buildActionTree)(actions); + const ordinalToCallId = /* @__PURE__ */ new Map(); + const callIdToOrdinal = /* @__PURE__ */ new Map(); + let ordinal = 1; + const visit = (item) => { + ordinalToCallId.set(ordinal, item.action.callId); + callIdToOrdinal.set(item.action.callId, ordinal); + ordinal++; + for (const child of item.children) + visit(child); + }; + for (const child of rootItem.children) + visit(child); + return { ordinalToCallId, callIdToOrdinal }; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + LoadedTrace, + actionTitle, + closeTrace, + formatTimestamp, + loadTrace, + openTrace, + saveOutputFile +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/utils/connect.js b/node_modules.codex-backup/playwright-core/lib/tools/utils/connect.js new file mode 100644 index 00000000..38b276d4 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/utils/connect.js @@ -0,0 +1,32 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var connect_exports = {}; +__export(connect_exports, { + connectToBrowserAcrossVersions: () => connectToBrowserAcrossVersions +}); +module.exports = __toCommonJS(connect_exports); +async function connectToBrowserAcrossVersions(descriptor) { + const pw = require(descriptor.playwrightLib); + const browserType = pw[descriptor.browser.browserName]; + return await browserType.connect(descriptor.endpoint ?? descriptor.pipeName); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + connectToBrowserAcrossVersions +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/utils/mcp/http.js b/node_modules.codex-backup/playwright-core/lib/tools/utils/mcp/http.js new file mode 100644 index 00000000..7ef8dc83 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/utils/mcp/http.js @@ -0,0 +1,152 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var http_exports = {}; +__export(http_exports, { + addressToString: () => addressToString, + startMcpHttpServer: () => startMcpHttpServer +}); +module.exports = __toCommonJS(http_exports); +var import_assert = __toESM(require("assert")); +var import_crypto = __toESM(require("crypto")); +var import_utilsBundle = require("../../../utilsBundle"); +var mcpBundle = __toESM(require("../../../mcpBundle")); +var import_network = require("../../../server/utils/network"); +var mcpServer = __toESM(require("./server")); +const testDebug = (0, import_utilsBundle.debug)("pw:mcp:test"); +async function startMcpHttpServer(config, serverBackendFactory, allowedHosts) { + const httpServer = (0, import_network.createHttpServer)(); + await (0, import_network.startHttpServer)(httpServer, config); + return await installHttpTransport(httpServer, serverBackendFactory, allowedHosts); +} +function addressToString(address, options) { + (0, import_assert.default)(address, "Could not bind server socket"); + if (typeof address === "string") + throw new Error("Unexpected address type: " + address); + let host = address.family === "IPv4" ? address.address : `[${address.address}]`; + if (options.normalizeLoopback && (host === "0.0.0.0" || host === "[::]" || host === "[::1]" || host === "127.0.0.1")) + host = "localhost"; + return `${options.protocol}://${host}:${address.port}`; +} +async function installHttpTransport(httpServer, serverBackendFactory, allowedHosts) { + const url = addressToString(httpServer.address(), { protocol: "http", normalizeLoopback: true }); + const host = new URL(url).host; + allowedHosts = (allowedHosts || [host]).map((h) => h.toLowerCase()); + const allowAnyHost = allowedHosts.includes("*"); + const sseSessions = /* @__PURE__ */ new Map(); + const streamableSessions = /* @__PURE__ */ new Map(); + httpServer.on("request", async (req, res) => { + if (!allowAnyHost) { + const host2 = req.headers.host?.toLowerCase(); + if (!host2) { + res.statusCode = 400; + return res.end("Missing host"); + } + if (!allowedHosts.includes(host2)) { + res.statusCode = 403; + return res.end("Access is only allowed at " + allowedHosts.join(", ")); + } + } + const url2 = new URL(`http://localhost${req.url}`); + if (url2.pathname === "/killkillkill" && req.method === "GET") { + res.statusCode = 200; + res.end("Killing process"); + process.emit("SIGINT"); + return; + } + if (url2.pathname.startsWith("/sse")) + await handleSSE(serverBackendFactory, req, res, url2, sseSessions); + else + await handleStreamable(serverBackendFactory, req, res, streamableSessions); + }); + return url; +} +async function handleSSE(serverBackendFactory, req, res, url, sessions) { + if (req.method === "POST") { + const sessionId = url.searchParams.get("sessionId"); + if (!sessionId) { + res.statusCode = 400; + return res.end("Missing sessionId"); + } + const transport = sessions.get(sessionId); + if (!transport) { + res.statusCode = 404; + return res.end("Session not found"); + } + return await transport.handlePostMessage(req, res); + } else if (req.method === "GET") { + const transport = new mcpBundle.SSEServerTransport("/sse", res); + sessions.set(transport.sessionId, transport); + testDebug(`create SSE session`); + await mcpServer.connect(serverBackendFactory, transport, false); + res.on("close", () => { + testDebug(`delete SSE session`); + sessions.delete(transport.sessionId); + }); + return; + } + res.statusCode = 405; + res.end("Method not allowed"); +} +async function handleStreamable(serverBackendFactory, req, res, sessions) { + const sessionId = req.headers["mcp-session-id"]; + if (sessionId) { + const transport = sessions.get(sessionId); + if (!transport) { + res.statusCode = 404; + res.end("Session not found"); + return; + } + return await transport.handleRequest(req, res); + } + if (req.method === "POST") { + const transport = new mcpBundle.StreamableHTTPServerTransport({ + sessionIdGenerator: () => import_crypto.default.randomUUID(), + onsessioninitialized: async (sessionId2) => { + testDebug(`create http session`); + await mcpServer.connect(serverBackendFactory, transport, true); + sessions.set(sessionId2, transport); + } + }); + transport.onclose = () => { + if (!transport.sessionId) + return; + sessions.delete(transport.sessionId); + testDebug(`delete http session`); + }; + await transport.handleRequest(req, res); + return; + } + res.statusCode = 400; + res.end("Invalid request"); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + addressToString, + startMcpHttpServer +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/utils/mcp/server.js b/node_modules.codex-backup/playwright-core/lib/tools/utils/mcp/server.js new file mode 100644 index 00000000..fcc5759c --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/utils/mcp/server.js @@ -0,0 +1,230 @@ +"use strict"; +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var server_exports = {}; +__export(server_exports, { + allRootPaths: () => allRootPaths, + connect: () => connect, + createServer: () => createServer, + firstRootPath: () => firstRootPath, + start: () => start +}); +module.exports = __toCommonJS(server_exports); +var import_url = require("url"); +var import_utilsBundle = require("../../../utilsBundle"); +var mcpBundle = __toESM(require("../../../mcpBundle")); +var import_http = require("./http"); +var import_tool = require("./tool"); +const serverDebug = (0, import_utilsBundle.debug)("pw:mcp:server"); +const serverDebugResponse = (0, import_utilsBundle.debug)("pw:mcp:server:response"); +class BackendManager { + constructor() { + this._backends = /* @__PURE__ */ new Map(); + } + async createBackend(factory, clientInfo) { + const backend = await factory.create(clientInfo); + await backend.initialize?.(clientInfo); + this._backends.set(backend, factory); + return backend; + } + async disposeBackend(backend) { + const factory = this._backends.get(backend); + if (!factory) + return; + await backend.dispose?.(); + await factory.disposed(backend).catch(serverDebug); + this._backends.delete(backend); + } +} +const backendManager = new BackendManager(); +async function connect(factory, transport, runHeartbeat) { + const server = createServer(factory.name, factory.version, factory, runHeartbeat); + await server.connect(transport); +} +function createServer(name, version, factory, runHeartbeat) { + const server = new mcpBundle.Server({ name, version }, { + capabilities: { + tools: {} + } + }); + server.setRequestHandler(mcpBundle.ListToolsRequestSchema, async () => { + serverDebug("listTools"); + return { tools: factory.toolSchemas.map((s) => (0, import_tool.toMcpTool)(s)) }; + }); + let backendPromise; + const onClose = () => backendPromise?.then((b) => backendManager.disposeBackend(b)).catch(serverDebug); + addServerListener(server, "close", onClose); + server.setRequestHandler(mcpBundle.CallToolRequestSchema, async (request, extra) => { + serverDebug("callTool", request); + const progressToken = request.params._meta?.progressToken; + let progressCounter = 0; + const progress = progressToken ? (params) => { + extra.sendNotification({ + method: "notifications/progress", + params: { + progressToken, + progress: params.progress ?? ++progressCounter, + total: params.total, + message: params.message + } + }).catch((e) => serverDebug("notification", e)); + } : () => { + }; + try { + if (!backendPromise) { + backendPromise = initializeServer(server, factory, runHeartbeat).catch((e) => { + backendPromise = void 0; + throw e; + }); + } + const backend = await backendPromise; + const toolResult = await backend.callTool(request.params.name, request.params.arguments || {}, progress); + if (toolResult.isClose) { + await backendManager.disposeBackend(backend).catch(serverDebug); + backendPromise = void 0; + delete toolResult.isClose; + } + const mergedResult = mergeTextParts(toolResult); + serverDebugResponse("callResult", mergedResult); + return mergedResult; + } catch (error) { + return { + content: [{ type: "text", text: "### Error\n" + String(error) }], + isError: true + }; + } + }); + return server; +} +const initializeServer = async (server, factory, runHeartbeat) => { + const capabilities = server.getClientCapabilities(); + let clientRoots = []; + if (capabilities?.roots) { + const { roots } = await server.listRoots().catch((e) => { + serverDebug(e); + return { roots: [] }; + }); + clientRoots = roots; + } + const clientInfo = { + cwd: firstRootPath(clientRoots) + }; + const backend = await backendManager.createBackend(factory, clientInfo); + if (runHeartbeat) + startHeartbeat(server); + return backend; +}; +const startHeartbeat = (server) => { + const beat = () => { + Promise.race([ + server.ping(), + new Promise((_, reject) => setTimeout(() => reject(new Error("ping timeout")), 5e3)) + ]).then(() => { + setTimeout(beat, 3e3); + }).catch(() => { + void server.close(); + }); + }; + beat(); +}; +function addServerListener(server, event, listener) { + const oldListener = server[`on${event}`]; + server[`on${event}`] = () => { + oldListener?.(); + listener(); + }; +} +async function start(serverBackendFactory, options = {}) { + if (options.port === void 0) { + await connect(serverBackendFactory, new mcpBundle.StdioServerTransport(), false); + return; + } + const url = await (0, import_http.startMcpHttpServer)(options, serverBackendFactory, options.allowedHosts); + const mcpConfig = { mcpServers: {} }; + mcpConfig.mcpServers[serverBackendFactory.nameInConfig] = { + url: `${url}/mcp` + }; + const message = [ + `Listening on ${url}`, + "Put this in your client config:", + JSON.stringify(mcpConfig, void 0, 2), + "For legacy SSE transport support, you can use the /sse endpoint instead." + ].join("\n"); + console.error(message); +} +function firstRootPath(roots) { + return allRootPaths(roots)[0]; +} +function allRootPaths(roots) { + const paths = []; + for (const root of roots) { + const url = new URL(root.uri); + let rootPath; + try { + rootPath = (0, import_url.fileURLToPath)(url); + } catch (e) { + if (e.code === "ERR_INVALID_FILE_URL_PATH" && process.platform === "win32") + rootPath = decodeURIComponent(url.pathname); + } + if (!rootPath) + continue; + paths.push(rootPath); + } + if (paths.length === 0) + paths.push(process.cwd()); + return paths; +} +function mergeTextParts(result) { + const content = []; + const testParts = []; + for (const part of result.content) { + if (part.type === "text") { + testParts.push(part.text); + continue; + } + if (testParts.length > 0) { + content.push({ type: "text", text: testParts.join("\n") }); + testParts.length = 0; + } + content.push(part); + } + if (testParts.length > 0) + content.push({ type: "text", text: testParts.join("\n") }); + return { + ...result, + content + }; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + allRootPaths, + connect, + createServer, + firstRootPath, + start +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/utils/mcp/tool.js b/node_modules.codex-backup/playwright-core/lib/tools/utils/mcp/tool.js new file mode 100644 index 00000000..39b2d111 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/utils/mcp/tool.js @@ -0,0 +1,47 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var tool_exports = {}; +__export(tool_exports, { + defineToolSchema: () => defineToolSchema, + toMcpTool: () => toMcpTool +}); +module.exports = __toCommonJS(tool_exports); +var import_zodBundle = require("../../../zodBundle"); +function toMcpTool(tool) { + const readOnly = tool.type === "readOnly" || tool.type === "assertion"; + return { + name: tool.name, + description: tool.description, + inputSchema: import_zodBundle.z.toJSONSchema(tool.inputSchema), + annotations: { + title: tool.title, + readOnlyHint: readOnly, + destructiveHint: !readOnly, + openWorldHint: true + } + }; +} +function defineToolSchema(tool) { + return tool; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + defineToolSchema, + toMcpTool +}); diff --git a/node_modules.codex-backup/playwright-core/lib/tools/utils/socketConnection.js b/node_modules.codex-backup/playwright-core/lib/tools/utils/socketConnection.js new file mode 100644 index 00000000..e464461f --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/tools/utils/socketConnection.js @@ -0,0 +1,108 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var socketConnection_exports = {}; +__export(socketConnection_exports, { + SocketConnection: () => SocketConnection, + compareSemver: () => compareSemver +}); +module.exports = __toCommonJS(socketConnection_exports); +class SocketConnection { + constructor(socket) { + this._pendingBuffers = []; + this._socket = socket; + socket.on("data", (buffer) => this._onData(buffer)); + socket.on("close", () => { + this.onclose?.(); + }); + socket.on("error", (e) => console.error(`error: ${e.message}`)); + } + async send(message) { + await new Promise((resolve, reject) => { + this._socket.write(`${JSON.stringify(message)} +`, (error) => { + if (error) + reject(error); + else + resolve(void 0); + }); + }); + } + close() { + this._socket.destroy(); + } + _onData(buffer) { + let end = buffer.indexOf("\n"); + if (end === -1) { + this._pendingBuffers.push(buffer); + return; + } + this._pendingBuffers.push(buffer.slice(0, end)); + const message = Buffer.concat(this._pendingBuffers).toString(); + this._dispatchMessage(message); + let start = end + 1; + end = buffer.indexOf("\n", start); + while (end !== -1) { + const message2 = buffer.toString(void 0, start, end); + this._dispatchMessage(message2); + start = end + 1; + end = buffer.indexOf("\n", start); + } + this._pendingBuffers = [buffer.slice(start)]; + } + _dispatchMessage(message) { + try { + this.onmessage?.(JSON.parse(message)); + } catch (e) { + console.error("failed to dispatch message", e); + } + } +} +function compareSemver(a, b) { + const aBase = a.replace(/-.*$/, ""); + const bBase = b.replace(/-.*$/, ""); + const aParts = aBase.split(".").map(Number); + const bParts = bBase.split(".").map(Number); + for (let i = 0; i < 3; i++) { + if (aParts[i] > bParts[i]) + return 1; + if (aParts[i] < bParts[i]) + return -1; + } + const aTimestamp = parseSuffixTimestamp(a); + const bTimestamp = parseSuffixTimestamp(b); + if (aTimestamp > bTimestamp) + return 1; + if (aTimestamp < bTimestamp) + return -1; + return 0; +} +function parseSuffixTimestamp(version) { + const match = version.match(/^\d+\.\d+\.\d+-(?:alpha|beta)-(.+)$/); + if (!match) + return Infinity; + const suffix = match[1]; + if (/^\d{4}-\d{2}-\d{2}$/.test(suffix)) + return new Date(suffix).getTime(); + return Number(suffix); +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + SocketConnection, + compareSemver +}); diff --git a/node_modules.codex-backup/playwright-core/lib/utils/isomorphic/formatUtils.js b/node_modules.codex-backup/playwright-core/lib/utils/isomorphic/formatUtils.js new file mode 100644 index 00000000..7382071f --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/utils/isomorphic/formatUtils.js @@ -0,0 +1,64 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var formatUtils_exports = {}; +__export(formatUtils_exports, { + bytesToString: () => bytesToString, + msToString: () => msToString +}); +module.exports = __toCommonJS(formatUtils_exports); +function msToString(ms) { + if (ms < 0 || !isFinite(ms)) + return "-"; + if (ms === 0) + return "0ms"; + if (ms < 1e3) + return ms.toFixed(0) + "ms"; + const seconds = ms / 1e3; + if (seconds < 60) + return seconds.toFixed(1) + "s"; + const minutes = seconds / 60; + if (minutes < 60) + return minutes.toFixed(1) + "m"; + const hours = minutes / 60; + if (hours < 24) + return hours.toFixed(1) + "h"; + const days = hours / 24; + return days.toFixed(1) + "d"; +} +function bytesToString(bytes) { + if (bytes < 0 || !isFinite(bytes)) + return "-"; + if (bytes === 0) + return "0"; + if (bytes < 1e3) + return bytes.toFixed(0); + const kb = bytes / 1024; + if (kb < 1e3) + return kb.toFixed(1) + "K"; + const mb = kb / 1024; + if (mb < 1e3) + return mb.toFixed(1) + "M"; + const gb = mb / 1024; + return gb.toFixed(1) + "G"; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + bytesToString, + msToString +}); diff --git a/node_modules.codex-backup/playwright-core/lib/utils/isomorphic/imageUtils.js b/node_modules.codex-backup/playwright-core/lib/utils/isomorphic/imageUtils.js new file mode 100644 index 00000000..98f4a5e0 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/utils/isomorphic/imageUtils.js @@ -0,0 +1,141 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var imageUtils_exports = {}; +__export(imageUtils_exports, { + padImageToSize: () => padImageToSize, + scaleImageToSize: () => scaleImageToSize +}); +module.exports = __toCommonJS(imageUtils_exports); +function padImageToSize(image, size) { + if (image.width === size.width && image.height === size.height) + return image; + const buffer = new Uint8Array(size.width * size.height * 4); + for (let y = 0; y < size.height; y++) { + for (let x = 0; x < size.width; x++) { + const to = (y * size.width + x) * 4; + if (y < image.height && x < image.width) { + const from = (y * image.width + x) * 4; + buffer[to] = image.data[from]; + buffer[to + 1] = image.data[from + 1]; + buffer[to + 2] = image.data[from + 2]; + buffer[to + 3] = image.data[from + 3]; + } else { + buffer[to] = 0; + buffer[to + 1] = 0; + buffer[to + 2] = 0; + buffer[to + 3] = 0; + } + } + } + return { data: Buffer.from(buffer), width: size.width, height: size.height }; +} +function scaleImageToSize(image, size) { + const { data: src, width: w1, height: h1 } = image; + const w2 = Math.max(1, Math.floor(size.width)); + const h2 = Math.max(1, Math.floor(size.height)); + if (w1 === w2 && h1 === h2) + return image; + if (w1 <= 0 || h1 <= 0) + throw new Error("Invalid input image"); + if (size.width <= 0 || size.height <= 0 || !isFinite(size.width) || !isFinite(size.height)) + throw new Error("Invalid output dimensions"); + const clamp = (v, lo, hi) => v < lo ? lo : v > hi ? hi : v; + const weights = (t, o) => { + const t2 = t * t, t3 = t2 * t; + o[0] = -0.5 * t + 1 * t2 - 0.5 * t3; + o[1] = 1 - 2.5 * t2 + 1.5 * t3; + o[2] = 0.5 * t + 2 * t2 - 1.5 * t3; + o[3] = -0.5 * t2 + 0.5 * t3; + }; + const srcRowStride = w1 * 4; + const dstRowStride = w2 * 4; + const xOff = new Int32Array(w2 * 4); + const xW = new Float32Array(w2 * 4); + const wx = new Float32Array(4); + const xScale = w1 / w2; + for (let x = 0; x < w2; x++) { + const sx = (x + 0.5) * xScale - 0.5; + const sxi = Math.floor(sx); + const t = sx - sxi; + weights(t, wx); + const b = x * 4; + const i0 = clamp(sxi - 1, 0, w1 - 1); + const i1 = clamp(sxi + 0, 0, w1 - 1); + const i2 = clamp(sxi + 1, 0, w1 - 1); + const i3 = clamp(sxi + 2, 0, w1 - 1); + xOff[b + 0] = i0 << 2; + xOff[b + 1] = i1 << 2; + xOff[b + 2] = i2 << 2; + xOff[b + 3] = i3 << 2; + xW[b + 0] = wx[0]; + xW[b + 1] = wx[1]; + xW[b + 2] = wx[2]; + xW[b + 3] = wx[3]; + } + const yRow = new Int32Array(h2 * 4); + const yW = new Float32Array(h2 * 4); + const wy = new Float32Array(4); + const yScale = h1 / h2; + for (let y = 0; y < h2; y++) { + const sy = (y + 0.5) * yScale - 0.5; + const syi = Math.floor(sy); + const t = sy - syi; + weights(t, wy); + const b = y * 4; + const j0 = clamp(syi - 1, 0, h1 - 1); + const j1 = clamp(syi + 0, 0, h1 - 1); + const j2 = clamp(syi + 1, 0, h1 - 1); + const j3 = clamp(syi + 2, 0, h1 - 1); + yRow[b + 0] = j0 * srcRowStride; + yRow[b + 1] = j1 * srcRowStride; + yRow[b + 2] = j2 * srcRowStride; + yRow[b + 3] = j3 * srcRowStride; + yW[b + 0] = wy[0]; + yW[b + 1] = wy[1]; + yW[b + 2] = wy[2]; + yW[b + 3] = wy[3]; + } + const dst = new Uint8Array(w2 * h2 * 4); + for (let y = 0; y < h2; y++) { + const yb = y * 4; + const rb0 = yRow[yb + 0], rb1 = yRow[yb + 1], rb2 = yRow[yb + 2], rb3 = yRow[yb + 3]; + const wy0 = yW[yb + 0], wy1 = yW[yb + 1], wy2 = yW[yb + 2], wy3 = yW[yb + 3]; + const dstBase = y * dstRowStride; + for (let x = 0; x < w2; x++) { + const xb = x * 4; + const xo0 = xOff[xb + 0], xo1 = xOff[xb + 1], xo2 = xOff[xb + 2], xo3 = xOff[xb + 3]; + const wx0 = xW[xb + 0], wx1 = xW[xb + 1], wx2 = xW[xb + 2], wx3 = xW[xb + 3]; + const di = dstBase + (x << 2); + for (let c = 0; c < 4; c++) { + const r0 = src[rb0 + xo0 + c] * wx0 + src[rb0 + xo1 + c] * wx1 + src[rb0 + xo2 + c] * wx2 + src[rb0 + xo3 + c] * wx3; + const r1 = src[rb1 + xo0 + c] * wx0 + src[rb1 + xo1 + c] * wx1 + src[rb1 + xo2 + c] * wx2 + src[rb1 + xo3 + c] * wx3; + const r2 = src[rb2 + xo0 + c] * wx0 + src[rb2 + xo1 + c] * wx1 + src[rb2 + xo2 + c] * wx2 + src[rb2 + xo3 + c] * wx3; + const r3 = src[rb3 + xo0 + c] * wx0 + src[rb3 + xo1 + c] * wx1 + src[rb3 + xo2 + c] * wx2 + src[rb3 + xo3 + c] * wx3; + const v = r0 * wy0 + r1 * wy1 + r2 * wy2 + r3 * wy3; + dst[di + c] = v < 0 ? 0 : v > 255 ? 255 : v | 0; + } + } + } + return { data: Buffer.from(dst.buffer), width: w2, height: h2 }; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + padImageToSize, + scaleImageToSize +}); diff --git a/node_modules.codex-backup/playwright-core/lib/utils/isomorphic/jsonSchema.js b/node_modules.codex-backup/playwright-core/lib/utils/isomorphic/jsonSchema.js new file mode 100644 index 00000000..e4a39cef --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/utils/isomorphic/jsonSchema.js @@ -0,0 +1,89 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var jsonSchema_exports = {}; +__export(jsonSchema_exports, { + validate: () => validate +}); +module.exports = __toCommonJS(jsonSchema_exports); +const regexCache = /* @__PURE__ */ new Map(); +function validate(value, schema, path) { + const errors = []; + if (schema.oneOf) { + let bestErrors; + for (const variant of schema.oneOf) { + const variantErrors = validate(value, variant, path); + if (variantErrors.length === 0) + return []; + if (!bestErrors || variantErrors.length < bestErrors.length) + bestErrors = variantErrors; + } + if (bestErrors.length === 1 && bestErrors[0].startsWith(`${path}: expected `)) + return [`${path}: does not match any of the expected types`]; + return bestErrors; + } + if (schema.type === "string") { + if (typeof value !== "string") { + errors.push(`${path}: expected string, got ${typeof value}`); + return errors; + } + if (schema.pattern && !cachedRegex(schema.pattern).test(value)) + errors.push(schema.patternError || `${path}: must match pattern "${schema.pattern}"`); + return errors; + } + if (schema.type === "array") { + if (!Array.isArray(value)) { + errors.push(`${path}: expected array, got ${typeof value}`); + return errors; + } + if (schema.items) { + for (let i = 0; i < value.length; i++) + errors.push(...validate(value[i], schema.items, `${path}[${i}]`)); + } + return errors; + } + if (schema.type === "object") { + if (!value || typeof value !== "object" || Array.isArray(value)) { + errors.push(`${path}: expected object, got ${Array.isArray(value) ? "array" : typeof value}`); + return errors; + } + const obj = value; + for (const key of schema.required || []) { + if (obj[key] === void 0) + errors.push(`${path}.${key}: required`); + } + for (const [key, propSchema] of Object.entries(schema.properties || {})) { + if (obj[key] !== void 0) + errors.push(...validate(obj[key], propSchema, `${path}.${key}`)); + } + return errors; + } + return errors; +} +function cachedRegex(pattern) { + let regex = regexCache.get(pattern); + if (!regex) { + regex = new RegExp(pattern); + regexCache.set(pattern, regex); + } + return regex; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + validate +}); diff --git a/node_modules.codex-backup/playwright-core/lib/utils/isomorphic/trace/traceUtils.js b/node_modules.codex-backup/playwright-core/lib/utils/isomorphic/trace/traceUtils.js new file mode 100644 index 00000000..16fa2c16 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/utils/isomorphic/trace/traceUtils.js @@ -0,0 +1,58 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var traceUtils_exports = {}; +__export(traceUtils_exports, { + parseClientSideCallMetadata: () => parseClientSideCallMetadata, + serializeClientSideCallMetadata: () => serializeClientSideCallMetadata +}); +module.exports = __toCommonJS(traceUtils_exports); +function parseClientSideCallMetadata(data) { + const result = /* @__PURE__ */ new Map(); + const { files, stacks } = data; + for (const s of stacks) { + const [id, ff] = s; + result.set(`call@${id}`, ff.map((f) => ({ file: files[f[0]], line: f[1], column: f[2], function: f[3] }))); + } + return result; +} +function serializeClientSideCallMetadata(metadatas) { + const fileNames = /* @__PURE__ */ new Map(); + const stacks = []; + for (const m of metadatas) { + if (!m.stack || !m.stack.length) + continue; + const stack = []; + for (const frame of m.stack) { + let ordinal = fileNames.get(frame.file); + if (typeof ordinal !== "number") { + ordinal = fileNames.size; + fileNames.set(frame.file, ordinal); + } + const stackFrame = [ordinal, frame.line || 0, frame.column || 0, frame.function || ""]; + stack.push(stackFrame); + } + stacks.push([m.id, stack]); + } + return { files: [...fileNames.keys()], stacks }; +} +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + parseClientSideCallMetadata, + serializeClientSideCallMetadata +}); diff --git a/node_modules.codex-backup/playwright-core/lib/vite/dashboard/assets/index-BAOybkp8.js b/node_modules.codex-backup/playwright-core/lib/vite/dashboard/assets/index-BAOybkp8.js new file mode 100644 index 00000000..31847c53 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/vite/dashboard/assets/index-BAOybkp8.js @@ -0,0 +1,50 @@ +(function(){const o=document.createElement("link").relList;if(o&&o.supports&&o.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))c(s);new MutationObserver(s=>{for(const y of s)if(y.type==="childList")for(const E of y.addedNodes)E.tagName==="LINK"&&E.rel==="modulepreload"&&c(E)}).observe(document,{childList:!0,subtree:!0});function h(s){const y={};return s.integrity&&(y.integrity=s.integrity),s.referrerPolicy&&(y.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?y.credentials="include":s.crossOrigin==="anonymous"?y.credentials="omit":y.credentials="same-origin",y}function c(s){if(s.ep)return;s.ep=!0;const y=h(s);fetch(s.href,y)}})();function am(f){return f&&f.__esModule&&Object.prototype.hasOwnProperty.call(f,"default")?f.default:f}var Df={exports:{}},jn={};/** + * @license React + * react-jsx-runtime.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Vh;function nm(){if(Vh)return jn;Vh=1;var f=Symbol.for("react.transitional.element"),o=Symbol.for("react.fragment");function h(c,s,y){var E=null;if(y!==void 0&&(E=""+y),s.key!==void 0&&(E=""+s.key),"key"in s){y={};for(var p in s)p!=="key"&&(y[p]=s[p])}else y=s;return s=y.ref,{$$typeof:f,type:c,key:E,ref:s!==void 0?s:null,props:y}}return jn.Fragment=o,jn.jsx=h,jn.jsxs=h,jn}var Jh;function um(){return Jh||(Jh=1,Df.exports=nm()),Df.exports}var U=um(),Cf={exports:{}},nt={};/** + * @license React + * react.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Kh;function im(){if(Kh)return nt;Kh=1;var f=Symbol.for("react.transitional.element"),o=Symbol.for("react.portal"),h=Symbol.for("react.fragment"),c=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),y=Symbol.for("react.consumer"),E=Symbol.for("react.context"),p=Symbol.for("react.forward_ref"),z=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),G=Symbol.for("react.lazy"),B=Symbol.for("react.activity"),J=Symbol.iterator;function $(m){return m===null||typeof m!="object"?null:(m=J&&m[J]||m["@@iterator"],typeof m=="function"?m:null)}var Q={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},N=Object.assign,q={};function Z(m,_,w){this.props=m,this.context=_,this.refs=q,this.updater=w||Q}Z.prototype.isReactComponent={},Z.prototype.setState=function(m,_){if(typeof m!="object"&&typeof m!="function"&&m!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,m,_,"setState")},Z.prototype.forceUpdate=function(m){this.updater.enqueueForceUpdate(this,m,"forceUpdate")};function P(){}P.prototype=Z.prototype;function et(m,_,w){this.props=m,this.context=_,this.refs=q,this.updater=w||Q}var Rt=et.prototype=new P;Rt.constructor=et,N(Rt,Z.prototype),Rt.isPureReactComponent=!0;var Lt=Array.isArray;function At(){}var tt={H:null,A:null,T:null,S:null},Nt=Object.prototype.hasOwnProperty;function R(m,_,w){var Y=w.ref;return{$$typeof:f,type:m,key:_,ref:Y!==void 0?Y:null,props:w}}function Dt(m,_){return R(m.type,_,m.props)}function xt(m){return typeof m=="object"&&m!==null&&m.$$typeof===f}function j(m){var _={"=":"=0",":":"=2"};return"$"+m.replace(/[=:]/g,function(w){return _[w]})}var I=/\/+/g;function _t(m,_){return typeof m=="object"&&m!==null&&m.key!=null?j(""+m.key):_.toString(36)}function gt(m){switch(m.status){case"fulfilled":return m.value;case"rejected":throw m.reason;default:switch(typeof m.status=="string"?m.then(At,At):(m.status="pending",m.then(function(_){m.status==="pending"&&(m.status="fulfilled",m.value=_)},function(_){m.status==="pending"&&(m.status="rejected",m.reason=_)})),m.status){case"fulfilled":return m.value;case"rejected":throw m.reason}}throw m}function O(m,_,w,Y,F){var at=typeof m;(at==="undefined"||at==="boolean")&&(m=null);var rt=!1;if(m===null)rt=!0;else switch(at){case"bigint":case"string":case"number":rt=!0;break;case"object":switch(m.$$typeof){case f:case o:rt=!0;break;case G:return rt=m._init,O(rt(m._payload),_,w,Y,F)}}if(rt)return F=F(m),rt=Y===""?"."+_t(m,0):Y,Lt(F)?(w="",rt!=null&&(w=rt.replace(I,"$&/")+"/"),O(F,_,w,"",function(Cl){return Cl})):F!=null&&(xt(F)&&(F=Dt(F,w+(F.key==null||m&&m.key===F.key?"":(""+F.key).replace(I,"$&/")+"/")+rt)),_.push(F)),1;rt=0;var Vt=Y===""?".":Y+":";if(Lt(m))for(var Ut=0;Ut<m.length;Ut++)Y=m[Ut],at=Vt+_t(Y,Ut),rt+=O(Y,_,w,at,F);else if(Ut=$(m),typeof Ut=="function")for(m=Ut.call(m),Ut=0;!(Y=m.next()).done;)Y=Y.value,at=Vt+_t(Y,Ut++),rt+=O(Y,_,w,at,F);else if(at==="object"){if(typeof m.then=="function")return O(gt(m),_,w,Y,F);throw _=String(m),Error("Objects are not valid as a React child (found: "+(_==="[object Object]"?"object with keys {"+Object.keys(m).join(", ")+"}":_)+"). If you meant to render a collection of children, use an array instead.")}return rt}function L(m,_,w){if(m==null)return m;var Y=[],F=0;return O(m,Y,"","",function(at){return _.call(w,at,F++)}),Y}function H(m){if(m._status===-1){var _=m._result;_=_(),_.then(function(w){(m._status===0||m._status===-1)&&(m._status=1,m._result=w)},function(w){(m._status===0||m._status===-1)&&(m._status=2,m._result=w)}),m._status===-1&&(m._status=0,m._result=_)}if(m._status===1)return m._result.default;throw m._result}var k=typeof reportError=="function"?reportError:function(m){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var _=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof m=="object"&&m!==null&&typeof m.message=="string"?String(m.message):String(m),error:m});if(!window.dispatchEvent(_))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",m);return}console.error(m)},lt={map:L,forEach:function(m,_,w){L(m,function(){_.apply(this,arguments)},w)},count:function(m){var _=0;return L(m,function(){_++}),_},toArray:function(m){return L(m,function(_){return _})||[]},only:function(m){if(!xt(m))throw Error("React.Children.only expected to receive a single React element child.");return m}};return nt.Activity=B,nt.Children=lt,nt.Component=Z,nt.Fragment=h,nt.Profiler=s,nt.PureComponent=et,nt.StrictMode=c,nt.Suspense=z,nt.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=tt,nt.__COMPILER_RUNTIME={__proto__:null,c:function(m){return tt.H.useMemoCache(m)}},nt.cache=function(m){return function(){return m.apply(null,arguments)}},nt.cacheSignal=function(){return null},nt.cloneElement=function(m,_,w){if(m==null)throw Error("The argument must be a React element, but you passed "+m+".");var Y=N({},m.props),F=m.key;if(_!=null)for(at in _.key!==void 0&&(F=""+_.key),_)!Nt.call(_,at)||at==="key"||at==="__self"||at==="__source"||at==="ref"&&_.ref===void 0||(Y[at]=_[at]);var at=arguments.length-2;if(at===1)Y.children=w;else if(1<at){for(var rt=Array(at),Vt=0;Vt<at;Vt++)rt[Vt]=arguments[Vt+2];Y.children=rt}return R(m.type,F,Y)},nt.createContext=function(m){return m={$$typeof:E,_currentValue:m,_currentValue2:m,_threadCount:0,Provider:null,Consumer:null},m.Provider=m,m.Consumer={$$typeof:y,_context:m},m},nt.createElement=function(m,_,w){var Y,F={},at=null;if(_!=null)for(Y in _.key!==void 0&&(at=""+_.key),_)Nt.call(_,Y)&&Y!=="key"&&Y!=="__self"&&Y!=="__source"&&(F[Y]=_[Y]);var rt=arguments.length-2;if(rt===1)F.children=w;else if(1<rt){for(var Vt=Array(rt),Ut=0;Ut<rt;Ut++)Vt[Ut]=arguments[Ut+2];F.children=Vt}if(m&&m.defaultProps)for(Y in rt=m.defaultProps,rt)F[Y]===void 0&&(F[Y]=rt[Y]);return R(m,at,F)},nt.createRef=function(){return{current:null}},nt.forwardRef=function(m){return{$$typeof:p,render:m}},nt.isValidElement=xt,nt.lazy=function(m){return{$$typeof:G,_payload:{_status:-1,_result:m},_init:H}},nt.memo=function(m,_){return{$$typeof:v,type:m,compare:_===void 0?null:_}},nt.startTransition=function(m){var _=tt.T,w={};tt.T=w;try{var Y=m(),F=tt.S;F!==null&&F(w,Y),typeof Y=="object"&&Y!==null&&typeof Y.then=="function"&&Y.then(At,k)}catch(at){k(at)}finally{_!==null&&w.types!==null&&(_.types=w.types),tt.T=_}},nt.unstable_useCacheRefresh=function(){return tt.H.useCacheRefresh()},nt.use=function(m){return tt.H.use(m)},nt.useActionState=function(m,_,w){return tt.H.useActionState(m,_,w)},nt.useCallback=function(m,_){return tt.H.useCallback(m,_)},nt.useContext=function(m){return tt.H.useContext(m)},nt.useDebugValue=function(){},nt.useDeferredValue=function(m,_){return tt.H.useDeferredValue(m,_)},nt.useEffect=function(m,_){return tt.H.useEffect(m,_)},nt.useEffectEvent=function(m){return tt.H.useEffectEvent(m)},nt.useId=function(){return tt.H.useId()},nt.useImperativeHandle=function(m,_,w){return tt.H.useImperativeHandle(m,_,w)},nt.useInsertionEffect=function(m,_){return tt.H.useInsertionEffect(m,_)},nt.useLayoutEffect=function(m,_){return tt.H.useLayoutEffect(m,_)},nt.useMemo=function(m,_){return tt.H.useMemo(m,_)},nt.useOptimistic=function(m,_){return tt.H.useOptimistic(m,_)},nt.useReducer=function(m,_,w){return tt.H.useReducer(m,_,w)},nt.useRef=function(m){return tt.H.useRef(m)},nt.useState=function(m){return tt.H.useState(m)},nt.useSyncExternalStore=function(m,_,w){return tt.H.useSyncExternalStore(m,_,w)},nt.useTransition=function(){return tt.H.useTransition()},nt.version="19.2.1",nt}var $h;function Gf(){return $h||($h=1,Cf.exports=im()),Cf.exports}var c0=Gf();const st=am(c0);var Uf={exports:{}},Rn={},Hf={exports:{}},jf={};/** + * @license React + * scheduler.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var kh;function cm(){return kh||(kh=1,(function(f){function o(O,L){var H=O.length;O.push(L);t:for(;0<H;){var k=H-1>>>1,lt=O[k];if(0<s(lt,L))O[k]=L,O[H]=lt,H=k;else break t}}function h(O){return O.length===0?null:O[0]}function c(O){if(O.length===0)return null;var L=O[0],H=O.pop();if(H!==L){O[0]=H;t:for(var k=0,lt=O.length,m=lt>>>1;k<m;){var _=2*(k+1)-1,w=O[_],Y=_+1,F=O[Y];if(0>s(w,H))Y<lt&&0>s(F,w)?(O[k]=F,O[Y]=H,k=Y):(O[k]=w,O[_]=H,k=_);else if(Y<lt&&0>s(F,H))O[k]=F,O[Y]=H,k=Y;else break t}}return L}function s(O,L){var H=O.sortIndex-L.sortIndex;return H!==0?H:O.id-L.id}if(f.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var y=performance;f.unstable_now=function(){return y.now()}}else{var E=Date,p=E.now();f.unstable_now=function(){return E.now()-p}}var z=[],v=[],G=1,B=null,J=3,$=!1,Q=!1,N=!1,q=!1,Z=typeof setTimeout=="function"?setTimeout:null,P=typeof clearTimeout=="function"?clearTimeout:null,et=typeof setImmediate<"u"?setImmediate:null;function Rt(O){for(var L=h(v);L!==null;){if(L.callback===null)c(v);else if(L.startTime<=O)c(v),L.sortIndex=L.expirationTime,o(z,L);else break;L=h(v)}}function Lt(O){if(N=!1,Rt(O),!Q)if(h(z)!==null)Q=!0,At||(At=!0,j());else{var L=h(v);L!==null&>(Lt,L.startTime-O)}}var At=!1,tt=-1,Nt=5,R=-1;function Dt(){return q?!0:!(f.unstable_now()-R<Nt)}function xt(){if(q=!1,At){var O=f.unstable_now();R=O;var L=!0;try{t:{Q=!1,N&&(N=!1,P(tt),tt=-1),$=!0;var H=J;try{e:{for(Rt(O),B=h(z);B!==null&&!(B.expirationTime>O&&Dt());){var k=B.callback;if(typeof k=="function"){B.callback=null,J=B.priorityLevel;var lt=k(B.expirationTime<=O);if(O=f.unstable_now(),typeof lt=="function"){B.callback=lt,Rt(O),L=!0;break e}B===h(z)&&c(z),Rt(O)}else c(z);B=h(z)}if(B!==null)L=!0;else{var m=h(v);m!==null&>(Lt,m.startTime-O),L=!1}}break t}finally{B=null,J=H,$=!1}L=void 0}}finally{L?j():At=!1}}}var j;if(typeof et=="function")j=function(){et(xt)};else if(typeof MessageChannel<"u"){var I=new MessageChannel,_t=I.port2;I.port1.onmessage=xt,j=function(){_t.postMessage(null)}}else j=function(){Z(xt,0)};function gt(O,L){tt=Z(function(){O(f.unstable_now())},L)}f.unstable_IdlePriority=5,f.unstable_ImmediatePriority=1,f.unstable_LowPriority=4,f.unstable_NormalPriority=3,f.unstable_Profiling=null,f.unstable_UserBlockingPriority=2,f.unstable_cancelCallback=function(O){O.callback=null},f.unstable_forceFrameRate=function(O){0>O||125<O?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):Nt=0<O?Math.floor(1e3/O):5},f.unstable_getCurrentPriorityLevel=function(){return J},f.unstable_next=function(O){switch(J){case 1:case 2:case 3:var L=3;break;default:L=J}var H=J;J=L;try{return O()}finally{J=H}},f.unstable_requestPaint=function(){q=!0},f.unstable_runWithPriority=function(O,L){switch(O){case 1:case 2:case 3:case 4:case 5:break;default:O=3}var H=J;J=O;try{return L()}finally{J=H}},f.unstable_scheduleCallback=function(O,L,H){var k=f.unstable_now();switch(typeof H=="object"&&H!==null?(H=H.delay,H=typeof H=="number"&&0<H?k+H:k):H=k,O){case 1:var lt=-1;break;case 2:lt=250;break;case 5:lt=1073741823;break;case 4:lt=1e4;break;default:lt=5e3}return lt=H+lt,O={id:G++,callback:L,priorityLevel:O,startTime:H,expirationTime:lt,sortIndex:-1},H>k?(O.sortIndex=H,o(v,O),h(z)===null&&O===h(v)&&(N?(P(tt),tt=-1):N=!0,gt(Lt,H-k))):(O.sortIndex=lt,o(z,O),Q||$||(Q=!0,At||(At=!0,j()))),O},f.unstable_shouldYield=Dt,f.unstable_wrapCallback=function(O){var L=J;return function(){var H=J;J=L;try{return O.apply(this,arguments)}finally{J=H}}}})(jf)),jf}var Wh;function fm(){return Wh||(Wh=1,Hf.exports=cm()),Hf.exports}var Rf={exports:{}},le={};/** + * @license React + * react-dom.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Fh;function sm(){if(Fh)return le;Fh=1;var f=Gf();function o(z){var v="https://react.dev/errors/"+z;if(1<arguments.length){v+="?args[]="+encodeURIComponent(arguments[1]);for(var G=2;G<arguments.length;G++)v+="&args[]="+encodeURIComponent(arguments[G])}return"Minified React error #"+z+"; visit "+v+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function h(){}var c={d:{f:h,r:function(){throw Error(o(522))},D:h,C:h,L:h,m:h,X:h,S:h,M:h},p:0,findDOMNode:null},s=Symbol.for("react.portal");function y(z,v,G){var B=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:s,key:B==null?null:""+B,children:z,containerInfo:v,implementation:G}}var E=f.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function p(z,v){if(z==="font")return"";if(typeof v=="string")return v==="use-credentials"?v:""}return le.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=c,le.createPortal=function(z,v){var G=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!v||v.nodeType!==1&&v.nodeType!==9&&v.nodeType!==11)throw Error(o(299));return y(z,v,null,G)},le.flushSync=function(z){var v=E.T,G=c.p;try{if(E.T=null,c.p=2,z)return z()}finally{E.T=v,c.p=G,c.d.f()}},le.preconnect=function(z,v){typeof z=="string"&&(v?(v=v.crossOrigin,v=typeof v=="string"?v==="use-credentials"?v:"":void 0):v=null,c.d.C(z,v))},le.prefetchDNS=function(z){typeof z=="string"&&c.d.D(z)},le.preinit=function(z,v){if(typeof z=="string"&&v&&typeof v.as=="string"){var G=v.as,B=p(G,v.crossOrigin),J=typeof v.integrity=="string"?v.integrity:void 0,$=typeof v.fetchPriority=="string"?v.fetchPriority:void 0;G==="style"?c.d.S(z,typeof v.precedence=="string"?v.precedence:void 0,{crossOrigin:B,integrity:J,fetchPriority:$}):G==="script"&&c.d.X(z,{crossOrigin:B,integrity:J,fetchPriority:$,nonce:typeof v.nonce=="string"?v.nonce:void 0})}},le.preinitModule=function(z,v){if(typeof z=="string")if(typeof v=="object"&&v!==null){if(v.as==null||v.as==="script"){var G=p(v.as,v.crossOrigin);c.d.M(z,{crossOrigin:G,integrity:typeof v.integrity=="string"?v.integrity:void 0,nonce:typeof v.nonce=="string"?v.nonce:void 0})}}else v==null&&c.d.M(z)},le.preload=function(z,v){if(typeof z=="string"&&typeof v=="object"&&v!==null&&typeof v.as=="string"){var G=v.as,B=p(G,v.crossOrigin);c.d.L(z,G,{crossOrigin:B,integrity:typeof v.integrity=="string"?v.integrity:void 0,nonce:typeof v.nonce=="string"?v.nonce:void 0,type:typeof v.type=="string"?v.type:void 0,fetchPriority:typeof v.fetchPriority=="string"?v.fetchPriority:void 0,referrerPolicy:typeof v.referrerPolicy=="string"?v.referrerPolicy:void 0,imageSrcSet:typeof v.imageSrcSet=="string"?v.imageSrcSet:void 0,imageSizes:typeof v.imageSizes=="string"?v.imageSizes:void 0,media:typeof v.media=="string"?v.media:void 0})}},le.preloadModule=function(z,v){if(typeof z=="string")if(v){var G=p(v.as,v.crossOrigin);c.d.m(z,{as:typeof v.as=="string"&&v.as!=="script"?v.as:void 0,crossOrigin:G,integrity:typeof v.integrity=="string"?v.integrity:void 0})}else c.d.m(z)},le.requestFormReset=function(z){c.d.r(z)},le.unstable_batchedUpdates=function(z,v){return z(v)},le.useFormState=function(z,v,G){return E.H.useFormState(z,v,G)},le.useFormStatus=function(){return E.H.useHostTransitionStatus()},le.version="19.2.1",le}var Ih;function rm(){if(Ih)return Rf.exports;Ih=1;function f(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(f)}catch(o){console.error(o)}}return f(),Rf.exports=sm(),Rf.exports}/** + * @license React + * react-dom-client.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Ph;function om(){if(Ph)return Rn;Ph=1;var f=fm(),o=Gf(),h=rm();function c(t){var e="https://react.dev/errors/"+t;if(1<arguments.length){e+="?args[]="+encodeURIComponent(arguments[1]);for(var l=2;l<arguments.length;l++)e+="&args[]="+encodeURIComponent(arguments[l])}return"Minified React error #"+t+"; visit "+e+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function s(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function y(t){var e=t,l=t;if(t.alternate)for(;e.return;)e=e.return;else{t=e;do e=t,(e.flags&4098)!==0&&(l=e.return),t=e.return;while(t)}return e.tag===3?l:null}function E(t){if(t.tag===13){var e=t.memoizedState;if(e===null&&(t=t.alternate,t!==null&&(e=t.memoizedState)),e!==null)return e.dehydrated}return null}function p(t){if(t.tag===31){var e=t.memoizedState;if(e===null&&(t=t.alternate,t!==null&&(e=t.memoizedState)),e!==null)return e.dehydrated}return null}function z(t){if(y(t)!==t)throw Error(c(188))}function v(t){var e=t.alternate;if(!e){if(e=y(t),e===null)throw Error(c(188));return e!==t?null:t}for(var l=t,a=e;;){var n=l.return;if(n===null)break;var u=n.alternate;if(u===null){if(a=n.return,a!==null){l=a;continue}break}if(n.child===u.child){for(u=n.child;u;){if(u===l)return z(n),t;if(u===a)return z(n),e;u=u.sibling}throw Error(c(188))}if(l.return!==a.return)l=n,a=u;else{for(var i=!1,r=n.child;r;){if(r===l){i=!0,l=n,a=u;break}if(r===a){i=!0,a=n,l=u;break}r=r.sibling}if(!i){for(r=u.child;r;){if(r===l){i=!0,l=u,a=n;break}if(r===a){i=!0,a=u,l=n;break}r=r.sibling}if(!i)throw Error(c(189))}}if(l.alternate!==a)throw Error(c(190))}if(l.tag!==3)throw Error(c(188));return l.stateNode.current===l?t:e}function G(t){var e=t.tag;if(e===5||e===26||e===27||e===6)return t;for(t=t.child;t!==null;){if(e=G(t),e!==null)return e;t=t.sibling}return null}var B=Object.assign,J=Symbol.for("react.element"),$=Symbol.for("react.transitional.element"),Q=Symbol.for("react.portal"),N=Symbol.for("react.fragment"),q=Symbol.for("react.strict_mode"),Z=Symbol.for("react.profiler"),P=Symbol.for("react.consumer"),et=Symbol.for("react.context"),Rt=Symbol.for("react.forward_ref"),Lt=Symbol.for("react.suspense"),At=Symbol.for("react.suspense_list"),tt=Symbol.for("react.memo"),Nt=Symbol.for("react.lazy"),R=Symbol.for("react.activity"),Dt=Symbol.for("react.memo_cache_sentinel"),xt=Symbol.iterator;function j(t){return t===null||typeof t!="object"?null:(t=xt&&t[xt]||t["@@iterator"],typeof t=="function"?t:null)}var I=Symbol.for("react.client.reference");function _t(t){if(t==null)return null;if(typeof t=="function")return t.$$typeof===I?null:t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case N:return"Fragment";case Z:return"Profiler";case q:return"StrictMode";case Lt:return"Suspense";case At:return"SuspenseList";case R:return"Activity"}if(typeof t=="object")switch(t.$$typeof){case Q:return"Portal";case et:return t.displayName||"Context";case P:return(t._context.displayName||"Context")+".Consumer";case Rt:var e=t.render;return t=t.displayName,t||(t=e.displayName||e.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case tt:return e=t.displayName||null,e!==null?e:_t(t.type)||"Memo";case Nt:e=t._payload,t=t._init;try{return _t(t(e))}catch{}}return null}var gt=Array.isArray,O=o.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,L=h.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,H={pending:!1,data:null,method:null,action:null},k=[],lt=-1;function m(t){return{current:t}}function _(t){0>lt||(t.current=k[lt],k[lt]=null,lt--)}function w(t,e){lt++,k[lt]=t.current,t.current=e}var Y=m(null),F=m(null),at=m(null),rt=m(null);function Vt(t,e){switch(w(at,e),w(F,t),w(Y,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?mh(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=mh(e),t=vh(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}_(Y),w(Y,t)}function Ut(){_(Y),_(F),_(at)}function Cl(t){t.memoizedState!==null&&w(rt,t);var e=Y.current,l=vh(e,t.type);e!==l&&(w(F,t),w(Y,l))}function wn(t){F.current===t&&(_(Y),_(F)),rt.current===t&&(_(rt),Dn._currentValue=H)}var oi,Xf;function Ul(t){if(oi===void 0)try{throw Error()}catch(l){var e=l.stack.trim().match(/\n( *(at )?)/);oi=e&&e[1]||"",Xf=-1<l.stack.indexOf(` + at`)?" (<anonymous>)":-1<l.stack.indexOf("@")?"@unknown:0:0":""}return` +`+oi+t+Xf}var hi=!1;function di(t,e){if(!t||hi)return"";hi=!0;var l=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var a={DetermineComponentFrameRoot:function(){try{if(e){var C=function(){throw Error()};if(Object.defineProperty(C.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(C,[])}catch(A){var x=A}Reflect.construct(t,[],C)}else{try{C.call()}catch(A){x=A}t.call(C.prototype)}}else{try{throw Error()}catch(A){x=A}(C=t())&&typeof C.catch=="function"&&C.catch(function(){})}}catch(A){if(A&&x&&typeof A.stack=="string")return[A.stack,x.stack]}return[null,null]}};a.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var n=Object.getOwnPropertyDescriptor(a.DetermineComponentFrameRoot,"name");n&&n.configurable&&Object.defineProperty(a.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var u=a.DetermineComponentFrameRoot(),i=u[0],r=u[1];if(i&&r){var d=i.split(` +`),b=r.split(` +`);for(n=a=0;a<d.length&&!d[a].includes("DetermineComponentFrameRoot");)a++;for(;n<b.length&&!b[n].includes("DetermineComponentFrameRoot");)n++;if(a===d.length||n===b.length)for(a=d.length-1,n=b.length-1;1<=a&&0<=n&&d[a]!==b[n];)n--;for(;1<=a&&0<=n;a--,n--)if(d[a]!==b[n]){if(a!==1||n!==1)do if(a--,n--,0>n||d[a]!==b[n]){var M=` +`+d[a].replace(" at new "," at ");return t.displayName&&M.includes("<anonymous>")&&(M=M.replace("<anonymous>",t.displayName)),M}while(1<=a&&0<=n);break}}}finally{hi=!1,Error.prepareStackTrace=l}return(l=t?t.displayName||t.name:"")?Ul(l):""}function j0(t,e){switch(t.tag){case 26:case 27:case 5:return Ul(t.type);case 16:return Ul("Lazy");case 13:return t.child!==e&&e!==null?Ul("Suspense Fallback"):Ul("Suspense");case 19:return Ul("SuspenseList");case 0:case 15:return di(t.type,!1);case 11:return di(t.type.render,!1);case 1:return di(t.type,!0);case 31:return Ul("Activity");default:return""}}function Zf(t){try{var e="",l=null;do e+=j0(t,l),l=t,t=t.return;while(t);return e}catch(a){return` +Error generating stack: `+a.message+` +`+a.stack}}var mi=Object.prototype.hasOwnProperty,vi=f.unstable_scheduleCallback,gi=f.unstable_cancelCallback,R0=f.unstable_shouldYield,q0=f.unstable_requestPaint,me=f.unstable_now,B0=f.unstable_getCurrentPriorityLevel,Vf=f.unstable_ImmediatePriority,Jf=f.unstable_UserBlockingPriority,Ln=f.unstable_NormalPriority,w0=f.unstable_LowPriority,Kf=f.unstable_IdlePriority,L0=f.log,Y0=f.unstable_setDisableYieldValue,Ga=null,ve=null;function il(t){if(typeof L0=="function"&&Y0(t),ve&&typeof ve.setStrictMode=="function")try{ve.setStrictMode(Ga,t)}catch{}}var ge=Math.clz32?Math.clz32:X0,G0=Math.log,Q0=Math.LN2;function X0(t){return t>>>=0,t===0?32:31-(G0(t)/Q0|0)|0}var Yn=256,Gn=262144,Qn=4194304;function Hl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Xn(t,e,l){var a=t.pendingLanes;if(a===0)return 0;var n=0,u=t.suspendedLanes,i=t.pingedLanes;t=t.warmLanes;var r=a&134217727;return r!==0?(a=r&~u,a!==0?n=Hl(a):(i&=r,i!==0?n=Hl(i):l||(l=r&~t,l!==0&&(n=Hl(l))))):(r=a&~u,r!==0?n=Hl(r):i!==0?n=Hl(i):l||(l=a&~t,l!==0&&(n=Hl(l)))),n===0?0:e!==0&&e!==n&&(e&u)===0&&(u=n&-n,l=e&-e,u>=l||u===32&&(l&4194048)!==0)?e:n}function Qa(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function Z0(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function $f(){var t=Qn;return Qn<<=1,(Qn&62914560)===0&&(Qn=4194304),t}function yi(t){for(var e=[],l=0;31>l;l++)e.push(t);return e}function Xa(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function V0(t,e,l,a,n,u){var i=t.pendingLanes;t.pendingLanes=l,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=l,t.entangledLanes&=l,t.errorRecoveryDisabledLanes&=l,t.shellSuspendCounter=0;var r=t.entanglements,d=t.expirationTimes,b=t.hiddenUpdates;for(l=i&~l;0<l;){var M=31-ge(l),C=1<<M;r[M]=0,d[M]=-1;var x=b[M];if(x!==null)for(b[M]=null,M=0;M<x.length;M++){var A=x[M];A!==null&&(A.lane&=-536870913)}l&=~C}a!==0&&kf(t,a,0),u!==0&&n===0&&t.tag!==0&&(t.suspendedLanes|=u&~(i&~e))}function kf(t,e,l){t.pendingLanes|=e,t.suspendedLanes&=~e;var a=31-ge(e);t.entangledLanes|=e,t.entanglements[a]=t.entanglements[a]|1073741824|l&261930}function Wf(t,e){var l=t.entangledLanes|=e;for(t=t.entanglements;l;){var a=31-ge(l),n=1<<a;n&e|t[a]&e&&(t[a]|=e),l&=~n}}function Ff(t,e){var l=e&-e;return l=(l&42)!==0?1:Si(l),(l&(t.suspendedLanes|e))!==0?0:l}function Si(t){switch(t){case 2:t=1;break;case 8:t=4;break;case 32:t=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:t=128;break;case 268435456:t=134217728;break;default:t=0}return t}function pi(t){return t&=-t,2<t?8<t?(t&134217727)!==0?32:268435456:8:2}function If(){var t=L.p;return t!==0?t:(t=window.event,t===void 0?32:wh(t.type))}function Pf(t,e){var l=L.p;try{return L.p=t,e()}finally{L.p=l}}var cl=Math.random().toString(36).slice(2),Wt="__reactFiber$"+cl,ue="__reactProps$"+cl,Il="__reactContainer$"+cl,Ti="__reactEvents$"+cl,J0="__reactListeners$"+cl,K0="__reactHandles$"+cl,ts="__reactResources$"+cl,Za="__reactMarker$"+cl;function bi(t){delete t[Wt],delete t[ue],delete t[Ti],delete t[J0],delete t[K0]}function Pl(t){var e=t[Wt];if(e)return e;for(var l=t.parentNode;l;){if(e=l[Il]||l[Wt]){if(l=e.alternate,e.child!==null||l!==null&&l.child!==null)for(t=Eh(t);t!==null;){if(l=t[Wt])return l;t=Eh(t)}return e}t=l,l=t.parentNode}return null}function ta(t){if(t=t[Wt]||t[Il]){var e=t.tag;if(e===5||e===6||e===13||e===31||e===26||e===27||e===3)return t}return null}function Va(t){var e=t.tag;if(e===5||e===26||e===27||e===6)return t.stateNode;throw Error(c(33))}function ea(t){var e=t[ts];return e||(e=t[ts]={hoistableStyles:new Map,hoistableScripts:new Map}),e}function $t(t){t[Za]=!0}var es=new Set,ls={};function jl(t,e){la(t,e),la(t+"Capture",e)}function la(t,e){for(ls[t]=e,t=0;t<e.length;t++)es.add(e[t])}var $0=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),as={},ns={};function k0(t){return mi.call(ns,t)?!0:mi.call(as,t)?!1:$0.test(t)?ns[t]=!0:(as[t]=!0,!1)}function Zn(t,e,l){if(k0(e))if(l===null)t.removeAttribute(e);else{switch(typeof l){case"undefined":case"function":case"symbol":t.removeAttribute(e);return;case"boolean":var a=e.toLowerCase().slice(0,5);if(a!=="data-"&&a!=="aria-"){t.removeAttribute(e);return}}t.setAttribute(e,""+l)}}function Vn(t,e,l){if(l===null)t.removeAttribute(e);else{switch(typeof l){case"undefined":case"function":case"symbol":case"boolean":t.removeAttribute(e);return}t.setAttribute(e,""+l)}}function Ge(t,e,l,a){if(a===null)t.removeAttribute(l);else{switch(typeof a){case"undefined":case"function":case"symbol":case"boolean":t.removeAttribute(l);return}t.setAttributeNS(e,l,""+a)}}function ze(t){switch(typeof t){case"bigint":case"boolean":case"number":case"string":case"undefined":return t;case"object":return t;default:return""}}function us(t){var e=t.type;return(t=t.nodeName)&&t.toLowerCase()==="input"&&(e==="checkbox"||e==="radio")}function W0(t,e,l){var a=Object.getOwnPropertyDescriptor(t.constructor.prototype,e);if(!t.hasOwnProperty(e)&&typeof a<"u"&&typeof a.get=="function"&&typeof a.set=="function"){var n=a.get,u=a.set;return Object.defineProperty(t,e,{configurable:!0,get:function(){return n.call(this)},set:function(i){l=""+i,u.call(this,i)}}),Object.defineProperty(t,e,{enumerable:a.enumerable}),{getValue:function(){return l},setValue:function(i){l=""+i},stopTracking:function(){t._valueTracker=null,delete t[e]}}}}function Ei(t){if(!t._valueTracker){var e=us(t)?"checked":"value";t._valueTracker=W0(t,e,""+t[e])}}function is(t){if(!t)return!1;var e=t._valueTracker;if(!e)return!0;var l=e.getValue(),a="";return t&&(a=us(t)?t.checked?"true":"false":t.value),t=a,t!==l?(e.setValue(t),!0):!1}function Jn(t){if(t=t||(typeof document<"u"?document:void 0),typeof t>"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var F0=/[\n"\\]/g;function Ae(t){return t.replace(F0,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function xi(t,e,l,a,n,u,i,r){t.name="",i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"?t.type=i:t.removeAttribute("type"),e!=null?i==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+ze(e)):t.value!==""+ze(e)&&(t.value=""+ze(e)):i!=="submit"&&i!=="reset"||t.removeAttribute("value"),e!=null?zi(t,i,ze(e)):l!=null?zi(t,i,ze(l)):a!=null&&t.removeAttribute("value"),n==null&&u!=null&&(t.defaultChecked=!!u),n!=null&&(t.checked=n&&typeof n!="function"&&typeof n!="symbol"),r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?t.name=""+ze(r):t.removeAttribute("name")}function cs(t,e,l,a,n,u,i,r){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(t.type=u),e!=null||l!=null){if(!(u!=="submit"&&u!=="reset"||e!=null)){Ei(t);return}l=l!=null?""+ze(l):"",e=e!=null?""+ze(e):l,r||e===t.value||(t.value=e),t.defaultValue=e}a=a??n,a=typeof a!="function"&&typeof a!="symbol"&&!!a,t.checked=r?t.checked:!!a,t.defaultChecked=!!a,i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"&&(t.name=i),Ei(t)}function zi(t,e,l){e==="number"&&Jn(t.ownerDocument)===t||t.defaultValue===""+l||(t.defaultValue=""+l)}function aa(t,e,l,a){if(t=t.options,e){e={};for(var n=0;n<l.length;n++)e["$"+l[n]]=!0;for(l=0;l<t.length;l++)n=e.hasOwnProperty("$"+t[l].value),t[l].selected!==n&&(t[l].selected=n),n&&a&&(t[l].defaultSelected=!0)}else{for(l=""+ze(l),e=null,n=0;n<t.length;n++){if(t[n].value===l){t[n].selected=!0,a&&(t[n].defaultSelected=!0);return}e!==null||t[n].disabled||(e=t[n])}e!==null&&(e.selected=!0)}}function fs(t,e,l){if(e!=null&&(e=""+ze(e),e!==t.value&&(t.value=e),l==null)){t.defaultValue!==e&&(t.defaultValue=e);return}t.defaultValue=l!=null?""+ze(l):""}function ss(t,e,l,a){if(e==null){if(a!=null){if(l!=null)throw Error(c(92));if(gt(a)){if(1<a.length)throw Error(c(93));a=a[0]}l=a}l==null&&(l=""),e=l}l=ze(e),t.defaultValue=l,a=t.textContent,a===l&&a!==""&&a!==null&&(t.value=a),Ei(t)}function na(t,e){if(e){var l=t.firstChild;if(l&&l===t.lastChild&&l.nodeType===3){l.nodeValue=e;return}}t.textContent=e}var I0=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function rs(t,e,l){var a=e.indexOf("--")===0;l==null||typeof l=="boolean"||l===""?a?t.setProperty(e,""):e==="float"?t.cssFloat="":t[e]="":a?t.setProperty(e,l):typeof l!="number"||l===0||I0.has(e)?e==="float"?t.cssFloat=l:t[e]=(""+l).trim():t[e]=l+"px"}function os(t,e,l){if(e!=null&&typeof e!="object")throw Error(c(62));if(t=t.style,l!=null){for(var a in l)!l.hasOwnProperty(a)||e!=null&&e.hasOwnProperty(a)||(a.indexOf("--")===0?t.setProperty(a,""):a==="float"?t.cssFloat="":t[a]="");for(var n in e)a=e[n],e.hasOwnProperty(n)&&l[n]!==a&&rs(t,n,a)}else for(var u in e)e.hasOwnProperty(u)&&rs(t,u,e[u])}function Ai(t){if(t.indexOf("-")===-1)return!1;switch(t){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var P0=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),td=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function Kn(t){return td.test(""+t)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":t}function Qe(){}var _i=null;function Oi(t){return t=t.target||t.srcElement||window,t.correspondingUseElement&&(t=t.correspondingUseElement),t.nodeType===3?t.parentNode:t}var ua=null,ia=null;function hs(t){var e=ta(t);if(e&&(t=e.stateNode)){var l=t[ue]||null;t:switch(t=e.stateNode,e.type){case"input":if(xi(t,l.value,l.defaultValue,l.defaultValue,l.checked,l.defaultChecked,l.type,l.name),e=l.name,l.type==="radio"&&e!=null){for(l=t;l.parentNode;)l=l.parentNode;for(l=l.querySelectorAll('input[name="'+Ae(""+e)+'"][type="radio"]'),e=0;e<l.length;e++){var a=l[e];if(a!==t&&a.form===t.form){var n=a[ue]||null;if(!n)throw Error(c(90));xi(a,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name)}}for(e=0;e<l.length;e++)a=l[e],a.form===t.form&&is(a)}break t;case"textarea":fs(t,l.value,l.defaultValue);break t;case"select":e=l.value,e!=null&&aa(t,!!l.multiple,e,!1)}}}var Mi=!1;function ds(t,e,l){if(Mi)return t(e,l);Mi=!0;try{var a=t(e);return a}finally{if(Mi=!1,(ua!==null||ia!==null)&&(ju(),ua&&(e=ua,t=ia,ia=ua=null,hs(e),t)))for(e=0;e<t.length;e++)hs(t[e])}}function Ja(t,e){var l=t.stateNode;if(l===null)return null;var a=l[ue]||null;if(a===null)return null;l=a[e];t:switch(e){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(a=!a.disabled)||(t=t.type,a=!(t==="button"||t==="input"||t==="select"||t==="textarea")),t=!a;break t;default:t=!1}if(t)return null;if(l&&typeof l!="function")throw Error(c(231,e,typeof l));return l}var Xe=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ni=!1;if(Xe)try{var Ka={};Object.defineProperty(Ka,"passive",{get:function(){Ni=!0}}),window.addEventListener("test",Ka,Ka),window.removeEventListener("test",Ka,Ka)}catch{Ni=!1}var fl=null,Di=null,$n=null;function ms(){if($n)return $n;var t,e=Di,l=e.length,a,n="value"in fl?fl.value:fl.textContent,u=n.length;for(t=0;t<l&&e[t]===n[t];t++);var i=l-t;for(a=1;a<=i&&e[l-a]===n[u-a];a++);return $n=n.slice(t,1<a?1-a:void 0)}function kn(t){var e=t.keyCode;return"charCode"in t?(t=t.charCode,t===0&&e===13&&(t=13)):t=e,t===10&&(t=13),32<=t||t===13?t:0}function Wn(){return!0}function vs(){return!1}function ie(t){function e(l,a,n,u,i){this._reactName=l,this._targetInst=n,this.type=a,this.nativeEvent=u,this.target=i,this.currentTarget=null;for(var r in t)t.hasOwnProperty(r)&&(l=t[r],this[r]=l?l(u):u[r]);return this.isDefaultPrevented=(u.defaultPrevented!=null?u.defaultPrevented:u.returnValue===!1)?Wn:vs,this.isPropagationStopped=vs,this}return B(e.prototype,{preventDefault:function(){this.defaultPrevented=!0;var l=this.nativeEvent;l&&(l.preventDefault?l.preventDefault():typeof l.returnValue!="unknown"&&(l.returnValue=!1),this.isDefaultPrevented=Wn)},stopPropagation:function(){var l=this.nativeEvent;l&&(l.stopPropagation?l.stopPropagation():typeof l.cancelBubble!="unknown"&&(l.cancelBubble=!0),this.isPropagationStopped=Wn)},persist:function(){},isPersistent:Wn}),e}var Rl={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(t){return t.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Fn=ie(Rl),$a=B({},Rl,{view:0,detail:0}),ed=ie($a),Ci,Ui,ka,In=B({},$a,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:ji,button:0,buttons:0,relatedTarget:function(t){return t.relatedTarget===void 0?t.fromElement===t.srcElement?t.toElement:t.fromElement:t.relatedTarget},movementX:function(t){return"movementX"in t?t.movementX:(t!==ka&&(ka&&t.type==="mousemove"?(Ci=t.screenX-ka.screenX,Ui=t.screenY-ka.screenY):Ui=Ci=0,ka=t),Ci)},movementY:function(t){return"movementY"in t?t.movementY:Ui}}),gs=ie(In),ld=B({},In,{dataTransfer:0}),ad=ie(ld),nd=B({},$a,{relatedTarget:0}),Hi=ie(nd),ud=B({},Rl,{animationName:0,elapsedTime:0,pseudoElement:0}),id=ie(ud),cd=B({},Rl,{clipboardData:function(t){return"clipboardData"in t?t.clipboardData:window.clipboardData}}),fd=ie(cd),sd=B({},Rl,{data:0}),ys=ie(sd),rd={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},od={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},hd={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function dd(t){var e=this.nativeEvent;return e.getModifierState?e.getModifierState(t):(t=hd[t])?!!e[t]:!1}function ji(){return dd}var md=B({},$a,{key:function(t){if(t.key){var e=rd[t.key]||t.key;if(e!=="Unidentified")return e}return t.type==="keypress"?(t=kn(t),t===13?"Enter":String.fromCharCode(t)):t.type==="keydown"||t.type==="keyup"?od[t.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:ji,charCode:function(t){return t.type==="keypress"?kn(t):0},keyCode:function(t){return t.type==="keydown"||t.type==="keyup"?t.keyCode:0},which:function(t){return t.type==="keypress"?kn(t):t.type==="keydown"||t.type==="keyup"?t.keyCode:0}}),vd=ie(md),gd=B({},In,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Ss=ie(gd),yd=B({},$a,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:ji}),Sd=ie(yd),pd=B({},Rl,{propertyName:0,elapsedTime:0,pseudoElement:0}),Td=ie(pd),bd=B({},In,{deltaX:function(t){return"deltaX"in t?t.deltaX:"wheelDeltaX"in t?-t.wheelDeltaX:0},deltaY:function(t){return"deltaY"in t?t.deltaY:"wheelDeltaY"in t?-t.wheelDeltaY:"wheelDelta"in t?-t.wheelDelta:0},deltaZ:0,deltaMode:0}),Ed=ie(bd),xd=B({},Rl,{newState:0,oldState:0}),zd=ie(xd),Ad=[9,13,27,32],Ri=Xe&&"CompositionEvent"in window,Wa=null;Xe&&"documentMode"in document&&(Wa=document.documentMode);var _d=Xe&&"TextEvent"in window&&!Wa,ps=Xe&&(!Ri||Wa&&8<Wa&&11>=Wa),Ts=" ",bs=!1;function Es(t,e){switch(t){case"keyup":return Ad.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function xs(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var ca=!1;function Od(t,e){switch(t){case"compositionend":return xs(e);case"keypress":return e.which!==32?null:(bs=!0,Ts);case"textInput":return t=e.data,t===Ts&&bs?null:t;default:return null}}function Md(t,e){if(ca)return t==="compositionend"||!Ri&&Es(t,e)?(t=ms(),$n=Di=fl=null,ca=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1<e.char.length)return e.char;if(e.which)return String.fromCharCode(e.which)}return null;case"compositionend":return ps&&e.locale!=="ko"?null:e.data;default:return null}}var Nd={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function zs(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e==="input"?!!Nd[t.type]:e==="textarea"}function As(t,e,l,a){ua?ia?ia.push(a):ia=[a]:ua=a,e=Gu(e,"onChange"),0<e.length&&(l=new Fn("onChange","change",null,l,a),t.push({event:l,listeners:e}))}var Fa=null,Ia=null;function Dd(t){fh(t,0)}function Pn(t){var e=Va(t);if(is(e))return t}function _s(t,e){if(t==="change")return e}var Os=!1;if(Xe){var qi;if(Xe){var Bi="oninput"in document;if(!Bi){var Ms=document.createElement("div");Ms.setAttribute("oninput","return;"),Bi=typeof Ms.oninput=="function"}qi=Bi}else qi=!1;Os=qi&&(!document.documentMode||9<document.documentMode)}function Ns(){Fa&&(Fa.detachEvent("onpropertychange",Ds),Ia=Fa=null)}function Ds(t){if(t.propertyName==="value"&&Pn(Ia)){var e=[];As(e,Ia,t,Oi(t)),ds(Dd,e)}}function Cd(t,e,l){t==="focusin"?(Ns(),Fa=e,Ia=l,Fa.attachEvent("onpropertychange",Ds)):t==="focusout"&&Ns()}function Ud(t){if(t==="selectionchange"||t==="keyup"||t==="keydown")return Pn(Ia)}function Hd(t,e){if(t==="click")return Pn(e)}function jd(t,e){if(t==="input"||t==="change")return Pn(e)}function Rd(t,e){return t===e&&(t!==0||1/t===1/e)||t!==t&&e!==e}var ye=typeof Object.is=="function"?Object.is:Rd;function Pa(t,e){if(ye(t,e))return!0;if(typeof t!="object"||t===null||typeof e!="object"||e===null)return!1;var l=Object.keys(t),a=Object.keys(e);if(l.length!==a.length)return!1;for(a=0;a<l.length;a++){var n=l[a];if(!mi.call(e,n)||!ye(t[n],e[n]))return!1}return!0}function Cs(t){for(;t&&t.firstChild;)t=t.firstChild;return t}function Us(t,e){var l=Cs(t);t=0;for(var a;l;){if(l.nodeType===3){if(a=t+l.textContent.length,t<=e&&a>=e)return{node:l,offset:e-t};t=a}t:{for(;l;){if(l.nextSibling){l=l.nextSibling;break t}l=l.parentNode}l=void 0}l=Cs(l)}}function Hs(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?Hs(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function js(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=Jn(t.document);e instanceof t.HTMLIFrameElement;){try{var l=typeof e.contentWindow.location.href=="string"}catch{l=!1}if(l)t=e.contentWindow;else break;e=Jn(t.document)}return e}function wi(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var qd=Xe&&"documentMode"in document&&11>=document.documentMode,fa=null,Li=null,tn=null,Yi=!1;function Rs(t,e,l){var a=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;Yi||fa==null||fa!==Jn(a)||(a=fa,"selectionStart"in a&&wi(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),tn&&Pa(tn,a)||(tn=a,a=Gu(Li,"onSelect"),0<a.length&&(e=new Fn("onSelect","select",null,e,l),t.push({event:e,listeners:a}),e.target=fa)))}function ql(t,e){var l={};return l[t.toLowerCase()]=e.toLowerCase(),l["Webkit"+t]="webkit"+e,l["Moz"+t]="moz"+e,l}var sa={animationend:ql("Animation","AnimationEnd"),animationiteration:ql("Animation","AnimationIteration"),animationstart:ql("Animation","AnimationStart"),transitionrun:ql("Transition","TransitionRun"),transitionstart:ql("Transition","TransitionStart"),transitioncancel:ql("Transition","TransitionCancel"),transitionend:ql("Transition","TransitionEnd")},Gi={},qs={};Xe&&(qs=document.createElement("div").style,"AnimationEvent"in window||(delete sa.animationend.animation,delete sa.animationiteration.animation,delete sa.animationstart.animation),"TransitionEvent"in window||delete sa.transitionend.transition);function Bl(t){if(Gi[t])return Gi[t];if(!sa[t])return t;var e=sa[t],l;for(l in e)if(e.hasOwnProperty(l)&&l in qs)return Gi[t]=e[l];return t}var Bs=Bl("animationend"),ws=Bl("animationiteration"),Ls=Bl("animationstart"),Bd=Bl("transitionrun"),wd=Bl("transitionstart"),Ld=Bl("transitioncancel"),Ys=Bl("transitionend"),Gs=new Map,Qi="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");Qi.push("scrollEnd");function je(t,e){Gs.set(t,e),jl(e,[t])}var tu=typeof reportError=="function"?reportError:function(t){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var e=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof t=="object"&&t!==null&&typeof t.message=="string"?String(t.message):String(t),error:t});if(!window.dispatchEvent(e))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",t);return}console.error(t)},_e=[],ra=0,Xi=0;function eu(){for(var t=ra,e=Xi=ra=0;e<t;){var l=_e[e];_e[e++]=null;var a=_e[e];_e[e++]=null;var n=_e[e];_e[e++]=null;var u=_e[e];if(_e[e++]=null,a!==null&&n!==null){var i=a.pending;i===null?n.next=n:(n.next=i.next,i.next=n),a.pending=n}u!==0&&Qs(l,n,u)}}function lu(t,e,l,a){_e[ra++]=t,_e[ra++]=e,_e[ra++]=l,_e[ra++]=a,Xi|=a,t.lanes|=a,t=t.alternate,t!==null&&(t.lanes|=a)}function Zi(t,e,l,a){return lu(t,e,l,a),au(t)}function wl(t,e){return lu(t,null,null,e),au(t)}function Qs(t,e,l){t.lanes|=l;var a=t.alternate;a!==null&&(a.lanes|=l);for(var n=!1,u=t.return;u!==null;)u.childLanes|=l,a=u.alternate,a!==null&&(a.childLanes|=l),u.tag===22&&(t=u.stateNode,t===null||t._visibility&1||(n=!0)),t=u,u=u.return;return t.tag===3?(u=t.stateNode,n&&e!==null&&(n=31-ge(l),t=u.hiddenUpdates,a=t[n],a===null?t[n]=[e]:a.push(e),e.lane=l|536870912),u):null}function au(t){if(50<xn)throw xn=0,Pc=null,Error(c(185));for(var e=t.return;e!==null;)t=e,e=t.return;return t.tag===3?t.stateNode:null}var oa={};function Yd(t,e,l,a){this.tag=t,this.key=l,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=e,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=a,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Se(t,e,l,a){return new Yd(t,e,l,a)}function Vi(t){return t=t.prototype,!(!t||!t.isReactComponent)}function Ze(t,e){var l=t.alternate;return l===null?(l=Se(t.tag,e,t.key,t.mode),l.elementType=t.elementType,l.type=t.type,l.stateNode=t.stateNode,l.alternate=t,t.alternate=l):(l.pendingProps=e,l.type=t.type,l.flags=0,l.subtreeFlags=0,l.deletions=null),l.flags=t.flags&65011712,l.childLanes=t.childLanes,l.lanes=t.lanes,l.child=t.child,l.memoizedProps=t.memoizedProps,l.memoizedState=t.memoizedState,l.updateQueue=t.updateQueue,e=t.dependencies,l.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext},l.sibling=t.sibling,l.index=t.index,l.ref=t.ref,l.refCleanup=t.refCleanup,l}function Xs(t,e){t.flags&=65011714;var l=t.alternate;return l===null?(t.childLanes=0,t.lanes=e,t.child=null,t.subtreeFlags=0,t.memoizedProps=null,t.memoizedState=null,t.updateQueue=null,t.dependencies=null,t.stateNode=null):(t.childLanes=l.childLanes,t.lanes=l.lanes,t.child=l.child,t.subtreeFlags=0,t.deletions=null,t.memoizedProps=l.memoizedProps,t.memoizedState=l.memoizedState,t.updateQueue=l.updateQueue,t.type=l.type,e=l.dependencies,t.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),t}function nu(t,e,l,a,n,u){var i=0;if(a=t,typeof t=="function")Vi(t)&&(i=1);else if(typeof t=="string")i=V1(t,l,Y.current)?26:t==="html"||t==="head"||t==="body"?27:5;else t:switch(t){case R:return t=Se(31,l,e,n),t.elementType=R,t.lanes=u,t;case N:return Ll(l.children,n,u,e);case q:i=8,n|=24;break;case Z:return t=Se(12,l,e,n|2),t.elementType=Z,t.lanes=u,t;case Lt:return t=Se(13,l,e,n),t.elementType=Lt,t.lanes=u,t;case At:return t=Se(19,l,e,n),t.elementType=At,t.lanes=u,t;default:if(typeof t=="object"&&t!==null)switch(t.$$typeof){case et:i=10;break t;case P:i=9;break t;case Rt:i=11;break t;case tt:i=14;break t;case Nt:i=16,a=null;break t}i=29,l=Error(c(130,t===null?"null":typeof t,"")),a=null}return e=Se(i,l,e,n),e.elementType=t,e.type=a,e.lanes=u,e}function Ll(t,e,l,a){return t=Se(7,t,a,e),t.lanes=l,t}function Ji(t,e,l){return t=Se(6,t,null,e),t.lanes=l,t}function Zs(t){var e=Se(18,null,null,0);return e.stateNode=t,e}function Ki(t,e,l){return e=Se(4,t.children!==null?t.children:[],t.key,e),e.lanes=l,e.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},e}var Vs=new WeakMap;function Oe(t,e){if(typeof t=="object"&&t!==null){var l=Vs.get(t);return l!==void 0?l:(e={value:t,source:e,stack:Zf(e)},Vs.set(t,e),e)}return{value:t,source:e,stack:Zf(e)}}var ha=[],da=0,uu=null,en=0,Me=[],Ne=0,sl=null,Be=1,we="";function Ve(t,e){ha[da++]=en,ha[da++]=uu,uu=t,en=e}function Js(t,e,l){Me[Ne++]=Be,Me[Ne++]=we,Me[Ne++]=sl,sl=t;var a=Be;t=we;var n=32-ge(a)-1;a&=~(1<<n),l+=1;var u=32-ge(e)+n;if(30<u){var i=n-n%5;u=(a&(1<<i)-1).toString(32),a>>=i,n-=i,Be=1<<32-ge(e)+n|l<<n|a,we=u+t}else Be=1<<u|l<<n|a,we=t}function $i(t){t.return!==null&&(Ve(t,1),Js(t,1,0))}function ki(t){for(;t===uu;)uu=ha[--da],ha[da]=null,en=ha[--da],ha[da]=null;for(;t===sl;)sl=Me[--Ne],Me[Ne]=null,we=Me[--Ne],Me[Ne]=null,Be=Me[--Ne],Me[Ne]=null}function Ks(t,e){Me[Ne++]=Be,Me[Ne++]=we,Me[Ne++]=sl,Be=e.id,we=e.overflow,sl=t}var Ft=null,Ot=null,dt=!1,rl=null,De=!1,Wi=Error(c(519));function ol(t){var e=Error(c(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw ln(Oe(e,t)),Wi}function $s(t){var e=t.stateNode,l=t.type,a=t.memoizedProps;switch(e[Wt]=t,e[ue]=a,l){case"dialog":ft("cancel",e),ft("close",e);break;case"iframe":case"object":case"embed":ft("load",e);break;case"video":case"audio":for(l=0;l<An.length;l++)ft(An[l],e);break;case"source":ft("error",e);break;case"img":case"image":case"link":ft("error",e),ft("load",e);break;case"details":ft("toggle",e);break;case"input":ft("invalid",e),cs(e,a.value,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name,!0);break;case"select":ft("invalid",e);break;case"textarea":ft("invalid",e),ss(e,a.value,a.defaultValue,a.children)}l=a.children,typeof l!="string"&&typeof l!="number"&&typeof l!="bigint"||e.textContent===""+l||a.suppressHydrationWarning===!0||hh(e.textContent,l)?(a.popover!=null&&(ft("beforetoggle",e),ft("toggle",e)),a.onScroll!=null&&ft("scroll",e),a.onScrollEnd!=null&&ft("scrollend",e),a.onClick!=null&&(e.onclick=Qe),e=!0):e=!1,e||ol(t,!0)}function ks(t){for(Ft=t.return;Ft;)switch(Ft.tag){case 5:case 31:case 13:De=!1;return;case 27:case 3:De=!0;return;default:Ft=Ft.return}}function ma(t){if(t!==Ft)return!1;if(!dt)return ks(t),dt=!0,!1;var e=t.tag,l;if((l=e!==3&&e!==27)&&((l=e===5)&&(l=t.type,l=!(l!=="form"&&l!=="button")||vf(t.type,t.memoizedProps)),l=!l),l&&Ot&&ol(t),ks(t),e===13){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(c(317));Ot=bh(t)}else if(e===31){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(c(317));Ot=bh(t)}else e===27?(e=Ot,Al(t.type)?(t=Tf,Tf=null,Ot=t):Ot=e):Ot=Ft?Ue(t.stateNode.nextSibling):null;return!0}function Yl(){Ot=Ft=null,dt=!1}function Fi(){var t=rl;return t!==null&&(re===null?re=t:re.push.apply(re,t),rl=null),t}function ln(t){rl===null?rl=[t]:rl.push(t)}var Ii=m(null),Gl=null,Je=null;function hl(t,e,l){w(Ii,e._currentValue),e._currentValue=l}function Ke(t){t._currentValue=Ii.current,_(Ii)}function Pi(t,e,l){for(;t!==null;){var a=t.alternate;if((t.childLanes&e)!==e?(t.childLanes|=e,a!==null&&(a.childLanes|=e)):a!==null&&(a.childLanes&e)!==e&&(a.childLanes|=e),t===l)break;t=t.return}}function tc(t,e,l,a){var n=t.child;for(n!==null&&(n.return=t);n!==null;){var u=n.dependencies;if(u!==null){var i=n.child;u=u.firstContext;t:for(;u!==null;){var r=u;u=n;for(var d=0;d<e.length;d++)if(r.context===e[d]){u.lanes|=l,r=u.alternate,r!==null&&(r.lanes|=l),Pi(u.return,l,t),a||(i=null);break t}u=r.next}}else if(n.tag===18){if(i=n.return,i===null)throw Error(c(341));i.lanes|=l,u=i.alternate,u!==null&&(u.lanes|=l),Pi(i,l,t),i=null}else i=n.child;if(i!==null)i.return=n;else for(i=n;i!==null;){if(i===t){i=null;break}if(n=i.sibling,n!==null){n.return=i.return,i=n;break}i=i.return}n=i}}function va(t,e,l,a){t=null;for(var n=e,u=!1;n!==null;){if(!u){if((n.flags&524288)!==0)u=!0;else if((n.flags&262144)!==0)break}if(n.tag===10){var i=n.alternate;if(i===null)throw Error(c(387));if(i=i.memoizedProps,i!==null){var r=n.type;ye(n.pendingProps.value,i.value)||(t!==null?t.push(r):t=[r])}}else if(n===rt.current){if(i=n.alternate,i===null)throw Error(c(387));i.memoizedState.memoizedState!==n.memoizedState.memoizedState&&(t!==null?t.push(Dn):t=[Dn])}n=n.return}t!==null&&tc(e,t,l,a),e.flags|=262144}function iu(t){for(t=t.firstContext;t!==null;){if(!ye(t.context._currentValue,t.memoizedValue))return!0;t=t.next}return!1}function Ql(t){Gl=t,Je=null,t=t.dependencies,t!==null&&(t.firstContext=null)}function It(t){return Ws(Gl,t)}function cu(t,e){return Gl===null&&Ql(t),Ws(t,e)}function Ws(t,e){var l=e._currentValue;if(e={context:e,memoizedValue:l,next:null},Je===null){if(t===null)throw Error(c(308));Je=e,t.dependencies={lanes:0,firstContext:e},t.flags|=524288}else Je=Je.next=e;return l}var Gd=typeof AbortController<"u"?AbortController:function(){var t=[],e=this.signal={aborted:!1,addEventListener:function(l,a){t.push(a)}};this.abort=function(){e.aborted=!0,t.forEach(function(l){return l()})}},Qd=f.unstable_scheduleCallback,Xd=f.unstable_NormalPriority,Yt={$$typeof:et,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function ec(){return{controller:new Gd,data:new Map,refCount:0}}function an(t){t.refCount--,t.refCount===0&&Qd(Xd,function(){t.controller.abort()})}var nn=null,lc=0,ga=0,ya=null;function Zd(t,e){if(nn===null){var l=nn=[];lc=0,ga=uf(),ya={status:"pending",value:void 0,then:function(a){l.push(a)}}}return lc++,e.then(Fs,Fs),e}function Fs(){if(--lc===0&&nn!==null){ya!==null&&(ya.status="fulfilled");var t=nn;nn=null,ga=0,ya=null;for(var e=0;e<t.length;e++)(0,t[e])()}}function Vd(t,e){var l=[],a={status:"pending",value:null,reason:null,then:function(n){l.push(n)}};return t.then(function(){a.status="fulfilled",a.value=e;for(var n=0;n<l.length;n++)(0,l[n])(e)},function(n){for(a.status="rejected",a.reason=n,n=0;n<l.length;n++)(0,l[n])(void 0)}),a}var Is=O.S;O.S=function(t,e){qo=me(),typeof e=="object"&&e!==null&&typeof e.then=="function"&&Zd(t,e),Is!==null&&Is(t,e)};var Xl=m(null);function ac(){var t=Xl.current;return t!==null?t:zt.pooledCache}function fu(t,e){e===null?w(Xl,Xl.current):w(Xl,e.pool)}function Ps(){var t=ac();return t===null?null:{parent:Yt._currentValue,pool:t}}var Sa=Error(c(460)),nc=Error(c(474)),su=Error(c(542)),ru={then:function(){}};function tr(t){return t=t.status,t==="fulfilled"||t==="rejected"}function er(t,e,l){switch(l=t[l],l===void 0?t.push(e):l!==e&&(e.then(Qe,Qe),e=l),e.status){case"fulfilled":return e.value;case"rejected":throw t=e.reason,ar(t),t;default:if(typeof e.status=="string")e.then(Qe,Qe);else{if(t=zt,t!==null&&100<t.shellSuspendCounter)throw Error(c(482));t=e,t.status="pending",t.then(function(a){if(e.status==="pending"){var n=e;n.status="fulfilled",n.value=a}},function(a){if(e.status==="pending"){var n=e;n.status="rejected",n.reason=a}})}switch(e.status){case"fulfilled":return e.value;case"rejected":throw t=e.reason,ar(t),t}throw Vl=e,Sa}}function Zl(t){try{var e=t._init;return e(t._payload)}catch(l){throw l!==null&&typeof l=="object"&&typeof l.then=="function"?(Vl=l,Sa):l}}var Vl=null;function lr(){if(Vl===null)throw Error(c(459));var t=Vl;return Vl=null,t}function ar(t){if(t===Sa||t===su)throw Error(c(483))}var pa=null,un=0;function ou(t){var e=un;return un+=1,pa===null&&(pa=[]),er(pa,t,e)}function cn(t,e){e=e.props.ref,t.ref=e!==void 0?e:null}function hu(t,e){throw e.$$typeof===J?Error(c(525)):(t=Object.prototype.toString.call(e),Error(c(31,t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)))}function nr(t){function e(S,g){if(t){var T=S.deletions;T===null?(S.deletions=[g],S.flags|=16):T.push(g)}}function l(S,g){if(!t)return null;for(;g!==null;)e(S,g),g=g.sibling;return null}function a(S){for(var g=new Map;S!==null;)S.key!==null?g.set(S.key,S):g.set(S.index,S),S=S.sibling;return g}function n(S,g){return S=Ze(S,g),S.index=0,S.sibling=null,S}function u(S,g,T){return S.index=T,t?(T=S.alternate,T!==null?(T=T.index,T<g?(S.flags|=67108866,g):T):(S.flags|=67108866,g)):(S.flags|=1048576,g)}function i(S){return t&&S.alternate===null&&(S.flags|=67108866),S}function r(S,g,T,D){return g===null||g.tag!==6?(g=Ji(T,S.mode,D),g.return=S,g):(g=n(g,T),g.return=S,g)}function d(S,g,T,D){var K=T.type;return K===N?M(S,g,T.props.children,D,T.key):g!==null&&(g.elementType===K||typeof K=="object"&&K!==null&&K.$$typeof===Nt&&Zl(K)===g.type)?(g=n(g,T.props),cn(g,T),g.return=S,g):(g=nu(T.type,T.key,T.props,null,S.mode,D),cn(g,T),g.return=S,g)}function b(S,g,T,D){return g===null||g.tag!==4||g.stateNode.containerInfo!==T.containerInfo||g.stateNode.implementation!==T.implementation?(g=Ki(T,S.mode,D),g.return=S,g):(g=n(g,T.children||[]),g.return=S,g)}function M(S,g,T,D,K){return g===null||g.tag!==7?(g=Ll(T,S.mode,D,K),g.return=S,g):(g=n(g,T),g.return=S,g)}function C(S,g,T){if(typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint")return g=Ji(""+g,S.mode,T),g.return=S,g;if(typeof g=="object"&&g!==null){switch(g.$$typeof){case $:return T=nu(g.type,g.key,g.props,null,S.mode,T),cn(T,g),T.return=S,T;case Q:return g=Ki(g,S.mode,T),g.return=S,g;case Nt:return g=Zl(g),C(S,g,T)}if(gt(g)||j(g))return g=Ll(g,S.mode,T,null),g.return=S,g;if(typeof g.then=="function")return C(S,ou(g),T);if(g.$$typeof===et)return C(S,cu(S,g),T);hu(S,g)}return null}function x(S,g,T,D){var K=g!==null?g.key:null;if(typeof T=="string"&&T!==""||typeof T=="number"||typeof T=="bigint")return K!==null?null:r(S,g,""+T,D);if(typeof T=="object"&&T!==null){switch(T.$$typeof){case $:return T.key===K?d(S,g,T,D):null;case Q:return T.key===K?b(S,g,T,D):null;case Nt:return T=Zl(T),x(S,g,T,D)}if(gt(T)||j(T))return K!==null?null:M(S,g,T,D,null);if(typeof T.then=="function")return x(S,g,ou(T),D);if(T.$$typeof===et)return x(S,g,cu(S,T),D);hu(S,T)}return null}function A(S,g,T,D,K){if(typeof D=="string"&&D!==""||typeof D=="number"||typeof D=="bigint")return S=S.get(T)||null,r(g,S,""+D,K);if(typeof D=="object"&&D!==null){switch(D.$$typeof){case $:return S=S.get(D.key===null?T:D.key)||null,d(g,S,D,K);case Q:return S=S.get(D.key===null?T:D.key)||null,b(g,S,D,K);case Nt:return D=Zl(D),A(S,g,T,D,K)}if(gt(D)||j(D))return S=S.get(T)||null,M(g,S,D,K,null);if(typeof D.then=="function")return A(S,g,T,ou(D),K);if(D.$$typeof===et)return A(S,g,T,cu(g,D),K);hu(g,D)}return null}function X(S,g,T,D){for(var K=null,mt=null,V=g,it=g=0,ht=null;V!==null&&it<T.length;it++){V.index>it?(ht=V,V=null):ht=V.sibling;var vt=x(S,V,T[it],D);if(vt===null){V===null&&(V=ht);break}t&&V&&vt.alternate===null&&e(S,V),g=u(vt,g,it),mt===null?K=vt:mt.sibling=vt,mt=vt,V=ht}if(it===T.length)return l(S,V),dt&&Ve(S,it),K;if(V===null){for(;it<T.length;it++)V=C(S,T[it],D),V!==null&&(g=u(V,g,it),mt===null?K=V:mt.sibling=V,mt=V);return dt&&Ve(S,it),K}for(V=a(V);it<T.length;it++)ht=A(V,S,it,T[it],D),ht!==null&&(t&&ht.alternate!==null&&V.delete(ht.key===null?it:ht.key),g=u(ht,g,it),mt===null?K=ht:mt.sibling=ht,mt=ht);return t&&V.forEach(function(Dl){return e(S,Dl)}),dt&&Ve(S,it),K}function W(S,g,T,D){if(T==null)throw Error(c(151));for(var K=null,mt=null,V=g,it=g=0,ht=null,vt=T.next();V!==null&&!vt.done;it++,vt=T.next()){V.index>it?(ht=V,V=null):ht=V.sibling;var Dl=x(S,V,vt.value,D);if(Dl===null){V===null&&(V=ht);break}t&&V&&Dl.alternate===null&&e(S,V),g=u(Dl,g,it),mt===null?K=Dl:mt.sibling=Dl,mt=Dl,V=ht}if(vt.done)return l(S,V),dt&&Ve(S,it),K;if(V===null){for(;!vt.done;it++,vt=T.next())vt=C(S,vt.value,D),vt!==null&&(g=u(vt,g,it),mt===null?K=vt:mt.sibling=vt,mt=vt);return dt&&Ve(S,it),K}for(V=a(V);!vt.done;it++,vt=T.next())vt=A(V,S,it,vt.value,D),vt!==null&&(t&&vt.alternate!==null&&V.delete(vt.key===null?it:vt.key),g=u(vt,g,it),mt===null?K=vt:mt.sibling=vt,mt=vt);return t&&V.forEach(function(lm){return e(S,lm)}),dt&&Ve(S,it),K}function Et(S,g,T,D){if(typeof T=="object"&&T!==null&&T.type===N&&T.key===null&&(T=T.props.children),typeof T=="object"&&T!==null){switch(T.$$typeof){case $:t:{for(var K=T.key;g!==null;){if(g.key===K){if(K=T.type,K===N){if(g.tag===7){l(S,g.sibling),D=n(g,T.props.children),D.return=S,S=D;break t}}else if(g.elementType===K||typeof K=="object"&&K!==null&&K.$$typeof===Nt&&Zl(K)===g.type){l(S,g.sibling),D=n(g,T.props),cn(D,T),D.return=S,S=D;break t}l(S,g);break}else e(S,g);g=g.sibling}T.type===N?(D=Ll(T.props.children,S.mode,D,T.key),D.return=S,S=D):(D=nu(T.type,T.key,T.props,null,S.mode,D),cn(D,T),D.return=S,S=D)}return i(S);case Q:t:{for(K=T.key;g!==null;){if(g.key===K)if(g.tag===4&&g.stateNode.containerInfo===T.containerInfo&&g.stateNode.implementation===T.implementation){l(S,g.sibling),D=n(g,T.children||[]),D.return=S,S=D;break t}else{l(S,g);break}else e(S,g);g=g.sibling}D=Ki(T,S.mode,D),D.return=S,S=D}return i(S);case Nt:return T=Zl(T),Et(S,g,T,D)}if(gt(T))return X(S,g,T,D);if(j(T)){if(K=j(T),typeof K!="function")throw Error(c(150));return T=K.call(T),W(S,g,T,D)}if(typeof T.then=="function")return Et(S,g,ou(T),D);if(T.$$typeof===et)return Et(S,g,cu(S,T),D);hu(S,T)}return typeof T=="string"&&T!==""||typeof T=="number"||typeof T=="bigint"?(T=""+T,g!==null&&g.tag===6?(l(S,g.sibling),D=n(g,T),D.return=S,S=D):(l(S,g),D=Ji(T,S.mode,D),D.return=S,S=D),i(S)):l(S,g)}return function(S,g,T,D){try{un=0;var K=Et(S,g,T,D);return pa=null,K}catch(V){if(V===Sa||V===su)throw V;var mt=Se(29,V,null,S.mode);return mt.lanes=D,mt.return=S,mt}finally{}}}var Jl=nr(!0),ur=nr(!1),dl=!1;function uc(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ic(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function ml(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function vl(t,e,l){var a=t.updateQueue;if(a===null)return null;if(a=a.shared,(yt&2)!==0){var n=a.pending;return n===null?e.next=e:(e.next=n.next,n.next=e),a.pending=e,e=au(t),Qs(t,null,l),e}return lu(t,a,e,l),au(t)}function fn(t,e,l){if(e=e.updateQueue,e!==null&&(e=e.shared,(l&4194048)!==0)){var a=e.lanes;a&=t.pendingLanes,l|=a,e.lanes=l,Wf(t,l)}}function cc(t,e){var l=t.updateQueue,a=t.alternate;if(a!==null&&(a=a.updateQueue,l===a)){var n=null,u=null;if(l=l.firstBaseUpdate,l!==null){do{var i={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};u===null?n=u=i:u=u.next=i,l=l.next}while(l!==null);u===null?n=u=e:u=u.next=e}else n=u=e;l={baseState:a.baseState,firstBaseUpdate:n,lastBaseUpdate:u,shared:a.shared,callbacks:a.callbacks},t.updateQueue=l;return}t=l.lastBaseUpdate,t===null?l.firstBaseUpdate=e:t.next=e,l.lastBaseUpdate=e}var fc=!1;function sn(){if(fc){var t=ya;if(t!==null)throw t}}function rn(t,e,l,a){fc=!1;var n=t.updateQueue;dl=!1;var u=n.firstBaseUpdate,i=n.lastBaseUpdate,r=n.shared.pending;if(r!==null){n.shared.pending=null;var d=r,b=d.next;d.next=null,i===null?u=b:i.next=b,i=d;var M=t.alternate;M!==null&&(M=M.updateQueue,r=M.lastBaseUpdate,r!==i&&(r===null?M.firstBaseUpdate=b:r.next=b,M.lastBaseUpdate=d))}if(u!==null){var C=n.baseState;i=0,M=b=d=null,r=u;do{var x=r.lane&-536870913,A=x!==r.lane;if(A?(ot&x)===x:(a&x)===x){x!==0&&x===ga&&(fc=!0),M!==null&&(M=M.next={lane:0,tag:r.tag,payload:r.payload,callback:null,next:null});t:{var X=t,W=r;x=e;var Et=l;switch(W.tag){case 1:if(X=W.payload,typeof X=="function"){C=X.call(Et,C,x);break t}C=X;break t;case 3:X.flags=X.flags&-65537|128;case 0:if(X=W.payload,x=typeof X=="function"?X.call(Et,C,x):X,x==null)break t;C=B({},C,x);break t;case 2:dl=!0}}x=r.callback,x!==null&&(t.flags|=64,A&&(t.flags|=8192),A=n.callbacks,A===null?n.callbacks=[x]:A.push(x))}else A={lane:x,tag:r.tag,payload:r.payload,callback:r.callback,next:null},M===null?(b=M=A,d=C):M=M.next=A,i|=x;if(r=r.next,r===null){if(r=n.shared.pending,r===null)break;A=r,r=A.next,A.next=null,n.lastBaseUpdate=A,n.shared.pending=null}}while(!0);M===null&&(d=C),n.baseState=d,n.firstBaseUpdate=b,n.lastBaseUpdate=M,u===null&&(n.shared.lanes=0),Tl|=i,t.lanes=i,t.memoizedState=C}}function ir(t,e){if(typeof t!="function")throw Error(c(191,t));t.call(e)}function cr(t,e){var l=t.callbacks;if(l!==null)for(t.callbacks=null,t=0;t<l.length;t++)ir(l[t],e)}var Ta=m(null),du=m(0);function fr(t,e){t=ll,w(du,t),w(Ta,e),ll=t|e.baseLanes}function sc(){w(du,ll),w(Ta,Ta.current)}function rc(){ll=du.current,_(Ta),_(du)}var pe=m(null),Ce=null;function gl(t){var e=t.alternate;w(qt,qt.current&1),w(pe,t),Ce===null&&(e===null||Ta.current!==null||e.memoizedState!==null)&&(Ce=t)}function oc(t){w(qt,qt.current),w(pe,t),Ce===null&&(Ce=t)}function sr(t){t.tag===22?(w(qt,qt.current),w(pe,t),Ce===null&&(Ce=t)):yl()}function yl(){w(qt,qt.current),w(pe,pe.current)}function Te(t){_(pe),Ce===t&&(Ce=null),_(qt)}var qt=m(0);function mu(t){for(var e=t;e!==null;){if(e.tag===13){var l=e.memoizedState;if(l!==null&&(l=l.dehydrated,l===null||Sf(l)||pf(l)))return e}else if(e.tag===19&&(e.memoizedProps.revealOrder==="forwards"||e.memoizedProps.revealOrder==="backwards"||e.memoizedProps.revealOrder==="unstable_legacy-backwards"||e.memoizedProps.revealOrder==="together")){if((e.flags&128)!==0)return e}else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break;for(;e.sibling===null;){if(e.return===null||e.return===t)return null;e=e.return}e.sibling.return=e.return,e=e.sibling}return null}var $e=0,ut=null,Tt=null,Gt=null,vu=!1,ba=!1,Kl=!1,gu=0,on=0,Ea=null,Jd=0;function Ht(){throw Error(c(321))}function hc(t,e){if(e===null)return!1;for(var l=0;l<e.length&&l<t.length;l++)if(!ye(t[l],e[l]))return!1;return!0}function dc(t,e,l,a,n,u){return $e=u,ut=e,e.memoizedState=null,e.updateQueue=null,e.lanes=0,O.H=t===null||t.memoizedState===null?Jr:Mc,Kl=!1,u=l(a,n),Kl=!1,ba&&(u=or(e,l,a,n)),rr(t),u}function rr(t){O.H=mn;var e=Tt!==null&&Tt.next!==null;if($e=0,Gt=Tt=ut=null,vu=!1,on=0,Ea=null,e)throw Error(c(300));t===null||Qt||(t=t.dependencies,t!==null&&iu(t)&&(Qt=!0))}function or(t,e,l,a){ut=t;var n=0;do{if(ba&&(Ea=null),on=0,ba=!1,25<=n)throw Error(c(301));if(n+=1,Gt=Tt=null,t.updateQueue!=null){var u=t.updateQueue;u.lastEffect=null,u.events=null,u.stores=null,u.memoCache!=null&&(u.memoCache.index=0)}O.H=Kr,u=e(l,a)}while(ba);return u}function Kd(){var t=O.H,e=t.useState()[0];return e=typeof e.then=="function"?hn(e):e,t=t.useState()[0],(Tt!==null?Tt.memoizedState:null)!==t&&(ut.flags|=1024),e}function mc(){var t=gu!==0;return gu=0,t}function vc(t,e,l){e.updateQueue=t.updateQueue,e.flags&=-2053,t.lanes&=~l}function gc(t){if(vu){for(t=t.memoizedState;t!==null;){var e=t.queue;e!==null&&(e.pending=null),t=t.next}vu=!1}$e=0,Gt=Tt=ut=null,ba=!1,on=gu=0,Ea=null}function ne(){var t={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Gt===null?ut.memoizedState=Gt=t:Gt=Gt.next=t,Gt}function Bt(){if(Tt===null){var t=ut.alternate;t=t!==null?t.memoizedState:null}else t=Tt.next;var e=Gt===null?ut.memoizedState:Gt.next;if(e!==null)Gt=e,Tt=t;else{if(t===null)throw ut.alternate===null?Error(c(467)):Error(c(310));Tt=t,t={memoizedState:Tt.memoizedState,baseState:Tt.baseState,baseQueue:Tt.baseQueue,queue:Tt.queue,next:null},Gt===null?ut.memoizedState=Gt=t:Gt=Gt.next=t}return Gt}function yu(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function hn(t){var e=on;return on+=1,Ea===null&&(Ea=[]),t=er(Ea,t,e),e=ut,(Gt===null?e.memoizedState:Gt.next)===null&&(e=e.alternate,O.H=e===null||e.memoizedState===null?Jr:Mc),t}function Su(t){if(t!==null&&typeof t=="object"){if(typeof t.then=="function")return hn(t);if(t.$$typeof===et)return It(t)}throw Error(c(438,String(t)))}function yc(t){var e=null,l=ut.updateQueue;if(l!==null&&(e=l.memoCache),e==null){var a=ut.alternate;a!==null&&(a=a.updateQueue,a!==null&&(a=a.memoCache,a!=null&&(e={data:a.data.map(function(n){return n.slice()}),index:0})))}if(e==null&&(e={data:[],index:0}),l===null&&(l=yu(),ut.updateQueue=l),l.memoCache=e,l=e.data[e.index],l===void 0)for(l=e.data[e.index]=Array(t),a=0;a<t;a++)l[a]=Dt;return e.index++,l}function ke(t,e){return typeof e=="function"?e(t):e}function pu(t){var e=Bt();return Sc(e,Tt,t)}function Sc(t,e,l){var a=t.queue;if(a===null)throw Error(c(311));a.lastRenderedReducer=l;var n=t.baseQueue,u=a.pending;if(u!==null){if(n!==null){var i=n.next;n.next=u.next,u.next=i}e.baseQueue=n=u,a.pending=null}if(u=t.baseState,n===null)t.memoizedState=u;else{e=n.next;var r=i=null,d=null,b=e,M=!1;do{var C=b.lane&-536870913;if(C!==b.lane?(ot&C)===C:($e&C)===C){var x=b.revertLane;if(x===0)d!==null&&(d=d.next={lane:0,revertLane:0,gesture:null,action:b.action,hasEagerState:b.hasEagerState,eagerState:b.eagerState,next:null}),C===ga&&(M=!0);else if(($e&x)===x){b=b.next,x===ga&&(M=!0);continue}else C={lane:0,revertLane:b.revertLane,gesture:null,action:b.action,hasEagerState:b.hasEagerState,eagerState:b.eagerState,next:null},d===null?(r=d=C,i=u):d=d.next=C,ut.lanes|=x,Tl|=x;C=b.action,Kl&&l(u,C),u=b.hasEagerState?b.eagerState:l(u,C)}else x={lane:C,revertLane:b.revertLane,gesture:b.gesture,action:b.action,hasEagerState:b.hasEagerState,eagerState:b.eagerState,next:null},d===null?(r=d=x,i=u):d=d.next=x,ut.lanes|=C,Tl|=C;b=b.next}while(b!==null&&b!==e);if(d===null?i=u:d.next=r,!ye(u,t.memoizedState)&&(Qt=!0,M&&(l=ya,l!==null)))throw l;t.memoizedState=u,t.baseState=i,t.baseQueue=d,a.lastRenderedState=u}return n===null&&(a.lanes=0),[t.memoizedState,a.dispatch]}function pc(t){var e=Bt(),l=e.queue;if(l===null)throw Error(c(311));l.lastRenderedReducer=t;var a=l.dispatch,n=l.pending,u=e.memoizedState;if(n!==null){l.pending=null;var i=n=n.next;do u=t(u,i.action),i=i.next;while(i!==n);ye(u,e.memoizedState)||(Qt=!0),e.memoizedState=u,e.baseQueue===null&&(e.baseState=u),l.lastRenderedState=u}return[u,a]}function hr(t,e,l){var a=ut,n=Bt(),u=dt;if(u){if(l===void 0)throw Error(c(407));l=l()}else l=e();var i=!ye((Tt||n).memoizedState,l);if(i&&(n.memoizedState=l,Qt=!0),n=n.queue,Ec(vr.bind(null,a,n,t),[t]),n.getSnapshot!==e||i||Gt!==null&&Gt.memoizedState.tag&1){if(a.flags|=2048,xa(9,{destroy:void 0},mr.bind(null,a,n,l,e),null),zt===null)throw Error(c(349));u||($e&127)!==0||dr(a,e,l)}return l}function dr(t,e,l){t.flags|=16384,t={getSnapshot:e,value:l},e=ut.updateQueue,e===null?(e=yu(),ut.updateQueue=e,e.stores=[t]):(l=e.stores,l===null?e.stores=[t]:l.push(t))}function mr(t,e,l,a){e.value=l,e.getSnapshot=a,gr(e)&&yr(t)}function vr(t,e,l){return l(function(){gr(e)&&yr(t)})}function gr(t){var e=t.getSnapshot;t=t.value;try{var l=e();return!ye(t,l)}catch{return!0}}function yr(t){var e=wl(t,2);e!==null&&oe(e,t,2)}function Tc(t){var e=ne();if(typeof t=="function"){var l=t;if(t=l(),Kl){il(!0);try{l()}finally{il(!1)}}}return e.memoizedState=e.baseState=t,e.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:ke,lastRenderedState:t},e}function Sr(t,e,l,a){return t.baseState=l,Sc(t,Tt,typeof a=="function"?a:ke)}function $d(t,e,l,a,n){if(Eu(t))throw Error(c(485));if(t=e.action,t!==null){var u={payload:n,action:t,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(i){u.listeners.push(i)}};O.T!==null?l(!0):u.isTransition=!1,a(u),l=e.pending,l===null?(u.next=e.pending=u,pr(e,u)):(u.next=l.next,e.pending=l.next=u)}}function pr(t,e){var l=e.action,a=e.payload,n=t.state;if(e.isTransition){var u=O.T,i={};O.T=i;try{var r=l(n,a),d=O.S;d!==null&&d(i,r),Tr(t,e,r)}catch(b){bc(t,e,b)}finally{u!==null&&i.types!==null&&(u.types=i.types),O.T=u}}else try{u=l(n,a),Tr(t,e,u)}catch(b){bc(t,e,b)}}function Tr(t,e,l){l!==null&&typeof l=="object"&&typeof l.then=="function"?l.then(function(a){br(t,e,a)},function(a){return bc(t,e,a)}):br(t,e,l)}function br(t,e,l){e.status="fulfilled",e.value=l,Er(e),t.state=l,e=t.pending,e!==null&&(l=e.next,l===e?t.pending=null:(l=l.next,e.next=l,pr(t,l)))}function bc(t,e,l){var a=t.pending;if(t.pending=null,a!==null){a=a.next;do e.status="rejected",e.reason=l,Er(e),e=e.next;while(e!==a)}t.action=null}function Er(t){t=t.listeners;for(var e=0;e<t.length;e++)(0,t[e])()}function xr(t,e){return e}function zr(t,e){if(dt){var l=zt.formState;if(l!==null){t:{var a=ut;if(dt){if(Ot){e:{for(var n=Ot,u=De;n.nodeType!==8;){if(!u){n=null;break e}if(n=Ue(n.nextSibling),n===null){n=null;break e}}u=n.data,n=u==="F!"||u==="F"?n:null}if(n){Ot=Ue(n.nextSibling),a=n.data==="F!";break t}}ol(a)}a=!1}a&&(e=l[0])}}return l=ne(),l.memoizedState=l.baseState=e,a={pending:null,lanes:0,dispatch:null,lastRenderedReducer:xr,lastRenderedState:e},l.queue=a,l=Xr.bind(null,ut,a),a.dispatch=l,a=Tc(!1),u=Oc.bind(null,ut,!1,a.queue),a=ne(),n={state:e,dispatch:null,action:t,pending:null},a.queue=n,l=$d.bind(null,ut,n,u,l),n.dispatch=l,a.memoizedState=t,[e,l,!1]}function Ar(t){var e=Bt();return _r(e,Tt,t)}function _r(t,e,l){if(e=Sc(t,e,xr)[0],t=pu(ke)[0],typeof e=="object"&&e!==null&&typeof e.then=="function")try{var a=hn(e)}catch(i){throw i===Sa?su:i}else a=e;e=Bt();var n=e.queue,u=n.dispatch;return l!==e.memoizedState&&(ut.flags|=2048,xa(9,{destroy:void 0},kd.bind(null,n,l),null)),[a,u,t]}function kd(t,e){t.action=e}function Or(t){var e=Bt(),l=Tt;if(l!==null)return _r(e,l,t);Bt(),e=e.memoizedState,l=Bt();var a=l.queue.dispatch;return l.memoizedState=t,[e,a,!1]}function xa(t,e,l,a){return t={tag:t,create:l,deps:a,inst:e,next:null},e=ut.updateQueue,e===null&&(e=yu(),ut.updateQueue=e),l=e.lastEffect,l===null?e.lastEffect=t.next=t:(a=l.next,l.next=t,t.next=a,e.lastEffect=t),t}function Mr(){return Bt().memoizedState}function Tu(t,e,l,a){var n=ne();ut.flags|=t,n.memoizedState=xa(1|e,{destroy:void 0},l,a===void 0?null:a)}function bu(t,e,l,a){var n=Bt();a=a===void 0?null:a;var u=n.memoizedState.inst;Tt!==null&&a!==null&&hc(a,Tt.memoizedState.deps)?n.memoizedState=xa(e,u,l,a):(ut.flags|=t,n.memoizedState=xa(1|e,u,l,a))}function Nr(t,e){Tu(8390656,8,t,e)}function Ec(t,e){bu(2048,8,t,e)}function Wd(t){ut.flags|=4;var e=ut.updateQueue;if(e===null)e=yu(),ut.updateQueue=e,e.events=[t];else{var l=e.events;l===null?e.events=[t]:l.push(t)}}function Dr(t){var e=Bt().memoizedState;return Wd({ref:e,nextImpl:t}),function(){if((yt&2)!==0)throw Error(c(440));return e.impl.apply(void 0,arguments)}}function Cr(t,e){return bu(4,2,t,e)}function Ur(t,e){return bu(4,4,t,e)}function Hr(t,e){if(typeof e=="function"){t=t();var l=e(t);return function(){typeof l=="function"?l():e(null)}}if(e!=null)return t=t(),e.current=t,function(){e.current=null}}function jr(t,e,l){l=l!=null?l.concat([t]):null,bu(4,4,Hr.bind(null,e,t),l)}function xc(){}function Rr(t,e){var l=Bt();e=e===void 0?null:e;var a=l.memoizedState;return e!==null&&hc(e,a[1])?a[0]:(l.memoizedState=[t,e],t)}function qr(t,e){var l=Bt();e=e===void 0?null:e;var a=l.memoizedState;if(e!==null&&hc(e,a[1]))return a[0];if(a=t(),Kl){il(!0);try{t()}finally{il(!1)}}return l.memoizedState=[a,e],a}function zc(t,e,l){return l===void 0||($e&1073741824)!==0&&(ot&261930)===0?t.memoizedState=e:(t.memoizedState=l,t=wo(),ut.lanes|=t,Tl|=t,l)}function Br(t,e,l,a){return ye(l,e)?l:Ta.current!==null?(t=zc(t,l,a),ye(t,e)||(Qt=!0),t):($e&42)===0||($e&1073741824)!==0&&(ot&261930)===0?(Qt=!0,t.memoizedState=l):(t=wo(),ut.lanes|=t,Tl|=t,e)}function wr(t,e,l,a,n){var u=L.p;L.p=u!==0&&8>u?u:8;var i=O.T,r={};O.T=r,Oc(t,!1,e,l);try{var d=n(),b=O.S;if(b!==null&&b(r,d),d!==null&&typeof d=="object"&&typeof d.then=="function"){var M=Vd(d,a);dn(t,e,M,xe(t))}else dn(t,e,a,xe(t))}catch(C){dn(t,e,{then:function(){},status:"rejected",reason:C},xe())}finally{L.p=u,i!==null&&r.types!==null&&(i.types=r.types),O.T=i}}function Fd(){}function Ac(t,e,l,a){if(t.tag!==5)throw Error(c(476));var n=Lr(t).queue;wr(t,n,e,H,l===null?Fd:function(){return Yr(t),l(a)})}function Lr(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:H,baseState:H,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ke,lastRenderedState:H},next:null};var l={};return e.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ke,lastRenderedState:l},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Yr(t){var e=Lr(t);e.next===null&&(e=t.alternate.memoizedState),dn(t,e.next.queue,{},xe())}function _c(){return It(Dn)}function Gr(){return Bt().memoizedState}function Qr(){return Bt().memoizedState}function Id(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var l=xe();t=ml(l);var a=vl(e,t,l);a!==null&&(oe(a,e,l),fn(a,e,l)),e={cache:ec()},t.payload=e;return}e=e.return}}function Pd(t,e,l){var a=xe();l={lane:a,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Eu(t)?Zr(e,l):(l=Zi(t,e,l,a),l!==null&&(oe(l,t,a),Vr(l,e,a)))}function Xr(t,e,l){var a=xe();dn(t,e,l,a)}function dn(t,e,l,a){var n={lane:a,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(Eu(t))Zr(e,n);else{var u=t.alternate;if(t.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var i=e.lastRenderedState,r=u(i,l);if(n.hasEagerState=!0,n.eagerState=r,ye(r,i))return lu(t,e,n,0),zt===null&&eu(),!1}catch{}finally{}if(l=Zi(t,e,n,a),l!==null)return oe(l,t,a),Vr(l,e,a),!0}return!1}function Oc(t,e,l,a){if(a={lane:2,revertLane:uf(),gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},Eu(t)){if(e)throw Error(c(479))}else e=Zi(t,l,a,2),e!==null&&oe(e,t,2)}function Eu(t){var e=t.alternate;return t===ut||e!==null&&e===ut}function Zr(t,e){ba=vu=!0;var l=t.pending;l===null?e.next=e:(e.next=l.next,l.next=e),t.pending=e}function Vr(t,e,l){if((l&4194048)!==0){var a=e.lanes;a&=t.pendingLanes,l|=a,e.lanes=l,Wf(t,l)}}var mn={readContext:It,use:Su,useCallback:Ht,useContext:Ht,useEffect:Ht,useImperativeHandle:Ht,useLayoutEffect:Ht,useInsertionEffect:Ht,useMemo:Ht,useReducer:Ht,useRef:Ht,useState:Ht,useDebugValue:Ht,useDeferredValue:Ht,useTransition:Ht,useSyncExternalStore:Ht,useId:Ht,useHostTransitionStatus:Ht,useFormState:Ht,useActionState:Ht,useOptimistic:Ht,useMemoCache:Ht,useCacheRefresh:Ht};mn.useEffectEvent=Ht;var Jr={readContext:It,use:Su,useCallback:function(t,e){return ne().memoizedState=[t,e===void 0?null:e],t},useContext:It,useEffect:Nr,useImperativeHandle:function(t,e,l){l=l!=null?l.concat([t]):null,Tu(4194308,4,Hr.bind(null,e,t),l)},useLayoutEffect:function(t,e){return Tu(4194308,4,t,e)},useInsertionEffect:function(t,e){Tu(4,2,t,e)},useMemo:function(t,e){var l=ne();e=e===void 0?null:e;var a=t();if(Kl){il(!0);try{t()}finally{il(!1)}}return l.memoizedState=[a,e],a},useReducer:function(t,e,l){var a=ne();if(l!==void 0){var n=l(e);if(Kl){il(!0);try{l(e)}finally{il(!1)}}}else n=e;return a.memoizedState=a.baseState=n,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:n},a.queue=t,t=t.dispatch=Pd.bind(null,ut,t),[a.memoizedState,t]},useRef:function(t){var e=ne();return t={current:t},e.memoizedState=t},useState:function(t){t=Tc(t);var e=t.queue,l=Xr.bind(null,ut,e);return e.dispatch=l,[t.memoizedState,l]},useDebugValue:xc,useDeferredValue:function(t,e){var l=ne();return zc(l,t,e)},useTransition:function(){var t=Tc(!1);return t=wr.bind(null,ut,t.queue,!0,!1),ne().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,l){var a=ut,n=ne();if(dt){if(l===void 0)throw Error(c(407));l=l()}else{if(l=e(),zt===null)throw Error(c(349));(ot&127)!==0||dr(a,e,l)}n.memoizedState=l;var u={value:l,getSnapshot:e};return n.queue=u,Nr(vr.bind(null,a,u,t),[t]),a.flags|=2048,xa(9,{destroy:void 0},mr.bind(null,a,u,l,e),null),l},useId:function(){var t=ne(),e=zt.identifierPrefix;if(dt){var l=we,a=Be;l=(a&~(1<<32-ge(a)-1)).toString(32)+l,e="_"+e+"R_"+l,l=gu++,0<l&&(e+="H"+l.toString(32)),e+="_"}else l=Jd++,e="_"+e+"r_"+l.toString(32)+"_";return t.memoizedState=e},useHostTransitionStatus:_c,useFormState:zr,useActionState:zr,useOptimistic:function(t){var e=ne();e.memoizedState=e.baseState=t;var l={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return e.queue=l,e=Oc.bind(null,ut,!0,l),l.dispatch=e,[t,e]},useMemoCache:yc,useCacheRefresh:function(){return ne().memoizedState=Id.bind(null,ut)},useEffectEvent:function(t){var e=ne(),l={impl:t};return e.memoizedState=l,function(){if((yt&2)!==0)throw Error(c(440));return l.impl.apply(void 0,arguments)}}},Mc={readContext:It,use:Su,useCallback:Rr,useContext:It,useEffect:Ec,useImperativeHandle:jr,useInsertionEffect:Cr,useLayoutEffect:Ur,useMemo:qr,useReducer:pu,useRef:Mr,useState:function(){return pu(ke)},useDebugValue:xc,useDeferredValue:function(t,e){var l=Bt();return Br(l,Tt.memoizedState,t,e)},useTransition:function(){var t=pu(ke)[0],e=Bt().memoizedState;return[typeof t=="boolean"?t:hn(t),e]},useSyncExternalStore:hr,useId:Gr,useHostTransitionStatus:_c,useFormState:Ar,useActionState:Ar,useOptimistic:function(t,e){var l=Bt();return Sr(l,Tt,t,e)},useMemoCache:yc,useCacheRefresh:Qr};Mc.useEffectEvent=Dr;var Kr={readContext:It,use:Su,useCallback:Rr,useContext:It,useEffect:Ec,useImperativeHandle:jr,useInsertionEffect:Cr,useLayoutEffect:Ur,useMemo:qr,useReducer:pc,useRef:Mr,useState:function(){return pc(ke)},useDebugValue:xc,useDeferredValue:function(t,e){var l=Bt();return Tt===null?zc(l,t,e):Br(l,Tt.memoizedState,t,e)},useTransition:function(){var t=pc(ke)[0],e=Bt().memoizedState;return[typeof t=="boolean"?t:hn(t),e]},useSyncExternalStore:hr,useId:Gr,useHostTransitionStatus:_c,useFormState:Or,useActionState:Or,useOptimistic:function(t,e){var l=Bt();return Tt!==null?Sr(l,Tt,t,e):(l.baseState=t,[t,l.queue.dispatch])},useMemoCache:yc,useCacheRefresh:Qr};Kr.useEffectEvent=Dr;function Nc(t,e,l,a){e=t.memoizedState,l=l(a,e),l=l==null?e:B({},e,l),t.memoizedState=l,t.lanes===0&&(t.updateQueue.baseState=l)}var Dc={enqueueSetState:function(t,e,l){t=t._reactInternals;var a=xe(),n=ml(a);n.payload=e,l!=null&&(n.callback=l),e=vl(t,n,a),e!==null&&(oe(e,t,a),fn(e,t,a))},enqueueReplaceState:function(t,e,l){t=t._reactInternals;var a=xe(),n=ml(a);n.tag=1,n.payload=e,l!=null&&(n.callback=l),e=vl(t,n,a),e!==null&&(oe(e,t,a),fn(e,t,a))},enqueueForceUpdate:function(t,e){t=t._reactInternals;var l=xe(),a=ml(l);a.tag=2,e!=null&&(a.callback=e),e=vl(t,a,l),e!==null&&(oe(e,t,l),fn(e,t,l))}};function $r(t,e,l,a,n,u,i){return t=t.stateNode,typeof t.shouldComponentUpdate=="function"?t.shouldComponentUpdate(a,u,i):e.prototype&&e.prototype.isPureReactComponent?!Pa(l,a)||!Pa(n,u):!0}function kr(t,e,l,a){t=e.state,typeof e.componentWillReceiveProps=="function"&&e.componentWillReceiveProps(l,a),typeof e.UNSAFE_componentWillReceiveProps=="function"&&e.UNSAFE_componentWillReceiveProps(l,a),e.state!==t&&Dc.enqueueReplaceState(e,e.state,null)}function $l(t,e){var l=e;if("ref"in e){l={};for(var a in e)a!=="ref"&&(l[a]=e[a])}if(t=t.defaultProps){l===e&&(l=B({},l));for(var n in t)l[n]===void 0&&(l[n]=t[n])}return l}function Wr(t){tu(t)}function Fr(t){console.error(t)}function Ir(t){tu(t)}function xu(t,e){try{var l=t.onUncaughtError;l(e.value,{componentStack:e.stack})}catch(a){setTimeout(function(){throw a})}}function Pr(t,e,l){try{var a=t.onCaughtError;a(l.value,{componentStack:l.stack,errorBoundary:e.tag===1?e.stateNode:null})}catch(n){setTimeout(function(){throw n})}}function Cc(t,e,l){return l=ml(l),l.tag=3,l.payload={element:null},l.callback=function(){xu(t,e)},l}function to(t){return t=ml(t),t.tag=3,t}function eo(t,e,l,a){var n=l.type.getDerivedStateFromError;if(typeof n=="function"){var u=a.value;t.payload=function(){return n(u)},t.callback=function(){Pr(e,l,a)}}var i=l.stateNode;i!==null&&typeof i.componentDidCatch=="function"&&(t.callback=function(){Pr(e,l,a),typeof n!="function"&&(bl===null?bl=new Set([this]):bl.add(this));var r=a.stack;this.componentDidCatch(a.value,{componentStack:r!==null?r:""})})}function t1(t,e,l,a,n){if(l.flags|=32768,a!==null&&typeof a=="object"&&typeof a.then=="function"){if(e=l.alternate,e!==null&&va(e,l,n,!0),l=pe.current,l!==null){switch(l.tag){case 31:case 13:return Ce===null?Ru():l.alternate===null&&jt===0&&(jt=3),l.flags&=-257,l.flags|=65536,l.lanes=n,a===ru?l.flags|=16384:(e=l.updateQueue,e===null?l.updateQueue=new Set([a]):e.add(a),lf(t,a,n)),!1;case 22:return l.flags|=65536,a===ru?l.flags|=16384:(e=l.updateQueue,e===null?(e={transitions:null,markerInstances:null,retryQueue:new Set([a])},l.updateQueue=e):(l=e.retryQueue,l===null?e.retryQueue=new Set([a]):l.add(a)),lf(t,a,n)),!1}throw Error(c(435,l.tag))}return lf(t,a,n),Ru(),!1}if(dt)return e=pe.current,e!==null?((e.flags&65536)===0&&(e.flags|=256),e.flags|=65536,e.lanes=n,a!==Wi&&(t=Error(c(422),{cause:a}),ln(Oe(t,l)))):(a!==Wi&&(e=Error(c(423),{cause:a}),ln(Oe(e,l))),t=t.current.alternate,t.flags|=65536,n&=-n,t.lanes|=n,a=Oe(a,l),n=Cc(t.stateNode,a,n),cc(t,n),jt!==4&&(jt=2)),!1;var u=Error(c(520),{cause:a});if(u=Oe(u,l),En===null?En=[u]:En.push(u),jt!==4&&(jt=2),e===null)return!0;a=Oe(a,l),l=e;do{switch(l.tag){case 3:return l.flags|=65536,t=n&-n,l.lanes|=t,t=Cc(l.stateNode,a,t),cc(l,t),!1;case 1:if(e=l.type,u=l.stateNode,(l.flags&128)===0&&(typeof e.getDerivedStateFromError=="function"||u!==null&&typeof u.componentDidCatch=="function"&&(bl===null||!bl.has(u))))return l.flags|=65536,n&=-n,l.lanes|=n,n=to(n),eo(n,t,l,a),cc(l,n),!1}l=l.return}while(l!==null);return!1}var Uc=Error(c(461)),Qt=!1;function Pt(t,e,l,a){e.child=t===null?ur(e,null,l,a):Jl(e,t.child,l,a)}function lo(t,e,l,a,n){l=l.render;var u=e.ref;if("ref"in a){var i={};for(var r in a)r!=="ref"&&(i[r]=a[r])}else i=a;return Ql(e),a=dc(t,e,l,i,u,n),r=mc(),t!==null&&!Qt?(vc(t,e,n),We(t,e,n)):(dt&&r&&$i(e),e.flags|=1,Pt(t,e,a,n),e.child)}function ao(t,e,l,a,n){if(t===null){var u=l.type;return typeof u=="function"&&!Vi(u)&&u.defaultProps===void 0&&l.compare===null?(e.tag=15,e.type=u,no(t,e,u,a,n)):(t=nu(l.type,null,a,e,e.mode,n),t.ref=e.ref,t.return=e,e.child=t)}if(u=t.child,!Yc(t,n)){var i=u.memoizedProps;if(l=l.compare,l=l!==null?l:Pa,l(i,a)&&t.ref===e.ref)return We(t,e,n)}return e.flags|=1,t=Ze(u,a),t.ref=e.ref,t.return=e,e.child=t}function no(t,e,l,a,n){if(t!==null){var u=t.memoizedProps;if(Pa(u,a)&&t.ref===e.ref)if(Qt=!1,e.pendingProps=a=u,Yc(t,n))(t.flags&131072)!==0&&(Qt=!0);else return e.lanes=t.lanes,We(t,e,n)}return Hc(t,e,l,a,n)}function uo(t,e,l,a){var n=a.children,u=t!==null?t.memoizedState:null;if(t===null&&e.stateNode===null&&(e.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),a.mode==="hidden"){if((e.flags&128)!==0){if(u=u!==null?u.baseLanes|l:l,t!==null){for(a=e.child=t.child,n=0;a!==null;)n=n|a.lanes|a.childLanes,a=a.sibling;a=n&~u}else a=0,e.child=null;return io(t,e,u,l,a)}if((l&536870912)!==0)e.memoizedState={baseLanes:0,cachePool:null},t!==null&&fu(e,u!==null?u.cachePool:null),u!==null?fr(e,u):sc(),sr(e);else return a=e.lanes=536870912,io(t,e,u!==null?u.baseLanes|l:l,l,a)}else u!==null?(fu(e,u.cachePool),fr(e,u),yl(),e.memoizedState=null):(t!==null&&fu(e,null),sc(),yl());return Pt(t,e,n,l),e.child}function vn(t,e){return t!==null&&t.tag===22||e.stateNode!==null||(e.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),e.sibling}function io(t,e,l,a,n){var u=ac();return u=u===null?null:{parent:Yt._currentValue,pool:u},e.memoizedState={baseLanes:l,cachePool:u},t!==null&&fu(e,null),sc(),sr(e),t!==null&&va(t,e,a,!0),e.childLanes=n,null}function zu(t,e){return e=_u({mode:e.mode,children:e.children},t.mode),e.ref=t.ref,t.child=e,e.return=t,e}function co(t,e,l){return Jl(e,t.child,null,l),t=zu(e,e.pendingProps),t.flags|=2,Te(e),e.memoizedState=null,t}function e1(t,e,l){var a=e.pendingProps,n=(e.flags&128)!==0;if(e.flags&=-129,t===null){if(dt){if(a.mode==="hidden")return t=zu(e,a),e.lanes=536870912,vn(null,t);if(oc(e),(t=Ot)?(t=Th(t,De),t=t!==null&&t.data==="&"?t:null,t!==null&&(e.memoizedState={dehydrated:t,treeContext:sl!==null?{id:Be,overflow:we}:null,retryLane:536870912,hydrationErrors:null},l=Zs(t),l.return=e,e.child=l,Ft=e,Ot=null)):t=null,t===null)throw ol(e);return e.lanes=536870912,null}return zu(e,a)}var u=t.memoizedState;if(u!==null){var i=u.dehydrated;if(oc(e),n)if(e.flags&256)e.flags&=-257,e=co(t,e,l);else if(e.memoizedState!==null)e.child=t.child,e.flags|=128,e=null;else throw Error(c(558));else if(Qt||va(t,e,l,!1),n=(l&t.childLanes)!==0,Qt||n){if(a=zt,a!==null&&(i=Ff(a,l),i!==0&&i!==u.retryLane))throw u.retryLane=i,wl(t,i),oe(a,t,i),Uc;Ru(),e=co(t,e,l)}else t=u.treeContext,Ot=Ue(i.nextSibling),Ft=e,dt=!0,rl=null,De=!1,t!==null&&Ks(e,t),e=zu(e,a),e.flags|=4096;return e}return t=Ze(t.child,{mode:a.mode,children:a.children}),t.ref=e.ref,e.child=t,t.return=e,t}function Au(t,e){var l=e.ref;if(l===null)t!==null&&t.ref!==null&&(e.flags|=4194816);else{if(typeof l!="function"&&typeof l!="object")throw Error(c(284));(t===null||t.ref!==l)&&(e.flags|=4194816)}}function Hc(t,e,l,a,n){return Ql(e),l=dc(t,e,l,a,void 0,n),a=mc(),t!==null&&!Qt?(vc(t,e,n),We(t,e,n)):(dt&&a&&$i(e),e.flags|=1,Pt(t,e,l,n),e.child)}function fo(t,e,l,a,n,u){return Ql(e),e.updateQueue=null,l=or(e,a,l,n),rr(t),a=mc(),t!==null&&!Qt?(vc(t,e,u),We(t,e,u)):(dt&&a&&$i(e),e.flags|=1,Pt(t,e,l,u),e.child)}function so(t,e,l,a,n){if(Ql(e),e.stateNode===null){var u=oa,i=l.contextType;typeof i=="object"&&i!==null&&(u=It(i)),u=new l(a,u),e.memoizedState=u.state!==null&&u.state!==void 0?u.state:null,u.updater=Dc,e.stateNode=u,u._reactInternals=e,u=e.stateNode,u.props=a,u.state=e.memoizedState,u.refs={},uc(e),i=l.contextType,u.context=typeof i=="object"&&i!==null?It(i):oa,u.state=e.memoizedState,i=l.getDerivedStateFromProps,typeof i=="function"&&(Nc(e,l,i,a),u.state=e.memoizedState),typeof l.getDerivedStateFromProps=="function"||typeof u.getSnapshotBeforeUpdate=="function"||typeof u.UNSAFE_componentWillMount!="function"&&typeof u.componentWillMount!="function"||(i=u.state,typeof u.componentWillMount=="function"&&u.componentWillMount(),typeof u.UNSAFE_componentWillMount=="function"&&u.UNSAFE_componentWillMount(),i!==u.state&&Dc.enqueueReplaceState(u,u.state,null),rn(e,a,u,n),sn(),u.state=e.memoizedState),typeof u.componentDidMount=="function"&&(e.flags|=4194308),a=!0}else if(t===null){u=e.stateNode;var r=e.memoizedProps,d=$l(l,r);u.props=d;var b=u.context,M=l.contextType;i=oa,typeof M=="object"&&M!==null&&(i=It(M));var C=l.getDerivedStateFromProps;M=typeof C=="function"||typeof u.getSnapshotBeforeUpdate=="function",r=e.pendingProps!==r,M||typeof u.UNSAFE_componentWillReceiveProps!="function"&&typeof u.componentWillReceiveProps!="function"||(r||b!==i)&&kr(e,u,a,i),dl=!1;var x=e.memoizedState;u.state=x,rn(e,a,u,n),sn(),b=e.memoizedState,r||x!==b||dl?(typeof C=="function"&&(Nc(e,l,C,a),b=e.memoizedState),(d=dl||$r(e,l,d,a,x,b,i))?(M||typeof u.UNSAFE_componentWillMount!="function"&&typeof u.componentWillMount!="function"||(typeof u.componentWillMount=="function"&&u.componentWillMount(),typeof u.UNSAFE_componentWillMount=="function"&&u.UNSAFE_componentWillMount()),typeof u.componentDidMount=="function"&&(e.flags|=4194308)):(typeof u.componentDidMount=="function"&&(e.flags|=4194308),e.memoizedProps=a,e.memoizedState=b),u.props=a,u.state=b,u.context=i,a=d):(typeof u.componentDidMount=="function"&&(e.flags|=4194308),a=!1)}else{u=e.stateNode,ic(t,e),i=e.memoizedProps,M=$l(l,i),u.props=M,C=e.pendingProps,x=u.context,b=l.contextType,d=oa,typeof b=="object"&&b!==null&&(d=It(b)),r=l.getDerivedStateFromProps,(b=typeof r=="function"||typeof u.getSnapshotBeforeUpdate=="function")||typeof u.UNSAFE_componentWillReceiveProps!="function"&&typeof u.componentWillReceiveProps!="function"||(i!==C||x!==d)&&kr(e,u,a,d),dl=!1,x=e.memoizedState,u.state=x,rn(e,a,u,n),sn();var A=e.memoizedState;i!==C||x!==A||dl||t!==null&&t.dependencies!==null&&iu(t.dependencies)?(typeof r=="function"&&(Nc(e,l,r,a),A=e.memoizedState),(M=dl||$r(e,l,M,a,x,A,d)||t!==null&&t.dependencies!==null&&iu(t.dependencies))?(b||typeof u.UNSAFE_componentWillUpdate!="function"&&typeof u.componentWillUpdate!="function"||(typeof u.componentWillUpdate=="function"&&u.componentWillUpdate(a,A,d),typeof u.UNSAFE_componentWillUpdate=="function"&&u.UNSAFE_componentWillUpdate(a,A,d)),typeof u.componentDidUpdate=="function"&&(e.flags|=4),typeof u.getSnapshotBeforeUpdate=="function"&&(e.flags|=1024)):(typeof u.componentDidUpdate!="function"||i===t.memoizedProps&&x===t.memoizedState||(e.flags|=4),typeof u.getSnapshotBeforeUpdate!="function"||i===t.memoizedProps&&x===t.memoizedState||(e.flags|=1024),e.memoizedProps=a,e.memoizedState=A),u.props=a,u.state=A,u.context=d,a=M):(typeof u.componentDidUpdate!="function"||i===t.memoizedProps&&x===t.memoizedState||(e.flags|=4),typeof u.getSnapshotBeforeUpdate!="function"||i===t.memoizedProps&&x===t.memoizedState||(e.flags|=1024),a=!1)}return u=a,Au(t,e),a=(e.flags&128)!==0,u||a?(u=e.stateNode,l=a&&typeof l.getDerivedStateFromError!="function"?null:u.render(),e.flags|=1,t!==null&&a?(e.child=Jl(e,t.child,null,n),e.child=Jl(e,null,l,n)):Pt(t,e,l,n),e.memoizedState=u.state,t=e.child):t=We(t,e,n),t}function ro(t,e,l,a){return Yl(),e.flags|=256,Pt(t,e,l,a),e.child}var jc={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function Rc(t){return{baseLanes:t,cachePool:Ps()}}function qc(t,e,l){return t=t!==null?t.childLanes&~l:0,e&&(t|=Ee),t}function oo(t,e,l){var a=e.pendingProps,n=!1,u=(e.flags&128)!==0,i;if((i=u)||(i=t!==null&&t.memoizedState===null?!1:(qt.current&2)!==0),i&&(n=!0,e.flags&=-129),i=(e.flags&32)!==0,e.flags&=-33,t===null){if(dt){if(n?gl(e):yl(),(t=Ot)?(t=Th(t,De),t=t!==null&&t.data!=="&"?t:null,t!==null&&(e.memoizedState={dehydrated:t,treeContext:sl!==null?{id:Be,overflow:we}:null,retryLane:536870912,hydrationErrors:null},l=Zs(t),l.return=e,e.child=l,Ft=e,Ot=null)):t=null,t===null)throw ol(e);return pf(t)?e.lanes=32:e.lanes=536870912,null}var r=a.children;return a=a.fallback,n?(yl(),n=e.mode,r=_u({mode:"hidden",children:r},n),a=Ll(a,n,l,null),r.return=e,a.return=e,r.sibling=a,e.child=r,a=e.child,a.memoizedState=Rc(l),a.childLanes=qc(t,i,l),e.memoizedState=jc,vn(null,a)):(gl(e),Bc(e,r))}var d=t.memoizedState;if(d!==null&&(r=d.dehydrated,r!==null)){if(u)e.flags&256?(gl(e),e.flags&=-257,e=wc(t,e,l)):e.memoizedState!==null?(yl(),e.child=t.child,e.flags|=128,e=null):(yl(),r=a.fallback,n=e.mode,a=_u({mode:"visible",children:a.children},n),r=Ll(r,n,l,null),r.flags|=2,a.return=e,r.return=e,a.sibling=r,e.child=a,Jl(e,t.child,null,l),a=e.child,a.memoizedState=Rc(l),a.childLanes=qc(t,i,l),e.memoizedState=jc,e=vn(null,a));else if(gl(e),pf(r)){if(i=r.nextSibling&&r.nextSibling.dataset,i)var b=i.dgst;i=b,a=Error(c(419)),a.stack="",a.digest=i,ln({value:a,source:null,stack:null}),e=wc(t,e,l)}else if(Qt||va(t,e,l,!1),i=(l&t.childLanes)!==0,Qt||i){if(i=zt,i!==null&&(a=Ff(i,l),a!==0&&a!==d.retryLane))throw d.retryLane=a,wl(t,a),oe(i,t,a),Uc;Sf(r)||Ru(),e=wc(t,e,l)}else Sf(r)?(e.flags|=192,e.child=t.child,e=null):(t=d.treeContext,Ot=Ue(r.nextSibling),Ft=e,dt=!0,rl=null,De=!1,t!==null&&Ks(e,t),e=Bc(e,a.children),e.flags|=4096);return e}return n?(yl(),r=a.fallback,n=e.mode,d=t.child,b=d.sibling,a=Ze(d,{mode:"hidden",children:a.children}),a.subtreeFlags=d.subtreeFlags&65011712,b!==null?r=Ze(b,r):(r=Ll(r,n,l,null),r.flags|=2),r.return=e,a.return=e,a.sibling=r,e.child=a,vn(null,a),a=e.child,r=t.child.memoizedState,r===null?r=Rc(l):(n=r.cachePool,n!==null?(d=Yt._currentValue,n=n.parent!==d?{parent:d,pool:d}:n):n=Ps(),r={baseLanes:r.baseLanes|l,cachePool:n}),a.memoizedState=r,a.childLanes=qc(t,i,l),e.memoizedState=jc,vn(t.child,a)):(gl(e),l=t.child,t=l.sibling,l=Ze(l,{mode:"visible",children:a.children}),l.return=e,l.sibling=null,t!==null&&(i=e.deletions,i===null?(e.deletions=[t],e.flags|=16):i.push(t)),e.child=l,e.memoizedState=null,l)}function Bc(t,e){return e=_u({mode:"visible",children:e},t.mode),e.return=t,t.child=e}function _u(t,e){return t=Se(22,t,null,e),t.lanes=0,t}function wc(t,e,l){return Jl(e,t.child,null,l),t=Bc(e,e.pendingProps.children),t.flags|=2,e.memoizedState=null,t}function ho(t,e,l){t.lanes|=e;var a=t.alternate;a!==null&&(a.lanes|=e),Pi(t.return,e,l)}function Lc(t,e,l,a,n,u){var i=t.memoizedState;i===null?t.memoizedState={isBackwards:e,rendering:null,renderingStartTime:0,last:a,tail:l,tailMode:n,treeForkCount:u}:(i.isBackwards=e,i.rendering=null,i.renderingStartTime=0,i.last=a,i.tail=l,i.tailMode=n,i.treeForkCount=u)}function mo(t,e,l){var a=e.pendingProps,n=a.revealOrder,u=a.tail;a=a.children;var i=qt.current,r=(i&2)!==0;if(r?(i=i&1|2,e.flags|=128):i&=1,w(qt,i),Pt(t,e,a,l),a=dt?en:0,!r&&t!==null&&(t.flags&128)!==0)t:for(t=e.child;t!==null;){if(t.tag===13)t.memoizedState!==null&&ho(t,l,e);else if(t.tag===19)ho(t,l,e);else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break t;for(;t.sibling===null;){if(t.return===null||t.return===e)break t;t=t.return}t.sibling.return=t.return,t=t.sibling}switch(n){case"forwards":for(l=e.child,n=null;l!==null;)t=l.alternate,t!==null&&mu(t)===null&&(n=l),l=l.sibling;l=n,l===null?(n=e.child,e.child=null):(n=l.sibling,l.sibling=null),Lc(e,!1,n,l,u,a);break;case"backwards":case"unstable_legacy-backwards":for(l=null,n=e.child,e.child=null;n!==null;){if(t=n.alternate,t!==null&&mu(t)===null){e.child=n;break}t=n.sibling,n.sibling=l,l=n,n=t}Lc(e,!0,l,null,u,a);break;case"together":Lc(e,!1,null,null,void 0,a);break;default:e.memoizedState=null}return e.child}function We(t,e,l){if(t!==null&&(e.dependencies=t.dependencies),Tl|=e.lanes,(l&e.childLanes)===0)if(t!==null){if(va(t,e,l,!1),(l&e.childLanes)===0)return null}else return null;if(t!==null&&e.child!==t.child)throw Error(c(153));if(e.child!==null){for(t=e.child,l=Ze(t,t.pendingProps),e.child=l,l.return=e;t.sibling!==null;)t=t.sibling,l=l.sibling=Ze(t,t.pendingProps),l.return=e;l.sibling=null}return e.child}function Yc(t,e){return(t.lanes&e)!==0?!0:(t=t.dependencies,!!(t!==null&&iu(t)))}function l1(t,e,l){switch(e.tag){case 3:Vt(e,e.stateNode.containerInfo),hl(e,Yt,t.memoizedState.cache),Yl();break;case 27:case 5:Cl(e);break;case 4:Vt(e,e.stateNode.containerInfo);break;case 10:hl(e,e.type,e.memoizedProps.value);break;case 31:if(e.memoizedState!==null)return e.flags|=128,oc(e),null;break;case 13:var a=e.memoizedState;if(a!==null)return a.dehydrated!==null?(gl(e),e.flags|=128,null):(l&e.child.childLanes)!==0?oo(t,e,l):(gl(e),t=We(t,e,l),t!==null?t.sibling:null);gl(e);break;case 19:var n=(t.flags&128)!==0;if(a=(l&e.childLanes)!==0,a||(va(t,e,l,!1),a=(l&e.childLanes)!==0),n){if(a)return mo(t,e,l);e.flags|=128}if(n=e.memoizedState,n!==null&&(n.rendering=null,n.tail=null,n.lastEffect=null),w(qt,qt.current),a)break;return null;case 22:return e.lanes=0,uo(t,e,l,e.pendingProps);case 24:hl(e,Yt,t.memoizedState.cache)}return We(t,e,l)}function vo(t,e,l){if(t!==null)if(t.memoizedProps!==e.pendingProps)Qt=!0;else{if(!Yc(t,l)&&(e.flags&128)===0)return Qt=!1,l1(t,e,l);Qt=(t.flags&131072)!==0}else Qt=!1,dt&&(e.flags&1048576)!==0&&Js(e,en,e.index);switch(e.lanes=0,e.tag){case 16:t:{var a=e.pendingProps;if(t=Zl(e.elementType),e.type=t,typeof t=="function")Vi(t)?(a=$l(t,a),e.tag=1,e=so(null,e,t,a,l)):(e.tag=0,e=Hc(null,e,t,a,l));else{if(t!=null){var n=t.$$typeof;if(n===Rt){e.tag=11,e=lo(null,e,t,a,l);break t}else if(n===tt){e.tag=14,e=ao(null,e,t,a,l);break t}}throw e=_t(t)||t,Error(c(306,e,""))}}return e;case 0:return Hc(t,e,e.type,e.pendingProps,l);case 1:return a=e.type,n=$l(a,e.pendingProps),so(t,e,a,n,l);case 3:t:{if(Vt(e,e.stateNode.containerInfo),t===null)throw Error(c(387));a=e.pendingProps;var u=e.memoizedState;n=u.element,ic(t,e),rn(e,a,null,l);var i=e.memoizedState;if(a=i.cache,hl(e,Yt,a),a!==u.cache&&tc(e,[Yt],l,!0),sn(),a=i.element,u.isDehydrated)if(u={element:a,isDehydrated:!1,cache:i.cache},e.updateQueue.baseState=u,e.memoizedState=u,e.flags&256){e=ro(t,e,a,l);break t}else if(a!==n){n=Oe(Error(c(424)),e),ln(n),e=ro(t,e,a,l);break t}else{switch(t=e.stateNode.containerInfo,t.nodeType){case 9:t=t.body;break;default:t=t.nodeName==="HTML"?t.ownerDocument.body:t}for(Ot=Ue(t.firstChild),Ft=e,dt=!0,rl=null,De=!0,l=ur(e,null,a,l),e.child=l;l;)l.flags=l.flags&-3|4096,l=l.sibling}else{if(Yl(),a===n){e=We(t,e,l);break t}Pt(t,e,a,l)}e=e.child}return e;case 26:return Au(t,e),t===null?(l=_h(e.type,null,e.pendingProps,null))?e.memoizedState=l:dt||(l=e.type,t=e.pendingProps,a=Qu(at.current).createElement(l),a[Wt]=e,a[ue]=t,te(a,l,t),$t(a),e.stateNode=a):e.memoizedState=_h(e.type,t.memoizedProps,e.pendingProps,t.memoizedState),null;case 27:return Cl(e),t===null&&dt&&(a=e.stateNode=xh(e.type,e.pendingProps,at.current),Ft=e,De=!0,n=Ot,Al(e.type)?(Tf=n,Ot=Ue(a.firstChild)):Ot=n),Pt(t,e,e.pendingProps.children,l),Au(t,e),t===null&&(e.flags|=4194304),e.child;case 5:return t===null&&dt&&((n=a=Ot)&&(a=U1(a,e.type,e.pendingProps,De),a!==null?(e.stateNode=a,Ft=e,Ot=Ue(a.firstChild),De=!1,n=!0):n=!1),n||ol(e)),Cl(e),n=e.type,u=e.pendingProps,i=t!==null?t.memoizedProps:null,a=u.children,vf(n,u)?a=null:i!==null&&vf(n,i)&&(e.flags|=32),e.memoizedState!==null&&(n=dc(t,e,Kd,null,null,l),Dn._currentValue=n),Au(t,e),Pt(t,e,a,l),e.child;case 6:return t===null&&dt&&((t=l=Ot)&&(l=H1(l,e.pendingProps,De),l!==null?(e.stateNode=l,Ft=e,Ot=null,t=!0):t=!1),t||ol(e)),null;case 13:return oo(t,e,l);case 4:return Vt(e,e.stateNode.containerInfo),a=e.pendingProps,t===null?e.child=Jl(e,null,a,l):Pt(t,e,a,l),e.child;case 11:return lo(t,e,e.type,e.pendingProps,l);case 7:return Pt(t,e,e.pendingProps,l),e.child;case 8:return Pt(t,e,e.pendingProps.children,l),e.child;case 12:return Pt(t,e,e.pendingProps.children,l),e.child;case 10:return a=e.pendingProps,hl(e,e.type,a.value),Pt(t,e,a.children,l),e.child;case 9:return n=e.type._context,a=e.pendingProps.children,Ql(e),n=It(n),a=a(n),e.flags|=1,Pt(t,e,a,l),e.child;case 14:return ao(t,e,e.type,e.pendingProps,l);case 15:return no(t,e,e.type,e.pendingProps,l);case 19:return mo(t,e,l);case 31:return e1(t,e,l);case 22:return uo(t,e,l,e.pendingProps);case 24:return Ql(e),a=It(Yt),t===null?(n=ac(),n===null&&(n=zt,u=ec(),n.pooledCache=u,u.refCount++,u!==null&&(n.pooledCacheLanes|=l),n=u),e.memoizedState={parent:a,cache:n},uc(e),hl(e,Yt,n)):((t.lanes&l)!==0&&(ic(t,e),rn(e,null,null,l),sn()),n=t.memoizedState,u=e.memoizedState,n.parent!==a?(n={parent:a,cache:a},e.memoizedState=n,e.lanes===0&&(e.memoizedState=e.updateQueue.baseState=n),hl(e,Yt,a)):(a=u.cache,hl(e,Yt,a),a!==n.cache&&tc(e,[Yt],l,!0))),Pt(t,e,e.pendingProps.children,l),e.child;case 29:throw e.pendingProps}throw Error(c(156,e.tag))}function Fe(t){t.flags|=4}function Gc(t,e,l,a,n){if((e=(t.mode&32)!==0)&&(e=!1),e){if(t.flags|=16777216,(n&335544128)===n)if(t.stateNode.complete)t.flags|=8192;else if(Qo())t.flags|=8192;else throw Vl=ru,nc}else t.flags&=-16777217}function go(t,e){if(e.type!=="stylesheet"||(e.state.loading&4)!==0)t.flags&=-16777217;else if(t.flags|=16777216,!Ch(e))if(Qo())t.flags|=8192;else throw Vl=ru,nc}function Ou(t,e){e!==null&&(t.flags|=4),t.flags&16384&&(e=t.tag!==22?$f():536870912,t.lanes|=e,Oa|=e)}function gn(t,e){if(!dt)switch(t.tailMode){case"hidden":e=t.tail;for(var l=null;e!==null;)e.alternate!==null&&(l=e),e=e.sibling;l===null?t.tail=null:l.sibling=null;break;case"collapsed":l=t.tail;for(var a=null;l!==null;)l.alternate!==null&&(a=l),l=l.sibling;a===null?e||t.tail===null?t.tail=null:t.tail.sibling=null:a.sibling=null}}function Mt(t){var e=t.alternate!==null&&t.alternate.child===t.child,l=0,a=0;if(e)for(var n=t.child;n!==null;)l|=n.lanes|n.childLanes,a|=n.subtreeFlags&65011712,a|=n.flags&65011712,n.return=t,n=n.sibling;else for(n=t.child;n!==null;)l|=n.lanes|n.childLanes,a|=n.subtreeFlags,a|=n.flags,n.return=t,n=n.sibling;return t.subtreeFlags|=a,t.childLanes=l,e}function a1(t,e,l){var a=e.pendingProps;switch(ki(e),e.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Mt(e),null;case 1:return Mt(e),null;case 3:return l=e.stateNode,a=null,t!==null&&(a=t.memoizedState.cache),e.memoizedState.cache!==a&&(e.flags|=2048),Ke(Yt),Ut(),l.pendingContext&&(l.context=l.pendingContext,l.pendingContext=null),(t===null||t.child===null)&&(ma(e)?Fe(e):t===null||t.memoizedState.isDehydrated&&(e.flags&256)===0||(e.flags|=1024,Fi())),Mt(e),null;case 26:var n=e.type,u=e.memoizedState;return t===null?(Fe(e),u!==null?(Mt(e),go(e,u)):(Mt(e),Gc(e,n,null,a,l))):u?u!==t.memoizedState?(Fe(e),Mt(e),go(e,u)):(Mt(e),e.flags&=-16777217):(t=t.memoizedProps,t!==a&&Fe(e),Mt(e),Gc(e,n,t,a,l)),null;case 27:if(wn(e),l=at.current,n=e.type,t!==null&&e.stateNode!=null)t.memoizedProps!==a&&Fe(e);else{if(!a){if(e.stateNode===null)throw Error(c(166));return Mt(e),null}t=Y.current,ma(e)?$s(e):(t=xh(n,a,l),e.stateNode=t,Fe(e))}return Mt(e),null;case 5:if(wn(e),n=e.type,t!==null&&e.stateNode!=null)t.memoizedProps!==a&&Fe(e);else{if(!a){if(e.stateNode===null)throw Error(c(166));return Mt(e),null}if(u=Y.current,ma(e))$s(e);else{var i=Qu(at.current);switch(u){case 1:u=i.createElementNS("http://www.w3.org/2000/svg",n);break;case 2:u=i.createElementNS("http://www.w3.org/1998/Math/MathML",n);break;default:switch(n){case"svg":u=i.createElementNS("http://www.w3.org/2000/svg",n);break;case"math":u=i.createElementNS("http://www.w3.org/1998/Math/MathML",n);break;case"script":u=i.createElement("div"),u.innerHTML="<script><\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof a.is=="string"?i.createElement("select",{is:a.is}):i.createElement("select"),a.multiple?u.multiple=!0:a.size&&(u.size=a.size);break;default:u=typeof a.is=="string"?i.createElement(n,{is:a.is}):i.createElement(n)}}u[Wt]=e,u[ue]=a;t:for(i=e.child;i!==null;){if(i.tag===5||i.tag===6)u.appendChild(i.stateNode);else if(i.tag!==4&&i.tag!==27&&i.child!==null){i.child.return=i,i=i.child;continue}if(i===e)break t;for(;i.sibling===null;){if(i.return===null||i.return===e)break t;i=i.return}i.sibling.return=i.return,i=i.sibling}e.stateNode=u;t:switch(te(u,n,a),n){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break t;case"img":a=!0;break t;default:a=!1}a&&Fe(e)}}return Mt(e),Gc(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,l),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==a&&Fe(e);else{if(typeof a!="string"&&e.stateNode===null)throw Error(c(166));if(t=at.current,ma(e)){if(t=e.stateNode,l=e.memoizedProps,a=null,n=Ft,n!==null)switch(n.tag){case 27:case 5:a=n.memoizedProps}t[Wt]=e,t=!!(t.nodeValue===l||a!==null&&a.suppressHydrationWarning===!0||hh(t.nodeValue,l)),t||ol(e,!0)}else t=Qu(t).createTextNode(a),t[Wt]=e,e.stateNode=t}return Mt(e),null;case 31:if(l=e.memoizedState,t===null||t.memoizedState!==null){if(a=ma(e),l!==null){if(t===null){if(!a)throw Error(c(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(c(557));t[Wt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Mt(e),t=!1}else l=Fi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),t=!0;if(!t)return e.flags&256?(Te(e),e):(Te(e),null);if((e.flags&128)!==0)throw Error(c(558))}return Mt(e),null;case 13:if(a=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(n=ma(e),a!==null&&a.dehydrated!==null){if(t===null){if(!n)throw Error(c(318));if(n=e.memoizedState,n=n!==null?n.dehydrated:null,!n)throw Error(c(317));n[Wt]=e}else Yl(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Mt(e),n=!1}else n=Fi(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=n),n=!0;if(!n)return e.flags&256?(Te(e),e):(Te(e),null)}return Te(e),(e.flags&128)!==0?(e.lanes=l,e):(l=a!==null,t=t!==null&&t.memoizedState!==null,l&&(a=e.child,n=null,a.alternate!==null&&a.alternate.memoizedState!==null&&a.alternate.memoizedState.cachePool!==null&&(n=a.alternate.memoizedState.cachePool.pool),u=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(u=a.memoizedState.cachePool.pool),u!==n&&(a.flags|=2048)),l!==t&&l&&(e.child.flags|=8192),Ou(e,e.updateQueue),Mt(e),null);case 4:return Ut(),t===null&&rf(e.stateNode.containerInfo),Mt(e),null;case 10:return Ke(e.type),Mt(e),null;case 19:if(_(qt),a=e.memoizedState,a===null)return Mt(e),null;if(n=(e.flags&128)!==0,u=a.rendering,u===null)if(n)gn(a,!1);else{if(jt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(u=mu(t),u!==null){for(e.flags|=128,gn(a,!1),t=u.updateQueue,e.updateQueue=t,Ou(e,t),e.subtreeFlags=0,t=l,l=e.child;l!==null;)Xs(l,t),l=l.sibling;return w(qt,qt.current&1|2),dt&&Ve(e,a.treeForkCount),e.child}t=t.sibling}a.tail!==null&&me()>Uu&&(e.flags|=128,n=!0,gn(a,!1),e.lanes=4194304)}else{if(!n)if(t=mu(u),t!==null){if(e.flags|=128,n=!0,t=t.updateQueue,e.updateQueue=t,Ou(e,t),gn(a,!0),a.tail===null&&a.tailMode==="hidden"&&!u.alternate&&!dt)return Mt(e),null}else 2*me()-a.renderingStartTime>Uu&&l!==536870912&&(e.flags|=128,n=!0,gn(a,!1),e.lanes=4194304);a.isBackwards?(u.sibling=e.child,e.child=u):(t=a.last,t!==null?t.sibling=u:e.child=u,a.last=u)}return a.tail!==null?(t=a.tail,a.rendering=t,a.tail=t.sibling,a.renderingStartTime=me(),t.sibling=null,l=qt.current,w(qt,n?l&1|2:l&1),dt&&Ve(e,a.treeForkCount),t):(Mt(e),null);case 22:case 23:return Te(e),rc(),a=e.memoizedState!==null,t!==null?t.memoizedState!==null!==a&&(e.flags|=8192):a&&(e.flags|=8192),a?(l&536870912)!==0&&(e.flags&128)===0&&(Mt(e),e.subtreeFlags&6&&(e.flags|=8192)):Mt(e),l=e.updateQueue,l!==null&&Ou(e,l.retryQueue),l=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),a=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),a!==l&&(e.flags|=2048),t!==null&&_(Xl),null;case 24:return l=null,t!==null&&(l=t.memoizedState.cache),e.memoizedState.cache!==l&&(e.flags|=2048),Ke(Yt),Mt(e),null;case 25:return null;case 30:return null}throw Error(c(156,e.tag))}function n1(t,e){switch(ki(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Ke(Yt),Ut(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return wn(e),null;case 31:if(e.memoizedState!==null){if(Te(e),e.alternate===null)throw Error(c(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(Te(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(c(340));Yl()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return _(qt),null;case 4:return Ut(),null;case 10:return Ke(e.type),null;case 22:case 23:return Te(e),rc(),t!==null&&_(Xl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return Ke(Yt),null;case 25:return null;default:return null}}function yo(t,e){switch(ki(e),e.tag){case 3:Ke(Yt),Ut();break;case 26:case 27:case 5:wn(e);break;case 4:Ut();break;case 31:e.memoizedState!==null&&Te(e);break;case 13:Te(e);break;case 19:_(qt);break;case 10:Ke(e.type);break;case 22:case 23:Te(e),rc(),t!==null&&_(Xl);break;case 24:Ke(Yt)}}function yn(t,e){try{var l=e.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var n=a.next;l=n;do{if((l.tag&t)===t){a=void 0;var u=l.create,i=l.inst;a=u(),i.destroy=a}l=l.next}while(l!==n)}}catch(r){pt(e,e.return,r)}}function Sl(t,e,l){try{var a=e.updateQueue,n=a!==null?a.lastEffect:null;if(n!==null){var u=n.next;a=u;do{if((a.tag&t)===t){var i=a.inst,r=i.destroy;if(r!==void 0){i.destroy=void 0,n=e;var d=l,b=r;try{b()}catch(M){pt(n,d,M)}}}a=a.next}while(a!==u)}}catch(M){pt(e,e.return,M)}}function So(t){var e=t.updateQueue;if(e!==null){var l=t.stateNode;try{cr(e,l)}catch(a){pt(t,t.return,a)}}}function po(t,e,l){l.props=$l(t.type,t.memoizedProps),l.state=t.memoizedState;try{l.componentWillUnmount()}catch(a){pt(t,e,a)}}function Sn(t,e){try{var l=t.ref;if(l!==null){switch(t.tag){case 26:case 27:case 5:var a=t.stateNode;break;case 30:a=t.stateNode;break;default:a=t.stateNode}typeof l=="function"?t.refCleanup=l(a):l.current=a}}catch(n){pt(t,e,n)}}function Le(t,e){var l=t.ref,a=t.refCleanup;if(l!==null)if(typeof a=="function")try{a()}catch(n){pt(t,e,n)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(n){pt(t,e,n)}else l.current=null}function To(t){var e=t.type,l=t.memoizedProps,a=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":l.autoFocus&&a.focus();break t;case"img":l.src?a.src=l.src:l.srcSet&&(a.srcset=l.srcSet)}}catch(n){pt(t,t.return,n)}}function Qc(t,e,l){try{var a=t.stateNode;_1(a,t.type,l,e),a[ue]=e}catch(n){pt(t,t.return,n)}}function bo(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&Al(t.type)||t.tag===4}function Xc(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||bo(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&Al(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function Zc(t,e,l){var a=t.tag;if(a===5||a===6)t=t.stateNode,e?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(t,e):(e=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,e.appendChild(t),l=l._reactRootContainer,l!=null||e.onclick!==null||(e.onclick=Qe));else if(a!==4&&(a===27&&Al(t.type)&&(l=t.stateNode,e=null),t=t.child,t!==null))for(Zc(t,e,l),t=t.sibling;t!==null;)Zc(t,e,l),t=t.sibling}function Mu(t,e,l){var a=t.tag;if(a===5||a===6)t=t.stateNode,e?l.insertBefore(t,e):l.appendChild(t);else if(a!==4&&(a===27&&Al(t.type)&&(l=t.stateNode),t=t.child,t!==null))for(Mu(t,e,l),t=t.sibling;t!==null;)Mu(t,e,l),t=t.sibling}function Eo(t){var e=t.stateNode,l=t.memoizedProps;try{for(var a=t.type,n=e.attributes;n.length;)e.removeAttributeNode(n[0]);te(e,a,l),e[Wt]=t,e[ue]=l}catch(u){pt(t,t.return,u)}}var Ie=!1,Xt=!1,Vc=!1,xo=typeof WeakSet=="function"?WeakSet:Set,kt=null;function u1(t,e){if(t=t.containerInfo,df=ku,t=js(t),wi(t)){if("selectionStart"in t)var l={start:t.selectionStart,end:t.selectionEnd};else t:{l=(l=t.ownerDocument)&&l.defaultView||window;var a=l.getSelection&&l.getSelection();if(a&&a.rangeCount!==0){l=a.anchorNode;var n=a.anchorOffset,u=a.focusNode;a=a.focusOffset;try{l.nodeType,u.nodeType}catch{l=null;break t}var i=0,r=-1,d=-1,b=0,M=0,C=t,x=null;e:for(;;){for(var A;C!==l||n!==0&&C.nodeType!==3||(r=i+n),C!==u||a!==0&&C.nodeType!==3||(d=i+a),C.nodeType===3&&(i+=C.nodeValue.length),(A=C.firstChild)!==null;)x=C,C=A;for(;;){if(C===t)break e;if(x===l&&++b===n&&(r=i),x===u&&++M===a&&(d=i),(A=C.nextSibling)!==null)break;C=x,x=C.parentNode}C=A}l=r===-1||d===-1?null:{start:r,end:d}}else l=null}l=l||{start:0,end:0}}else l=null;for(mf={focusedElem:t,selectionRange:l},ku=!1,kt=e;kt!==null;)if(e=kt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,kt=t;else for(;kt!==null;){switch(e=kt,u=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(l=0;l<t.length;l++)n=t[l],n.ref.impl=n.nextImpl;break;case 11:case 15:break;case 1:if((t&1024)!==0&&u!==null){t=void 0,l=e,n=u.memoizedProps,u=u.memoizedState,a=l.stateNode;try{var X=$l(l.type,n);t=a.getSnapshotBeforeUpdate(X,u),a.__reactInternalSnapshotBeforeUpdate=t}catch(W){pt(l,l.return,W)}}break;case 3:if((t&1024)!==0){if(t=e.stateNode.containerInfo,l=t.nodeType,l===9)yf(t);else if(l===1)switch(t.nodeName){case"HEAD":case"HTML":case"BODY":yf(t);break;default:t.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((t&1024)!==0)throw Error(c(163))}if(t=e.sibling,t!==null){t.return=e.return,kt=t;break}kt=e.return}}function zo(t,e,l){var a=l.flags;switch(l.tag){case 0:case 11:case 15:tl(t,l),a&4&&yn(5,l);break;case 1:if(tl(t,l),a&4)if(t=l.stateNode,e===null)try{t.componentDidMount()}catch(i){pt(l,l.return,i)}else{var n=$l(l.type,e.memoizedProps);e=e.memoizedState;try{t.componentDidUpdate(n,e,t.__reactInternalSnapshotBeforeUpdate)}catch(i){pt(l,l.return,i)}}a&64&&So(l),a&512&&Sn(l,l.return);break;case 3:if(tl(t,l),a&64&&(t=l.updateQueue,t!==null)){if(e=null,l.child!==null)switch(l.child.tag){case 27:case 5:e=l.child.stateNode;break;case 1:e=l.child.stateNode}try{cr(t,e)}catch(i){pt(l,l.return,i)}}break;case 27:e===null&&a&4&&Eo(l);case 26:case 5:tl(t,l),e===null&&a&4&&To(l),a&512&&Sn(l,l.return);break;case 12:tl(t,l);break;case 31:tl(t,l),a&4&&Oo(t,l);break;case 13:tl(t,l),a&4&&Mo(t,l),a&64&&(t=l.memoizedState,t!==null&&(t=t.dehydrated,t!==null&&(l=m1.bind(null,l),j1(t,l))));break;case 22:if(a=l.memoizedState!==null||Ie,!a){e=e!==null&&e.memoizedState!==null||Xt,n=Ie;var u=Xt;Ie=a,(Xt=e)&&!u?el(t,l,(l.subtreeFlags&8772)!==0):tl(t,l),Ie=n,Xt=u}break;case 30:break;default:tl(t,l)}}function Ao(t){var e=t.alternate;e!==null&&(t.alternate=null,Ao(e)),t.child=null,t.deletions=null,t.sibling=null,t.tag===5&&(e=t.stateNode,e!==null&&bi(e)),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}var Ct=null,ce=!1;function Pe(t,e,l){for(l=l.child;l!==null;)_o(t,e,l),l=l.sibling}function _o(t,e,l){if(ve&&typeof ve.onCommitFiberUnmount=="function")try{ve.onCommitFiberUnmount(Ga,l)}catch{}switch(l.tag){case 26:Xt||Le(l,e),Pe(t,e,l),l.memoizedState?l.memoizedState.count--:l.stateNode&&(l=l.stateNode,l.parentNode.removeChild(l));break;case 27:Xt||Le(l,e);var a=Ct,n=ce;Al(l.type)&&(Ct=l.stateNode,ce=!1),Pe(t,e,l),On(l.stateNode),Ct=a,ce=n;break;case 5:Xt||Le(l,e);case 6:if(a=Ct,n=ce,Ct=null,Pe(t,e,l),Ct=a,ce=n,Ct!==null)if(ce)try{(Ct.nodeType===9?Ct.body:Ct.nodeName==="HTML"?Ct.ownerDocument.body:Ct).removeChild(l.stateNode)}catch(u){pt(l,e,u)}else try{Ct.removeChild(l.stateNode)}catch(u){pt(l,e,u)}break;case 18:Ct!==null&&(ce?(t=Ct,Sh(t.nodeType===9?t.body:t.nodeName==="HTML"?t.ownerDocument.body:t,l.stateNode),Ra(t)):Sh(Ct,l.stateNode));break;case 4:a=Ct,n=ce,Ct=l.stateNode.containerInfo,ce=!0,Pe(t,e,l),Ct=a,ce=n;break;case 0:case 11:case 14:case 15:Sl(2,l,e),Xt||Sl(4,l,e),Pe(t,e,l);break;case 1:Xt||(Le(l,e),a=l.stateNode,typeof a.componentWillUnmount=="function"&&po(l,e,a)),Pe(t,e,l);break;case 21:Pe(t,e,l);break;case 22:Xt=(a=Xt)||l.memoizedState!==null,Pe(t,e,l),Xt=a;break;default:Pe(t,e,l)}}function Oo(t,e){if(e.memoizedState===null&&(t=e.alternate,t!==null&&(t=t.memoizedState,t!==null))){t=t.dehydrated;try{Ra(t)}catch(l){pt(e,e.return,l)}}}function Mo(t,e){if(e.memoizedState===null&&(t=e.alternate,t!==null&&(t=t.memoizedState,t!==null&&(t=t.dehydrated,t!==null))))try{Ra(t)}catch(l){pt(e,e.return,l)}}function i1(t){switch(t.tag){case 31:case 13:case 19:var e=t.stateNode;return e===null&&(e=t.stateNode=new xo),e;case 22:return t=t.stateNode,e=t._retryCache,e===null&&(e=t._retryCache=new xo),e;default:throw Error(c(435,t.tag))}}function Nu(t,e){var l=i1(t);e.forEach(function(a){if(!l.has(a)){l.add(a);var n=v1.bind(null,t,a);a.then(n,n)}})}function fe(t,e){var l=e.deletions;if(l!==null)for(var a=0;a<l.length;a++){var n=l[a],u=t,i=e,r=i;t:for(;r!==null;){switch(r.tag){case 27:if(Al(r.type)){Ct=r.stateNode,ce=!1;break t}break;case 5:Ct=r.stateNode,ce=!1;break t;case 3:case 4:Ct=r.stateNode.containerInfo,ce=!0;break t}r=r.return}if(Ct===null)throw Error(c(160));_o(u,i,n),Ct=null,ce=!1,u=n.alternate,u!==null&&(u.return=null),n.return=null}if(e.subtreeFlags&13886)for(e=e.child;e!==null;)No(e,t),e=e.sibling}var Re=null;function No(t,e){var l=t.alternate,a=t.flags;switch(t.tag){case 0:case 11:case 14:case 15:fe(e,t),se(t),a&4&&(Sl(3,t,t.return),yn(3,t),Sl(5,t,t.return));break;case 1:fe(e,t),se(t),a&512&&(Xt||l===null||Le(l,l.return)),a&64&&Ie&&(t=t.updateQueue,t!==null&&(a=t.callbacks,a!==null&&(l=t.shared.hiddenCallbacks,t.shared.hiddenCallbacks=l===null?a:l.concat(a))));break;case 26:var n=Re;if(fe(e,t),se(t),a&512&&(Xt||l===null||Le(l,l.return)),a&4){var u=l!==null?l.memoizedState:null;if(a=t.memoizedState,l===null)if(a===null)if(t.stateNode===null){t:{a=t.type,l=t.memoizedProps,n=n.ownerDocument||n;e:switch(a){case"title":u=n.getElementsByTagName("title")[0],(!u||u[Za]||u[Wt]||u.namespaceURI==="http://www.w3.org/2000/svg"||u.hasAttribute("itemprop"))&&(u=n.createElement(a),n.head.insertBefore(u,n.querySelector("head > title"))),te(u,a,l),u[Wt]=t,$t(u),a=u;break t;case"link":var i=Nh("link","href",n).get(a+(l.href||""));if(i){for(var r=0;r<i.length;r++)if(u=i[r],u.getAttribute("href")===(l.href==null||l.href===""?null:l.href)&&u.getAttribute("rel")===(l.rel==null?null:l.rel)&&u.getAttribute("title")===(l.title==null?null:l.title)&&u.getAttribute("crossorigin")===(l.crossOrigin==null?null:l.crossOrigin)){i.splice(r,1);break e}}u=n.createElement(a),te(u,a,l),n.head.appendChild(u);break;case"meta":if(i=Nh("meta","content",n).get(a+(l.content||""))){for(r=0;r<i.length;r++)if(u=i[r],u.getAttribute("content")===(l.content==null?null:""+l.content)&&u.getAttribute("name")===(l.name==null?null:l.name)&&u.getAttribute("property")===(l.property==null?null:l.property)&&u.getAttribute("http-equiv")===(l.httpEquiv==null?null:l.httpEquiv)&&u.getAttribute("charset")===(l.charSet==null?null:l.charSet)){i.splice(r,1);break e}}u=n.createElement(a),te(u,a,l),n.head.appendChild(u);break;default:throw Error(c(468,a))}u[Wt]=t,$t(u),a=u}t.stateNode=a}else Dh(n,t.type,t.stateNode);else t.stateNode=Mh(n,a,t.memoizedProps);else u!==a?(u===null?l.stateNode!==null&&(l=l.stateNode,l.parentNode.removeChild(l)):u.count--,a===null?Dh(n,t.type,t.stateNode):Mh(n,a,t.memoizedProps)):a===null&&t.stateNode!==null&&Qc(t,t.memoizedProps,l.memoizedProps)}break;case 27:fe(e,t),se(t),a&512&&(Xt||l===null||Le(l,l.return)),l!==null&&a&4&&Qc(t,t.memoizedProps,l.memoizedProps);break;case 5:if(fe(e,t),se(t),a&512&&(Xt||l===null||Le(l,l.return)),t.flags&32){n=t.stateNode;try{na(n,"")}catch(X){pt(t,t.return,X)}}a&4&&t.stateNode!=null&&(n=t.memoizedProps,Qc(t,n,l!==null?l.memoizedProps:n)),a&1024&&(Vc=!0);break;case 6:if(fe(e,t),se(t),a&4){if(t.stateNode===null)throw Error(c(162));a=t.memoizedProps,l=t.stateNode;try{l.nodeValue=a}catch(X){pt(t,t.return,X)}}break;case 3:if(Vu=null,n=Re,Re=Xu(e.containerInfo),fe(e,t),Re=n,se(t),a&4&&l!==null&&l.memoizedState.isDehydrated)try{Ra(e.containerInfo)}catch(X){pt(t,t.return,X)}Vc&&(Vc=!1,Do(t));break;case 4:a=Re,Re=Xu(t.stateNode.containerInfo),fe(e,t),se(t),Re=a;break;case 12:fe(e,t),se(t);break;case 31:fe(e,t),se(t),a&4&&(a=t.updateQueue,a!==null&&(t.updateQueue=null,Nu(t,a)));break;case 13:fe(e,t),se(t),t.child.flags&8192&&t.memoizedState!==null!=(l!==null&&l.memoizedState!==null)&&(Cu=me()),a&4&&(a=t.updateQueue,a!==null&&(t.updateQueue=null,Nu(t,a)));break;case 22:n=t.memoizedState!==null;var d=l!==null&&l.memoizedState!==null,b=Ie,M=Xt;if(Ie=b||n,Xt=M||d,fe(e,t),Xt=M,Ie=b,se(t),a&8192)t:for(e=t.stateNode,e._visibility=n?e._visibility&-2:e._visibility|1,n&&(l===null||d||Ie||Xt||kl(t)),l=null,e=t;;){if(e.tag===5||e.tag===26){if(l===null){d=l=e;try{if(u=d.stateNode,n)i=u.style,typeof i.setProperty=="function"?i.setProperty("display","none","important"):i.display="none";else{r=d.stateNode;var C=d.memoizedProps.style,x=C!=null&&C.hasOwnProperty("display")?C.display:null;r.style.display=x==null||typeof x=="boolean"?"":(""+x).trim()}}catch(X){pt(d,d.return,X)}}}else if(e.tag===6){if(l===null){d=e;try{d.stateNode.nodeValue=n?"":d.memoizedProps}catch(X){pt(d,d.return,X)}}}else if(e.tag===18){if(l===null){d=e;try{var A=d.stateNode;n?ph(A,!0):ph(d.stateNode,!1)}catch(X){pt(d,d.return,X)}}}else if((e.tag!==22&&e.tag!==23||e.memoizedState===null||e===t)&&e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break t;for(;e.sibling===null;){if(e.return===null||e.return===t)break t;l===e&&(l=null),e=e.return}l===e&&(l=null),e.sibling.return=e.return,e=e.sibling}a&4&&(a=t.updateQueue,a!==null&&(l=a.retryQueue,l!==null&&(a.retryQueue=null,Nu(t,l))));break;case 19:fe(e,t),se(t),a&4&&(a=t.updateQueue,a!==null&&(t.updateQueue=null,Nu(t,a)));break;case 30:break;case 21:break;default:fe(e,t),se(t)}}function se(t){var e=t.flags;if(e&2){try{for(var l,a=t.return;a!==null;){if(bo(a)){l=a;break}a=a.return}if(l==null)throw Error(c(160));switch(l.tag){case 27:var n=l.stateNode,u=Xc(t);Mu(t,u,n);break;case 5:var i=l.stateNode;l.flags&32&&(na(i,""),l.flags&=-33);var r=Xc(t);Mu(t,r,i);break;case 3:case 4:var d=l.stateNode.containerInfo,b=Xc(t);Zc(t,b,d);break;default:throw Error(c(161))}}catch(M){pt(t,t.return,M)}t.flags&=-3}e&4096&&(t.flags&=-4097)}function Do(t){if(t.subtreeFlags&1024)for(t=t.child;t!==null;){var e=t;Do(e),e.tag===5&&e.flags&1024&&e.stateNode.reset(),t=t.sibling}}function tl(t,e){if(e.subtreeFlags&8772)for(e=e.child;e!==null;)zo(t,e.alternate,e),e=e.sibling}function kl(t){for(t=t.child;t!==null;){var e=t;switch(e.tag){case 0:case 11:case 14:case 15:Sl(4,e,e.return),kl(e);break;case 1:Le(e,e.return);var l=e.stateNode;typeof l.componentWillUnmount=="function"&&po(e,e.return,l),kl(e);break;case 27:On(e.stateNode);case 26:case 5:Le(e,e.return),kl(e);break;case 22:e.memoizedState===null&&kl(e);break;case 30:kl(e);break;default:kl(e)}t=t.sibling}}function el(t,e,l){for(l=l&&(e.subtreeFlags&8772)!==0,e=e.child;e!==null;){var a=e.alternate,n=t,u=e,i=u.flags;switch(u.tag){case 0:case 11:case 15:el(n,u,l),yn(4,u);break;case 1:if(el(n,u,l),a=u,n=a.stateNode,typeof n.componentDidMount=="function")try{n.componentDidMount()}catch(b){pt(a,a.return,b)}if(a=u,n=a.updateQueue,n!==null){var r=a.stateNode;try{var d=n.shared.hiddenCallbacks;if(d!==null)for(n.shared.hiddenCallbacks=null,n=0;n<d.length;n++)ir(d[n],r)}catch(b){pt(a,a.return,b)}}l&&i&64&&So(u),Sn(u,u.return);break;case 27:Eo(u);case 26:case 5:el(n,u,l),l&&a===null&&i&4&&To(u),Sn(u,u.return);break;case 12:el(n,u,l);break;case 31:el(n,u,l),l&&i&4&&Oo(n,u);break;case 13:el(n,u,l),l&&i&4&&Mo(n,u);break;case 22:u.memoizedState===null&&el(n,u,l),Sn(u,u.return);break;case 30:break;default:el(n,u,l)}e=e.sibling}}function Jc(t,e){var l=null;t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),t=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(t=e.memoizedState.cachePool.pool),t!==l&&(t!=null&&t.refCount++,l!=null&&an(l))}function Kc(t,e){t=null,e.alternate!==null&&(t=e.alternate.memoizedState.cache),e=e.memoizedState.cache,e!==t&&(e.refCount++,t!=null&&an(t))}function qe(t,e,l,a){if(e.subtreeFlags&10256)for(e=e.child;e!==null;)Co(t,e,l,a),e=e.sibling}function Co(t,e,l,a){var n=e.flags;switch(e.tag){case 0:case 11:case 15:qe(t,e,l,a),n&2048&&yn(9,e);break;case 1:qe(t,e,l,a);break;case 3:qe(t,e,l,a),n&2048&&(t=null,e.alternate!==null&&(t=e.alternate.memoizedState.cache),e=e.memoizedState.cache,e!==t&&(e.refCount++,t!=null&&an(t)));break;case 12:if(n&2048){qe(t,e,l,a),t=e.stateNode;try{var u=e.memoizedProps,i=u.id,r=u.onPostCommit;typeof r=="function"&&r(i,e.alternate===null?"mount":"update",t.passiveEffectDuration,-0)}catch(d){pt(e,e.return,d)}}else qe(t,e,l,a);break;case 31:qe(t,e,l,a);break;case 13:qe(t,e,l,a);break;case 23:break;case 22:u=e.stateNode,i=e.alternate,e.memoizedState!==null?u._visibility&2?qe(t,e,l,a):pn(t,e):u._visibility&2?qe(t,e,l,a):(u._visibility|=2,za(t,e,l,a,(e.subtreeFlags&10256)!==0||!1)),n&2048&&Jc(i,e);break;case 24:qe(t,e,l,a),n&2048&&Kc(e.alternate,e);break;default:qe(t,e,l,a)}}function za(t,e,l,a,n){for(n=n&&((e.subtreeFlags&10256)!==0||!1),e=e.child;e!==null;){var u=t,i=e,r=l,d=a,b=i.flags;switch(i.tag){case 0:case 11:case 15:za(u,i,r,d,n),yn(8,i);break;case 23:break;case 22:var M=i.stateNode;i.memoizedState!==null?M._visibility&2?za(u,i,r,d,n):pn(u,i):(M._visibility|=2,za(u,i,r,d,n)),n&&b&2048&&Jc(i.alternate,i);break;case 24:za(u,i,r,d,n),n&&b&2048&&Kc(i.alternate,i);break;default:za(u,i,r,d,n)}e=e.sibling}}function pn(t,e){if(e.subtreeFlags&10256)for(e=e.child;e!==null;){var l=t,a=e,n=a.flags;switch(a.tag){case 22:pn(l,a),n&2048&&Jc(a.alternate,a);break;case 24:pn(l,a),n&2048&&Kc(a.alternate,a);break;default:pn(l,a)}e=e.sibling}}var Tn=8192;function Aa(t,e,l){if(t.subtreeFlags&Tn)for(t=t.child;t!==null;)Uo(t,e,l),t=t.sibling}function Uo(t,e,l){switch(t.tag){case 26:Aa(t,e,l),t.flags&Tn&&t.memoizedState!==null&&J1(l,Re,t.memoizedState,t.memoizedProps);break;case 5:Aa(t,e,l);break;case 3:case 4:var a=Re;Re=Xu(t.stateNode.containerInfo),Aa(t,e,l),Re=a;break;case 22:t.memoizedState===null&&(a=t.alternate,a!==null&&a.memoizedState!==null?(a=Tn,Tn=16777216,Aa(t,e,l),Tn=a):Aa(t,e,l));break;default:Aa(t,e,l)}}function Ho(t){var e=t.alternate;if(e!==null&&(t=e.child,t!==null)){e.child=null;do e=t.sibling,t.sibling=null,t=e;while(t!==null)}}function bn(t){var e=t.deletions;if((t.flags&16)!==0){if(e!==null)for(var l=0;l<e.length;l++){var a=e[l];kt=a,Ro(a,t)}Ho(t)}if(t.subtreeFlags&10256)for(t=t.child;t!==null;)jo(t),t=t.sibling}function jo(t){switch(t.tag){case 0:case 11:case 15:bn(t),t.flags&2048&&Sl(9,t,t.return);break;case 3:bn(t);break;case 12:bn(t);break;case 22:var e=t.stateNode;t.memoizedState!==null&&e._visibility&2&&(t.return===null||t.return.tag!==13)?(e._visibility&=-3,Du(t)):bn(t);break;default:bn(t)}}function Du(t){var e=t.deletions;if((t.flags&16)!==0){if(e!==null)for(var l=0;l<e.length;l++){var a=e[l];kt=a,Ro(a,t)}Ho(t)}for(t=t.child;t!==null;){switch(e=t,e.tag){case 0:case 11:case 15:Sl(8,e,e.return),Du(e);break;case 22:l=e.stateNode,l._visibility&2&&(l._visibility&=-3,Du(e));break;default:Du(e)}t=t.sibling}}function Ro(t,e){for(;kt!==null;){var l=kt;switch(l.tag){case 0:case 11:case 15:Sl(8,l,e);break;case 23:case 22:if(l.memoizedState!==null&&l.memoizedState.cachePool!==null){var a=l.memoizedState.cachePool.pool;a!=null&&a.refCount++}break;case 24:an(l.memoizedState.cache)}if(a=l.child,a!==null)a.return=l,kt=a;else t:for(l=t;kt!==null;){a=kt;var n=a.sibling,u=a.return;if(Ao(a),a===l){kt=null;break t}if(n!==null){n.return=u,kt=n;break t}kt=u}}}var c1={getCacheForType:function(t){var e=It(Yt),l=e.data.get(t);return l===void 0&&(l=t(),e.data.set(t,l)),l},cacheSignal:function(){return It(Yt).controller.signal}},f1=typeof WeakMap=="function"?WeakMap:Map,yt=0,zt=null,ct=null,ot=0,St=0,be=null,pl=!1,_a=!1,$c=!1,ll=0,jt=0,Tl=0,Wl=0,kc=0,Ee=0,Oa=0,En=null,re=null,Wc=!1,Cu=0,qo=0,Uu=1/0,Hu=null,bl=null,Jt=0,El=null,Ma=null,al=0,Fc=0,Ic=null,Bo=null,xn=0,Pc=null;function xe(){return(yt&2)!==0&&ot!==0?ot&-ot:O.T!==null?uf():If()}function wo(){if(Ee===0)if((ot&536870912)===0||dt){var t=Gn;Gn<<=1,(Gn&3932160)===0&&(Gn=262144),Ee=t}else Ee=536870912;return t=pe.current,t!==null&&(t.flags|=32),Ee}function oe(t,e,l){(t===zt&&(St===2||St===9)||t.cancelPendingCommit!==null)&&(Na(t,0),xl(t,ot,Ee,!1)),Xa(t,l),((yt&2)===0||t!==zt)&&(t===zt&&((yt&2)===0&&(Wl|=l),jt===4&&xl(t,ot,Ee,!1)),Ye(t))}function Lo(t,e,l){if((yt&6)!==0)throw Error(c(327));var a=!l&&(e&127)===0&&(e&t.expiredLanes)===0||Qa(t,e),n=a?o1(t,e):ef(t,e,!0),u=a;do{if(n===0){_a&&!a&&xl(t,e,0,!1);break}else{if(l=t.current.alternate,u&&!s1(l)){n=ef(t,e,!1),u=!1;continue}if(n===2){if(u=e,t.errorRecoveryDisabledLanes&u)var i=0;else i=t.pendingLanes&-536870913,i=i!==0?i:i&536870912?536870912:0;if(i!==0){e=i;t:{var r=t;n=En;var d=r.current.memoizedState.isDehydrated;if(d&&(Na(r,i).flags|=256),i=ef(r,i,!1),i!==2){if($c&&!d){r.errorRecoveryDisabledLanes|=u,Wl|=u,n=4;break t}u=re,re=n,u!==null&&(re===null?re=u:re.push.apply(re,u))}n=i}if(u=!1,n!==2)continue}}if(n===1){Na(t,0),xl(t,e,0,!0);break}t:{switch(a=t,u=n,u){case 0:case 1:throw Error(c(345));case 4:if((e&4194048)!==e)break;case 6:xl(a,e,Ee,!pl);break t;case 2:re=null;break;case 3:case 5:break;default:throw Error(c(329))}if((e&62914560)===e&&(n=Cu+300-me(),10<n)){if(xl(a,e,Ee,!pl),Xn(a,0,!0)!==0)break t;al=e,a.timeoutHandle=gh(Yo.bind(null,a,l,re,Hu,Wc,e,Ee,Wl,Oa,pl,u,"Throttled",-0,0),n);break t}Yo(a,l,re,Hu,Wc,e,Ee,Wl,Oa,pl,u,null,-0,0)}}break}while(!0);Ye(t)}function Yo(t,e,l,a,n,u,i,r,d,b,M,C,x,A){if(t.timeoutHandle=-1,C=e.subtreeFlags,C&8192||(C&16785408)===16785408){C={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:Qe},Uo(e,u,C);var X=(u&62914560)===u?Cu-me():(u&4194048)===u?qo-me():0;if(X=K1(C,X),X!==null){al=u,t.cancelPendingCommit=X($o.bind(null,t,e,u,l,a,n,i,r,d,M,C,null,x,A)),xl(t,u,i,!b);return}}$o(t,e,u,l,a,n,i,r,d)}function s1(t){for(var e=t;;){var l=e.tag;if((l===0||l===11||l===15)&&e.flags&16384&&(l=e.updateQueue,l!==null&&(l=l.stores,l!==null)))for(var a=0;a<l.length;a++){var n=l[a],u=n.getSnapshot;n=n.value;try{if(!ye(u(),n))return!1}catch{return!1}}if(l=e.child,e.subtreeFlags&16384&&l!==null)l.return=e,e=l;else{if(e===t)break;for(;e.sibling===null;){if(e.return===null||e.return===t)return!0;e=e.return}e.sibling.return=e.return,e=e.sibling}}return!0}function xl(t,e,l,a){e&=~kc,e&=~Wl,t.suspendedLanes|=e,t.pingedLanes&=~e,a&&(t.warmLanes|=e),a=t.expirationTimes;for(var n=e;0<n;){var u=31-ge(n),i=1<<u;a[u]=-1,n&=~i}l!==0&&kf(t,l,e)}function ju(){return(yt&6)===0?(zn(0),!1):!0}function tf(){if(ct!==null){if(St===0)var t=ct.return;else t=ct,Je=Gl=null,gc(t),pa=null,un=0,t=ct;for(;t!==null;)yo(t.alternate,t),t=t.return;ct=null}}function Na(t,e){var l=t.timeoutHandle;l!==-1&&(t.timeoutHandle=-1,N1(l)),l=t.cancelPendingCommit,l!==null&&(t.cancelPendingCommit=null,l()),al=0,tf(),zt=t,ct=l=Ze(t.current,null),ot=e,St=0,be=null,pl=!1,_a=Qa(t,e),$c=!1,Oa=Ee=kc=Wl=Tl=jt=0,re=En=null,Wc=!1,(e&8)!==0&&(e|=e&32);var a=t.entangledLanes;if(a!==0)for(t=t.entanglements,a&=e;0<a;){var n=31-ge(a),u=1<<n;e|=t[n],a&=~u}return ll=e,eu(),l}function Go(t,e){ut=null,O.H=mn,e===Sa||e===su?(e=lr(),St=3):e===nc?(e=lr(),St=4):St=e===Uc?8:e!==null&&typeof e=="object"&&typeof e.then=="function"?6:1,be=e,ct===null&&(jt=1,xu(t,Oe(e,t.current)))}function Qo(){var t=pe.current;return t===null?!0:(ot&4194048)===ot?Ce===null:(ot&62914560)===ot||(ot&536870912)!==0?t===Ce:!1}function Xo(){var t=O.H;return O.H=mn,t===null?mn:t}function Zo(){var t=O.A;return O.A=c1,t}function Ru(){jt=4,pl||(ot&4194048)!==ot&&pe.current!==null||(_a=!0),(Tl&134217727)===0&&(Wl&134217727)===0||zt===null||xl(zt,ot,Ee,!1)}function ef(t,e,l){var a=yt;yt|=2;var n=Xo(),u=Zo();(zt!==t||ot!==e)&&(Hu=null,Na(t,e)),e=!1;var i=jt;t:do try{if(St!==0&&ct!==null){var r=ct,d=be;switch(St){case 8:tf(),i=6;break t;case 3:case 2:case 9:case 6:pe.current===null&&(e=!0);var b=St;if(St=0,be=null,Da(t,r,d,b),l&&_a){i=0;break t}break;default:b=St,St=0,be=null,Da(t,r,d,b)}}r1(),i=jt;break}catch(M){Go(t,M)}while(!0);return e&&t.shellSuspendCounter++,Je=Gl=null,yt=a,O.H=n,O.A=u,ct===null&&(zt=null,ot=0,eu()),i}function r1(){for(;ct!==null;)Vo(ct)}function o1(t,e){var l=yt;yt|=2;var a=Xo(),n=Zo();zt!==t||ot!==e?(Hu=null,Uu=me()+500,Na(t,e)):_a=Qa(t,e);t:do try{if(St!==0&&ct!==null){e=ct;var u=be;e:switch(St){case 1:St=0,be=null,Da(t,e,u,1);break;case 2:case 9:if(tr(u)){St=0,be=null,Jo(e);break}e=function(){St!==2&&St!==9||zt!==t||(St=7),Ye(t)},u.then(e,e);break t;case 3:St=7;break t;case 4:St=5;break t;case 7:tr(u)?(St=0,be=null,Jo(e)):(St=0,be=null,Da(t,e,u,7));break;case 5:var i=null;switch(ct.tag){case 26:i=ct.memoizedState;case 5:case 27:var r=ct;if(i?Ch(i):r.stateNode.complete){St=0,be=null;var d=r.sibling;if(d!==null)ct=d;else{var b=r.return;b!==null?(ct=b,qu(b)):ct=null}break e}}St=0,be=null,Da(t,e,u,5);break;case 6:St=0,be=null,Da(t,e,u,6);break;case 8:tf(),jt=6;break t;default:throw Error(c(462))}}h1();break}catch(M){Go(t,M)}while(!0);return Je=Gl=null,O.H=a,O.A=n,yt=l,ct!==null?0:(zt=null,ot=0,eu(),jt)}function h1(){for(;ct!==null&&!R0();)Vo(ct)}function Vo(t){var e=vo(t.alternate,t,ll);t.memoizedProps=t.pendingProps,e===null?qu(t):ct=e}function Jo(t){var e=t,l=e.alternate;switch(e.tag){case 15:case 0:e=fo(l,e,e.pendingProps,e.type,void 0,ot);break;case 11:e=fo(l,e,e.pendingProps,e.type.render,e.ref,ot);break;case 5:gc(e);default:yo(l,e),e=ct=Xs(e,ll),e=vo(l,e,ll)}t.memoizedProps=t.pendingProps,e===null?qu(t):ct=e}function Da(t,e,l,a){Je=Gl=null,gc(e),pa=null,un=0;var n=e.return;try{if(t1(t,n,e,l,ot)){jt=1,xu(t,Oe(l,t.current)),ct=null;return}}catch(u){if(n!==null)throw ct=n,u;jt=1,xu(t,Oe(l,t.current)),ct=null;return}e.flags&32768?(dt||a===1?t=!0:_a||(ot&536870912)!==0?t=!1:(pl=t=!0,(a===2||a===9||a===3||a===6)&&(a=pe.current,a!==null&&a.tag===13&&(a.flags|=16384))),Ko(e,t)):qu(e)}function qu(t){var e=t;do{if((e.flags&32768)!==0){Ko(e,pl);return}t=e.return;var l=a1(e.alternate,e,ll);if(l!==null){ct=l;return}if(e=e.sibling,e!==null){ct=e;return}ct=e=t}while(e!==null);jt===0&&(jt=5)}function Ko(t,e){do{var l=n1(t.alternate,t);if(l!==null){l.flags&=32767,ct=l;return}if(l=t.return,l!==null&&(l.flags|=32768,l.subtreeFlags=0,l.deletions=null),!e&&(t=t.sibling,t!==null)){ct=t;return}ct=t=l}while(t!==null);jt=6,ct=null}function $o(t,e,l,a,n,u,i,r,d){t.cancelPendingCommit=null;do Bu();while(Jt!==0);if((yt&6)!==0)throw Error(c(327));if(e!==null){if(e===t.current)throw Error(c(177));if(u=e.lanes|e.childLanes,u|=Xi,V0(t,l,u,i,r,d),t===zt&&(ct=zt=null,ot=0),Ma=e,El=t,al=l,Fc=u,Ic=n,Bo=a,(e.subtreeFlags&10256)!==0||(e.flags&10256)!==0?(t.callbackNode=null,t.callbackPriority=0,g1(Ln,function(){return Po(),null})):(t.callbackNode=null,t.callbackPriority=0),a=(e.flags&13878)!==0,(e.subtreeFlags&13878)!==0||a){a=O.T,O.T=null,n=L.p,L.p=2,i=yt,yt|=4;try{u1(t,e,l)}finally{yt=i,L.p=n,O.T=a}}Jt=1,ko(),Wo(),Fo()}}function ko(){if(Jt===1){Jt=0;var t=El,e=Ma,l=(e.flags&13878)!==0;if((e.subtreeFlags&13878)!==0||l){l=O.T,O.T=null;var a=L.p;L.p=2;var n=yt;yt|=4;try{No(e,t);var u=mf,i=js(t.containerInfo),r=u.focusedElem,d=u.selectionRange;if(i!==r&&r&&r.ownerDocument&&Hs(r.ownerDocument.documentElement,r)){if(d!==null&&wi(r)){var b=d.start,M=d.end;if(M===void 0&&(M=b),"selectionStart"in r)r.selectionStart=b,r.selectionEnd=Math.min(M,r.value.length);else{var C=r.ownerDocument||document,x=C&&C.defaultView||window;if(x.getSelection){var A=x.getSelection(),X=r.textContent.length,W=Math.min(d.start,X),Et=d.end===void 0?W:Math.min(d.end,X);!A.extend&&W>Et&&(i=Et,Et=W,W=i);var S=Us(r,W),g=Us(r,Et);if(S&&g&&(A.rangeCount!==1||A.anchorNode!==S.node||A.anchorOffset!==S.offset||A.focusNode!==g.node||A.focusOffset!==g.offset)){var T=C.createRange();T.setStart(S.node,S.offset),A.removeAllRanges(),W>Et?(A.addRange(T),A.extend(g.node,g.offset)):(T.setEnd(g.node,g.offset),A.addRange(T))}}}}for(C=[],A=r;A=A.parentNode;)A.nodeType===1&&C.push({element:A,left:A.scrollLeft,top:A.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;r<C.length;r++){var D=C[r];D.element.scrollLeft=D.left,D.element.scrollTop=D.top}}ku=!!df,mf=df=null}finally{yt=n,L.p=a,O.T=l}}t.current=e,Jt=2}}function Wo(){if(Jt===2){Jt=0;var t=El,e=Ma,l=(e.flags&8772)!==0;if((e.subtreeFlags&8772)!==0||l){l=O.T,O.T=null;var a=L.p;L.p=2;var n=yt;yt|=4;try{zo(t,e.alternate,e)}finally{yt=n,L.p=a,O.T=l}}Jt=3}}function Fo(){if(Jt===4||Jt===3){Jt=0,q0();var t=El,e=Ma,l=al,a=Bo;(e.subtreeFlags&10256)!==0||(e.flags&10256)!==0?Jt=5:(Jt=0,Ma=El=null,Io(t,t.pendingLanes));var n=t.pendingLanes;if(n===0&&(bl=null),pi(l),e=e.stateNode,ve&&typeof ve.onCommitFiberRoot=="function")try{ve.onCommitFiberRoot(Ga,e,void 0,(e.current.flags&128)===128)}catch{}if(a!==null){e=O.T,n=L.p,L.p=2,O.T=null;try{for(var u=t.onRecoverableError,i=0;i<a.length;i++){var r=a[i];u(r.value,{componentStack:r.stack})}}finally{O.T=e,L.p=n}}(al&3)!==0&&Bu(),Ye(t),n=t.pendingLanes,(l&261930)!==0&&(n&42)!==0?t===Pc?xn++:(xn=0,Pc=t):xn=0,zn(0)}}function Io(t,e){(t.pooledCacheLanes&=e)===0&&(e=t.pooledCache,e!=null&&(t.pooledCache=null,an(e)))}function Bu(){return ko(),Wo(),Fo(),Po()}function Po(){if(Jt!==5)return!1;var t=El,e=Fc;Fc=0;var l=pi(al),a=O.T,n=L.p;try{L.p=32>l?32:l,O.T=null,l=Ic,Ic=null;var u=El,i=al;if(Jt=0,Ma=El=null,al=0,(yt&6)!==0)throw Error(c(331));var r=yt;if(yt|=4,jo(u.current),Co(u,u.current,i,l),yt=r,zn(0,!1),ve&&typeof ve.onPostCommitFiberRoot=="function")try{ve.onPostCommitFiberRoot(Ga,u)}catch{}return!0}finally{L.p=n,O.T=a,Io(t,e)}}function th(t,e,l){e=Oe(l,e),e=Cc(t.stateNode,e,2),t=vl(t,e,2),t!==null&&(Xa(t,2),Ye(t))}function pt(t,e,l){if(t.tag===3)th(t,t,l);else for(;e!==null;){if(e.tag===3){th(e,t,l);break}else if(e.tag===1){var a=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof a.componentDidCatch=="function"&&(bl===null||!bl.has(a))){t=Oe(l,t),l=to(2),a=vl(e,l,2),a!==null&&(eo(l,a,e,t),Xa(a,2),Ye(a));break}}e=e.return}}function lf(t,e,l){var a=t.pingCache;if(a===null){a=t.pingCache=new f1;var n=new Set;a.set(e,n)}else n=a.get(e),n===void 0&&(n=new Set,a.set(e,n));n.has(l)||($c=!0,n.add(l),t=d1.bind(null,t,e,l),e.then(t,t))}function d1(t,e,l){var a=t.pingCache;a!==null&&a.delete(e),t.pingedLanes|=t.suspendedLanes&l,t.warmLanes&=~l,zt===t&&(ot&l)===l&&(jt===4||jt===3&&(ot&62914560)===ot&&300>me()-Cu?(yt&2)===0&&Na(t,0):kc|=l,Oa===ot&&(Oa=0)),Ye(t)}function eh(t,e){e===0&&(e=$f()),t=wl(t,e),t!==null&&(Xa(t,e),Ye(t))}function m1(t){var e=t.memoizedState,l=0;e!==null&&(l=e.retryLane),eh(t,l)}function v1(t,e){var l=0;switch(t.tag){case 31:case 13:var a=t.stateNode,n=t.memoizedState;n!==null&&(l=n.retryLane);break;case 19:a=t.stateNode;break;case 22:a=t.stateNode._retryCache;break;default:throw Error(c(314))}a!==null&&a.delete(e),eh(t,l)}function g1(t,e){return vi(t,e)}var wu=null,Ca=null,af=!1,Lu=!1,nf=!1,zl=0;function Ye(t){t!==Ca&&t.next===null&&(Ca===null?wu=Ca=t:Ca=Ca.next=t),Lu=!0,af||(af=!0,S1())}function zn(t,e){if(!nf&&Lu){nf=!0;do for(var l=!1,a=wu;a!==null;){if(t!==0){var n=a.pendingLanes;if(n===0)var u=0;else{var i=a.suspendedLanes,r=a.pingedLanes;u=(1<<31-ge(42|t)+1)-1,u&=n&~(i&~r),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(l=!0,uh(a,u))}else u=ot,u=Xn(a,a===zt?u:0,a.cancelPendingCommit!==null||a.timeoutHandle!==-1),(u&3)===0||Qa(a,u)||(l=!0,uh(a,u));a=a.next}while(l);nf=!1}}function y1(){lh()}function lh(){Lu=af=!1;var t=0;zl!==0&&M1()&&(t=zl);for(var e=me(),l=null,a=wu;a!==null;){var n=a.next,u=ah(a,e);u===0?(a.next=null,l===null?wu=n:l.next=n,n===null&&(Ca=l)):(l=a,(t!==0||(u&3)!==0)&&(Lu=!0)),a=n}Jt!==0&&Jt!==5||zn(t),zl!==0&&(zl=0)}function ah(t,e){for(var l=t.suspendedLanes,a=t.pingedLanes,n=t.expirationTimes,u=t.pendingLanes&-62914561;0<u;){var i=31-ge(u),r=1<<i,d=n[i];d===-1?((r&l)===0||(r&a)!==0)&&(n[i]=Z0(r,e)):d<=e&&(t.expiredLanes|=r),u&=~r}if(e=zt,l=ot,l=Xn(t,t===e?l:0,t.cancelPendingCommit!==null||t.timeoutHandle!==-1),a=t.callbackNode,l===0||t===e&&(St===2||St===9)||t.cancelPendingCommit!==null)return a!==null&&a!==null&&gi(a),t.callbackNode=null,t.callbackPriority=0;if((l&3)===0||Qa(t,l)){if(e=l&-l,e===t.callbackPriority)return e;switch(a!==null&&gi(a),pi(l)){case 2:case 8:l=Jf;break;case 32:l=Ln;break;case 268435456:l=Kf;break;default:l=Ln}return a=nh.bind(null,t),l=vi(l,a),t.callbackPriority=e,t.callbackNode=l,e}return a!==null&&a!==null&&gi(a),t.callbackPriority=2,t.callbackNode=null,2}function nh(t,e){if(Jt!==0&&Jt!==5)return t.callbackNode=null,t.callbackPriority=0,null;var l=t.callbackNode;if(Bu()&&t.callbackNode!==l)return null;var a=ot;return a=Xn(t,t===zt?a:0,t.cancelPendingCommit!==null||t.timeoutHandle!==-1),a===0?null:(Lo(t,a,e),ah(t,me()),t.callbackNode!=null&&t.callbackNode===l?nh.bind(null,t):null)}function uh(t,e){if(Bu())return null;Lo(t,e,!0)}function S1(){D1(function(){(yt&6)!==0?vi(Vf,y1):lh()})}function uf(){if(zl===0){var t=ga;t===0&&(t=Yn,Yn<<=1,(Yn&261888)===0&&(Yn=256)),zl=t}return zl}function ih(t){return t==null||typeof t=="symbol"||typeof t=="boolean"?null:typeof t=="function"?t:Kn(""+t)}function ch(t,e){var l=e.ownerDocument.createElement("input");return l.name=e.name,l.value=e.value,t.id&&l.setAttribute("form",t.id),e.parentNode.insertBefore(l,e),t=new FormData(t),l.parentNode.removeChild(l),t}function p1(t,e,l,a,n){if(e==="submit"&&l&&l.stateNode===n){var u=ih((n[ue]||null).action),i=a.submitter;i&&(e=(e=i[ue]||null)?ih(e.formAction):i.getAttribute("formAction"),e!==null&&(u=e,i=null));var r=new Fn("action","action",null,a,n);t.push({event:r,listeners:[{instance:null,listener:function(){if(a.defaultPrevented){if(zl!==0){var d=i?ch(n,i):new FormData(n);Ac(l,{pending:!0,data:d,method:n.method,action:u},null,d)}}else typeof u=="function"&&(r.preventDefault(),d=i?ch(n,i):new FormData(n),Ac(l,{pending:!0,data:d,method:n.method,action:u},u,d))},currentTarget:n}]})}}for(var cf=0;cf<Qi.length;cf++){var ff=Qi[cf],T1=ff.toLowerCase(),b1=ff[0].toUpperCase()+ff.slice(1);je(T1,"on"+b1)}je(Bs,"onAnimationEnd"),je(ws,"onAnimationIteration"),je(Ls,"onAnimationStart"),je("dblclick","onDoubleClick"),je("focusin","onFocus"),je("focusout","onBlur"),je(Bd,"onTransitionRun"),je(wd,"onTransitionStart"),je(Ld,"onTransitionCancel"),je(Ys,"onTransitionEnd"),la("onMouseEnter",["mouseout","mouseover"]),la("onMouseLeave",["mouseout","mouseover"]),la("onPointerEnter",["pointerout","pointerover"]),la("onPointerLeave",["pointerout","pointerover"]),jl("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),jl("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),jl("onBeforeInput",["compositionend","keypress","textInput","paste"]),jl("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),jl("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),jl("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var An="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),E1=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(An));function fh(t,e){e=(e&4)!==0;for(var l=0;l<t.length;l++){var a=t[l],n=a.event;a=a.listeners;t:{var u=void 0;if(e)for(var i=a.length-1;0<=i;i--){var r=a[i],d=r.instance,b=r.currentTarget;if(r=r.listener,d!==u&&n.isPropagationStopped())break t;u=r,n.currentTarget=b;try{u(n)}catch(M){tu(M)}n.currentTarget=null,u=d}else for(i=0;i<a.length;i++){if(r=a[i],d=r.instance,b=r.currentTarget,r=r.listener,d!==u&&n.isPropagationStopped())break t;u=r,n.currentTarget=b;try{u(n)}catch(M){tu(M)}n.currentTarget=null,u=d}}}}function ft(t,e){var l=e[Ti];l===void 0&&(l=e[Ti]=new Set);var a=t+"__bubble";l.has(a)||(sh(e,t,2,!1),l.add(a))}function sf(t,e,l){var a=0;e&&(a|=4),sh(l,t,a,e)}var Yu="_reactListening"+Math.random().toString(36).slice(2);function rf(t){if(!t[Yu]){t[Yu]=!0,es.forEach(function(l){l!=="selectionchange"&&(E1.has(l)||sf(l,!1,t),sf(l,!0,t))});var e=t.nodeType===9?t:t.ownerDocument;e===null||e[Yu]||(e[Yu]=!0,sf("selectionchange",!1,e))}}function sh(t,e,l,a){switch(wh(e)){case 2:var n=W1;break;case 8:n=F1;break;default:n=Af}l=n.bind(null,e,l,t),n=void 0,!Ni||e!=="touchstart"&&e!=="touchmove"&&e!=="wheel"||(n=!0),a?n!==void 0?t.addEventListener(e,l,{capture:!0,passive:n}):t.addEventListener(e,l,!0):n!==void 0?t.addEventListener(e,l,{passive:n}):t.addEventListener(e,l,!1)}function of(t,e,l,a,n){var u=a;if((e&1)===0&&(e&2)===0&&a!==null)t:for(;;){if(a===null)return;var i=a.tag;if(i===3||i===4){var r=a.stateNode.containerInfo;if(r===n)break;if(i===4)for(i=a.return;i!==null;){var d=i.tag;if((d===3||d===4)&&i.stateNode.containerInfo===n)return;i=i.return}for(;r!==null;){if(i=Pl(r),i===null)return;if(d=i.tag,d===5||d===6||d===26||d===27){a=u=i;continue t}r=r.parentNode}}a=a.return}ds(function(){var b=u,M=Oi(l),C=[];t:{var x=Gs.get(t);if(x!==void 0){var A=Fn,X=t;switch(t){case"keypress":if(kn(l)===0)break t;case"keydown":case"keyup":A=vd;break;case"focusin":X="focus",A=Hi;break;case"focusout":X="blur",A=Hi;break;case"beforeblur":case"afterblur":A=Hi;break;case"click":if(l.button===2)break t;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":A=gs;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":A=ad;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":A=Sd;break;case Bs:case ws:case Ls:A=id;break;case Ys:A=Td;break;case"scroll":case"scrollend":A=ed;break;case"wheel":A=Ed;break;case"copy":case"cut":case"paste":A=fd;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":A=Ss;break;case"toggle":case"beforetoggle":A=zd}var W=(e&4)!==0,Et=!W&&(t==="scroll"||t==="scrollend"),S=W?x!==null?x+"Capture":null:x;W=[];for(var g=b,T;g!==null;){var D=g;if(T=D.stateNode,D=D.tag,D!==5&&D!==26&&D!==27||T===null||S===null||(D=Ja(g,S),D!=null&&W.push(_n(g,D,T))),Et)break;g=g.return}0<W.length&&(x=new A(x,X,null,l,M),C.push({event:x,listeners:W}))}}if((e&7)===0){t:{if(x=t==="mouseover"||t==="pointerover",A=t==="mouseout"||t==="pointerout",x&&l!==_i&&(X=l.relatedTarget||l.fromElement)&&(Pl(X)||X[Il]))break t;if((A||x)&&(x=M.window===M?M:(x=M.ownerDocument)?x.defaultView||x.parentWindow:window,A?(X=l.relatedTarget||l.toElement,A=b,X=X?Pl(X):null,X!==null&&(Et=y(X),W=X.tag,X!==Et||W!==5&&W!==27&&W!==6)&&(X=null)):(A=null,X=b),A!==X)){if(W=gs,D="onMouseLeave",S="onMouseEnter",g="mouse",(t==="pointerout"||t==="pointerover")&&(W=Ss,D="onPointerLeave",S="onPointerEnter",g="pointer"),Et=A==null?x:Va(A),T=X==null?x:Va(X),x=new W(D,g+"leave",A,l,M),x.target=Et,x.relatedTarget=T,D=null,Pl(M)===b&&(W=new W(S,g+"enter",X,l,M),W.target=T,W.relatedTarget=Et,D=W),Et=D,A&&X)e:{for(W=x1,S=A,g=X,T=0,D=S;D;D=W(D))T++;D=0;for(var K=g;K;K=W(K))D++;for(;0<T-D;)S=W(S),T--;for(;0<D-T;)g=W(g),D--;for(;T--;){if(S===g||g!==null&&S===g.alternate){W=S;break e}S=W(S),g=W(g)}W=null}else W=null;A!==null&&rh(C,x,A,W,!1),X!==null&&Et!==null&&rh(C,Et,X,W,!0)}}t:{if(x=b?Va(b):window,A=x.nodeName&&x.nodeName.toLowerCase(),A==="select"||A==="input"&&x.type==="file")var mt=_s;else if(zs(x))if(Os)mt=jd;else{mt=Ud;var V=Cd}else A=x.nodeName,!A||A.toLowerCase()!=="input"||x.type!=="checkbox"&&x.type!=="radio"?b&&Ai(b.elementType)&&(mt=_s):mt=Hd;if(mt&&(mt=mt(t,b))){As(C,mt,l,M);break t}V&&V(t,x,b),t==="focusout"&&b&&x.type==="number"&&b.memoizedProps.value!=null&&zi(x,"number",x.value)}switch(V=b?Va(b):window,t){case"focusin":(zs(V)||V.contentEditable==="true")&&(fa=V,Li=b,tn=null);break;case"focusout":tn=Li=fa=null;break;case"mousedown":Yi=!0;break;case"contextmenu":case"mouseup":case"dragend":Yi=!1,Rs(C,l,M);break;case"selectionchange":if(qd)break;case"keydown":case"keyup":Rs(C,l,M)}var it;if(Ri)t:{switch(t){case"compositionstart":var ht="onCompositionStart";break t;case"compositionend":ht="onCompositionEnd";break t;case"compositionupdate":ht="onCompositionUpdate";break t}ht=void 0}else ca?Es(t,l)&&(ht="onCompositionEnd"):t==="keydown"&&l.keyCode===229&&(ht="onCompositionStart");ht&&(ps&&l.locale!=="ko"&&(ca||ht!=="onCompositionStart"?ht==="onCompositionEnd"&&ca&&(it=ms()):(fl=M,Di="value"in fl?fl.value:fl.textContent,ca=!0)),V=Gu(b,ht),0<V.length&&(ht=new ys(ht,t,null,l,M),C.push({event:ht,listeners:V}),it?ht.data=it:(it=xs(l),it!==null&&(ht.data=it)))),(it=_d?Od(t,l):Md(t,l))&&(ht=Gu(b,"onBeforeInput"),0<ht.length&&(V=new ys("onBeforeInput","beforeinput",null,l,M),C.push({event:V,listeners:ht}),V.data=it)),p1(C,t,b,l,M)}fh(C,e)})}function _n(t,e,l){return{instance:t,listener:e,currentTarget:l}}function Gu(t,e){for(var l=e+"Capture",a=[];t!==null;){var n=t,u=n.stateNode;if(n=n.tag,n!==5&&n!==26&&n!==27||u===null||(n=Ja(t,l),n!=null&&a.unshift(_n(t,n,u)),n=Ja(t,e),n!=null&&a.push(_n(t,n,u))),t.tag===3)return a;t=t.return}return[]}function x1(t){if(t===null)return null;do t=t.return;while(t&&t.tag!==5&&t.tag!==27);return t||null}function rh(t,e,l,a,n){for(var u=e._reactName,i=[];l!==null&&l!==a;){var r=l,d=r.alternate,b=r.stateNode;if(r=r.tag,d!==null&&d===a)break;r!==5&&r!==26&&r!==27||b===null||(d=b,n?(b=Ja(l,u),b!=null&&i.unshift(_n(l,b,d))):n||(b=Ja(l,u),b!=null&&i.push(_n(l,b,d)))),l=l.return}i.length!==0&&t.push({event:e,listeners:i})}var z1=/\r\n?/g,A1=/\u0000|\uFFFD/g;function oh(t){return(typeof t=="string"?t:""+t).replace(z1,` +`).replace(A1,"")}function hh(t,e){return e=oh(e),oh(t)===e}function bt(t,e,l,a,n,u){switch(l){case"children":typeof a=="string"?e==="body"||e==="textarea"&&a===""||na(t,a):(typeof a=="number"||typeof a=="bigint")&&e!=="body"&&na(t,""+a);break;case"className":Vn(t,"class",a);break;case"tabIndex":Vn(t,"tabindex",a);break;case"dir":case"role":case"viewBox":case"width":case"height":Vn(t,l,a);break;case"style":os(t,a,u);break;case"data":if(e!=="object"){Vn(t,"data",a);break}case"src":case"href":if(a===""&&(e!=="a"||l!=="href")){t.removeAttribute(l);break}if(a==null||typeof a=="function"||typeof a=="symbol"||typeof a=="boolean"){t.removeAttribute(l);break}a=Kn(""+a),t.setAttribute(l,a);break;case"action":case"formAction":if(typeof a=="function"){t.setAttribute(l,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof u=="function"&&(l==="formAction"?(e!=="input"&&bt(t,e,"name",n.name,n,null),bt(t,e,"formEncType",n.formEncType,n,null),bt(t,e,"formMethod",n.formMethod,n,null),bt(t,e,"formTarget",n.formTarget,n,null)):(bt(t,e,"encType",n.encType,n,null),bt(t,e,"method",n.method,n,null),bt(t,e,"target",n.target,n,null)));if(a==null||typeof a=="symbol"||typeof a=="boolean"){t.removeAttribute(l);break}a=Kn(""+a),t.setAttribute(l,a);break;case"onClick":a!=null&&(t.onclick=Qe);break;case"onScroll":a!=null&&ft("scroll",t);break;case"onScrollEnd":a!=null&&ft("scrollend",t);break;case"dangerouslySetInnerHTML":if(a!=null){if(typeof a!="object"||!("__html"in a))throw Error(c(61));if(l=a.__html,l!=null){if(n.children!=null)throw Error(c(60));t.innerHTML=l}}break;case"multiple":t.multiple=a&&typeof a!="function"&&typeof a!="symbol";break;case"muted":t.muted=a&&typeof a!="function"&&typeof a!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(a==null||typeof a=="function"||typeof a=="boolean"||typeof a=="symbol"){t.removeAttribute("xlink:href");break}l=Kn(""+a),t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",l);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":a!=null&&typeof a!="function"&&typeof a!="symbol"?t.setAttribute(l,""+a):t.removeAttribute(l);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":a&&typeof a!="function"&&typeof a!="symbol"?t.setAttribute(l,""):t.removeAttribute(l);break;case"capture":case"download":a===!0?t.setAttribute(l,""):a!==!1&&a!=null&&typeof a!="function"&&typeof a!="symbol"?t.setAttribute(l,a):t.removeAttribute(l);break;case"cols":case"rows":case"size":case"span":a!=null&&typeof a!="function"&&typeof a!="symbol"&&!isNaN(a)&&1<=a?t.setAttribute(l,a):t.removeAttribute(l);break;case"rowSpan":case"start":a==null||typeof a=="function"||typeof a=="symbol"||isNaN(a)?t.removeAttribute(l):t.setAttribute(l,a);break;case"popover":ft("beforetoggle",t),ft("toggle",t),Zn(t,"popover",a);break;case"xlinkActuate":Ge(t,"http://www.w3.org/1999/xlink","xlink:actuate",a);break;case"xlinkArcrole":Ge(t,"http://www.w3.org/1999/xlink","xlink:arcrole",a);break;case"xlinkRole":Ge(t,"http://www.w3.org/1999/xlink","xlink:role",a);break;case"xlinkShow":Ge(t,"http://www.w3.org/1999/xlink","xlink:show",a);break;case"xlinkTitle":Ge(t,"http://www.w3.org/1999/xlink","xlink:title",a);break;case"xlinkType":Ge(t,"http://www.w3.org/1999/xlink","xlink:type",a);break;case"xmlBase":Ge(t,"http://www.w3.org/XML/1998/namespace","xml:base",a);break;case"xmlLang":Ge(t,"http://www.w3.org/XML/1998/namespace","xml:lang",a);break;case"xmlSpace":Ge(t,"http://www.w3.org/XML/1998/namespace","xml:space",a);break;case"is":Zn(t,"is",a);break;case"innerText":case"textContent":break;default:(!(2<l.length)||l[0]!=="o"&&l[0]!=="O"||l[1]!=="n"&&l[1]!=="N")&&(l=P0.get(l)||l,Zn(t,l,a))}}function hf(t,e,l,a,n,u){switch(l){case"style":os(t,a,u);break;case"dangerouslySetInnerHTML":if(a!=null){if(typeof a!="object"||!("__html"in a))throw Error(c(61));if(l=a.__html,l!=null){if(n.children!=null)throw Error(c(60));t.innerHTML=l}}break;case"children":typeof a=="string"?na(t,a):(typeof a=="number"||typeof a=="bigint")&&na(t,""+a);break;case"onScroll":a!=null&&ft("scroll",t);break;case"onScrollEnd":a!=null&&ft("scrollend",t);break;case"onClick":a!=null&&(t.onclick=Qe);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!ls.hasOwnProperty(l))t:{if(l[0]==="o"&&l[1]==="n"&&(n=l.endsWith("Capture"),e=l.slice(2,n?l.length-7:void 0),u=t[ue]||null,u=u!=null?u[l]:null,typeof u=="function"&&t.removeEventListener(e,u,n),typeof a=="function")){typeof u!="function"&&u!==null&&(l in t?t[l]=null:t.hasAttribute(l)&&t.removeAttribute(l)),t.addEventListener(e,a,n);break t}l in t?t[l]=a:a===!0?t.setAttribute(l,""):Zn(t,l,a)}}}function te(t,e,l){switch(e){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":ft("error",t),ft("load",t);var a=!1,n=!1,u;for(u in l)if(l.hasOwnProperty(u)){var i=l[u];if(i!=null)switch(u){case"src":a=!0;break;case"srcSet":n=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(c(137,e));default:bt(t,e,u,i,l,null)}}n&&bt(t,e,"srcSet",l.srcSet,l,null),a&&bt(t,e,"src",l.src,l,null);return;case"input":ft("invalid",t);var r=u=i=n=null,d=null,b=null;for(a in l)if(l.hasOwnProperty(a)){var M=l[a];if(M!=null)switch(a){case"name":n=M;break;case"type":i=M;break;case"checked":d=M;break;case"defaultChecked":b=M;break;case"value":u=M;break;case"defaultValue":r=M;break;case"children":case"dangerouslySetInnerHTML":if(M!=null)throw Error(c(137,e));break;default:bt(t,e,a,M,l,null)}}cs(t,u,r,d,b,i,n,!1);return;case"select":ft("invalid",t),a=i=u=null;for(n in l)if(l.hasOwnProperty(n)&&(r=l[n],r!=null))switch(n){case"value":u=r;break;case"defaultValue":i=r;break;case"multiple":a=r;default:bt(t,e,n,r,l,null)}e=u,l=i,t.multiple=!!a,e!=null?aa(t,!!a,e,!1):l!=null&&aa(t,!!a,l,!0);return;case"textarea":ft("invalid",t),u=n=a=null;for(i in l)if(l.hasOwnProperty(i)&&(r=l[i],r!=null))switch(i){case"value":a=r;break;case"defaultValue":n=r;break;case"children":u=r;break;case"dangerouslySetInnerHTML":if(r!=null)throw Error(c(91));break;default:bt(t,e,i,r,l,null)}ss(t,a,n,u);return;case"option":for(d in l)if(l.hasOwnProperty(d)&&(a=l[d],a!=null))switch(d){case"selected":t.selected=a&&typeof a!="function"&&typeof a!="symbol";break;default:bt(t,e,d,a,l,null)}return;case"dialog":ft("beforetoggle",t),ft("toggle",t),ft("cancel",t),ft("close",t);break;case"iframe":case"object":ft("load",t);break;case"video":case"audio":for(a=0;a<An.length;a++)ft(An[a],t);break;case"image":ft("error",t),ft("load",t);break;case"details":ft("toggle",t);break;case"embed":case"source":case"link":ft("error",t),ft("load",t);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(b in l)if(l.hasOwnProperty(b)&&(a=l[b],a!=null))switch(b){case"children":case"dangerouslySetInnerHTML":throw Error(c(137,e));default:bt(t,e,b,a,l,null)}return;default:if(Ai(e)){for(M in l)l.hasOwnProperty(M)&&(a=l[M],a!==void 0&&hf(t,e,M,a,l,void 0));return}}for(r in l)l.hasOwnProperty(r)&&(a=l[r],a!=null&&bt(t,e,r,a,l,null))}function _1(t,e,l,a){switch(e){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var n=null,u=null,i=null,r=null,d=null,b=null,M=null;for(A in l){var C=l[A];if(l.hasOwnProperty(A)&&C!=null)switch(A){case"checked":break;case"value":break;case"defaultValue":d=C;default:a.hasOwnProperty(A)||bt(t,e,A,null,a,C)}}for(var x in a){var A=a[x];if(C=l[x],a.hasOwnProperty(x)&&(A!=null||C!=null))switch(x){case"type":u=A;break;case"name":n=A;break;case"checked":b=A;break;case"defaultChecked":M=A;break;case"value":i=A;break;case"defaultValue":r=A;break;case"children":case"dangerouslySetInnerHTML":if(A!=null)throw Error(c(137,e));break;default:A!==C&&bt(t,e,x,A,a,C)}}xi(t,i,r,d,b,M,u,n);return;case"select":A=i=r=x=null;for(u in l)if(d=l[u],l.hasOwnProperty(u)&&d!=null)switch(u){case"value":break;case"multiple":A=d;default:a.hasOwnProperty(u)||bt(t,e,u,null,a,d)}for(n in a)if(u=a[n],d=l[n],a.hasOwnProperty(n)&&(u!=null||d!=null))switch(n){case"value":x=u;break;case"defaultValue":r=u;break;case"multiple":i=u;default:u!==d&&bt(t,e,n,u,a,d)}e=r,l=i,a=A,x!=null?aa(t,!!l,x,!1):!!a!=!!l&&(e!=null?aa(t,!!l,e,!0):aa(t,!!l,l?[]:"",!1));return;case"textarea":A=x=null;for(r in l)if(n=l[r],l.hasOwnProperty(r)&&n!=null&&!a.hasOwnProperty(r))switch(r){case"value":break;case"children":break;default:bt(t,e,r,null,a,n)}for(i in a)if(n=a[i],u=l[i],a.hasOwnProperty(i)&&(n!=null||u!=null))switch(i){case"value":x=n;break;case"defaultValue":A=n;break;case"children":break;case"dangerouslySetInnerHTML":if(n!=null)throw Error(c(91));break;default:n!==u&&bt(t,e,i,n,a,u)}fs(t,x,A);return;case"option":for(var X in l)if(x=l[X],l.hasOwnProperty(X)&&x!=null&&!a.hasOwnProperty(X))switch(X){case"selected":t.selected=!1;break;default:bt(t,e,X,null,a,x)}for(d in a)if(x=a[d],A=l[d],a.hasOwnProperty(d)&&x!==A&&(x!=null||A!=null))switch(d){case"selected":t.selected=x&&typeof x!="function"&&typeof x!="symbol";break;default:bt(t,e,d,x,a,A)}return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var W in l)x=l[W],l.hasOwnProperty(W)&&x!=null&&!a.hasOwnProperty(W)&&bt(t,e,W,null,a,x);for(b in a)if(x=a[b],A=l[b],a.hasOwnProperty(b)&&x!==A&&(x!=null||A!=null))switch(b){case"children":case"dangerouslySetInnerHTML":if(x!=null)throw Error(c(137,e));break;default:bt(t,e,b,x,a,A)}return;default:if(Ai(e)){for(var Et in l)x=l[Et],l.hasOwnProperty(Et)&&x!==void 0&&!a.hasOwnProperty(Et)&&hf(t,e,Et,void 0,a,x);for(M in a)x=a[M],A=l[M],!a.hasOwnProperty(M)||x===A||x===void 0&&A===void 0||hf(t,e,M,x,a,A);return}}for(var S in l)x=l[S],l.hasOwnProperty(S)&&x!=null&&!a.hasOwnProperty(S)&&bt(t,e,S,null,a,x);for(C in a)x=a[C],A=l[C],!a.hasOwnProperty(C)||x===A||x==null&&A==null||bt(t,e,C,x,a,A)}function dh(t){switch(t){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function O1(){if(typeof performance.getEntriesByType=="function"){for(var t=0,e=0,l=performance.getEntriesByType("resource"),a=0;a<l.length;a++){var n=l[a],u=n.transferSize,i=n.initiatorType,r=n.duration;if(u&&r&&dh(i)){for(i=0,r=n.responseEnd,a+=1;a<l.length;a++){var d=l[a],b=d.startTime;if(b>r)break;var M=d.transferSize,C=d.initiatorType;M&&dh(C)&&(d=d.responseEnd,i+=M*(d<r?1:(r-b)/(d-b)))}if(--a,e+=8*(u+i)/(n.duration/1e3),t++,10<t)break}}if(0<t)return e/t/1e6}return navigator.connection&&(t=navigator.connection.downlink,typeof t=="number")?t:5}var df=null,mf=null;function Qu(t){return t.nodeType===9?t:t.ownerDocument}function mh(t){switch(t){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function vh(t,e){if(t===0)switch(e){case"svg":return 1;case"math":return 2;default:return 0}return t===1&&e==="foreignObject"?0:t}function vf(t,e){return t==="textarea"||t==="noscript"||typeof e.children=="string"||typeof e.children=="number"||typeof e.children=="bigint"||typeof e.dangerouslySetInnerHTML=="object"&&e.dangerouslySetInnerHTML!==null&&e.dangerouslySetInnerHTML.__html!=null}var gf=null;function M1(){var t=window.event;return t&&t.type==="popstate"?t===gf?!1:(gf=t,!0):(gf=null,!1)}var gh=typeof setTimeout=="function"?setTimeout:void 0,N1=typeof clearTimeout=="function"?clearTimeout:void 0,yh=typeof Promise=="function"?Promise:void 0,D1=typeof queueMicrotask=="function"?queueMicrotask:typeof yh<"u"?function(t){return yh.resolve(null).then(t).catch(C1)}:gh;function C1(t){setTimeout(function(){throw t})}function Al(t){return t==="head"}function Sh(t,e){var l=e,a=0;do{var n=l.nextSibling;if(t.removeChild(l),n&&n.nodeType===8)if(l=n.data,l==="/$"||l==="/&"){if(a===0){t.removeChild(n),Ra(e);return}a--}else if(l==="$"||l==="$?"||l==="$~"||l==="$!"||l==="&")a++;else if(l==="html")On(t.ownerDocument.documentElement);else if(l==="head"){l=t.ownerDocument.head,On(l);for(var u=l.firstChild;u;){var i=u.nextSibling,r=u.nodeName;u[Za]||r==="SCRIPT"||r==="STYLE"||r==="LINK"&&u.rel.toLowerCase()==="stylesheet"||l.removeChild(u),u=i}}else l==="body"&&On(t.ownerDocument.body);l=n}while(l);Ra(e)}function ph(t,e){var l=t;t=0;do{var a=l.nextSibling;if(l.nodeType===1?e?(l._stashedDisplay=l.style.display,l.style.display="none"):(l.style.display=l._stashedDisplay||"",l.getAttribute("style")===""&&l.removeAttribute("style")):l.nodeType===3&&(e?(l._stashedText=l.nodeValue,l.nodeValue=""):l.nodeValue=l._stashedText||""),a&&a.nodeType===8)if(l=a.data,l==="/$"){if(t===0)break;t--}else l!=="$"&&l!=="$?"&&l!=="$~"&&l!=="$!"||t++;l=a}while(l)}function yf(t){var e=t.firstChild;for(e&&e.nodeType===10&&(e=e.nextSibling);e;){var l=e;switch(e=e.nextSibling,l.nodeName){case"HTML":case"HEAD":case"BODY":yf(l),bi(l);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(l.rel.toLowerCase()==="stylesheet")continue}t.removeChild(l)}}function U1(t,e,l,a){for(;t.nodeType===1;){var n=l;if(t.nodeName.toLowerCase()!==e.toLowerCase()){if(!a&&(t.nodeName!=="INPUT"||t.type!=="hidden"))break}else if(a){if(!t[Za])switch(e){case"meta":if(!t.hasAttribute("itemprop"))break;return t;case"link":if(u=t.getAttribute("rel"),u==="stylesheet"&&t.hasAttribute("data-precedence"))break;if(u!==n.rel||t.getAttribute("href")!==(n.href==null||n.href===""?null:n.href)||t.getAttribute("crossorigin")!==(n.crossOrigin==null?null:n.crossOrigin)||t.getAttribute("title")!==(n.title==null?null:n.title))break;return t;case"style":if(t.hasAttribute("data-precedence"))break;return t;case"script":if(u=t.getAttribute("src"),(u!==(n.src==null?null:n.src)||t.getAttribute("type")!==(n.type==null?null:n.type)||t.getAttribute("crossorigin")!==(n.crossOrigin==null?null:n.crossOrigin))&&u&&t.hasAttribute("async")&&!t.hasAttribute("itemprop"))break;return t;default:return t}}else if(e==="input"&&t.type==="hidden"){var u=n.name==null?null:""+n.name;if(n.type==="hidden"&&t.getAttribute("name")===u)return t}else return t;if(t=Ue(t.nextSibling),t===null)break}return null}function H1(t,e,l){if(e==="")return null;for(;t.nodeType!==3;)if((t.nodeType!==1||t.nodeName!=="INPUT"||t.type!=="hidden")&&!l||(t=Ue(t.nextSibling),t===null))return null;return t}function Th(t,e){for(;t.nodeType!==8;)if((t.nodeType!==1||t.nodeName!=="INPUT"||t.type!=="hidden")&&!e||(t=Ue(t.nextSibling),t===null))return null;return t}function Sf(t){return t.data==="$?"||t.data==="$~"}function pf(t){return t.data==="$!"||t.data==="$?"&&t.ownerDocument.readyState!=="loading"}function j1(t,e){var l=t.ownerDocument;if(t.data==="$~")t._reactRetry=e;else if(t.data!=="$?"||l.readyState!=="loading")e();else{var a=function(){e(),l.removeEventListener("DOMContentLoaded",a)};l.addEventListener("DOMContentLoaded",a),t._reactRetry=a}}function Ue(t){for(;t!=null;t=t.nextSibling){var e=t.nodeType;if(e===1||e===3)break;if(e===8){if(e=t.data,e==="$"||e==="$!"||e==="$?"||e==="$~"||e==="&"||e==="F!"||e==="F")break;if(e==="/$"||e==="/&")return null}}return t}var Tf=null;function bh(t){t=t.nextSibling;for(var e=0;t;){if(t.nodeType===8){var l=t.data;if(l==="/$"||l==="/&"){if(e===0)return Ue(t.nextSibling);e--}else l!=="$"&&l!=="$!"&&l!=="$?"&&l!=="$~"&&l!=="&"||e++}t=t.nextSibling}return null}function Eh(t){t=t.previousSibling;for(var e=0;t;){if(t.nodeType===8){var l=t.data;if(l==="$"||l==="$!"||l==="$?"||l==="$~"||l==="&"){if(e===0)return t;e--}else l!=="/$"&&l!=="/&"||e++}t=t.previousSibling}return null}function xh(t,e,l){switch(e=Qu(l),t){case"html":if(t=e.documentElement,!t)throw Error(c(452));return t;case"head":if(t=e.head,!t)throw Error(c(453));return t;case"body":if(t=e.body,!t)throw Error(c(454));return t;default:throw Error(c(451))}}function On(t){for(var e=t.attributes;e.length;)t.removeAttributeNode(e[0]);bi(t)}var He=new Map,zh=new Set;function Xu(t){return typeof t.getRootNode=="function"?t.getRootNode():t.nodeType===9?t:t.ownerDocument}var nl=L.d;L.d={f:R1,r:q1,D:B1,C:w1,L:L1,m:Y1,X:Q1,S:G1,M:X1};function R1(){var t=nl.f(),e=ju();return t||e}function q1(t){var e=ta(t);e!==null&&e.tag===5&&e.type==="form"?Yr(e):nl.r(t)}var Ua=typeof document>"u"?null:document;function Ah(t,e,l){var a=Ua;if(a&&typeof e=="string"&&e){var n=Ae(e);n='link[rel="'+t+'"][href="'+n+'"]',typeof l=="string"&&(n+='[crossorigin="'+l+'"]'),zh.has(n)||(zh.add(n),t={rel:t,crossOrigin:l,href:e},a.querySelector(n)===null&&(e=a.createElement("link"),te(e,"link",t),$t(e),a.head.appendChild(e)))}}function B1(t){nl.D(t),Ah("dns-prefetch",t,null)}function w1(t,e){nl.C(t,e),Ah("preconnect",t,e)}function L1(t,e,l){nl.L(t,e,l);var a=Ua;if(a&&t&&e){var n='link[rel="preload"][as="'+Ae(e)+'"]';e==="image"&&l&&l.imageSrcSet?(n+='[imagesrcset="'+Ae(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(n+='[imagesizes="'+Ae(l.imageSizes)+'"]')):n+='[href="'+Ae(t)+'"]';var u=n;switch(e){case"style":u=Ha(t);break;case"script":u=ja(t)}He.has(u)||(t=B({rel:"preload",href:e==="image"&&l&&l.imageSrcSet?void 0:t,as:e},l),He.set(u,t),a.querySelector(n)!==null||e==="style"&&a.querySelector(Mn(u))||e==="script"&&a.querySelector(Nn(u))||(e=a.createElement("link"),te(e,"link",t),$t(e),a.head.appendChild(e)))}}function Y1(t,e){nl.m(t,e);var l=Ua;if(l&&t){var a=e&&typeof e.as=="string"?e.as:"script",n='link[rel="modulepreload"][as="'+Ae(a)+'"][href="'+Ae(t)+'"]',u=n;switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=ja(t)}if(!He.has(u)&&(t=B({rel:"modulepreload",href:t},e),He.set(u,t),l.querySelector(n)===null)){switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Nn(u)))return}a=l.createElement("link"),te(a,"link",t),$t(a),l.head.appendChild(a)}}}function G1(t,e,l){nl.S(t,e,l);var a=Ua;if(a&&t){var n=ea(a).hoistableStyles,u=Ha(t);e=e||"default";var i=n.get(u);if(!i){var r={loading:0,preload:null};if(i=a.querySelector(Mn(u)))r.loading=5;else{t=B({rel:"stylesheet",href:t,"data-precedence":e},l),(l=He.get(u))&&bf(t,l);var d=i=a.createElement("link");$t(d),te(d,"link",t),d._p=new Promise(function(b,M){d.onload=b,d.onerror=M}),d.addEventListener("load",function(){r.loading|=1}),d.addEventListener("error",function(){r.loading|=2}),r.loading|=4,Zu(i,e,a)}i={type:"stylesheet",instance:i,count:1,state:r},n.set(u,i)}}}function Q1(t,e){nl.X(t,e);var l=Ua;if(l&&t){var a=ea(l).hoistableScripts,n=ja(t),u=a.get(n);u||(u=l.querySelector(Nn(n)),u||(t=B({src:t,async:!0},e),(e=He.get(n))&&Ef(t,e),u=l.createElement("script"),$t(u),te(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},a.set(n,u))}}function X1(t,e){nl.M(t,e);var l=Ua;if(l&&t){var a=ea(l).hoistableScripts,n=ja(t),u=a.get(n);u||(u=l.querySelector(Nn(n)),u||(t=B({src:t,async:!0,type:"module"},e),(e=He.get(n))&&Ef(t,e),u=l.createElement("script"),$t(u),te(u,"link",t),l.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},a.set(n,u))}}function _h(t,e,l,a){var n=(n=at.current)?Xu(n):null;if(!n)throw Error(c(446));switch(t){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(e=Ha(l.href),l=ea(n).hoistableStyles,a=l.get(e),a||(a={type:"style",instance:null,count:0,state:null},l.set(e,a)),a):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){t=Ha(l.href);var u=ea(n).hoistableStyles,i=u.get(t);if(i||(n=n.ownerDocument||n,i={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(t,i),(u=n.querySelector(Mn(t)))&&!u._p&&(i.instance=u,i.state.loading=5),He.has(t)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},He.set(t,l),u||Z1(n,t,l,i.state))),e&&a===null)throw Error(c(528,""));return i}if(e&&a!==null)throw Error(c(529,""));return null;case"script":return e=l.async,l=l.src,typeof l=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=ja(l),l=ea(n).hoistableScripts,a=l.get(e),a||(a={type:"script",instance:null,count:0,state:null},l.set(e,a)),a):{type:"void",instance:null,count:0,state:null};default:throw Error(c(444,t))}}function Ha(t){return'href="'+Ae(t)+'"'}function Mn(t){return'link[rel="stylesheet"]['+t+"]"}function Oh(t){return B({},t,{"data-precedence":t.precedence,precedence:null})}function Z1(t,e,l,a){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?a.loading=1:(e=t.createElement("link"),a.preload=e,e.addEventListener("load",function(){return a.loading|=1}),e.addEventListener("error",function(){return a.loading|=2}),te(e,"link",l),$t(e),t.head.appendChild(e))}function ja(t){return'[src="'+Ae(t)+'"]'}function Nn(t){return"script[async]"+t}function Mh(t,e,l){if(e.count++,e.instance===null)switch(e.type){case"style":var a=t.querySelector('style[data-href~="'+Ae(l.href)+'"]');if(a)return e.instance=a,$t(a),a;var n=B({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return a=(t.ownerDocument||t).createElement("style"),$t(a),te(a,"style",n),Zu(a,l.precedence,t),e.instance=a;case"stylesheet":n=Ha(l.href);var u=t.querySelector(Mn(n));if(u)return e.state.loading|=4,e.instance=u,$t(u),u;a=Oh(l),(n=He.get(n))&&bf(a,n),u=(t.ownerDocument||t).createElement("link"),$t(u);var i=u;return i._p=new Promise(function(r,d){i.onload=r,i.onerror=d}),te(u,"link",a),e.state.loading|=4,Zu(u,l.precedence,t),e.instance=u;case"script":return u=ja(l.src),(n=t.querySelector(Nn(u)))?(e.instance=n,$t(n),n):(a=l,(n=He.get(u))&&(a=B({},l),Ef(a,n)),t=t.ownerDocument||t,n=t.createElement("script"),$t(n),te(n,"link",a),t.head.appendChild(n),e.instance=n);case"void":return null;default:throw Error(c(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(a=e.instance,e.state.loading|=4,Zu(a,l.precedence,t));return e.instance}function Zu(t,e,l){for(var a=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),n=a.length?a[a.length-1]:null,u=n,i=0;i<a.length;i++){var r=a[i];if(r.dataset.precedence===e)u=r;else if(u!==n)break}u?u.parentNode.insertBefore(t,u.nextSibling):(e=l.nodeType===9?l.head:l,e.insertBefore(t,e.firstChild))}function bf(t,e){t.crossOrigin==null&&(t.crossOrigin=e.crossOrigin),t.referrerPolicy==null&&(t.referrerPolicy=e.referrerPolicy),t.title==null&&(t.title=e.title)}function Ef(t,e){t.crossOrigin==null&&(t.crossOrigin=e.crossOrigin),t.referrerPolicy==null&&(t.referrerPolicy=e.referrerPolicy),t.integrity==null&&(t.integrity=e.integrity)}var Vu=null;function Nh(t,e,l){if(Vu===null){var a=new Map,n=Vu=new Map;n.set(l,a)}else n=Vu,a=n.get(l),a||(a=new Map,n.set(l,a));if(a.has(t))return a;for(a.set(t,null),l=l.getElementsByTagName(t),n=0;n<l.length;n++){var u=l[n];if(!(u[Za]||u[Wt]||t==="link"&&u.getAttribute("rel")==="stylesheet")&&u.namespaceURI!=="http://www.w3.org/2000/svg"){var i=u.getAttribute(e)||"";i=t+i;var r=a.get(i);r?r.push(u):a.set(i,[u])}}return a}function Dh(t,e,l){t=t.ownerDocument||t,t.head.insertBefore(l,e==="title"?t.querySelector("head > title"):null)}function V1(t,e,l){if(l===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function Ch(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function J1(t,e,l,a){if(l.type==="stylesheet"&&(typeof a.media!="string"||matchMedia(a.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var n=Ha(a.href),u=e.querySelector(Mn(n));if(u){e=u._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Ju.bind(t),e.then(t,t)),l.state.loading|=4,l.instance=u,$t(u);return}u=e.ownerDocument||e,a=Oh(a),(n=He.get(n))&&bf(a,n),u=u.createElement("link"),$t(u);var i=u;i._p=new Promise(function(r,d){i.onload=r,i.onerror=d}),te(u,"link",a),l.instance=u}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(l,e),(e=l.state.preload)&&(l.state.loading&3)===0&&(t.count++,l=Ju.bind(t),e.addEventListener("load",l),e.addEventListener("error",l))}}var xf=0;function K1(t,e){return t.stylesheets&&t.count===0&&$u(t,t.stylesheets),0<t.count||0<t.imgCount?function(l){var a=setTimeout(function(){if(t.stylesheets&&$u(t,t.stylesheets),t.unsuspend){var u=t.unsuspend;t.unsuspend=null,u()}},6e4+e);0<t.imgBytes&&xf===0&&(xf=62500*O1());var n=setTimeout(function(){if(t.waitingForImages=!1,t.count===0&&(t.stylesheets&&$u(t,t.stylesheets),t.unsuspend)){var u=t.unsuspend;t.unsuspend=null,u()}},(t.imgBytes>xf?50:800)+e);return t.unsuspend=l,function(){t.unsuspend=null,clearTimeout(a),clearTimeout(n)}}:null}function Ju(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)$u(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Ku=null;function $u(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Ku=new Map,e.forEach($1,t),Ku=null,Ju.call(t))}function $1(t,e){if(!(e.state.loading&4)){var l=Ku.get(t);if(l)var a=l.get(null);else{l=new Map,Ku.set(t,l);for(var n=t.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u<n.length;u++){var i=n[u];(i.nodeName==="LINK"||i.getAttribute("media")!=="not all")&&(l.set(i.dataset.precedence,i),a=i)}a&&l.set(null,a)}n=e.instance,i=n.getAttribute("data-precedence"),u=l.get(i)||a,u===a&&l.set(null,n),l.set(i,n),this.count++,a=Ju.bind(this),n.addEventListener("load",a),n.addEventListener("error",a),u?u.parentNode.insertBefore(n,u.nextSibling):(t=t.nodeType===9?t.head:t,t.insertBefore(n,t.firstChild)),e.state.loading|=4}}var Dn={$$typeof:et,Provider:null,Consumer:null,_currentValue:H,_currentValue2:H,_threadCount:0};function k1(t,e,l,a,n,u,i,r,d){this.tag=1,this.containerInfo=t,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=yi(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=yi(0),this.hiddenUpdates=yi(null),this.identifierPrefix=a,this.onUncaughtError=n,this.onCaughtError=u,this.onRecoverableError=i,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=d,this.incompleteTransitions=new Map}function Uh(t,e,l,a,n,u,i,r,d,b,M,C){return t=new k1(t,e,l,i,d,b,M,C,r),e=1,u===!0&&(e|=24),u=Se(3,null,null,e),t.current=u,u.stateNode=t,e=ec(),e.refCount++,t.pooledCache=e,e.refCount++,u.memoizedState={element:a,isDehydrated:l,cache:e},uc(u),t}function Hh(t){return t?(t=oa,t):oa}function jh(t,e,l,a,n,u){n=Hh(n),a.context===null?a.context=n:a.pendingContext=n,a=ml(e),a.payload={element:l},u=u===void 0?null:u,u!==null&&(a.callback=u),l=vl(t,a,e),l!==null&&(oe(l,t,e),fn(l,t,e))}function Rh(t,e){if(t=t.memoizedState,t!==null&&t.dehydrated!==null){var l=t.retryLane;t.retryLane=l!==0&&l<e?l:e}}function zf(t,e){Rh(t,e),(t=t.alternate)&&Rh(t,e)}function qh(t){if(t.tag===13||t.tag===31){var e=wl(t,67108864);e!==null&&oe(e,t,67108864),zf(t,67108864)}}function Bh(t){if(t.tag===13||t.tag===31){var e=xe();e=Si(e);var l=wl(t,e);l!==null&&oe(l,t,e),zf(t,e)}}var ku=!0;function W1(t,e,l,a){var n=O.T;O.T=null;var u=L.p;try{L.p=2,Af(t,e,l,a)}finally{L.p=u,O.T=n}}function F1(t,e,l,a){var n=O.T;O.T=null;var u=L.p;try{L.p=8,Af(t,e,l,a)}finally{L.p=u,O.T=n}}function Af(t,e,l,a){if(ku){var n=_f(a);if(n===null)of(t,e,a,Wu,l),Lh(t,a);else if(P1(n,t,e,l,a))a.stopPropagation();else if(Lh(t,a),e&4&&-1<I1.indexOf(t)){for(;n!==null;){var u=ta(n);if(u!==null)switch(u.tag){case 3:if(u=u.stateNode,u.current.memoizedState.isDehydrated){var i=Hl(u.pendingLanes);if(i!==0){var r=u;for(r.pendingLanes|=2,r.entangledLanes|=2;i;){var d=1<<31-ge(i);r.entanglements[1]|=d,i&=~d}Ye(u),(yt&6)===0&&(Uu=me()+500,zn(0))}}break;case 31:case 13:r=wl(u,2),r!==null&&oe(r,u,2),ju(),zf(u,2)}if(u=_f(a),u===null&&of(t,e,a,Wu,l),u===n)break;n=u}n!==null&&a.stopPropagation()}else of(t,e,a,null,l)}}function _f(t){return t=Oi(t),Of(t)}var Wu=null;function Of(t){if(Wu=null,t=Pl(t),t!==null){var e=y(t);if(e===null)t=null;else{var l=e.tag;if(l===13){if(t=E(e),t!==null)return t;t=null}else if(l===31){if(t=p(e),t!==null)return t;t=null}else if(l===3){if(e.stateNode.current.memoizedState.isDehydrated)return e.tag===3?e.stateNode.containerInfo:null;t=null}else e!==t&&(t=null)}}return Wu=t,null}function wh(t){switch(t){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(B0()){case Vf:return 2;case Jf:return 8;case Ln:case w0:return 32;case Kf:return 268435456;default:return 32}default:return 32}}var Mf=!1,_l=null,Ol=null,Ml=null,Cn=new Map,Un=new Map,Nl=[],I1="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function Lh(t,e){switch(t){case"focusin":case"focusout":_l=null;break;case"dragenter":case"dragleave":Ol=null;break;case"mouseover":case"mouseout":Ml=null;break;case"pointerover":case"pointerout":Cn.delete(e.pointerId);break;case"gotpointercapture":case"lostpointercapture":Un.delete(e.pointerId)}}function Hn(t,e,l,a,n,u){return t===null||t.nativeEvent!==u?(t={blockedOn:e,domEventName:l,eventSystemFlags:a,nativeEvent:u,targetContainers:[n]},e!==null&&(e=ta(e),e!==null&&qh(e)),t):(t.eventSystemFlags|=a,e=t.targetContainers,n!==null&&e.indexOf(n)===-1&&e.push(n),t)}function P1(t,e,l,a,n){switch(e){case"focusin":return _l=Hn(_l,t,e,l,a,n),!0;case"dragenter":return Ol=Hn(Ol,t,e,l,a,n),!0;case"mouseover":return Ml=Hn(Ml,t,e,l,a,n),!0;case"pointerover":var u=n.pointerId;return Cn.set(u,Hn(Cn.get(u)||null,t,e,l,a,n)),!0;case"gotpointercapture":return u=n.pointerId,Un.set(u,Hn(Un.get(u)||null,t,e,l,a,n)),!0}return!1}function Yh(t){var e=Pl(t.target);if(e!==null){var l=y(e);if(l!==null){if(e=l.tag,e===13){if(e=E(l),e!==null){t.blockedOn=e,Pf(t.priority,function(){Bh(l)});return}}else if(e===31){if(e=p(l),e!==null){t.blockedOn=e,Pf(t.priority,function(){Bh(l)});return}}else if(e===3&&l.stateNode.current.memoizedState.isDehydrated){t.blockedOn=l.tag===3?l.stateNode.containerInfo:null;return}}}t.blockedOn=null}function Fu(t){if(t.blockedOn!==null)return!1;for(var e=t.targetContainers;0<e.length;){var l=_f(t.nativeEvent);if(l===null){l=t.nativeEvent;var a=new l.constructor(l.type,l);_i=a,l.target.dispatchEvent(a),_i=null}else return e=ta(l),e!==null&&qh(e),t.blockedOn=l,!1;e.shift()}return!0}function Gh(t,e,l){Fu(t)&&l.delete(e)}function tm(){Mf=!1,_l!==null&&Fu(_l)&&(_l=null),Ol!==null&&Fu(Ol)&&(Ol=null),Ml!==null&&Fu(Ml)&&(Ml=null),Cn.forEach(Gh),Un.forEach(Gh)}function Iu(t,e){t.blockedOn===e&&(t.blockedOn=null,Mf||(Mf=!0,f.unstable_scheduleCallback(f.unstable_NormalPriority,tm)))}var Pu=null;function Qh(t){Pu!==t&&(Pu=t,f.unstable_scheduleCallback(f.unstable_NormalPriority,function(){Pu===t&&(Pu=null);for(var e=0;e<t.length;e+=3){var l=t[e],a=t[e+1],n=t[e+2];if(typeof a!="function"){if(Of(a||l)===null)continue;break}var u=ta(l);u!==null&&(t.splice(e,3),e-=3,Ac(u,{pending:!0,data:n,method:l.method,action:a},a,n))}}))}function Ra(t){function e(d){return Iu(d,t)}_l!==null&&Iu(_l,t),Ol!==null&&Iu(Ol,t),Ml!==null&&Iu(Ml,t),Cn.forEach(e),Un.forEach(e);for(var l=0;l<Nl.length;l++){var a=Nl[l];a.blockedOn===t&&(a.blockedOn=null)}for(;0<Nl.length&&(l=Nl[0],l.blockedOn===null);)Yh(l),l.blockedOn===null&&Nl.shift();if(l=(t.ownerDocument||t).$$reactFormReplay,l!=null)for(a=0;a<l.length;a+=3){var n=l[a],u=l[a+1],i=n[ue]||null;if(typeof u=="function")i||Qh(l);else if(i){var r=null;if(u&&u.hasAttribute("formAction")){if(n=u,i=u[ue]||null)r=i.formAction;else if(Of(n)!==null)continue}else r=i.action;typeof r=="function"?l[a+1]=r:(l.splice(a,3),a-=3),Qh(l)}}}function Xh(){function t(u){u.canIntercept&&u.info==="react-transition"&&u.intercept({handler:function(){return new Promise(function(i){return n=i})},focusReset:"manual",scroll:"manual"})}function e(){n!==null&&(n(),n=null),a||setTimeout(l,20)}function l(){if(!a&&!navigation.transition){var u=navigation.currentEntry;u&&u.url!=null&&navigation.navigate(u.url,{state:u.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var a=!1,n=null;return navigation.addEventListener("navigate",t),navigation.addEventListener("navigatesuccess",e),navigation.addEventListener("navigateerror",e),setTimeout(l,100),function(){a=!0,navigation.removeEventListener("navigate",t),navigation.removeEventListener("navigatesuccess",e),navigation.removeEventListener("navigateerror",e),n!==null&&(n(),n=null)}}}function Nf(t){this._internalRoot=t}ti.prototype.render=Nf.prototype.render=function(t){var e=this._internalRoot;if(e===null)throw Error(c(409));var l=e.current,a=xe();jh(l,a,t,e,null,null)},ti.prototype.unmount=Nf.prototype.unmount=function(){var t=this._internalRoot;if(t!==null){this._internalRoot=null;var e=t.containerInfo;jh(t.current,2,null,t,null,null),ju(),e[Il]=null}};function ti(t){this._internalRoot=t}ti.prototype.unstable_scheduleHydration=function(t){if(t){var e=If();t={blockedOn:null,target:t,priority:e};for(var l=0;l<Nl.length&&e!==0&&e<Nl[l].priority;l++);Nl.splice(l,0,t),l===0&&Yh(t)}};var Zh=o.version;if(Zh!=="19.2.1")throw Error(c(527,Zh,"19.2.1"));L.findDOMNode=function(t){var e=t._reactInternals;if(e===void 0)throw typeof t.render=="function"?Error(c(188)):(t=Object.keys(t).join(","),Error(c(268,t)));return t=v(e),t=t!==null?G(t):null,t=t===null?null:t.stateNode,t};var em={bundleType:0,version:"19.2.1",rendererPackageName:"react-dom",currentDispatcherRef:O,reconcilerVersion:"19.2.1"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var ei=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!ei.isDisabled&&ei.supportsFiber)try{Ga=ei.inject(em),ve=ei}catch{}}return Rn.createRoot=function(t,e){if(!s(t))throw Error(c(299));var l=!1,a="",n=Wr,u=Fr,i=Ir;return e!=null&&(e.unstable_strictMode===!0&&(l=!0),e.identifierPrefix!==void 0&&(a=e.identifierPrefix),e.onUncaughtError!==void 0&&(n=e.onUncaughtError),e.onCaughtError!==void 0&&(u=e.onCaughtError),e.onRecoverableError!==void 0&&(i=e.onRecoverableError)),e=Uh(t,1,!1,null,null,l,a,null,n,u,i,Xh),t[Il]=e.current,rf(t),new Nf(e)},Rn.hydrateRoot=function(t,e,l){if(!s(t))throw Error(c(299));var a=!1,n="",u=Wr,i=Fr,r=Ir,d=null;return l!=null&&(l.unstable_strictMode===!0&&(a=!0),l.identifierPrefix!==void 0&&(n=l.identifierPrefix),l.onUncaughtError!==void 0&&(u=l.onUncaughtError),l.onCaughtError!==void 0&&(i=l.onCaughtError),l.onRecoverableError!==void 0&&(r=l.onRecoverableError),l.formState!==void 0&&(d=l.formState)),e=Uh(t,1,!0,e,l??null,a,n,d,u,i,r,Xh),e.context=Hh(null),l=e.current,a=xe(),a=Si(a),n=ml(a),n.callback=null,vl(l,n,a),l=a,e.current.lanes=l,Xa(e,l),Ye(e),t[Il]=e.current,rf(t),new ti(e)},Rn.version="19.2.1",Rn}var t0;function hm(){if(t0)return Uf.exports;t0=1;function f(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(f)}catch(o){console.error(o)}}return f(),Uf.exports=om(),Uf.exports}var dm=hm();function mm(){const f=st.useRef(null),[o]=vm(f);return[o,f]}function vm(f){const[o,h]=st.useState(new DOMRect(0,0,10,10)),c=st.useCallback(()=>{const s=f==null?void 0:f.current;s&&h(s.getBoundingClientRect())},[f]);return st.useLayoutEffect(()=>{const s=f==null?void 0:f.current;if(!s)return;c();const y=new ResizeObserver(c);return y.observe(s),window.addEventListener("resize",c),()=>{y.disconnect(),window.removeEventListener("resize",c)}},[c,f]),[o,c]}function e0(f,o){f&&(o=Fl.getObject(f,o));const[h,c]=st.useState(o),s=st.useCallback(y=>{f?Fl.setObject(f,y):c(y)},[f,c]);return st.useEffect(()=>{if(f){const y=()=>c(Fl.getObject(f,o));return Fl.onChangeEmitter.addEventListener(f,y),()=>Fl.onChangeEmitter.removeEventListener(f,y)}},[o,f]),[h,s]}class gm{constructor(){this.onChangeEmitter=new EventTarget}getString(o,h){return localStorage[o]||h}setString(o,h){var c;localStorage[o]=h,this.onChangeEmitter.dispatchEvent(new Event(o)),(c=window.saveSettings)==null||c.call(window)}getObject(o,h){if(!localStorage[o])return h;try{return JSON.parse(localStorage[o])}catch{return h}}setObject(o,h){var c;localStorage[o]=JSON.stringify(h),this.onChangeEmitter.dispatchEvent(new Event(o)),(c=window.saveSettings)==null||c.call(window)}}const Fl=new gm;function ym(...f){return f.filter(Boolean).join(" ")}const Sm="system",f0="theme",pm=[{label:"Dark mode",value:"dark-mode"},{label:"Light mode",value:"light-mode"},{label:"System",value:"system"}],s0=window.matchMedia("(prefers-color-scheme: dark)");function Tm(){document.playwrightThemeInitialized||(document.playwrightThemeInitialized=!0,document.defaultView.addEventListener("focus",f=>{f.target.document.nodeType===Node.DOCUMENT_NODE&&document.body.classList.remove("inactive")},!1),document.defaultView.addEventListener("blur",f=>{document.body.classList.add("inactive")},!1),Bf(wf()),s0.addEventListener("change",()=>{Bf(wf())}))}const bm=new Set;function Bf(f){const o=Em(),h=f==="system"?s0.matches?"dark-mode":"light-mode":f;if(o!==h){o&&document.documentElement.classList.remove(o),document.documentElement.classList.add(h);for(const c of bm)c(h)}}function wf(){return Fl.getString(f0,Sm)}function Em(){return document.documentElement.classList.contains("dark-mode")?"dark-mode":document.documentElement.classList.contains("light-mode")?"light-mode":null}function xm(){const[f,o]=st.useState(wf());return st.useEffect(()=>{Fl.setString(f0,f),Bf(f)},[f]),[f,o]}class zm{constructor(o){this._lastId=0,this._pending=new Map,this._sendQueue=[],this._closed=!1,this._ws=new WebSocket(o),this._ws.onopen=()=>{for(const h of this._sendQueue||[])this._ws.send(h);this._sendQueue=void 0,this.onopen&&this.onopen()},this._ws.onmessage=h=>{let c;try{c=JSON.parse(h.data)}catch{this._ws.close();return}if(c.id!==void 0){const s=this._pending.get(c.id);s&&(this._pending.delete(c.id),c.error?s.reject(new Error(c.error)):s.resolve(c.result))}else c.method&&this.onevent&&this.onevent(c.method,c.params)},this._ws.onclose=h=>{this._closed=!0,this._sendQueue=void 0;for(const{reject:c}of this._pending.values())c(new Error("Connection closed"));this._pending.clear(),this.onclose&&this.onclose(h.reason)},this._ws.onerror=()=>{}}sendNoReply(o,h){this.send(o,h).catch(()=>{})}send(o,h){if(this._closed)return Promise.reject(new Error("Connection closed"));const c=++this._lastId,s=JSON.stringify({id:c,method:o,params:h});return this._sendQueue?this._sendQueue.push(s):this._ws.send(s),new Promise((y,E)=>{this._pending.set(c,{resolve:y,reject:E})})}close(){this._ws.close()}}class fi{constructor(o){this._listeners=new Map,this._transport=o,this._transport.onopen=()=>{var h;(h=this.onopen)==null||h.call(this)},this._transport.onevent=(h,c)=>{this._fireEvent(h,c)},this._transport.onclose=h=>{var c;(c=this.onclose)==null||c.call(this,h)}}static create(o){const h=new zm(o),c=new fi(h);return new Proxy(c,{get(s,y,E){if(typeof y=="symbol"||y in s)return Reflect.get(s,y,E);if(y!=="then")return p=>s._transport.send(y,p)}})}_fireEvent(o,h){const c=this._listeners.get(o);if(c)for(const s of c)s(h)}on(o,h){let c=this._listeners.get(o);c||(c=new Set,this._listeners.set(o,c)),c.add(h)}off(o,h){var c;(c=this._listeners.get(o))==null||c.delete(h)}close(){this._transport.close()}}const Zt=function(f,o,h){return f>=o&&f<=h};function he(f){return Zt(f,48,57)}function l0(f){return he(f)||Zt(f,65,70)||Zt(f,97,102)}function Am(f){return Zt(f,65,90)}function _m(f){return Zt(f,97,122)}function Om(f){return Am(f)||_m(f)}function Mm(f){return f>=128}function li(f){return Om(f)||Mm(f)||f===95}function a0(f){return li(f)||he(f)||f===45}function Nm(f){return Zt(f,0,8)||f===11||Zt(f,14,31)||f===127}function ai(f){return f===10}function ul(f){return ai(f)||f===9||f===32}const Dm=1114111;class Qf extends Error{constructor(o){super(o),this.name="InvalidCharacterError"}}function Cm(f){const o=[];for(let h=0;h<f.length;h++){let c=f.charCodeAt(h);if(c===13&&f.charCodeAt(h+1)===10&&(c=10,h++),(c===13||c===12)&&(c=10),c===0&&(c=65533),Zt(c,55296,56319)&&Zt(f.charCodeAt(h+1),56320,57343)){const s=c-55296,y=f.charCodeAt(h+1)-56320;c=Math.pow(2,16)+s*Math.pow(2,10)+y,h++}o.push(c)}return o}function Kt(f){if(f<=65535)return String.fromCharCode(f);f-=Math.pow(2,16);const o=Math.floor(f/Math.pow(2,10))+55296,h=f%Math.pow(2,10)+56320;return String.fromCharCode(o)+String.fromCharCode(h)}function Um(f){const o=Cm(f);let h=-1;const c=[];let s;const y=function(j){return j>=o.length?-1:o[j]},E=function(j){if(j===void 0&&(j=1),j>3)throw"Spec Error: no more than three codepoints of lookahead.";return y(h+j)},p=function(j){return j===void 0&&(j=1),h+=j,s=y(h),!0},z=function(){return h-=1,!0},v=function(j){return j===void 0&&(j=s),j===-1},G=function(){if(B(),p(),ul(s)){for(;ul(E());)p();return new Lf}else{if(s===34)return Q();if(s===35)if(a0(E())||Z(E(1),E(2))){const j=new z0("");return et(E(1),E(2),E(3))&&(j.type="id"),j.value=tt(),j}else return new ae(s);else return s===36?E()===61?(p(),new qm):new ae(s):s===39?Q():s===40?new p0:s===41?new T0:s===42?E()===61?(p(),new Bm):new ae(s):s===43?At()?(z(),J()):new ae(s):s===44?new v0:s===45?At()?(z(),J()):E(1)===45&&E(2)===62?(p(2),new h0):Rt()?(z(),$()):new ae(s):s===46?At()?(z(),J()):new ae(s):s===58?new d0:s===59?new m0:s===60?E(1)===33&&E(2)===45&&E(3)===45?(p(3),new o0):new ae(s):s===64?et(E(1),E(2),E(3))?new x0(tt()):new ae(s):s===91?new S0:s===92?P()?(z(),$()):new ae(s):s===93?new Yf:s===94?E()===61?(p(),new Rm):new ae(s):s===123?new g0:s===124?E()===61?(p(),new jm):E()===124?(p(),new b0):new ae(s):s===125?new y0:s===126?E()===61?(p(),new Hm):new ae(s):he(s)?(z(),J()):li(s)?(z(),$()):v()?new ui:new ae(s)}},B=function(){for(;E(1)===47&&E(2)===42;)for(p(2);;)if(p(),s===42&&E()===47){p();break}else if(v())return},J=function(){const j=Nt();if(et(E(1),E(2),E(3))){const I=new wm;return I.value=j.value,I.repr=j.repr,I.type=j.type,I.unit=tt(),I}else if(E()===37){p();const I=new M0;return I.value=j.value,I.repr=j.repr,I}else{const I=new O0;return I.value=j.value,I.repr=j.repr,I.type=j.type,I}},$=function(){const j=tt();if(j.toLowerCase()==="url"&&E()===40){for(p();ul(E(1))&&ul(E(2));)p();return E()===34||E()===39?new ii(j):ul(E())&&(E(2)===34||E(2)===39)?new ii(j):N()}else return E()===40?(p(),new ii(j)):new E0(j)},Q=function(j){j===void 0&&(j=s);let I="";for(;p();){if(s===j||v())return new A0(I);if(ai(s))return z(),new r0;s===92?v(E())||(ai(E())?p():I+=Kt(q())):I+=Kt(s)}throw new Error("Internal error")},N=function(){const j=new _0("");for(;ul(E());)p();if(v(E()))return j;for(;p();){if(s===41||v())return j;if(ul(s)){for(;ul(E());)p();return E()===41||v(E())?(p(),j):(Dt(),new ni)}else{if(s===34||s===39||s===40||Nm(s))return Dt(),new ni;if(s===92)if(P())j.value+=Kt(q());else return Dt(),new ni;else j.value+=Kt(s)}}throw new Error("Internal error")},q=function(){if(p(),l0(s)){const j=[s];for(let _t=0;_t<5&&l0(E());_t++)p(),j.push(s);ul(E())&&p();let I=parseInt(j.map(function(_t){return String.fromCharCode(_t)}).join(""),16);return I>Dm&&(I=65533),I}else return v()?65533:s},Z=function(j,I){return!(j!==92||ai(I))},P=function(){return Z(s,E())},et=function(j,I,_t){return j===45?li(I)||I===45||Z(I,_t):li(j)?!0:j===92?Z(j,I):!1},Rt=function(){return et(s,E(1),E(2))},Lt=function(j,I,_t){return j===43||j===45?!!(he(I)||I===46&&he(_t)):j===46?!!he(I):!!he(j)},At=function(){return Lt(s,E(1),E(2))},tt=function(){let j="";for(;p();)if(a0(s))j+=Kt(s);else if(P())j+=Kt(q());else return z(),j;throw new Error("Internal parse error")},Nt=function(){let j="",I="integer";for((E()===43||E()===45)&&(p(),j+=Kt(s));he(E());)p(),j+=Kt(s);if(E(1)===46&&he(E(2)))for(p(),j+=Kt(s),p(),j+=Kt(s),I="number";he(E());)p(),j+=Kt(s);const _t=E(1),gt=E(2),O=E(3);if((_t===69||_t===101)&&he(gt))for(p(),j+=Kt(s),p(),j+=Kt(s),I="number";he(E());)p(),j+=Kt(s);else if((_t===69||_t===101)&&(gt===43||gt===45)&&he(O))for(p(),j+=Kt(s),p(),j+=Kt(s),p(),j+=Kt(s),I="number";he(E());)p(),j+=Kt(s);const L=R(j);return{type:I,value:L,repr:j}},R=function(j){return+j},Dt=function(){for(;p();){if(s===41||v())return;P()&&q()}};let xt=0;for(;!v(E());)if(c.push(G()),xt++,xt>o.length*2)throw new Error("I'm infinite-looping!");return c}class wt{constructor(){this.tokenType=""}toJSON(){return{token:this.tokenType}}toString(){return this.tokenType}toSource(){return""+this}}class r0 extends wt{constructor(){super(...arguments),this.tokenType="BADSTRING"}}class ni extends wt{constructor(){super(...arguments),this.tokenType="BADURL"}}class Lf extends wt{constructor(){super(...arguments),this.tokenType="WHITESPACE"}toString(){return"WS"}toSource(){return" "}}class o0 extends wt{constructor(){super(...arguments),this.tokenType="CDO"}toSource(){return"<!--"}}class h0 extends wt{constructor(){super(...arguments),this.tokenType="CDC"}toSource(){return"-->"}}class d0 extends wt{constructor(){super(...arguments),this.tokenType=":"}}class m0 extends wt{constructor(){super(...arguments),this.tokenType=";"}}class v0 extends wt{constructor(){super(...arguments),this.tokenType=","}}class La extends wt{constructor(){super(...arguments),this.value="",this.mirror=""}}class g0 extends La{constructor(){super(),this.tokenType="{",this.value="{",this.mirror="}"}}class y0 extends La{constructor(){super(),this.tokenType="}",this.value="}",this.mirror="{"}}class S0 extends La{constructor(){super(),this.tokenType="[",this.value="[",this.mirror="]"}}class Yf extends La{constructor(){super(),this.tokenType="]",this.value="]",this.mirror="["}}class p0 extends La{constructor(){super(),this.tokenType="(",this.value="(",this.mirror=")"}}class T0 extends La{constructor(){super(),this.tokenType=")",this.value=")",this.mirror="("}}class Hm extends wt{constructor(){super(...arguments),this.tokenType="~="}}class jm extends wt{constructor(){super(...arguments),this.tokenType="|="}}class Rm extends wt{constructor(){super(...arguments),this.tokenType="^="}}class qm extends wt{constructor(){super(...arguments),this.tokenType="$="}}class Bm extends wt{constructor(){super(...arguments),this.tokenType="*="}}class b0 extends wt{constructor(){super(...arguments),this.tokenType="||"}}class ui extends wt{constructor(){super(...arguments),this.tokenType="EOF"}toSource(){return""}}class ae extends wt{constructor(o){super(),this.tokenType="DELIM",this.value="",this.value=Kt(o)}toString(){return"DELIM("+this.value+")"}toJSON(){const o=this.constructor.prototype.constructor.prototype.toJSON.call(this);return o.value=this.value,o}toSource(){return this.value==="\\"?`\\ +`:this.value}}class Ya extends wt{constructor(){super(...arguments),this.value=""}ASCIIMatch(o){return this.value.toLowerCase()===o.toLowerCase()}toJSON(){const o=this.constructor.prototype.constructor.prototype.toJSON.call(this);return o.value=this.value,o}}class E0 extends Ya{constructor(o){super(),this.tokenType="IDENT",this.value=o}toString(){return"IDENT("+this.value+")"}toSource(){return Bn(this.value)}}class ii extends Ya{constructor(o){super(),this.tokenType="FUNCTION",this.value=o,this.mirror=")"}toString(){return"FUNCTION("+this.value+")"}toSource(){return Bn(this.value)+"("}}class x0 extends Ya{constructor(o){super(),this.tokenType="AT-KEYWORD",this.value=o}toString(){return"AT("+this.value+")"}toSource(){return"@"+Bn(this.value)}}class z0 extends Ya{constructor(o){super(),this.tokenType="HASH",this.value=o,this.type="unrestricted"}toString(){return"HASH("+this.value+")"}toJSON(){const o=this.constructor.prototype.constructor.prototype.toJSON.call(this);return o.value=this.value,o.type=this.type,o}toSource(){return this.type==="id"?"#"+Bn(this.value):"#"+Lm(this.value)}}class A0 extends Ya{constructor(o){super(),this.tokenType="STRING",this.value=o}toString(){return'"'+N0(this.value)+'"'}}class _0 extends Ya{constructor(o){super(),this.tokenType="URL",this.value=o}toString(){return"URL("+this.value+")"}toSource(){return'url("'+N0(this.value)+'")'}}class O0 extends wt{constructor(){super(),this.tokenType="NUMBER",this.type="integer",this.repr=""}toString(){return this.type==="integer"?"INT("+this.value+")":"NUMBER("+this.value+")"}toJSON(){const o=super.toJSON();return o.value=this.value,o.type=this.type,o.repr=this.repr,o}toSource(){return this.repr}}class M0 extends wt{constructor(){super(),this.tokenType="PERCENTAGE",this.repr=""}toString(){return"PERCENTAGE("+this.value+")"}toJSON(){const o=this.constructor.prototype.constructor.prototype.toJSON.call(this);return o.value=this.value,o.repr=this.repr,o}toSource(){return this.repr+"%"}}class wm extends wt{constructor(){super(),this.tokenType="DIMENSION",this.type="integer",this.repr="",this.unit=""}toString(){return"DIM("+this.value+","+this.unit+")"}toJSON(){const o=this.constructor.prototype.constructor.prototype.toJSON.call(this);return o.value=this.value,o.type=this.type,o.repr=this.repr,o.unit=this.unit,o}toSource(){const o=this.repr;let h=Bn(this.unit);return h[0].toLowerCase()==="e"&&(h[1]==="-"||Zt(h.charCodeAt(1),48,57))&&(h="\\65 "+h.slice(1,h.length)),o+h}}function Bn(f){f=""+f;let o="";const h=f.charCodeAt(0);for(let c=0;c<f.length;c++){const s=f.charCodeAt(c);if(s===0)throw new Qf("Invalid character: the input contains U+0000.");Zt(s,1,31)||s===127||c===0&&Zt(s,48,57)||c===1&&Zt(s,48,57)&&h===45?o+="\\"+s.toString(16)+" ":s>=128||s===45||s===95||Zt(s,48,57)||Zt(s,65,90)||Zt(s,97,122)?o+=f[c]:o+="\\"+f[c]}return o}function Lm(f){f=""+f;let o="";for(let h=0;h<f.length;h++){const c=f.charCodeAt(h);if(c===0)throw new Qf("Invalid character: the input contains U+0000.");c>=128||c===45||c===95||Zt(c,48,57)||Zt(c,65,90)||Zt(c,97,122)?o+=f[h]:o+="\\"+c.toString(16)+" "}return o}function N0(f){f=""+f;let o="";for(let h=0;h<f.length;h++){const c=f.charCodeAt(h);if(c===0)throw new Qf("Invalid character: the input contains U+0000.");Zt(c,1,31)||c===127?o+="\\"+c.toString(16)+" ":c===34||c===92?o+="\\"+f[h]:o+=f[h]}return o}class de extends Error{}function Ym(f,o){let h;try{h=Um(f),h[h.length-1]instanceof ui||h.push(new ui)}catch(R){const Dt=R.message+` while parsing css selector "${f}". Did you mean to CSS.escape it?`,xt=(R.stack||"").indexOf(R.message);throw xt!==-1&&(R.stack=R.stack.substring(0,xt)+Dt+R.stack.substring(xt+R.message.length)),R.message=Dt,R}const c=h.find(R=>R instanceof x0||R instanceof r0||R instanceof ni||R instanceof b0||R instanceof o0||R instanceof h0||R instanceof m0||R instanceof g0||R instanceof y0||R instanceof _0||R instanceof M0);if(c)throw new de(`Unsupported token "${c.toSource()}" while parsing css selector "${f}". Did you mean to CSS.escape it?`);let s=0;const y=new Set;function E(){return new de(`Unexpected token "${h[s].toSource()}" while parsing css selector "${f}". Did you mean to CSS.escape it?`)}function p(){for(;h[s]instanceof Lf;)s++}function z(R=s){return h[R]instanceof E0}function v(R=s){return h[R]instanceof A0}function G(R=s){return h[R]instanceof O0}function B(R=s){return h[R]instanceof v0}function J(R=s){return h[R]instanceof p0}function $(R=s){return h[R]instanceof T0}function Q(R=s){return h[R]instanceof ii}function N(R=s){return h[R]instanceof ae&&h[R].value==="*"}function q(R=s){return h[R]instanceof ui}function Z(R=s){return h[R]instanceof ae&&[">","+","~"].includes(h[R].value)}function P(R=s){return B(R)||$(R)||q(R)||Z(R)||h[R]instanceof Lf}function et(){const R=[Rt()];for(;p(),!!B();)s++,R.push(Rt());return R}function Rt(){return p(),G()||v()?h[s++].value:Lt()}function Lt(){const R={simples:[]};for(p(),Z()?R.simples.push({selector:{functions:[{name:"scope",args:[]}]},combinator:""}):R.simples.push({selector:At(),combinator:""});;){if(p(),Z())R.simples[R.simples.length-1].combinator=h[s++].value,p();else if(P())break;R.simples.push({combinator:"",selector:At()})}return R}function At(){let R="";const Dt=[];for(;!P();)if(z()||N())R+=h[s++].toSource();else if(h[s]instanceof z0)R+=h[s++].toSource();else if(h[s]instanceof ae&&h[s].value===".")if(s++,z())R+="."+h[s++].toSource();else throw E();else if(h[s]instanceof d0)if(s++,z())if(!o.has(h[s].value.toLowerCase()))R+=":"+h[s++].toSource();else{const xt=h[s++].value.toLowerCase();Dt.push({name:xt,args:[]}),y.add(xt)}else if(Q()){const xt=h[s++].value.toLowerCase();if(o.has(xt)?(Dt.push({name:xt,args:et()}),y.add(xt)):R+=`:${xt}(${tt()})`,p(),!$())throw E();s++}else throw E();else if(h[s]instanceof S0){for(R+="[",s++;!(h[s]instanceof Yf)&&!q();)R+=h[s++].toSource();if(!(h[s]instanceof Yf))throw E();R+="]",s++}else throw E();if(!R&&!Dt.length)throw E();return{css:R||void 0,functions:Dt}}function tt(){let R="",Dt=1;for(;!q()&&((J()||Q())&&Dt++,$()&&Dt--,!!Dt);)R+=h[s++].toSource();return R}const Nt=et();if(!q())throw E();if(Nt.some(R=>typeof R!="object"||!("simples"in R)))throw new de(`Error while parsing css selector "${f}". Did you mean to CSS.escape it?`);return{selector:Nt,names:Array.from(y)}}const n0=new Set(["internal:has","internal:has-not","internal:and","internal:or","internal:chain","left-of","right-of","above","below","near"]),Gm=new Set(["left-of","right-of","above","below","near"]),Qm=new Set(["not","is","where","has","scope","light","visible","text","text-matches","text-is","has-text","above","below","right-of","left-of","near","nth-match"]);function D0(f){const o=Zm(f),h=[];for(const c of o.parts){if(c.name==="css"||c.name==="css:light"){c.name==="css:light"&&(c.body=":light("+c.body+")");const s=Ym(c.body,Qm);h.push({name:"css",body:s.selector,source:c.body});continue}if(n0.has(c.name)){let s,y;try{const v=JSON.parse("["+c.body+"]");if(!Array.isArray(v)||v.length<1||v.length>2||typeof v[0]!="string")throw new de(`Malformed selector: ${c.name}=`+c.body);if(s=v[0],v.length===2){if(typeof v[1]!="number"||!Gm.has(c.name))throw new de(`Malformed selector: ${c.name}=`+c.body);y=v[1]}}catch{throw new de(`Malformed selector: ${c.name}=`+c.body)}const E={name:c.name,source:c.body,body:{parsed:D0(s),distance:y}},p=[...E.body.parsed.parts].reverse().find(v=>v.name==="internal:control"&&v.body==="enter-frame"),z=p?E.body.parsed.parts.indexOf(p):-1;z!==-1&&Xm(E.body.parsed.parts.slice(0,z+1),h.slice(0,z+1))&&E.body.parsed.parts.splice(0,z+1),h.push(E);continue}h.push({...c,source:c.body})}if(n0.has(h[0].name))throw new de(`"${h[0].name}" selector cannot be first`);return{capture:o.capture,parts:h}}function Xm(f,o){return wa({parts:f})===wa({parts:o})}function wa(f,o){return typeof f=="string"?f:f.parts.map((h,c)=>{let s=!0;!o&&c!==f.capture&&(h.name==="css"||h.name==="xpath"&&h.source.startsWith("//")||h.source.startsWith(".."))&&(s=!1);const y=s?h.name+"=":"";return`${c===f.capture?"*":""}${y}${h.source}`}).join(" >> ")}function Zm(f){let o=0,h,c=0;const s={parts:[]},y=()=>{const p=f.substring(c,o).trim(),z=p.indexOf("=");let v,G;z!==-1&&p.substring(0,z).trim().match(/^[a-zA-Z_0-9-+:*]+$/)?(v=p.substring(0,z).trim(),G=p.substring(z+1)):p.length>1&&p[0]==='"'&&p[p.length-1]==='"'||p.length>1&&p[0]==="'"&&p[p.length-1]==="'"?(v="text",G=p):/^\(*\/\//.test(p)||p.startsWith("..")?(v="xpath",G=p):(v="css",G=p);let B=!1;if(v[0]==="*"&&(B=!0,v=v.substring(1)),s.parts.push({name:v,body:G}),B){if(s.capture!==void 0)throw new de("Only one of the selectors can capture using * modifier");s.capture=s.parts.length-1}};if(!f.includes(">>"))return o=f.length,y(),s;const E=()=>{const z=f.substring(c,o).match(/^\s*text\s*=(.*)$/);return!!z&&!!z[1]};for(;o<f.length;){const p=f[o];p==="\\"&&o+1<f.length?o+=2:p===h?(h=void 0,o++):!h&&(p==='"'||p==="'"||p==="`")&&!E()?(h=p,o++):!h&&p===">"&&f[o+1]===">"?(y(),o+=2,c=o):o++}return y(),s}function qf(f,o){let h=0,c=f.length===0;const s=()=>f[h]||"",y=()=>{const q=s();return++h,c=h>=f.length,q},E=q=>{throw c?new de(`Unexpected end of selector while parsing selector \`${f}\``):new de(`Error while parsing selector \`${f}\` - unexpected symbol "${s()}" at position ${h}`+(q?" during "+q:""))};function p(){for(;!c&&/\s/.test(s());)y()}function z(q){return q>="€"||q>="0"&&q<="9"||q>="A"&&q<="Z"||q>="a"&&q<="z"||q>="0"&&q<="9"||q==="_"||q==="-"}function v(){let q="";for(p();!c&&z(s());)q+=y();return q}function G(q){let Z=y();for(Z!==q&&E("parsing quoted string");!c&&s()!==q;)s()==="\\"&&y(),Z+=y();return s()!==q&&E("parsing quoted string"),Z+=y(),Z}function B(){y()!=="/"&&E("parsing regular expression");let q="",Z=!1;for(;!c;){if(s()==="\\")q+=y(),c&&E("parsing regular expression");else if(Z&&s()==="]")Z=!1;else if(!Z&&s()==="[")Z=!0;else if(!Z&&s()==="/")break;q+=y()}y()!=="/"&&E("parsing regular expression");let P="";for(;!c&&s().match(/[dgimsuy]/);)P+=y();try{return new RegExp(q,P)}catch(et){throw new de(`Error while parsing selector \`${f}\`: ${et.message}`)}}function J(){let q="";return p(),s()==="'"||s()==='"'?q=G(s()).slice(1,-1):q=v(),q||E("parsing property path"),q}function $(){p();let q="";return c||(q+=y()),!c&&q!=="="&&(q+=y()),["=","*=","^=","$=","|=","~="].includes(q)||E("parsing operator"),q}function Q(){y();const q=[];for(q.push(J()),p();s()===".";)y(),q.push(J()),p();if(s()==="]")return y(),{name:q.join("."),jsonPath:q,op:"<truthy>",value:null,caseSensitive:!1};const Z=$();let P,et=!0;if(p(),s()==="/"){if(Z!=="=")throw new de(`Error while parsing selector \`${f}\` - cannot use ${Z} in attribute with regular expression`);P=B()}else if(s()==="'"||s()==='"')P=G(s()).slice(1,-1),p(),s()==="i"||s()==="I"?(et=!1,y()):(s()==="s"||s()==="S")&&(et=!0,y());else{for(P="";!c&&(z(s())||s()==="+"||s()===".");)P+=y();P==="true"?P=!0:P==="false"&&(P=!1)}if(p(),s()!=="]"&&E("parsing attribute value"),y(),Z!=="="&&typeof P!="string")throw new de(`Error while parsing selector \`${f}\` - cannot use ${Z} in attribute with non-string matching value - ${P}`);return{name:q.join("."),jsonPath:q,op:Z,value:P,caseSensitive:et}}const N={name:"",attributes:[]};for(N.name=v(),p();s()==="[";)N.attributes.push(Q()),p();if(c||E(void 0),!N.name&&!N.attributes.length)throw new de(`Error while parsing selector \`${f}\` - selector cannot be empty`);return N}function si(f,o="'"){const h=JSON.stringify(f),c=h.substring(1,h.length-1).replace(/\\"/g,'"');if(o==="'")return o+c.replace(/[']/g,"\\'")+o;if(o==='"')return o+c.replace(/["]/g,'\\"')+o;if(o==="`")return o+c.replace(/[`]/g,"\\`")+o;throw new Error("Invalid escape char")}function ci(f){return f.charAt(0).toUpperCase()+f.substring(1)}function C0(f){return f.replace(/([a-z0-9])([A-Z])/g,"$1_$2").replace(/([A-Z])([A-Z][a-z])/g,"$1_$2").toLowerCase()}function ri(f){return f.replace(/(^|[^\\])(\\\\)*\\(['"`])/g,"$1$2$3")}function Vm(f,o,h=!1){return Jm(f,o,h,1)[0]}function Jm(f,o,h=!1,c=20,s){try{return Ba(new Pm[f](s),D0(o),h,c)}catch{return[o]}}function Ba(f,o,h=!1,c=20){const s=[...o.parts],y=[];let E=h?"frame-locator":"page";for(let p=0;p<s.length;p++){const z=s[p],v=E;if(E="locator",z.name==="internal:describe")continue;if(z.name==="nth"){z.body==="0"?y.push([f.generateLocator(v,"first",""),f.generateLocator(v,"nth","0")]):z.body==="-1"?y.push([f.generateLocator(v,"last",""),f.generateLocator(v,"nth","-1")]):y.push([f.generateLocator(v,"nth",z.body)]);continue}if(z.name==="visible"){y.push([f.generateLocator(v,"visible",z.body),f.generateLocator(v,"default",`visible=${z.body}`)]);continue}if(z.name==="internal:text"){const{exact:Q,text:N}=qn(z.body);y.push([f.generateLocator(v,"text",N,{exact:Q})]);continue}if(z.name==="internal:has-text"){const{exact:Q,text:N}=qn(z.body);if(!Q){y.push([f.generateLocator(v,"has-text",N,{exact:Q})]);continue}}if(z.name==="internal:has-not-text"){const{exact:Q,text:N}=qn(z.body);if(!Q){y.push([f.generateLocator(v,"has-not-text",N,{exact:Q})]);continue}}if(z.name==="internal:has"){const Q=Ba(f,z.body.parsed,!1,c);y.push(Q.map(N=>f.generateLocator(v,"has",N)));continue}if(z.name==="internal:has-not"){const Q=Ba(f,z.body.parsed,!1,c);y.push(Q.map(N=>f.generateLocator(v,"hasNot",N)));continue}if(z.name==="internal:and"){const Q=Ba(f,z.body.parsed,!1,c);y.push(Q.map(N=>f.generateLocator(v,"and",N)));continue}if(z.name==="internal:or"){const Q=Ba(f,z.body.parsed,!1,c);y.push(Q.map(N=>f.generateLocator(v,"or",N)));continue}if(z.name==="internal:chain"){const Q=Ba(f,z.body.parsed,!1,c);y.push(Q.map(N=>f.generateLocator(v,"chain",N)));continue}if(z.name==="internal:label"){const{exact:Q,text:N}=qn(z.body);y.push([f.generateLocator(v,"label",N,{exact:Q})]);continue}if(z.name==="internal:role"){const Q=qf(z.body),N={attrs:[]};for(const q of Q.attributes)q.name==="name"?(N.exact=q.caseSensitive,N.name=q.value):(q.name==="level"&&typeof q.value=="string"&&(q.value=+q.value),N.attrs.push({name:q.name==="include-hidden"?"includeHidden":q.name,value:q.value}));y.push([f.generateLocator(v,"role",Q.name,N)]);continue}if(z.name==="internal:testid"){const Q=qf(z.body),{value:N}=Q.attributes[0];y.push([f.generateLocator(v,"test-id",N)]);continue}if(z.name==="internal:attr"){const Q=qf(z.body),{name:N,value:q,caseSensitive:Z}=Q.attributes[0],P=q,et=!!Z;if(N==="placeholder"){y.push([f.generateLocator(v,"placeholder",P,{exact:et})]);continue}if(N==="alt"){y.push([f.generateLocator(v,"alt",P,{exact:et})]);continue}if(N==="title"){y.push([f.generateLocator(v,"title",P,{exact:et})]);continue}}if(z.name==="internal:control"&&z.body==="enter-frame"){const Q=y[y.length-1],N=s[p-1],q=Q.map(Z=>f.chainLocators([Z,f.generateLocator(v,"frame","")]));["xpath","css"].includes(N.name)&&q.push(f.generateLocator(v,"frame-locator",wa({parts:[N]})),f.generateLocator(v,"frame-locator",wa({parts:[N]},!0))),Q.splice(0,Q.length,...q),E="frame-locator";continue}const G=s[p+1],B=wa({parts:[z]}),J=f.generateLocator(v,"default",B);if(G&&["internal:has-text","internal:has-not-text"].includes(G.name)){const{exact:Q,text:N}=qn(G.body);if(!Q){const q=f.generateLocator("locator",G.name==="internal:has-text"?"has-text":"has-not-text",N,{exact:Q}),Z={};G.name==="internal:has-text"?Z.hasText=N:Z.hasNotText=N;const P=f.generateLocator(v,"default",B,Z);y.push([f.chainLocators([J,q]),P]),p++;continue}}let $;if(["xpath","css"].includes(z.name)){const Q=wa({parts:[z]},!0);$=f.generateLocator(v,"default",Q)}y.push([J,$].filter(Boolean))}return Km(f,y,c)}function Km(f,o,h){const c=o.map(()=>""),s=[],y=E=>{if(E===o.length)return s.push(f.chainLocators(c)),s.length<h;for(const p of o[E])if(c[E]=p,!y(E+1))return!1;return!0};return y(0),s}function qn(f){let o=!1;const h=f.match(/^\/(.*)\/([igm]*)$/);return h?{text:new RegExp(h[1],h[2])}:(f.endsWith('"')?(f=JSON.parse(f),o=!0):f.endsWith('"s')?(f=JSON.parse(f.substring(0,f.length-1)),o=!0):f.endsWith('"i')&&(f=JSON.parse(f.substring(0,f.length-1)),o=!1),{exact:o,text:f})}class $m{constructor(o){this.preferredQuote=o}generateLocator(o,h,c,s={}){switch(h){case"default":return s.hasText!==void 0?`locator(${this.quote(c)}, { hasText: ${this.toHasText(s.hasText)} })`:s.hasNotText!==void 0?`locator(${this.quote(c)}, { hasNotText: ${this.toHasText(s.hasNotText)} })`:`locator(${this.quote(c)})`;case"frame-locator":return`frameLocator(${this.quote(c)})`;case"frame":return"contentFrame()";case"nth":return`nth(${c})`;case"first":return"first()";case"last":return"last()";case"visible":return`filter({ visible: ${c==="true"?"true":"false"} })`;case"role":const y=[];ee(s.name)?y.push(`name: ${this.regexToSourceString(s.name)}`):typeof s.name=="string"&&(y.push(`name: ${this.quote(s.name)}`),s.exact&&y.push("exact: true"));for(const{name:p,value:z}of s.attrs)y.push(`${p}: ${typeof z=="string"?this.quote(z):z}`);const E=y.length?`, { ${y.join(", ")} }`:"";return`getByRole(${this.quote(c)}${E})`;case"has-text":return`filter({ hasText: ${this.toHasText(c)} })`;case"has-not-text":return`filter({ hasNotText: ${this.toHasText(c)} })`;case"has":return`filter({ has: ${c} })`;case"hasNot":return`filter({ hasNot: ${c} })`;case"and":return`and(${c})`;case"or":return`or(${c})`;case"chain":return`locator(${c})`;case"test-id":return`getByTestId(${this.toTestIdValue(c)})`;case"text":return this.toCallWithExact("getByText",c,!!s.exact);case"alt":return this.toCallWithExact("getByAltText",c,!!s.exact);case"placeholder":return this.toCallWithExact("getByPlaceholder",c,!!s.exact);case"label":return this.toCallWithExact("getByLabel",c,!!s.exact);case"title":return this.toCallWithExact("getByTitle",c,!!s.exact);default:throw new Error("Unknown selector kind "+h)}}chainLocators(o){return o.join(".")}regexToSourceString(o){return ri(String(o))}toCallWithExact(o,h,c){return ee(h)?`${o}(${this.regexToSourceString(h)})`:c?`${o}(${this.quote(h)}, { exact: true })`:`${o}(${this.quote(h)})`}toHasText(o){return ee(o)?this.regexToSourceString(o):this.quote(o)}toTestIdValue(o){return ee(o)?this.regexToSourceString(o):this.quote(o)}quote(o){return si(o,this.preferredQuote??"'")}}class km{generateLocator(o,h,c,s={}){switch(h){case"default":return s.hasText!==void 0?`locator(${this.quote(c)}, has_text=${this.toHasText(s.hasText)})`:s.hasNotText!==void 0?`locator(${this.quote(c)}, has_not_text=${this.toHasText(s.hasNotText)})`:`locator(${this.quote(c)})`;case"frame-locator":return`frame_locator(${this.quote(c)})`;case"frame":return"content_frame";case"nth":return`nth(${c})`;case"first":return"first";case"last":return"last";case"visible":return`filter(visible=${c==="true"?"True":"False"})`;case"role":const y=[];ee(s.name)?y.push(`name=${this.regexToString(s.name)}`):typeof s.name=="string"&&(y.push(`name=${this.quote(s.name)}`),s.exact&&y.push("exact=True"));for(const{name:p,value:z}of s.attrs){let v=typeof z=="string"?this.quote(z):z;typeof z=="boolean"&&(v=z?"True":"False"),y.push(`${C0(p)}=${v}`)}const E=y.length?`, ${y.join(", ")}`:"";return`get_by_role(${this.quote(c)}${E})`;case"has-text":return`filter(has_text=${this.toHasText(c)})`;case"has-not-text":return`filter(has_not_text=${this.toHasText(c)})`;case"has":return`filter(has=${c})`;case"hasNot":return`filter(has_not=${c})`;case"and":return`and_(${c})`;case"or":return`or_(${c})`;case"chain":return`locator(${c})`;case"test-id":return`get_by_test_id(${this.toTestIdValue(c)})`;case"text":return this.toCallWithExact("get_by_text",c,!!s.exact);case"alt":return this.toCallWithExact("get_by_alt_text",c,!!s.exact);case"placeholder":return this.toCallWithExact("get_by_placeholder",c,!!s.exact);case"label":return this.toCallWithExact("get_by_label",c,!!s.exact);case"title":return this.toCallWithExact("get_by_title",c,!!s.exact);default:throw new Error("Unknown selector kind "+h)}}chainLocators(o){return o.join(".")}regexToString(o){const h=o.flags.includes("i")?", re.IGNORECASE":"";return`re.compile(r"${ri(o.source).replace(/\\\//,"/").replace(/"/g,'\\"')}"${h})`}toCallWithExact(o,h,c){return ee(h)?`${o}(${this.regexToString(h)})`:c?`${o}(${this.quote(h)}, exact=True)`:`${o}(${this.quote(h)})`}toHasText(o){return ee(o)?this.regexToString(o):`${this.quote(o)}`}toTestIdValue(o){return ee(o)?this.regexToString(o):this.quote(o)}quote(o){return si(o,'"')}}class Wm{generateLocator(o,h,c,s={}){let y;switch(o){case"page":y="Page";break;case"frame-locator":y="FrameLocator";break;case"locator":y="Locator";break}switch(h){case"default":return s.hasText!==void 0?`locator(${this.quote(c)}, new ${y}.LocatorOptions().setHasText(${this.toHasText(s.hasText)}))`:s.hasNotText!==void 0?`locator(${this.quote(c)}, new ${y}.LocatorOptions().setHasNotText(${this.toHasText(s.hasNotText)}))`:`locator(${this.quote(c)})`;case"frame-locator":return`frameLocator(${this.quote(c)})`;case"frame":return"contentFrame()";case"nth":return`nth(${c})`;case"first":return"first()";case"last":return"last()";case"visible":return`filter(new ${y}.FilterOptions().setVisible(${c==="true"?"true":"false"}))`;case"role":const E=[];ee(s.name)?E.push(`.setName(${this.regexToString(s.name)})`):typeof s.name=="string"&&(E.push(`.setName(${this.quote(s.name)})`),s.exact&&E.push(".setExact(true)"));for(const{name:z,value:v}of s.attrs)E.push(`.set${ci(z)}(${typeof v=="string"?this.quote(v):v})`);const p=E.length?`, new ${y}.GetByRoleOptions()${E.join("")}`:"";return`getByRole(AriaRole.${C0(c).toUpperCase()}${p})`;case"has-text":return`filter(new ${y}.FilterOptions().setHasText(${this.toHasText(c)}))`;case"has-not-text":return`filter(new ${y}.FilterOptions().setHasNotText(${this.toHasText(c)}))`;case"has":return`filter(new ${y}.FilterOptions().setHas(${c}))`;case"hasNot":return`filter(new ${y}.FilterOptions().setHasNot(${c}))`;case"and":return`and(${c})`;case"or":return`or(${c})`;case"chain":return`locator(${c})`;case"test-id":return`getByTestId(${this.toTestIdValue(c)})`;case"text":return this.toCallWithExact(y,"getByText",c,!!s.exact);case"alt":return this.toCallWithExact(y,"getByAltText",c,!!s.exact);case"placeholder":return this.toCallWithExact(y,"getByPlaceholder",c,!!s.exact);case"label":return this.toCallWithExact(y,"getByLabel",c,!!s.exact);case"title":return this.toCallWithExact(y,"getByTitle",c,!!s.exact);default:throw new Error("Unknown selector kind "+h)}}chainLocators(o){return o.join(".")}regexToString(o){const h=o.flags.includes("i")?", Pattern.CASE_INSENSITIVE":"";return`Pattern.compile(${this.quote(ri(o.source))}${h})`}toCallWithExact(o,h,c,s){return ee(c)?`${h}(${this.regexToString(c)})`:s?`${h}(${this.quote(c)}, new ${o}.${ci(h)}Options().setExact(true))`:`${h}(${this.quote(c)})`}toHasText(o){return ee(o)?this.regexToString(o):this.quote(o)}toTestIdValue(o){return ee(o)?this.regexToString(o):this.quote(o)}quote(o){return si(o,'"')}}class Fm{generateLocator(o,h,c,s={}){switch(h){case"default":return s.hasText!==void 0?`Locator(${this.quote(c)}, new() { ${this.toHasText(s.hasText)} })`:s.hasNotText!==void 0?`Locator(${this.quote(c)}, new() { ${this.toHasNotText(s.hasNotText)} })`:`Locator(${this.quote(c)})`;case"frame-locator":return`FrameLocator(${this.quote(c)})`;case"frame":return"ContentFrame";case"nth":return`Nth(${c})`;case"first":return"First";case"last":return"Last";case"visible":return`Filter(new() { Visible = ${c==="true"?"true":"false"} })`;case"role":const y=[];ee(s.name)?y.push(`NameRegex = ${this.regexToString(s.name)}`):typeof s.name=="string"&&(y.push(`Name = ${this.quote(s.name)}`),s.exact&&y.push("Exact = true"));for(const{name:p,value:z}of s.attrs)y.push(`${ci(p)} = ${typeof z=="string"?this.quote(z):z}`);const E=y.length?`, new() { ${y.join(", ")} }`:"";return`GetByRole(AriaRole.${ci(c)}${E})`;case"has-text":return`Filter(new() { ${this.toHasText(c)} })`;case"has-not-text":return`Filter(new() { ${this.toHasNotText(c)} })`;case"has":return`Filter(new() { Has = ${c} })`;case"hasNot":return`Filter(new() { HasNot = ${c} })`;case"and":return`And(${c})`;case"or":return`Or(${c})`;case"chain":return`Locator(${c})`;case"test-id":return`GetByTestId(${this.toTestIdValue(c)})`;case"text":return this.toCallWithExact("GetByText",c,!!s.exact);case"alt":return this.toCallWithExact("GetByAltText",c,!!s.exact);case"placeholder":return this.toCallWithExact("GetByPlaceholder",c,!!s.exact);case"label":return this.toCallWithExact("GetByLabel",c,!!s.exact);case"title":return this.toCallWithExact("GetByTitle",c,!!s.exact);default:throw new Error("Unknown selector kind "+h)}}chainLocators(o){return o.join(".")}regexToString(o){const h=o.flags.includes("i")?", RegexOptions.IgnoreCase":"";return`new Regex(${this.quote(ri(o.source))}${h})`}toCallWithExact(o,h,c){return ee(h)?`${o}(${this.regexToString(h)})`:c?`${o}(${this.quote(h)}, new() { Exact = true })`:`${o}(${this.quote(h)})`}toHasText(o){return ee(o)?`HasTextRegex = ${this.regexToString(o)}`:`HasText = ${this.quote(o)}`}toTestIdValue(o){return ee(o)?this.regexToString(o):this.quote(o)}toHasNotText(o){return ee(o)?`HasNotTextRegex = ${this.regexToString(o)}`:`HasNotText = ${this.quote(o)}`}quote(o){return si(o,'"')}}class Im{generateLocator(o,h,c,s={}){return JSON.stringify({kind:h,body:c,options:s})}chainLocators(o){const h=o.map(c=>JSON.parse(c));for(let c=0;c<h.length-1;++c)h[c].next=h[c+1];return JSON.stringify(h[0])}}const Pm={javascript:$m,python:km,java:Wm,csharp:Fm,jsonl:Im};function ee(f){return f instanceof RegExp}const tv=50,ev=({sidebarSize:f,sidebarHidden:o=!1,sidebarIsFirst:h=!1,orientation:c="vertical",minSidebarSize:s=tv,settingName:y,sidebar:E,main:p})=>{const z=Math.max(s,f)*window.devicePixelRatio,[v,G]=e0(y?y+"."+c+":size":void 0,z),[B,J]=e0(y?y+"."+c+":size":void 0,z),[$,Q]=c0.useState(null),[N,q]=mm();let Z;c==="vertical"?(Z=B/window.devicePixelRatio,N&&N.height<Z&&(Z=N.height-10)):(Z=v/window.devicePixelRatio,N&&N.width<Z&&(Z=N.width-10)),document.body.style.userSelect=$?"none":"inherit";let P={};return c==="vertical"?h?P={top:$?0:Z-4,bottom:$?0:void 0,height:$?"initial":8}:P={bottom:$?0:Z-4,top:$?0:void 0,height:$?"initial":8}:h?P={left:$?0:Z-4,right:$?0:void 0,width:$?"initial":8}:P={right:$?0:Z-4,left:$?0:void 0,width:$?"initial":8},U.jsxs("div",{className:ym("split-view",c,h&&"sidebar-first"),ref:q,children:[U.jsx("div",{className:"split-view-main",children:p}),!o&&U.jsx("div",{style:{flexBasis:Z},className:"split-view-sidebar",children:E}),!o&&U.jsx("div",{style:P,className:"split-view-resizer",onMouseDown:et=>Q({offset:c==="vertical"?et.clientY:et.clientX,size:Z}),onMouseUp:()=>Q(null),onMouseMove:et=>{if(!et.buttons)Q(null);else if($){const Lt=(c==="vertical"?et.clientY:et.clientX)-$.offset,At=h?$.size+Lt:$.size-Lt,Nt=et.target.parentElement.getBoundingClientRect(),R=Math.min(Math.max(s,At),(c==="vertical"?Nt.height:Nt.width)-s);c==="vertical"?J(R*window.devicePixelRatio):G(R*window.devicePixelRatio)}}})]})},u0=()=>U.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:U.jsx("polyline",{points:"15 18 9 12 15 6"})}),lv=()=>U.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:U.jsx("polyline",{points:"9 18 15 12 9 6"})}),av=()=>U.jsxs("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round","aria-hidden":"true",children:[U.jsx("line",{x1:"2",y1:"2",x2:"10",y2:"10"}),U.jsx("line",{x1:"10",y1:"2",x2:"2",y2:"10"})]}),nv=()=>U.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[U.jsx("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),U.jsx("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]}),uv=()=>U.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[U.jsx("polyline",{points:"23 4 23 10 17 10"}),U.jsx("path",{d:"M20.49 15a9 9 0 1 1-2.12-9.36L23 10"})]}),iv=()=>U.jsx("svg",{viewBox:"0 0 48 48",fill:"currentColor",children:U.jsx("path",{d:"M18 42h-7.5c-3 0-4.5-1.5-4.5-4.5v-27C6 7.5 7.5 6 10.5 6h27C42 6 42 10.404 42 10.5V18h-3V9H9v30h9v3Zm27-15-9 6 9 9-3 3-9-9-6 9-6-24 24 6Z"})}),cv=()=>U.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[U.jsx("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),U.jsx("line",{x1:"9",y1:"3",x2:"9",y2:"21"})]}),fv=()=>U.jsx("svg",{viewBox:"0 0 16 16",fill:"currentColor","aria-hidden":"true",children:U.jsx("path",{d:"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z"})}),U0=()=>{const[f,o]=st.useState(!1),[h,c]=xm(),s=st.useRef(null);return st.useEffect(()=>{if(!f)return;const y=p=>{s.current&&!s.current.contains(p.target)&&o(!1)},E=p=>{p.key==="Escape"&&o(!1)};return document.addEventListener("mousedown",y),document.addEventListener("keydown",E),()=>{document.removeEventListener("mousedown",y),document.removeEventListener("keydown",E)}},[f]),U.jsxs("div",{ref:s,className:"settings-button-container",children:[U.jsx("button",{className:"settings-gear-btn"+(f?" open":""),title:"Settings",onClick:()=>o(!f),children:U.jsx(fv,{})}),f&&U.jsx("div",{className:"settings-popup",children:U.jsxs("div",{className:"setting-row",children:[U.jsx("span",{className:"setting-label",children:"Theme"}),U.jsx("div",{className:"setting-options",children:pm.map(y=>U.jsx("div",{className:"setting-option"+(h===y.value?" selected":""),onClick:()=>{c(y.value),o(!1)},children:y.label},y.value))})]})})]})};function sv(f){try{const h=new URL(f).hostname.replace(/^www\./,"");return h?h[0].toUpperCase():""}catch{return""}}const rv=["left","middle","right"],ov=({wsUrl:f})=>{const[o,h]=st.useState(!1),[c,s]=st.useState(null),[y,E]=st.useState(""),[p,z]=st.useState(),[v,G]=st.useState(!1),[B,J]=st.useState(null),[$,Q]=st.useState(),[N,q]=st.useState(),Z=st.useRef(null),P=st.useRef(null),et=st.useRef(null),Rt=st.useRef(null),Lt=st.useRef(0);st.useEffect(()=>{if(!f)return;const H=fi.create(f);H.onopen=()=>{q(H),h(!1),J(null)},H.on("tabs",lt=>{s(lt.tabs);const m=lt.tabs.find(_=>_.selected);m&&E(m.url)});let k=!1;return H.on("frame",lt=>{z(lt);const m=et.current,_=Rt.current;if(!k&&m&&_&<.viewportWidth&<.viewportHeight){k=!0;const w=m.offsetHeight+_.offsetHeight,Y=window.outerWidth-window.innerWidth,F=window.outerHeight-window.innerHeight,at=Math.min(lt.viewportWidth+Y,screen.availWidth),rt=Math.min(lt.viewportHeight+w+F,screen.availHeight);window.resizeTo(at,rt)}}),H.on("elementPicked",lt=>{var _;const m=Vm("javascript",lt.selector);(_=navigator.clipboard)==null||_.writeText(m).catch(()=>{}),J(null),Q(w=>(clearTimeout(w==null?void 0:w.timer),{text:m,timer:setTimeout(()=>Q(void 0),3e3)}))}),H.onclose=()=>{q(void 0),h(!1),J(null),G(!1)},()=>{H.close()}},[f]);function At(H){const k=(p==null?void 0:p.viewportWidth)??0,lt=(p==null?void 0:p.viewportHeight)??0;if(!k||!lt)return{x:0,y:0};const m=Z.current;if(!m)return{x:0,y:0};const _=m.getBoundingClientRect(),w=m.naturalWidth/m.naturalHeight,Y=_.width/_.height;let F,at,rt,Vt;w>Y?(F=_.width,at=_.width/w,rt=0,Vt=(_.height-at)/2):(at=_.height,F=_.height*w,rt=(_.width-F)/2,Vt=0);const Ut=(H.clientX-_.left-rt)/F,Cl=(H.clientY-_.top-Vt)/at;return{x:Math.round(Ut*k),y:Math.round(Cl*lt)}}function tt(H,k){const{x:lt,y:m}=At(k);N==null||N[H]({x:lt,y:m,button:rv[k.button]||"left"})}function Nt(H){var k;if(H.preventDefault(),(k=P.current)==null||k.focus(),!!N){if(!o){h(!0);return}tt("mousedown",H)}}function R(H){o&&(H.preventDefault(),tt("mouseup",H))}function Dt(H){if(!o)return;const k=Date.now();if(k-Lt.current<32)return;Lt.current=k;const{x:lt,y:m}=At(H);N==null||N.mousemove({x:lt,y:m})}function xt(H){o&&(H.preventDefault(),N==null||N.wheel({deltaX:H.deltaX,deltaY:H.deltaY}))}function j(H){if(B!==null&&H.key==="Escape"){H.preventDefault(),N==null||N.cancelPickLocator(),J(null);return}o&&(H.preventDefault(),N==null||N.keydown({key:H.key}))}function I(H){o&&(H.preventDefault(),N==null||N.keyup({key:H.key}))}function _t(H){if(H.key==="Enter"){let k=H.target.value.trim();/^https?:\/\//i.test(k)||(k="https://"+k),E(k),N==null||N.navigate({url:k}),H.currentTarget.blur()}}const gt=c==null?void 0:c.find(H=>H.selected),O=(gt==null?void 0:gt.pageId)===B;let L;return N?c===null?L="Loading...":c.length===0&&(L="No tabs open"):L="Disconnected",U.jsxs("div",{className:"dashboard-view"+(o?" interactive":""),children:[U.jsxs("div",{ref:et,className:"tabbar",children:[U.jsxs("a",{className:"tabbar-back",href:"#",title:"Back to sessions",onClick:H=>{H.preventDefault(),H0("#")},children:[U.jsx(u0,{}),"Sessions"]}),U.jsx("div",{id:"tabstrip",className:"tabstrip",role:"tablist",children:c==null?void 0:c.map(H=>U.jsxs("div",{className:"tab"+(H.selected?" active":""),role:"tab","aria-selected":H.selected,title:H.url||"",onClick:()=>N==null?void 0:N.selectTab({pageId:H.pageId}),children:[U.jsx("span",{className:"tab-favicon","aria-hidden":"true",children:sv(H.url)}),U.jsx("span",{className:"tab-label",children:H.title||"New Tab"}),U.jsx("button",{className:"tab-close",title:"Close tab",onClick:k=>{k.stopPropagation(),N==null||N.closeTab({pageId:H.pageId})},children:U.jsx(av,{})})]},H.pageId))}),U.jsx("button",{id:"new-tab-btn",className:"new-tab-btn",title:"New Tab",onClick:()=>N==null?void 0:N.newTab(),children:U.jsx(nv,{})}),U.jsxs("div",{className:"interactive-controls",children:[U.jsxs("div",{className:"segmented-control"+(o?" interactive":""),role:"group","aria-label":"Interaction mode",title:o?"Interactive mode: page input is forwarded":"Read-only mode: page input is blocked",children:[U.jsx("button",{className:"segmented-control-option"+(o?"":" active"),disabled:!N,"aria-pressed":!o,title:"Read-only mode",onClick:()=>{N==null||N.cancelPickLocator(),J(null),G(!1),h(!1)},children:"Read-only"}),U.jsx("button",{className:"segmented-control-option"+(o?" active":""),disabled:!N,"aria-pressed":o,title:"Interactive mode",onClick:()=>h(!0),children:"Interactive"})]}),U.jsx(U0,{})]})]}),U.jsxs("div",{ref:Rt,className:"toolbar",children:[U.jsx("button",{className:"nav-btn",title:"Back",onClick:()=>N==null?void 0:N.back(),children:U.jsx(u0,{})}),U.jsx("button",{className:"nav-btn",title:"Forward",onClick:()=>N==null?void 0:N.forward(),children:U.jsx(lv,{})}),U.jsx("button",{className:"nav-btn",title:"Reload",onClick:()=>N==null?void 0:N.reload(),children:U.jsx(uv,{})}),U.jsx("input",{id:"omnibox",className:"omnibox",type:"text",placeholder:"Search or enter URL",spellCheck:!1,autoComplete:"off",value:y,onChange:H=>E(H.target.value),onKeyDown:_t,onFocus:H=>H.target.select()}),U.jsx("button",{className:"nav-btn"+(O?" active-toggle":""),title:"Pick locator","aria-pressed":O,disabled:!N,onClick:()=>{var H;O?(N==null||N.cancelPickLocator(),J(null)):(h(!0),J((gt==null?void 0:gt.pageId)??null),(H=P.current)==null||H.focus(),N==null||N.pickLocator())},children:U.jsx(iv,{})}),(gt==null?void 0:gt.inspectorUrl)&&U.jsx("button",{className:"nav-btn"+(v?" active-toggle":""),title:"Chrome DevTools","aria-pressed":v,disabled:!N,onClick:()=>{h(!0),G(!v)},children:U.jsx(cv,{})})]}),U.jsx("div",{className:"viewport-wrapper",children:U.jsx(ev,{orientation:"horizontal",sidebarSize:500,minSidebarSize:300,settingName:"devtoolsInspector",sidebarHidden:!v||!(gt!=null&>.inspectorUrl),main:U.jsxs("div",{className:"viewport-main",children:[U.jsxs("div",{ref:P,className:"screen",tabIndex:0,style:{display:p?"":"none"},onMouseDown:Nt,onMouseUp:R,onMouseMove:Dt,onWheel:xt,onKeyDown:j,onKeyUp:I,onContextMenu:H=>H.preventDefault(),children:[U.jsx("img",{ref:Z,id:"display",className:"display",alt:"screencast",src:p?"data:image/jpeg;base64,"+p.data:void 0}),$?U.jsxs("div",{className:"screen-toast visible",children:["Copied: ",U.jsx("code",{children:$.text})]}):O?U.jsx("div",{className:"screen-toast visible",children:"Click an element to pick its locator"}):null]}),L&&U.jsx("div",{className:"screen-overlay"+(p?" has-frame":""),children:U.jsx("span",{children:L})})]}),sidebar:U.jsx("iframe",{className:"inspector-frame",src:(gt==null?void 0:gt.inspectorUrl)||"",title:"Chrome DevTools"})})})]})},hv=({channel:f})=>{const[o,h]=st.useState("");return st.useEffect(()=>{const c=s=>{h("data:image/jpeg;base64,"+s.data)};return f.on("frame",c),()=>f.off("frame",c)},[f]),o?U.jsx("img",{className:"screencast-frame",alt:"screencast",src:o}):U.jsx("div",{className:"screencast-placeholder",children:"Connecting..."})},dv=({model:f})=>{const[o,h]=st.useState(new Set),c=f.sessions,s=f.clientInfo;function y(p){h(z=>{const v=new Set(z);return v.has(p)?v.delete(p):v.add(p),v})}const E=st.useMemo(()=>{const p=new Map;for(const B of c){const J=B.workspaceDir||"Global";let $=p.get(J);$||($=[],p.set(J,$)),$.push(B)}for(const B of p.values())B.sort((J,$)=>J.title.localeCompare($.title));const z=[...p.entries()],v=z.filter(([B])=>B===(s==null?void 0:s.workspaceDir)),G=z.filter(([B])=>B!==(s==null?void 0:s.workspaceDir)).sort((B,J)=>B[0].localeCompare(J[0]));return[...v,...G]},[c,s==null?void 0:s.workspaceDir]);return U.jsxs("div",{className:"grid-view",children:[U.jsx("div",{className:"grid-toolbar",children:U.jsx(U0,{})}),U.jsxs("div",{className:"grid-content",children:[f.loading&&c.length===0&&U.jsx("div",{className:"grid-loading",children:"Loading sessions..."}),f.error&&U.jsxs("div",{className:"grid-error",children:["Error: ",f.error]}),!f.loading&&!f.error&&c.length===0&&U.jsx("div",{className:"grid-empty",children:"No sessions found."}),U.jsx("div",{className:"workspace-list",children:E.map(([p,z],v)=>{const G=v===0,B=G||o.has(p);return U.jsxs("div",{className:"workspace-group",children:[U.jsxs("div",{className:"workspace-header"+(G?"":" collapsible"),onClick:G?void 0:()=>y(p),children:[!G&&U.jsx("svg",{className:"workspace-chevron"+(B?" expanded":""),viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:U.jsx("polyline",{points:"9 18 15 12 9 6"})}),U.jsx("span",{className:"workspace-name",children:p.split("/").pop()||p}),U.jsxs("span",{className:"workspace-path",children:["— ",p]})]}),B&&U.jsx("div",{className:"session-chips",children:z.map(J=>U.jsx(mv,{descriptor:J,wsUrl:J.wsUrl,visible:B,model:f},J.browser.guid))})]},p)})})]})]})},mv=({descriptor:f,wsUrl:o,visible:h,model:c})=>{const s="#session="+encodeURIComponent(f.browser.guid),y=st.useMemo(()=>{if(!(!o||!h))return fi.create(o)},[o,h]),[E,p]=st.useState();st.useEffect(()=>{if(!y)return;const v=G=>{p(G.tabs.find(B=>B.selected))};return y.tabs().then(v),y.on("tabs",v),()=>{y.off("tabs",v),y.close()}},[y]);const z=E?`[${f.title}] ${E.url} — ${E.title}`:f.title;return U.jsxs("a",{className:"session-chip"+(o?"":" disconnected"),href:o?s:void 0,title:z,onClick:v=>{v.preventDefault(),o&&H0(s)},children:[U.jsxs("div",{className:"session-chip-header",children:[U.jsx("div",{className:"session-status-dot "+(o?"open":"closed")}),U.jsx("span",{className:"session-chip-name",children:E?U.jsxs(U.Fragment,{children:["[",f.title,"] ",E.url," ",U.jsxs("span",{className:"session-chip-title",children:["— ",E.title]})]}):f.title}),o&&U.jsx("button",{className:"session-chip-action",title:"Close session",onClick:v=>{v.preventDefault(),v.stopPropagation(),c.closeSession(f)},children:U.jsxs("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",children:[U.jsx("line",{x1:"2",y1:"2",x2:"10",y2:"10"}),U.jsx("line",{x1:"10",y1:"2",x2:"2",y2:"10"})]})}),!o&&U.jsx("button",{className:"session-chip-action",title:"Delete session data",onClick:v=>{v.preventDefault(),v.stopPropagation(),c.deleteSessionData(f)},children:U.jsxs("svg",{viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",children:[U.jsx("path",{d:"M2 4h12"}),U.jsx("path",{d:"M5 4V3a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v1"}),U.jsx("path",{d:"M4 4l.8 9a1 1 0 0 0 1 .9h4.4a1 1 0 0 0 1-.9L12 4"})]})})]}),U.jsxs("div",{className:"screencast-container",children:[y&&U.jsx(hv,{channel:y}),!o&&U.jsx("div",{className:"screencast-placeholder",children:"Session closed"})]})]})};class vv{constructor(){this.sessions=[],this.loading=!0,this._pollActive=!1,this._lastJson="",this._listeners=new Set}subscribe(o){return this._listeners.add(o),()=>this._listeners.delete(o)}_notify(){for(const o of this._listeners)o()}startPolling(){if(this._pollActive)return;this._pollActive=!0;const o=async()=>{await this._fetchSessions(),this._pollActive&&(this._pollTimeout=setTimeout(o,3e3))};o()}stopPolling(){this._pollActive=!1,this._pollTimeout&&(clearTimeout(this._pollTimeout),this._pollTimeout=void 0)}sessionByGuid(o){return this.sessions.find(h=>h.browser.guid===o)}async _fetchSessions(){try{this.loading=!0;const o=await fetch("/api/sessions/list");if(!o.ok)throw new Error(`HTTP ${o.status}`);const h=await o.text();if(h!==this._lastJson){this._lastJson=h;const c=JSON.parse(h);this.sessions=c.sessions,this.clientInfo=c.clientInfo,this._notify()}this.error=void 0}catch(o){this.error=o.message}finally{this.loading=!1}this._notify()}async fetchSessions(){await this._fetchSessions()}async closeSession(o){await fetch("/api/sessions/close",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({guid:o.browser.guid})}),await this._fetchSessions()}async deleteSessionData(o){await fetch("/api/sessions/delete-data",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({guid:o.browser.guid})}),await this._fetchSessions()}dispose(){this.stopPolling(),this._listeners.clear()}}Tm();function H0(f){window.history.pushState(null,"",f),window.dispatchEvent(new PopStateEvent("popstate"))}function i0(){const f=window.location.hash,o="#session=";if(f.startsWith(o))return decodeURIComponent(f.slice(o.length))}const qa=new vv,gv=()=>{var c;const[,f]=st.useState(0),[o,h]=st.useState(i0);if(st.useEffect(()=>{qa.startPolling();const s=qa.subscribe(()=>f(y=>y+1));return()=>{s(),qa.stopPolling()}},[qa]),st.useEffect(()=>{const s=()=>h(i0());return window.addEventListener("popstate",s),()=>window.removeEventListener("popstate",s)},[]),o){const s=(c=qa.sessionByGuid(o))==null?void 0:c.wsUrl;return U.jsx(ov,{wsUrl:s||void 0})}return U.jsx(dv,{model:qa})};dm.createRoot(document.querySelector("#root")).render(U.jsx(gv,{})); diff --git a/node_modules.codex-backup/playwright-core/lib/vite/dashboard/assets/index-CZAYOG76.css b/node_modules.codex-backup/playwright-core/lib/vite/dashboard/assets/index-CZAYOG76.css new file mode 100644 index 00000000..f3f8950a --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/vite/dashboard/assets/index-CZAYOG76.css @@ -0,0 +1 @@ +:root{--color-canvas-default-transparent: rgba(255,255,255,0);--color-marketing-icon-primary: #218bff;--color-marketing-icon-secondary: #54aeff;--color-diff-blob-addition-num-text: #24292f;--color-diff-blob-addition-fg: #24292f;--color-diff-blob-addition-num-bg: #CCFFD8;--color-diff-blob-addition-line-bg: #E6FFEC;--color-diff-blob-addition-word-bg: #ABF2BC;--color-diff-blob-deletion-num-text: #24292f;--color-diff-blob-deletion-fg: #24292f;--color-diff-blob-deletion-num-bg: #FFD7D5;--color-diff-blob-deletion-line-bg: #FFEBE9;--color-diff-blob-deletion-word-bg: rgba(255,129,130,.4);--color-diff-blob-hunk-num-bg: rgba(84,174,255,.4);--color-diff-blob-expander-icon: #57606a;--color-diff-blob-selected-line-highlight-mix-blend-mode: multiply;--color-diffstat-deletion-border: rgba(27,31,36,.15);--color-diffstat-addition-border: rgba(27,31,36,.15);--color-diffstat-addition-bg: #2da44e;--color-search-keyword-hl: #fff8c5;--color-prettylights-syntax-comment: #6e7781;--color-prettylights-syntax-constant: #0550ae;--color-prettylights-syntax-entity: #8250df;--color-prettylights-syntax-storage-modifier-import: #24292f;--color-prettylights-syntax-entity-tag: #116329;--color-prettylights-syntax-keyword: #cf222e;--color-prettylights-syntax-string: #0a3069;--color-prettylights-syntax-variable: #953800;--color-prettylights-syntax-brackethighlighter-unmatched: #82071e;--color-prettylights-syntax-invalid-illegal-text: #f6f8fa;--color-prettylights-syntax-invalid-illegal-bg: #82071e;--color-prettylights-syntax-carriage-return-text: #f6f8fa;--color-prettylights-syntax-carriage-return-bg: #cf222e;--color-prettylights-syntax-string-regexp: #116329;--color-prettylights-syntax-markup-list: #3b2300;--color-prettylights-syntax-markup-heading: #0550ae;--color-prettylights-syntax-markup-italic: #24292f;--color-prettylights-syntax-markup-bold: #24292f;--color-prettylights-syntax-markup-deleted-text: #82071e;--color-prettylights-syntax-markup-deleted-bg: #FFEBE9;--color-prettylights-syntax-markup-inserted-text: #116329;--color-prettylights-syntax-markup-inserted-bg: #dafbe1;--color-prettylights-syntax-markup-changed-text: #953800;--color-prettylights-syntax-markup-changed-bg: #ffd8b5;--color-prettylights-syntax-markup-ignored-text: #eaeef2;--color-prettylights-syntax-markup-ignored-bg: #0550ae;--color-prettylights-syntax-meta-diff-range: #8250df;--color-prettylights-syntax-brackethighlighter-angle: #57606a;--color-prettylights-syntax-sublimelinter-gutter-mark: #8c959f;--color-prettylights-syntax-constant-other-reference-link: #0a3069;--color-codemirror-text: #24292f;--color-codemirror-bg: #ffffff;--color-codemirror-gutters-bg: #ffffff;--color-codemirror-guttermarker-text: #ffffff;--color-codemirror-guttermarker-subtle-text: #6e7781;--color-codemirror-linenumber-text: #57606a;--color-codemirror-cursor: #24292f;--color-codemirror-selection-bg: rgba(84,174,255,.4);--color-codemirror-activeline-bg: rgba(234,238,242,.5);--color-codemirror-matchingbracket-text: #24292f;--color-codemirror-lines-bg: #ffffff;--color-codemirror-syntax-comment: #24292f;--color-codemirror-syntax-constant: #0550ae;--color-codemirror-syntax-entity: #8250df;--color-codemirror-syntax-keyword: #cf222e;--color-codemirror-syntax-storage: #cf222e;--color-codemirror-syntax-string: #0a3069;--color-codemirror-syntax-support: #0550ae;--color-codemirror-syntax-variable: #953800;--color-checks-bg: #24292f;--color-checks-run-border-width: 0px;--color-checks-container-border-width: 0px;--color-checks-text-primary: #f6f8fa;--color-checks-text-secondary: #8c959f;--color-checks-text-link: #54aeff;--color-checks-btn-icon: #afb8c1;--color-checks-btn-hover-icon: #f6f8fa;--color-checks-btn-hover-bg: rgba(255,255,255,.125);--color-checks-input-text: #eaeef2;--color-checks-input-placeholder-text: #8c959f;--color-checks-input-focus-text: #8c959f;--color-checks-input-bg: #32383f;--color-checks-input-shadow: none;--color-checks-donut-error: #fa4549;--color-checks-donut-pending: #bf8700;--color-checks-donut-success: #2da44e;--color-checks-donut-neutral: #afb8c1;--color-checks-dropdown-text: #afb8c1;--color-checks-dropdown-bg: #32383f;--color-checks-dropdown-border: #424a53;--color-checks-dropdown-shadow: rgba(27,31,36,.3);--color-checks-dropdown-hover-text: #f6f8fa;--color-checks-dropdown-hover-bg: #424a53;--color-checks-dropdown-btn-hover-text: #f6f8fa;--color-checks-dropdown-btn-hover-bg: #32383f;--color-checks-scrollbar-thumb-bg: #57606a;--color-checks-header-label-text: #d0d7de;--color-checks-header-label-open-text: #f6f8fa;--color-checks-header-border: #32383f;--color-checks-header-icon: #8c959f;--color-checks-line-text: #d0d7de;--color-checks-line-num-text: rgba(140,149,159,.75);--color-checks-line-timestamp-text: #8c959f;--color-checks-line-hover-bg: #32383f;--color-checks-line-selected-bg: rgba(33,139,255,.15);--color-checks-line-selected-num-text: #54aeff;--color-checks-line-dt-fm-text: #24292f;--color-checks-line-dt-fm-bg: #9a6700;--color-checks-gate-bg: rgba(125,78,0,.15);--color-checks-gate-text: #d0d7de;--color-checks-gate-waiting-text: #afb8c1;--color-checks-step-header-open-bg: #32383f;--color-checks-step-error-text: #ff8182;--color-checks-step-warning-text: #d4a72c;--color-checks-logline-text: #8c959f;--color-checks-logline-num-text: rgba(140,149,159,.75);--color-checks-logline-debug-text: #c297ff;--color-checks-logline-error-text: #d0d7de;--color-checks-logline-error-num-text: #ff8182;--color-checks-logline-error-bg: rgba(164,14,38,.15);--color-checks-logline-warning-text: #d0d7de;--color-checks-logline-warning-num-text: #d4a72c;--color-checks-logline-warning-bg: rgba(125,78,0,.15);--color-checks-logline-command-text: #54aeff;--color-checks-logline-section-text: #4ac26b;--color-checks-ansi-black: #24292f;--color-checks-ansi-black-bright: #32383f;--color-checks-ansi-white: #d0d7de;--color-checks-ansi-white-bright: #d0d7de;--color-checks-ansi-gray: #8c959f;--color-checks-ansi-red: #ff8182;--color-checks-ansi-red-bright: #ffaba8;--color-checks-ansi-green: #4ac26b;--color-checks-ansi-green-bright: #6fdd8b;--color-checks-ansi-yellow: #d4a72c;--color-checks-ansi-yellow-bright: #eac54f;--color-checks-ansi-blue: #54aeff;--color-checks-ansi-blue-bright: #80ccff;--color-checks-ansi-magenta: #c297ff;--color-checks-ansi-magenta-bright: #d8b9ff;--color-checks-ansi-cyan: #76e3ea;--color-checks-ansi-cyan-bright: #b3f0ff;--color-project-header-bg: #24292f;--color-project-sidebar-bg: #ffffff;--color-project-gradient-in: #ffffff;--color-project-gradient-out: rgba(255,255,255,0);--color-mktg-success: rgba(36,146,67,1);--color-mktg-info: rgba(19,119,234,1);--color-mktg-bg-shade-gradient-top: rgba(27,31,36,.065);--color-mktg-bg-shade-gradient-bottom: rgba(27,31,36,0);--color-mktg-btn-bg-top: hsla(228,82%,66%,1);--color-mktg-btn-bg-bottom: #4969ed;--color-mktg-btn-bg-overlay-top: hsla(228,74%,59%,1);--color-mktg-btn-bg-overlay-bottom: #3355e0;--color-mktg-btn-text: #ffffff;--color-mktg-btn-primary-bg-top: hsla(137,56%,46%,1);--color-mktg-btn-primary-bg-bottom: #2ea44f;--color-mktg-btn-primary-bg-overlay-top: hsla(134,60%,38%,1);--color-mktg-btn-primary-bg-overlay-bottom: #22863a;--color-mktg-btn-primary-text: #ffffff;--color-mktg-btn-enterprise-bg-top: hsla(249,100%,72%,1);--color-mktg-btn-enterprise-bg-bottom: #6f57ff;--color-mktg-btn-enterprise-bg-overlay-top: hsla(248,65%,63%,1);--color-mktg-btn-enterprise-bg-overlay-bottom: #614eda;--color-mktg-btn-enterprise-text: #ffffff;--color-mktg-btn-outline-text: #4969ed;--color-mktg-btn-outline-border: rgba(73,105,237,.3);--color-mktg-btn-outline-hover-text: #3355e0;--color-mktg-btn-outline-hover-border: rgba(51,85,224,.5);--color-mktg-btn-outline-focus-border: #4969ed;--color-mktg-btn-outline-focus-border-inset: rgba(73,105,237,.5);--color-mktg-btn-dark-text: #ffffff;--color-mktg-btn-dark-border: rgba(255,255,255,.3);--color-mktg-btn-dark-hover-text: #ffffff;--color-mktg-btn-dark-hover-border: rgba(255,255,255,.5);--color-mktg-btn-dark-focus-border: #ffffff;--color-mktg-btn-dark-focus-border-inset: rgba(255,255,255,.5);--color-avatar-bg: #ffffff;--color-avatar-border: rgba(27,31,36,.15);--color-avatar-stack-fade: #afb8c1;--color-avatar-stack-fade-more: #d0d7de;--color-avatar-child-shadow: -2px -2px 0 rgba(255,255,255,.8);--color-topic-tag-border: rgba(0,0,0,0);--color-select-menu-backdrop-border: rgba(0,0,0,0);--color-select-menu-tap-highlight: rgba(175,184,193,.5);--color-select-menu-tap-focus-bg: #b6e3ff;--color-overlay-shadow: 0 1px 3px rgba(27,31,36,.12), 0 8px 24px rgba(66,74,83,.12);--color-header-text: rgba(255,255,255,.7);--color-header-bg: #24292f;--color-header-logo: #ffffff;--color-header-search-bg: #24292f;--color-header-search-border: #57606a;--color-sidenav-selected-bg: #ffffff;--color-menu-bg-active: rgba(0,0,0,0);--color-control-transparent-bg-hover: #818b981a;--color-input-disabled-bg: rgba(175,184,193,.2);--color-timeline-badge-bg: #eaeef2;--color-ansi-black: #24292f;--color-ansi-black-bright: #57606a;--color-ansi-white: #6e7781;--color-ansi-white-bright: #8c959f;--color-ansi-gray: #6e7781;--color-ansi-red: #cf222e;--color-ansi-red-bright: #a40e26;--color-ansi-green: #116329;--color-ansi-green-bright: #1a7f37;--color-ansi-yellow: #4d2d00;--color-ansi-yellow-bright: #633c01;--color-ansi-blue: #0969da;--color-ansi-blue-bright: #218bff;--color-ansi-magenta: #8250df;--color-ansi-magenta-bright: #a475f9;--color-ansi-cyan: #1b7c83;--color-ansi-cyan-bright: #3192aa;--color-btn-text: #24292f;--color-btn-bg: #f6f8fa;--color-btn-border: rgba(27,31,36,.15);--color-btn-shadow: 0 1px 0 rgba(27,31,36,.04);--color-btn-inset-shadow: inset 0 1px 0 rgba(255,255,255,.25);--color-btn-hover-bg: #f3f4f6;--color-btn-hover-border: rgba(27,31,36,.15);--color-btn-active-bg: hsla(220,14%,93%,1);--color-btn-active-border: rgba(27,31,36,.15);--color-btn-selected-bg: hsla(220,14%,94%,1);--color-btn-focus-bg: #f6f8fa;--color-btn-focus-border: rgba(27,31,36,.15);--color-btn-focus-shadow: 0 0 0 3px rgba(9,105,218,.3);--color-btn-shadow-active: inset 0 .15em .3em rgba(27,31,36,.15);--color-btn-shadow-input-focus: 0 0 0 .2em rgba(9,105,218,.3);--color-btn-counter-bg: rgba(27,31,36,.08);--color-btn-primary-text: #ffffff;--color-btn-primary-bg: #2da44e;--color-btn-primary-border: rgba(27,31,36,.15);--color-btn-primary-shadow: 0 1px 0 rgba(27,31,36,.1);--color-btn-primary-inset-shadow: inset 0 1px 0 rgba(255,255,255,.03);--color-btn-primary-hover-bg: #2c974b;--color-btn-primary-hover-border: rgba(27,31,36,.15);--color-btn-primary-selected-bg: hsla(137,55%,36%,1);--color-btn-primary-selected-shadow: inset 0 1px 0 rgba(0,45,17,.2);--color-btn-primary-disabled-text: rgba(255,255,255,.8);--color-btn-primary-disabled-bg: #94d3a2;--color-btn-primary-disabled-border: rgba(27,31,36,.15);--color-btn-primary-focus-bg: #2da44e;--color-btn-primary-focus-border: rgba(27,31,36,.15);--color-btn-primary-focus-shadow: 0 0 0 3px rgba(45,164,78,.4);--color-btn-primary-icon: rgba(255,255,255,.8);--color-btn-primary-counter-bg: rgba(255,255,255,.2);--color-btn-outline-text: #0969da;--color-btn-outline-hover-text: #ffffff;--color-btn-outline-hover-bg: #0969da;--color-btn-outline-hover-border: rgba(27,31,36,.15);--color-btn-outline-hover-shadow: 0 1px 0 rgba(27,31,36,.1);--color-btn-outline-hover-inset-shadow: inset 0 1px 0 rgba(255,255,255,.03);--color-btn-outline-hover-counter-bg: rgba(255,255,255,.2);--color-btn-outline-selected-text: #ffffff;--color-btn-outline-selected-bg: hsla(212,92%,42%,1);--color-btn-outline-selected-border: rgba(27,31,36,.15);--color-btn-outline-selected-shadow: inset 0 1px 0 rgba(0,33,85,.2);--color-btn-outline-disabled-text: rgba(9,105,218,.5);--color-btn-outline-disabled-bg: #f6f8fa;--color-btn-outline-disabled-counter-bg: rgba(9,105,218,.05);--color-btn-outline-focus-border: rgba(27,31,36,.15);--color-btn-outline-focus-shadow: 0 0 0 3px rgba(5,80,174,.4);--color-btn-outline-counter-bg: rgba(9,105,218,.1);--color-btn-danger-text: #cf222e;--color-btn-danger-hover-text: #ffffff;--color-btn-danger-hover-bg: #a40e26;--color-btn-danger-hover-border: rgba(27,31,36,.15);--color-btn-danger-hover-shadow: 0 1px 0 rgba(27,31,36,.1);--color-btn-danger-hover-inset-shadow: inset 0 1px 0 rgba(255,255,255,.03);--color-btn-danger-hover-counter-bg: rgba(255,255,255,.2);--color-btn-danger-selected-text: #ffffff;--color-btn-danger-selected-bg: hsla(356,72%,44%,1);--color-btn-danger-selected-border: rgba(27,31,36,.15);--color-btn-danger-selected-shadow: inset 0 1px 0 rgba(76,0,20,.2);--color-btn-danger-disabled-text: rgba(207,34,46,.5);--color-btn-danger-disabled-bg: #f6f8fa;--color-btn-danger-disabled-counter-bg: rgba(207,34,46,.05);--color-btn-danger-focus-border: rgba(27,31,36,.15);--color-btn-danger-focus-shadow: 0 0 0 3px rgba(164,14,38,.4);--color-btn-danger-counter-bg: rgba(207,34,46,.1);--color-btn-danger-icon: #cf222e;--color-btn-danger-hover-icon: #ffffff;--color-underlinenav-icon: #6e7781;--color-underlinenav-border-hover: rgba(175,184,193,.2);--color-fg-default: #24292f;--color-fg-muted: #57606a;--color-fg-subtle: #6e7781;--color-fg-on-emphasis: #ffffff;--color-canvas-default: #ffffff;--color-canvas-overlay: #ffffff;--color-canvas-inset: #f6f8fa;--color-canvas-subtle: #f6f8fa;--color-border-default: #d0d7de;--color-border-muted: hsla(210,18%,87%,1);--color-border-subtle: rgba(27,31,36,.15);--color-shadow-small: 0 1px 0 rgba(27,31,36,.04);--color-shadow-medium: 0 3px 6px rgba(140,149,159,.15);--color-shadow-large: 0 8px 24px rgba(140,149,159,.2);--color-shadow-extra-large: 0 12px 28px rgba(140,149,159,.3);--color-neutral-emphasis-plus: #24292f;--color-neutral-emphasis: #6e7781;--color-neutral-muted: rgba(175,184,193,.2);--color-neutral-subtle: rgba(234,238,242,.5);--color-accent-fg: #0969da;--color-accent-emphasis: #0969da;--color-accent-muted: rgba(84,174,255,.4);--color-accent-subtle: #ddf4ff;--color-success-fg: #1a7f37;--color-success-emphasis: #2da44e;--color-success-muted: rgba(74,194,107,.4);--color-success-subtle: #dafbe1;--color-attention-fg: #9a6700;--color-attention-emphasis: #bf8700;--color-attention-muted: rgba(212,167,44,.4);--color-attention-subtle: #fff8c5;--color-severe-fg: #bc4c00;--color-severe-emphasis: #bc4c00;--color-severe-muted: rgba(251,143,68,.4);--color-severe-subtle: #fff1e5;--color-danger-fg: #cf222e;--color-danger-emphasis: #cf222e;--color-danger-muted: rgba(255,129,130,.4);--color-danger-subtle: #FFEBE9;--color-done-fg: #8250df;--color-done-emphasis: #8250df;--color-done-muted: rgba(194,151,255,.4);--color-done-subtle: #fbefff;--color-sponsors-fg: #bf3989;--color-sponsors-emphasis: #bf3989;--color-sponsors-muted: rgba(255,128,200,.4);--color-sponsors-subtle: #ffeff7;--color-primer-canvas-backdrop: rgba(27,31,36,.5);--color-primer-canvas-sticky: rgba(255,255,255,.95);--color-primer-border-active: #FD8C73;--color-primer-border-contrast: rgba(27,31,36,.1);--color-primer-shadow-highlight: inset 0 1px 0 rgba(255,255,255,.25);--color-primer-shadow-inset: inset 0 1px 0 rgba(208,215,222,.2);--color-primer-shadow-focus: 0 0 0 3px rgba(9,105,218,.3);--color-scale-black: #1b1f24;--color-scale-white: #ffffff;--color-scale-gray-0: #f6f8fa;--color-scale-gray-1: #eaeef2;--color-scale-gray-2: #d0d7de;--color-scale-gray-3: #afb8c1;--color-scale-gray-4: #8c959f;--color-scale-gray-5: #6e7781;--color-scale-gray-6: #57606a;--color-scale-gray-7: #424a53;--color-scale-gray-8: #32383f;--color-scale-gray-9: #24292f;--color-scale-blue-0: #ddf4ff;--color-scale-blue-1: #b6e3ff;--color-scale-blue-2: #80ccff;--color-scale-blue-3: #54aeff;--color-scale-blue-4: #218bff;--color-scale-blue-5: #0969da;--color-scale-blue-6: #0550ae;--color-scale-blue-7: #033d8b;--color-scale-blue-8: #0a3069;--color-scale-blue-9: #002155;--color-scale-green-0: #dafbe1;--color-scale-green-1: #aceebb;--color-scale-green-2: #6fdd8b;--color-scale-green-3: #4ac26b;--color-scale-green-4: #2da44e;--color-scale-green-5: #1a7f37;--color-scale-green-6: #116329;--color-scale-green-7: #044f1e;--color-scale-green-8: #003d16;--color-scale-green-9: #002d11;--color-scale-yellow-0: #fff8c5;--color-scale-yellow-1: #fae17d;--color-scale-yellow-2: #eac54f;--color-scale-yellow-3: #d4a72c;--color-scale-yellow-4: #bf8700;--color-scale-yellow-5: #9a6700;--color-scale-yellow-6: #7d4e00;--color-scale-yellow-7: #633c01;--color-scale-yellow-8: #4d2d00;--color-scale-yellow-9: #3b2300;--color-scale-orange-0: #fff1e5;--color-scale-orange-1: #ffd8b5;--color-scale-orange-2: #ffb77c;--color-scale-orange-3: #fb8f44;--color-scale-orange-4: #e16f24;--color-scale-orange-5: #bc4c00;--color-scale-orange-6: #953800;--color-scale-orange-7: #762c00;--color-scale-orange-8: #5c2200;--color-scale-orange-9: #471700;--color-scale-red-0: #FFEBE9;--color-scale-red-1: #ffcecb;--color-scale-red-2: #ffaba8;--color-scale-red-3: #ff8182;--color-scale-red-4: #fa4549;--color-scale-red-5: #cf222e;--color-scale-red-6: #a40e26;--color-scale-red-7: #82071e;--color-scale-red-8: #660018;--color-scale-red-9: #4c0014;--color-scale-purple-0: #fbefff;--color-scale-purple-1: #ecd8ff;--color-scale-purple-2: #d8b9ff;--color-scale-purple-3: #c297ff;--color-scale-purple-4: #a475f9;--color-scale-purple-5: #8250df;--color-scale-purple-6: #6639ba;--color-scale-purple-7: #512a97;--color-scale-purple-8: #3e1f79;--color-scale-purple-9: #2e1461;--color-scale-pink-0: #ffeff7;--color-scale-pink-1: #ffd3eb;--color-scale-pink-2: #ffadda;--color-scale-pink-3: #ff80c8;--color-scale-pink-4: #e85aad;--color-scale-pink-5: #bf3989;--color-scale-pink-6: #99286e;--color-scale-pink-7: #772057;--color-scale-pink-8: #611347;--color-scale-pink-9: #4d0336;--color-scale-coral-0: #FFF0EB;--color-scale-coral-1: #FFD6CC;--color-scale-coral-2: #FFB4A1;--color-scale-coral-3: #FD8C73;--color-scale-coral-4: #EC6547;--color-scale-coral-5: #C4432B;--color-scale-coral-6: #9E2F1C;--color-scale-coral-7: #801F0F;--color-scale-coral-8: #691105;--color-scale-coral-9: #510901 }:root.light-mode{color-scheme:light}:root.dark-mode{color-scheme:dark;--color-canvas-default-transparent: rgba(13,17,23,0);--color-marketing-icon-primary: #79c0ff;--color-marketing-icon-secondary: #1f6feb;--color-diff-blob-addition-num-text: #c9d1d9;--color-diff-blob-addition-fg: #c9d1d9;--color-diff-blob-addition-num-bg: rgba(63,185,80,.3);--color-diff-blob-addition-line-bg: rgba(46,160,67,.15);--color-diff-blob-addition-word-bg: rgba(46,160,67,.4);--color-diff-blob-deletion-num-text: #c9d1d9;--color-diff-blob-deletion-fg: #c9d1d9;--color-diff-blob-deletion-num-bg: rgba(248,81,73,.3);--color-diff-blob-deletion-line-bg: rgba(248,81,73,.15);--color-diff-blob-deletion-word-bg: rgba(248,81,73,.4);--color-diff-blob-hunk-num-bg: rgba(56,139,253,.4);--color-diff-blob-expander-icon: #8b949e;--color-diff-blob-selected-line-highlight-mix-blend-mode: screen;--color-diffstat-deletion-border: rgba(240,246,252,.1);--color-diffstat-addition-border: rgba(240,246,252,.1);--color-diffstat-addition-bg: #3fb950;--color-search-keyword-hl: rgba(210,153,34,.4);--color-prettylights-syntax-comment: #8b949e;--color-prettylights-syntax-constant: #79c0ff;--color-prettylights-syntax-entity: #d2a8ff;--color-prettylights-syntax-storage-modifier-import: #c9d1d9;--color-prettylights-syntax-entity-tag: #7ee787;--color-prettylights-syntax-keyword: #ff7b72;--color-prettylights-syntax-string: #a5d6ff;--color-prettylights-syntax-variable: #ffa657;--color-prettylights-syntax-brackethighlighter-unmatched: #f85149;--color-prettylights-syntax-invalid-illegal-text: #f0f6fc;--color-prettylights-syntax-invalid-illegal-bg: #8e1519;--color-prettylights-syntax-carriage-return-text: #f0f6fc;--color-prettylights-syntax-carriage-return-bg: #b62324;--color-prettylights-syntax-string-regexp: #7ee787;--color-prettylights-syntax-markup-list: #f2cc60;--color-prettylights-syntax-markup-heading: #1f6feb;--color-prettylights-syntax-markup-italic: #c9d1d9;--color-prettylights-syntax-markup-bold: #c9d1d9;--color-prettylights-syntax-markup-deleted-text: #ffdcd7;--color-prettylights-syntax-markup-deleted-bg: #67060c;--color-prettylights-syntax-markup-inserted-text: #aff5b4;--color-prettylights-syntax-markup-inserted-bg: #033a16;--color-prettylights-syntax-markup-changed-text: #ffdfb6;--color-prettylights-syntax-markup-changed-bg: #5a1e02;--color-prettylights-syntax-markup-ignored-text: #c9d1d9;--color-prettylights-syntax-markup-ignored-bg: #1158c7;--color-prettylights-syntax-meta-diff-range: #d2a8ff;--color-prettylights-syntax-brackethighlighter-angle: #8b949e;--color-prettylights-syntax-sublimelinter-gutter-mark: #484f58;--color-prettylights-syntax-constant-other-reference-link: #a5d6ff;--color-codemirror-text: #c9d1d9;--color-codemirror-bg: #0d1117;--color-codemirror-gutters-bg: #0d1117;--color-codemirror-guttermarker-text: #0d1117;--color-codemirror-guttermarker-subtle-text: #484f58;--color-codemirror-linenumber-text: #8b949e;--color-codemirror-cursor: #c9d1d9;--color-codemirror-selection-bg: rgba(56,139,253,.4);--color-codemirror-activeline-bg: rgba(110,118,129,.1);--color-codemirror-matchingbracket-text: #c9d1d9;--color-codemirror-lines-bg: #0d1117;--color-codemirror-syntax-comment: #8b949e;--color-codemirror-syntax-constant: #79c0ff;--color-codemirror-syntax-entity: #d2a8ff;--color-codemirror-syntax-keyword: #ff7b72;--color-codemirror-syntax-storage: #ff7b72;--color-codemirror-syntax-string: #a5d6ff;--color-codemirror-syntax-support: #79c0ff;--color-codemirror-syntax-variable: #ffa657;--color-checks-bg: #010409;--color-checks-run-border-width: 1px;--color-checks-container-border-width: 1px;--color-checks-text-primary: #c9d1d9;--color-checks-text-secondary: #8b949e;--color-checks-text-link: #58a6ff;--color-checks-btn-icon: #8b949e;--color-checks-btn-hover-icon: #c9d1d9;--color-checks-btn-hover-bg: rgba(110,118,129,.1);--color-checks-input-text: #8b949e;--color-checks-input-placeholder-text: #484f58;--color-checks-input-focus-text: #c9d1d9;--color-checks-input-bg: #161b22;--color-checks-input-shadow: none;--color-checks-donut-error: #f85149;--color-checks-donut-pending: #d29922;--color-checks-donut-success: #2ea043;--color-checks-donut-neutral: #8b949e;--color-checks-dropdown-text: #c9d1d9;--color-checks-dropdown-bg: #161b22;--color-checks-dropdown-border: #30363d;--color-checks-dropdown-shadow: rgba(1,4,9,.3);--color-checks-dropdown-hover-text: #c9d1d9;--color-checks-dropdown-hover-bg: rgba(110,118,129,.1);--color-checks-dropdown-btn-hover-text: #c9d1d9;--color-checks-dropdown-btn-hover-bg: rgba(110,118,129,.1);--color-checks-scrollbar-thumb-bg: rgba(110,118,129,.4);--color-checks-header-label-text: #8b949e;--color-checks-header-label-open-text: #c9d1d9;--color-checks-header-border: #21262d;--color-checks-header-icon: #8b949e;--color-checks-line-text: #8b949e;--color-checks-line-num-text: #484f58;--color-checks-line-timestamp-text: #484f58;--color-checks-line-hover-bg: rgba(110,118,129,.1);--color-checks-line-selected-bg: rgba(56,139,253,.15);--color-checks-line-selected-num-text: #58a6ff;--color-checks-line-dt-fm-text: #f0f6fc;--color-checks-line-dt-fm-bg: #9e6a03;--color-checks-gate-bg: rgba(187,128,9,.15);--color-checks-gate-text: #8b949e;--color-checks-gate-waiting-text: #d29922;--color-checks-step-header-open-bg: #161b22;--color-checks-step-error-text: #f85149;--color-checks-step-warning-text: #d29922;--color-checks-logline-text: #8b949e;--color-checks-logline-num-text: #484f58;--color-checks-logline-debug-text: #a371f7;--color-checks-logline-error-text: #8b949e;--color-checks-logline-error-num-text: #484f58;--color-checks-logline-error-bg: rgba(248,81,73,.15);--color-checks-logline-warning-text: #8b949e;--color-checks-logline-warning-num-text: #d29922;--color-checks-logline-warning-bg: rgba(187,128,9,.15);--color-checks-logline-command-text: #58a6ff;--color-checks-logline-section-text: #3fb950;--color-checks-ansi-black: #0d1117;--color-checks-ansi-black-bright: #161b22;--color-checks-ansi-white: #b1bac4;--color-checks-ansi-white-bright: #b1bac4;--color-checks-ansi-gray: #6e7681;--color-checks-ansi-red: #ff7b72;--color-checks-ansi-red-bright: #ffa198;--color-checks-ansi-green: #3fb950;--color-checks-ansi-green-bright: #56d364;--color-checks-ansi-yellow: #d29922;--color-checks-ansi-yellow-bright: #e3b341;--color-checks-ansi-blue: #58a6ff;--color-checks-ansi-blue-bright: #79c0ff;--color-checks-ansi-magenta: #bc8cff;--color-checks-ansi-magenta-bright: #d2a8ff;--color-checks-ansi-cyan: #76e3ea;--color-checks-ansi-cyan-bright: #b3f0ff;--color-project-header-bg: #0d1117;--color-project-sidebar-bg: #161b22;--color-project-gradient-in: #161b22;--color-project-gradient-out: rgba(22,27,34,0);--color-mktg-success: rgba(41,147,61,1);--color-mktg-info: rgba(42,123,243,1);--color-mktg-bg-shade-gradient-top: rgba(1,4,9,.065);--color-mktg-bg-shade-gradient-bottom: rgba(1,4,9,0);--color-mktg-btn-bg-top: hsla(228,82%,66%,1);--color-mktg-btn-bg-bottom: #4969ed;--color-mktg-btn-bg-overlay-top: hsla(228,74%,59%,1);--color-mktg-btn-bg-overlay-bottom: #3355e0;--color-mktg-btn-text: #f0f6fc;--color-mktg-btn-primary-bg-top: hsla(137,56%,46%,1);--color-mktg-btn-primary-bg-bottom: #2ea44f;--color-mktg-btn-primary-bg-overlay-top: hsla(134,60%,38%,1);--color-mktg-btn-primary-bg-overlay-bottom: #22863a;--color-mktg-btn-primary-text: #f0f6fc;--color-mktg-btn-enterprise-bg-top: hsla(249,100%,72%,1);--color-mktg-btn-enterprise-bg-bottom: #6f57ff;--color-mktg-btn-enterprise-bg-overlay-top: hsla(248,65%,63%,1);--color-mktg-btn-enterprise-bg-overlay-bottom: #614eda;--color-mktg-btn-enterprise-text: #f0f6fc;--color-mktg-btn-outline-text: #f0f6fc;--color-mktg-btn-outline-border: rgba(240,246,252,.3);--color-mktg-btn-outline-hover-text: #f0f6fc;--color-mktg-btn-outline-hover-border: rgba(240,246,252,.5);--color-mktg-btn-outline-focus-border: #f0f6fc;--color-mktg-btn-outline-focus-border-inset: rgba(240,246,252,.5);--color-mktg-btn-dark-text: #f0f6fc;--color-mktg-btn-dark-border: rgba(240,246,252,.3);--color-mktg-btn-dark-hover-text: #f0f6fc;--color-mktg-btn-dark-hover-border: rgba(240,246,252,.5);--color-mktg-btn-dark-focus-border: #f0f6fc;--color-mktg-btn-dark-focus-border-inset: rgba(240,246,252,.5);--color-avatar-bg: rgba(240,246,252,.1);--color-avatar-border: rgba(240,246,252,.1);--color-avatar-stack-fade: #30363d;--color-avatar-stack-fade-more: #21262d;--color-avatar-child-shadow: -2px -2px 0 #0d1117;--color-topic-tag-border: rgba(0,0,0,0);--color-select-menu-backdrop-border: #484f58;--color-select-menu-tap-highlight: rgba(48,54,61,.5);--color-select-menu-tap-focus-bg: #0c2d6b;--color-overlay-shadow: 0 0 0 1px #30363d, 0 16px 32px rgba(1,4,9,.85);--color-header-text: rgba(240,246,252,.7);--color-header-bg: #161b22;--color-header-logo: #f0f6fc;--color-header-search-bg: #0d1117;--color-header-search-border: #30363d;--color-sidenav-selected-bg: #21262d;--color-menu-bg-active: #161b22;--color-control-transparent-bg-hover: #656c7633;--color-input-disabled-bg: rgba(110,118,129,0);--color-timeline-badge-bg: #21262d;--color-ansi-black: #484f58;--color-ansi-black-bright: #6e7681;--color-ansi-white: #b1bac4;--color-ansi-white-bright: #f0f6fc;--color-ansi-gray: #6e7681;--color-ansi-red: #ff7b72;--color-ansi-red-bright: #ffa198;--color-ansi-green: #3fb950;--color-ansi-green-bright: #56d364;--color-ansi-yellow: #d29922;--color-ansi-yellow-bright: #e3b341;--color-ansi-blue: #58a6ff;--color-ansi-blue-bright: #79c0ff;--color-ansi-magenta: #bc8cff;--color-ansi-magenta-bright: #d2a8ff;--color-ansi-cyan: #39c5cf;--color-ansi-cyan-bright: #56d4dd;--color-btn-text: #c9d1d9;--color-btn-bg: #21262d;--color-btn-border: rgba(240,246,252,.1);--color-btn-shadow: 0 0 transparent;--color-btn-inset-shadow: 0 0 transparent;--color-btn-hover-bg: #30363d;--color-btn-hover-border: #8b949e;--color-btn-active-bg: hsla(212,12%,18%,1);--color-btn-active-border: #6e7681;--color-btn-selected-bg: #161b22;--color-btn-focus-bg: #21262d;--color-btn-focus-border: #8b949e;--color-btn-focus-shadow: 0 0 0 3px rgba(139,148,158,.3);--color-btn-shadow-active: inset 0 .15em .3em rgba(1,4,9,.15);--color-btn-shadow-input-focus: 0 0 0 .2em rgba(31,111,235,.3);--color-btn-counter-bg: #30363d;--color-btn-primary-text: #ffffff;--color-btn-primary-bg: #238636;--color-btn-primary-border: rgba(240,246,252,.1);--color-btn-primary-shadow: 0 0 transparent;--color-btn-primary-inset-shadow: 0 0 transparent;--color-btn-primary-hover-bg: #2ea043;--color-btn-primary-hover-border: rgba(240,246,252,.1);--color-btn-primary-selected-bg: #238636;--color-btn-primary-selected-shadow: 0 0 transparent;--color-btn-primary-disabled-text: rgba(240,246,252,.5);--color-btn-primary-disabled-bg: rgba(35,134,54,.6);--color-btn-primary-disabled-border: rgba(240,246,252,.1);--color-btn-primary-focus-bg: #238636;--color-btn-primary-focus-border: rgba(240,246,252,.1);--color-btn-primary-focus-shadow: 0 0 0 3px rgba(46,164,79,.4);--color-btn-primary-icon: #f0f6fc;--color-btn-primary-counter-bg: rgba(240,246,252,.2);--color-btn-outline-text: #58a6ff;--color-btn-outline-hover-text: #58a6ff;--color-btn-outline-hover-bg: #30363d;--color-btn-outline-hover-border: rgba(240,246,252,.1);--color-btn-outline-hover-shadow: 0 1px 0 rgba(1,4,9,.1);--color-btn-outline-hover-inset-shadow: inset 0 1px 0 rgba(240,246,252,.03);--color-btn-outline-hover-counter-bg: rgba(240,246,252,.2);--color-btn-outline-selected-text: #f0f6fc;--color-btn-outline-selected-bg: #0d419d;--color-btn-outline-selected-border: rgba(240,246,252,.1);--color-btn-outline-selected-shadow: 0 0 transparent;--color-btn-outline-disabled-text: rgba(88,166,255,.5);--color-btn-outline-disabled-bg: #0d1117;--color-btn-outline-disabled-counter-bg: rgba(31,111,235,.05);--color-btn-outline-focus-border: rgba(240,246,252,.1);--color-btn-outline-focus-shadow: 0 0 0 3px rgba(17,88,199,.4);--color-btn-outline-counter-bg: rgba(31,111,235,.1);--color-btn-danger-text: #f85149;--color-btn-danger-hover-text: #f0f6fc;--color-btn-danger-hover-bg: #da3633;--color-btn-danger-hover-border: #f85149;--color-btn-danger-hover-shadow: 0 0 transparent;--color-btn-danger-hover-inset-shadow: 0 0 transparent;--color-btn-danger-hover-icon: #f0f6fc;--color-btn-danger-hover-counter-bg: rgba(255,255,255,.2);--color-btn-danger-selected-text: #ffffff;--color-btn-danger-selected-bg: #b62324;--color-btn-danger-selected-border: #ff7b72;--color-btn-danger-selected-shadow: 0 0 transparent;--color-btn-danger-disabled-text: rgba(248,81,73,.5);--color-btn-danger-disabled-bg: #0d1117;--color-btn-danger-disabled-counter-bg: rgba(218,54,51,.05);--color-btn-danger-focus-border: #f85149;--color-btn-danger-focus-shadow: 0 0 0 3px rgba(248,81,73,.4);--color-btn-danger-counter-bg: rgba(218,54,51,.1);--color-btn-danger-icon: #f85149;--color-underlinenav-icon: #484f58;--color-underlinenav-border-hover: rgba(110,118,129,.4);--color-fg-default: #c9d1d9;--color-fg-muted: #8b949e;--color-fg-subtle: #484f58;--color-fg-on-emphasis: #f0f6fc;--color-canvas-default: #0d1117;--color-canvas-overlay: #161b22;--color-canvas-inset: #010409;--color-canvas-subtle: #161b22;--color-border-default: #30363d;--color-border-muted: #21262d;--color-border-subtle: rgba(240,246,252,.1);--color-shadow-small: 0 0 transparent;--color-shadow-medium: 0 3px 6px #010409;--color-shadow-large: 0 8px 24px #010409;--color-shadow-extra-large: 0 12px 48px #010409;--color-neutral-emphasis-plus: #6e7681;--color-neutral-emphasis: #6e7681;--color-neutral-muted: rgba(110,118,129,.4);--color-neutral-subtle: rgba(110,118,129,.1);--color-accent-fg: #58a6ff;--color-accent-emphasis: #1f6feb;--color-accent-muted: rgba(56,139,253,.4);--color-accent-subtle: rgba(56,139,253,.15);--color-success-fg: #3fb950;--color-success-emphasis: #238636;--color-success-muted: rgba(46,160,67,.4);--color-success-subtle: rgba(46,160,67,.15);--color-attention-fg: #d29922;--color-attention-emphasis: #9e6a03;--color-attention-muted: rgba(187,128,9,.4);--color-attention-subtle: rgba(187,128,9,.15);--color-severe-fg: #db6d28;--color-severe-emphasis: #bd561d;--color-severe-muted: rgba(219,109,40,.4);--color-severe-subtle: rgba(219,109,40,.15);--color-danger-fg: #f85149;--color-danger-emphasis: #da3633;--color-danger-muted: rgba(248,81,73,.4);--color-danger-subtle: rgba(248,81,73,.15);--color-done-fg: #a371f7;--color-done-emphasis: #8957e5;--color-done-muted: rgba(163,113,247,.4);--color-done-subtle: rgba(163,113,247,.15);--color-sponsors-fg: #db61a2;--color-sponsors-emphasis: #bf4b8a;--color-sponsors-muted: rgba(219,97,162,.4);--color-sponsors-subtle: rgba(219,97,162,.15);--color-primer-canvas-backdrop: rgba(1,4,9,.8);--color-primer-canvas-sticky: rgba(13,17,23,.95);--color-primer-border-active: #F78166;--color-primer-border-contrast: rgba(240,246,252,.2);--color-primer-shadow-highlight: 0 0 transparent;--color-primer-shadow-inset: 0 0 transparent;--color-primer-shadow-focus: 0 0 0 3px #0c2d6b;--color-scale-black: #010409;--color-scale-white: #f0f6fc;--color-scale-gray-0: #f0f6fc;--color-scale-gray-1: #c9d1d9;--color-scale-gray-2: #b1bac4;--color-scale-gray-3: #8b949e;--color-scale-gray-4: #6e7681;--color-scale-gray-5: #484f58;--color-scale-gray-6: #30363d;--color-scale-gray-7: #21262d;--color-scale-gray-8: #161b22;--color-scale-gray-9: #0d1117;--color-scale-blue-0: #cae8ff;--color-scale-blue-1: #a5d6ff;--color-scale-blue-2: #79c0ff;--color-scale-blue-3: #58a6ff;--color-scale-blue-4: #388bfd;--color-scale-blue-5: #1f6feb;--color-scale-blue-6: #1158c7;--color-scale-blue-7: #0d419d;--color-scale-blue-8: #0c2d6b;--color-scale-blue-9: #051d4d;--color-scale-green-0: #aff5b4;--color-scale-green-1: #7ee787;--color-scale-green-2: #56d364;--color-scale-green-3: #3fb950;--color-scale-green-4: #2ea043;--color-scale-green-5: #238636;--color-scale-green-6: #196c2e;--color-scale-green-7: #0f5323;--color-scale-green-8: #033a16;--color-scale-green-9: #04260f;--color-scale-yellow-0: #f8e3a1;--color-scale-yellow-1: #f2cc60;--color-scale-yellow-2: #e3b341;--color-scale-yellow-3: #d29922;--color-scale-yellow-4: #bb8009;--color-scale-yellow-5: #9e6a03;--color-scale-yellow-6: #845306;--color-scale-yellow-7: #693e00;--color-scale-yellow-8: #4b2900;--color-scale-yellow-9: #341a00;--color-scale-orange-0: #ffdfb6;--color-scale-orange-1: #ffc680;--color-scale-orange-2: #ffa657;--color-scale-orange-3: #f0883e;--color-scale-orange-4: #db6d28;--color-scale-orange-5: #bd561d;--color-scale-orange-6: #9b4215;--color-scale-orange-7: #762d0a;--color-scale-orange-8: #5a1e02;--color-scale-orange-9: #3d1300;--color-scale-red-0: #ffdcd7;--color-scale-red-1: #ffc1ba;--color-scale-red-2: #ffa198;--color-scale-red-3: #ff7b72;--color-scale-red-4: #f85149;--color-scale-red-5: #da3633;--color-scale-red-6: #b62324;--color-scale-red-7: #8e1519;--color-scale-red-8: #67060c;--color-scale-red-9: #490202;--color-scale-purple-0: #eddeff;--color-scale-purple-1: #e2c5ff;--color-scale-purple-2: #d2a8ff;--color-scale-purple-3: #bc8cff;--color-scale-purple-4: #a371f7;--color-scale-purple-5: #8957e5;--color-scale-purple-6: #6e40c9;--color-scale-purple-7: #553098;--color-scale-purple-8: #3c1e70;--color-scale-purple-9: #271052;--color-scale-pink-0: #ffdaec;--color-scale-pink-1: #ffbedd;--color-scale-pink-2: #ff9bce;--color-scale-pink-3: #f778ba;--color-scale-pink-4: #db61a2;--color-scale-pink-5: #bf4b8a;--color-scale-pink-6: #9e3670;--color-scale-pink-7: #7d2457;--color-scale-pink-8: #5e103e;--color-scale-pink-9: #42062a;--color-scale-coral-0: #FFDDD2;--color-scale-coral-1: #FFC2B2;--color-scale-coral-2: #FFA28B;--color-scale-coral-3: #F78166;--color-scale-coral-4: #EA6045;--color-scale-coral-5: #CF462D;--color-scale-coral-6: #AC3220;--color-scale-coral-7: #872012;--color-scale-coral-8: #640D04;--color-scale-coral-9: #460701 }*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--color-canvas-default);color:var(--color-fg-default)}body *{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}#root{height:100%}button{background:none;border:none;color:var(--color-fg-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}button:hover{color:var(--color-fg-default)}.dashboard-view{--interactive-orange: 238 134 12;display:flex;flex-direction:column;height:100%;overflow:hidden}.tabbar{display:flex;align-items:flex-end;height:38px;min-height:38px;padding:0 4px;-webkit-user-select:none;user-select:none;position:relative;z-index:110}:root.light-mode .tabbar{background:var(--color-canvas-overlay)}.dashboard-view.interactive .toolbar:after{content:"";position:absolute;top:0;bottom:0;right:0;width:26%;pointer-events:none;background:linear-gradient(90deg,rgb(var(--interactive-orange) / 0),#ffffff2e 45%,rgb(var(--interactive-orange) / 0));transform:translate(140%);animation:interactive-toolbar-shimmer-rtl .9s ease-out 1;z-index:-1}.dashboard-view.interactive .segmented-control:after{content:"";position:absolute;left:25%;top:50%;width:26px;height:26px;border-radius:50%;background:rgb(var(--interactive-orange) / .38);transform:translate(-50%,-50%) scale(.35);box-shadow:0 0 rgb(var(--interactive-orange) / .52);z-index:-1;animation:interactive-track-radial .42s cubic-bezier(.12,.72,.22,1) forwards}.dashboard-view.interactive .segmented-control.interactive:after{left:75%}@keyframes interactive-toolbar-shimmer-rtl{0%{opacity:0;transform:translate(140%)}16%{opacity:.9}to{opacity:0;transform:translate(-420%)}}@keyframes interactive-track-radial{0%{opacity:1;transform:translate(-50%,-50%) scale(.52);box-shadow:0 0 rgb(var(--interactive-orange) / .65)}35%{opacity:.78;transform:translate(-50%,-50%) scale(.92);box-shadow:0 0 0 34px rgb(var(--interactive-orange) / .3)}to{opacity:0;transform:translate(-50%,-50%) scale(1.14);box-shadow:0 0 0 74px rgb(var(--interactive-orange) / 0)}}.tabbar-back{display:flex;align-items:center;justify-content:center;height:34px;align-self:flex-end;color:var(--color-fg-muted);text-decoration:none;border-radius:8px;margin-right:4px;font-size:11px;text-transform:uppercase;font-weight:600}.tabbar-back:hover{background:var(--color-canvas-overlay);color:var(--color-fg-default)}.tabbar-back svg{width:16px;height:16px}.tabstrip{display:flex;align-items:flex-end;gap:1px;overflow-x:auto;scrollbar-width:none;min-width:0;padding-top:8px}.tabstrip::-webkit-scrollbar{display:none}.tab{display:flex;align-items:center;gap:6px;height:34px;padding:0 10px;background:var(--color-canvas-subtle);color:var(--color-fg-muted);font-size:13px;cursor:pointer;white-space:nowrap;max-width:200px;min-width:48px;border-radius:8px 8px 0 0;-webkit-user-select:none;user-select:none;flex-shrink:0}.tab:hover{background:var(--color-canvas-overlay);color:var(--color-fg-muted)}.tab.active{background:var(--color-canvas-overlay);color:var(--color-fg-default)}:root.light-mode .tab{background:transparent}:root.light-mode .tab:hover{background:var(--color-canvas-subtle)}:root.light-mode .tab.active{background:var(--color-canvas-subtle)}.dashboard-view.interactive .tab.active{background:rgb(var(--interactive-orange));color:var(--color-fg-on-emphasis)}.tab-label{overflow:hidden;text-overflow:ellipsis;pointer-events:none}.tab-favicon{width:14px;height:14px;flex-shrink:0;background:var(--color-fg-subtle);border-radius:2px;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700}.tab-close{width:16px;height:16px;border-radius:50%;opacity:0;margin-left:auto}.tab-close svg{width:10px;height:10px}.tab:hover .tab-close,.tab.active .tab-close{opacity:1}.tab-close:hover{background:var(--color-neutral-muted)}.new-tab-btn{width:28px;height:34px;border-radius:8px;margin-left:4px;align-self:flex-end}.new-tab-btn:hover{background:var(--color-canvas-overlay)}.new-tab-btn svg{width:16px;height:16px}.interactive-controls{margin-left:auto;margin-right:0;align-self:center;display:inline-flex;align-items:center;gap:8px;padding:4px 2px 4px 8px}.segmented-control{position:relative;height:28px;border-radius:999px;padding:2px;display:inline-flex;align-items:center;gap:0;background:var(--color-neutral-subtle)}.segmented-control:before{content:"";position:absolute;top:2px;bottom:2px;left:2px;width:calc(50% - 2px);border-radius:999px;background:var(--color-neutral-muted);transform:translate(0);transition:transform .18s cubic-bezier(.2,.8,.2,1),background-color .18s ease}.segmented-control.interactive:before{transform:translate(100%);background:rgb(var(--interactive-orange) / .95)}.segmented-control-option{position:relative;z-index:1;width:96px;height:24px;border-radius:999px;padding:0;border:none;background:transparent;color:var(--color-fg-muted);font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;display:flex;align-items:center;justify-content:center;line-height:1}.segmented-control-option:hover:not(:disabled){background:transparent}.segmented-control-option.active{color:var(--color-fg-default)}.segmented-control-option:disabled{opacity:.7;cursor:default}.dashboard-view.interactive .segmented-control{background:#fff3}.dashboard-view.interactive .segmented-control:before{background:#ffffff52}:root.light-mode .dashboard-view.interactive .segmented-control{background:#0000001a}:root.light-mode .dashboard-view.interactive .segmented-control:before{background:#0000001f}:root.light-mode .dashboard-view.interactive .toolbar .nav-btn:hover{background:#ffffff2e}:root.light-mode .dashboard-view.interactive .toolbar .nav-btn:active{background:#ffffff40}.dashboard-view.interactive .segmented-control.interactive:before{background:rgb(var(--interactive-orange) / .95)}.dashboard-view.interactive .segmented-control-option{color:#ffffffbd}.dashboard-view.interactive .segmented-control-option.active{color:var(--color-fg-on-emphasis)}:root.light-mode .dashboard-view.interactive .segmented-control-option{color:var(--color-fg-muted)}:root.light-mode .dashboard-view.interactive .segmented-control-option.active{color:var(--color-fg-on-emphasis)}.toolbar{display:flex;align-items:center;gap:4px;height:40px;min-height:40px;background:var(--color-canvas-overlay);padding:0 8px;position:relative;z-index:0}:root.light-mode .toolbar{background:var(--color-canvas-subtle)}.dashboard-view.interactive .toolbar{background:rgb(var(--interactive-orange));color:var(--color-fg-on-emphasis)}.dashboard-view.interactive .toolbar .nav-btn,.dashboard-view.interactive .toolbar .omnibox{color:var(--color-fg-on-emphasis)}:root.light-mode .dashboard-view.interactive .toolbar{color:var(--color-fg-on-emphasis)}:root.light-mode .dashboard-view.interactive .toolbar .omnibox{background:#00000026;color:var(--color-fg-on-emphasis)}:root.light-mode .dashboard-view.interactive .toolbar .omnibox::placeholder{color:#fff9}.nav-btn{width:32px;height:32px;border-radius:50%}.nav-btn:hover{background:var(--color-neutral-subtle)}.nav-btn:active{background:var(--color-neutral-muted)}.nav-btn:disabled{color:var(--color-fg-subtle);cursor:default}.nav-btn:disabled:hover{background:none}.nav-btn svg{width:18px;height:18px}.omnibox{flex:1;height:30px;padding:0 12px;font-size:13px;font-family:inherit;background:var(--color-canvas-default);color:var(--color-fg-default);border:1px solid var(--color-border-muted);border-radius:16px;outline:none;min-width:0}.omnibox:focus{border-color:var(--color-accent-fg);background:var(--color-canvas-subtle)}.omnibox::placeholder{color:var(--color-fg-subtle)}.omnibox::selection{background:var(--color-accent-muted)}.viewport-wrapper{flex:1;display:flex;background:#000;overflow:hidden;position:relative;min-height:0}.viewport-main{flex:1;display:flex;flex-direction:column;position:relative;min-width:0}.screen{position:relative;outline:none;width:100%;height:100%}.screen:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;box-shadow:inset 0 0 0 1px rgb(var(--interactive-orange) / .72),inset 0 0 26px rgb(var(--interactive-orange) / .42);transition:opacity .18s ease}.display{display:block;width:100%;height:100%;background:#000;object-fit:contain}.dashboard-view.interactive .screen:after{opacity:1}.screen-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:14px;z-index:10;pointer-events:none;background:#000;color:var(--color-fg-subtle)}.screen-overlay.has-frame{background:#c8c8c880}.screen-overlay.has-frame>span{background:#fff6;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#000c;padding:12px 24px;border-radius:12px;font-weight:500;border:1px solid rgba(255,255,255,.15);box-shadow:0 0 24px 12px #fff3}.screen-toast{position:absolute;bottom:16px;left:50%;transform:translate(-50%);background:var(--color-primer-canvas-sticky);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--color-fg-default);font-size:12px;padding:6px 16px;border-radius:20px;pointer-events:none;opacity:0;transition:opacity .2s;white-space:nowrap;border:1px solid var(--color-border-subtle)}.screen-toast.visible{opacity:1}.screen-toast code{color:var(--color-accent-fg);font-family:SF Mono,Cascadia Code,Fira Code,Consolas,monospace;margin-left:4px}.inspector-frame{display:block;width:100%;height:100%;border:none;background:var(--color-canvas-default)}.nav-btn.active-toggle{color:var(--color-accent-fg);background:var(--color-accent-subtle)}.split-view{display:flex;flex:auto;position:relative}.split-view.vertical{flex-direction:column}.split-view.vertical.sidebar-first{flex-direction:column-reverse}.split-view.horizontal{flex-direction:row}.split-view.horizontal.sidebar-first{flex-direction:row-reverse}.split-view-main{display:flex;flex:auto}.split-view-sidebar{display:flex;flex:none}.split-view.vertical:not(.sidebar-first)>.split-view-sidebar{border-top:1px solid var(--vscode-panel-border)}.split-view.horizontal:not(.sidebar-first)>.split-view-sidebar{border-left:1px solid var(--vscode-panel-border)}.split-view.vertical.sidebar-first>.split-view-sidebar{border-bottom:1px solid var(--vscode-panel-border)}.split-view.horizontal.sidebar-first>.split-view-sidebar{border-right:1px solid var(--vscode-panel-border)}.split-view-resizer{position:absolute;z-index:100}.split-view.vertical>.split-view-resizer{left:0;right:0;height:12px;cursor:ns-resize}.split-view.horizontal>.split-view-resizer{top:0;bottom:0;width:12px;cursor:ew-resize}.settings-button-container{position:relative}.settings-gear-btn{width:28px;height:28px;border-radius:6px}.settings-gear-btn svg{width:16px;height:16px}.settings-gear-btn:hover{background:var(--color-neutral-subtle)}.settings-gear-btn.open{background:var(--color-neutral-muted);color:var(--color-fg-default)}.settings-popup{position:absolute;top:100%;right:0;margin-top:4px;background:var(--color-canvas-overlay);border:1px solid var(--color-neutral-muted);border-radius:8px;padding:8px 0;min-width:160px;box-shadow:var(--color-overlay-shadow);z-index:100;-webkit-user-select:none;user-select:none}.settings-popup .setting-row{display:flex;flex-direction:column;gap:4px;padding:6px 12px}.settings-popup .setting-label{font-size:11px;font-weight:600;color:var(--color-fg-subtle);text-transform:uppercase;letter-spacing:.04em}.settings-popup .setting-options{display:flex;flex-direction:column}.settings-popup .setting-option{display:flex;align-items:center;justify-content:flex-start;height:28px;padding:0 8px;border-radius:4px;font-size:12px;color:var(--color-fg-muted);cursor:pointer}.settings-popup .setting-option:hover{background:var(--color-neutral-subtle);color:var(--color-fg-default)}.settings-popup .setting-option.selected{color:var(--color-accent-fg)}.grid-view{display:flex;flex-direction:column;height:100%}.grid-toolbar{display:flex;align-items:center;justify-content:flex-end;height:38px;min-height:38px;padding:0 4px;-webkit-user-select:none;user-select:none;position:relative;z-index:110}.grid-content{flex:1;overflow:auto;padding:0 24px 12px}.grid-loading,.grid-empty{color:var(--color-fg-subtle);font-size:14px}.grid-error{color:var(--color-danger-fg);font-size:14px}.workspace-list{display:flex;flex-direction:column;gap:24px}.workspace-header{font-size:13px;color:var(--color-fg-muted);margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center}.workspace-header.collapsible{cursor:pointer;-webkit-user-select:none;user-select:none}.workspace-chevron{width:16px;height:16px;flex-shrink:0;margin-right:4px;transition:transform .15s ease}.workspace-chevron.expanded{transform:rotate(90deg)}.workspace-name{font-weight:600}.workspace-path{margin-left:6px;color:var(--color-fg-subtle);font-weight:400}.session-chips{display:flex;flex-wrap:wrap;gap:8px}.session-chip{display:flex;flex-direction:column;background:var(--color-canvas-subtle);border-radius:8px;border:1px solid var(--color-border-default);box-shadow:var(--color-shadow-small);min-width:200px;cursor:pointer;text-decoration:none;color:inherit}.session-chip:hover{border-color:var(--color-fg-subtle)}.session-chip-header{display:flex;align-items:center;gap:8px;padding:8px 12px;max-width:533px}.session-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.session-status-dot.open{background:var(--color-success-fg)}.session-status-dot.closed{background:var(--color-fg-subtle)}.session-chip-name{font-size:13px;font-weight:600;color:var(--color-fg-default);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.session-chip-title{color:var(--color-fg-muted);font-weight:400}.session-chip-detail{font-size:11px;color:var(--color-fg-subtle)}.session-chip.disconnected,.session-chip.not-supported{opacity:.6;cursor:default}.session-chip-action{width:20px;height:20px;border-radius:50%;margin-left:auto;opacity:0}.session-chip-action svg{width:12px;height:12px}.session-chip:hover .session-chip-action{opacity:1}.session-chip-action:hover{background:var(--color-neutral-muted)}.screencast-container{width:533px;height:300px;background:#000;border-radius:4px;overflow:hidden}.screencast-frame{display:block;width:100%;height:100%;object-fit:contain;background:#000}.screencast-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-fg-subtle);font-size:12px} diff --git a/node_modules.codex-backup/playwright-core/lib/vite/dashboard/index.html b/node_modules.codex-backup/playwright-core/lib/vite/dashboard/index.html new file mode 100644 index 00000000..c9e0a4b6 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/vite/dashboard/index.html @@ -0,0 +1,28 @@ +<!-- + Copyright (c) Microsoft Corporation. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!DOCTYPE html> +<html lang="en" translate="no"> + <head> + <meta charset="UTF-8"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <title>Playwright Dashboard + + + + +
+ + diff --git a/node_modules.codex-backup/playwright-core/lib/vite/htmlReport/report.css b/node_modules.codex-backup/playwright-core/lib/vite/htmlReport/report.css new file mode 100644 index 00000000..c2b25648 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/vite/htmlReport/report.css @@ -0,0 +1 @@ +:root{--color-canvas-default-transparent: rgba(255,255,255,0);--color-marketing-icon-primary: #218bff;--color-marketing-icon-secondary: #54aeff;--color-diff-blob-addition-num-text: #24292f;--color-diff-blob-addition-fg: #24292f;--color-diff-blob-addition-num-bg: #CCFFD8;--color-diff-blob-addition-line-bg: #E6FFEC;--color-diff-blob-addition-word-bg: #ABF2BC;--color-diff-blob-deletion-num-text: #24292f;--color-diff-blob-deletion-fg: #24292f;--color-diff-blob-deletion-num-bg: #FFD7D5;--color-diff-blob-deletion-line-bg: #FFEBE9;--color-diff-blob-deletion-word-bg: rgba(255,129,130,.4);--color-diff-blob-hunk-num-bg: rgba(84,174,255,.4);--color-diff-blob-expander-icon: #57606a;--color-diff-blob-selected-line-highlight-mix-blend-mode: multiply;--color-diffstat-deletion-border: rgba(27,31,36,.15);--color-diffstat-addition-border: rgba(27,31,36,.15);--color-diffstat-addition-bg: #2da44e;--color-search-keyword-hl: #fff8c5;--color-prettylights-syntax-comment: #6e7781;--color-prettylights-syntax-constant: #0550ae;--color-prettylights-syntax-entity: #8250df;--color-prettylights-syntax-storage-modifier-import: #24292f;--color-prettylights-syntax-entity-tag: #116329;--color-prettylights-syntax-keyword: #cf222e;--color-prettylights-syntax-string: #0a3069;--color-prettylights-syntax-variable: #953800;--color-prettylights-syntax-brackethighlighter-unmatched: #82071e;--color-prettylights-syntax-invalid-illegal-text: #f6f8fa;--color-prettylights-syntax-invalid-illegal-bg: #82071e;--color-prettylights-syntax-carriage-return-text: #f6f8fa;--color-prettylights-syntax-carriage-return-bg: #cf222e;--color-prettylights-syntax-string-regexp: #116329;--color-prettylights-syntax-markup-list: #3b2300;--color-prettylights-syntax-markup-heading: #0550ae;--color-prettylights-syntax-markup-italic: #24292f;--color-prettylights-syntax-markup-bold: #24292f;--color-prettylights-syntax-markup-deleted-text: #82071e;--color-prettylights-syntax-markup-deleted-bg: #FFEBE9;--color-prettylights-syntax-markup-inserted-text: #116329;--color-prettylights-syntax-markup-inserted-bg: #dafbe1;--color-prettylights-syntax-markup-changed-text: #953800;--color-prettylights-syntax-markup-changed-bg: #ffd8b5;--color-prettylights-syntax-markup-ignored-text: #eaeef2;--color-prettylights-syntax-markup-ignored-bg: #0550ae;--color-prettylights-syntax-meta-diff-range: #8250df;--color-prettylights-syntax-brackethighlighter-angle: #57606a;--color-prettylights-syntax-sublimelinter-gutter-mark: #8c959f;--color-prettylights-syntax-constant-other-reference-link: #0a3069;--color-codemirror-text: #24292f;--color-codemirror-bg: #ffffff;--color-codemirror-gutters-bg: #ffffff;--color-codemirror-guttermarker-text: #ffffff;--color-codemirror-guttermarker-subtle-text: #6e7781;--color-codemirror-linenumber-text: #57606a;--color-codemirror-cursor: #24292f;--color-codemirror-selection-bg: rgba(84,174,255,.4);--color-codemirror-activeline-bg: rgba(234,238,242,.5);--color-codemirror-matchingbracket-text: #24292f;--color-codemirror-lines-bg: #ffffff;--color-codemirror-syntax-comment: #24292f;--color-codemirror-syntax-constant: #0550ae;--color-codemirror-syntax-entity: #8250df;--color-codemirror-syntax-keyword: #cf222e;--color-codemirror-syntax-storage: #cf222e;--color-codemirror-syntax-string: #0a3069;--color-codemirror-syntax-support: #0550ae;--color-codemirror-syntax-variable: #953800;--color-checks-bg: #24292f;--color-checks-run-border-width: 0px;--color-checks-container-border-width: 0px;--color-checks-text-primary: #f6f8fa;--color-checks-text-secondary: #8c959f;--color-checks-text-link: #54aeff;--color-checks-btn-icon: #afb8c1;--color-checks-btn-hover-icon: #f6f8fa;--color-checks-btn-hover-bg: rgba(255,255,255,.125);--color-checks-input-text: #eaeef2;--color-checks-input-placeholder-text: #8c959f;--color-checks-input-focus-text: #8c959f;--color-checks-input-bg: #32383f;--color-checks-input-shadow: none;--color-checks-donut-error: #fa4549;--color-checks-donut-pending: #bf8700;--color-checks-donut-success: #2da44e;--color-checks-donut-neutral: #afb8c1;--color-checks-dropdown-text: #afb8c1;--color-checks-dropdown-bg: #32383f;--color-checks-dropdown-border: #424a53;--color-checks-dropdown-shadow: rgba(27,31,36,.3);--color-checks-dropdown-hover-text: #f6f8fa;--color-checks-dropdown-hover-bg: #424a53;--color-checks-dropdown-btn-hover-text: #f6f8fa;--color-checks-dropdown-btn-hover-bg: #32383f;--color-checks-scrollbar-thumb-bg: #57606a;--color-checks-header-label-text: #d0d7de;--color-checks-header-label-open-text: #f6f8fa;--color-checks-header-border: #32383f;--color-checks-header-icon: #8c959f;--color-checks-line-text: #d0d7de;--color-checks-line-num-text: rgba(140,149,159,.75);--color-checks-line-timestamp-text: #8c959f;--color-checks-line-hover-bg: #32383f;--color-checks-line-selected-bg: rgba(33,139,255,.15);--color-checks-line-selected-num-text: #54aeff;--color-checks-line-dt-fm-text: #24292f;--color-checks-line-dt-fm-bg: #9a6700;--color-checks-gate-bg: rgba(125,78,0,.15);--color-checks-gate-text: #d0d7de;--color-checks-gate-waiting-text: #afb8c1;--color-checks-step-header-open-bg: #32383f;--color-checks-step-error-text: #ff8182;--color-checks-step-warning-text: #d4a72c;--color-checks-logline-text: #8c959f;--color-checks-logline-num-text: rgba(140,149,159,.75);--color-checks-logline-debug-text: #c297ff;--color-checks-logline-error-text: #d0d7de;--color-checks-logline-error-num-text: #ff8182;--color-checks-logline-error-bg: rgba(164,14,38,.15);--color-checks-logline-warning-text: #d0d7de;--color-checks-logline-warning-num-text: #d4a72c;--color-checks-logline-warning-bg: rgba(125,78,0,.15);--color-checks-logline-command-text: #54aeff;--color-checks-logline-section-text: #4ac26b;--color-checks-ansi-black: #24292f;--color-checks-ansi-black-bright: #32383f;--color-checks-ansi-white: #d0d7de;--color-checks-ansi-white-bright: #d0d7de;--color-checks-ansi-gray: #8c959f;--color-checks-ansi-red: #ff8182;--color-checks-ansi-red-bright: #ffaba8;--color-checks-ansi-green: #4ac26b;--color-checks-ansi-green-bright: #6fdd8b;--color-checks-ansi-yellow: #d4a72c;--color-checks-ansi-yellow-bright: #eac54f;--color-checks-ansi-blue: #54aeff;--color-checks-ansi-blue-bright: #80ccff;--color-checks-ansi-magenta: #c297ff;--color-checks-ansi-magenta-bright: #d8b9ff;--color-checks-ansi-cyan: #76e3ea;--color-checks-ansi-cyan-bright: #b3f0ff;--color-project-header-bg: #24292f;--color-project-sidebar-bg: #ffffff;--color-project-gradient-in: #ffffff;--color-project-gradient-out: rgba(255,255,255,0);--color-mktg-success: rgba(36,146,67,1);--color-mktg-info: rgba(19,119,234,1);--color-mktg-bg-shade-gradient-top: rgba(27,31,36,.065);--color-mktg-bg-shade-gradient-bottom: rgba(27,31,36,0);--color-mktg-btn-bg-top: hsla(228,82%,66%,1);--color-mktg-btn-bg-bottom: #4969ed;--color-mktg-btn-bg-overlay-top: hsla(228,74%,59%,1);--color-mktg-btn-bg-overlay-bottom: #3355e0;--color-mktg-btn-text: #ffffff;--color-mktg-btn-primary-bg-top: hsla(137,56%,46%,1);--color-mktg-btn-primary-bg-bottom: #2ea44f;--color-mktg-btn-primary-bg-overlay-top: hsla(134,60%,38%,1);--color-mktg-btn-primary-bg-overlay-bottom: #22863a;--color-mktg-btn-primary-text: #ffffff;--color-mktg-btn-enterprise-bg-top: hsla(249,100%,72%,1);--color-mktg-btn-enterprise-bg-bottom: #6f57ff;--color-mktg-btn-enterprise-bg-overlay-top: hsla(248,65%,63%,1);--color-mktg-btn-enterprise-bg-overlay-bottom: #614eda;--color-mktg-btn-enterprise-text: #ffffff;--color-mktg-btn-outline-text: #4969ed;--color-mktg-btn-outline-border: rgba(73,105,237,.3);--color-mktg-btn-outline-hover-text: #3355e0;--color-mktg-btn-outline-hover-border: rgba(51,85,224,.5);--color-mktg-btn-outline-focus-border: #4969ed;--color-mktg-btn-outline-focus-border-inset: rgba(73,105,237,.5);--color-mktg-btn-dark-text: #ffffff;--color-mktg-btn-dark-border: rgba(255,255,255,.3);--color-mktg-btn-dark-hover-text: #ffffff;--color-mktg-btn-dark-hover-border: rgba(255,255,255,.5);--color-mktg-btn-dark-focus-border: #ffffff;--color-mktg-btn-dark-focus-border-inset: rgba(255,255,255,.5);--color-avatar-bg: #ffffff;--color-avatar-border: rgba(27,31,36,.15);--color-avatar-stack-fade: #afb8c1;--color-avatar-stack-fade-more: #d0d7de;--color-avatar-child-shadow: -2px -2px 0 rgba(255,255,255,.8);--color-topic-tag-border: rgba(0,0,0,0);--color-select-menu-backdrop-border: rgba(0,0,0,0);--color-select-menu-tap-highlight: rgba(175,184,193,.5);--color-select-menu-tap-focus-bg: #b6e3ff;--color-overlay-shadow: 0 1px 3px rgba(27,31,36,.12), 0 8px 24px rgba(66,74,83,.12);--color-header-text: rgba(255,255,255,.7);--color-header-bg: #24292f;--color-header-logo: #ffffff;--color-header-search-bg: #24292f;--color-header-search-border: #57606a;--color-sidenav-selected-bg: #ffffff;--color-menu-bg-active: rgba(0,0,0,0);--color-control-transparent-bg-hover: #818b981a;--color-input-disabled-bg: rgba(175,184,193,.2);--color-timeline-badge-bg: #eaeef2;--color-ansi-black: #24292f;--color-ansi-black-bright: #57606a;--color-ansi-white: #6e7781;--color-ansi-white-bright: #8c959f;--color-ansi-gray: #6e7781;--color-ansi-red: #cf222e;--color-ansi-red-bright: #a40e26;--color-ansi-green: #116329;--color-ansi-green-bright: #1a7f37;--color-ansi-yellow: #4d2d00;--color-ansi-yellow-bright: #633c01;--color-ansi-blue: #0969da;--color-ansi-blue-bright: #218bff;--color-ansi-magenta: #8250df;--color-ansi-magenta-bright: #a475f9;--color-ansi-cyan: #1b7c83;--color-ansi-cyan-bright: #3192aa;--color-btn-text: #24292f;--color-btn-bg: #f6f8fa;--color-btn-border: rgba(27,31,36,.15);--color-btn-shadow: 0 1px 0 rgba(27,31,36,.04);--color-btn-inset-shadow: inset 0 1px 0 rgba(255,255,255,.25);--color-btn-hover-bg: #f3f4f6;--color-btn-hover-border: rgba(27,31,36,.15);--color-btn-active-bg: hsla(220,14%,93%,1);--color-btn-active-border: rgba(27,31,36,.15);--color-btn-selected-bg: hsla(220,14%,94%,1);--color-btn-focus-bg: #f6f8fa;--color-btn-focus-border: rgba(27,31,36,.15);--color-btn-focus-shadow: 0 0 0 3px rgba(9,105,218,.3);--color-btn-shadow-active: inset 0 .15em .3em rgba(27,31,36,.15);--color-btn-shadow-input-focus: 0 0 0 .2em rgba(9,105,218,.3);--color-btn-counter-bg: rgba(27,31,36,.08);--color-btn-primary-text: #ffffff;--color-btn-primary-bg: #2da44e;--color-btn-primary-border: rgba(27,31,36,.15);--color-btn-primary-shadow: 0 1px 0 rgba(27,31,36,.1);--color-btn-primary-inset-shadow: inset 0 1px 0 rgba(255,255,255,.03);--color-btn-primary-hover-bg: #2c974b;--color-btn-primary-hover-border: rgba(27,31,36,.15);--color-btn-primary-selected-bg: hsla(137,55%,36%,1);--color-btn-primary-selected-shadow: inset 0 1px 0 rgba(0,45,17,.2);--color-btn-primary-disabled-text: rgba(255,255,255,.8);--color-btn-primary-disabled-bg: #94d3a2;--color-btn-primary-disabled-border: rgba(27,31,36,.15);--color-btn-primary-focus-bg: #2da44e;--color-btn-primary-focus-border: rgba(27,31,36,.15);--color-btn-primary-focus-shadow: 0 0 0 3px rgba(45,164,78,.4);--color-btn-primary-icon: rgba(255,255,255,.8);--color-btn-primary-counter-bg: rgba(255,255,255,.2);--color-btn-outline-text: #0969da;--color-btn-outline-hover-text: #ffffff;--color-btn-outline-hover-bg: #0969da;--color-btn-outline-hover-border: rgba(27,31,36,.15);--color-btn-outline-hover-shadow: 0 1px 0 rgba(27,31,36,.1);--color-btn-outline-hover-inset-shadow: inset 0 1px 0 rgba(255,255,255,.03);--color-btn-outline-hover-counter-bg: rgba(255,255,255,.2);--color-btn-outline-selected-text: #ffffff;--color-btn-outline-selected-bg: hsla(212,92%,42%,1);--color-btn-outline-selected-border: rgba(27,31,36,.15);--color-btn-outline-selected-shadow: inset 0 1px 0 rgba(0,33,85,.2);--color-btn-outline-disabled-text: rgba(9,105,218,.5);--color-btn-outline-disabled-bg: #f6f8fa;--color-btn-outline-disabled-counter-bg: rgba(9,105,218,.05);--color-btn-outline-focus-border: rgba(27,31,36,.15);--color-btn-outline-focus-shadow: 0 0 0 3px rgba(5,80,174,.4);--color-btn-outline-counter-bg: rgba(9,105,218,.1);--color-btn-danger-text: #cf222e;--color-btn-danger-hover-text: #ffffff;--color-btn-danger-hover-bg: #a40e26;--color-btn-danger-hover-border: rgba(27,31,36,.15);--color-btn-danger-hover-shadow: 0 1px 0 rgba(27,31,36,.1);--color-btn-danger-hover-inset-shadow: inset 0 1px 0 rgba(255,255,255,.03);--color-btn-danger-hover-counter-bg: rgba(255,255,255,.2);--color-btn-danger-selected-text: #ffffff;--color-btn-danger-selected-bg: hsla(356,72%,44%,1);--color-btn-danger-selected-border: rgba(27,31,36,.15);--color-btn-danger-selected-shadow: inset 0 1px 0 rgba(76,0,20,.2);--color-btn-danger-disabled-text: rgba(207,34,46,.5);--color-btn-danger-disabled-bg: #f6f8fa;--color-btn-danger-disabled-counter-bg: rgba(207,34,46,.05);--color-btn-danger-focus-border: rgba(27,31,36,.15);--color-btn-danger-focus-shadow: 0 0 0 3px rgba(164,14,38,.4);--color-btn-danger-counter-bg: rgba(207,34,46,.1);--color-btn-danger-icon: #cf222e;--color-btn-danger-hover-icon: #ffffff;--color-underlinenav-icon: #6e7781;--color-underlinenav-border-hover: rgba(175,184,193,.2);--color-fg-default: #24292f;--color-fg-muted: #57606a;--color-fg-subtle: #6e7781;--color-fg-on-emphasis: #ffffff;--color-canvas-default: #ffffff;--color-canvas-overlay: #ffffff;--color-canvas-inset: #f6f8fa;--color-canvas-subtle: #f6f8fa;--color-border-default: #d0d7de;--color-border-muted: hsla(210,18%,87%,1);--color-border-subtle: rgba(27,31,36,.15);--color-shadow-small: 0 1px 0 rgba(27,31,36,.04);--color-shadow-medium: 0 3px 6px rgba(140,149,159,.15);--color-shadow-large: 0 8px 24px rgba(140,149,159,.2);--color-shadow-extra-large: 0 12px 28px rgba(140,149,159,.3);--color-neutral-emphasis-plus: #24292f;--color-neutral-emphasis: #6e7781;--color-neutral-muted: rgba(175,184,193,.2);--color-neutral-subtle: rgba(234,238,242,.5);--color-accent-fg: #0969da;--color-accent-emphasis: #0969da;--color-accent-muted: rgba(84,174,255,.4);--color-accent-subtle: #ddf4ff;--color-success-fg: #1a7f37;--color-success-emphasis: #2da44e;--color-success-muted: rgba(74,194,107,.4);--color-success-subtle: #dafbe1;--color-attention-fg: #9a6700;--color-attention-emphasis: #bf8700;--color-attention-muted: rgba(212,167,44,.4);--color-attention-subtle: #fff8c5;--color-severe-fg: #bc4c00;--color-severe-emphasis: #bc4c00;--color-severe-muted: rgba(251,143,68,.4);--color-severe-subtle: #fff1e5;--color-danger-fg: #cf222e;--color-danger-emphasis: #cf222e;--color-danger-muted: rgba(255,129,130,.4);--color-danger-subtle: #FFEBE9;--color-done-fg: #8250df;--color-done-emphasis: #8250df;--color-done-muted: rgba(194,151,255,.4);--color-done-subtle: #fbefff;--color-sponsors-fg: #bf3989;--color-sponsors-emphasis: #bf3989;--color-sponsors-muted: rgba(255,128,200,.4);--color-sponsors-subtle: #ffeff7;--color-primer-canvas-backdrop: rgba(27,31,36,.5);--color-primer-canvas-sticky: rgba(255,255,255,.95);--color-primer-border-active: #FD8C73;--color-primer-border-contrast: rgba(27,31,36,.1);--color-primer-shadow-highlight: inset 0 1px 0 rgba(255,255,255,.25);--color-primer-shadow-inset: inset 0 1px 0 rgba(208,215,222,.2);--color-primer-shadow-focus: 0 0 0 3px rgba(9,105,218,.3);--color-scale-black: #1b1f24;--color-scale-white: #ffffff;--color-scale-gray-0: #f6f8fa;--color-scale-gray-1: #eaeef2;--color-scale-gray-2: #d0d7de;--color-scale-gray-3: #afb8c1;--color-scale-gray-4: #8c959f;--color-scale-gray-5: #6e7781;--color-scale-gray-6: #57606a;--color-scale-gray-7: #424a53;--color-scale-gray-8: #32383f;--color-scale-gray-9: #24292f;--color-scale-blue-0: #ddf4ff;--color-scale-blue-1: #b6e3ff;--color-scale-blue-2: #80ccff;--color-scale-blue-3: #54aeff;--color-scale-blue-4: #218bff;--color-scale-blue-5: #0969da;--color-scale-blue-6: #0550ae;--color-scale-blue-7: #033d8b;--color-scale-blue-8: #0a3069;--color-scale-blue-9: #002155;--color-scale-green-0: #dafbe1;--color-scale-green-1: #aceebb;--color-scale-green-2: #6fdd8b;--color-scale-green-3: #4ac26b;--color-scale-green-4: #2da44e;--color-scale-green-5: #1a7f37;--color-scale-green-6: #116329;--color-scale-green-7: #044f1e;--color-scale-green-8: #003d16;--color-scale-green-9: #002d11;--color-scale-yellow-0: #fff8c5;--color-scale-yellow-1: #fae17d;--color-scale-yellow-2: #eac54f;--color-scale-yellow-3: #d4a72c;--color-scale-yellow-4: #bf8700;--color-scale-yellow-5: #9a6700;--color-scale-yellow-6: #7d4e00;--color-scale-yellow-7: #633c01;--color-scale-yellow-8: #4d2d00;--color-scale-yellow-9: #3b2300;--color-scale-orange-0: #fff1e5;--color-scale-orange-1: #ffd8b5;--color-scale-orange-2: #ffb77c;--color-scale-orange-3: #fb8f44;--color-scale-orange-4: #e16f24;--color-scale-orange-5: #bc4c00;--color-scale-orange-6: #953800;--color-scale-orange-7: #762c00;--color-scale-orange-8: #5c2200;--color-scale-orange-9: #471700;--color-scale-red-0: #FFEBE9;--color-scale-red-1: #ffcecb;--color-scale-red-2: #ffaba8;--color-scale-red-3: #ff8182;--color-scale-red-4: #fa4549;--color-scale-red-5: #cf222e;--color-scale-red-6: #a40e26;--color-scale-red-7: #82071e;--color-scale-red-8: #660018;--color-scale-red-9: #4c0014;--color-scale-purple-0: #fbefff;--color-scale-purple-1: #ecd8ff;--color-scale-purple-2: #d8b9ff;--color-scale-purple-3: #c297ff;--color-scale-purple-4: #a475f9;--color-scale-purple-5: #8250df;--color-scale-purple-6: #6639ba;--color-scale-purple-7: #512a97;--color-scale-purple-8: #3e1f79;--color-scale-purple-9: #2e1461;--color-scale-pink-0: #ffeff7;--color-scale-pink-1: #ffd3eb;--color-scale-pink-2: #ffadda;--color-scale-pink-3: #ff80c8;--color-scale-pink-4: #e85aad;--color-scale-pink-5: #bf3989;--color-scale-pink-6: #99286e;--color-scale-pink-7: #772057;--color-scale-pink-8: #611347;--color-scale-pink-9: #4d0336;--color-scale-coral-0: #FFF0EB;--color-scale-coral-1: #FFD6CC;--color-scale-coral-2: #FFB4A1;--color-scale-coral-3: #FD8C73;--color-scale-coral-4: #EC6547;--color-scale-coral-5: #C4432B;--color-scale-coral-6: #9E2F1C;--color-scale-coral-7: #801F0F;--color-scale-coral-8: #691105;--color-scale-coral-9: #510901 }:root.dark-mode{color-scheme:dark;--color-canvas-default-transparent: rgba(13,17,23,0);--color-marketing-icon-primary: #79c0ff;--color-marketing-icon-secondary: #1f6feb;--color-diff-blob-addition-num-text: #c9d1d9;--color-diff-blob-addition-fg: #c9d1d9;--color-diff-blob-addition-num-bg: rgba(63,185,80,.3);--color-diff-blob-addition-line-bg: rgba(46,160,67,.15);--color-diff-blob-addition-word-bg: rgba(46,160,67,.4);--color-diff-blob-deletion-num-text: #c9d1d9;--color-diff-blob-deletion-fg: #c9d1d9;--color-diff-blob-deletion-num-bg: rgba(248,81,73,.3);--color-diff-blob-deletion-line-bg: rgba(248,81,73,.15);--color-diff-blob-deletion-word-bg: rgba(248,81,73,.4);--color-diff-blob-hunk-num-bg: rgba(56,139,253,.4);--color-diff-blob-expander-icon: #8b949e;--color-diff-blob-selected-line-highlight-mix-blend-mode: screen;--color-diffstat-deletion-border: rgba(240,246,252,.1);--color-diffstat-addition-border: rgba(240,246,252,.1);--color-diffstat-addition-bg: #3fb950;--color-search-keyword-hl: rgba(210,153,34,.4);--color-prettylights-syntax-comment: #8b949e;--color-prettylights-syntax-constant: #79c0ff;--color-prettylights-syntax-entity: #d2a8ff;--color-prettylights-syntax-storage-modifier-import: #c9d1d9;--color-prettylights-syntax-entity-tag: #7ee787;--color-prettylights-syntax-keyword: #ff7b72;--color-prettylights-syntax-string: #a5d6ff;--color-prettylights-syntax-variable: #ffa657;--color-prettylights-syntax-brackethighlighter-unmatched: #f85149;--color-prettylights-syntax-invalid-illegal-text: #f0f6fc;--color-prettylights-syntax-invalid-illegal-bg: #8e1519;--color-prettylights-syntax-carriage-return-text: #f0f6fc;--color-prettylights-syntax-carriage-return-bg: #b62324;--color-prettylights-syntax-string-regexp: #7ee787;--color-prettylights-syntax-markup-list: #f2cc60;--color-prettylights-syntax-markup-heading: #1f6feb;--color-prettylights-syntax-markup-italic: #c9d1d9;--color-prettylights-syntax-markup-bold: #c9d1d9;--color-prettylights-syntax-markup-deleted-text: #ffdcd7;--color-prettylights-syntax-markup-deleted-bg: #67060c;--color-prettylights-syntax-markup-inserted-text: #aff5b4;--color-prettylights-syntax-markup-inserted-bg: #033a16;--color-prettylights-syntax-markup-changed-text: #ffdfb6;--color-prettylights-syntax-markup-changed-bg: #5a1e02;--color-prettylights-syntax-markup-ignored-text: #c9d1d9;--color-prettylights-syntax-markup-ignored-bg: #1158c7;--color-prettylights-syntax-meta-diff-range: #d2a8ff;--color-prettylights-syntax-brackethighlighter-angle: #8b949e;--color-prettylights-syntax-sublimelinter-gutter-mark: #484f58;--color-prettylights-syntax-constant-other-reference-link: #a5d6ff;--color-codemirror-text: #c9d1d9;--color-codemirror-bg: #0d1117;--color-codemirror-gutters-bg: #0d1117;--color-codemirror-guttermarker-text: #0d1117;--color-codemirror-guttermarker-subtle-text: #484f58;--color-codemirror-linenumber-text: #8b949e;--color-codemirror-cursor: #c9d1d9;--color-codemirror-selection-bg: rgba(56,139,253,.4);--color-codemirror-activeline-bg: rgba(110,118,129,.1);--color-codemirror-matchingbracket-text: #c9d1d9;--color-codemirror-lines-bg: #0d1117;--color-codemirror-syntax-comment: #8b949e;--color-codemirror-syntax-constant: #79c0ff;--color-codemirror-syntax-entity: #d2a8ff;--color-codemirror-syntax-keyword: #ff7b72;--color-codemirror-syntax-storage: #ff7b72;--color-codemirror-syntax-string: #a5d6ff;--color-codemirror-syntax-support: #79c0ff;--color-codemirror-syntax-variable: #ffa657;--color-checks-bg: #010409;--color-checks-run-border-width: 1px;--color-checks-container-border-width: 1px;--color-checks-text-primary: #c9d1d9;--color-checks-text-secondary: #8b949e;--color-checks-text-link: #58a6ff;--color-checks-btn-icon: #8b949e;--color-checks-btn-hover-icon: #c9d1d9;--color-checks-btn-hover-bg: rgba(110,118,129,.1);--color-checks-input-text: #8b949e;--color-checks-input-placeholder-text: #484f58;--color-checks-input-focus-text: #c9d1d9;--color-checks-input-bg: #161b22;--color-checks-input-shadow: none;--color-checks-donut-error: #f85149;--color-checks-donut-pending: #d29922;--color-checks-donut-success: #2ea043;--color-checks-donut-neutral: #8b949e;--color-checks-dropdown-text: #c9d1d9;--color-checks-dropdown-bg: #161b22;--color-checks-dropdown-border: #30363d;--color-checks-dropdown-shadow: rgba(1,4,9,.3);--color-checks-dropdown-hover-text: #c9d1d9;--color-checks-dropdown-hover-bg: rgba(110,118,129,.1);--color-checks-dropdown-btn-hover-text: #c9d1d9;--color-checks-dropdown-btn-hover-bg: rgba(110,118,129,.1);--color-checks-scrollbar-thumb-bg: rgba(110,118,129,.4);--color-checks-header-label-text: #8b949e;--color-checks-header-label-open-text: #c9d1d9;--color-checks-header-border: #21262d;--color-checks-header-icon: #8b949e;--color-checks-line-text: #8b949e;--color-checks-line-num-text: #484f58;--color-checks-line-timestamp-text: #484f58;--color-checks-line-hover-bg: rgba(110,118,129,.1);--color-checks-line-selected-bg: rgba(56,139,253,.15);--color-checks-line-selected-num-text: #58a6ff;--color-checks-line-dt-fm-text: #f0f6fc;--color-checks-line-dt-fm-bg: #9e6a03;--color-checks-gate-bg: rgba(187,128,9,.15);--color-checks-gate-text: #8b949e;--color-checks-gate-waiting-text: #d29922;--color-checks-step-header-open-bg: #161b22;--color-checks-step-error-text: #f85149;--color-checks-step-warning-text: #d29922;--color-checks-logline-text: #8b949e;--color-checks-logline-num-text: #484f58;--color-checks-logline-debug-text: #a371f7;--color-checks-logline-error-text: #8b949e;--color-checks-logline-error-num-text: #484f58;--color-checks-logline-error-bg: rgba(248,81,73,.15);--color-checks-logline-warning-text: #8b949e;--color-checks-logline-warning-num-text: #d29922;--color-checks-logline-warning-bg: rgba(187,128,9,.15);--color-checks-logline-command-text: #58a6ff;--color-checks-logline-section-text: #3fb950;--color-checks-ansi-black: #0d1117;--color-checks-ansi-black-bright: #161b22;--color-checks-ansi-white: #b1bac4;--color-checks-ansi-white-bright: #b1bac4;--color-checks-ansi-gray: #6e7681;--color-checks-ansi-red: #ff7b72;--color-checks-ansi-red-bright: #ffa198;--color-checks-ansi-green: #3fb950;--color-checks-ansi-green-bright: #56d364;--color-checks-ansi-yellow: #d29922;--color-checks-ansi-yellow-bright: #e3b341;--color-checks-ansi-blue: #58a6ff;--color-checks-ansi-blue-bright: #79c0ff;--color-checks-ansi-magenta: #bc8cff;--color-checks-ansi-magenta-bright: #d2a8ff;--color-checks-ansi-cyan: #76e3ea;--color-checks-ansi-cyan-bright: #b3f0ff;--color-project-header-bg: #0d1117;--color-project-sidebar-bg: #161b22;--color-project-gradient-in: #161b22;--color-project-gradient-out: rgba(22,27,34,0);--color-mktg-success: rgba(41,147,61,1);--color-mktg-info: rgba(42,123,243,1);--color-mktg-bg-shade-gradient-top: rgba(1,4,9,.065);--color-mktg-bg-shade-gradient-bottom: rgba(1,4,9,0);--color-mktg-btn-bg-top: hsla(228,82%,66%,1);--color-mktg-btn-bg-bottom: #4969ed;--color-mktg-btn-bg-overlay-top: hsla(228,74%,59%,1);--color-mktg-btn-bg-overlay-bottom: #3355e0;--color-mktg-btn-text: #f0f6fc;--color-mktg-btn-primary-bg-top: hsla(137,56%,46%,1);--color-mktg-btn-primary-bg-bottom: #2ea44f;--color-mktg-btn-primary-bg-overlay-top: hsla(134,60%,38%,1);--color-mktg-btn-primary-bg-overlay-bottom: #22863a;--color-mktg-btn-primary-text: #f0f6fc;--color-mktg-btn-enterprise-bg-top: hsla(249,100%,72%,1);--color-mktg-btn-enterprise-bg-bottom: #6f57ff;--color-mktg-btn-enterprise-bg-overlay-top: hsla(248,65%,63%,1);--color-mktg-btn-enterprise-bg-overlay-bottom: #614eda;--color-mktg-btn-enterprise-text: #f0f6fc;--color-mktg-btn-outline-text: #f0f6fc;--color-mktg-btn-outline-border: rgba(240,246,252,.3);--color-mktg-btn-outline-hover-text: #f0f6fc;--color-mktg-btn-outline-hover-border: rgba(240,246,252,.5);--color-mktg-btn-outline-focus-border: #f0f6fc;--color-mktg-btn-outline-focus-border-inset: rgba(240,246,252,.5);--color-mktg-btn-dark-text: #f0f6fc;--color-mktg-btn-dark-border: rgba(240,246,252,.3);--color-mktg-btn-dark-hover-text: #f0f6fc;--color-mktg-btn-dark-hover-border: rgba(240,246,252,.5);--color-mktg-btn-dark-focus-border: #f0f6fc;--color-mktg-btn-dark-focus-border-inset: rgba(240,246,252,.5);--color-avatar-bg: rgba(240,246,252,.1);--color-avatar-border: rgba(240,246,252,.1);--color-avatar-stack-fade: #30363d;--color-avatar-stack-fade-more: #21262d;--color-avatar-child-shadow: -2px -2px 0 #0d1117;--color-topic-tag-border: rgba(0,0,0,0);--color-select-menu-backdrop-border: #484f58;--color-select-menu-tap-highlight: rgba(48,54,61,.5);--color-select-menu-tap-focus-bg: #0c2d6b;--color-overlay-shadow: 0 0 0 1px #30363d, 0 16px 32px rgba(1,4,9,.85);--color-header-text: rgba(240,246,252,.7);--color-header-bg: #161b22;--color-header-logo: #f0f6fc;--color-header-search-bg: #0d1117;--color-header-search-border: #30363d;--color-sidenav-selected-bg: #21262d;--color-menu-bg-active: #161b22;--color-control-transparent-bg-hover: #656c7633;--color-input-disabled-bg: rgba(110,118,129,0);--color-timeline-badge-bg: #21262d;--color-ansi-black: #484f58;--color-ansi-black-bright: #6e7681;--color-ansi-white: #b1bac4;--color-ansi-white-bright: #f0f6fc;--color-ansi-gray: #6e7681;--color-ansi-red: #ff7b72;--color-ansi-red-bright: #ffa198;--color-ansi-green: #3fb950;--color-ansi-green-bright: #56d364;--color-ansi-yellow: #d29922;--color-ansi-yellow-bright: #e3b341;--color-ansi-blue: #58a6ff;--color-ansi-blue-bright: #79c0ff;--color-ansi-magenta: #bc8cff;--color-ansi-magenta-bright: #d2a8ff;--color-ansi-cyan: #39c5cf;--color-ansi-cyan-bright: #56d4dd;--color-btn-text: #c9d1d9;--color-btn-bg: #21262d;--color-btn-border: rgba(240,246,252,.1);--color-btn-shadow: 0 0 transparent;--color-btn-inset-shadow: 0 0 transparent;--color-btn-hover-bg: #30363d;--color-btn-hover-border: #8b949e;--color-btn-active-bg: hsla(212,12%,18%,1);--color-btn-active-border: #6e7681;--color-btn-selected-bg: #161b22;--color-btn-focus-bg: #21262d;--color-btn-focus-border: #8b949e;--color-btn-focus-shadow: 0 0 0 3px rgba(139,148,158,.3);--color-btn-shadow-active: inset 0 .15em .3em rgba(1,4,9,.15);--color-btn-shadow-input-focus: 0 0 0 .2em rgba(31,111,235,.3);--color-btn-counter-bg: #30363d;--color-btn-primary-text: #ffffff;--color-btn-primary-bg: #238636;--color-btn-primary-border: rgba(240,246,252,.1);--color-btn-primary-shadow: 0 0 transparent;--color-btn-primary-inset-shadow: 0 0 transparent;--color-btn-primary-hover-bg: #2ea043;--color-btn-primary-hover-border: rgba(240,246,252,.1);--color-btn-primary-selected-bg: #238636;--color-btn-primary-selected-shadow: 0 0 transparent;--color-btn-primary-disabled-text: rgba(240,246,252,.5);--color-btn-primary-disabled-bg: rgba(35,134,54,.6);--color-btn-primary-disabled-border: rgba(240,246,252,.1);--color-btn-primary-focus-bg: #238636;--color-btn-primary-focus-border: rgba(240,246,252,.1);--color-btn-primary-focus-shadow: 0 0 0 3px rgba(46,164,79,.4);--color-btn-primary-icon: #f0f6fc;--color-btn-primary-counter-bg: rgba(240,246,252,.2);--color-btn-outline-text: #58a6ff;--color-btn-outline-hover-text: #58a6ff;--color-btn-outline-hover-bg: #30363d;--color-btn-outline-hover-border: rgba(240,246,252,.1);--color-btn-outline-hover-shadow: 0 1px 0 rgba(1,4,9,.1);--color-btn-outline-hover-inset-shadow: inset 0 1px 0 rgba(240,246,252,.03);--color-btn-outline-hover-counter-bg: rgba(240,246,252,.2);--color-btn-outline-selected-text: #f0f6fc;--color-btn-outline-selected-bg: #0d419d;--color-btn-outline-selected-border: rgba(240,246,252,.1);--color-btn-outline-selected-shadow: 0 0 transparent;--color-btn-outline-disabled-text: rgba(88,166,255,.5);--color-btn-outline-disabled-bg: #0d1117;--color-btn-outline-disabled-counter-bg: rgba(31,111,235,.05);--color-btn-outline-focus-border: rgba(240,246,252,.1);--color-btn-outline-focus-shadow: 0 0 0 3px rgba(17,88,199,.4);--color-btn-outline-counter-bg: rgba(31,111,235,.1);--color-btn-danger-text: #f85149;--color-btn-danger-hover-text: #f0f6fc;--color-btn-danger-hover-bg: #da3633;--color-btn-danger-hover-border: #f85149;--color-btn-danger-hover-shadow: 0 0 transparent;--color-btn-danger-hover-inset-shadow: 0 0 transparent;--color-btn-danger-hover-icon: #f0f6fc;--color-btn-danger-hover-counter-bg: rgba(255,255,255,.2);--color-btn-danger-selected-text: #ffffff;--color-btn-danger-selected-bg: #b62324;--color-btn-danger-selected-border: #ff7b72;--color-btn-danger-selected-shadow: 0 0 transparent;--color-btn-danger-disabled-text: rgba(248,81,73,.5);--color-btn-danger-disabled-bg: #0d1117;--color-btn-danger-disabled-counter-bg: rgba(218,54,51,.05);--color-btn-danger-focus-border: #f85149;--color-btn-danger-focus-shadow: 0 0 0 3px rgba(248,81,73,.4);--color-btn-danger-counter-bg: rgba(218,54,51,.1);--color-btn-danger-icon: #f85149;--color-underlinenav-icon: #484f58;--color-underlinenav-border-hover: rgba(110,118,129,.4);--color-fg-default: #c9d1d9;--color-fg-muted: #8b949e;--color-fg-subtle: #484f58;--color-fg-on-emphasis: #f0f6fc;--color-canvas-default: #0d1117;--color-canvas-overlay: #161b22;--color-canvas-inset: #010409;--color-canvas-subtle: #161b22;--color-border-default: #30363d;--color-border-muted: #21262d;--color-border-subtle: rgba(240,246,252,.1);--color-shadow-small: 0 0 transparent;--color-shadow-medium: 0 3px 6px #010409;--color-shadow-large: 0 8px 24px #010409;--color-shadow-extra-large: 0 12px 48px #010409;--color-neutral-emphasis-plus: #6e7681;--color-neutral-emphasis: #6e7681;--color-neutral-muted: rgba(110,118,129,.4);--color-neutral-subtle: rgba(110,118,129,.1);--color-accent-fg: #58a6ff;--color-accent-emphasis: #1f6feb;--color-accent-muted: rgba(56,139,253,.4);--color-accent-subtle: rgba(56,139,253,.15);--color-success-fg: #3fb950;--color-success-emphasis: #238636;--color-success-muted: rgba(46,160,67,.4);--color-success-subtle: rgba(46,160,67,.15);--color-attention-fg: #d29922;--color-attention-emphasis: #9e6a03;--color-attention-muted: rgba(187,128,9,.4);--color-attention-subtle: rgba(187,128,9,.15);--color-severe-fg: #db6d28;--color-severe-emphasis: #bd561d;--color-severe-muted: rgba(219,109,40,.4);--color-severe-subtle: rgba(219,109,40,.15);--color-danger-fg: #f85149;--color-danger-emphasis: #da3633;--color-danger-muted: rgba(248,81,73,.4);--color-danger-subtle: rgba(248,81,73,.15);--color-done-fg: #a371f7;--color-done-emphasis: #8957e5;--color-done-muted: rgba(163,113,247,.4);--color-done-subtle: rgba(163,113,247,.15);--color-sponsors-fg: #db61a2;--color-sponsors-emphasis: #bf4b8a;--color-sponsors-muted: rgba(219,97,162,.4);--color-sponsors-subtle: rgba(219,97,162,.15);--color-primer-canvas-backdrop: rgba(1,4,9,.8);--color-primer-canvas-sticky: rgba(13,17,23,.95);--color-primer-border-active: #F78166;--color-primer-border-contrast: rgba(240,246,252,.2);--color-primer-shadow-highlight: 0 0 transparent;--color-primer-shadow-inset: 0 0 transparent;--color-primer-shadow-focus: 0 0 0 3px #0c2d6b;--color-scale-black: #010409;--color-scale-white: #f0f6fc;--color-scale-gray-0: #f0f6fc;--color-scale-gray-1: #c9d1d9;--color-scale-gray-2: #b1bac4;--color-scale-gray-3: #8b949e;--color-scale-gray-4: #6e7681;--color-scale-gray-5: #484f58;--color-scale-gray-6: #30363d;--color-scale-gray-7: #21262d;--color-scale-gray-8: #161b22;--color-scale-gray-9: #0d1117;--color-scale-blue-0: #cae8ff;--color-scale-blue-1: #a5d6ff;--color-scale-blue-2: #79c0ff;--color-scale-blue-3: #58a6ff;--color-scale-blue-4: #388bfd;--color-scale-blue-5: #1f6feb;--color-scale-blue-6: #1158c7;--color-scale-blue-7: #0d419d;--color-scale-blue-8: #0c2d6b;--color-scale-blue-9: #051d4d;--color-scale-green-0: #aff5b4;--color-scale-green-1: #7ee787;--color-scale-green-2: #56d364;--color-scale-green-3: #3fb950;--color-scale-green-4: #2ea043;--color-scale-green-5: #238636;--color-scale-green-6: #196c2e;--color-scale-green-7: #0f5323;--color-scale-green-8: #033a16;--color-scale-green-9: #04260f;--color-scale-yellow-0: #f8e3a1;--color-scale-yellow-1: #f2cc60;--color-scale-yellow-2: #e3b341;--color-scale-yellow-3: #d29922;--color-scale-yellow-4: #bb8009;--color-scale-yellow-5: #9e6a03;--color-scale-yellow-6: #845306;--color-scale-yellow-7: #693e00;--color-scale-yellow-8: #4b2900;--color-scale-yellow-9: #341a00;--color-scale-orange-0: #ffdfb6;--color-scale-orange-1: #ffc680;--color-scale-orange-2: #ffa657;--color-scale-orange-3: #f0883e;--color-scale-orange-4: #db6d28;--color-scale-orange-5: #bd561d;--color-scale-orange-6: #9b4215;--color-scale-orange-7: #762d0a;--color-scale-orange-8: #5a1e02;--color-scale-orange-9: #3d1300;--color-scale-red-0: #ffdcd7;--color-scale-red-1: #ffc1ba;--color-scale-red-2: #ffa198;--color-scale-red-3: #ff7b72;--color-scale-red-4: #f85149;--color-scale-red-5: #da3633;--color-scale-red-6: #b62324;--color-scale-red-7: #8e1519;--color-scale-red-8: #67060c;--color-scale-red-9: #490202;--color-scale-purple-0: #eddeff;--color-scale-purple-1: #e2c5ff;--color-scale-purple-2: #d2a8ff;--color-scale-purple-3: #bc8cff;--color-scale-purple-4: #a371f7;--color-scale-purple-5: #8957e5;--color-scale-purple-6: #6e40c9;--color-scale-purple-7: #553098;--color-scale-purple-8: #3c1e70;--color-scale-purple-9: #271052;--color-scale-pink-0: #ffdaec;--color-scale-pink-1: #ffbedd;--color-scale-pink-2: #ff9bce;--color-scale-pink-3: #f778ba;--color-scale-pink-4: #db61a2;--color-scale-pink-5: #bf4b8a;--color-scale-pink-6: #9e3670;--color-scale-pink-7: #7d2457;--color-scale-pink-8: #5e103e;--color-scale-pink-9: #42062a;--color-scale-coral-0: #FFDDD2;--color-scale-coral-1: #FFC2B2;--color-scale-coral-2: #FFA28B;--color-scale-coral-3: #F78166;--color-scale-coral-4: #EA6045;--color-scale-coral-5: #CF462D;--color-scale-coral-6: #AC3220;--color-scale-coral-7: #872012;--color-scale-coral-8: #640D04;--color-scale-coral-9: #460701 }:root{--box-shadow: rgba(0, 0, 0, .133) 0px 1.6px 3.6px 0px, rgba(0, 0, 0, .11) 0px .3px .9px 0px;--box-shadow-thick: rgb(0 0 0 / 10%) 0px 1.8px 1.9px, rgb(0 0 0 / 15%) 0px 6.1px 6.3px, rgb(0 0 0 / 10%) 0px -2px 4px, rgb(0 0 0 / 15%) 0px -6.1px 12px, rgb(0 0 0 / 25%) 0px 6px 12px}*{box-sizing:border-box;min-width:0;min-height:0}svg{fill:currentColor}.vbox{display:flex;flex-direction:column;flex:auto;position:relative}.hbox{display:flex;flex:auto;position:relative}.hidden{visibility:hidden}.d-flex{display:flex!important}.d-inline{display:inline!important}.m-1{margin:4px}.m-2{margin:8px}.m-3{margin:16px}.m-4{margin:24px}.m-5{margin:32px}.mx-1{margin:0 4px}.mx-2{margin:0 8px}.mx-3{margin:0 16px}.mx-4{margin:0 24px}.mx-5{margin:0 32px}.my-1{margin:4px 0}.my-2{margin:8px 0}.my-3{margin:16px 0}.my-4{margin:24px 0}.my-5{margin:32px 0}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:16px}.mt-4{margin-top:24px}.mt-5{margin-top:32px}.mr-1{margin-right:4px}.mr-2{margin-right:8px}.mr-3{margin-right:16px}.mr-4{margin-right:24px}.mr-5{margin-right:32px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:16px}.mb-4{margin-bottom:24px}.mb-5{margin-bottom:32px}.ml-1{margin-left:4px}.ml-2{margin-left:8px}.ml-3{margin-left:16px}.ml-4{margin-left:24px}.ml-5{margin-left:32px}.p-1{padding:4px}.p-2{padding:8px}.p-3{padding:16px}.p-4{padding:24px}.p-5{padding:32px}.px-1{padding:0 4px}.px-2{padding:0 8px}.px-3{padding:0 16px}.px-4{padding:0 24px}.px-5{padding:0 32px}.py-1{padding:4px 0}.py-2{padding:8px 0}.py-3{padding:16px 0}.py-4{padding:24px 0}.py-5{padding:32px 0}.pt-1{padding-top:4px}.pt-2{padding-top:8px}.pt-3{padding-top:16px}.pt-4{padding-top:24px}.pt-5{padding-top:32px}.pr-1{padding-right:4px}.pr-2{padding-right:8px}.pr-3{padding-right:16px}.pr-4{padding-right:24px}.pr-5{padding-right:32px}.pb-1{padding-bottom:4px}.pb-2{padding-bottom:8px}.pb-3{padding-bottom:16px}.pb-4{padding-bottom:24px}.pb-5{padding-bottom:32px}.pl-1{padding-left:4px}.pl-2{padding-left:8px}.pl-3{padding-left:16px}.pl-4{padding-left:24px}.pl-5{padding-left:32px}.no-wrap{white-space:nowrap!important}.float-left{float:left!important}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section{display:block}.form-control,.form-select{padding:5px 12px;font-size:14px;line-height:20px;color:var(--color-fg-default);vertical-align:middle;background-color:var(--color-canvas-default);background-repeat:no-repeat;background-position:right 8px center;border:1px solid var(--color-border-default);border-radius:6px;outline:none;box-shadow:var(--color-primer-shadow-inset)}.input-contrast{background-color:var(--color-canvas-inset)}.subnav-search{position:relative;flex:auto;display:flex}.subnav-search-input{flex:auto;padding-left:32px;color:var(--color-fg-muted)}.subnav-search-icon{position:absolute;top:9px;left:8px;display:block;color:var(--color-fg-muted);text-align:center;pointer-events:none}.subnav-search-context+.subnav-search{margin-left:-1px}.subnav-item{flex:none;position:relative;float:left;padding:5px 8px;font-weight:500;line-height:20px;color:var(--color-fg-default);border:1px solid var(--color-border-default);-webkit-user-select:none;user-select:none}.subnav-item:hover{background-color:var(--color-canvas-subtle)}.subnav-item[aria-selected=true]{background:var(--color-control-transparent-bg-hover)}.subnav-item:first-child{border-top-left-radius:6px;border-bottom-left-radius:6px}.subnav-item:last-child{border-top-right-radius:6px;border-bottom-right-radius:6px}.subnav-item+.subnav-item{margin-left:-1px}.subnav-item .octicon,.subnav-item-label{margin-right:8px}.counter{display:inline-block;min-width:20px;padding:0 6px;font-size:12px;font-weight:500;line-height:18px;color:var(--color-fg-default);text-align:center;background-color:var(--color-neutral-muted);border:1px solid transparent;border-radius:2em}.color-icon-success{color:var(--color-success-fg)!important}.color-text-danger{color:var(--color-danger-fg)!important}.color-text-warning{color:var(--color-checks-step-warning-text)!important}.color-fg-muted{color:var(--color-fg-muted)!important}.octicon{display:inline-block;overflow:visible!important;vertical-align:text-bottom;fill:currentColor;margin-right:7px;flex:none}.button{flex:none;height:24px;border:1px solid var(--color-btn-border);outline:none;color:var(--color-btn-text);background:var(--color-btn-bg);padding:4px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border-radius:4px}.button:not(:disabled):hover{border-color:var(--color-btn-hover-border);background-color:var(--color-btn-hover-bg)}input[type=checkbox]{outline:var(--color-focus-border);height:24px}dialog{background-color:var(--color-canvas-subtle);border:1px solid var(--color-border-default);border-radius:6px;padding:6px}.subnav-item .octicon.octicon-settings{margin-right:0}.subnav-item .octicon.octicon-clock{margin-right:0;color:var(--color-fg-default)!important}@media only screen and (max-width: 600px){.subnav-item,.form-control{border-radius:0!important}.subnav-item{border:none}.subnav-search-input{border-left:0;border-right:0}}.header-view-status-container{float:right}.header-view{padding:12px 8px 0}.header-view div{flex-shrink:0;flex-wrap:wrap}.header-superheader{color:var(--color-fg-muted)}.header-title{flex:none;font-weight:400;font-size:32px;line-height:1.25}.header-setting-theme{display:grid;margin-left:22px}@media only screen and (max-width: 600px){.header-view{padding:0}.header-view div{flex-shrink:1}.header-view-status-container{float:none;margin:0 0 10px!important;overflow:hidden}.header-view-status-container .subnav-search-input{border-left:none;border-right:none}.header-title,.header-superheader{margin:0 8px}}.copy-icon{flex:none;height:24px;width:24px;border:none;outline:none;color:var(--color-fg-muted);background:transparent;padding:4px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border-radius:4px}.copy-icon svg{margin:0}.copy-icon:not(:disabled):hover{background-color:var(--color-border-default)}.copy-button-container{visibility:hidden;display:inline-flex;margin-left:8px;vertical-align:bottom}.copy-value-container:hover .copy-button-container{visibility:visible}.attachment-body{white-space:pre-wrap;background-color:var(--color-canvas-subtle);margin-left:24px;line-height:normal;padding:8px;font-family:monospace;position:relative}.attachment-body .copy-icon{position:absolute;right:5px;top:5px}.attachment-flash{animation:attachmentflash-bg 2s}@keyframes attachmentflash-bg{0%{background:var(--color-attention-subtle)}to{background:transparent}}.link-badge{flex:none;background-color:transparent;border-color:transparent;-webkit-user-select:none;user-select:none}.link-badge-dim span{color:var(--color-fg-muted)}.link-badge:hover{cursor:pointer}.link-badge svg{fill:var(--color-fg-default)}.link-badge-dim svg{fill:var(--color-fg-muted)}.link-badge-dim:hover svg{fill:var(--color-fg-muted)}.fullwidth-link{width:100%;text-align:left}.fullwidth-link:hover{background-color:var(--color-canvas-subtle)}.trace-link{margin-right:3px}.trace-link-separator{color:var(--color-fg-muted);-webkit-user-select:none;user-select:none}.expandable-summary{cursor:pointer;list-style:none;white-space:nowrap;padding-left:4px}.label{display:inline-block;padding:0 8px;font-size:12px;font-weight:500;line-height:18px;border:1px solid transparent;border-radius:2em;background-color:var(--color-scale-gray-4);color:#fff;margin:0 10px;flex:none;font-weight:600;cursor:pointer}.label-anchor{text-decoration:none;color:var(--color-fg-default)}:root.light-mode .label-color-0{background-color:var(--color-scale-blue-0);color:var(--color-scale-blue-6);border:1px solid var(--color-scale-blue-4)}:root.light-mode .label-color-1{background-color:var(--color-scale-yellow-0);color:var(--color-scale-yellow-6);border:1px solid var(--color-scale-yellow-4)}:root.light-mode .label-color-2{background-color:var(--color-scale-purple-0);color:var(--color-scale-purple-6);border:1px solid var(--color-scale-purple-4)}:root.light-mode .label-color-3{background-color:var(--color-scale-pink-0);color:var(--color-scale-pink-6);border:1px solid var(--color-scale-pink-4)}:root.light-mode .label-color-4{background-color:var(--color-scale-coral-0);color:var(--color-scale-coral-6);border:1px solid var(--color-scale-coral-4)}:root.light-mode .label-color-5{background-color:var(--color-scale-orange-0);color:var(--color-scale-orange-6);border:1px solid var(--color-scale-orange-4)}:root.dark-mode .label-color-0{background-color:var(--color-scale-blue-9);color:var(--color-scale-blue-2);border:1px solid var(--color-scale-blue-4)}:root.dark-mode .label-color-1{background-color:var(--color-scale-yellow-9);color:var(--color-scale-yellow-2);border:1px solid var(--color-scale-yellow-4)}:root.dark-mode .label-color-2{background-color:var(--color-scale-purple-9);color:var(--color-scale-purple-2);border:1px solid var(--color-scale-purple-4)}:root.dark-mode .label-color-3{background-color:var(--color-scale-pink-9);color:var(--color-scale-pink-2);border:1px solid var(--color-scale-pink-4)}:root.dark-mode .label-color-4{background-color:var(--color-scale-coral-9);color:var(--color-scale-coral-2);border:1px solid var(--color-scale-coral-4)}:root.dark-mode .label-color-5{background-color:var(--color-scale-orange-9);color:var(--color-scale-orange-2);border:1px solid var(--color-scale-orange-4)}.label-row .label{margin:0}.label-row .label:not(:first-child){margin-left:6px}html,body{width:100%;height:100%;padding:0;margin:0;overscroll-behavior-x:none}body{overflow:auto;max-width:1024px;margin:0 auto;width:100%}.test-file-test:not(:first-child){border-top:1px solid var(--color-border-default)}@media only screen and (max-width: 600px){.htmlreport{padding:0!important}}.tabbed-pane{display:flex;flex:auto;overflow:hidden}.tabbed-pane-tab-strip{display:flex;align-items:center;padding-right:10px;flex:none;width:100%;z-index:2;font-size:14px;line-height:32px;color:var(--color-fg-default);height:48px;min-width:70px;box-shadow:inset 0 -1px 0 var(--color-border-muted)!important}.tabbed-pane-tab-strip:focus{outline:none}.tabbed-pane-tab-element{padding:4px 8px 0;margin-right:4px;cursor:pointer;display:flex;flex:none;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;border-bottom:2px solid transparent;outline:none;height:100%}.tabbed-pane-tab-label{max-width:250px;white-space:pre;overflow:hidden;text-overflow:ellipsis;display:inline-block;height:30px;padding:0 8px;border-radius:6px}.tabbed-pane-tab-label:hover{background-color:var(--color-control-transparent-bg-hover)}.tabbed-pane-tab-element.selected{border-bottom-color:#666;-webkit-text-stroke:.5px currentColor}.chip-header{border:1px solid var(--color-border-default);border-top-left-radius:6px;border-top-right-radius:6px;background-color:var(--color-canvas-subtle);padding:0 8px;border-bottom:none;margin-top:12px;font-weight:600;line-height:38px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.chip-header-allow-selection{-webkit-user-select:text;user-select:text}.chip-header.expanded-false{border:1px solid var(--color-border-default);border-radius:6px}.chip-header.expanded-false,.chip-header.expanded-true{cursor:pointer}.chip-body{border:1px solid var(--color-border-default);border-bottom-left-radius:6px;border-bottom-right-radius:6px;padding:16px;margin-bottom:12px;overflow:hidden}.chip-body-no-insets{padding:0}.chip-footer{border-top:1px solid var(--color-border-default)}@media only screen and (max-width: 600px){.chip-header{border-radius:0;border-right:none;border-left:none}.chip-body{border-radius:0;border-right:none;border-left:none;padding:8px}.chip-body-no-insets{padding:0}}.test-case-column{border-radius:6px;margin-bottom:24px}.test-case-column .tab-element.selected{font-weight:600;border-bottom-color:var(--color-primer-border-active)}.test-case-column .tab-element{border:none;color:var(--color-fg-default);border-bottom:2px solid transparent}.test-case-column .tab-element:hover{color:var(--color-fg-default)}.test-case-location,.test-case-duration{flex:none;align-items:center;padding:0 8px 8px}.selected .test-case-run-duration{-webkit-text-stroke:0}.test-case-run-duration{color:var(--color-fg-muted);padding-left:8px}.header-view .test-case-path{flex:none;flex-shrink:1;align-items:center;padding-right:8px}.test-case-annotation{flex:none;align-items:center;padding:0 8px;line-height:24px;white-space:pre-wrap}@media only screen and (max-width: 600px){.test-case-column{border-radius:0!important;margin:0!important}}.tree-item{display:flex;flex-direction:column;overflow:hidden;min-width:0;line-height:38px}.tree-item-title{cursor:pointer;overflow:hidden;text-overflow:ellipsis;min-width:0;display:flex;align-items:center}.tree-item-body{min-height:18px}.yellow-flash{animation:yellowflash-bg 2s}@keyframes yellowflash-bg{0%{background:var(--color-attention-subtle)}to{background:transparent}}:root{--vscode-font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif;--vscode-font-weight: normal;--vscode-font-size: 13px;--vscode-editor-font-family: "Droid Sans Mono", "monospace", monospace;--vscode-editor-font-weight: normal;--vscode-editor-font-size: 14px;--vscode-foreground: #616161;--vscode-disabledForeground: rgba(97, 97, 97, .5);--vscode-errorForeground: #a1260d;--vscode-descriptionForeground: #717171;--vscode-icon-foreground: #424242;--vscode-focusBorder: #0090f1;--vscode-textSeparator-foreground: rgba(0, 0, 0, .18);--vscode-textLink-foreground: #006ab1;--vscode-textLink-activeForeground: #006ab1;--vscode-textPreformat-foreground: #a31515;--vscode-textBlockQuote-background: rgba(127, 127, 127, .1);--vscode-textBlockQuote-border: rgba(0, 122, 204, .5);--vscode-textCodeBlock-background: rgba(220, 220, 220, .4);--vscode-widget-shadow: rgba(0, 0, 0, .16);--vscode-input-background: #ffffff;--vscode-input-foreground: #616161;--vscode-inputOption-activeBorder: #007acc;--vscode-inputOption-hoverBackground: rgba(184, 184, 184, .31);--vscode-inputOption-activeBackground: rgba(0, 144, 241, .2);--vscode-inputOption-activeForeground: #000000;--vscode-input-placeholderForeground: #767676;--vscode-inputValidation-infoBackground: #d6ecf2;--vscode-inputValidation-infoBorder: #007acc;--vscode-inputValidation-warningBackground: #f6f5d2;--vscode-inputValidation-warningBorder: #b89500;--vscode-inputValidation-errorBackground: #f2dede;--vscode-inputValidation-errorBorder: #be1100;--vscode-dropdown-background: #ffffff;--vscode-dropdown-border: #cecece;--vscode-checkbox-background: #ffffff;--vscode-checkbox-border: #cecece;--vscode-button-foreground: #ffffff;--vscode-button-separator: rgba(255, 255, 255, .4);--vscode-button-background: #007acc;--vscode-button-hoverBackground: #0062a3;--vscode-button-secondaryForeground: #ffffff;--vscode-button-secondaryBackground: #5f6a79;--vscode-button-secondaryHoverBackground: #4c5561;--vscode-badge-background: #c4c4c4;--vscode-badge-foreground: #333333;--vscode-scrollbar-shadow: #dddddd;--vscode-scrollbarSlider-background: rgba(100, 100, 100, .4);--vscode-scrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-scrollbarSlider-activeBackground: rgba(0, 0, 0, .6);--vscode-progressBar-background: #0e70c0;--vscode-editorError-foreground: #e51400;--vscode-editorWarning-foreground: #bf8803;--vscode-editorInfo-foreground: #1a85ff;--vscode-editorHint-foreground: #6c6c6c;--vscode-sash-hoverBorder: #0090f1;--vscode-editor-background: #ffffff;--vscode-editor-foreground: #000000;--vscode-editorStickyScroll-background: #ffffff;--vscode-editorStickyScrollHover-background: #f0f0f0;--vscode-editorWidget-background: #f3f3f3;--vscode-editorWidget-foreground: #616161;--vscode-editorWidget-border: #c8c8c8;--vscode-quickInput-background: #f3f3f3;--vscode-quickInput-foreground: #616161;--vscode-quickInputTitle-background: rgba(0, 0, 0, .06);--vscode-pickerGroup-foreground: #0066bf;--vscode-pickerGroup-border: #cccedb;--vscode-keybindingLabel-background: rgba(221, 221, 221, .4);--vscode-keybindingLabel-foreground: #555555;--vscode-keybindingLabel-border: rgba(204, 204, 204, .4);--vscode-keybindingLabel-bottomBorder: rgba(187, 187, 187, .4);--vscode-editor-selectionBackground: #add6ff;--vscode-editor-inactiveSelectionBackground: #e5ebf1;--vscode-editor-selectionHighlightBackground: rgba(173, 214, 255, .5);--vscode-editor-findMatchBackground: #a8ac94;--vscode-editor-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-editor-findRangeHighlightBackground: rgba(180, 180, 180, .3);--vscode-searchEditor-findMatchBackground: rgba(234, 92, 0, .22);--vscode-editor-hoverHighlightBackground: rgba(173, 214, 255, .15);--vscode-editorHoverWidget-background: #f3f3f3;--vscode-editorHoverWidget-foreground: #616161;--vscode-editorHoverWidget-border: #c8c8c8;--vscode-editorHoverWidget-statusBarBackground: #e7e7e7;--vscode-editorLink-activeForeground: #0000ff;--vscode-editorInlayHint-foreground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-background: rgba(196, 196, 196, .3);--vscode-editorInlayHint-typeForeground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-typeBackground: rgba(196, 196, 196, .3);--vscode-editorInlayHint-parameterForeground: rgba(51, 51, 51, .8);--vscode-editorInlayHint-parameterBackground: rgba(196, 196, 196, .3);--vscode-editorLightBulb-foreground: #ddb100;--vscode-editorLightBulbAutoFix-foreground: #007acc;--vscode-diffEditor-insertedTextBackground: rgba(156, 204, 44, .4);--vscode-diffEditor-removedTextBackground: rgba(255, 0, 0, .3);--vscode-diffEditor-insertedLineBackground: rgba(155, 185, 85, .2);--vscode-diffEditor-removedLineBackground: rgba(255, 0, 0, .2);--vscode-diffEditor-diagonalFill: rgba(34, 34, 34, .2);--vscode-list-focusOutline: #0090f1;--vscode-list-focusAndSelectionOutline: #90c2f9;--vscode-list-activeSelectionBackground: #0060c0;--vscode-list-activeSelectionForeground: #ffffff;--vscode-list-activeSelectionIconForeground: #ffffff;--vscode-list-inactiveSelectionBackground: #e4e6f1;--vscode-list-hoverBackground: #e8e8e8;--vscode-list-dropBackground: #d6ebff;--vscode-list-highlightForeground: #0066bf;--vscode-list-focusHighlightForeground: #bbe7ff;--vscode-list-invalidItemForeground: #b89500;--vscode-list-errorForeground: #b01011;--vscode-list-warningForeground: #855f00;--vscode-listFilterWidget-background: #f3f3f3;--vscode-listFilterWidget-outline: rgba(0, 0, 0, 0);--vscode-listFilterWidget-noMatchesOutline: #be1100;--vscode-listFilterWidget-shadow: rgba(0, 0, 0, .16);--vscode-list-filterMatchBackground: rgba(234, 92, 0, .33);--vscode-tree-indentGuidesStroke: #a9a9a9;--vscode-tree-tableColumnsBorder: rgba(97, 97, 97, .13);--vscode-tree-tableOddRowsBackground: rgba(97, 97, 97, .04);--vscode-list-deemphasizedForeground: #8e8e90;--vscode-quickInputList-focusForeground: #ffffff;--vscode-quickInputList-focusIconForeground: #ffffff;--vscode-quickInputList-focusBackground: #0060c0;--vscode-menu-foreground: #616161;--vscode-menu-background: #ffffff;--vscode-menu-selectionForeground: #ffffff;--vscode-menu-selectionBackground: #0060c0;--vscode-menu-separatorBackground: #d4d4d4;--vscode-toolbar-hoverBackground: rgba(184, 184, 184, .31);--vscode-toolbar-activeBackground: rgba(166, 166, 166, .31);--vscode-editor-snippetTabstopHighlightBackground: rgba(10, 50, 100, .2);--vscode-editor-snippetFinalTabstopHighlightBorder: rgba(10, 50, 100, .5);--vscode-breadcrumb-foreground: rgba(97, 97, 97, .8);--vscode-breadcrumb-background: #ffffff;--vscode-breadcrumb-focusForeground: #4e4e4e;--vscode-breadcrumb-activeSelectionForeground: #4e4e4e;--vscode-breadcrumbPicker-background: #f3f3f3;--vscode-merge-currentHeaderBackground: rgba(64, 200, 174, .5);--vscode-merge-currentContentBackground: rgba(64, 200, 174, .2);--vscode-merge-incomingHeaderBackground: rgba(64, 166, 255, .5);--vscode-merge-incomingContentBackground: rgba(64, 166, 255, .2);--vscode-merge-commonHeaderBackground: rgba(96, 96, 96, .4);--vscode-merge-commonContentBackground: rgba(96, 96, 96, .16);--vscode-editorOverviewRuler-currentContentForeground: rgba(64, 200, 174, .5);--vscode-editorOverviewRuler-incomingContentForeground: rgba(64, 166, 255, .5);--vscode-editorOverviewRuler-commonContentForeground: rgba(96, 96, 96, .4);--vscode-editorOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-editorOverviewRuler-selectionHighlightForeground: rgba(160, 160, 160, .8);--vscode-minimap-findMatchHighlight: #d18616;--vscode-minimap-selectionOccurrenceHighlight: #c9c9c9;--vscode-minimap-selectionHighlight: #add6ff;--vscode-minimap-errorHighlight: rgba(255, 18, 18, .7);--vscode-minimap-warningHighlight: #bf8803;--vscode-minimap-foregroundOpacity: #000000;--vscode-minimapSlider-background: rgba(100, 100, 100, .2);--vscode-minimapSlider-hoverBackground: rgba(100, 100, 100, .35);--vscode-minimapSlider-activeBackground: rgba(0, 0, 0, .3);--vscode-problemsErrorIcon-foreground: #e51400;--vscode-problemsWarningIcon-foreground: #bf8803;--vscode-problemsInfoIcon-foreground: #1a85ff;--vscode-charts-foreground: #616161;--vscode-charts-lines: rgba(97, 97, 97, .5);--vscode-charts-red: #e51400;--vscode-charts-blue: #1a85ff;--vscode-charts-yellow: #bf8803;--vscode-charts-orange: #d18616;--vscode-charts-green: #388a34;--vscode-charts-purple: #652d90;--vscode-editor-lineHighlightBorder: #eeeeee;--vscode-editor-rangeHighlightBackground: rgba(253, 255, 0, .2);--vscode-editor-symbolHighlightBackground: rgba(234, 92, 0, .33);--vscode-editorCursor-foreground: #000000;--vscode-editorWhitespace-foreground: rgba(51, 51, 51, .2);--vscode-editorIndentGuide-background: #d3d3d3;--vscode-editorIndentGuide-activeBackground: #939393;--vscode-editorLineNumber-foreground: #237893;--vscode-editorActiveLineNumber-foreground: #0b216f;--vscode-editorLineNumber-activeForeground: #0b216f;--vscode-editorRuler-foreground: #d3d3d3;--vscode-editorCodeLens-foreground: #919191;--vscode-editorBracketMatch-background: rgba(0, 100, 0, .1);--vscode-editorBracketMatch-border: #b9b9b9;--vscode-editorOverviewRuler-border: rgba(127, 127, 127, .3);--vscode-editorGutter-background: #ffffff;--vscode-editorUnnecessaryCode-opacity: rgba(0, 0, 0, .47);--vscode-editorGhostText-foreground: rgba(0, 0, 0, .47);--vscode-editorOverviewRuler-rangeHighlightForeground: rgba(0, 122, 204, .6);--vscode-editorOverviewRuler-errorForeground: rgba(255, 18, 18, .7);--vscode-editorOverviewRuler-warningForeground: #bf8803;--vscode-editorOverviewRuler-infoForeground: #1a85ff;--vscode-editorBracketHighlight-foreground1: #0431fa;--vscode-editorBracketHighlight-foreground2: #319331;--vscode-editorBracketHighlight-foreground3: #7b3814;--vscode-editorBracketHighlight-foreground4: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground5: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground6: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-unexpectedBracket\.foreground: rgba(255, 18, 18, .8);--vscode-editorBracketPairGuide-background1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background6: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground6: rgba(0, 0, 0, 0);--vscode-editorUnicodeHighlight-border: #cea33d;--vscode-editorUnicodeHighlight-background: rgba(206, 163, 61, .08);--vscode-symbolIcon-arrayForeground: #616161;--vscode-symbolIcon-booleanForeground: #616161;--vscode-symbolIcon-classForeground: #d67e00;--vscode-symbolIcon-colorForeground: #616161;--vscode-symbolIcon-constantForeground: #616161;--vscode-symbolIcon-constructorForeground: #652d90;--vscode-symbolIcon-enumeratorForeground: #d67e00;--vscode-symbolIcon-enumeratorMemberForeground: #007acc;--vscode-symbolIcon-eventForeground: #d67e00;--vscode-symbolIcon-fieldForeground: #007acc;--vscode-symbolIcon-fileForeground: #616161;--vscode-symbolIcon-folderForeground: #616161;--vscode-symbolIcon-functionForeground: #652d90;--vscode-symbolIcon-interfaceForeground: #007acc;--vscode-symbolIcon-keyForeground: #616161;--vscode-symbolIcon-keywordForeground: #616161;--vscode-symbolIcon-methodForeground: #652d90;--vscode-symbolIcon-moduleForeground: #616161;--vscode-symbolIcon-namespaceForeground: #616161;--vscode-symbolIcon-nullForeground: #616161;--vscode-symbolIcon-numberForeground: #616161;--vscode-symbolIcon-objectForeground: #616161;--vscode-symbolIcon-operatorForeground: #616161;--vscode-symbolIcon-packageForeground: #616161;--vscode-symbolIcon-propertyForeground: #616161;--vscode-symbolIcon-referenceForeground: #616161;--vscode-symbolIcon-snippetForeground: #616161;--vscode-symbolIcon-stringForeground: #616161;--vscode-symbolIcon-structForeground: #616161;--vscode-symbolIcon-textForeground: #616161;--vscode-symbolIcon-typeParameterForeground: #616161;--vscode-symbolIcon-unitForeground: #616161;--vscode-symbolIcon-variableForeground: #007acc;--vscode-editorHoverWidget-highlightForeground: #0066bf;--vscode-editorOverviewRuler-bracketMatchForeground: #a0a0a0;--vscode-editor-foldBackground: rgba(173, 214, 255, .3);--vscode-editorGutter-foldingControlForeground: #424242;--vscode-editor-linkedEditingBackground: rgba(255, 0, 0, .3);--vscode-editor-wordHighlightBackground: rgba(87, 87, 87, .25);--vscode-editor-wordHighlightStrongBackground: rgba(14, 99, 156, .25);--vscode-editorOverviewRuler-wordHighlightForeground: rgba(160, 160, 160, .8);--vscode-editorOverviewRuler-wordHighlightStrongForeground: rgba(192, 160, 192, .8);--vscode-peekViewTitle-background: rgba(26, 133, 255, .1);--vscode-peekViewTitleLabel-foreground: #000000;--vscode-peekViewTitleDescription-foreground: #616161;--vscode-peekView-border: #1a85ff;--vscode-peekViewResult-background: #f3f3f3;--vscode-peekViewResult-lineForeground: #646465;--vscode-peekViewResult-fileForeground: #1e1e1e;--vscode-peekViewResult-selectionBackground: rgba(51, 153, 255, .2);--vscode-peekViewResult-selectionForeground: #6c6c6c;--vscode-peekViewEditor-background: #f2f8fc;--vscode-peekViewEditorGutter-background: #f2f8fc;--vscode-peekViewResult-matchHighlightBackground: rgba(234, 92, 0, .3);--vscode-peekViewEditor-matchHighlightBackground: rgba(245, 216, 2, .87);--vscode-editorMarkerNavigationError-background: #e51400;--vscode-editorMarkerNavigationError-headerBackground: rgba(229, 20, 0, .1);--vscode-editorMarkerNavigationWarning-background: #bf8803;--vscode-editorMarkerNavigationWarning-headerBackground: rgba(191, 136, 3, .1);--vscode-editorMarkerNavigationInfo-background: #1a85ff;--vscode-editorMarkerNavigationInfo-headerBackground: rgba(26, 133, 255, .1);--vscode-editorMarkerNavigation-background: #ffffff;--vscode-editorSuggestWidget-background: #f3f3f3;--vscode-editorSuggestWidget-border: #c8c8c8;--vscode-editorSuggestWidget-foreground: #000000;--vscode-editorSuggestWidget-selectedForeground: #ffffff;--vscode-editorSuggestWidget-selectedIconForeground: #ffffff;--vscode-editorSuggestWidget-selectedBackground: #0060c0;--vscode-editorSuggestWidget-highlightForeground: #0066bf;--vscode-editorSuggestWidget-focusHighlightForeground: #bbe7ff;--vscode-editorSuggestWidgetStatus-foreground: rgba(0, 0, 0, .5);--vscode-tab-activeBackground: #ffffff;--vscode-tab-unfocusedActiveBackground: #ffffff;--vscode-tab-inactiveBackground: #ececec;--vscode-tab-unfocusedInactiveBackground: #ececec;--vscode-tab-activeForeground: #333333;--vscode-tab-inactiveForeground: rgba(51, 51, 51, .7);--vscode-tab-unfocusedActiveForeground: rgba(51, 51, 51, .7);--vscode-tab-unfocusedInactiveForeground: rgba(51, 51, 51, .35);--vscode-tab-border: #f3f3f3;--vscode-tab-lastPinnedBorder: rgba(97, 97, 97, .19);--vscode-tab-activeModifiedBorder: #33aaee;--vscode-tab-inactiveModifiedBorder: rgba(51, 170, 238, .5);--vscode-tab-unfocusedActiveModifiedBorder: rgba(51, 170, 238, .7);--vscode-tab-unfocusedInactiveModifiedBorder: rgba(51, 170, 238, .25);--vscode-editorPane-background: #ffffff;--vscode-editorGroupHeader-tabsBackground: #f3f3f3;--vscode-editorGroupHeader-noTabsBackground: #ffffff;--vscode-editorGroup-border: #e7e7e7;--vscode-editorGroup-dropBackground: rgba(38, 119, 203, .18);--vscode-editorGroup-dropIntoPromptForeground: #616161;--vscode-editorGroup-dropIntoPromptBackground: #f3f3f3;--vscode-sideBySideEditor-horizontalBorder: #e7e7e7;--vscode-sideBySideEditor-verticalBorder: #e7e7e7;--vscode-panel-background: #ffffff;--vscode-panel-border: rgba(128, 128, 128, .35);--vscode-panelTitle-activeForeground: #424242;--vscode-panelTitle-inactiveForeground: rgba(66, 66, 66, .75);--vscode-panelTitle-activeBorder: #424242;--vscode-panelInput-border: #dddddd;--vscode-panel-dropBorder: #424242;--vscode-panelSection-dropBackground: rgba(38, 119, 203, .18);--vscode-panelSectionHeader-background: rgba(128, 128, 128, .2);--vscode-panelSection-border: rgba(128, 128, 128, .35);--vscode-banner-background: #004386;--vscode-banner-foreground: #ffffff;--vscode-banner-iconForeground: #1a85ff;--vscode-statusBar-foreground: #ffffff;--vscode-statusBar-noFolderForeground: #ffffff;--vscode-statusBar-background: #007acc;--vscode-statusBar-noFolderBackground: #68217a;--vscode-statusBar-focusBorder: #ffffff;--vscode-statusBarItem-activeBackground: rgba(255, 255, 255, .18);--vscode-statusBarItem-focusBorder: #ffffff;--vscode-statusBarItem-hoverBackground: rgba(255, 255, 255, .12);--vscode-statusBarItem-compactHoverBackground: rgba(255, 255, 255, .2);--vscode-statusBarItem-prominentForeground: #ffffff;--vscode-statusBarItem-prominentBackground: rgba(0, 0, 0, .5);--vscode-statusBarItem-prominentHoverBackground: rgba(0, 0, 0, .3);--vscode-statusBarItem-errorBackground: #c72e0f;--vscode-statusBarItem-errorForeground: #ffffff;--vscode-statusBarItem-warningBackground: #725102;--vscode-statusBarItem-warningForeground: #ffffff;--vscode-activityBar-background: #2c2c2c;--vscode-activityBar-foreground: #ffffff;--vscode-activityBar-inactiveForeground: rgba(255, 255, 255, .4);--vscode-activityBar-activeBorder: #ffffff;--vscode-activityBar-dropBorder: #ffffff;--vscode-activityBarBadge-background: #007acc;--vscode-activityBarBadge-foreground: #ffffff;--vscode-statusBarItem-remoteBackground: #16825d;--vscode-statusBarItem-remoteForeground: #ffffff;--vscode-extensionBadge-remoteBackground: #007acc;--vscode-extensionBadge-remoteForeground: #ffffff;--vscode-sideBar-background: #f3f3f3;--vscode-sideBarTitle-foreground: #6f6f6f;--vscode-sideBar-dropBackground: rgba(38, 119, 203, .18);--vscode-sideBarSectionHeader-background: rgba(0, 0, 0, 0);--vscode-sideBarSectionHeader-border: rgba(97, 97, 97, .19);--vscode-titleBar-activeForeground: #333333;--vscode-titleBar-inactiveForeground: rgba(51, 51, 51, .6);--vscode-titleBar-activeBackground: #dddddd;--vscode-titleBar-inactiveBackground: rgba(221, 221, 221, .6);--vscode-menubar-selectionForeground: #333333;--vscode-menubar-selectionBackground: rgba(184, 184, 184, .31);--vscode-notifications-foreground: #616161;--vscode-notifications-background: #f3f3f3;--vscode-notificationLink-foreground: #006ab1;--vscode-notificationCenterHeader-background: #e7e7e7;--vscode-notifications-border: #e7e7e7;--vscode-notificationsErrorIcon-foreground: #e51400;--vscode-notificationsWarningIcon-foreground: #bf8803;--vscode-notificationsInfoIcon-foreground: #1a85ff;--vscode-commandCenter-foreground: #333333;--vscode-commandCenter-activeForeground: #333333;--vscode-commandCenter-activeBackground: rgba(184, 184, 184, .31);--vscode-commandCenter-border: rgba(128, 128, 128, .35);--vscode-editorCommentsWidget-resolvedBorder: rgba(97, 97, 97, .5);--vscode-editorCommentsWidget-unresolvedBorder: #1a85ff;--vscode-editorCommentsWidget-rangeBackground: rgba(26, 133, 255, .1);--vscode-editorCommentsWidget-rangeBorder: rgba(26, 133, 255, .4);--vscode-editorCommentsWidget-rangeActiveBackground: rgba(26, 133, 255, .1);--vscode-editorCommentsWidget-rangeActiveBorder: rgba(26, 133, 255, .4);--vscode-editorGutter-commentRangeForeground: #d5d8e9;--vscode-debugToolBar-background: #f3f3f3;--vscode-debugIcon-startForeground: #388a34;--vscode-editor-stackFrameHighlightBackground: rgba(255, 255, 102, .45);--vscode-editor-focusedStackFrameHighlightBackground: rgba(206, 231, 206, .45);--vscode-mergeEditor-change\.background: rgba(155, 185, 85, .2);--vscode-mergeEditor-change\.word\.background: rgba(156, 204, 44, .4);--vscode-mergeEditor-conflict\.unhandledUnfocused\.border: rgba(255, 166, 0, .48);--vscode-mergeEditor-conflict\.unhandledFocused\.border: #ffa600;--vscode-mergeEditor-conflict\.handledUnfocused\.border: rgba(134, 134, 134, .29);--vscode-mergeEditor-conflict\.handledFocused\.border: rgba(193, 193, 193, .8);--vscode-mergeEditor-conflict\.handled\.minimapOverViewRuler: rgba(173, 172, 168, .93);--vscode-mergeEditor-conflict\.unhandled\.minimapOverViewRuler: #fcba03;--vscode-mergeEditor-conflictingLines\.background: rgba(255, 234, 0, .28);--vscode-settings-headerForeground: #444444;--vscode-settings-modifiedItemIndicator: #66afe0;--vscode-settings-headerBorder: rgba(128, 128, 128, .35);--vscode-settings-sashBorder: rgba(128, 128, 128, .35);--vscode-settings-dropdownBackground: #ffffff;--vscode-settings-dropdownBorder: #cecece;--vscode-settings-dropdownListBorder: #c8c8c8;--vscode-settings-checkboxBackground: #ffffff;--vscode-settings-checkboxBorder: #cecece;--vscode-settings-textInputBackground: #ffffff;--vscode-settings-textInputForeground: #616161;--vscode-settings-textInputBorder: #cecece;--vscode-settings-numberInputBackground: #ffffff;--vscode-settings-numberInputForeground: #616161;--vscode-settings-numberInputBorder: #cecece;--vscode-settings-focusedRowBackground: rgba(232, 232, 232, .6);--vscode-settings-rowHoverBackground: rgba(232, 232, 232, .3);--vscode-settings-focusedRowBorder: rgba(0, 0, 0, .12);--vscode-terminal-foreground: #333333;--vscode-terminal-selectionBackground: #add6ff;--vscode-terminal-inactiveSelectionBackground: #e5ebf1;--vscode-terminalCommandDecoration-defaultBackground: rgba(0, 0, 0, .25);--vscode-terminalCommandDecoration-successBackground: #2090d3;--vscode-terminalCommandDecoration-errorBackground: #e51400;--vscode-terminalOverviewRuler-cursorForeground: rgba(160, 160, 160, .8);--vscode-terminal-border: rgba(128, 128, 128, .35);--vscode-terminal-findMatchBackground: #a8ac94;--vscode-terminal-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-terminalOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-terminal-dropBackground: rgba(38, 119, 203, .18);--vscode-testing-iconFailed: #f14c4c;--vscode-testing-iconErrored: #f14c4c;--vscode-testing-iconPassed: #73c991;--vscode-testing-runAction: #73c991;--vscode-testing-iconQueued: #cca700;--vscode-testing-iconUnset: #848484;--vscode-testing-iconSkipped: #848484;--vscode-testing-peekBorder: #e51400;--vscode-testing-peekHeaderBackground: rgba(229, 20, 0, .1);--vscode-testing-message\.error\.decorationForeground: #e51400;--vscode-testing-message\.error\.lineBackground: rgba(255, 0, 0, .2);--vscode-testing-message\.info\.decorationForeground: rgba(0, 0, 0, .5);--vscode-welcomePage-tileBackground: #f3f3f3;--vscode-welcomePage-tileHoverBackground: #dbdbdb;--vscode-welcomePage-tileShadow: rgba(0, 0, 0, .16);--vscode-welcomePage-progress\.background: #ffffff;--vscode-welcomePage-progress\.foreground: #006ab1;--vscode-debugExceptionWidget-border: #a31515;--vscode-debugExceptionWidget-background: #f1dfde;--vscode-ports-iconRunningProcessForeground: #369432;--vscode-statusBar-debuggingBackground: #cc6633;--vscode-statusBar-debuggingForeground: #ffffff;--vscode-editor-inlineValuesForeground: rgba(0, 0, 0, .5);--vscode-editor-inlineValuesBackground: rgba(255, 200, 0, .2);--vscode-editorGutter-modifiedBackground: #2090d3;--vscode-editorGutter-addedBackground: #48985d;--vscode-editorGutter-deletedBackground: #e51400;--vscode-minimapGutter-modifiedBackground: #2090d3;--vscode-minimapGutter-addedBackground: #48985d;--vscode-minimapGutter-deletedBackground: #e51400;--vscode-editorOverviewRuler-modifiedForeground: rgba(32, 144, 211, .6);--vscode-editorOverviewRuler-addedForeground: rgba(72, 152, 93, .6);--vscode-editorOverviewRuler-deletedForeground: rgba(229, 20, 0, .6);--vscode-debugIcon-breakpointForeground: #e51400;--vscode-debugIcon-breakpointDisabledForeground: #848484;--vscode-debugIcon-breakpointUnverifiedForeground: #848484;--vscode-debugIcon-breakpointCurrentStackframeForeground: #be8700;--vscode-debugIcon-breakpointStackframeForeground: #89d185;--vscode-notebook-cellBorderColor: #e8e8e8;--vscode-notebook-focusedEditorBorder: #0090f1;--vscode-notebookStatusSuccessIcon-foreground: #388a34;--vscode-notebookStatusErrorIcon-foreground: #a1260d;--vscode-notebookStatusRunningIcon-foreground: #616161;--vscode-notebook-cellToolbarSeparator: rgba(128, 128, 128, .35);--vscode-notebook-selectedCellBackground: rgba(200, 221, 241, .31);--vscode-notebook-selectedCellBorder: #e8e8e8;--vscode-notebook-focusedCellBorder: #0090f1;--vscode-notebook-inactiveFocusedCellBorder: #e8e8e8;--vscode-notebook-cellStatusBarItemHoverBackground: rgba(0, 0, 0, .08);--vscode-notebook-cellInsertionIndicator: #0090f1;--vscode-notebookScrollbarSlider-background: rgba(100, 100, 100, .4);--vscode-notebookScrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-notebookScrollbarSlider-activeBackground: rgba(0, 0, 0, .6);--vscode-notebook-symbolHighlightBackground: rgba(253, 255, 0, .2);--vscode-notebook-cellEditorBackground: #f3f3f3;--vscode-notebook-editorBackground: #ffffff;--vscode-keybindingTable-headerBackground: rgba(97, 97, 97, .04);--vscode-keybindingTable-rowsBackground: rgba(97, 97, 97, .04);--vscode-scm-providerBorder: #c8c8c8;--vscode-searchEditor-textInputBorder: #cecece;--vscode-debugTokenExpression-name: #9b46b0;--vscode-debugTokenExpression-value: rgba(108, 108, 108, .8);--vscode-debugTokenExpression-string: #a31515;--vscode-debugTokenExpression-boolean: #0000ff;--vscode-debugTokenExpression-number: #098658;--vscode-debugTokenExpression-error: #e51400;--vscode-debugView-exceptionLabelForeground: #ffffff;--vscode-debugView-exceptionLabelBackground: #a31515;--vscode-debugView-stateLabelForeground: #616161;--vscode-debugView-stateLabelBackground: rgba(136, 136, 136, .27);--vscode-debugView-valueChangedHighlight: #569cd6;--vscode-debugConsole-infoForeground: #1a85ff;--vscode-debugConsole-warningForeground: #bf8803;--vscode-debugConsole-errorForeground: #a1260d;--vscode-debugConsole-sourceForeground: #616161;--vscode-debugConsoleInputIcon-foreground: #616161;--vscode-debugIcon-pauseForeground: #007acc;--vscode-debugIcon-stopForeground: #a1260d;--vscode-debugIcon-disconnectForeground: #a1260d;--vscode-debugIcon-restartForeground: #388a34;--vscode-debugIcon-stepOverForeground: #007acc;--vscode-debugIcon-stepIntoForeground: #007acc;--vscode-debugIcon-stepOutForeground: #007acc;--vscode-debugIcon-continueForeground: #007acc;--vscode-debugIcon-stepBackForeground: #007acc;--vscode-extensionButton-prominentBackground: #007acc;--vscode-extensionButton-prominentForeground: #ffffff;--vscode-extensionButton-prominentHoverBackground: #0062a3;--vscode-extensionIcon-starForeground: #df6100;--vscode-extensionIcon-verifiedForeground: #006ab1;--vscode-extensionIcon-preReleaseForeground: #1d9271;--vscode-extensionIcon-sponsorForeground: #b51e78;--vscode-terminal-ansiBlack: #000000;--vscode-terminal-ansiRed: #cd3131;--vscode-terminal-ansiGreen: #00bc00;--vscode-terminal-ansiYellow: #949800;--vscode-terminal-ansiBlue: #0451a5;--vscode-terminal-ansiMagenta: #bc05bc;--vscode-terminal-ansiCyan: #0598bc;--vscode-terminal-ansiWhite: #555555;--vscode-terminal-ansiBrightBlack: #666666;--vscode-terminal-ansiBrightRed: #cd3131;--vscode-terminal-ansiBrightGreen: #14ce14;--vscode-terminal-ansiBrightYellow: #b5ba00;--vscode-terminal-ansiBrightBlue: #0451a5;--vscode-terminal-ansiBrightMagenta: #bc05bc;--vscode-terminal-ansiBrightCyan: #0598bc;--vscode-terminal-ansiBrightWhite: #a5a5a5;--vscode-interactive-activeCodeBorder: #1a85ff;--vscode-interactive-inactiveCodeBorder: #e4e6f1;--vscode-gitDecoration-addedResourceForeground: #587c0c;--vscode-gitDecoration-modifiedResourceForeground: #895503;--vscode-gitDecoration-deletedResourceForeground: #ad0707;--vscode-gitDecoration-renamedResourceForeground: #007100;--vscode-gitDecoration-untrackedResourceForeground: #007100;--vscode-gitDecoration-ignoredResourceForeground: #8e8e90;--vscode-gitDecoration-stageModifiedResourceForeground: #895503;--vscode-gitDecoration-stageDeletedResourceForeground: #ad0707;--vscode-gitDecoration-conflictingResourceForeground: #ad0707;--vscode-gitDecoration-submoduleResourceForeground: #1258a7}:root.light-mode{color-scheme:light}:root.dark-mode{color-scheme:dark;--vscode-font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif;--vscode-font-weight: normal;--vscode-font-size: 13px;--vscode-editor-font-family: "Droid Sans Mono", "monospace", monospace;--vscode-editor-font-weight: normal;--vscode-editor-font-size: 14px;--vscode-foreground: #cccccc;--vscode-disabledForeground: rgba(204, 204, 204, .5);--vscode-errorForeground: #f48771;--vscode-descriptionForeground: rgba(204, 204, 204, .7);--vscode-icon-foreground: #c5c5c5;--vscode-focusBorder: #007fd4;--vscode-textSeparator-foreground: rgba(255, 255, 255, .18);--vscode-textLink-foreground: #3794ff;--vscode-textLink-activeForeground: #3794ff;--vscode-textPreformat-foreground: #d7ba7d;--vscode-textBlockQuote-background: rgba(127, 127, 127, .1);--vscode-textBlockQuote-border: rgba(0, 122, 204, .5);--vscode-textCodeBlock-background: rgba(10, 10, 10, .4);--vscode-widget-shadow: rgba(0, 0, 0, .36);--vscode-input-background: #3c3c3c;--vscode-input-foreground: #cccccc;--vscode-inputOption-activeBorder: #007acc;--vscode-inputOption-hoverBackground: rgba(90, 93, 94, .5);--vscode-inputOption-activeBackground: rgba(0, 127, 212, .4);--vscode-inputOption-activeForeground: #ffffff;--vscode-input-placeholderForeground: #a6a6a6;--vscode-inputValidation-infoBackground: #063b49;--vscode-inputValidation-infoBorder: #007acc;--vscode-inputValidation-warningBackground: #352a05;--vscode-inputValidation-warningBorder: #b89500;--vscode-inputValidation-errorBackground: #5a1d1d;--vscode-inputValidation-errorBorder: #be1100;--vscode-dropdown-background: #3c3c3c;--vscode-dropdown-foreground: #f0f0f0;--vscode-dropdown-border: #3c3c3c;--vscode-checkbox-background: #3c3c3c;--vscode-checkbox-foreground: #f0f0f0;--vscode-checkbox-border: #3c3c3c;--vscode-button-foreground: #ffffff;--vscode-button-separator: rgba(255, 255, 255, .4);--vscode-button-background: #0e639c;--vscode-button-hoverBackground: #1177bb;--vscode-button-secondaryForeground: #ffffff;--vscode-button-secondaryBackground: #3a3d41;--vscode-button-secondaryHoverBackground: #45494e;--vscode-badge-background: #4d4d4d;--vscode-badge-foreground: #ffffff;--vscode-scrollbar-shadow: #000000;--vscode-scrollbarSlider-background: rgba(121, 121, 121, .4);--vscode-scrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-scrollbarSlider-activeBackground: rgba(191, 191, 191, .4);--vscode-progressBar-background: #0e70c0;--vscode-editorError-foreground: #f14c4c;--vscode-editorWarning-foreground: #cca700;--vscode-editorInfo-foreground: #3794ff;--vscode-editorHint-foreground: rgba(238, 238, 238, .7);--vscode-sash-hoverBorder: #007fd4;--vscode-editor-background: #1e1e1e;--vscode-editor-foreground: #d4d4d4;--vscode-editorStickyScroll-background: #1e1e1e;--vscode-editorStickyScrollHover-background: #2a2d2e;--vscode-editorWidget-background: #252526;--vscode-editorWidget-foreground: #cccccc;--vscode-editorWidget-border: #454545;--vscode-quickInput-background: #252526;--vscode-quickInput-foreground: #cccccc;--vscode-quickInputTitle-background: rgba(255, 255, 255, .1);--vscode-pickerGroup-foreground: #3794ff;--vscode-pickerGroup-border: #3f3f46;--vscode-keybindingLabel-background: rgba(128, 128, 128, .17);--vscode-keybindingLabel-foreground: #cccccc;--vscode-keybindingLabel-border: rgba(51, 51, 51, .6);--vscode-keybindingLabel-bottomBorder: rgba(68, 68, 68, .6);--vscode-editor-selectionBackground: #264f78;--vscode-editor-inactiveSelectionBackground: #3a3d41;--vscode-editor-selectionHighlightBackground: rgba(173, 214, 255, .15);--vscode-editor-findMatchBackground: #515c6a;--vscode-editor-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-editor-findRangeHighlightBackground: rgba(58, 61, 65, .4);--vscode-searchEditor-findMatchBackground: rgba(234, 92, 0, .22);--vscode-editor-hoverHighlightBackground: rgba(38, 79, 120, .25);--vscode-editorHoverWidget-background: #252526;--vscode-editorHoverWidget-foreground: #cccccc;--vscode-editorHoverWidget-border: #454545;--vscode-editorHoverWidget-statusBarBackground: #2c2c2d;--vscode-editorLink-activeForeground: #4e94ce;--vscode-editorInlayHint-foreground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-background: rgba(77, 77, 77, .6);--vscode-editorInlayHint-typeForeground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-typeBackground: rgba(77, 77, 77, .6);--vscode-editorInlayHint-parameterForeground: rgba(255, 255, 255, .8);--vscode-editorInlayHint-parameterBackground: rgba(77, 77, 77, .6);--vscode-editorLightBulb-foreground: #ffcc00;--vscode-editorLightBulbAutoFix-foreground: #75beff;--vscode-diffEditor-insertedTextBackground: rgba(156, 204, 44, .2);--vscode-diffEditor-removedTextBackground: rgba(255, 0, 0, .4);--vscode-diffEditor-insertedLineBackground: rgba(155, 185, 85, .2);--vscode-diffEditor-removedLineBackground: rgba(255, 0, 0, .2);--vscode-diffEditor-diagonalFill: rgba(204, 204, 204, .2);--vscode-list-focusOutline: #007fd4;--vscode-list-activeSelectionBackground: #04395e;--vscode-list-activeSelectionForeground: #ffffff;--vscode-list-activeSelectionIconForeground: #ffffff;--vscode-list-inactiveSelectionBackground: #37373d;--vscode-list-hoverBackground: #2a2d2e;--vscode-list-dropBackground: #383b3d;--vscode-list-highlightForeground: #2aaaff;--vscode-list-focusHighlightForeground: #2aaaff;--vscode-list-invalidItemForeground: #b89500;--vscode-list-errorForeground: #f88070;--vscode-list-warningForeground: #cca700;--vscode-listFilterWidget-background: #252526;--vscode-listFilterWidget-outline: rgba(0, 0, 0, 0);--vscode-listFilterWidget-noMatchesOutline: #be1100;--vscode-listFilterWidget-shadow: rgba(0, 0, 0, .36);--vscode-list-filterMatchBackground: rgba(234, 92, 0, .33);--vscode-tree-indentGuidesStroke: #585858;--vscode-tree-tableColumnsBorder: rgba(204, 204, 204, .13);--vscode-tree-tableOddRowsBackground: rgba(204, 204, 204, .04);--vscode-list-deemphasizedForeground: #8c8c8c;--vscode-quickInputList-focusForeground: #ffffff;--vscode-quickInputList-focusIconForeground: #ffffff;--vscode-quickInputList-focusBackground: #04395e;--vscode-menu-foreground: #cccccc;--vscode-menu-background: #303031;--vscode-menu-selectionForeground: #ffffff;--vscode-menu-selectionBackground: #04395e;--vscode-menu-separatorBackground: #606060;--vscode-toolbar-hoverBackground: rgba(90, 93, 94, .31);--vscode-toolbar-activeBackground: rgba(99, 102, 103, .31);--vscode-editor-snippetTabstopHighlightBackground: rgba(124, 124, 124, .3);--vscode-editor-snippetFinalTabstopHighlightBorder: #525252;--vscode-breadcrumb-foreground: rgba(204, 204, 204, .8);--vscode-breadcrumb-background: #1e1e1e;--vscode-breadcrumb-focusForeground: #e0e0e0;--vscode-breadcrumb-activeSelectionForeground: #e0e0e0;--vscode-breadcrumbPicker-background: #252526;--vscode-merge-currentHeaderBackground: rgba(64, 200, 174, .5);--vscode-merge-currentContentBackground: rgba(64, 200, 174, .2);--vscode-merge-incomingHeaderBackground: rgba(64, 166, 255, .5);--vscode-merge-incomingContentBackground: rgba(64, 166, 255, .2);--vscode-merge-commonHeaderBackground: rgba(96, 96, 96, .4);--vscode-merge-commonContentBackground: rgba(96, 96, 96, .16);--vscode-editorOverviewRuler-currentContentForeground: rgba(64, 200, 174, .5);--vscode-editorOverviewRuler-incomingContentForeground: rgba(64, 166, 255, .5);--vscode-editorOverviewRuler-commonContentForeground: rgba(96, 96, 96, .4);--vscode-editorOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-editorOverviewRuler-selectionHighlightForeground: rgba(160, 160, 160, .8);--vscode-minimap-findMatchHighlight: #d18616;--vscode-minimap-selectionOccurrenceHighlight: #676767;--vscode-minimap-selectionHighlight: #264f78;--vscode-minimap-errorHighlight: rgba(255, 18, 18, .7);--vscode-minimap-warningHighlight: #cca700;--vscode-minimap-foregroundOpacity: #000000;--vscode-minimapSlider-background: rgba(121, 121, 121, .2);--vscode-minimapSlider-hoverBackground: rgba(100, 100, 100, .35);--vscode-minimapSlider-activeBackground: rgba(191, 191, 191, .2);--vscode-problemsErrorIcon-foreground: #f14c4c;--vscode-problemsWarningIcon-foreground: #cca700;--vscode-problemsInfoIcon-foreground: #3794ff;--vscode-charts-foreground: #cccccc;--vscode-charts-lines: rgba(204, 204, 204, .5);--vscode-charts-red: #f14c4c;--vscode-charts-blue: #3794ff;--vscode-charts-yellow: #cca700;--vscode-charts-orange: #d18616;--vscode-charts-green: #89d185;--vscode-charts-purple: #b180d7;--vscode-editor-lineHighlightBorder: #282828;--vscode-editor-rangeHighlightBackground: rgba(255, 255, 255, .04);--vscode-editor-symbolHighlightBackground: rgba(234, 92, 0, .33);--vscode-editorCursor-foreground: #aeafad;--vscode-editorWhitespace-foreground: rgba(227, 228, 226, .16);--vscode-editorIndentGuide-background: #404040;--vscode-editorIndentGuide-activeBackground: #707070;--vscode-editorLineNumber-foreground: #858585;--vscode-editorActiveLineNumber-foreground: #c6c6c6;--vscode-editorLineNumber-activeForeground: #c6c6c6;--vscode-editorRuler-foreground: #5a5a5a;--vscode-editorCodeLens-foreground: #999999;--vscode-editorBracketMatch-background: rgba(0, 100, 0, .1);--vscode-editorBracketMatch-border: #888888;--vscode-editorOverviewRuler-border: rgba(127, 127, 127, .3);--vscode-editorGutter-background: #1e1e1e;--vscode-editorUnnecessaryCode-opacity: rgba(0, 0, 0, .67);--vscode-editorGhostText-foreground: rgba(255, 255, 255, .34);--vscode-editorOverviewRuler-rangeHighlightForeground: rgba(0, 122, 204, .6);--vscode-editorOverviewRuler-errorForeground: rgba(255, 18, 18, .7);--vscode-editorOverviewRuler-warningForeground: #cca700;--vscode-editorOverviewRuler-infoForeground: #3794ff;--vscode-editorBracketHighlight-foreground1: #ffd700;--vscode-editorBracketHighlight-foreground2: #da70d6;--vscode-editorBracketHighlight-foreground3: #179fff;--vscode-editorBracketHighlight-foreground4: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground5: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-foreground6: rgba(0, 0, 0, 0);--vscode-editorBracketHighlight-unexpectedBracket\.foreground: rgba(255, 18, 18, .8);--vscode-editorBracketPairGuide-background1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-background6: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground1: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground2: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground3: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground4: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground5: rgba(0, 0, 0, 0);--vscode-editorBracketPairGuide-activeBackground6: rgba(0, 0, 0, 0);--vscode-editorUnicodeHighlight-border: #bd9b03;--vscode-editorUnicodeHighlight-background: rgba(189, 155, 3, .15);--vscode-symbolIcon-arrayForeground: #cccccc;--vscode-symbolIcon-booleanForeground: #cccccc;--vscode-symbolIcon-classForeground: #ee9d28;--vscode-symbolIcon-colorForeground: #cccccc;--vscode-symbolIcon-constantForeground: #cccccc;--vscode-symbolIcon-constructorForeground: #b180d7;--vscode-symbolIcon-enumeratorForeground: #ee9d28;--vscode-symbolIcon-enumeratorMemberForeground: #75beff;--vscode-symbolIcon-eventForeground: #ee9d28;--vscode-symbolIcon-fieldForeground: #75beff;--vscode-symbolIcon-fileForeground: #cccccc;--vscode-symbolIcon-folderForeground: #cccccc;--vscode-symbolIcon-functionForeground: #b180d7;--vscode-symbolIcon-interfaceForeground: #75beff;--vscode-symbolIcon-keyForeground: #cccccc;--vscode-symbolIcon-keywordForeground: #cccccc;--vscode-symbolIcon-methodForeground: #b180d7;--vscode-symbolIcon-moduleForeground: #cccccc;--vscode-symbolIcon-namespaceForeground: #cccccc;--vscode-symbolIcon-nullForeground: #cccccc;--vscode-symbolIcon-numberForeground: #cccccc;--vscode-symbolIcon-objectForeground: #cccccc;--vscode-symbolIcon-operatorForeground: #cccccc;--vscode-symbolIcon-packageForeground: #cccccc;--vscode-symbolIcon-propertyForeground: #cccccc;--vscode-symbolIcon-referenceForeground: #cccccc;--vscode-symbolIcon-snippetForeground: #cccccc;--vscode-symbolIcon-stringForeground: #cccccc;--vscode-symbolIcon-structForeground: #cccccc;--vscode-symbolIcon-textForeground: #cccccc;--vscode-symbolIcon-typeParameterForeground: #cccccc;--vscode-symbolIcon-unitForeground: #cccccc;--vscode-symbolIcon-variableForeground: #75beff;--vscode-editorHoverWidget-highlightForeground: #2aaaff;--vscode-editorOverviewRuler-bracketMatchForeground: #a0a0a0;--vscode-editor-foldBackground: rgba(38, 79, 120, .3);--vscode-editorGutter-foldingControlForeground: #c5c5c5;--vscode-editor-linkedEditingBackground: rgba(255, 0, 0, .3);--vscode-editor-wordHighlightBackground: rgba(87, 87, 87, .72);--vscode-editor-wordHighlightStrongBackground: rgba(0, 73, 114, .72);--vscode-editorOverviewRuler-wordHighlightForeground: rgba(160, 160, 160, .8);--vscode-editorOverviewRuler-wordHighlightStrongForeground: rgba(192, 160, 192, .8);--vscode-peekViewTitle-background: rgba(55, 148, 255, .1);--vscode-peekViewTitleLabel-foreground: #ffffff;--vscode-peekViewTitleDescription-foreground: rgba(204, 204, 204, .7);--vscode-peekView-border: #3794ff;--vscode-peekViewResult-background: #252526;--vscode-peekViewResult-lineForeground: #bbbbbb;--vscode-peekViewResult-fileForeground: #ffffff;--vscode-peekViewResult-selectionBackground: rgba(51, 153, 255, .2);--vscode-peekViewResult-selectionForeground: #ffffff;--vscode-peekViewEditor-background: #001f33;--vscode-peekViewEditorGutter-background: #001f33;--vscode-peekViewResult-matchHighlightBackground: rgba(234, 92, 0, .3);--vscode-peekViewEditor-matchHighlightBackground: rgba(255, 143, 0, .6);--vscode-editorMarkerNavigationError-background: #f14c4c;--vscode-editorMarkerNavigationError-headerBackground: rgba(241, 76, 76, .1);--vscode-editorMarkerNavigationWarning-background: #cca700;--vscode-editorMarkerNavigationWarning-headerBackground: rgba(204, 167, 0, .1);--vscode-editorMarkerNavigationInfo-background: #3794ff;--vscode-editorMarkerNavigationInfo-headerBackground: rgba(55, 148, 255, .1);--vscode-editorMarkerNavigation-background: #1e1e1e;--vscode-editorSuggestWidget-background: #252526;--vscode-editorSuggestWidget-border: #454545;--vscode-editorSuggestWidget-foreground: #d4d4d4;--vscode-editorSuggestWidget-selectedForeground: #ffffff;--vscode-editorSuggestWidget-selectedIconForeground: #ffffff;--vscode-editorSuggestWidget-selectedBackground: #04395e;--vscode-editorSuggestWidget-highlightForeground: #2aaaff;--vscode-editorSuggestWidget-focusHighlightForeground: #2aaaff;--vscode-editorSuggestWidgetStatus-foreground: rgba(212, 212, 212, .5);--vscode-tab-activeBackground: #1e1e1e;--vscode-tab-unfocusedActiveBackground: #1e1e1e;--vscode-tab-inactiveBackground: #2d2d2d;--vscode-tab-unfocusedInactiveBackground: #2d2d2d;--vscode-tab-activeForeground: #ffffff;--vscode-tab-inactiveForeground: rgba(255, 255, 255, .5);--vscode-tab-unfocusedActiveForeground: rgba(255, 255, 255, .5);--vscode-tab-unfocusedInactiveForeground: rgba(255, 255, 255, .25);--vscode-tab-border: #252526;--vscode-tab-lastPinnedBorder: rgba(204, 204, 204, .2);--vscode-tab-activeModifiedBorder: #3399cc;--vscode-tab-inactiveModifiedBorder: rgba(51, 153, 204, .5);--vscode-tab-unfocusedActiveModifiedBorder: rgba(51, 153, 204, .5);--vscode-tab-unfocusedInactiveModifiedBorder: rgba(51, 153, 204, .25);--vscode-editorPane-background: #1e1e1e;--vscode-editorGroupHeader-tabsBackground: #252526;--vscode-editorGroupHeader-noTabsBackground: #1e1e1e;--vscode-editorGroup-border: #444444;--vscode-editorGroup-dropBackground: rgba(83, 89, 93, .5);--vscode-editorGroup-dropIntoPromptForeground: #cccccc;--vscode-editorGroup-dropIntoPromptBackground: #252526;--vscode-sideBySideEditor-horizontalBorder: #444444;--vscode-sideBySideEditor-verticalBorder: #444444;--vscode-panel-background: #1e1e1e;--vscode-panel-border: rgba(128, 128, 128, .35);--vscode-panelTitle-activeForeground: #e7e7e7;--vscode-panelTitle-inactiveForeground: rgba(231, 231, 231, .6);--vscode-panelTitle-activeBorder: #e7e7e7;--vscode-panel-dropBorder: #e7e7e7;--vscode-panelSection-dropBackground: rgba(83, 89, 93, .5);--vscode-panelSectionHeader-background: rgba(128, 128, 128, .2);--vscode-panelSection-border: rgba(128, 128, 128, .35);--vscode-banner-background: #04395e;--vscode-banner-foreground: #ffffff;--vscode-banner-iconForeground: #3794ff;--vscode-statusBar-foreground: #ffffff;--vscode-statusBar-noFolderForeground: #ffffff;--vscode-statusBar-background: #007acc;--vscode-statusBar-noFolderBackground: #68217a;--vscode-statusBar-focusBorder: #ffffff;--vscode-statusBarItem-activeBackground: rgba(255, 255, 255, .18);--vscode-statusBarItem-focusBorder: #ffffff;--vscode-statusBarItem-hoverBackground: rgba(255, 255, 255, .12);--vscode-statusBarItem-compactHoverBackground: rgba(255, 255, 255, .2);--vscode-statusBarItem-prominentForeground: #ffffff;--vscode-statusBarItem-prominentBackground: rgba(0, 0, 0, .5);--vscode-statusBarItem-prominentHoverBackground: rgba(0, 0, 0, .3);--vscode-statusBarItem-errorBackground: #c72e0f;--vscode-statusBarItem-errorForeground: #ffffff;--vscode-statusBarItem-warningBackground: #7a6400;--vscode-statusBarItem-warningForeground: #ffffff;--vscode-activityBar-background: #333333;--vscode-activityBar-foreground: #ffffff;--vscode-activityBar-inactiveForeground: rgba(255, 255, 255, .4);--vscode-activityBar-activeBorder: #ffffff;--vscode-activityBar-dropBorder: #ffffff;--vscode-activityBarBadge-background: #007acc;--vscode-activityBarBadge-foreground: #ffffff;--vscode-statusBarItem-remoteBackground: #16825d;--vscode-statusBarItem-remoteForeground: #ffffff;--vscode-extensionBadge-remoteBackground: #007acc;--vscode-extensionBadge-remoteForeground: #ffffff;--vscode-sideBar-background: #252526;--vscode-sideBarTitle-foreground: #bbbbbb;--vscode-sideBar-dropBackground: rgba(83, 89, 93, .5);--vscode-sideBarSectionHeader-background: rgba(0, 0, 0, 0);--vscode-sideBarSectionHeader-border: rgba(204, 204, 204, .2);--vscode-titleBar-activeForeground: #cccccc;--vscode-titleBar-inactiveForeground: rgba(204, 204, 204, .6);--vscode-titleBar-activeBackground: #3c3c3c;--vscode-titleBar-inactiveBackground: rgba(60, 60, 60, .6);--vscode-menubar-selectionForeground: #cccccc;--vscode-menubar-selectionBackground: rgba(90, 93, 94, .31);--vscode-notifications-foreground: #cccccc;--vscode-notifications-background: #252526;--vscode-notificationLink-foreground: #3794ff;--vscode-notificationCenterHeader-background: #303031;--vscode-notifications-border: #303031;--vscode-notificationsErrorIcon-foreground: #f14c4c;--vscode-notificationsWarningIcon-foreground: #cca700;--vscode-notificationsInfoIcon-foreground: #3794ff;--vscode-commandCenter-foreground: #cccccc;--vscode-commandCenter-activeForeground: #cccccc;--vscode-commandCenter-activeBackground: rgba(90, 93, 94, .31);--vscode-commandCenter-border: rgba(128, 128, 128, .35);--vscode-editorCommentsWidget-resolvedBorder: rgba(204, 204, 204, .5);--vscode-editorCommentsWidget-unresolvedBorder: #3794ff;--vscode-editorCommentsWidget-rangeBackground: rgba(55, 148, 255, .1);--vscode-editorCommentsWidget-rangeBorder: rgba(55, 148, 255, .4);--vscode-editorCommentsWidget-rangeActiveBackground: rgba(55, 148, 255, .1);--vscode-editorCommentsWidget-rangeActiveBorder: rgba(55, 148, 255, .4);--vscode-editorGutter-commentRangeForeground: #37373d;--vscode-debugToolBar-background: #333333;--vscode-debugIcon-startForeground: #89d185;--vscode-editor-stackFrameHighlightBackground: rgba(255, 255, 0, .2);--vscode-editor-focusedStackFrameHighlightBackground: rgba(122, 189, 122, .3);--vscode-mergeEditor-change\.background: rgba(155, 185, 85, .2);--vscode-mergeEditor-change\.word\.background: rgba(156, 204, 44, .2);--vscode-mergeEditor-conflict\.unhandledUnfocused\.border: rgba(255, 166, 0, .48);--vscode-mergeEditor-conflict\.unhandledFocused\.border: #ffa600;--vscode-mergeEditor-conflict\.handledUnfocused\.border: rgba(134, 134, 134, .29);--vscode-mergeEditor-conflict\.handledFocused\.border: rgba(193, 193, 193, .8);--vscode-mergeEditor-conflict\.handled\.minimapOverViewRuler: rgba(173, 172, 168, .93);--vscode-mergeEditor-conflict\.unhandled\.minimapOverViewRuler: #fcba03;--vscode-mergeEditor-conflictingLines\.background: rgba(255, 234, 0, .28);--vscode-settings-headerForeground: #e7e7e7;--vscode-settings-modifiedItemIndicator: #0c7d9d;--vscode-settings-headerBorder: rgba(128, 128, 128, .35);--vscode-settings-sashBorder: rgba(128, 128, 128, .35);--vscode-settings-dropdownBackground: #3c3c3c;--vscode-settings-dropdownForeground: #f0f0f0;--vscode-settings-dropdownBorder: #3c3c3c;--vscode-settings-dropdownListBorder: #454545;--vscode-settings-checkboxBackground: #3c3c3c;--vscode-settings-checkboxForeground: #f0f0f0;--vscode-settings-checkboxBorder: #3c3c3c;--vscode-settings-textInputBackground: #3c3c3c;--vscode-settings-textInputForeground: #cccccc;--vscode-settings-numberInputBackground: #3c3c3c;--vscode-settings-numberInputForeground: #cccccc;--vscode-settings-focusedRowBackground: rgba(42, 45, 46, .6);--vscode-settings-rowHoverBackground: rgba(42, 45, 46, .3);--vscode-settings-focusedRowBorder: rgba(255, 255, 255, .12);--vscode-terminal-foreground: #cccccc;--vscode-terminal-selectionBackground: #264f78;--vscode-terminal-inactiveSelectionBackground: #3a3d41;--vscode-terminalCommandDecoration-defaultBackground: rgba(255, 255, 255, .25);--vscode-terminalCommandDecoration-successBackground: #1b81a8;--vscode-terminalCommandDecoration-errorBackground: #f14c4c;--vscode-terminalOverviewRuler-cursorForeground: rgba(160, 160, 160, .8);--vscode-terminal-border: rgba(128, 128, 128, .35);--vscode-terminal-findMatchBackground: #515c6a;--vscode-terminal-findMatchHighlightBackground: rgba(234, 92, 0, .33);--vscode-terminalOverviewRuler-findMatchForeground: rgba(209, 134, 22, .49);--vscode-terminal-dropBackground: rgba(83, 89, 93, .5);--vscode-testing-iconFailed: #f14c4c;--vscode-testing-iconErrored: #f14c4c;--vscode-testing-iconPassed: #73c991;--vscode-testing-runAction: #73c991;--vscode-testing-iconQueued: #cca700;--vscode-testing-iconUnset: #848484;--vscode-testing-iconSkipped: #848484;--vscode-testing-peekBorder: #f14c4c;--vscode-testing-peekHeaderBackground: rgba(241, 76, 76, .1);--vscode-testing-message\.error\.decorationForeground: #f14c4c;--vscode-testing-message\.error\.lineBackground: rgba(255, 0, 0, .2);--vscode-testing-message\.info\.decorationForeground: rgba(212, 212, 212, .5);--vscode-welcomePage-tileBackground: #252526;--vscode-welcomePage-tileHoverBackground: #2c2c2d;--vscode-welcomePage-tileShadow: rgba(0, 0, 0, .36);--vscode-welcomePage-progress\.background: #3c3c3c;--vscode-welcomePage-progress\.foreground: #3794ff;--vscode-debugExceptionWidget-border: #a31515;--vscode-debugExceptionWidget-background: #420b0d;--vscode-ports-iconRunningProcessForeground: #369432;--vscode-statusBar-debuggingBackground: #cc6633;--vscode-statusBar-debuggingForeground: #ffffff;--vscode-editor-inlineValuesForeground: rgba(255, 255, 255, .5);--vscode-editor-inlineValuesBackground: rgba(255, 200, 0, .2);--vscode-editorGutter-modifiedBackground: #1b81a8;--vscode-editorGutter-addedBackground: #487e02;--vscode-editorGutter-deletedBackground: #f14c4c;--vscode-minimapGutter-modifiedBackground: #1b81a8;--vscode-minimapGutter-addedBackground: #487e02;--vscode-minimapGutter-deletedBackground: #f14c4c;--vscode-editorOverviewRuler-modifiedForeground: rgba(27, 129, 168, .6);--vscode-editorOverviewRuler-addedForeground: rgba(72, 126, 2, .6);--vscode-editorOverviewRuler-deletedForeground: rgba(241, 76, 76, .6);--vscode-debugIcon-breakpointForeground: #e51400;--vscode-debugIcon-breakpointDisabledForeground: #848484;--vscode-debugIcon-breakpointUnverifiedForeground: #848484;--vscode-debugIcon-breakpointCurrentStackframeForeground: #ffcc00;--vscode-debugIcon-breakpointStackframeForeground: #89d185;--vscode-notebook-cellBorderColor: #37373d;--vscode-notebook-focusedEditorBorder: #007fd4;--vscode-notebookStatusSuccessIcon-foreground: #89d185;--vscode-notebookStatusErrorIcon-foreground: #f48771;--vscode-notebookStatusRunningIcon-foreground: #cccccc;--vscode-notebook-cellToolbarSeparator: rgba(128, 128, 128, .35);--vscode-notebook-selectedCellBackground: #37373d;--vscode-notebook-selectedCellBorder: #37373d;--vscode-notebook-focusedCellBorder: #007fd4;--vscode-notebook-inactiveFocusedCellBorder: #37373d;--vscode-notebook-cellStatusBarItemHoverBackground: rgba(255, 255, 255, .15);--vscode-notebook-cellInsertionIndicator: #007fd4;--vscode-notebookScrollbarSlider-background: rgba(121, 121, 121, .4);--vscode-notebookScrollbarSlider-hoverBackground: rgba(100, 100, 100, .7);--vscode-notebookScrollbarSlider-activeBackground: rgba(191, 191, 191, .4);--vscode-notebook-symbolHighlightBackground: rgba(255, 255, 255, .04);--vscode-notebook-cellEditorBackground: #252526;--vscode-notebook-editorBackground: #1e1e1e;--vscode-keybindingTable-headerBackground: rgba(204, 204, 204, .04);--vscode-keybindingTable-rowsBackground: rgba(204, 204, 204, .04);--vscode-scm-providerBorder: #454545;--vscode-debugTokenExpression-name: #c586c0;--vscode-debugTokenExpression-value: rgba(204, 204, 204, .6);--vscode-debugTokenExpression-string: #ce9178;--vscode-debugTokenExpression-boolean: #4e94ce;--vscode-debugTokenExpression-number: #b5cea8;--vscode-debugTokenExpression-error: #f48771;--vscode-debugView-exceptionLabelForeground: #cccccc;--vscode-debugView-exceptionLabelBackground: #6c2022;--vscode-debugView-stateLabelForeground: #cccccc;--vscode-debugView-stateLabelBackground: rgba(136, 136, 136, .27);--vscode-debugView-valueChangedHighlight: #569cd6;--vscode-debugConsole-infoForeground: #3794ff;--vscode-debugConsole-warningForeground: #cca700;--vscode-debugConsole-errorForeground: #f48771;--vscode-debugConsole-sourceForeground: #cccccc;--vscode-debugConsoleInputIcon-foreground: #cccccc;--vscode-debugIcon-pauseForeground: #75beff;--vscode-debugIcon-stopForeground: #f48771;--vscode-debugIcon-disconnectForeground: #f48771;--vscode-debugIcon-restartForeground: #89d185;--vscode-debugIcon-stepOverForeground: #75beff;--vscode-debugIcon-stepIntoForeground: #75beff;--vscode-debugIcon-stepOutForeground: #75beff;--vscode-debugIcon-continueForeground: #75beff;--vscode-debugIcon-stepBackForeground: #75beff;--vscode-extensionButton-prominentBackground: #0e639c;--vscode-extensionButton-prominentForeground: #ffffff;--vscode-extensionButton-prominentHoverBackground: #1177bb;--vscode-extensionIcon-starForeground: #ff8e00;--vscode-extensionIcon-verifiedForeground: #3794ff;--vscode-extensionIcon-preReleaseForeground: #1d9271;--vscode-extensionIcon-sponsorForeground: #d758b3;--vscode-terminal-ansiBlack: #000000;--vscode-terminal-ansiRed: #cd3131;--vscode-terminal-ansiGreen: #0dbc79;--vscode-terminal-ansiYellow: #e5e510;--vscode-terminal-ansiBlue: #2472c8;--vscode-terminal-ansiMagenta: #bc3fbc;--vscode-terminal-ansiCyan: #11a8cd;--vscode-terminal-ansiWhite: #e5e5e5;--vscode-terminal-ansiBrightBlack: #666666;--vscode-terminal-ansiBrightRed: #f14c4c;--vscode-terminal-ansiBrightGreen: #23d18b;--vscode-terminal-ansiBrightYellow: #f5f543;--vscode-terminal-ansiBrightBlue: #3b8eea;--vscode-terminal-ansiBrightMagenta: #d670d6;--vscode-terminal-ansiBrightCyan: #29b8db;--vscode-terminal-ansiBrightWhite: #e5e5e5;--vscode-interactive-activeCodeBorder: #3794ff;--vscode-interactive-inactiveCodeBorder: #37373d;--vscode-gitDecoration-addedResourceForeground: #81b88b;--vscode-gitDecoration-modifiedResourceForeground: #e2c08d;--vscode-gitDecoration-deletedResourceForeground: #c74e39;--vscode-gitDecoration-renamedResourceForeground: #73c991;--vscode-gitDecoration-untrackedResourceForeground: #73c991;--vscode-gitDecoration-ignoredResourceForeground: #8c8c8c;--vscode-gitDecoration-stageModifiedResourceForeground: #e2c08d;--vscode-gitDecoration-stageDeletedResourceForeground: #c74e39;--vscode-gitDecoration-conflictingResourceForeground: #e4676b;--vscode-gitDecoration-submoduleResourceForeground: #8db9e2}.test-error-container{position:relative;white-space:pre;flex:none;padding:0;background-color:var(--color-canvas-subtle);border-radius:6px;line-height:initial;margin-bottom:6px}.test-error-view{overflow:auto;padding:16px}.test-error-text{font-family:monospace}.test-result{flex:auto;display:flex;flex-direction:column;margin-bottom:24px}.test-result>div{flex:none}.test-result video,.test-result img.screenshot{flex:none;box-shadow:var(--box-shadow-thick);margin:24px auto;min-width:200px;max-width:80%}.test-result-path{padding:0 0 0 5px;color:var(--color-fg-muted)}.test-result-counter{border-radius:12px;color:var(--color-canvas-default);padding:2px 8px;line-height:normal}.step-title-container{display:flex;align-items:center;flex:auto;min-width:0}.step-title-container>*{flex-shrink:0}.step-title-text{flex-shrink:1;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;min-width:0}.step-title-highlight{background:var(--color-attention-subtle)}.step-spacer{flex:auto}.step-attachment-link{display:flex;flex:none;border-radius:4px;padding:4px}.step-attachment-link:hover{background-color:var(--color-neutral-muted)}.step-attachment-link .octicon{margin-right:0}.step-duration{flex:none;white-space:nowrap;margin-left:4px}:root.light-mode .test-result-counter{background:var(--color-scale-gray-5)}:root.dark-mode .test-result-counter{background:var(--color-scale-gray-3)}.step-filter{margin-bottom:8px}@media only screen and (max-width: 600px){.test-result{padding:0!important}}.test-file-test{line-height:32px;align-items:center;padding:2px 8px;overflow:hidden;text-overflow:ellipsis}.test-file-test-selected,.test-file-test:hover{background-color:var(--color-canvas-subtle)}.test-file-title{font-weight:600;font-size:16px}.test-file-details-row{padding:0 0 6px 8px;margin:0 0 0 15px;line-height:16px;font-weight:400;color:var(--color-fg-muted);display:flex;align-items:center}.test-file-details-row-items{display:flex;height:16px}.test-file-details-row-items>.link-badge{margin-top:-2px}.test-file-details-row-items>.trace-link{margin-top:-4px}.test-file-path{text-overflow:ellipsis;overflow:hidden;color:var(--color-fg-muted)}.test-file-path-link{margin-right:10px}.test-file-test-outcome-skipped{color:var(--color-fg-muted)}.test-file-test-status-icon{flex:none}.test-file-header-info{display:flex;align-items:center;gap:4px 8px;color:var(--color-fg-muted)}.test-file-header-br{flex-basis:100%;height:0}.test-file-no-files{margin-top:12px;color:var(--color-fg-muted);background-color:unset;font-weight:unset;border:1px solid var(--color-border-default);border-bottom-left-radius:6px;border-bottom-right-radius:6px}#root{color:var(--color-fg-default);font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";-webkit-font-smoothing:antialiased}.metadata-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--color-fg-default)}.metadata-toggle-second-line{margin-top:8px;margin-left:8px}.metadata-view{border:1px solid var(--color-border-default);border-radius:6px;margin-top:12px}.metadata-view .metadata-section{margin:8px 10px 8px 32px}.metadata-view span:not(.copy-button-container),.metadata-view a{display:inline-block;line-height:24px}.metadata-properties{display:flex;flex-direction:column;align-items:normal;gap:8px}.metadata-properties>div{height:24px}.metadata-separator{height:1px;border-bottom:1px solid var(--color-border-default)}.metadata-view a{color:var(--color-fg-default)}.copyable-property{white-space:pre}.copyable-property>span{display:flex;align-items:center}.gantt-bar{transition:opacity .2s;cursor:pointer;outline:none}.gantt-bar:hover,.gantt-bar:focus{opacity:.8;stroke:var(--color-fg-default);stroke-width:2} diff --git a/node_modules.codex-backup/playwright-core/lib/vite/htmlReport/report.js b/node_modules.codex-backup/playwright-core/lib/vite/htmlReport/report.js new file mode 100644 index 00000000..56bcd193 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/vite/htmlReport/report.js @@ -0,0 +1,72 @@ +(function(){const c=document.createElement("link").relList;if(c&&c.supports&&c.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))f(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const h of o.addedNodes)h.tagName==="LINK"&&h.rel==="modulepreload"&&f(h)}).observe(document,{childList:!0,subtree:!0});function u(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerPolicy&&(o.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?o.credentials="include":r.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function f(r){if(r.ep)return;r.ep=!0;const o=u(r);fetch(r.href,o)}})();function vA(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}var Of={exports:{}},vi={};/** + * @license React + * react-jsx-runtime.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var y1;function yA(){if(y1)return vi;y1=1;var i=Symbol.for("react.transitional.element"),c=Symbol.for("react.fragment");function u(f,r,o){var h=null;if(o!==void 0&&(h=""+o),r.key!==void 0&&(h=""+r.key),"key"in r){o={};for(var y in r)y!=="key"&&(o[y]=r[y])}else o=r;return r=o.ref,{$$typeof:i,type:f,key:h,ref:r!==void 0?r:null,props:o}}return vi.Fragment=c,vi.jsx=u,vi.jsxs=u,vi}var E1;function EA(){return E1||(E1=1,Of.exports=yA()),Of.exports}var m=EA();const pA=15,bt=0,En=1,xA=2,ye=-2,Ut=-3,p1=-4,pn=-5,Me=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],R2=1440,bA=0,SA=4,TA=9,CA=5,OA=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],DA=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],RA=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],wA=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],MA=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],jA=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],_n=15;function qf(){const i=this;let c,u,f,r,o,h;function y(A,x,T,D,X,q,p,E,b,R,N){let V,F,H,j,Y,z,I,k,nt,P,st,ut,M,_,$;P=0,Y=T;do f[A[x+P]]++,P++,Y--;while(Y!==0);if(f[0]==T)return p[0]=-1,E[0]=0,bt;for(k=E[0],z=1;z<=_n&&f[z]===0;z++);for(I=z,kY&&(k=Y),E[0]=k,_=1<ut+k;){if(j++,ut+=k,$=H-ut,$=$>k?k:$,(F=1<<(z=I-ut))>V+1&&(F-=V+1,M=I,z<$))for(;++z<$&&!((F<<=1)<=f[++M]);)F-=f[M];if($=1<R2)return Ut;o[j]=st=R[0],R[0]+=$,j!==0?(h[j]=Y,r[0]=z,r[1]=k,z=Y>>>ut-k,r[2]=st-o[j-1]-z,b.set(r,(o[j-1]+z)*3)):p[0]=st}for(r[1]=I-ut,P>=T?r[0]=192:N[P]>>ut;z<$;z+=F)b.set(r,(st+z)*3);for(z=1<>>=1)Y^=z;for(Y^=z,nt=(1<257?(R==Ut?b.msg="oversubscribed distance tree":R==pn?(b.msg="incomplete distance tree",R=Ut):R!=p1&&(b.msg="empty distance tree with lengths",R=Ut),R):bt)}}qf.inflate_trees_fixed=function(i,c,u,f){return i[0]=TA,c[0]=CA,u[0]=OA,f[0]=DA,bt};const Fu=0,x1=1,b1=2,S1=3,T1=4,C1=5,O1=6,Df=7,D1=8,Wu=9;function NA(){const i=this;let c,u=0,f,r=0,o=0,h=0,y=0,v=0,A=0,x=0,T,D=0,X,q=0;function p(E,b,R,N,V,F,H,j){let Y,z,I,k,nt,P,st,ut,M,_,$,ht,tt,C,L,W;st=j.next_in_index,ut=j.avail_in,nt=H.bitb,P=H.bitk,M=H.write,_=M>=z[W+1],P-=z[W+1],H.win[M++]=z[W+2],_--;continue}do{if(nt>>=z[W+1],P-=z[W+1],(k&16)!==0){for(k&=15,tt=z[W+2]+(nt&Me[k]),nt>>=k,P-=k;P<15;)ut--,nt|=(j.read_byte(st++)&255)<>=z[W+1],P-=z[W+1],(k&16)!==0){for(k&=15;P>=k,P-=k,_-=tt,M>=C)L=M-C,M-L>0&&2>M-L?(H.win[M++]=H.win[L++],H.win[M++]=H.win[L++],tt-=2):(H.win.set(H.win.subarray(L,L+2),M),M+=2,L+=2,tt-=2);else{L=M-C;do L+=H.end;while(L<0);if(k=H.end-L,tt>k){if(tt-=k,M-L>0&&k>M-L)do H.win[M++]=H.win[L++];while(--k!==0);else H.win.set(H.win.subarray(L,L+k),M),M+=k,L+=k,k=0;L=0}}if(M-L>0&&tt>M-L)do H.win[M++]=H.win[L++];while(--tt!==0);else H.win.set(H.win.subarray(L,L+tt),M),M+=tt,L+=tt,tt=0;break}else if((k&64)===0)Y+=z[W+2],Y+=nt&Me[k],W=(I+Y)*3,k=z[W];else return j.msg="invalid distance code",tt=j.avail_in-ut,tt=P>>3>3:tt,ut+=tt,st-=tt,P-=tt<<3,H.bitb=nt,H.bitk=P,j.avail_in=ut,j.total_in+=st-j.next_in_index,j.next_in_index=st,H.write=M,Ut;while(!0);break}if((k&64)===0){if(Y+=z[W+2],Y+=nt&Me[k],W=(I+Y)*3,(k=z[W])===0){nt>>=z[W+1],P-=z[W+1],H.win[M++]=z[W+2],_--;break}}else return(k&32)!==0?(tt=j.avail_in-ut,tt=P>>3>3:tt,ut+=tt,st-=tt,P-=tt<<3,H.bitb=nt,H.bitk=P,j.avail_in=ut,j.total_in+=st-j.next_in_index,j.next_in_index=st,H.write=M,En):(j.msg="invalid literal/length code",tt=j.avail_in-ut,tt=P>>3>3:tt,ut+=tt,st-=tt,P-=tt<<3,H.bitb=nt,H.bitk=P,j.avail_in=ut,j.total_in+=st-j.next_in_index,j.next_in_index=st,H.write=M,Ut)}while(!0)}while(_>=258&&ut>=10);return tt=j.avail_in-ut,tt=P>>3>3:tt,ut+=tt,st-=tt,P-=tt<<3,H.bitb=nt,H.bitk=P,j.avail_in=ut,j.total_in+=st-j.next_in_index,j.next_in_index=st,H.write=M,bt}i.init=function(E,b,R,N,V,F){c=Fu,A=E,x=b,T=R,D=N,X=V,q=F,f=null},i.proc=function(E,b,R){let N,V,F,H=0,j=0,Y=0,z,I,k,nt;for(Y=b.next_in_index,z=b.avail_in,H=E.bitb,j=E.bitk,I=E.write,k=I=258&&z>=10&&(E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,R=p(A,x,T,D,X,q,E,b),Y=b.next_in_index,z=b.avail_in,H=E.bitb,j=E.bitk,I=E.write,k=I>>=f[V+1],j-=f[V+1],F=f[V],F===0){h=f[V+2],c=O1;break}if((F&16)!==0){y=F&15,u=f[V+2],c=b1;break}if((F&64)===0){o=F,r=V/3+f[V+2];break}if((F&32)!==0){c=Df;break}return c=Wu,b.msg="invalid literal/length code",R=Ut,E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,E.inflate_flush(b,R);case b1:for(N=y;j>=N,j-=N,o=x,f=X,r=q,c=S1;case S1:for(N=o;j>=f[V+1],j-=f[V+1],F=f[V],(F&16)!==0){y=F&15,v=f[V+2],c=T1;break}if((F&64)===0){o=F,r=V/3+f[V+2];break}return c=Wu,b.msg="invalid distance code",R=Ut,E.bitb=H,E.bitk=j,b.avail_in=z,b.total_in+=Y-b.next_in_index,b.next_in_index=Y,E.write=I,E.inflate_flush(b,R);case T1:for(N=y;j>=N,j-=N,c=C1;case C1:for(nt=I-v;nt<0;)nt+=E.end;for(;u!==0;){if(k===0&&(I==E.end&&E.read!==0&&(I=0,k=I7&&(j-=8,z++,Y--),E.write=I,R=E.inflate_flush(b,R),I=E.write,k=Ip.avail_out&&(b=p.avail_out),b!==0&&E==pn&&(E=bt),p.avail_out-=b,p.total_out+=b,p.next_out.set(u.win.subarray(N,N+b),R),R+=b,N+=b,N==u.end&&(N=0,u.write==u.end&&(u.write=0),b=u.write-N,b>p.avail_out&&(b=p.avail_out),b!==0&&E==pn&&(E=bt),p.avail_out-=b,p.total_out+=b,p.next_out.set(u.win.subarray(N,N+b),R),R+=b,N+=b),p.next_out_index=R,u.read=N,E},u.proc=function(p,E){let b,R,N,V,F,H,j,Y;for(V=p.next_in_index,F=p.avail_in,R=u.bitb,N=u.bitk,H=u.write,j=H>>1){case 0:R>>>=3,N-=3,b=N&7,R>>>=b,N-=b,f=Rf;break;case 1:z=[],I=[],k=[[]],nt=[[]],qf.inflate_trees_fixed(z,I,k,nt),x.init(z[0],I[0],k[0],0,nt[0],0),R>>>=3,N-=3,f=_u;break;case 2:R>>>=3,N-=3,f=M1;break;case 3:return R>>>=3,N-=3,f=Cl,p.msg="invalid block type",E=Ut,u.bitb=R,u.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,u.write=H,u.inflate_flush(p,E)}break;case Rf:for(;N<32;){if(F!==0)E=bt;else return u.bitb=R,u.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,u.write=H,u.inflate_flush(p,E);F--,R|=(p.read_byte(V++)&255)<>>16&65535)!=(R&65535))return f=Cl,p.msg="invalid stored block lengths",E=Ut,u.bitb=R,u.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,u.write=H,u.inflate_flush(p,E);r=R&65535,R=N=0,f=r!==0?w1:T!==0?Pu:ya;break;case w1:if(F===0||j===0&&(H==u.end&&u.read!==0&&(H=0,j=HF&&(b=F),b>j&&(b=j),u.win.set(p.read_buf(V,b),H),V+=b,F-=b,H+=b,j-=b,(r-=b)!==0)break;f=T!==0?Pu:ya;break;case M1:for(;N<14;){if(F!==0)E=bt;else return u.bitb=R,u.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,u.write=H,u.inflate_flush(p,E);F--,R|=(p.read_byte(V++)&255)<29||(b>>5&31)>29)return f=Cl,p.msg="too many length or distance symbols",E=Ut,u.bitb=R,u.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,u.write=H,u.inflate_flush(p,E);if(b=258+(b&31)+(b>>5&31),!y||y.length>>=14,N-=14,h=0,f=j1;case j1:for(;h<4+(o>>>10);){for(;N<3;){if(F!==0)E=bt;else return u.bitb=R,u.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,u.write=H,u.inflate_flush(p,E);F--,R|=(p.read_byte(V++)&255)<>>=3,N-=3}for(;h<19;)y[R1[h++]]=0;if(v[0]=7,b=q.inflate_trees_bits(y,v,A,D,p),b!=bt)return E=b,E==Ut&&(y=null,f=Cl),u.bitb=R,u.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,u.write=H,u.inflate_flush(p,E);h=0,f=N1;case N1:for(;b=o,!(h>=258+(b&31)+(b>>5&31));){let _,$;for(b=v[0];N>>=b,N-=b,y[h++]=$;else{for(Y=$==18?7:$-14,_=$==18?11:3;N>>=b,N-=b,_+=R&Me[Y],R>>>=Y,N-=Y,Y=h,b=o,Y+_>258+(b&31)+(b>>5&31)||$==16&&Y<1)return y=null,f=Cl,p.msg="invalid bit length repeat",E=Ut,u.bitb=R,u.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,u.write=H,u.inflate_flush(p,E);$=$==16?y[Y-1]:0;do y[Y++]=$;while(--_!==0);h=Y}}if(A[0]=-1,P=[],st=[],ut=[],M=[],P[0]=9,st[0]=6,b=o,b=q.inflate_trees_dynamic(257+(b&31),1+(b>>5&31),y,P,st,ut,M,D,p),b!=bt)return b==Ut&&(y=null,f=Cl),E=b,u.bitb=R,u.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,u.write=H,u.inflate_flush(p,E);x.init(P[0],st[0],D,ut[0],D,M[0]),f=_u;case _u:if(u.bitb=R,u.bitk=N,p.avail_in=F,p.total_in+=V-p.next_in_index,p.next_in_index=V,u.write=H,(E=x.proc(u,p,E))!=En)return u.inflate_flush(p,E);if(E=bt,x.free(p),V=p.next_in_index,F=p.avail_in,R=u.bitb,N=u.bitk,H=u.write,j=H15?(i.inflateEnd(u),ye):(i.wbits=f,u.istate.blocks=new HA(u,1<>4)+8>h.wbits){h.mode=Pn,u.msg="invalid win size",h.marker=5;break}h.mode=B1;case B1:if(u.avail_in===0)return r;if(r=f,u.avail_in--,u.total_in++,o=u.read_byte(u.next_in_index++)&255,((h.method<<8)+o)%31!==0){h.mode=Pn,u.msg="incorrect header check",h.marker=5;break}if((o&BA)===0){h.mode=yi;break}h.mode=U1;case U1:if(u.avail_in===0)return r;r=f,u.avail_in--,u.total_in++,h.need=(u.read_byte(u.next_in_index++)&255)<<24&4278190080,h.mode=Q1;case Q1:if(u.avail_in===0)return r;r=f,u.avail_in--,u.total_in++,h.need+=(u.read_byte(u.next_in_index++)&255)<<16&16711680,h.mode=z1;case z1:if(u.avail_in===0)return r;r=f,u.avail_in--,u.total_in++,h.need+=(u.read_byte(u.next_in_index++)&255)<<8&65280,h.mode=Y1;case Y1:return u.avail_in===0?r:(r=f,u.avail_in--,u.total_in++,h.need+=u.read_byte(u.next_in_index++)&255,h.mode=wf,xA);case wf:return h.mode=Pn,u.msg="need dictionary",h.marker=0,ye;case yi:if(r=h.blocks.proc(u,r),r==Ut){h.mode=Pn,h.marker=0;break}if(r==bt&&(r=f),r!=En)return r;r=f,h.blocks.reset(u,h.was),h.mode=L1;case L1:return u.avail_in=0,En;case Pn:return Ut;default:return ye}},i.inflateSetDictionary=function(u,f,r){let o=0,h=r;if(!u||!u.istate||u.istate.mode!=wf)return ye;const y=u.istate;return h>=1<0&&u.next_in_index!=D&&(v(u.next_in_index),D=u.next_in_index)}while(u.avail_in>0||u.avail_out===0);return A.length>1?(T=new Uint8Array(q),A.forEach(function(p){T.set(p,X),X+=p.length})):T=A[0]?new Uint8Array(A[0]):new Uint8Array,T}},c.flush=function(){u.inflateEnd()}}const Rl=4294967295,el=65535,GA=8,XA=0,VA=99,ZA=67324752,M2=134695760,IA=M2,G1=33639248,qA=101010256,X1=101075792,KA=117853008,Ea=22,Mf=20,jf=56,kA=12,JA=20,V1=4,FA=1,WA=39169,_A=10,PA=1,$A=21589,t8=28789,e8=25461,n8=6534,Z1=1,l8=6,I1=8,q1=2048,K1=16,a8=61440,i8=16384,u8=73,k1="/",Nf=30,c8=10,s8=14,f8=18,$t=void 0,al="undefined",Ri="function";class J1{constructor(c){return class extends TransformStream{constructor(u,f){const r=new c(f);super({transform(o,h){h.enqueue(r.append(o))},flush(o){const h=r.flush();h&&o.enqueue(h)}})}}}}const r8=64;let j2=2;try{typeof navigator!=al&&navigator.hardwareConcurrency&&(j2=navigator.hardwareConcurrency)}catch{}const o8={chunkSize:512*1024,maxWorkers:j2,terminateWorkerTimeout:5e3,useWebWorkers:!0,useCompressionStream:!0,workerScripts:$t,CompressionStreamNative:typeof CompressionStream!=al&&CompressionStream,DecompressionStreamNative:typeof DecompressionStream!=al&&DecompressionStream},nl=Object.assign({},o8);function d8(){return nl}function h8(i){return Math.max(i.chunkSize,r8)}function N2(i){const{baseURL:c,chunkSize:u,maxWorkers:f,terminateWorkerTimeout:r,useCompressionStream:o,useWebWorkers:h,Deflate:y,Inflate:v,CompressionStream:A,DecompressionStream:x,workerScripts:T}=i;if($n("baseURL",c),$n("chunkSize",u),$n("maxWorkers",f),$n("terminateWorkerTimeout",r),$n("useCompressionStream",o),$n("useWebWorkers",h),y&&(nl.CompressionStream=new J1(y)),v&&(nl.DecompressionStream=new J1(v)),$n("CompressionStream",A),$n("DecompressionStream",x),T!==$t){const{deflate:D,inflate:X}=T;if((D||X)&&(nl.workerScripts||(nl.workerScripts={})),D){if(!Array.isArray(D))throw new Error("workerScripts.deflate must be an array");nl.workerScripts.deflate=D}if(X){if(!Array.isArray(X))throw new Error("workerScripts.inflate must be an array");nl.workerScripts.inflate=X}}}function $n(i,c){c!==$t&&(nl[i]=c)}const H2=[];for(let i=0;i<256;i++){let c=i;for(let u=0;u<8;u++)c&1?c=c>>>1^3988292384:c=c>>>1;H2[i]=c}class ac{constructor(c){this.crc=c||-1}append(c){let u=this.crc|0;for(let f=0,r=c.length|0;f>>8^H2[(u^c[f])&255];this.crc=u}get(){return~this.crc}}class B2 extends TransformStream{constructor(){let c;const u=new ac;super({transform(f,r){u.append(f),r.enqueue(f)},flush(){const f=new Uint8Array(4);new DataView(f.buffer).setUint32(0,u.get()),c.value=f}}),c=this}}function m8(i){if(typeof TextEncoder==al){i=unescape(encodeURIComponent(i));const c=new Uint8Array(i.length);for(let u=0;u0&&c&&(i[u-1]=re.partial(c,i[u-1]&2147483648>>c-1,1)),i},partial(i,c,u){return i===32?c:(u?c|0:c<<32-i)+i*1099511627776},getPartial(i){return Math.round(i/1099511627776)||32},_shiftRight(i,c,u,f){for(f===void 0&&(f=[]);c>=32;c-=32)f.push(u),u=0;if(c===0)return f.concat(i);for(let h=0;h>>c),u=i[h]<<32-c;const r=i.length?i[i.length-1]:0,o=re.getPartial(r);return f.push(re.partial(c+o&31,c+o>32?u:f.pop(),1)),f}},ic={bytes:{fromBits(i){const u=re.bitLength(i)/8,f=new Uint8Array(u);let r;for(let o=0;o>>24,r<<=8;return f},toBits(i){const c=[];let u,f=0;for(u=0;u9007199254740991)throw new Error("Cannot hash more than 2^53 - 1 bits");const o=new Uint32Array(u);let h=0;for(let y=c.blockSize+f-(c.blockSize+f&c.blockSize-1);y<=r;y+=c.blockSize)c._block(o.subarray(16*h,16*(h+1))),h+=1;return u.splice(0,16*h),c}finalize(){const i=this;let c=i._buffer;const u=i._h;c=re.concat(c,[re.partial(1,1)]);for(let f=c.length+2;f&15;f++)c.push(0);for(c.push(Math.floor(i._length/4294967296)),c.push(i._length|0);c.length;)i._block(c.splice(0,16));return i.reset(),u}_f(i,c,u,f){if(i<=19)return c&u|~c&f;if(i<=39)return c^u^f;if(i<=59)return c&u|c&f|u&f;if(i<=79)return c^u^f}_S(i,c){return c<>>32-i}_block(i){const c=this,u=c._h,f=Array(80);for(let A=0;A<16;A++)f[A]=i[A];let r=u[0],o=u[1],h=u[2],y=u[3],v=u[4];for(let A=0;A<=79;A++){A>=16&&(f[A]=c._S(1,f[A-3]^f[A-8]^f[A-14]^f[A-16]));const x=c._S(5,r)+c._f(A,o,h,y)+v+f[A]+c._key[Math.floor(A/20)]|0;v=y,y=h,h=c._S(30,o),o=r,r=x}u[0]=u[0]+r|0,u[1]=u[1]+o|0,u[2]=u[2]+h|0,u[3]=u[3]+y|0,u[4]=u[4]+v|0}};const Q2={};Q2.aes=class{constructor(i){const c=this;c._tables=[[[],[],[],[],[]],[[],[],[],[],[]]],c._tables[0][0][0]||c._precompute();const u=c._tables[0][4],f=c._tables[1],r=i.length;let o,h,y,v=1;if(r!==4&&r!==6&&r!==8)throw new Error("invalid aes key size");for(c._key=[h=i.slice(0),y=[]],o=r;o<4*r+28;o++){let A=h[o-1];(o%r===0||r===8&&o%r===4)&&(A=u[A>>>24]<<24^u[A>>16&255]<<16^u[A>>8&255]<<8^u[A&255],o%r===0&&(A=A<<8^A>>>24^v<<24,v=v<<1^(v>>7)*283)),h[o]=h[o-r]^A}for(let A=0;o;A++,o--){const x=h[A&3?o:o-4];o<=4||A<4?y[A]=x:y[A]=f[0][u[x>>>24]]^f[1][u[x>>16&255]]^f[2][u[x>>8&255]]^f[3][u[x&255]]}}encrypt(i){return this._crypt(i,0)}decrypt(i){return this._crypt(i,1)}_precompute(){const i=this._tables[0],c=this._tables[1],u=i[4],f=c[4],r=[],o=[];let h,y,v,A;for(let x=0;x<256;x++)o[(r[x]=x<<1^(x>>7)*283)^x]=x;for(let x=h=0;!u[x];x^=y||1,h=o[h]||1){let T=h^h<<1^h<<2^h<<3^h<<4;T=T>>8^T&255^99,u[x]=T,f[T]=x,A=r[v=r[y=r[x]]];let D=A*16843009^v*65537^y*257^x*16843008,X=r[T]*257^T*16843008;for(let q=0;q<4;q++)i[q][x]=X=X<<24^X>>>8,c[q][T]=D=D<<24^D>>>8}for(let x=0;x<5;x++)i[x]=i[x].slice(0),c[x]=c[x].slice(0)}_crypt(i,c){if(i.length!==4)throw new Error("invalid aes block size");const u=this._key[c],f=u.length/4-2,r=[0,0,0,0],o=this._tables[c],h=o[0],y=o[1],v=o[2],A=o[3],x=o[4];let T=i[0]^u[0],D=i[c?3:1]^u[1],X=i[2]^u[2],q=i[c?1:3]^u[3],p=4,E,b,R;for(let N=0;N>>24]^y[D>>16&255]^v[X>>8&255]^A[q&255]^u[p],b=h[D>>>24]^y[X>>16&255]^v[q>>8&255]^A[T&255]^u[p+1],R=h[X>>>24]^y[q>>16&255]^v[T>>8&255]^A[D&255]^u[p+2],q=h[q>>>24]^y[T>>16&255]^v[D>>8&255]^A[X&255]^u[p+3],p+=4,T=E,D=b,X=R;for(let N=0;N<4;N++)r[c?3&-N:N]=x[T>>>24]<<24^x[D>>16&255]<<16^x[X>>8&255]<<8^x[q&255]^u[p++],E=T,T=D,D=X,X=q,q=E;return r}};const g8={getRandomValues(i){const c=new Uint32Array(i.buffer),u=f=>{let r=987654321;const o=4294967295;return function(){return r=36969*(r&65535)+(r>>16)&o,f=18e3*(f&65535)+(f>>16)&o,(((r<<16)+f&o)/4294967296+.5)*(Math.random()>.5?1:-1)}};for(let f=0,r;f>24&255)===255){let c=i>>16&255,u=i>>8&255,f=i&255;c===255?(c=0,u===255?(u=0,f===255?f=0:++f):++u):++c,i=0,i+=c<<16,i+=u<<8,i+=f}else i+=1<<24;return i}incCounter(i){(i[0]=this.incWord(i[0]))===0&&(i[1]=this.incWord(i[1]))}calculate(i,c,u){let f;if(!(f=c.length))return[];const r=re.bitLength(c);for(let o=0;o>5)+1<<2;let o,h,y,v,A;const x=new ArrayBuffer(r),T=new DataView(x);let D=0;const X=re;for(c=ic.bytes.toBits(c),A=1;D<(r||1);A++){for(o=h=i.encrypt(X.concat(c,[A])),y=1;yr&&(i=new u().update(i).finalize());for(let o=0;othis.resolveReady=h),password:Z2(c,u),signed:f,strength:r-1,pending:new Uint8Array})},async transform(h,y){const v=this,{password:A,strength:x,resolveReady:T,ready:D}=v;A?(await R8(v,x,A,Xe(h,0,Si[x]+2)),h=Xe(h,Si[x]+2),o?y.error(new Error(ir)):T()):await D;const X=new Uint8Array(h.length-tl-(h.length-tl)%pa);y.enqueue(X2(v,h,X,0,tl,!0))},async flush(h){const{signed:y,ctr:v,hmac:A,pending:x,ready:T}=this;if(A&&v){await T;const D=Xe(x,0,x.length-tl),X=Xe(x,x.length-tl);let q=new Uint8Array;if(D.length){const p=Ci(Pe,D);A.update(p);const E=v.update(p);q=Ti(Pe,E)}if(y){const p=Xe(Ti(Pe,A.digest()),0,tl);for(let E=0;Ethis.resolveReady=o),password:Z2(c,u),strength:f-1,pending:new Uint8Array})},async transform(o,h){const y=this,{password:v,strength:A,resolveReady:x,ready:T}=y;let D=new Uint8Array;v?(D=await w8(y,A,v),x()):await T;const X=new Uint8Array(D.length+o.length-o.length%pa);X.set(D,0),h.enqueue(X2(y,o,X,D.length,0))},async flush(o){const{ctr:h,hmac:y,pending:v,ready:A}=this;if(y&&h){await A;let x=new Uint8Array;if(v.length){const T=h.update(Ci(Pe,v));y.update(T),x=Ti(Pe,T)}r.signature=Ti(Pe,y.digest()).slice(0,tl),o.enqueue(ur(x,r.signature))}}}),r=this}}function X2(i,c,u,f,r,o){const{ctr:h,hmac:y,pending:v}=i,A=c.length-r;v.length&&(c=ur(v,c),u=N8(u,A-A%pa));let x;for(x=0;x<=A-pa;x+=pa){const T=Ci(Pe,Xe(c,x,x+pa));o&&y.update(T);const D=h.update(T);o||y.update(D),u.set(Ti(Pe,D),x+f)}return i.pending=Xe(c,x),u}async function R8(i,c,u,f){const r=await V2(i,c,u,Xe(f,0,Si[c])),o=Xe(f,Si[c]);if(r[0]!=o[0]||r[1]!=o[1])throw new Error(lr)}async function w8(i,c,u){const f=Y2(new Uint8Array(Si[c])),r=await V2(i,c,u,f);return ur(f,r)}async function V2(i,c,u,f){i.password=null;const r=await M8(v8,u,p8,!1,x8),o=await j8(Object.assign({salt:f},Kf),r,8*(Ei[c]*2+2)),h=new Uint8Array(o),y=Ci(Pe,Xe(h,0,Ei[c])),v=Ci(Pe,Xe(h,Ei[c],Ei[c]*2)),A=Xe(h,Ei[c]*2);return Object.assign(i,{keys:{key:y,authentication:v,passwordVerification:A},ctr:new T8(new S8(y),Array.from(b8)),hmac:new C8(v)}),A}async function M8(i,c,u,f,r){if(F1)try{return await wi.importKey(i,c,u,f,r)}catch{return F1=!1,wl.importKey(c)}else return wl.importKey(c)}async function j8(i,c,u){if(W1)try{return await wi.deriveBits(i,c,u)}catch{return W1=!1,wl.pbkdf2(c,i.salt,Kf.iterations,u)}else return wl.pbkdf2(c,i.salt,Kf.iterations,u)}function Z2(i,c){return c===$t?m8(i):c}function ur(i,c){let u=i;return i.length+c.length&&(u=new Uint8Array(i.length+c.length),u.set(i,0),u.set(c,i.length)),u}function N8(i,c){if(c&&c>i.length){const u=i;i=new Uint8Array(c),i.set(u,0)}return i}function Xe(i,c,u){return i.subarray(c,u)}function Ti(i,c){return i.fromBits(c)}function Ci(i,c){return i.toBits(c)}const bi=12;class H8 extends TransformStream{constructor({password:c,passwordVerification:u,checkPasswordOnly:f}){super({start(){Object.assign(this,{password:c,passwordVerification:u}),I2(this,c)},transform(r,o){const h=this;if(h.password){const y=_1(h,r.subarray(0,bi));if(h.password=null,y.at(-1)!=h.passwordVerification)throw new Error(lr);r=r.subarray(bi)}f?o.error(new Error(ir)):o.enqueue(_1(h,r))}})}}class B8 extends TransformStream{constructor({password:c,passwordVerification:u}){super({start(){Object.assign(this,{password:c,passwordVerification:u}),I2(this,c)},transform(f,r){const o=this;let h,y;if(o.password){o.password=null;const v=Y2(new Uint8Array(bi));v[bi-1]=o.passwordVerification,h=new Uint8Array(f.length+v.length),h.set(P1(o,v),0),y=bi}else h=new Uint8Array(f.length),y=0;h.set(P1(o,f),y),r.enqueue(h)}})}}function _1(i,c){const u=new Uint8Array(c.length);for(let f=0;f>>24]),r=~i.crcKey2.get(),i.keys=[u,f,r]}function q2(i){const c=i.keys[2]|2;return K2(Math.imul(c,c^1)>>>8)}function K2(i){return i&255}function $1(i){return i&4294967295}const sr="Invalid uncompressed size",t2="deflate-raw";class U8 extends TransformStream{constructor(c,{chunkSize:u,CompressionStream:f,CompressionStreamNative:r}){super({});const{compressed:o,encrypted:h,useCompressionStream:y,zipCrypto:v,signed:A,level:x}=c,T=this;let D,X,q=super.readable;(!h||v)&&A&&(D=new B2,q=xn(q,D)),o&&(q=J2(q,y,{level:x,chunkSize:u},r,f)),h&&(v?q=xn(q,new B8(c)):(X=new D8(c),q=xn(q,X))),k2(T,q,()=>{let p;h&&!v&&(p=X.signature),(!h||v)&&A&&(p=new DataView(D.value.buffer).getUint32(0)),T.signature=p})}}class Q8 extends TransformStream{constructor(c,{chunkSize:u,DecompressionStream:f,DecompressionStreamNative:r}){super({});const{zipCrypto:o,encrypted:h,signed:y,signature:v,compressed:A,useCompressionStream:x}=c;let T,D,X=super.readable;h&&(o?X=xn(X,new H8(c)):(D=new O8(c),X=xn(X,D))),A&&(X=J2(X,x,{chunkSize:u},r,f)),(!h||o)&&y&&(T=new B2,X=xn(X,T)),k2(this,X,()=>{if((!h||o)&&y){const q=new DataView(T.value.buffer);if(v!=q.getUint32(0,!1))throw new Error(ar)}})}}function k2(i,c,u){c=xn(c,new TransformStream({flush:u})),Object.defineProperty(i,"readable",{get(){return c}})}function J2(i,c,u,f,r){try{const o=c&&f?f:r;i=xn(i,new o(t2,u))}catch(o){if(c)i=xn(i,new r(t2,u));else throw o}return i}function xn(i,c){return i.pipeThrough(c)}const z8="message",Y8="start",L8="pull",e2="data",G8="ack",n2="close",X8="deflate",F2="inflate";class V8 extends TransformStream{constructor(c,u){super({});const f=this,{codecType:r}=c;let o;r.startsWith(X8)?o=U8:r.startsWith(F2)&&(o=Q8),f.outputSize=0;let h=0;const y=new o(c,u),v=super.readable,A=new TransformStream({transform(T,D){T&&T.length&&(h+=T.length,D.enqueue(T))},flush(){Object.assign(f,{inputSize:h})}}),x=new TransformStream({transform(T,D){if(T&&T.length&&(D.enqueue(T),f.outputSize+=T.length,c.outputSize&&f.outputSize>c.outputSize))throw new Error(sr)},flush(){const{signature:T}=y;Object.assign(f,{signature:T,inputSize:h})}});Object.defineProperty(f,"readable",{get(){return v.pipeThrough(A).pipeThrough(y).pipeThrough(x)}})}}class Z8 extends TransformStream{constructor(c){let u;super({transform:f,flush(r){u&&u.length&&r.enqueue(u)}});function f(r,o){if(u){const h=new Uint8Array(u.length+r.length);h.set(u),h.set(r,u.length),r=h,u=null}r.length>c?(o.enqueue(r.slice(0,c)),f(r.slice(c),o)):u=r}}}let W2=typeof Worker!=al;class Hf{constructor(c,{readable:u,writable:f},{options:r,config:o,streamOptions:h,useWebWorkers:y,transferStreams:v,scripts:A},x){const{signal:T}=h;return Object.assign(c,{busy:!0,readable:u.pipeThrough(new Z8(o.chunkSize)).pipeThrough(new I8(h),{signal:T}),writable:f,options:Object.assign({},r),scripts:A,transferStreams:v,terminate(){return new Promise(D=>{const{worker:X,busy:q}=c;X?(q?c.resolveTerminated=D:(X.terminate(),D()),c.interface=null):D()})},onTaskFinished(){const{resolveTerminated:D}=c;D&&(c.resolveTerminated=null,c.terminated=!0,c.worker.terminate(),D()),c.busy=!1,x(c)}}),(y&&W2?q8:_2)(c,o)}}class I8 extends TransformStream{constructor({onstart:c,onprogress:u,size:f,onend:r}){let o=0;super({async start(){c&&await Bf(c,f)},async transform(h,y){o+=h.length,u&&await Bf(u,o,f),y.enqueue(h)},async flush(){r&&await Bf(r,o)}})}}async function Bf(i,...c){try{await i(...c)}catch{}}function _2(i,c){return{run:()=>K8(i,c)}}function q8(i,c){const{baseURL:u,chunkSize:f}=c;if(!i.interface){let r;try{r=F8(i.scripts[0],u,i)}catch{return W2=!1,_2(i,c)}Object.assign(i,{worker:r,interface:{run:()=>k8(i,{chunkSize:f})}})}return i.interface}async function K8({options:i,readable:c,writable:u,onTaskFinished:f},r){let o;try{o=new V8(i,r),await c.pipeThrough(o).pipeTo(u,{preventClose:!0,preventAbort:!0});const{signature:h,inputSize:y,outputSize:v}=o;return{signature:h,inputSize:y,outputSize:v}}catch(h){throw o&&(h.outputSize=o.outputSize),h}finally{f()}}async function k8(i,c){let u,f;const r=new Promise((D,X)=>{u=D,f=X});Object.assign(i,{reader:null,writer:null,resolveResult:u,rejectResult:f,result:r});const{readable:o,options:h,scripts:y}=i,{writable:v,closed:A}=J8(i.writable),x=ec({type:Y8,scripts:y.slice(1),options:h,config:c,readable:o,writable:v},i);x||Object.assign(i,{reader:o.getReader(),writer:v.getWriter()});const T=await r;return x||await v.getWriter().close(),await A,T}function J8(i){let c;const u=new Promise(r=>c=r);return{writable:new WritableStream({async write(r){const o=i.getWriter();await o.ready,await o.write(r),o.releaseLock()},close(){c()},abort(r){return i.getWriter().abort(r)}}),closed:u}}let l2=!0,a2=!0;function F8(i,c,u){const f={type:"module"};let r,o;typeof i==Ri&&(i=i());try{r=new URL(i,c)}catch{r=i}if(l2)try{o=new Worker(r)}catch{l2=!1,o=new Worker(r,f)}else o=new Worker(r,f);return o.addEventListener(z8,h=>W8(h,u)),o}function ec(i,{worker:c,writer:u,onTaskFinished:f,transferStreams:r}){try{const{value:o,readable:h,writable:y}=i,v=[];if(o&&(o.byteLength!b.busy);if(E)return u2(E),new Hf(E,i,c,p);if(Ol.lengthUf.push({resolve:b,stream:i,workerOptions:c}))}function p(E){if(Uf.length){const[{resolve:b,stream:R,workerOptions:N}]=Uf.splice(0,1);b(new Hf(E,R,N,p))}else E.worker?(u2(E),P8(E,c)):Ol=Ol.filter(b=>b!=E)}}function P8(i,c){const{config:u}=c,{terminateWorkerTimeout:f}=u;Number.isFinite(f)&&f>=0&&(i.terminated?i.terminated=!1:i.terminateTimeout=setTimeout(async()=>{Ol=Ol.filter(r=>r!=i);try{await i.terminate()}catch{}},f))}function u2(i){const{terminateTimeout:c}=i;c&&(clearTimeout(c),i.terminateTimeout=null)}const P2="Writer iterator completed too soon",$8="Content-Type",t3=64*1024,$2="writable";class fr{constructor(){this.size=0}init(){this.initialized=!0}}class sc extends fr{get readable(){const c=this,{chunkSize:u=t3}=c,f=new ReadableStream({start(){this.chunkOffset=0},async pull(r){const{offset:o=0,size:h,diskNumberStart:y}=f,{chunkOffset:v}=this,A=h===$t?u:Math.min(u,h-v),x=await _t(c,o+v,A,y);r.enqueue(x),v+u>h||h===$t&&!x.length&&A?r.close():this.chunkOffset+=u}});return f}}class e3 extends sc{constructor(c){super();let u=c.length;for(;c.charAt(u-1)=="=";)u--;const f=c.indexOf(",")+1;Object.assign(this,{dataURI:c,dataStart:f,size:Math.floor((u-f)*.75)})}readUint8Array(c,u){const{dataStart:f,dataURI:r}=this,o=new Uint8Array(u),h=Math.floor(c/3)*4,y=atob(r.substring(h+f,Math.ceil((c+u)/3)*4+f)),v=c-Math.floor(h/4)*3;let A=0;for(let x=v;xu&&(h=h.slice(c,r)),new Uint8Array(h)}}class eh extends fr{constructor(c){super();const u=this,f=new TransformStream,r=[];c&&r.push([$8,c]),Object.defineProperty(u,$2,{get(){return f.writable}}),u.blob=new Response(f.readable,{headers:r}).blob()}getData(){return this.blob}}class n3 extends eh{constructor(c){super(c),Object.assign(this,{encoding:c,utf8:!c||c.toLowerCase()=="utf-8"})}async getData(){const{encoding:c,utf8:u}=this,f=await super.getData();if(f.text&&u)return f.text();{const r=new FileReader;return new Promise((o,h)=>{Object.assign(r,{onload:({target:y})=>o(y.result),onerror:()=>h(r.error)}),r.readAsText(f,c)})}}}class nh extends sc{constructor(c){super(),this.readers=c}async init(){const c=this,{readers:u}=c;c.lastDiskNumber=0,c.lastDiskOffset=0,await Promise.all(u.map(async(f,r)=>{await f.init(),r!=u.length-1&&(c.lastDiskOffset+=f.size),c.size+=f.size})),super.init()}async readUint8Array(c,u,f=0){const r=this,{readers:o}=this;let h,y=f;y==-1&&(y=o.length-1);let v=c;for(;o[y]&&v>=o[y].size;)v-=o[y].size,y++;const A=o[y];if(A){const x=A.size;if(v+u<=x)h=await _t(A,v,u);else{const T=x-v;h=new Uint8Array(u);const D=await _t(A,v,T);h.set(D,0);const X=await r.readUint8Array(c+T,u-T,f);h.set(X,T),D.length+X.length=T?(await v(x.subarray(0,T)),await A(),f.diskOffset+=r.size,f.diskNumber++,h=null,await this.write(x.subarray(T))):await v(x);else{const{value:D,done:X}=await c.next();if(X&&!D)throw new Error(P2);r=D,r.size=0,r.maxSize&&(f.maxSize=r.maxSize),f.availableSize=f.maxSize,await Oi(r),o=D.writable,h=o.getWriter(),await this.write(x)}},async close(){await h.ready,await A()}});Object.defineProperty(f,$2,{get(){return y}});async function v(x){const T=x.length;T&&(await h.ready,await h.write(x),r.size+=T,f.size+=T,f.availableSize-=T)}async function A(){await h.close()}}}class lh{constructor(c){return Array.isArray(c)&&(c=new nh(c)),c instanceof ReadableStream&&(c={readable:c}),c}}class ah{constructor(c){return c.writable===$t&&typeof c.next==Ri&&(c=new kf(c)),c instanceof WritableStream&&(c={writable:c}),c.size===$t&&(c.size=0),c instanceof kf||Object.assign(c,{diskNumber:0,diskOffset:0,availableSize:1/0,maxSize:1/0}),c}}async function Oi(i,c){if(i.init&&!i.initialized)await i.init(c);else return Promise.resolve()}function _t(i,c,u,f){return i.readUint8Array(c,u,f)}const ih="\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split(""),l3=ih.length==256;function a3(i){if(l3){let c="";for(let u=0;uthis[u]=c[u])}}const S3="filenameEncoding",T3="commentEncoding",C3="decodeText",O3="extractPrependedData",D3="extractAppendedData",R3="password",w3="rawPassword",M3="passThrough",j3="signal",N3="checkPasswordOnly",H3="checkOverlappingEntryOnly",B3="checkOverlappingEntry",U3="checkSignature",Q3="useWebWorkers",z3="useCompressionStream",Y3="transferStreams",L3="preventClose",lc="File format is not recognized",gh="End of central directory not found",Ah="End of Zip64 central directory locator not found",vh="Central directory header not found",yh="Local file header not found",Eh="Zip64 extra field not found",ph="File contains encrypted entry",xh="Encryption method not supported",_f="Compression method not supported",Pf="Split zip file",bh="Overlapping entry found",s2="utf-8",f2="cp437",G3=[[rh,Rl],[oh,Rl],[dh,Rl],[Jf,el]],X3={[el]:{getValue:Bt,bytes:4},[Rl]:{getValue:ba,bytes:8}};class V3{constructor(c,u={}){Object.assign(this,{reader:new lh(c),options:u,config:d8(),readRanges:[]})}async*getEntriesGenerator(c={}){const u=this;let{reader:f}=u;const{config:r}=u;if(await Oi(f),(f.size===$t||!f.readUint8Array)&&(f=new th(await new Response(f.readable).blob()),await Oi(f)),f.sizeut&&(E=v-ut),nt=await _t(f,v,jf,-1),P=Yt(nt)}if(Bt(P,0)!=X1)throw new Error(Ah);D==el&&(D=Bt(P,16)),q==el&&(q=Bt(P,20)),p==el&&(p=ba(P,32)),y==Rl&&(y=ba(P,40)),v-=y}}if(v>=f.size&&(E=f.size-v-y-Ea,v=f.size-y-Ea),X!=D)throw new Error(Pf);if(v<0)throw new Error(lc);let R=0,N=await _t(f,v,y,q),V=Yt(N);if(y){const I=o.offset-y;if(Bt(V,R)!=G1&&v!=I){const k=v;v=I,v>k&&(E+=v-k),N=await _t(f,v,y,q),V=Yt(N)}}const F=o.offset-v-(f.lastDiskOffset||0);if(y!=F&&F>=0&&(y=F,N=await _t(f,v,y,q),V=Yt(N)),v<0||v>=f.size)throw new Error(lc);const H=ie(u,c,S3),j=ie(u,c,T3);for(let I=0;I>8==0,$=M>>8==3,ht=N.subarray(P,st),tt=Pt(V,R+32),C=ut+tt,L=N.subarray(ut,C),W=nt,et=nt,rt=Bt(V,R+38),ot=_&&(xa(V,R+38)&K1)==K1||$&&(rt>>16&a8)==i8||ht.length&&ht.at(-1)==k1.charCodeAt(0),gt=$&&(rt>>16&u8)!=0,Jt=Bt(V,R+42)+E;Object.assign(k,{versionMadeBy:M,msDosCompatible:_,compressedSize:0,uncompressedSize:0,commentLength:tt,directory:ot,offset:Jt,diskNumberStart:Pt(V,R+34),internalFileAttributes:Pt(V,R+36),externalFileAttributes:rt,rawFilename:ht,filenameUTF8:W,commentUTF8:et,rawExtraField:N.subarray(st,ut),executable:gt}),k.internalFileAttribute=k.internalFileAttributes,k.externalFileAttribute=k.externalFileAttributes;const Qt=ie(u,c,C3)||nc,Sn=W?s2:H||f2,ul=et?s2:j||f2;let Tn=Qt(ht,Sn);Tn===$t&&(Tn=nc(ht,Sn));let jl=Qt(L,ul);jl===$t&&(jl=nc(L,ul)),Object.assign(k,{rawComment:L,filename:Tn,comment:jl,directory:ot||Tn.endsWith(k1)}),b=Math.max(Jt,b),Th(k,k,V,R+6),k.zipCrypto=k.encrypted&&!k.extraFieldAES;const Ee=new c2(k);Ee.getData=(Cn,Hl)=>k.getData(Cn,Ee,u.readRanges,Hl),Ee.arrayBuffer=async Cn=>{const Hl=new TransformStream,[ji]=await Promise.all([new Response(Hl.readable).arrayBuffer(),k.getData(Hl,Ee,u.readRanges,Cn)]);return ji},R=C;const{onprogress:Nl}=c;if(Nl)try{await Nl(I+1,p,new c2(k))}catch{}yield Ee}const Y=ie(u,c,O3),z=ie(u,c,D3);return Y&&(u.prependedData=b>0?await _t(f,0,b):new Uint8Array),u.comment=x?await _t(f,A+Ea,x):new Uint8Array,z&&(u.appendedData=T>>8&255:q>>>24&255),outputSize:E,signature:q,compressed:T!=0&&!Y,encrypted:o.encrypted&&!Y,useWebWorkers:ie(o,r,Q3),useCompressionStream:ie(o,r,z3),transferStreams:ie(o,r,Y3),checkPasswordOnly:ht},config:D,streamOptions:{signal:$,size:M,onstart:L,onprogress:W,onend:et}};tt&&await J3({reader:h,fileEntry:u,offset:y,diskNumberStart:v,signature:q,compressedSize:b,uncompressedSize:E,dataOffset:ut,dataDescriptor:R||N.bitFlag.dataDescriptor,extraFieldZip64:x||N.extraFieldZip64,readRanges:f});let ot;try{if(!C){ht&&(c=new WritableStream),c=new ah(c),await Oi(c,Y?b:E),{writable:ot}=c;const{outputSize:gt}=await _8({readable:_,writable:ot},rt);if(c.size+=gt,gt!=(Y?b:E))throw new Error(sr)}}catch(gt){if(gt.outputSize!==$t&&(c.size+=gt.outputSize),!ht||gt.message!=ir)throw gt}finally{!ie(o,r,L3)&&ot&&!ot.locked&&await ot.getWriter().close()}return ht||C?$t:c.getData?c.getData():ot}}function Sh(i,c,u){const f=i.rawBitFlag=Pt(c,u+2),r=(f&Z1)==Z1,o=Bt(c,u+6);Object.assign(i,{encrypted:r,version:Pt(c,u),bitFlag:{level:(f&l8)>>1,dataDescriptor:(f&I1)==I1,languageEncodingFlag:(f&q1)==q1},rawLastModDate:o,lastModDate:W3(o),filenameLength:Pt(c,u+22),extraFieldLength:Pt(c,u+24)})}function Th(i,c,u,f,r){const{rawExtraField:o}=c,h=c.extraField=new Map,y=Yt(new Uint8Array(o));let v=0;try{for(;vc[r]==o);for(let r=0,o=0;r=5&&(o.push(Ff),h.push(Wf));let y=1;o.forEach((v,A)=>{if(i.data.length>=y+4){const x=Bt(f,y);c[v]=i[v]=new Date(x*1e3);const T=h[A];i[T]=x}y+=4})}async function J3({reader:i,fileEntry:c,offset:u,diskNumberStart:f,signature:r,compressedSize:o,uncompressedSize:h,dataOffset:y,dataDescriptor:v,extraFieldZip64:A,readRanges:x}){let T=0;if(f)for(let q=0;q=q.start&&X.start=0;D--)if(T[D]==o[0]&&T[D+1]==o[1]&&T[D+2]==o[2]&&T[D+3]==o[3])return{offset:x+D,buffer:T.slice(D,D+f).buffer}}}function ie(i,c,u){return c[u]===$t?i.options[u]:c[u]}function W3(i){const c=(i&4294901760)>>16,u=i&65535;try{return new Date(1980+((c&65024)>>9),((c&480)>>5)-1,c&31,(u&63488)>>11,(u&2016)>>5,(u&31)*2,0)}catch{}}function Qf(i){return new Date(Number(i/BigInt(1e4)-BigInt(116444736e5)))}function xa(i,c){return i.getUint8(c)}function Pt(i,c){return i.getUint16(c,!0)}function Bt(i,c){return i.getUint32(c,!0)}function ba(i,c){return Number(i.getBigUint64(c,!0))}function _3(i,c,u){i.setUint32(c,u,!0)}function Yt(i){return new DataView(i.buffer)}N2({Inflate:LA});const P3=Object.freeze(Object.defineProperty({__proto__:null,BlobReader:th,BlobWriter:eh,Data64URIReader:e3,ERR_BAD_FORMAT:lc,ERR_CENTRAL_DIRECTORY_NOT_FOUND:vh,ERR_ENCRYPTED:ph,ERR_EOCDR_LOCATOR_ZIP64_NOT_FOUND:Ah,ERR_EOCDR_NOT_FOUND:gh,ERR_EXTRAFIELD_ZIP64_NOT_FOUND:Eh,ERR_INVALID_PASSWORD:lr,ERR_INVALID_SIGNATURE:ar,ERR_INVALID_UNCOMPRESSED_SIZE:sr,ERR_ITERATOR_COMPLETED_TOO_SOON:P2,ERR_LOCAL_FILE_HEADER_NOT_FOUND:yh,ERR_OVERLAPPING_ENTRY:bh,ERR_SPLIT_ZIP_FILE:Pf,ERR_UNSUPPORTED_COMPRESSION:_f,ERR_UNSUPPORTED_ENCRYPTION:xh,GenericReader:lh,GenericWriter:ah,Reader:sc,SplitDataReader:nh,SplitDataWriter:kf,TextWriter:n3,ZipReader:V3,configure:N2,initStream:Oi,readUint8Array:_t},Symbol.toStringTag,{value:"Module"}));var zf={exports:{}},dt={};/** + * @license React + * react.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var o2;function $3(){if(o2)return dt;o2=1;var i=Symbol.for("react.transitional.element"),c=Symbol.for("react.portal"),u=Symbol.for("react.fragment"),f=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),h=Symbol.for("react.context"),y=Symbol.for("react.forward_ref"),v=Symbol.for("react.suspense"),A=Symbol.for("react.memo"),x=Symbol.for("react.lazy"),T=Symbol.for("react.activity"),D=Symbol.iterator;function X(C){return C===null||typeof C!="object"?null:(C=D&&C[D]||C["@@iterator"],typeof C=="function"?C:null)}var q={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},p=Object.assign,E={};function b(C,L,W){this.props=C,this.context=L,this.refs=E,this.updater=W||q}b.prototype.isReactComponent={},b.prototype.setState=function(C,L){if(typeof C!="object"&&typeof C!="function"&&C!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,C,L,"setState")},b.prototype.forceUpdate=function(C){this.updater.enqueueForceUpdate(this,C,"forceUpdate")};function R(){}R.prototype=b.prototype;function N(C,L,W){this.props=C,this.context=L,this.refs=E,this.updater=W||q}var V=N.prototype=new R;V.constructor=N,p(V,b.prototype),V.isPureReactComponent=!0;var F=Array.isArray;function H(){}var j={H:null,A:null,T:null,S:null},Y=Object.prototype.hasOwnProperty;function z(C,L,W){var et=W.ref;return{$$typeof:i,type:C,key:L,ref:et!==void 0?et:null,props:W}}function I(C,L){return z(C.type,L,C.props)}function k(C){return typeof C=="object"&&C!==null&&C.$$typeof===i}function nt(C){var L={"=":"=0",":":"=2"};return"$"+C.replace(/[=:]/g,function(W){return L[W]})}var P=/\/+/g;function st(C,L){return typeof C=="object"&&C!==null&&C.key!=null?nt(""+C.key):L.toString(36)}function ut(C){switch(C.status){case"fulfilled":return C.value;case"rejected":throw C.reason;default:switch(typeof C.status=="string"?C.then(H,H):(C.status="pending",C.then(function(L){C.status==="pending"&&(C.status="fulfilled",C.value=L)},function(L){C.status==="pending"&&(C.status="rejected",C.reason=L)})),C.status){case"fulfilled":return C.value;case"rejected":throw C.reason}}throw C}function M(C,L,W,et,rt){var ot=typeof C;(ot==="undefined"||ot==="boolean")&&(C=null);var gt=!1;if(C===null)gt=!0;else switch(ot){case"bigint":case"string":case"number":gt=!0;break;case"object":switch(C.$$typeof){case i:case c:gt=!0;break;case x:return gt=C._init,M(gt(C._payload),L,W,et,rt)}}if(gt)return rt=rt(C),gt=et===""?"."+st(C,0):et,F(rt)?(W="",gt!=null&&(W=gt.replace(P,"$&/")+"/"),M(rt,L,W,"",function(Sn){return Sn})):rt!=null&&(k(rt)&&(rt=I(rt,W+(rt.key==null||C&&C.key===rt.key?"":(""+rt.key).replace(P,"$&/")+"/")+gt)),L.push(rt)),1;gt=0;var Jt=et===""?".":et+":";if(F(C))for(var Qt=0;Qt>>1,tt=M[ht];if(0>>1;htr(W,$))etr(rt,W)?(M[ht]=rt,M[et]=$,ht=et):(M[ht]=W,M[L]=$,ht=L);else if(etr(rt,$))M[ht]=rt,M[et]=$,ht=et;else break t}}return _}function r(M,_){var $=M.sortIndex-_.sortIndex;return $!==0?$:M.id-_.id}if(i.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;i.unstable_now=function(){return o.now()}}else{var h=Date,y=h.now();i.unstable_now=function(){return h.now()-y}}var v=[],A=[],x=1,T=null,D=3,X=!1,q=!1,p=!1,E=!1,b=typeof setTimeout=="function"?setTimeout:null,R=typeof clearTimeout=="function"?clearTimeout:null,N=typeof setImmediate<"u"?setImmediate:null;function V(M){for(var _=u(A);_!==null;){if(_.callback===null)f(A);else if(_.startTime<=M)f(A),_.sortIndex=_.expirationTime,c(v,_);else break;_=u(A)}}function F(M){if(p=!1,V(M),!q)if(u(v)!==null)q=!0,H||(H=!0,nt());else{var _=u(A);_!==null&&ut(F,_.startTime-M)}}var H=!1,j=-1,Y=5,z=-1;function I(){return E?!0:!(i.unstable_now()-zM&&I());){var ht=T.callback;if(typeof ht=="function"){T.callback=null,D=T.priorityLevel;var tt=ht(T.expirationTime<=M);if(M=i.unstable_now(),typeof tt=="function"){T.callback=tt,V(M),_=!0;break e}T===u(v)&&f(v),V(M)}else f(v);T=u(v)}if(T!==null)_=!0;else{var C=u(A);C!==null&&ut(F,C.startTime-M),_=!1}}break t}finally{T=null,D=$,X=!1}_=void 0}}finally{_?nt():H=!1}}}var nt;if(typeof N=="function")nt=function(){N(k)};else if(typeof MessageChannel<"u"){var P=new MessageChannel,st=P.port2;P.port1.onmessage=k,nt=function(){st.postMessage(null)}}else nt=function(){b(k,0)};function ut(M,_){j=b(function(){M(i.unstable_now())},_)}i.unstable_IdlePriority=5,i.unstable_ImmediatePriority=1,i.unstable_LowPriority=4,i.unstable_NormalPriority=3,i.unstable_Profiling=null,i.unstable_UserBlockingPriority=2,i.unstable_cancelCallback=function(M){M.callback=null},i.unstable_forceFrameRate=function(M){0>M||125ht?(M.sortIndex=$,c(A,M),u(v)===null&&M===u(A)&&(p?(R(j),j=-1):p=!0,ut(F,$-ht))):(M.sortIndex=tt,c(v,M),q||X||(q=!0,H||(H=!0,nt()))),M},i.unstable_shouldYield=I,i.unstable_wrapCallback=function(M){var _=D;return function(){var $=D;D=_;try{return M.apply(this,arguments)}finally{D=$}}}})(Gf)),Gf}var m2;function e5(){return m2||(m2=1,Lf.exports=t5()),Lf.exports}var Xf={exports:{}},ce={};/** + * @license React + * react-dom.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var g2;function n5(){if(g2)return ce;g2=1;var i=rr();function c(v){var A="https://react.dev/errors/"+v;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(i)}catch(c){console.error(c)}}return i(),Xf.exports=n5(),Xf.exports}/** + * @license React + * react-dom-client.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var v2;function a5(){if(v2)return pi;v2=1;var i=e5(),c=rr(),u=l5();function f(t){var e="https://react.dev/errors/"+t;if(1tt||(t.current=ht[tt],ht[tt]=null,tt--)}function W(t,e){tt++,ht[tt]=t.current,t.current=e}var et=C(null),rt=C(null),ot=C(null),gt=C(null);function Jt(t,e){switch(W(ot,e),W(rt,t),W(et,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?Xd(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=Xd(e),t=Vd(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}L(et),W(et,t)}function Qt(){L(et),L(rt),L(ot)}function Sn(t){t.memoizedState!==null&&W(gt,t);var e=et.current,n=Vd(e,t.type);e!==n&&(W(rt,t),W(et,n))}function ul(t){rt.current===t&&(L(et),L(rt)),gt.current===t&&(L(gt),hi._currentValue=$)}var Tn,jl;function Ee(t){if(Tn===void 0)try{throw Error()}catch(n){var e=n.stack.trim().match(/\n( *(at )?)/);Tn=e&&e[1]||"",jl=-1)":-1a||S[l]!==U[a]){var Z=` +`+S[l].replace(" at new "," at ");return t.displayName&&Z.includes("")&&(Z=Z.replace("",t.displayName)),Z}while(1<=l&&0<=a);break}}}finally{Nl=!1,Error.prepareStackTrace=n}return(n=t?t.displayName||t.name:"")?Ee(n):""}function Hl(t,e){switch(t.tag){case 26:case 27:case 5:return Ee(t.type);case 16:return Ee("Lazy");case 13:return t.child!==e&&e!==null?Ee("Suspense Fallback"):Ee("Suspense");case 19:return Ee("SuspenseList");case 0:case 15:return Cn(t.type,!1);case 11:return Cn(t.type.render,!1);case 1:return Cn(t.type,!0);case 31:return Ee("Activity");default:return""}}function ji(t){try{var e="",n=null;do e+=Hl(t,n),n=t,t=t.return;while(t);return e}catch(l){return` +Error generating stack: `+l.message+` +`+l.stack}}var rc=Object.prototype.hasOwnProperty,oc=i.unstable_scheduleCallback,dc=i.unstable_cancelCallback,Fh=i.unstable_shouldYield,Wh=i.unstable_requestPaint,pe=i.unstable_now,_h=i.unstable_getCurrentPriorityLevel,yr=i.unstable_ImmediatePriority,Er=i.unstable_UserBlockingPriority,Ni=i.unstable_NormalPriority,Ph=i.unstable_LowPriority,pr=i.unstable_IdlePriority,$h=i.log,tm=i.unstable_setDisableYieldValue,Ca=null,xe=null;function On(t){if(typeof $h=="function"&&tm(t),xe&&typeof xe.setStrictMode=="function")try{xe.setStrictMode(Ca,t)}catch{}}var be=Math.clz32?Math.clz32:lm,em=Math.log,nm=Math.LN2;function lm(t){return t>>>=0,t===0?32:31-(em(t)/nm|0)|0}var Hi=256,Bi=262144,Ui=4194304;function cl(t){var e=t&42;if(e!==0)return e;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Qi(t,e,n){var l=t.pendingLanes;if(l===0)return 0;var a=0,s=t.suspendedLanes,d=t.pingedLanes;t=t.warmLanes;var g=l&134217727;return g!==0?(l=g&~s,l!==0?a=cl(l):(d&=g,d!==0?a=cl(d):n||(n=g&~t,n!==0&&(a=cl(n))))):(g=l&~s,g!==0?a=cl(g):d!==0?a=cl(d):n||(n=l&~t,n!==0&&(a=cl(n)))),a===0?0:e!==0&&e!==a&&(e&s)===0&&(s=a&-a,n=e&-e,s>=n||s===32&&(n&4194048)!==0)?e:a}function Oa(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function am(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function xr(){var t=Ui;return Ui<<=1,(Ui&62914560)===0&&(Ui=4194304),t}function hc(t){for(var e=[],n=0;31>n;n++)e.push(t);return e}function Da(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function im(t,e,n,l,a,s){var d=t.pendingLanes;t.pendingLanes=n,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=n,t.entangledLanes&=n,t.errorRecoveryDisabledLanes&=n,t.shellSuspendCounter=0;var g=t.entanglements,S=t.expirationTimes,U=t.hiddenUpdates;for(n=d&~n;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var om=/[\n"\\]/g;function Ne(t){return t.replace(om,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function Ec(t,e,n,l,a,s,d,g){t.name="",d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?t.type=d:t.removeAttribute("type"),e!=null?d==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+je(e)):t.value!==""+je(e)&&(t.value=""+je(e)):d!=="submit"&&d!=="reset"||t.removeAttribute("value"),e!=null?pc(t,d,je(e)):n!=null?pc(t,d,je(n)):l!=null&&t.removeAttribute("value"),a==null&&s!=null&&(t.defaultChecked=!!s),a!=null&&(t.checked=a&&typeof a!="function"&&typeof a!="symbol"),g!=null&&typeof g!="function"&&typeof g!="symbol"&&typeof g!="boolean"?t.name=""+je(g):t.removeAttribute("name")}function Br(t,e,n,l,a,s,d,g){if(s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"&&(t.type=s),e!=null||n!=null){if(!(s!=="submit"&&s!=="reset"||e!=null)){yc(t);return}n=n!=null?""+je(n):"",e=e!=null?""+je(e):n,g||e===t.value||(t.value=e),t.defaultValue=e}l=l??a,l=typeof l!="function"&&typeof l!="symbol"&&!!l,t.checked=g?t.checked:!!l,t.defaultChecked=!!l,d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"&&(t.name=d),yc(t)}function pc(t,e,n){e==="number"&&Li(t.ownerDocument)===t||t.defaultValue===""+n||(t.defaultValue=""+n)}function Ll(t,e,n,l){if(t=t.options,e){e={};for(var a=0;a"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Cc=!1;if(en)try{var ja={};Object.defineProperty(ja,"passive",{get:function(){Cc=!0}}),window.addEventListener("test",ja,ja),window.removeEventListener("test",ja,ja)}catch{Cc=!1}var Rn=null,Oc=null,Xi=null;function Xr(){if(Xi)return Xi;var t,e=Oc,n=e.length,l,a="value"in Rn?Rn.value:Rn.textContent,s=a.length;for(t=0;t=Ba),kr=" ",Jr=!1;function Fr(t,e){switch(t){case"keyup":return Lm.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Wr(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var Zl=!1;function Xm(t,e){switch(t){case"compositionend":return Wr(e);case"keypress":return e.which!==32?null:(Jr=!0,kr);case"textInput":return t=e.data,t===kr&&Jr?null:t;default:return null}}function Vm(t,e){if(Zl)return t==="compositionend"||!jc&&Fr(t,e)?(t=Xr(),Xi=Oc=Rn=null,Zl=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:n,offset:e-t};t=l}t:{for(;n;){if(n.nextSibling){n=n.nextSibling;break t}n=n.parentNode}n=void 0}n=a0(n)}}function u0(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?u0(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function c0(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=Li(t.document);e instanceof t.HTMLIFrameElement;){try{var n=typeof e.contentWindow.location.href=="string"}catch{n=!1}if(n)t=e.contentWindow;else break;e=Li(t.document)}return e}function Bc(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var Wm=en&&"documentMode"in document&&11>=document.documentMode,Il=null,Uc=null,Ya=null,Qc=!1;function s0(t,e,n){var l=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Qc||Il==null||Il!==Li(l)||(l=Il,"selectionStart"in l&&Bc(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),Ya&&za(Ya,l)||(Ya=l,l=Bu(Uc,"onSelect"),0>=d,a-=d,Je=1<<32-be(e)+a|n<At?(pt=at,at=null):pt=at.sibling;var Tt=Q(w,at,B[At],K);if(Tt===null){at===null&&(at=pt);break}t&&at&&Tt.alternate===null&&e(w,at),O=s(Tt,O,At),St===null?ct=Tt:St.sibling=Tt,St=Tt,at=pt}if(At===B.length)return n(w,at),xt&&ln(w,At),ct;if(at===null){for(;AtAt?(pt=at,at=null):pt=at.sibling;var Wn=Q(w,at,Tt.value,K);if(Wn===null){at===null&&(at=pt);break}t&&at&&Wn.alternate===null&&e(w,at),O=s(Wn,O,At),St===null?ct=Wn:St.sibling=Wn,St=Wn,at=pt}if(Tt.done)return n(w,at),xt&&ln(w,At),ct;if(at===null){for(;!Tt.done;At++,Tt=B.next())Tt=J(w,Tt.value,K),Tt!==null&&(O=s(Tt,O,At),St===null?ct=Tt:St.sibling=Tt,St=Tt);return xt&&ln(w,At),ct}for(at=l(at);!Tt.done;At++,Tt=B.next())Tt=G(at,w,At,Tt.value,K),Tt!==null&&(t&&Tt.alternate!==null&&at.delete(Tt.key===null?At:Tt.key),O=s(Tt,O,At),St===null?ct=Tt:St.sibling=Tt,St=Tt);return t&&at.forEach(function(AA){return e(w,AA)}),xt&&ln(w,At),ct}function Mt(w,O,B,K){if(typeof B=="object"&&B!==null&&B.type===p&&B.key===null&&(B=B.props.children),typeof B=="object"&&B!==null){switch(B.$$typeof){case X:t:{for(var ct=B.key;O!==null;){if(O.key===ct){if(ct=B.type,ct===p){if(O.tag===7){n(w,O.sibling),K=a(O,B.props.children),K.return=w,w=K;break t}}else if(O.elementType===ct||typeof ct=="object"&&ct!==null&&ct.$$typeof===Y&&yl(ct)===O.type){n(w,O.sibling),K=a(O,B.props),Ia(K,B),K.return=w,w=K;break t}n(w,O);break}else e(w,O);O=O.sibling}B.type===p?(K=hl(B.props.children,w.mode,K,B.key),K.return=w,w=K):(K=_i(B.type,B.key,B.props,null,w.mode,K),Ia(K,B),K.return=w,w=K)}return d(w);case q:t:{for(ct=B.key;O!==null;){if(O.key===ct)if(O.tag===4&&O.stateNode.containerInfo===B.containerInfo&&O.stateNode.implementation===B.implementation){n(w,O.sibling),K=a(O,B.children||[]),K.return=w,w=K;break t}else{n(w,O);break}else e(w,O);O=O.sibling}K=Zc(B,w.mode,K),K.return=w,w=K}return d(w);case Y:return B=yl(B),Mt(w,O,B,K)}if(ut(B))return lt(w,O,B,K);if(nt(B)){if(ct=nt(B),typeof ct!="function")throw Error(f(150));return B=ct.call(B),ft(w,O,B,K)}if(typeof B.then=="function")return Mt(w,O,au(B),K);if(B.$$typeof===N)return Mt(w,O,tu(w,B),K);iu(w,B)}return typeof B=="string"&&B!==""||typeof B=="number"||typeof B=="bigint"?(B=""+B,O!==null&&O.tag===6?(n(w,O.sibling),K=a(O,B),K.return=w,w=K):(n(w,O),K=Vc(B,w.mode,K),K.return=w,w=K),d(w)):n(w,O)}return function(w,O,B,K){try{Za=0;var ct=Mt(w,O,B,K);return ea=null,ct}catch(at){if(at===ta||at===nu)throw at;var St=Te(29,at,null,w.mode);return St.lanes=K,St.return=w,St}finally{}}}var pl=j0(!0),N0=j0(!1),Hn=!1;function es(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ns(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function Bn(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function Un(t,e,n){var l=t.updateQueue;if(l===null)return null;if(l=l.shared,(Ct&2)!==0){var a=l.pending;return a===null?e.next=e:(e.next=a.next,a.next=e),l.pending=e,e=Wi(t),g0(t,null,n),e}return Fi(t,l,e,n),Wi(t)}function qa(t,e,n){if(e=e.updateQueue,e!==null&&(e=e.shared,(n&4194048)!==0)){var l=e.lanes;l&=t.pendingLanes,n|=l,e.lanes=n,Sr(t,n)}}function ls(t,e){var n=t.updateQueue,l=t.alternate;if(l!==null&&(l=l.updateQueue,n===l)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var d={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};s===null?a=s=d:s=s.next=d,n=n.next}while(n!==null);s===null?a=s=e:s=s.next=e}else a=s=e;n={baseState:l.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:l.shared,callbacks:l.callbacks},t.updateQueue=n;return}t=n.lastBaseUpdate,t===null?n.firstBaseUpdate=e:t.next=e,n.lastBaseUpdate=e}var as=!1;function Ka(){if(as){var t=$l;if(t!==null)throw t}}function ka(t,e,n,l){as=!1;var a=t.updateQueue;Hn=!1;var s=a.firstBaseUpdate,d=a.lastBaseUpdate,g=a.shared.pending;if(g!==null){a.shared.pending=null;var S=g,U=S.next;S.next=null,d===null?s=U:d.next=U,d=S;var Z=t.alternate;Z!==null&&(Z=Z.updateQueue,g=Z.lastBaseUpdate,g!==d&&(g===null?Z.firstBaseUpdate=U:g.next=U,Z.lastBaseUpdate=S))}if(s!==null){var J=a.baseState;d=0,Z=U=S=null,g=s;do{var Q=g.lane&-536870913,G=Q!==g.lane;if(G?(Et&Q)===Q:(l&Q)===Q){Q!==0&&Q===Pl&&(as=!0),Z!==null&&(Z=Z.next={lane:0,tag:g.tag,payload:g.payload,callback:null,next:null});t:{var lt=t,ft=g;Q=e;var Mt=n;switch(ft.tag){case 1:if(lt=ft.payload,typeof lt=="function"){J=lt.call(Mt,J,Q);break t}J=lt;break t;case 3:lt.flags=lt.flags&-65537|128;case 0:if(lt=ft.payload,Q=typeof lt=="function"?lt.call(Mt,J,Q):lt,Q==null)break t;J=T({},J,Q);break t;case 2:Hn=!0}}Q=g.callback,Q!==null&&(t.flags|=64,G&&(t.flags|=8192),G=a.callbacks,G===null?a.callbacks=[Q]:G.push(Q))}else G={lane:Q,tag:g.tag,payload:g.payload,callback:g.callback,next:null},Z===null?(U=Z=G,S=J):Z=Z.next=G,d|=Q;if(g=g.next,g===null){if(g=a.shared.pending,g===null)break;G=g,g=G.next,G.next=null,a.lastBaseUpdate=G,a.shared.pending=null}}while(!0);Z===null&&(S=J),a.baseState=S,a.firstBaseUpdate=U,a.lastBaseUpdate=Z,s===null&&(a.shared.lanes=0),Gn|=d,t.lanes=d,t.memoizedState=J}}function H0(t,e){if(typeof t!="function")throw Error(f(191,t));t.call(e)}function B0(t,e){var n=t.callbacks;if(n!==null)for(t.callbacks=null,t=0;ts?s:8;var d=M.T,g={};M.T=g,Ss(t,!1,e,n);try{var S=a(),U=M.S;if(U!==null&&U(g,S),S!==null&&typeof S=="object"&&typeof S.then=="function"){var Z=ig(S,l);Wa(t,e,Z,we(t))}else Wa(t,e,l,we(t))}catch(J){Wa(t,e,{then:function(){},status:"rejected",reason:J},we())}finally{_.p=s,d!==null&&g.types!==null&&(d.types=g.types),M.T=d}}function og(){}function xs(t,e,n,l){if(t.tag!==5)throw Error(f(476));var a=ho(t).queue;oo(t,a,e,$,n===null?og:function(){return mo(t),n(l)})}function ho(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:$,baseState:$,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:sn,lastRenderedState:$},next:null};var n={};return e.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:sn,lastRenderedState:n},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function mo(t){var e=ho(t);e.next===null&&(e=t.alternate.memoizedState),Wa(t,e.next.queue,{},we())}function bs(){return ne(hi)}function go(){return Vt().memoizedState}function Ao(){return Vt().memoizedState}function dg(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var n=we();t=Bn(n);var l=Un(e,t,n);l!==null&&(ve(l,e,n),qa(l,e,n)),e={cache:_c()},t.payload=e;return}e=e.return}}function hg(t,e,n){var l=we();n={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},gu(t)?yo(e,n):(n=Gc(t,e,n,l),n!==null&&(ve(n,t,l),Eo(n,e,l)))}function vo(t,e,n){var l=we();Wa(t,e,n,l)}function Wa(t,e,n,l){var a={lane:l,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(gu(t))yo(e,a);else{var s=t.alternate;if(t.lanes===0&&(s===null||s.lanes===0)&&(s=e.lastRenderedReducer,s!==null))try{var d=e.lastRenderedState,g=s(d,n);if(a.hasEagerState=!0,a.eagerState=g,Se(g,d))return Fi(t,e,a,0),jt===null&&Ji(),!1}catch{}finally{}if(n=Gc(t,e,a,l),n!==null)return ve(n,t,l),Eo(n,e,l),!0}return!1}function Ss(t,e,n,l){if(l={lane:2,revertLane:ef(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},gu(t)){if(e)throw Error(f(479))}else e=Gc(t,n,l,2),e!==null&&ve(e,t,2)}function gu(t){var e=t.alternate;return t===mt||e!==null&&e===mt}function yo(t,e){la=su=!0;var n=t.pending;n===null?e.next=e:(e.next=n.next,n.next=e),t.pending=e}function Eo(t,e,n){if((n&4194048)!==0){var l=e.lanes;l&=t.pendingLanes,n|=l,e.lanes=n,Sr(t,n)}}var _a={readContext:ne,use:ou,useCallback:Lt,useContext:Lt,useEffect:Lt,useImperativeHandle:Lt,useLayoutEffect:Lt,useInsertionEffect:Lt,useMemo:Lt,useReducer:Lt,useRef:Lt,useState:Lt,useDebugValue:Lt,useDeferredValue:Lt,useTransition:Lt,useSyncExternalStore:Lt,useId:Lt,useHostTransitionStatus:Lt,useFormState:Lt,useActionState:Lt,useOptimistic:Lt,useMemoCache:Lt,useCacheRefresh:Lt};_a.useEffectEvent=Lt;var po={readContext:ne,use:ou,useCallback:function(t,e){return fe().memoizedState=[t,e===void 0?null:e],t},useContext:ne,useEffect:no,useImperativeHandle:function(t,e,n){n=n!=null?n.concat([t]):null,hu(4194308,4,uo.bind(null,e,t),n)},useLayoutEffect:function(t,e){return hu(4194308,4,t,e)},useInsertionEffect:function(t,e){hu(4,2,t,e)},useMemo:function(t,e){var n=fe();e=e===void 0?null:e;var l=t();if(xl){On(!0);try{t()}finally{On(!1)}}return n.memoizedState=[l,e],l},useReducer:function(t,e,n){var l=fe();if(n!==void 0){var a=n(e);if(xl){On(!0);try{n(e)}finally{On(!1)}}}else a=e;return l.memoizedState=l.baseState=a,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:a},l.queue=t,t=t.dispatch=hg.bind(null,mt,t),[l.memoizedState,t]},useRef:function(t){var e=fe();return t={current:t},e.memoizedState=t},useState:function(t){t=As(t);var e=t.queue,n=vo.bind(null,mt,e);return e.dispatch=n,[t.memoizedState,n]},useDebugValue:Es,useDeferredValue:function(t,e){var n=fe();return ps(n,t,e)},useTransition:function(){var t=As(!1);return t=oo.bind(null,mt,t.queue,!0,!1),fe().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,n){var l=mt,a=fe();if(xt){if(n===void 0)throw Error(f(407));n=n()}else{if(n=e(),jt===null)throw Error(f(349));(Et&127)!==0||G0(l,e,n)}a.memoizedState=n;var s={value:n,getSnapshot:e};return a.queue=s,no(V0.bind(null,l,s,t),[t]),l.flags|=2048,ia(9,{destroy:void 0},X0.bind(null,l,s,n,e),null),n},useId:function(){var t=fe(),e=jt.identifierPrefix;if(xt){var n=Fe,l=Je;n=(l&~(1<<32-be(l)-1)).toString(32)+n,e="_"+e+"R_"+n,n=fu++,0<\/script>",s=s.removeChild(s.firstChild);break;case"select":s=typeof l.is=="string"?d.createElement("select",{is:l.is}):d.createElement("select"),l.multiple?s.multiple=!0:l.size&&(s.size=l.size);break;default:s=typeof l.is=="string"?d.createElement(a,{is:l.is}):d.createElement(a)}}s[te]=e,s[oe]=l;t:for(d=e.child;d!==null;){if(d.tag===5||d.tag===6)s.appendChild(d.stateNode);else if(d.tag!==4&&d.tag!==27&&d.child!==null){d.child.return=d,d=d.child;continue}if(d===e)break t;for(;d.sibling===null;){if(d.return===null||d.return===e)break t;d=d.return}d.sibling.return=d.return,d=d.sibling}e.stateNode=s;t:switch(ae(s,a,l),a){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break t;case"img":l=!0;break t;default:l=!1}l&&rn(e)}}return Ht(e),zs(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,n),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==l&&rn(e);else{if(typeof l!="string"&&e.stateNode===null)throw Error(f(166));if(t=ot.current,Wl(e)){if(t=e.stateNode,n=e.memoizedProps,l=null,a=ee,a!==null)switch(a.tag){case 27:case 5:l=a.memoizedProps}t[te]=e,t=!!(t.nodeValue===n||l!==null&&l.suppressHydrationWarning===!0||Ld(t.nodeValue,n)),t||jn(e,!0)}else t=Uu(t).createTextNode(l),t[te]=e,e.stateNode=t}return Ht(e),null;case 31:if(n=e.memoizedState,t===null||t.memoizedState!==null){if(l=Wl(e),n!==null){if(t===null){if(!l)throw Error(f(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(f(557));t[te]=e}else ml(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Ht(e),t=!1}else n=kc(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=n),t=!0;if(!t)return e.flags&256?(Oe(e),e):(Oe(e),null);if((e.flags&128)!==0)throw Error(f(558))}return Ht(e),null;case 13:if(l=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(a=Wl(e),l!==null&&l.dehydrated!==null){if(t===null){if(!a)throw Error(f(318));if(a=e.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(f(317));a[te]=e}else ml(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;Ht(e),a=!1}else a=kc(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),a=!0;if(!a)return e.flags&256?(Oe(e),e):(Oe(e),null)}return Oe(e),(e.flags&128)!==0?(e.lanes=n,e):(n=l!==null,t=t!==null&&t.memoizedState!==null,n&&(l=e.child,a=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(a=l.alternate.memoizedState.cachePool.pool),s=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(s=l.memoizedState.cachePool.pool),s!==a&&(l.flags|=2048)),n!==t&&n&&(e.child.flags|=8192),pu(e,e.updateQueue),Ht(e),null);case 4:return Qt(),t===null&&uf(e.stateNode.containerInfo),Ht(e),null;case 10:return un(e.type),Ht(e),null;case 19:if(L(Xt),l=e.memoizedState,l===null)return Ht(e),null;if(a=(e.flags&128)!==0,s=l.rendering,s===null)if(a)$a(l,!1);else{if(Gt!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(s=cu(t),s!==null){for(e.flags|=128,$a(l,!1),t=s.updateQueue,e.updateQueue=t,pu(e,t),e.subtreeFlags=0,t=n,n=e.child;n!==null;)A0(n,t),n=n.sibling;return W(Xt,Xt.current&1|2),xt&&ln(e,l.treeForkCount),e.child}t=t.sibling}l.tail!==null&&pe()>Cu&&(e.flags|=128,a=!0,$a(l,!1),e.lanes=4194304)}else{if(!a)if(t=cu(s),t!==null){if(e.flags|=128,a=!0,t=t.updateQueue,e.updateQueue=t,pu(e,t),$a(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!xt)return Ht(e),null}else 2*pe()-l.renderingStartTime>Cu&&n!==536870912&&(e.flags|=128,a=!0,$a(l,!1),e.lanes=4194304);l.isBackwards?(s.sibling=e.child,e.child=s):(t=l.last,t!==null?t.sibling=s:e.child=s,l.last=s)}return l.tail!==null?(t=l.tail,l.rendering=t,l.tail=t.sibling,l.renderingStartTime=pe(),t.sibling=null,n=Xt.current,W(Xt,a?n&1|2:n&1),xt&&ln(e,l.treeForkCount),t):(Ht(e),null);case 22:case 23:return Oe(e),us(),l=e.memoizedState!==null,t!==null?t.memoizedState!==null!==l&&(e.flags|=8192):l&&(e.flags|=8192),l?(n&536870912)!==0&&(e.flags&128)===0&&(Ht(e),e.subtreeFlags&6&&(e.flags|=8192)):Ht(e),n=e.updateQueue,n!==null&&pu(e,n.retryQueue),n=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),l=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(l=e.memoizedState.cachePool.pool),l!==n&&(e.flags|=2048),t!==null&&L(vl),null;case 24:return n=null,t!==null&&(n=t.memoizedState.cache),e.memoizedState.cache!==n&&(e.flags|=2048),un(Zt),Ht(e),null;case 25:return null;case 30:return null}throw Error(f(156,e.tag))}function yg(t,e){switch(qc(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return un(Zt),Qt(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return ul(e),null;case 31:if(e.memoizedState!==null){if(Oe(e),e.alternate===null)throw Error(f(340));ml()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(Oe(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(f(340));ml()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return L(Xt),null;case 4:return Qt(),null;case 10:return un(e.type),null;case 22:case 23:return Oe(e),us(),t!==null&&L(vl),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return un(Zt),null;case 25:return null;default:return null}}function Io(t,e){switch(qc(e),e.tag){case 3:un(Zt),Qt();break;case 26:case 27:case 5:ul(e);break;case 4:Qt();break;case 31:e.memoizedState!==null&&Oe(e);break;case 13:Oe(e);break;case 19:L(Xt);break;case 10:un(e.type);break;case 22:case 23:Oe(e),us(),t!==null&&L(vl);break;case 24:un(Zt)}}function ti(t,e){try{var n=e.updateQueue,l=n!==null?n.lastEffect:null;if(l!==null){var a=l.next;n=a;do{if((n.tag&t)===t){l=void 0;var s=n.create,d=n.inst;l=s(),d.destroy=l}n=n.next}while(n!==a)}}catch(g){Dt(e,e.return,g)}}function Yn(t,e,n){try{var l=e.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var s=a.next;l=s;do{if((l.tag&t)===t){var d=l.inst,g=d.destroy;if(g!==void 0){d.destroy=void 0,a=e;var S=n,U=g;try{U()}catch(Z){Dt(a,S,Z)}}}l=l.next}while(l!==s)}}catch(Z){Dt(e,e.return,Z)}}function qo(t){var e=t.updateQueue;if(e!==null){var n=t.stateNode;try{B0(e,n)}catch(l){Dt(t,t.return,l)}}}function Ko(t,e,n){n.props=bl(t.type,t.memoizedProps),n.state=t.memoizedState;try{n.componentWillUnmount()}catch(l){Dt(t,e,l)}}function ei(t,e){try{var n=t.ref;if(n!==null){switch(t.tag){case 26:case 27:case 5:var l=t.stateNode;break;case 30:l=t.stateNode;break;default:l=t.stateNode}typeof n=="function"?t.refCleanup=n(l):n.current=l}}catch(a){Dt(t,e,a)}}function We(t,e){var n=t.ref,l=t.refCleanup;if(n!==null)if(typeof l=="function")try{l()}catch(a){Dt(t,e,a)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(a){Dt(t,e,a)}else n.current=null}function ko(t){var e=t.type,n=t.memoizedProps,l=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":n.autoFocus&&l.focus();break t;case"img":n.src?l.src=n.src:n.srcSet&&(l.srcset=n.srcSet)}}catch(a){Dt(t,t.return,a)}}function Ys(t,e,n){try{var l=t.stateNode;Gg(l,t.type,n,e),l[oe]=e}catch(a){Dt(t,t.return,a)}}function Jo(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&qn(t.type)||t.tag===4}function Ls(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||Jo(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&qn(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function Gs(t,e,n){var l=t.tag;if(l===5||l===6)t=t.stateNode,e?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(t,e):(e=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,e.appendChild(t),n=n._reactRootContainer,n!=null||e.onclick!==null||(e.onclick=tn));else if(l!==4&&(l===27&&qn(t.type)&&(n=t.stateNode,e=null),t=t.child,t!==null))for(Gs(t,e,n),t=t.sibling;t!==null;)Gs(t,e,n),t=t.sibling}function xu(t,e,n){var l=t.tag;if(l===5||l===6)t=t.stateNode,e?n.insertBefore(t,e):n.appendChild(t);else if(l!==4&&(l===27&&qn(t.type)&&(n=t.stateNode),t=t.child,t!==null))for(xu(t,e,n),t=t.sibling;t!==null;)xu(t,e,n),t=t.sibling}function Fo(t){var e=t.stateNode,n=t.memoizedProps;try{for(var l=t.type,a=e.attributes;a.length;)e.removeAttributeNode(a[0]);ae(e,l,n),e[te]=t,e[oe]=n}catch(s){Dt(t,t.return,s)}}var on=!1,Kt=!1,Xs=!1,Wo=typeof WeakSet=="function"?WeakSet:Set,Wt=null;function Eg(t,e){if(t=t.containerInfo,ff=Vu,t=c0(t),Bc(t)){if("selectionStart"in t)var n={start:t.selectionStart,end:t.selectionEnd};else t:{n=(n=t.ownerDocument)&&n.defaultView||window;var l=n.getSelection&&n.getSelection();if(l&&l.rangeCount!==0){n=l.anchorNode;var a=l.anchorOffset,s=l.focusNode;l=l.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break t}var d=0,g=-1,S=-1,U=0,Z=0,J=t,Q=null;e:for(;;){for(var G;J!==n||a!==0&&J.nodeType!==3||(g=d+a),J!==s||l!==0&&J.nodeType!==3||(S=d+l),J.nodeType===3&&(d+=J.nodeValue.length),(G=J.firstChild)!==null;)Q=J,J=G;for(;;){if(J===t)break e;if(Q===n&&++U===a&&(g=d),Q===s&&++Z===l&&(S=d),(G=J.nextSibling)!==null)break;J=Q,Q=J.parentNode}J=G}n=g===-1||S===-1?null:{start:g,end:S}}else n=null}n=n||{start:0,end:0}}else n=null;for(rf={focusedElem:t,selectionRange:n},Vu=!1,Wt=e;Wt!==null;)if(e=Wt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,Wt=t;else for(;Wt!==null;){switch(e=Wt,s=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(n=0;n title"))),ae(s,l,n),s[te]=t,Ft(s),l=s;break t;case"link":var d=n1("link","href",a).get(l+(n.href||""));if(d){for(var g=0;gMt&&(d=Mt,Mt=ft,ft=d);var w=i0(g,ft),O=i0(g,Mt);if(w&&O&&(G.rangeCount!==1||G.anchorNode!==w.node||G.anchorOffset!==w.offset||G.focusNode!==O.node||G.focusOffset!==O.offset)){var B=J.createRange();B.setStart(w.node,w.offset),G.removeAllRanges(),ft>Mt?(G.addRange(B),G.extend(O.node,O.offset)):(B.setEnd(O.node,O.offset),G.addRange(B))}}}}for(J=[],G=g;G=G.parentNode;)G.nodeType===1&&J.push({element:G,left:G.scrollLeft,top:G.scrollTop});for(typeof g.focus=="function"&&g.focus(),g=0;gn?32:n,M.T=null,n=Js,Js=null;var s=Vn,d=An;if(kt=0,ra=Vn=null,An=0,(Ct&6)!==0)throw Error(f(331));var g=Ct;if(Ct|=4,cd(s.current),ad(s,s.current,d,n),Ct=g,ci(0,!1),xe&&typeof xe.onPostCommitFiberRoot=="function")try{xe.onPostCommitFiberRoot(Ca,s)}catch{}return!0}finally{_.p=a,M.T=l,Cd(t,e)}}function Dd(t,e,n){e=Be(n,e),e=Ds(t.stateNode,e,2),t=Un(t,e,2),t!==null&&(Da(t,2),_e(t))}function Dt(t,e,n){if(t.tag===3)Dd(t,t,n);else for(;e!==null;){if(e.tag===3){Dd(e,t,n);break}else if(e.tag===1){var l=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Xn===null||!Xn.has(l))){t=Be(n,t),n=Ro(2),l=Un(e,n,2),l!==null&&(wo(n,l,e,t),Da(l,2),_e(l));break}}e=e.return}}function Ps(t,e,n){var l=t.pingCache;if(l===null){l=t.pingCache=new bg;var a=new Set;l.set(e,a)}else a=l.get(e),a===void 0&&(a=new Set,l.set(e,a));a.has(n)||(Is=!0,a.add(n),t=Dg.bind(null,t,e,n),e.then(t,t))}function Dg(t,e,n){var l=t.pingCache;l!==null&&l.delete(e),t.pingedLanes|=t.suspendedLanes&n,t.warmLanes&=~n,jt===t&&(Et&n)===n&&(Gt===4||Gt===3&&(Et&62914560)===Et&&300>pe()-Tu?(Ct&2)===0&&oa(t,0):qs|=n,fa===Et&&(fa=0)),_e(t)}function Rd(t,e){e===0&&(e=xr()),t=dl(t,e),t!==null&&(Da(t,e),_e(t))}function Rg(t){var e=t.memoizedState,n=0;e!==null&&(n=e.retryLane),Rd(t,n)}function wg(t,e){var n=0;switch(t.tag){case 31:case 13:var l=t.stateNode,a=t.memoizedState;a!==null&&(n=a.retryLane);break;case 19:l=t.stateNode;break;case 22:l=t.stateNode._retryCache;break;default:throw Error(f(314))}l!==null&&l.delete(e),Rd(t,n)}function Mg(t,e){return oc(t,e)}var ju=null,ha=null,$s=!1,Nu=!1,tf=!1,In=0;function _e(t){t!==ha&&t.next===null&&(ha===null?ju=ha=t:ha=ha.next=t),Nu=!0,$s||($s=!0,Ng())}function ci(t,e){if(!tf&&Nu){tf=!0;do for(var n=!1,l=ju;l!==null;){if(t!==0){var a=l.pendingLanes;if(a===0)var s=0;else{var d=l.suspendedLanes,g=l.pingedLanes;s=(1<<31-be(42|t)+1)-1,s&=a&~(d&~g),s=s&201326741?s&201326741|1:s?s|2:0}s!==0&&(n=!0,Nd(l,s))}else s=Et,s=Qi(l,l===jt?s:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(s&3)===0||Oa(l,s)||(n=!0,Nd(l,s));l=l.next}while(n);tf=!1}}function jg(){wd()}function wd(){Nu=$s=!1;var t=0;In!==0&&Vg()&&(t=In);for(var e=pe(),n=null,l=ju;l!==null;){var a=l.next,s=Md(l,e);s===0?(l.next=null,n===null?ju=a:n.next=a,a===null&&(ha=n)):(n=l,(t!==0||(s&3)!==0)&&(Nu=!0)),l=a}kt!==0&&kt!==5||ci(t),In!==0&&(In=0)}function Md(t,e){for(var n=t.suspendedLanes,l=t.pingedLanes,a=t.expirationTimes,s=t.pendingLanes&-62914561;0g)break;var Z=S.transferSize,J=S.initiatorType;Z&&Gd(J)&&(S=S.responseEnd,d+=Z*(S"u"?null:document;function Pd(t,e,n){var l=ma;if(l&&typeof e=="string"&&e){var a=Ne(e);a='link[rel="'+t+'"][href="'+a+'"]',typeof n=="string"&&(a+='[crossorigin="'+n+'"]'),_d.has(a)||(_d.add(a),t={rel:t,crossOrigin:n,href:e},l.querySelector(a)===null&&(e=l.createElement("link"),ae(e,"link",t),Ft(e),l.head.appendChild(e)))}}function _g(t){vn.D(t),Pd("dns-prefetch",t,null)}function Pg(t,e){vn.C(t,e),Pd("preconnect",t,e)}function $g(t,e,n){vn.L(t,e,n);var l=ma;if(l&&t&&e){var a='link[rel="preload"][as="'+Ne(e)+'"]';e==="image"&&n&&n.imageSrcSet?(a+='[imagesrcset="'+Ne(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(a+='[imagesizes="'+Ne(n.imageSizes)+'"]')):a+='[href="'+Ne(t)+'"]';var s=a;switch(e){case"style":s=ga(t);break;case"script":s=Aa(t)}Ge.has(s)||(t=T({rel:"preload",href:e==="image"&&n&&n.imageSrcSet?void 0:t,as:e},n),Ge.set(s,t),l.querySelector(a)!==null||e==="style"&&l.querySelector(oi(s))||e==="script"&&l.querySelector(di(s))||(e=l.createElement("link"),ae(e,"link",t),Ft(e),l.head.appendChild(e)))}}function tA(t,e){vn.m(t,e);var n=ma;if(n&&t){var l=e&&typeof e.as=="string"?e.as:"script",a='link[rel="modulepreload"][as="'+Ne(l)+'"][href="'+Ne(t)+'"]',s=a;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":s=Aa(t)}if(!Ge.has(s)&&(t=T({rel:"modulepreload",href:t},e),Ge.set(s,t),n.querySelector(a)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(di(s)))return}l=n.createElement("link"),ae(l,"link",t),Ft(l),n.head.appendChild(l)}}}function eA(t,e,n){vn.S(t,e,n);var l=ma;if(l&&t){var a=zl(l).hoistableStyles,s=ga(t);e=e||"default";var d=a.get(s);if(!d){var g={loading:0,preload:null};if(d=l.querySelector(oi(s)))g.loading=5;else{t=T({rel:"stylesheet",href:t,"data-precedence":e},n),(n=Ge.get(s))&&vf(t,n);var S=d=l.createElement("link");Ft(S),ae(S,"link",t),S._p=new Promise(function(U,Z){S.onload=U,S.onerror=Z}),S.addEventListener("load",function(){g.loading|=1}),S.addEventListener("error",function(){g.loading|=2}),g.loading|=4,zu(d,e,l)}d={type:"stylesheet",instance:d,count:1,state:g},a.set(s,d)}}}function nA(t,e){vn.X(t,e);var n=ma;if(n&&t){var l=zl(n).hoistableScripts,a=Aa(t),s=l.get(a);s||(s=n.querySelector(di(a)),s||(t=T({src:t,async:!0},e),(e=Ge.get(a))&&yf(t,e),s=n.createElement("script"),Ft(s),ae(s,"link",t),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function lA(t,e){vn.M(t,e);var n=ma;if(n&&t){var l=zl(n).hoistableScripts,a=Aa(t),s=l.get(a);s||(s=n.querySelector(di(a)),s||(t=T({src:t,async:!0,type:"module"},e),(e=Ge.get(a))&&yf(t,e),s=n.createElement("script"),Ft(s),ae(s,"link",t),n.head.appendChild(s)),s={type:"script",instance:s,count:1,state:null},l.set(a,s))}}function $d(t,e,n,l){var a=(a=ot.current)?Qu(a):null;if(!a)throw Error(f(446));switch(t){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(e=ga(n.href),n=zl(a).hoistableStyles,l=n.get(e),l||(l={type:"style",instance:null,count:0,state:null},n.set(e,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){t=ga(n.href);var s=zl(a).hoistableStyles,d=s.get(t);if(d||(a=a.ownerDocument||a,d={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},s.set(t,d),(s=a.querySelector(oi(t)))&&!s._p&&(d.instance=s,d.state.loading=5),Ge.has(t)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ge.set(t,n),s||aA(a,t,n,d.state))),e&&l===null)throw Error(f(528,""));return d}if(e&&l!==null)throw Error(f(529,""));return null;case"script":return e=n.async,n=n.src,typeof n=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=Aa(n),n=zl(a).hoistableScripts,l=n.get(e),l||(l={type:"script",instance:null,count:0,state:null},n.set(e,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(f(444,t))}}function ga(t){return'href="'+Ne(t)+'"'}function oi(t){return'link[rel="stylesheet"]['+t+"]"}function t1(t){return T({},t,{"data-precedence":t.precedence,precedence:null})}function aA(t,e,n,l){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?l.loading=1:(e=t.createElement("link"),l.preload=e,e.addEventListener("load",function(){return l.loading|=1}),e.addEventListener("error",function(){return l.loading|=2}),ae(e,"link",n),Ft(e),t.head.appendChild(e))}function Aa(t){return'[src="'+Ne(t)+'"]'}function di(t){return"script[async]"+t}function e1(t,e,n){if(e.count++,e.instance===null)switch(e.type){case"style":var l=t.querySelector('style[data-href~="'+Ne(n.href)+'"]');if(l)return e.instance=l,Ft(l),l;var a=T({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return l=(t.ownerDocument||t).createElement("style"),Ft(l),ae(l,"style",a),zu(l,n.precedence,t),e.instance=l;case"stylesheet":a=ga(n.href);var s=t.querySelector(oi(a));if(s)return e.state.loading|=4,e.instance=s,Ft(s),s;l=t1(n),(a=Ge.get(a))&&vf(l,a),s=(t.ownerDocument||t).createElement("link"),Ft(s);var d=s;return d._p=new Promise(function(g,S){d.onload=g,d.onerror=S}),ae(s,"link",l),e.state.loading|=4,zu(s,n.precedence,t),e.instance=s;case"script":return s=Aa(n.src),(a=t.querySelector(di(s)))?(e.instance=a,Ft(a),a):(l=n,(a=Ge.get(s))&&(l=T({},n),yf(l,a)),t=t.ownerDocument||t,a=t.createElement("script"),Ft(a),ae(a,"link",l),t.head.appendChild(a),e.instance=a);case"void":return null;default:throw Error(f(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(l=e.instance,e.state.loading|=4,zu(l,n.precedence,t));return e.instance}function zu(t,e,n){for(var l=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=l.length?l[l.length-1]:null,s=a,d=0;d title"):null)}function iA(t,e,n){if(n===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;switch(e.rel){case"stylesheet":return t=e.disabled,typeof e.precedence=="string"&&t==null;default:return!0}case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function a1(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function uA(t,e,n,l){if(n.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var a=ga(l.href),s=e.querySelector(oi(a));if(s){e=s._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Lu.bind(t),e.then(t,t)),n.state.loading|=4,n.instance=s,Ft(s);return}s=e.ownerDocument||e,l=t1(l),(a=Ge.get(a))&&vf(l,a),s=s.createElement("link"),Ft(s);var d=s;d._p=new Promise(function(g,S){d.onload=g,d.onerror=S}),ae(s,"link",l),n.instance=s}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(n,e),(e=n.state.preload)&&(n.state.loading&3)===0&&(t.count++,n=Lu.bind(t),e.addEventListener("load",n),e.addEventListener("error",n))}}var Ef=0;function cA(t,e){return t.stylesheets&&t.count===0&&Xu(t,t.stylesheets),0Ef?50:800)+e);return t.unsuspend=n,function(){t.unsuspend=null,clearTimeout(l),clearTimeout(a)}}:null}function Lu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Xu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Gu=null;function Xu(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Gu=new Map,e.forEach(sA,t),Gu=null,Lu.call(t))}function sA(t,e){if(!(e.state.loading&4)){var n=Gu.get(t);if(n)var l=n.get(null);else{n=new Map,Gu.set(t,n);for(var a=t.querySelectorAll("link[data-precedence],style[data-precedence]"),s=0;s"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(i)}catch(c){console.error(c)}}return i(),Yf.exports=a5(),Yf.exports}var u5=i5();class uc{constructor(){this.project=[],this.status=[],this.text=[],this.labels=[],this.annotations=[]}empty(){return this.project.length+this.status.length+this.text.length+this.labels.length+this.annotations.length===0}static parse(c){const u=uc.tokenize(c),f=new Set,r=new Set,o=[],h=new Set,y=new Set;for(let A of u){const x=A.startsWith("!");if(x&&(A=A.slice(1)),A.startsWith("p:")){f.add({name:A.slice(2),not:x});continue}if(A.startsWith("s:")){r.add({name:A.slice(2),not:x});continue}if(A.startsWith("@")){h.add({name:A,not:x});continue}if(A.startsWith("annot:")){y.add({name:A.slice(6),not:x});continue}o.push({name:A.toLowerCase(),not:x})}const v=new uc;return v.text=o,v.project=[...f],v.status=[...r],v.labels=[...h],v.annotations=[...y],v}static tokenize(c){const u=[];let f,r=[];for(let o=0;o{const o=u.project.includes(r.name);return r.not?!o:o}))return!1;if(this.status.length){if(!!!this.status.find(r=>{const o=u.status.includes(r.name);return r.not?!o:o}))return!1}else if(u.status==="skipped")return!1;return!(this.text.length&&!this.text.every(r=>{if(u.text.includes(r.name))return!r.not;const[o,h,y]=r.name.split(":");return u.file.includes(o)&&u.line===h&&(y===void 0||u.column===y)?!r.not:!!r.not})||this.labels.length&&!this.labels.every(r=>{const o=u.labels.includes(r.name);return r.not?!o:o})||this.annotations.length&&!this.annotations.every(r=>{const o=u.annotations.some(h=>h.includes(r.name));return r.not?!o:o}))}}const E2=Symbol("searchValues");function c5(i){const c=i[E2];if(c)return c;let u="passed";i.outcome==="unexpected"&&(u="failed"),i.outcome==="flaky"&&(u="flaky"),i.outcome==="skipped"&&(u="skipped");const f={text:(u+" "+i.projectName+" "+i.tags.join(" ")+" "+i.location.file+" "+i.path.join(" ")+" "+i.title).toLowerCase(),project:i.projectName.toLowerCase(),status:u,file:i.location.file,line:String(i.location.line),column:String(i.location.column),labels:i.tags.map(r=>r.toLowerCase()),annotations:i.annotations.map(r=>{var o;return r.type.toLowerCase()+"="+((o=r.description)==null?void 0:o.toLocaleLowerCase())})};return i[E2]=f,f}const s5=/("[^"]*"|"[^"]*$|\S+)/g;function Ml(i,c,u){const f=new URLSearchParams(i),o=[...(i.get("q")??"").matchAll(s5)].map(v=>{const A=v[0];return A.startsWith('"')&&A.endsWith('"')&&A.length>1?A.slice(1,A.length-1):A});if(u)return f.set("q",p2(o.includes(c)?o.filter(v=>v!==c):[...o,c])),"#?"+f;let h;c.startsWith("s:")&&(h="s:"),c.startsWith("p:")&&(h="p:"),c.startsWith("@")&&(h="@");const y=o.filter(v=>!v.startsWith(h));return y.push(c),f.set("q",p2(y)),"#?"+f}function p2(i){return i.map(c=>/\s/.test(c)?`"${c}"`:c).join(" ").trim()}const f5=()=>m.jsx("span",{className:"octicon",style:{width:16,height:16}}),Ch=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",className:"octicon subnav-search-icon",children:m.jsx("path",{fillRule:"evenodd",d:"M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"})}),Mi=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16",className:"octicon color-fg-muted",children:m.jsx("path",{fillRule:"evenodd",d:"M12.78 6.22a.75.75 0 010 1.06l-4.25 4.25a.75.75 0 01-1.06 0L3.22 7.28a.75.75 0 011.06-1.06L8 9.94l3.72-3.72a.75.75 0 011.06 0z"})}),Sa=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",className:"octicon color-fg-muted",children:m.jsx("path",{fillRule:"evenodd",d:"M6.22 3.22a.75.75 0 011.06 0l4.25 4.25a.75.75 0 010 1.06l-4.25 4.25a.75.75 0 01-1.06-1.06L9.94 8 6.22 4.28a.75.75 0 010-1.06z"})}),Oh=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",className:"octicon color-text-warning",children:m.jsx("path",{fillRule:"evenodd",d:"M8.22 1.754a.25.25 0 00-.44 0L1.698 13.132a.25.25 0 00.22.368h12.164a.25.25 0 00.22-.368L8.22 1.754zm-1.763-.707c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0114.082 15H1.918a1.75 1.75 0 01-1.543-2.575L6.457 1.047zM9 11a1 1 0 11-2 0 1 1 0 012 0zm-.25-5.25a.75.75 0 00-1.5 0v2.5a.75.75 0 001.5 0v-2.5z"})}),Dh=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",className:"octicon color-fg-muted",children:m.jsx("path",{fillRule:"evenodd",d:"M3.5 1.75a.25.25 0 01.25-.25h3a.75.75 0 000 1.5h.5a.75.75 0 000-1.5h2.086a.25.25 0 01.177.073l2.914 2.914a.25.25 0 01.073.177v8.586a.25.25 0 01-.25.25h-.5a.75.75 0 000 1.5h.5A1.75 1.75 0 0014 13.25V4.664c0-.464-.184-.909-.513-1.237L10.573.513A1.75 1.75 0 009.336 0H3.75A1.75 1.75 0 002 1.75v11.5c0 .649.353 1.214.874 1.515a.75.75 0 10.752-1.298.25.25 0 01-.126-.217V1.75zM8.75 3a.75.75 0 000 1.5h.5a.75.75 0 000-1.5h-.5zM6 5.25a.75.75 0 01.75-.75h.5a.75.75 0 010 1.5h-.5A.75.75 0 016 5.25zm2 1.5A.75.75 0 018.75 6h.5a.75.75 0 010 1.5h-.5A.75.75 0 018 6.75zm-1.25.75a.75.75 0 000 1.5h.5a.75.75 0 000-1.5h-.5zM8 9.75A.75.75 0 018.75 9h.5a.75.75 0 010 1.5h-.5A.75.75 0 018 9.75zm-.75.75a1.75 1.75 0 00-1.75 1.75v3c0 .414.336.75.75.75h2.5a.75.75 0 00.75-.75v-3a1.75 1.75 0 00-1.75-1.75h-.5zM7 12.25a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v2.25H7v-2.25z"})}),Rh=()=>m.jsx("svg",{className:"octicon color-text-danger",viewBox:"0 0 16 16",version:"1.1",width:"16",height:"16","aria-hidden":"true",children:m.jsx("path",{fillRule:"evenodd",d:"M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"})}),wh=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",className:"octicon color-icon-success",children:m.jsx("path",{fillRule:"evenodd",d:"M13.78 4.22a.75.75 0 010 1.06l-7.25 7.25a.75.75 0 01-1.06 0L2.22 9.28a.75.75 0 011.06-1.06L6 10.94l6.72-6.72a.75.75 0 011.06 0z"})}),Mh=()=>m.jsx("svg",{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",className:"octicon octicon-clock color-text-danger",children:m.jsx("path",{fillRule:"evenodd",d:"M5.75.75A.75.75 0 016.5 0h3a.75.75 0 010 1.5h-.75v1l-.001.041a6.718 6.718 0 013.464 1.435l.007-.006.75-.75a.75.75 0 111.06 1.06l-.75.75-.006.007a6.75 6.75 0 11-10.548 0L2.72 5.03l-.75-.75a.75.75 0 011.06-1.06l.75.75.007.006A6.718 6.718 0 017.25 2.541a.756.756 0 010-.041v-1H6.5a.75.75 0 01-.75-.75zM8 14.5A5.25 5.25 0 108 4a5.25 5.25 0 000 10.5zm.389-6.7l1.33-1.33a.75.75 0 111.061 1.06L9.45 8.861A1.502 1.502 0 018 10.75a1.5 1.5 0 11.389-2.95z"})}),r5=()=>m.jsx("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",width:"16",height:"16","data-view-component":"true",className:"octicon color-fg-muted",children:m.jsx("path",{d:"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm9.78-2.22-5.5 5.5a.749.749 0 0 1-1.275-.326.749.749 0 0 1 .215-.734l5.5-5.5a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"})}),o5=()=>m.jsx("svg",{className:"octicon",viewBox:"0 0 48 48",version:"1.1",width:"20",height:"20","aria-hidden":"true",children:m.jsx("path",{xmlns:"http://www.w3.org/2000/svg",d:"M11.85 32H36.2l-7.35-9.95-6.55 8.7-4.6-6.45ZM7 40q-1.2 0-2.1-.9Q4 38.2 4 37V11q0-1.2.9-2.1Q5.8 8 7 8h34q1.2 0 2.1.9.9.9.9 2.1v26q0 1.2-.9 2.1-.9.9-2.1.9Zm0-29v26-26Zm34 26V11H7v26Z"})}),d5=()=>m.jsx("svg",{className:"octicon",viewBox:"0 0 48 48",version:"1.1",width:"20",height:"20","aria-hidden":"true",children:m.jsx("path",{xmlns:"http://www.w3.org/2000/svg",d:"m19.6 32.35 13-8.45-13-8.45ZM7 40q-1.2 0-2.1-.9Q4 38.2 4 37V11q0-1.2.9-2.1Q5.8 8 7 8h34q1.2 0 2.1.9.9.9.9 2.1v26q0 1.2-.9 2.1-.9.9-2.1.9Zm0-3h34V11H7v26Zm0 0V11v26Z"})}),h5=()=>m.jsx("svg",{className:"octicon",viewBox:"0 0 48 48",version:"1.1",width:"20",height:"20","aria-hidden":"true",children:m.jsx("path",{xmlns:"http://www.w3.org/2000/svg",d:"M7 37h9.35V11H7v26Zm12.35 0h9.3V11h-9.3v26Zm12.3 0H41V11h-9.35v26ZM7 40q-1.2 0-2.1-.9Q4 38.2 4 37V11q0-1.2.9-2.1Q5.8 8 7 8h34q1.2 0 2.1.9.9.9.9 2.1v26q0 1.2-.9 2.1-.9.9-2.1.9Z"})}),m5=()=>m.jsxs("svg",{className:"octicon",viewBox:"0 0 16 16",width:"16",height:"16","aria-hidden":"true",children:[m.jsx("path",{d:"M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"}),m.jsx("path",{d:"M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"})]}),g5=()=>m.jsx("svg",{className:"octicon octicon-settings",viewBox:"0 0 16 16",width:"16",height:"16","aria-hidden":"true",children:m.jsx("path",{d:"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z"})}),jh=({value:i})=>{const[c,u]=it.useState("copy"),f=it.useCallback(()=>{navigator.clipboard.writeText(i).then(()=>{u("check"),setTimeout(()=>{u("copy")},3e3)},()=>{u("cross")})},[i]),r=c==="check"?wh():c==="cross"?Rh():m5();return m.jsx("button",{className:"copy-icon",title:"Copy to clipboard","aria-label":"Copy to clipboard",onClick:f,children:r})},or=({children:i,value:c})=>m.jsxs("span",{className:"copy-value-container",children:[i,m.jsx("span",{className:"copy-button-container",children:m.jsx(jh,{value:c})})]});function A5(i,c,u,f){const[r,o]=ue.useState(u);return ue.useEffect(()=>{let h=!1;return i().then(y=>{h||o(y)}),()=>{h=!0}},c),r}function Nh(){const i=ue.useRef(null),[c]=$f(i);return[c,i]}function $f(i){const[c,u]=ue.useState(new DOMRect(0,0,10,10)),f=ue.useCallback(()=>{const r=i==null?void 0:i.current;r&&u(r.getBoundingClientRect())},[i]);return ue.useLayoutEffect(()=>{const r=i==null?void 0:i.current;if(!r)return;f();const o=new ResizeObserver(f);return o.observe(r),window.addEventListener("resize",f),()=>{o.disconnect(),window.removeEventListener("resize",f)}},[f,i]),[c,f]}function Hh(i,c){c=Dl.getObject(i,c);const[u,f]=ue.useState(c),r=ue.useCallback(o=>{Dl.setObject(i,o)},[i,f]);return ue.useEffect(()=>{{const o=()=>f(Dl.getObject(i,c));return Dl.onChangeEmitter.addEventListener(i,o),()=>Dl.onChangeEmitter.removeEventListener(i,o)}},[c,i]),[u,r]}class v5{constructor(){this.onChangeEmitter=new EventTarget}getString(c,u){return localStorage[c]||u}setString(c,u){var f;localStorage[c]=u,this.onChangeEmitter.dispatchEvent(new Event(c)),(f=window.saveSettings)==null||f.call(window)}getObject(c,u){if(!localStorage[c])return u;try{return JSON.parse(localStorage[c])}catch{return u}}setObject(c,u){var f;localStorage[c]=JSON.stringify(u),this.onChangeEmitter.dispatchEvent(new Event(c)),(f=window.saveSettings)==null||f.call(window)}}const Dl=new v5;function Ze(...i){return i.filter(Boolean).join(" ")}const x2="\\u0000-\\u0020\\u007f-\\u009f",y5=new RegExp("(?:[a-zA-Z][a-zA-Z0-9+.-]{2,}:\\/\\/|www\\.)[^\\s"+x2+'"]{2,}[^\\s'+x2+`"')}\\],:;.!?]`,"ug");function E5(){const[i,c]=ue.useState(!1),u=ue.useCallback(()=>{const f=[];return c(r=>(f.push(setTimeout(()=>c(!1),1e3)),r?(f.push(setTimeout(()=>c(!0),50)),!1):!0)),()=>f.forEach(clearTimeout)},[c]);return[i,u]}function Di(i){const c=[];let u=0,f;for(;(f=y5.exec(i))!==null;){const o=i.substring(u,f.index);o&&c.push(o);const h=f[0];c.push(p5(h)),u=f.index+h.length}const r=i.substring(u);return r&&c.push(r),c}function p5(i){let c=i;return c.startsWith("www.")&&(c="https://"+c),m.jsx("a",{href:c,target:"_blank",rel:"noopener noreferrer",children:i})}const x5=({summary:i,children:c,className:u,style:f})=>{const[r,o]=ue.useState(!1),h=y=>{o(y.currentTarget.open)};return m.jsxs("details",{style:f,className:u,onToggle:h,children:[m.jsxs("summary",{className:"expandable-summary",children:[r?Mi():Sa(),i]}),c]})};function b5(i){let c=0;for(let u=0;u{const o=m.jsx("span",{className:Ze("label","label-color-"+(f!==void 0?f:b5(i))),onClick:u?h=>u(h,i):void 0,children:r&&i.startsWith("@")?i.slice(1):i});return c?m.jsx("a",{className:"label-anchor",href:Ve(c),children:o}):o},Uh=({projectNames:i,activeProjectName:c,otherLabels:u,style:f})=>(i.length>0&&!!c||u.length>0)&&m.jsxs("span",{className:"label-row",style:f??{},children:[m.jsx(T5,{projectNames:i,projectName:c}),m.jsx(S5,{labels:u})]}),S5=({labels:i})=>{const c=se(),u=it.useCallback((f,r)=>{const o=new URLSearchParams(c);f.preventDefault(),o.has("testId")&&o.delete("speedboard"),o.delete("testId"),ll(Ml(o,r,f.metaKey||f.ctrlKey))},[c]);return m.jsx(m.Fragment,{children:i.map(f=>m.jsx(Bh,{label:f,trimAtSymbolPrefix:!0,onClick:u},f))})};function ll(i){window.history.pushState({},"",i);const c=new PopStateEvent("popstate");window.dispatchEvent(c)}const Vf=({predicate:i,children:c})=>i(se())?c:null,bn=({click:i,ctrlClick:c,children:u,...f})=>m.jsx("a",{...f,style:{textDecoration:"none",color:"var(--color-fg-default)",cursor:"pointer"},onClick:r=>{i&&(r.preventDefault(),ll(Ve((r.metaKey||r.ctrlKey)&&c||i)))},children:u}),dr=({className:i,...c})=>m.jsx(bn,{...c,className:Ze("link-badge",c.dim&&"link-badge-dim",i)}),T5=({projectNames:i,projectName:c})=>{const u=new URLSearchParams(se());return u.has("testId")&&u.delete("speedboard"),u.delete("testId"),m.jsx(bn,{click:Ml(u,`p:${c}`,!1),ctrlClick:Ml(u,`p:${c}`,!0),children:m.jsx(Bh,{label:c,colorIndex:i.indexOf(c)%6})})},$u=({attachment:i,result:c,href:u,linkName:f,openInNewTab:r})=>{const[o,h]=E5();hr("attachment-"+c.attachments.indexOf(i),h);const y=m.jsxs("span",{children:[i.contentType===D5?Oh():Dh(),i.path&&(r?m.jsx("a",{href:Ve(u||i.path),target:"_blank",rel:"noreferrer",children:f||i.name}):m.jsx("a",{href:Ve(u||i.path),download:O5(i),children:f||i.name})),!i.path&&(r?m.jsx("a",{href:URL.createObjectURL(new Blob([i.body],{type:i.contentType})),target:"_blank",rel:"noreferrer",onClick:v=>v.stopPropagation(),children:i.name}):m.jsx("span",{children:Di(i.name)}))]});return i.body?m.jsx(x5,{style:{lineHeight:"32px"},className:Ze(o&&"attachment-flash"),summary:y,children:m.jsxs("div",{className:"attachment-body",children:[m.jsx(jh,{value:i.body}),Di(i.body)]})}):m.jsxs("div",{style:{lineHeight:"32px",whiteSpace:"nowrap",paddingLeft:4},className:Ze(o&&"attachment-flash"),children:[m.jsx("span",{style:{visibility:"hidden"},children:Sa()}),y]})},Qh=({test:i,trailingSeparator:c,dim:u})=>{const f=i.results.map(r=>r.attachments.filter(o=>o.name==="trace")).filter(r=>r.length>0)[0];if(f)return m.jsxs(m.Fragment,{children:[m.jsxs(dr,{href:Ve(Yh(f)),title:"View Trace",className:"button trace-link",dim:u,children:[h5(),m.jsx("span",{children:"View Trace"})]}),c&&m.jsx("div",{className:"trace-link-separator",children:"|"})]})},zh=it.createContext(new URLSearchParams(window.location.hash.slice(1)));function se(){return it.useContext(zh)}const C5=({children:i})=>{const[c,u]=it.useState(new URLSearchParams(window.location.hash.slice(1)));return it.useEffect(()=>{const f=()=>u(new URLSearchParams(window.location.hash.slice(1)));return window.addEventListener("popstate",f),()=>window.removeEventListener("popstate",f)},[]),m.jsx(zh.Provider,{value:c,children:i})};function O5(i){if(i.name.includes(".")||!i.path)return i.name;const c=i.path.indexOf(".");return c===-1?i.name:i.name+i.path.slice(c,i.path.length)}function Yh(i){return`trace/index.html?${i.map((c,u)=>`trace=${new URL(c.path,window.location.href)}`).join("&")}`}const D5="x-playwright/missing";function hr(i,c){const u=se(),f=R5(i);it.useEffect(()=>{if(f)return c()},[f,c,u])}function R5(i){const c=se().get("anchor");return c===null||typeof i>"u"?!1:typeof i=="string"?i===c:Array.isArray(i)?i.includes(c):i(c)}function xi({id:i,children:c}){const u=it.useRef(null),f=it.useCallback(()=>{var r;(r=u.current)==null||r.scrollIntoView({block:"start",inline:"start"})},[]);return hr(i,f),m.jsx("div",{ref:u,children:c})}function il({test:i,result:c,anchor:u},f){const r=new URLSearchParams(f);return i&&r.set("testId",i.testId),i&&c&&r.set("run",""+i.results.indexOf(c)),u&&r.set("anchor",u),"#?"+r}function fc(i){switch(i){case"failed":case"unexpected":return Rh();case"passed":case"expected":return wh();case"timedOut":return Mh();case"flaky":return Oh();case"skipped":case"interrupted":return r5()}}const w5=({className:i,style:c,open:u,isModal:f,minWidth:r,verticalOffset:o,requestClose:h,anchor:y,dataTestId:v,children:A})=>{const x=it.useRef(null),[T,D]=it.useState(0),[X]=$f(x),[q,p]=$f(y),E=y?M5(X,q,o):void 0;return it.useEffect(()=>{const b=N=>{!x.current||!(N.target instanceof Node)||x.current.contains(N.target)||h==null||h()},R=N=>{N.key==="Escape"&&(h==null||h())};return u?(document.addEventListener("mousedown",b),document.addEventListener("keydown",R),()=>{document.removeEventListener("mousedown",b),document.removeEventListener("keydown",R)}):()=>{}},[u,h]),it.useLayoutEffect(()=>p(),[u,p]),it.useEffect(()=>{const b=()=>D(R=>R+1);return window.addEventListener("resize",b),()=>{window.removeEventListener("resize",b)}},[]),it.useLayoutEffect(()=>{x.current&&(u?f?x.current.showModal():x.current.show():x.current.close())},[u,f]),m.jsx("dialog",{ref:x,style:{position:"fixed",margin:E?0:void 0,zIndex:110,top:E==null?void 0:E.top,left:E==null?void 0:E.left,minWidth:r||0,...c},className:i,"data-testid":v,children:A})};function M5(i,c,u=4,f=4){let r=Math.max(f,c.left);r+i.width>window.innerWidth-f&&(r=window.innerWidth-i.width-f);let o=Math.max(0,c.bottom)+u;return o+i.height>window.innerHeight-u&&(Math.max(0,c.top)>i.height+u?o=Math.max(0,c.top)-i.height-u:o=window.innerHeight-u-i.height),{left:r,top:o}}const j5="system",Lh="theme",N5=[{label:"Dark mode",value:"dark-mode"},{label:"Light mode",value:"light-mode"},{label:"System",value:"system"}],Gh=window.matchMedia("(prefers-color-scheme: dark)");function H5(){document.playwrightThemeInitialized||(document.playwrightThemeInitialized=!0,document.defaultView.addEventListener("focus",i=>{i.target.document.nodeType===Node.DOCUMENT_NODE&&document.body.classList.remove("inactive")},!1),document.defaultView.addEventListener("blur",i=>{document.body.classList.add("inactive")},!1),tr(er()),Gh.addEventListener("change",()=>{tr(er())}))}const B5=new Set;function tr(i){const c=U5(),u=i==="system"?Gh.matches?"dark-mode":"light-mode":i;if(c!==u){c&&document.documentElement.classList.remove(c),document.documentElement.classList.add(u);for(const f of B5)f(u)}}function er(){return Dl.getString(Lh,j5)}function U5(){return document.documentElement.classList.contains("dark-mode")?"dark-mode":document.documentElement.classList.contains("light-mode")?"light-mode":null}function Q5(){const[i,c]=ue.useState(er());return ue.useEffect(()=>{Dl.setString(Lh,i),tr(i)},[i]),[i,c]}const mr=({title:i,leftSuperHeader:c,rightSuperHeader:u})=>m.jsxs("div",{className:"header-view",children:[m.jsxs("div",{className:"hbox header-superheader",children:[c,m.jsx("div",{style:{flex:"auto"}}),u]}),i&&m.jsx("div",{className:"header-title",children:Di(i)})]}),z5=({stats:i,filterText:c,setFilterText:u})=>{const f=se().get("q");return it.useEffect(()=>{u(f?`${f.trim()} `:"")},[f,u]),m.jsx(m.Fragment,{children:m.jsxs("div",{className:"pt-3",children:[m.jsx("div",{className:"header-view-status-container ml-2 pl-2 d-flex",children:m.jsx(Y5,{stats:i})}),m.jsxs("form",{className:"subnav-search",onSubmit:r=>{r.preventDefault();const o=new URL(window.location.href),h=new URLSearchParams(o.hash.slice(1)),y=new FormData(r.target).get("q"),v=new URLSearchParams({q:y});h.has("speedboard")&&v.set("speedboard",""),v.toString()&&(o.hash="?"+v.toString()),ll(o)},children:[Ch(),m.jsx("input",{name:"q",spellCheck:!1,className:"form-control subnav-search-input input-contrast width-full","aria-label":"Search tests",placeholder:"Search tests",value:c,onChange:r=>{u(r.target.value)}})]})]})})},Y5=({stats:i})=>{const c=se().has("speedboard");return m.jsxs("nav",{children:[m.jsxs(bn,{className:"subnav-item",href:"#?",children:[m.jsx("span",{className:"subnav-item-label",children:"All"}),m.jsx("span",{className:"d-inline counter",children:i.total-i.skipped})]}),m.jsx(tc,{token:"passed",count:i.expected}),m.jsx(tc,{token:"failed",count:i.unexpected}),m.jsx(tc,{token:"flaky",count:i.flaky}),m.jsx(tc,{token:"skipped",count:i.skipped}),m.jsx(bn,{className:"subnav-item",href:"#?speedboard",title:"Speedboard","aria-selected":c,children:Mh()}),m.jsx(L5,{})]})},tc=({token:i,count:c})=>{const u=new URLSearchParams(se());u.delete("speedboard"),u.delete("testId");const f=`s:${i}`,r=Ml(u,f,!1),o=Ml(u,f,!0),h=i.charAt(0).toUpperCase()+i.slice(1);return m.jsxs(bn,{className:"subnav-item",href:r,click:r,ctrlClick:o,children:[c>0&&fc(i),m.jsx("span",{className:"subnav-item-label",children:h}),m.jsx("span",{className:"d-inline counter",children:c})]})},L5=()=>{const i=it.useRef(null),[c,u]=it.useState(!1),[f,r]=Q5(),[o,h]=Hh("mergeFiles",!1);return m.jsxs(m.Fragment,{children:[m.jsx("div",{role:"button",ref:i,style:{cursor:"pointer"},className:"subnav-item",title:"Settings",onClick:y=>{u(!c),y.preventDefault()},onMouseDown:G5,children:g5()}),m.jsxs(w5,{open:c,minWidth:150,verticalOffset:4,requestClose:()=>u(!1),anchor:i,dataTestId:"settings-dialog",children:[m.jsxs("label",{className:"header-setting-theme",children:["Theme:",m.jsx("select",{value:f,onChange:y=>r(y.target.value),children:N5.map(y=>m.jsx("option",{value:y.value,children:y.label},y.value))})]}),m.jsxs("label",{style:{cursor:"pointer",display:"flex",alignItems:"center",gap:4},children:[m.jsx("input",{type:"checkbox",checked:o,onChange:()=>h(!o)}),"Merge files"]})]})]})},G5=i=>{i.stopPropagation(),i.preventDefault()},X5=({tabs:i,selectedTab:c,setSelectedTab:u})=>{const f=it.useId();return m.jsx("div",{className:"tabbed-pane",children:m.jsxs("div",{className:"vbox",children:[m.jsx("div",{className:"hbox",style:{flex:"none"},children:m.jsx("div",{className:"tabbed-pane-tab-strip",role:"tablist",children:i.map(r=>m.jsx("div",{className:Ze("tabbed-pane-tab-element",c===r.id&&"selected"),onClick:()=>u(r.id),id:`${f}-${r.id}`,role:"tab","aria-selected":c===r.id,children:m.jsx("div",{className:"tabbed-pane-tab-label",children:r.title})},r.id))})}),i.map(r=>{if(c===r.id)return m.jsx("div",{className:"tab-content",role:"tabpanel","aria-labelledby":`${f}-${r.id}`,children:r.render()},r.id)})]})})},gr=({header:i,footer:c,expanded:u,setExpanded:f,children:r,noInsets:o,body:h,dataTestId:y})=>{const v=it.useId();return m.jsxs("div",{className:"chip","data-testid":y,children:[m.jsxs("div",{role:"button","aria-expanded":!!u,"aria-controls":v,className:Ze("chip-header",f&&" expanded-"+u),onClick:()=>f==null?void 0:f(!u),title:typeof i=="string"?i:void 0,children:[f?u?m.jsx(Mi,{}):m.jsx(Sa,{}):m.jsx(f5,{}),i]}),(!f||u)&&m.jsxs("div",{id:v,role:"region",className:Ze("chip-body",o&&"chip-body-no-insets"),children:[r,h&&h(),c&&m.jsx("div",{className:"chip-footer",children:c})]})]})},ke=({header:i,initialExpanded:c,noInsets:u,children:f,body:r,dataTestId:o,revealOnAnchorId:h})=>{const[y,v]=it.useState(c??!0),A=it.useCallback(()=>v(!0),[]);return hr(h,A),m.jsx(gr,{header:i,expanded:y,setExpanded:v,noInsets:u,body:r,dataTestId:o,children:f})},V5=({title:i,loadChildren:c,onClick:u,expandByDefault:f,depth:r,style:o,flash:h})=>{const[y,v]=it.useState(f||!1);return it.useEffect(()=>{v(f||!1)},[f]),m.jsxs("div",{role:"treeitem",className:Ze("tree-item",h&&"yellow-flash"),style:o,children:[m.jsxs("div",{className:"tree-item-title",style:{paddingLeft:r*22+4},onClick:()=>{u==null||u(),v(!y)},children:[c&&!!y&&Mi(),c&&!y&&Sa(),!c&&m.jsx("span",{style:{visibility:"hidden"},children:Sa()}),i]}),y&&(c==null?void 0:c())]})};function Ta(i){if(i<0||!isFinite(i))return"-";if(i===0)return"0ms";if(i<1e3)return i.toFixed(0)+"ms";const c=i/1e3;if(c<60)return c.toFixed(1)+"s";const u=c/60;if(u<60)return u.toFixed(1)+"m";const f=u/60;return f<24?f.toFixed(1)+"h":(f/24).toFixed(1)+"d"}const Z5="data:image/png;base64,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",I5=({cursor:i,onPaneMouseMove:c,onPaneMouseUp:u,onPaneDoubleClick:f})=>(ue.useEffect(()=>{const r=document.createElement("div");return r.style.position="fixed",r.style.top="0",r.style.right="0",r.style.bottom="0",r.style.left="0",r.style.zIndex="9999",r.style.cursor=i,document.body.appendChild(r),c&&r.addEventListener("mousemove",c),u&&r.addEventListener("mouseup",u),f&&document.body.addEventListener("dblclick",f),()=>{c&&r.removeEventListener("mousemove",c),u&&r.removeEventListener("mouseup",u),f&&document.body.removeEventListener("dblclick",f),document.body.removeChild(r)}},[i,c,u,f]),m.jsx(m.Fragment,{})),q5={position:"absolute",top:0,right:0,bottom:0,left:0},K5=({orientation:i,offsets:c,setOffsets:u,resizerColor:f,resizerWidth:r,minColumnWidth:o})=>{const h=o||0,[y,v]=ue.useState(null),[A,x]=Nh(),T={position:"absolute",right:i==="horizontal"?void 0:0,bottom:i==="horizontal"?0:void 0,width:i==="horizontal"?7:void 0,height:i==="horizontal"?void 0:7,borderTopWidth:i==="horizontal"?void 0:(7-r)/2,borderRightWidth:i==="horizontal"?(7-r)/2:void 0,borderBottomWidth:i==="horizontal"?void 0:(7-r)/2,borderLeftWidth:i==="horizontal"?(7-r)/2:void 0,borderColor:"transparent",borderStyle:"solid",cursor:i==="horizontal"?"ew-resize":"ns-resize"};return m.jsxs("div",{style:{position:"absolute",top:0,right:0,bottom:0,left:-(7-r)/2,zIndex:100,pointerEvents:"none"},ref:x,children:[!!y&&m.jsx(I5,{cursor:i==="horizontal"?"ew-resize":"ns-resize",onPaneMouseUp:()=>v(null),onPaneMouseMove:D=>{if(!D.buttons)v(null);else if(y){const X=i==="horizontal"?D.clientX-y.clientX:D.clientY-y.clientY,q=y.offset+X,p=y.index>0?c[y.index-1]:0,E=i==="horizontal"?A.width:A.height,b=Math.min(Math.max(p+h,q),E-h)-c[y.index];for(let R=y.index;Rm.jsx("div",{style:{...T,top:i==="horizontal"?0:D,left:i==="horizontal"?D:0,pointerEvents:"initial"},onMouseDown:q=>v({clientX:q.clientX,clientY:q.clientY,offset:D,index:X}),children:m.jsx("div",{style:{...q5,background:f}})},X))]})};async function Zf(i){const c=new Image;return i&&(c.src=i,await new Promise((u,f)=>{c.onload=u,c.onerror=u})),c}const nr={backgroundImage:`linear-gradient(45deg, #80808020 25%, transparent 25%), + linear-gradient(-45deg, #80808020 25%, transparent 25%), + linear-gradient(45deg, transparent 75%, #80808020 75%), + linear-gradient(-45deg, transparent 75%, #80808020 75%)`,backgroundSize:"20px 20px",backgroundPosition:"0 0, 0 10px, 10px -10px, -10px 0px",boxShadow:`rgb(0 0 0 / 10%) 0px 1.8px 1.9px, + rgb(0 0 0 / 15%) 0px 6.1px 6.3px, + rgb(0 0 0 / 10%) 0px -2px 4px, + rgb(0 0 0 / 15%) 0px -6.1px 12px, + rgb(0 0 0 / 25%) 0px 6px 12px`},Xh=({diff:i,noTargetBlank:c,hideDetails:u})=>{const[f,r]=it.useState(i.diff?"diff":"actual"),[o,h]=it.useState(!1),[y,v]=it.useState(null),[A,x]=it.useState("Expected"),[T,D]=it.useState(null),[X,q]=it.useState(null),[p,E]=Nh();it.useEffect(()=>{(async()=>{var z,I,k,nt;v(await Zf((z=i.expected)==null?void 0:z.attachment.path)),x(((I=i.expected)==null?void 0:I.title)||"Expected"),D(await Zf((k=i.actual)==null?void 0:k.attachment.path)),q(await Zf((nt=i.diff)==null?void 0:nt.attachment.path))})()},[i]);const b=y&&T&&X,R=b?Math.max(y.naturalWidth,T.naturalWidth,200):500,N=b?Math.max(y.naturalHeight,T.naturalHeight,200):500,V=Math.min(1,(p.width-30)/R),F=Math.min(1,(p.width-50)/R/2),H=R*V,j=N*V,Y={flex:"none",margin:"0 10px",cursor:"pointer",userSelect:"none"};return m.jsx("div",{"data-testid":"test-result-image-mismatch",style:{display:"flex",flexDirection:"column",alignItems:"center",flex:"auto"},ref:E,children:b&&m.jsxs(m.Fragment,{children:[m.jsxs("div",{"data-testid":"test-result-image-mismatch-tabs",style:{display:"flex",margin:"10px 0 20px"},children:[i.diff&&m.jsx("div",{style:{...Y,fontWeight:f==="diff"?600:"initial"},onClick:()=>r("diff"),children:"Diff"}),m.jsx("div",{style:{...Y,fontWeight:f==="actual"?600:"initial"},onClick:()=>r("actual"),children:"Actual"}),m.jsx("div",{style:{...Y,fontWeight:f==="expected"?600:"initial"},onClick:()=>r("expected"),children:A}),m.jsx("div",{style:{...Y,fontWeight:f==="sxs"?600:"initial"},onClick:()=>r("sxs"),children:"Side by side"}),m.jsx("div",{style:{...Y,fontWeight:f==="slider"?600:"initial"},onClick:()=>r("slider"),children:"Slider"})]}),m.jsxs("div",{style:{display:"flex",justifyContent:"center",flex:"auto",minHeight:j+60},children:[i.diff&&f==="diff"&&m.jsx(yn,{image:X,alt:"Diff",hideSize:u,canvasWidth:H,canvasHeight:j,scale:V}),i.diff&&f==="actual"&&m.jsx(yn,{image:T,alt:"Actual",hideSize:u,canvasWidth:H,canvasHeight:j,scale:V}),i.diff&&f==="expected"&&m.jsx(yn,{image:y,alt:A,hideSize:u,canvasWidth:H,canvasHeight:j,scale:V}),i.diff&&f==="slider"&&m.jsx(k5,{expectedImage:y,actualImage:T,hideSize:u,canvasWidth:H,canvasHeight:j,scale:V,expectedTitle:A}),i.diff&&f==="sxs"&&m.jsxs("div",{style:{display:"flex"},children:[m.jsx(yn,{image:y,title:A,hideSize:u,canvasWidth:F*R,canvasHeight:F*N,scale:F}),m.jsx(yn,{image:o?X:T,title:o?"Diff":"Actual",onClick:()=>h(!o),hideSize:u,canvasWidth:F*R,canvasHeight:F*N,scale:F})]}),!i.diff&&f==="actual"&&m.jsx(yn,{image:T,title:"Actual",hideSize:u,canvasWidth:H,canvasHeight:j,scale:V}),!i.diff&&f==="expected"&&m.jsx(yn,{image:y,title:A,hideSize:u,canvasWidth:H,canvasHeight:j,scale:V}),!i.diff&&f==="sxs"&&m.jsxs("div",{style:{display:"flex"},children:[m.jsx(yn,{image:y,title:A,canvasWidth:F*R,canvasHeight:F*N,scale:F}),m.jsx(yn,{image:T,title:"Actual",canvasWidth:F*R,canvasHeight:F*N,scale:F})]})]}),!u&&m.jsxs("div",{style:{alignSelf:"start",lineHeight:"18px",marginLeft:"15px"},children:[m.jsx("div",{children:i.diff&&m.jsx("a",{target:"_blank",href:i.diff.attachment.path,rel:"noreferrer",children:i.diff.attachment.name})}),m.jsx("div",{children:m.jsx("a",{target:c?"":"_blank",href:i.actual.attachment.path,rel:"noreferrer",children:i.actual.attachment.name})}),m.jsx("div",{children:m.jsx("a",{target:c?"":"_blank",href:i.expected.attachment.path,rel:"noreferrer",children:i.expected.attachment.name})})]})]})})},k5=({expectedImage:i,actualImage:c,canvasWidth:u,canvasHeight:f,scale:r,expectedTitle:o,hideSize:h})=>{const y={position:"absolute",top:0,left:0},[v,A]=it.useState(u/2),x=i.naturalWidth===c.naturalWidth&&i.naturalHeight===c.naturalHeight;return m.jsxs("div",{style:{flex:"none",display:"flex",alignItems:"center",flexDirection:"column",userSelect:"none"},children:[!h&&m.jsxs("div",{style:{margin:5},children:[!x&&m.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"Expected "}),m.jsx("span",{children:i.naturalWidth}),m.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"x"}),m.jsx("span",{children:i.naturalHeight}),!x&&m.jsx("span",{style:{flex:"none",margin:"0 5px 0 15px"},children:"Actual "}),!x&&m.jsx("span",{children:c.naturalWidth}),!x&&m.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"x"}),!x&&m.jsx("span",{children:c.naturalHeight})]}),m.jsxs("div",{style:{position:"relative",width:u,height:f,margin:15,...nr},children:[m.jsx(K5,{orientation:"horizontal",offsets:[v],setOffsets:T=>A(T[0]),resizerColor:"#57606a80",resizerWidth:6}),m.jsx("img",{alt:o,style:{width:i.naturalWidth*r,height:i.naturalHeight*r},draggable:"false",src:i.src}),m.jsx("div",{style:{...y,bottom:0,overflow:"hidden",width:v,...nr},children:m.jsx("img",{alt:"Actual",style:{width:c.naturalWidth*r,height:c.naturalHeight*r},draggable:"false",src:c.src})})]})]})},yn=({image:i,title:c,alt:u,hideSize:f,canvasWidth:r,canvasHeight:o,scale:h,onClick:y})=>m.jsxs("div",{style:{flex:"none",display:"flex",alignItems:"center",flexDirection:"column"},children:[!f&&m.jsxs("div",{style:{margin:5},children:[c&&m.jsx("span",{style:{flex:"none",margin:"0 5px"},children:c}),m.jsx("span",{children:i.naturalWidth}),m.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"x"}),m.jsx("span",{children:i.naturalHeight})]}),m.jsx("div",{style:{display:"flex",flex:"none",width:r,height:o,margin:15,...nr},children:m.jsx("img",{width:i.naturalWidth*h,height:i.naturalHeight*h,alt:c||u,style:{cursor:y?"pointer":"initial"},draggable:"false",src:i.src,onClick:y})})]});function J5(i,c){const u=/(\x1b\[(\d+(;\d+)*)m)|([^\x1b]+)/g,f=[];let r,o={},h=!1,y=c==null?void 0:c.fg,v=c==null?void 0:c.bg;for(;(r=u.exec(i))!==null;){const[,,A,,x]=r;if(A){const T=+A;switch(T){case 0:o={};break;case 1:o["font-weight"]="bold";break;case 2:o.opacity="0.8";break;case 3:o["font-style"]="italic";break;case 4:o["text-decoration"]="underline";break;case 7:h=!0;break;case 8:o.display="none";break;case 9:o["text-decoration"]="line-through";break;case 22:delete o["font-weight"],delete o["font-style"],delete o.opacity,delete o["text-decoration"];break;case 23:delete o["font-weight"],delete o["font-style"],delete o.opacity;break;case 24:delete o["text-decoration"];break;case 27:h=!1;break;case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:y=b2[T-30];break;case 39:y=c==null?void 0:c.fg;break;case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:v=b2[T-40];break;case 49:v=c==null?void 0:c.bg;break;case 53:o["text-decoration"]="overline";break;case 90:case 91:case 92:case 93:case 94:case 95:case 96:case 97:y=S2[T-90];break;case 100:case 101:case 102:case 103:case 104:case 105:case 106:case 107:v=S2[T-100];break}}else if(x){const T={...o},D=h?v:y;D!==void 0&&(T.color=D);const X=h?y:v;X!==void 0&&(T["background-color"]=X),f.push(`${F5(x)}`)}}return f.join("")}const b2={0:"var(--vscode-terminal-ansiBlack)",1:"var(--vscode-terminal-ansiRed)",2:"var(--vscode-terminal-ansiGreen)",3:"var(--vscode-terminal-ansiYellow)",4:"var(--vscode-terminal-ansiBlue)",5:"var(--vscode-terminal-ansiMagenta)",6:"var(--vscode-terminal-ansiCyan)",7:"var(--vscode-terminal-ansiWhite)"},S2={0:"var(--vscode-terminal-ansiBrightBlack)",1:"var(--vscode-terminal-ansiBrightRed)",2:"var(--vscode-terminal-ansiBrightGreen)",3:"var(--vscode-terminal-ansiBrightYellow)",4:"var(--vscode-terminal-ansiBrightBlue)",5:"var(--vscode-terminal-ansiBrightMagenta)",6:"var(--vscode-terminal-ansiBrightCyan)",7:"var(--vscode-terminal-ansiBrightWhite)"};function F5(i){return i.replace(/[&"<>]/g,c=>({"&":"&",'"':""","<":"<",">":">"})[c])}function W5(i){return Object.entries(i).map(([c,u])=>`${c}: ${u}`).join("; ")}const Ar=({code:i,children:c,testId:u})=>{const f=it.useMemo(()=>$5(i),[i]);return m.jsxs("div",{className:"test-error-container test-error-text","data-testid":u,children:[c,m.jsx("div",{className:"test-error-view",dangerouslySetInnerHTML:{__html:f||""}})]})},_5=({prompt:i})=>{const[c,u]=it.useState(!1);return m.jsx("button",{className:"button",style:{minWidth:100},onClick:async()=>{await navigator.clipboard.writeText(i),u(!0),setTimeout(()=>{u(!1)},3e3)},children:c?"Copied":"Copy prompt"})},P5=({diff:i})=>m.jsx("div",{"data-testid":"test-screenshot-error-view",className:"test-error-view",children:m.jsx(Xh,{diff:i,hideDetails:!0},"image-diff")});function $5(i){return J5(i||"",{bg:"var(--color-canvas-subtle)",fg:"var(--color-fg-default)"})}const Vh=({file:i,projectNames:c,isFileExpanded:u,setFileExpanded:f,footer:r})=>m.jsx(gr,{expanded:u?u(i.fileId):void 0,noInsets:!0,setExpanded:f?(o=>f(i.fileId,o)):void 0,header:m.jsx("span",{className:"chip-header-allow-selection",children:i.fileName}),footer:r,children:m.jsx(Zh,{tests:i.tests,projectNames:c})}),Zh=({tests:i,projectNames:c,runs:u,selectedTestId:f})=>{const r=se();return m.jsx("div",{role:"list",children:i.map((o,h)=>{const y=u==null?void 0:u[h],v=y!==void 0?o.results[y]:void 0,A=il({test:o,result:v},r),x=f===o.testId;return m.jsxs("div",{className:Ze("test-file-test","test-file-test-outcome-"+o.outcome,x&&"test-file-test-selected"),role:"listitem","aria-current":x,children:[m.jsxs("div",{className:"hbox",style:{alignItems:"flex-start"},children:[m.jsxs("div",{className:"hbox",children:[m.jsx("span",{className:"test-file-test-status-icon",children:fc(o.outcome)}),m.jsxs("span",{children:[m.jsx(bn,{href:A,title:[...o.path,o.title].join(" › "),children:m.jsx("span",{className:"test-file-title",children:[...o.path,o.title].join(" › ")})}),m.jsx(Uh,{style:{marginLeft:"6px"},projectNames:c,activeProjectName:o.projectName,otherLabels:o.tags})]})]}),m.jsx("span",{"data-testid":"test-duration",style:{minWidth:"50px",textAlign:"right"},children:Ta(o.duration)})]}),m.jsx("div",{className:"test-file-details-row",children:m.jsxs("div",{className:"test-file-details-row-items",children:[m.jsx(bn,{href:A,title:[...o.path,o.title].join(" › "),className:"test-file-path-link",children:m.jsxs("span",{className:"test-file-path",children:[o.location.file,":",o.location.line]})}),m.jsx(tv,{test:o}),m.jsx(ev,{test:o}),m.jsx(Qh,{test:o,dim:!0})]})})]},`test-${o.testId}`)})})};function tv({test:i}){const c=se();for(const u of i.results)for(const f of u.attachments)if(f.contentType.startsWith("image/")&&f.name.match(/-(expected|actual|diff)/))return m.jsx(dr,{href:il({test:i,result:u,anchor:`attachment-${u.attachments.indexOf(f)}`},c),title:"View images",dim:!0,children:o5()})}function ev({test:i}){const c=se(),u=i.results.find(f=>f.attachments.some(r=>r.name==="video"));return u?m.jsx(dr,{href:il({test:i,result:u,anchor:"attachment-video"},c),title:"View video",dim:!0,children:d5()}):void 0}const nv=new RegExp("([\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)|(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~])))","g");function T2(i){return i.replace(nv,"")}function lv(i,c){var f;const u=new Map;for(const r of i){const o=r.name.match(/^(.*)-(expected|actual|diff|previous)(\.[^.]+)?$/);if(!o)continue;const[,h,y,v=""]=o,A=h+v;let x=u.get(A);x||(x={name:A,anchors:[`attachment-${h}`]},u.set(A,x)),x.anchors.push(`attachment-${c.attachments.indexOf(r)}`),y==="actual"&&(x.actual={attachment:r}),y==="expected"&&(x.expected={attachment:r,title:"Expected"}),y==="previous"&&(x.expected={attachment:r,title:"Previous"}),y==="diff"&&(x.diff={attachment:r})}for(const[r,o]of u)!o.actual||!o.expected?u.delete(r):(i.delete(o.actual.attachment),i.delete(o.expected.attachment),i.delete((f=o.diff)==null?void 0:f.attachment));return[...u.values()]}const av=({report:i,test:c,result:u})=>{const{screenshots:f,videos:r,traces:o,otherAttachments:h,diffs:y,errors:v,otherAttachmentAnchors:A,screenshotAnchors:x,errorContext:T}=it.useMemo(()=>{const p=u.attachments.filter(z=>!z.name.startsWith("_")),E=new Set(p.filter(z=>z.contentType.startsWith("image/"))),b=[...E].map(z=>`attachment-${p.indexOf(z)}`),R=p.filter(z=>z.contentType.startsWith("video/")),N=p.filter(z=>z.name==="trace"),V=p.find(z=>z.name==="error-context"),F=new Set(p);[...E,...R,...N].forEach(z=>F.delete(z));const H=[...F].map(z=>`attachment-${p.indexOf(z)}`),j=lv(E,u),Y=u.errors.map(z=>z.message);return{screenshots:[...E],videos:R,traces:N,otherAttachments:F,diffs:j,errors:Y,otherAttachmentAnchors:H,screenshotAnchors:b,errorContext:V}},[u]),[D,X]=it.useState("");it.useEffect(()=>X(""),[u]);const q=A5(async()=>{var F;if((F=i.json().options)!=null&&F.noCopyPrompt||!T)return;let p=T.path?await fetch(T.path).then(H=>H.text()):T.body;if(!p)return;const E=u.attachments.find(H=>H.name==="stdout"),b=u.attachments.find(H=>H.name==="stderr"),R=E!=null&&E.body&&E.contentType==="text/plain"?E.body:void 0,N=b!=null&&b.body&&b.contentType==="text/plain"?b.body:void 0;R&&(p+=` + +# Stdout + +\`\`\` +`+T2(R)+"\n```"),N&&(p+=` + +# Stderr + +\`\`\` +`+T2(N)+"\n```");const V=i.json().metadata;return V!=null&&V.gitDiff&&(p+=` + +# Local changes + +\`\`\`diff +`+V.gitDiff+"\n```"),p},[T,i,u],void 0);return m.jsxs("div",{className:"test-result",children:[!!v.length&&m.jsxs(ke,{header:"Errors",children:[q&&m.jsx("div",{style:{position:"absolute",right:"16px",padding:"10px",zIndex:1},children:m.jsx(_5,{prompt:q})}),v.map((p,E)=>{const b=iv(p,y);return m.jsxs(m.Fragment,{children:[m.jsx(Ar,{code:p},"test-result-error-message-"+E),b&&m.jsx(P5,{diff:b})]})})]}),!!u.steps.length&&m.jsxs(ke,{header:"Test Steps",children:[m.jsxs("form",{className:"subnav-search step-filter",onSubmit:p=>p.preventDefault(),children:[Ch(),m.jsx("input",{className:"form-control subnav-search-input input-contrast width-full",type:"search",spellCheck:!1,placeholder:"Filter steps","aria-label":"Filter steps",value:D,onChange:p=>X(p.target.value)})]}),u.steps.map((p,E)=>m.jsx(Kh,{step:p,result:u,test:c,depth:0,filterText:D},`step-${E}`))]}),y.map((p,E)=>m.jsx(xi,{id:p.anchors,children:m.jsx(ke,{dataTestId:"test-results-image-diff",header:`Image mismatch: ${p.name}`,revealOnAnchorId:p.anchors,children:m.jsx(Xh,{diff:p})})},`diff-${E}`)),!!f.length&&m.jsx(ke,{header:"Screenshots",revealOnAnchorId:x,children:f.map((p,E)=>m.jsxs(xi,{id:`attachment-${u.attachments.indexOf(p)}`,children:[m.jsx("a",{href:Ve(p.path),children:m.jsx("img",{className:"screenshot",src:Ve(p.path)})}),m.jsx($u,{attachment:p,result:u})]},`screenshot-${E}`))}),!!o.length&&m.jsx(xi,{id:"attachment-trace",children:m.jsx(ke,{header:"Traces",revealOnAnchorId:"attachment-trace",children:m.jsxs("div",{children:[m.jsx("a",{href:Ve(Yh(o)),children:m.jsx("img",{className:"screenshot",src:Z5,style:{width:192,height:117,marginLeft:20}})}),o.map((p,E)=>m.jsx($u,{attachment:p,result:u,linkName:o.length===1?"trace":`trace-${E+1}`},`trace-${E}`))]})})}),!!r.length&&m.jsx(xi,{id:"attachment-video",children:m.jsx(ke,{header:"Videos",revealOnAnchorId:"attachment-video",children:r.map(p=>m.jsxs("div",{children:[m.jsx("video",{controls:!0,children:m.jsx("source",{src:Ve(p.path),type:p.contentType})}),m.jsx($u,{attachment:p,result:u})]},p.path))})}),!!h.size&&m.jsx(ke,{header:"Attachments",revealOnAnchorId:A,dataTestId:"attachments",children:[...h].map((p,E)=>m.jsx(xi,{id:`attachment-${u.attachments.indexOf(p)}`,children:m.jsx($u,{attachment:p,result:u,openInNewTab:p.contentType.startsWith("text/html")})},`attachment-link-${E}`))}),m.jsx(ke,{header:`Executed in Worker #${u.workerIndex}`,dataTestId:"worker-test-list",initialExpanded:!1,noInsets:!0,body:()=>{const p=uv(i).get(u.workerIndex)||{tests:[],runs:[]};return m.jsx(Zh,{tests:p.tests,runs:p.runs,projectNames:i.json().projectNames,selectedTestId:c.testId})}})]})};function iv(i,c){const u=i.split(` +`)[0];if(!(!u.includes("toHaveScreenshot")&&!u.includes("toMatchSnapshot")))return c.find(f=>i.includes(f.name))}function Ih(i,c){return i.title.toLowerCase().includes(c.toLowerCase())}function qh(i,c){return i.steps.some(u=>Ih(u,c)||qh(u,c))}const Kh=({test:i,step:c,result:u,depth:f,filterText:r})=>{const o=se();let h=!1,y=m.jsx("span",{children:c.title});if(r){const v=!!r&&Ih(c,r),A=!!r&&qh(c,r);if(!v&&!A)return null;if(h=A,v){const x=c.title.toLowerCase().split(r.toLowerCase()),T=[];let D=0;for(let X=0;X1&&m.jsxs(m.Fragment,{children:[" ✕ ",m.jsx("span",{className:"test-result-counter",children:c.count})]}),c.location&&m.jsxs("span",{className:"test-result-path",children:["— ",c.location.file,":",c.location.line]})]}),m.jsx("span",{className:"step-spacer"}),c.attachments.length>0&&m.jsx("a",{className:"step-attachment-link",title:"reveal attachment",href:Ve(il({test:i,result:u,anchor:`attachment-${c.attachments[0]}`},o)),onClick:v=>{v.stopPropagation()},children:Dh()}),m.jsx("span",{className:"step-duration",children:Ta(c.duration)})]}),loadChildren:c.steps.length||c.snippet?()=>{const v=c.snippet?[m.jsx(Ar,{testId:"test-snippet",code:c.snippet},"line")]:[],A=c.steps.map((x,T)=>m.jsx(Kh,{step:x,depth:f+1,result:u,test:i,filterText:r},T));return v.concat(A)}:void 0,depth:f,expandByDefault:h})},C2=Symbol("workerLists");function uv(i){let c=i[C2];if(!c){const u=new Map;for(const f of i.json().files)for(const r of f.tests)for(let o=0;oo.time-h.time),c.set(f,{tests:r.map(o=>o.test),runs:r.map(o=>o.run)});i[C2]=c}return c}const cv=({report:i,test:c,run:u,next:f,prev:r})=>{const[o,h]=it.useState(u),y=se(),v=c.annotations.filter(A=>!A.type.startsWith("_"))??[];return m.jsxs(m.Fragment,{children:[m.jsx(mr,{title:c.title,leftSuperHeader:m.jsx("div",{className:"test-case-path",children:c.path.join(" › ")}),rightSuperHeader:m.jsxs(m.Fragment,{children:[m.jsx("div",{className:Ze(!r&&"hidden"),children:m.jsx(bn,{href:il({test:r},y),children:"« previous"})}),m.jsx("div",{style:{width:10}}),m.jsx("div",{className:Ze(!f&&"hidden"),children:m.jsx(bn,{href:il({test:f},y),children:"next »"})})]})}),m.jsxs("div",{className:"hbox",style:{lineHeight:"24px"},children:[m.jsx("div",{className:"test-case-location",children:m.jsxs(or,{value:`${c.location.file}:${c.location.line}`,children:[c.location.file,":",c.location.line]})}),m.jsx("div",{style:{flex:"auto"}}),m.jsx(Qh,{test:c,trailingSeparator:!0}),m.jsx("div",{className:"test-case-duration",children:Ta(c.duration)})]}),m.jsx(Uh,{style:{marginLeft:"6px"},projectNames:i.json().projectNames,activeProjectName:c.projectName,otherLabels:c.tags}),c.results.length===0&&v.length!==0&&m.jsx(ke,{header:"Annotations",dataTestId:"test-case-annotations",children:v.map((A,x)=>m.jsx(O2,{annotation:A},x))}),m.jsx(X5,{tabs:c.results.map((A,x)=>({id:String(x),title:m.jsxs("div",{style:{display:"flex",alignItems:"center"},children:[fc(A.status)," ",sv(x),c.results.length>1&&m.jsx("span",{className:"test-case-run-duration",children:Ta(A.duration)})]}),render:()=>{const T=A.annotations.filter(D=>!D.type.startsWith("_"));return m.jsxs(m.Fragment,{children:[!!T.length&&m.jsx(ke,{header:"Annotations",dataTestId:"test-case-annotations",children:T.map((D,X)=>m.jsx(O2,{annotation:D},X))}),m.jsx(av,{test:c,result:A,report:i})]})}}))||[],selectedTab:String(o),setSelectedTab:A=>h(+A)})]})};function O2({annotation:{type:i,description:c}}){return m.jsxs("div",{className:"test-case-annotation",children:[m.jsx("span",{style:{fontWeight:"bold"},children:i}),c&&m.jsxs(or,{value:c,children:[": ",Di(c)]})]})}function sv(i){return i?`Retry #${i}`:"Run"}class fv extends it.Component{constructor(){super(...arguments),this.state={error:null,errorInfo:null}}componentDidCatch(c,u){this.setState({error:c,errorInfo:u})}render(){var c,u,f;return this.state.error||this.state.errorInfo?m.jsxs("div",{className:"metadata-view p-3",children:[m.jsx("p",{children:"An error was encountered when trying to render metadata."}),m.jsx("p",{children:m.jsxs("pre",{style:{overflow:"scroll"},children:[(c=this.state.error)==null?void 0:c.message,m.jsx("br",{}),(u=this.state.error)==null?void 0:u.stack,m.jsx("br",{}),(f=this.state.errorInfo)==null?void 0:f.componentStack]})})]}):this.props.children}}const rv=i=>m.jsx(fv,{children:m.jsx(ov,{metadata:i.metadata})}),ov=i=>{const c=i.metadata,u=se().has("show-metadata-other")?Object.entries(i.metadata).filter(([r])=>!kh.has(r)):[];if(c.ci||c.gitCommit||u.length>0)return m.jsxs("div",{className:"metadata-view",children:[c.ci&&!c.gitCommit&&m.jsx(dv,{info:c.ci}),c.gitCommit&&m.jsx(hv,{ci:c.ci,commit:c.gitCommit}),u.length>0&&m.jsxs(m.Fragment,{children:[(c.gitCommit||c.ci)&&m.jsx("div",{className:"metadata-separator"}),m.jsx("div",{className:"metadata-section metadata-properties",role:"list",children:u.map(([r,o])=>{const h=typeof o!="object"||o===null||o===void 0?String(o):JSON.stringify(o),y=h.length>1e3?h.slice(0,1e3)+"…":h;return m.jsx("div",{className:"copyable-property",role:"listitem",children:m.jsxs(or,{value:h,children:[m.jsx("span",{style:{fontWeight:"bold"},title:r,children:r}),": ",m.jsx("span",{title:y,children:Di(y)})]})},r)})})]})]})},dv=({info:i})=>{const c=i.prTitle||`Commit ${i.commitHash}`,u=i.prHref||i.commitHref;return m.jsx("div",{className:"metadata-section",role:"list",children:m.jsx("div",{role:"listitem",children:m.jsx("a",{href:Ve(u),target:"_blank",rel:"noopener noreferrer",title:c,children:c})})})},hv=({ci:i,commit:c})=>{const u=(i==null?void 0:i.prTitle)||c.subject,f=(i==null?void 0:i.prHref)||(i==null?void 0:i.commitHref),r=` <${c.author.email}>`,o=`${c.author.name}${r}`,h=Intl.DateTimeFormat(void 0,{dateStyle:"medium"}).format(c.committer.time),y=Intl.DateTimeFormat(void 0,{dateStyle:"full",timeStyle:"long"}).format(c.committer.time);return m.jsxs("div",{className:"metadata-section",role:"list",children:[m.jsxs("div",{role:"listitem",children:[f&&m.jsx("a",{href:Ve(f),target:"_blank",rel:"noopener noreferrer",title:u,children:u}),!f&&m.jsx("span",{title:u,children:u})]}),m.jsxs("div",{role:"listitem",className:"hbox",children:[m.jsx("span",{className:"mr-1",children:o}),m.jsxs("span",{title:y,children:[" on ",h]})]})]})},kh=new Set(["ci","gitCommit","gitDiff","actualWorkers"]),mv=i=>{const c=Object.entries(i).filter(([u])=>!kh.has(u));return!i.ci&&!i.gitCommit&&!c.length},gv=({files:i,expandedFiles:c,setExpandedFiles:u,projectNames:f})=>{const r=it.useMemo(()=>{const o=[];let h=0;for(const y of i)h+=y.tests.length,o.push({file:y,defaultExpanded:h<200});return o},[i]);return m.jsx(m.Fragment,{children:r.length>0?r.map(({file:o,defaultExpanded:h})=>m.jsx(Vh,{file:o,projectNames:f,isFileExpanded:y=>{const v=c.get(y);return v===void 0?h:!!v},setFileExpanded:(y,v)=>{const A=new Map(c);A.set(y,v),u(A)}},`file-${o.fileId}`)):m.jsx("div",{className:"chip-header test-file-no-files",children:"No tests found"})})},D2=({report:i,filteredStats:c,metadataVisible:u,toggleMetadataVisible:f,errorsVisible:r,setErrorsVisible:o})=>{if(!i)return null;const h=i.projectNames.length===1&&!!i.projectNames[0],y=!h&&!c,v=!mv(i.metadata)&&m.jsxs("div",{className:Ze("metadata-toggle",!y&&"metadata-toggle-second-line"),role:"button",onClick:f,title:u?"Hide metadata":"Show metadata",children:[u?Mi():Sa(),"Metadata"]}),A=m.jsxs("div",{className:"test-file-header-info",children:[h&&m.jsxs("div",{"data-testid":"project-name",children:["Project: ",i.projectNames[0]]}),c&&m.jsxs("div",{"data-testid":"filtered-tests-count",children:["Filtered: ",c.total," ",!!c.total&&"("+Ta(c.duration)+")"]}),y&&v]}),x=m.jsxs(m.Fragment,{children:[m.jsx("div",{"data-testid":"overall-time",style:{marginRight:"10px"},children:i?new Date(i.startTime).toLocaleString():""}),m.jsxs("div",{"data-testid":"overall-duration",children:["Total time: ",Ta(i.duration??0)]})]});return m.jsxs(m.Fragment,{children:[m.jsx(mr,{title:i.options.title,leftSuperHeader:A,rightSuperHeader:x}),!y&&v,u&&m.jsx(rv,{metadata:i.metadata}),!!i.errors.length&&m.jsx(gr,{header:"Errors",dataTestId:"report-errors",expanded:r,setExpanded:o,children:i.errors.map((T,D)=>m.jsx(Ar,{code:T},"test-report-error-message-"+D))})]})},Jh=i=>{const c=Math.round(i/1e3),u=Math.floor(c/60),f=c%60;return u===0?`${f}s`:`${u}m ${f}s`},Av=({entries:i})=>{const f=Math.max(...i.map(j=>j.label.length))*10,o={top:20,right:20,bottom:40,left:Math.min(800*.5,Math.max(50,f))},h=800-o.left-o.right,y=Math.min(...i.map(j=>j.startTime)),v=Math.max(...i.map(j=>j.startTime+j.duration));let A,x;const T=v-y;T<60*1e3?(A=10*1e3,x=!0):T<300*1e3?(A=30*1e3,x=!0):T<1800*1e3?(A=300*1e3,x=!1):(A=600*1e3,x=!1);const D=Math.ceil(y/A)*A,X=(j,Y)=>{const z=new Date(j).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:x?"2-digit":void 0});if(Y)return z;if(z.endsWith(" AM")||z.endsWith(" PM"))return z.slice(0,-3)},p=(v-y)*1.1,E=Math.ceil(p/A)*A,b=h/E,R=20,N=8,V=i.length*(R+N),F=[];for(let j=D;j<=y+E;j+=A){const Y=j-y;F.push({x:Y*b,label:X(j,j===D)})}const H=V+o.top+o.bottom;return m.jsx("svg",{viewBox:`0 0 800 ${H}`,preserveAspectRatio:"xMidYMid meet",style:{width:"100%",height:"auto"},role:"img",children:m.jsxs("g",{transform:`translate(${o.left}, ${o.top})`,role:"presentation",children:[F.map(({x:j,label:Y},z)=>m.jsxs("g",{"aria-hidden":"true",children:[m.jsx("line",{x1:j,y1:0,x2:j,y2:V,stroke:"var(--color-border-muted)",strokeWidth:"1"}),m.jsx("text",{x:j,y:V+20,textAnchor:"middle",dominantBaseline:"middle",fontSize:"12",fill:"var(--color-fg-muted)",children:Y})]},z)),i.map((j,Y)=>{const z=j.startTime-y,I=j.duration*b,k=z*b,nt=Y*(R+N),P=["var(--color-scale-blue-2)","var(--color-scale-blue-3)","var(--color-scale-blue-4)"],st=P[Y%P.length];return m.jsxs("g",{role:"listitem","aria-label":j.tooltip,children:[m.jsx("rect",{className:"gantt-bar",x:k,y:nt,width:I,height:R,fill:st,rx:"2",tabIndex:0,children:m.jsx("title",{children:j.tooltip})}),m.jsx("text",{x:k+I+6,y:nt+R/2,dominantBaseline:"middle",fontSize:"12",fill:"var(--color-fg-muted)","aria-hidden":"true",children:Jh(j.duration)}),m.jsx("text",{x:-10,y:nt+R/2,textAnchor:"end",dominantBaseline:"middle",fontSize:"12",fill:"var(--color-fg-muted)","aria-hidden":"true",children:j.label})]},Y)}),m.jsx("line",{x1:0,y1:0,x2:0,y2:V,stroke:"var(--color-fg-muted)",strokeWidth:"1","aria-hidden":"true"}),m.jsx("line",{x1:0,y1:V,x2:h,y2:V,stroke:"var(--color-fg-muted)",strokeWidth:"1","aria-hidden":"true"})]})})};function vv({report:i,tests:c}){return m.jsxs(m.Fragment,{children:[m.jsx(Ev,{report:i}),m.jsx(yv,{report:i,tests:c})]})}function yv({report:i,tests:c}){const[u,f]=ue.useState(50);return m.jsx(Vh,{file:{fileId:"slowest",fileName:"Slowest Tests",tests:c.slice(0,u),stats:null},projectNames:i.json().projectNames,footer:uf(r=>r+50),children:[Mi(),"Show 50 more"]}):void 0})}function Ev({report:i}){const c=i.json().machines;if(c.length===0)return null;const u=c.map(f=>{const r=f.tag.join(" "),o=new Date(f.startTime).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:"short"});let h=`${r} started at ${o}, runs ${Jh(f.duration)}`;return f.shardIndex&&(h+=` (shard ${f.shardIndex})`),{label:r,tooltip:h,startTime:f.startTime,duration:f.duration,shardIndex:f.shardIndex??1}}).sort((f,r)=>f.label.localeCompare(r.label)||f.shardIndex-r.shardIndex);return m.jsx(ke,{header:"Timeline",children:m.jsx(Av,{entries:u})})}const pv=i=>!i.has("testId")&&!i.has("speedboard"),xv=i=>i.has("testId"),bv=i=>i.has("speedboard")&&!i.has("testId"),Sv=({report:i})=>{var H,j;const c=se(),[u,f]=it.useState(new Map),[r,o]=it.useState(c.get("q")||""),[h,y]=it.useState(!1),[v,A]=it.useState(!0),x=c.has("speedboard"),[T]=Hh("mergeFiles",!1),D=c.get("testId"),X=((H=c.get("q"))==null?void 0:H.toString())||"",q=X?"&q="+X:"",p=(j=i==null?void 0:i.json())==null?void 0:j.options.title,E=it.useMemo(()=>{const Y=new Map;for(const z of(i==null?void 0:i.json().files)||[])for(const I of z.tests)Y.set(I.testId,z.fileId);return Y},[i]),b=it.useMemo(()=>uc.parse(r),[r]),R=it.useMemo(()=>b.empty()?void 0:Cv((i==null?void 0:i.json().files)||[],b),[i,b]),N=it.useMemo(()=>x?Rv(i,b):T?Dv(i,b):Ov(i,b),[i,b,T,x]),{prev:V,next:F}=it.useMemo(()=>{const Y=N.tests.findIndex(k=>k.testId===D),z=Y>0?N.tests[Y-1]:void 0,I=Y{const Y=z=>{if(z.target instanceof HTMLInputElement||z.target instanceof HTMLTextAreaElement||z.shiftKey||z.ctrlKey||z.metaKey||z.altKey)return;const I=new URLSearchParams(c);switch(z.key){case"a":z.preventDefault(),ll("#?");break;case"p":z.preventDefault(),I.delete("testId"),I.delete("speedboard"),ll(Ml(I,"s:passed",!1));break;case"f":z.preventDefault(),I.delete("testId"),I.delete("speedboard"),ll(Ml(I,"s:failed",!1));break;case"ArrowLeft":V&&(z.preventDefault(),I.delete("testId"),ll(il({test:V},I)+q));break;case"ArrowRight":F&&(z.preventDefault(),I.delete("testId"),ll(il({test:F},I)+q));break}};return document.addEventListener("keydown",Y),()=>document.removeEventListener("keydown",Y)},[V,F,q,X,c]),it.useEffect(()=>{p?document.title=p:document.title="Playwright Test Report"},[p]),m.jsx("div",{className:"htmlreport vbox px-4 pb-4",children:m.jsxs("main",{children:[i&&m.jsx(z5,{stats:i.json().stats,filterText:r,setFilterText:o}),m.jsxs(Vf,{predicate:pv,children:[m.jsx(D2,{report:i==null?void 0:i.json(),filteredStats:R,metadataVisible:h,toggleMetadataVisible:()=>y(Y=>!Y),errorsVisible:v,setErrorsVisible:A}),m.jsx(gv,{files:N.files,expandedFiles:u,setExpandedFiles:f,projectNames:(i==null?void 0:i.json().projectNames)||[]})]}),m.jsxs(Vf,{predicate:bv,children:[m.jsx(D2,{report:i==null?void 0:i.json(),filteredStats:R,metadataVisible:h,toggleMetadataVisible:()=>y(Y=>!Y),errorsVisible:v,setErrorsVisible:A}),i&&m.jsx(vv,{report:i,tests:N.tests})]}),m.jsx(Vf,{predicate:xv,children:i&&m.jsx(Tv,{report:i,next:F,prev:V,testId:D,testIdToFileIdMap:E})})]})})},Tv=({report:i,testIdToFileIdMap:c,next:u,prev:f,testId:r})=>{const[o,h]=it.useState("loading"),y=+(se().get("run")||"0");return it.useEffect(()=>{(async()=>{if(!r||typeof o=="object"&&r===o.testId)return;const v=c.get(r);if(!v){h("not-found");return}const A=await i.entry(`${v}.json`);h((A==null?void 0:A.tests.find(x=>x.testId===r))||"not-found")})()},[o,i,r,c]),o==="loading"?m.jsx("div",{className:"test-case-column"}):o==="not-found"?m.jsxs("div",{className:"test-case-column",children:[m.jsx(mr,{title:"Test not found"}),m.jsxs("div",{className:"test-case-location",children:["Test ID: ",r]})]}):m.jsx("div",{className:"test-case-column",children:m.jsx(cv,{report:i,next:u,prev:f,test:o,run:y})})};function Cv(i,c){const u={total:0,duration:0};for(const f of i){const r=f.tests.filter(o=>c.matches(o));u.total+=r.length;for(const o of r)u.duration+=o.duration}return u}function Ov(i,c){const u={files:[],tests:[]};for(const f of(i==null?void 0:i.json().files)||[]){const r=f.tests.filter(o=>c.matches(o));r.length&&u.files.push({...f,tests:r}),u.tests.push(...r)}return u}function Dv(i,c){const u=[],f=new Map;for(const o of(i==null?void 0:i.json().files)||[]){const h=o.tests.filter(y=>c.matches(y));for(const y of h){const v=y.path[0]??"";let A=f.get(v);A||(A={fileId:v,fileName:v,tests:[],stats:{total:0,expected:0,unexpected:0,flaky:0,skipped:0,ok:!0}},f.set(v,A),u.push(A));const x={...y,path:y.path.slice(1)};A.tests.push(x)}}u.sort((o,h)=>o.fileName.localeCompare(h.fileName));const r={files:u,tests:[]};for(const o of u)r.tests.push(...o.tests);return r}function Rv(i,c){const f=((i==null?void 0:i.json().files)||[]).flatMap(r=>r.tests).filter(r=>c.matches(r));return f.sort((r,o)=>o.duration-r.duration),{files:[],tests:f}}const wv="data:image/svg+xml,%3csvg%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M136.444%20221.556C123.558%20225.213%20115.104%20231.625%20109.535%20238.032C114.869%20233.364%20122.014%20229.08%20131.652%20226.348C141.51%20223.554%20149.92%20223.574%20156.869%20224.915V219.481C150.941%20218.939%20144.145%20219.371%20136.444%20221.556ZM108.946%20175.876L61.0895%20188.484C61.0895%20188.484%2061.9617%20189.716%2063.5767%20191.36L104.153%20180.668C104.153%20180.668%20103.578%20188.077%2098.5847%20194.705C108.03%20187.559%20108.946%20175.876%20108.946%20175.876ZM149.005%20288.347C81.6582%20306.486%2046.0272%20228.438%2035.2396%20187.928C30.2556%20169.229%2028.0799%20155.067%2027.5%20145.928C27.4377%20144.979%2027.4665%20144.179%2027.5336%20143.446C24.04%20143.657%2022.3674%20145.473%2022.7077%20150.721C23.2876%20159.855%2025.4633%20174.016%2030.4473%20192.721C41.2301%20233.225%2076.8659%20311.273%20144.213%20293.134C158.872%20289.185%20169.885%20281.992%20178.152%20272.81C170.532%20279.692%20160.995%20285.112%20149.005%20288.347ZM161.661%20128.11V132.903H188.077C187.535%20131.206%20186.989%20129.677%20186.447%20128.11H161.661Z'%20fill='%232D4552'/%3e%3cpath%20d='M193.981%20167.584C205.861%20170.958%20212.144%20179.287%20215.465%20186.658L228.711%20190.42C228.711%20190.42%20226.904%20164.623%20203.57%20157.995C181.741%20151.793%20168.308%20170.124%20166.674%20172.496C173.024%20167.972%20182.297%20164.268%20193.981%20167.584ZM299.422%20186.777C277.573%20180.547%20264.145%20198.916%20262.535%20201.255C268.89%20196.736%20278.158%20193.031%20289.837%20196.362C301.698%20199.741%20307.976%20208.06%20311.307%20215.436L324.572%20219.212C324.572%20219.212%20322.736%20193.41%20299.422%20186.777ZM286.262%20254.795L176.072%20223.99C176.072%20223.99%20177.265%20230.038%20181.842%20237.869L274.617%20263.805C282.255%20259.386%20286.262%20254.795%20286.262%20254.795ZM209.867%20321.102C122.618%20297.71%20133.166%20186.543%20147.284%20133.865C153.097%20112.156%20159.073%2096.0203%20164.029%2085.204C161.072%2084.5953%20158.623%2086.1529%20156.203%2091.0746C150.941%20101.747%20144.212%20119.124%20137.7%20143.45C123.586%20196.127%20113.038%20307.29%20200.283%20330.682C241.406%20341.699%20273.442%20324.955%20297.323%20298.659C274.655%20319.19%20245.714%20330.701%20209.867%20321.102Z'%20fill='%232D4552'/%3e%3cpath%20d='M161.661%20262.296V239.863L99.3324%20257.537C99.3324%20257.537%20103.938%20230.777%20136.444%20221.556C146.302%20218.762%20154.713%20218.781%20161.661%20220.123V128.11H192.869C189.471%20117.61%20186.184%20109.526%20183.423%20103.909C178.856%2094.612%20174.174%20100.775%20163.545%20109.665C156.059%20115.919%20137.139%20129.261%20108.668%20136.933C80.1966%20144.61%2057.179%20142.574%2047.5752%20140.911C33.9601%20138.562%2026.8387%20135.572%2027.5049%20145.928C28.0847%20155.062%2030.2605%20169.224%2035.2445%20187.928C46.0272%20228.433%2081.663%20306.481%20149.01%20288.342C166.602%20283.602%20179.019%20274.233%20187.626%20262.291H161.661V262.296ZM61.0848%20188.484L108.946%20175.876C108.946%20175.876%20107.551%20194.288%2089.6087%20199.018C71.6614%20203.743%2061.0848%20188.484%2061.0848%20188.484Z'%20fill='%23E2574C'/%3e%3cpath%20d='M341.786%20129.174C329.345%20131.355%20299.498%20134.072%20262.612%20124.185C225.716%20114.304%20201.236%2097.0224%20191.537%2088.8994C177.788%2077.3834%20171.74%2069.3802%20165.788%2081.4857C160.526%2092.163%20153.797%20109.54%20147.284%20133.866C133.171%20186.543%20122.623%20297.706%20209.867%20321.098C297.093%20344.47%20343.53%20242.92%20357.644%20190.238C364.157%20165.917%20367.013%20147.5%20367.799%20135.625C368.695%20122.173%20359.455%20126.078%20341.786%20129.174ZM166.497%20172.756C166.497%20172.756%20180.246%20151.372%20203.565%20158C226.899%20164.628%20228.706%20190.425%20228.706%20190.425L166.497%20172.756ZM223.42%20268.713C182.403%20256.698%20176.077%20223.99%20176.077%20223.99L286.262%20254.796C286.262%20254.791%20264.021%20280.578%20223.42%20268.713ZM262.377%20201.495C262.377%20201.495%20276.107%20180.126%20299.422%20186.773C322.736%20193.411%20324.572%20219.208%20324.572%20219.208L262.377%20201.495Z'%20fill='%232EAD33'/%3e%3cpath%20d='M139.88%20246.04L99.3324%20257.532C99.3324%20257.532%20103.737%20232.44%20133.607%20222.496L110.647%20136.33L108.663%20136.933C80.1918%20144.611%2057.1742%20142.574%2047.5704%20140.911C33.9554%20138.563%2026.834%20135.572%2027.5001%20145.929C28.08%20155.063%2030.2557%20169.224%2035.2397%20187.929C46.0225%20228.433%2081.6583%20306.481%20149.005%20288.342L150.989%20287.719L139.88%20246.04ZM61.0848%20188.485L108.946%20175.876C108.946%20175.876%20107.551%20194.288%2089.6087%20199.018C71.6615%20203.743%2061.0848%20188.485%2061.0848%20188.485Z'%20fill='%23D65348'/%3e%3cpath%20d='M225.27%20269.163L223.415%20268.712C182.398%20256.698%20176.072%20223.99%20176.072%20223.99L232.89%20239.872L262.971%20124.281L262.607%20124.185C225.711%20114.304%20201.232%2097.0224%20191.532%2088.8994C177.783%2077.3834%20171.735%2069.3802%20165.783%2081.4857C160.526%2092.163%20153.797%20109.54%20147.284%20133.866C133.171%20186.543%20122.623%20297.706%20209.867%20321.097L211.655%20321.5L225.27%20269.163ZM166.497%20172.756C166.497%20172.756%20180.246%20151.372%20203.565%20158C226.899%20164.628%20228.706%20190.425%20228.706%20190.425L166.497%20172.756Z'%20fill='%231D8D22'/%3e%3cpath%20d='M141.946%20245.451L131.072%20248.537C133.641%20263.019%20138.169%20276.917%20145.276%20289.195C146.513%20288.922%20147.74%20288.687%20149%20288.342C152.302%20287.451%20155.364%20286.348%20158.312%20285.145C150.371%20273.361%20145.118%20259.789%20141.946%20245.451ZM137.7%20143.451C132.112%20164.307%20127.113%20194.326%20128.489%20224.436C130.952%20223.367%20133.554%20222.371%20136.444%20221.551L138.457%20221.101C136.003%20188.939%20141.308%20156.165%20147.284%20133.866C148.799%20128.225%20150.318%20122.978%20151.832%20118.085C149.393%20119.637%20146.767%20121.228%20143.776%20122.867C141.759%20129.093%20139.722%20135.898%20137.7%20143.451Z'%20fill='%23C04B41'/%3e%3c/svg%3e",If=P3,vr=document.createElement("link");vr.rel="shortcut icon";vr.href=wv;document.head.appendChild(vr);const Mv=()=>{const[i,c]=it.useState();return it.useEffect(()=>{const u=new jv;u.load().then(()=>{var f;(f=document.getElementById("playwrightReportBase64"))==null||f.remove(),c(u)})},[]),m.jsx(C5,{children:m.jsx(Sv,{report:i})})};window.onload=()=>{H5(),u5.createRoot(document.querySelector("#root")).render(m.jsx(Mv,{}))};class jv{constructor(){this._entries=new Map}async load(){const c=document.getElementById("playwrightReportBase64").content.textContent,u=new If.ZipReader(new If.Data64URIReader(c),{useWebWorkers:!1});for(const f of await u.getEntries())this._entries.set(f.filename,f);this._json=await this.entry("report.json")}json(){return this._json}async entry(c){const u=this._entries.get(c),f=new If.TextWriter;return await u.getData(f),JSON.parse(await f.getData())}} diff --git a/node_modules.codex-backup/playwright-core/lib/vite/recorder/assets/codeMirrorModule-C8KMvO9L.js b/node_modules.codex-backup/playwright-core/lib/vite/recorder/assets/codeMirrorModule-C8KMvO9L.js new file mode 100644 index 00000000..40c1057c --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/vite/recorder/assets/codeMirrorModule-C8KMvO9L.js @@ -0,0 +1,32 @@ +import{g as Ju}from"./index-CqAYX1I3.js";var vi={exports:{}},Zu=vi.exports,pa;function mt(){return pa||(pa=1,(function(ct,xt){(function(b,pe){ct.exports=pe()})(Zu,(function(){var b=navigator.userAgent,pe=navigator.platform,_=/gecko\/\d/i.test(b),te=/MSIE \d/.test(b),oe=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(b),Q=/Edge\/(\d+)/.exec(b),k=te||oe||Q,I=k&&(te?document.documentMode||6:+(Q||oe)[1]),Y=!Q&&/WebKit\//.test(b),ne=Y&&/Qt\/\d+\.\d+/.test(b),S=!Q&&/Chrome\/(\d+)/.exec(b),R=S&&+S[1],A=/Opera\//.test(b),$=/Apple Computer/.test(navigator.vendor),ue=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(b),O=/PhantomJS/.test(b),w=$&&(/Mobile\/\w+/.test(b)||navigator.maxTouchPoints>2),M=/Android/.test(b),N=w||M||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(b),z=w||/Mac/.test(pe),X=/\bCrOS\b/.test(b),q=/win/i.test(pe),p=A&&b.match(/Version\/(\d*\.\d*)/);p&&(p=Number(p[1])),p&&p>=15&&(A=!1,Y=!0);var W=z&&(ne||A&&(p==null||p<12.11)),J=_||k&&I>=9;function P(e){return new RegExp("(^|\\s)"+e+"(?:$|\\s)\\s*")}var V=function(e,t){var n=e.className,r=P(t).exec(n);if(r){var i=n.slice(r.index+r[0].length);e.className=n.slice(0,r.index)+(i?r[1]+i:"")}};function F(e){for(var t=e.childNodes.length;t>0;--t)e.removeChild(e.firstChild);return e}function G(e,t){return F(e).appendChild(t)}function c(e,t,n,r){var i=document.createElement(e);if(n&&(i.className=n),r&&(i.style.cssText=r),typeof t=="string")i.appendChild(document.createTextNode(t));else if(t)for(var o=0;o=t)return l+(t-o);l+=a-o,l+=n-l%n,o=a+1}}var Ce=function(){this.id=null,this.f=null,this.time=0,this.handler=xe(this.onTimeout,this)};Ce.prototype.onTimeout=function(e){e.id=0,e.time<=+new Date?e.f():setTimeout(e.handler,e.time-+new Date)},Ce.prototype.set=function(e,t){this.f=t;var n=+new Date+e;(!this.id||n=t)return r+Math.min(l,t-i);if(i+=o-r,i+=n-i%n,r=o+1,i>=t)return r}}var Ue=[""];function et(e){for(;Ue.length<=e;)Ue.push(we(Ue)+" ");return Ue[e]}function we(e){return e[e.length-1]}function Ie(e,t){for(var n=[],r=0;r"€"&&(e.toUpperCase()!=e.toLowerCase()||ze.test(e))}function De(e,t){return t?t.source.indexOf("\\w")>-1&&me(e)?!0:t.test(e):me(e)}function be(e){for(var t in e)if(e.hasOwnProperty(t)&&e[t])return!1;return!0}var Be=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;function Ne(e){return e.charCodeAt(0)>=768&&Be.test(e)}function Mt(e,t,n){for(;(n<0?t>0:tn?-1:1;;){if(t==n)return t;var i=(t+n)/2,o=r<0?Math.ceil(i):Math.floor(i);if(o==t)return e(o)?t:n;e(o)?n=o:t=o+r}}function or(e,t,n,r){if(!e)return r(t,n,"ltr",0);for(var i=!1,o=0;ot||t==n&&l.to==t)&&(r(Math.max(l.from,t),Math.min(l.to,n),l.level==1?"rtl":"ltr",o),i=!0)}i||r(t,n,"ltr")}var br=null;function lr(e,t,n){var r;br=null;for(var i=0;it)return i;o.to==t&&(o.from!=o.to&&n=="before"?r=i:br=i),o.from==t&&(o.from!=o.to&&n!="before"?r=i:br=i)}return r??br}var mi=(function(){var e="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",t="nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111";function n(u){return u<=247?e.charAt(u):1424<=u&&u<=1524?"R":1536<=u&&u<=1785?t.charAt(u-1536):1774<=u&&u<=2220?"r":8192<=u&&u<=8203?"w":u==8204?"b":"L"}var r=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,i=/[stwN]/,o=/[LRr]/,l=/[Lb1n]/,a=/[1n]/;function s(u,h,x){this.level=u,this.from=h,this.to=x}return function(u,h){var x=h=="ltr"?"L":"R";if(u.length==0||h=="ltr"&&!r.test(u))return!1;for(var D=u.length,L=[],H=0;H-1&&(r[t]=i.slice(0,o).concat(i.slice(o+1)))}}}function Ye(e,t){var n=Zt(e,t);if(n.length)for(var r=Array.prototype.slice.call(arguments,2),i=0;i0}function Bt(e){e.prototype.on=function(t,n){Se(this,t,n)},e.prototype.off=function(t,n){ht(this,t,n)}}function pt(e){e.preventDefault?e.preventDefault():e.returnValue=!1}function Er(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function kt(e){return e.defaultPrevented!=null?e.defaultPrevented:e.returnValue==!1}function ar(e){pt(e),Er(e)}function ln(e){return e.target||e.srcElement}function Rt(e){var t=e.which;return t==null&&(e.button&1?t=1:e.button&2?t=3:e.button&4&&(t=2)),z&&e.ctrlKey&&t==1&&(t=3),t}var xi=(function(){if(k&&I<9)return!1;var e=c("div");return"draggable"in e||"dragDrop"in e})(),Or;function Rn(e){if(Or==null){var t=c("span","​");G(e,c("span",[t,document.createTextNode("x")])),e.firstChild.offsetHeight!=0&&(Or=t.offsetWidth<=1&&t.offsetHeight>2&&!(k&&I<8))}var n=Or?c("span","​"):c("span"," ",null,"display: inline-block; width: 1px; margin-right: -1px");return n.setAttribute("cm-text",""),n}var an;function sr(e){if(an!=null)return an;var t=G(e,document.createTextNode("AخA")),n=C(t,0,1).getBoundingClientRect(),r=C(t,1,2).getBoundingClientRect();return F(e),!n||n.left==n.right?!1:an=r.right-n.right<3}var zt=` + +b`.split(/\n/).length!=3?function(e){for(var t=0,n=[],r=e.length;t<=r;){var i=e.indexOf(` +`,t);i==-1&&(i=e.length);var o=e.slice(t,e.charAt(i-1)=="\r"?i-1:i),l=o.indexOf("\r");l!=-1?(n.push(o.slice(0,l)),t+=l+1):(n.push(o),t=i+1)}return n}:function(e){return e.split(/\r\n?|\n/)},ur=window.getSelection?function(e){try{return e.selectionStart!=e.selectionEnd}catch{return!1}}:function(e){var t;try{t=e.ownerDocument.selection.createRange()}catch{}return!t||t.parentElement()!=e?!1:t.compareEndPoints("StartToEnd",t)!=0},Wn=(function(){var e=c("div");return"oncopy"in e?!0:(e.setAttribute("oncopy","return;"),typeof e.oncopy=="function")})(),Wt=null;function yi(e){if(Wt!=null)return Wt;var t=G(e,c("span","x")),n=t.getBoundingClientRect(),r=C(t,0,1).getBoundingClientRect();return Wt=Math.abs(n.left-r.left)>1}var Pr={},Ht={};function _t(e,t){arguments.length>2&&(t.dependencies=Array.prototype.slice.call(arguments,2)),Pr[e]=t}function kr(e,t){Ht[e]=t}function Ir(e){if(typeof e=="string"&&Ht.hasOwnProperty(e))e=Ht[e];else if(e&&typeof e.name=="string"&&Ht.hasOwnProperty(e.name)){var t=Ht[e.name];typeof t=="string"&&(t={name:t}),e=K(t,e),e.name=t.name}else{if(typeof e=="string"&&/^[\w\-]+\/[\w\-]+\+xml$/.test(e))return Ir("application/xml");if(typeof e=="string"&&/^[\w\-]+\/[\w\-]+\+json$/.test(e))return Ir("application/json")}return typeof e=="string"?{name:e}:e||{name:"null"}}function zr(e,t){t=Ir(t);var n=Pr[t.name];if(!n)return zr(e,"text/plain");var r=n(e,t);if(fr.hasOwnProperty(t.name)){var i=fr[t.name];for(var o in i)i.hasOwnProperty(o)&&(r.hasOwnProperty(o)&&(r["_"+o]=r[o]),r[o]=i[o])}if(r.name=t.name,t.helperType&&(r.helperType=t.helperType),t.modeProps)for(var l in t.modeProps)r[l]=t.modeProps[l];return r}var fr={};function Br(e,t){var n=fr.hasOwnProperty(e)?fr[e]:fr[e]={};Me(t,n)}function Gt(e,t){if(t===!0)return t;if(e.copyState)return e.copyState(t);var n={};for(var r in t){var i=t[r];i instanceof Array&&(i=i.concat([])),n[r]=i}return n}function sn(e,t){for(var n;e.innerMode&&(n=e.innerMode(t),!(!n||n.mode==e));)t=n.state,e=n.mode;return n||{mode:e,state:t}}function Rr(e,t,n){return e.startState?e.startState(t,n):!0}var Je=function(e,t,n){this.pos=this.start=0,this.string=e,this.tabSize=t||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0,this.lineOracle=n};Je.prototype.eol=function(){return this.pos>=this.string.length},Je.prototype.sol=function(){return this.pos==this.lineStart},Je.prototype.peek=function(){return this.string.charAt(this.pos)||void 0},Je.prototype.next=function(){if(this.post},Je.prototype.eatSpace=function(){for(var e=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e},Je.prototype.skipToEnd=function(){this.pos=this.string.length},Je.prototype.skipTo=function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},Je.prototype.backUp=function(e){this.pos-=e},Je.prototype.column=function(){return this.lastColumnPos0?null:(o&&t!==!1&&(this.pos+=o[0].length),o)}},Je.prototype.current=function(){return this.string.slice(this.start,this.pos)},Je.prototype.hideFirstChars=function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}},Je.prototype.lookAhead=function(e){var t=this.lineOracle;return t&&t.lookAhead(e)},Je.prototype.baseToken=function(){var e=this.lineOracle;return e&&e.baseToken(this.pos)};function ye(e,t){if(t-=e.first,t<0||t>=e.size)throw new Error("There is no line "+(t+e.first)+" in the document.");for(var n=e;!n.lines;)for(var r=0;;++r){var i=n.children[r],o=i.chunkSize();if(t=e.first&&tn?B(n,ye(e,n).text.length):Za(t,ye(e,t.line).text.length)}function Za(e,t){var n=e.ch;return n==null||n>t?B(e.line,t):n<0?B(e.line,0):e}function vo(e,t){for(var n=[],r=0;rthis.maxLookAhead&&(this.maxLookAhead=e),t},Xt.prototype.baseToken=function(e){if(!this.baseTokens)return null;for(;this.baseTokens[this.baseTokenPos]<=e;)this.baseTokenPos+=2;var t=this.baseTokens[this.baseTokenPos+1];return{type:t&&t.replace(/( |^)overlay .*/,""),size:this.baseTokens[this.baseTokenPos]-e}},Xt.prototype.nextLine=function(){this.line++,this.maxLookAhead>0&&this.maxLookAhead--},Xt.fromSaved=function(e,t,n){return t instanceof Hn?new Xt(e,Gt(e.mode,t.state),n,t.lookAhead):new Xt(e,Gt(e.mode,t),n)},Xt.prototype.save=function(e){var t=e!==!1?Gt(this.doc.mode,this.state):this.state;return this.maxLookAhead>0?new Hn(t,this.maxLookAhead):t};function mo(e,t,n,r){var i=[e.state.modeGen],o={};So(e,t.text,e.doc.mode,n,function(u,h){return i.push(u,h)},o,r);for(var l=n.state,a=function(u){n.baseTokens=i;var h=e.state.overlays[u],x=1,D=0;n.state=!0,So(e,t.text,h.mode,n,function(L,H){for(var Z=x;DL&&i.splice(x,1,L,i[x+1],ie),x+=2,D=Math.min(L,ie)}if(H)if(h.opaque)i.splice(Z,x-Z,L,"overlay "+H),x=Z+2;else for(;Ze.options.maxHighlightLength&&Gt(e.doc.mode,r.state),o=mo(e,t,r);i&&(r.state=i),t.stateAfter=r.save(!i),t.styles=o.styles,o.classes?t.styleClasses=o.classes:t.styleClasses&&(t.styleClasses=null),n===e.doc.highlightFrontier&&(e.doc.modeFrontier=Math.max(e.doc.modeFrontier,++e.doc.highlightFrontier))}return t.styles}function fn(e,t,n){var r=e.doc,i=e.display;if(!r.mode.startState)return new Xt(r,!0,t);var o=$a(e,t,n),l=o>r.first&&ye(r,o-1).stateAfter,a=l?Xt.fromSaved(r,l,o):new Xt(r,Rr(r.mode),o);return r.iter(o,t,function(s){bi(e,s.text,a);var u=a.line;s.stateAfter=u==t-1||u%5==0||u>=i.viewFrom&&ut.start)return o}throw new Error("Mode "+e.name+" failed to advance stream.")}var bo=function(e,t,n){this.start=e.start,this.end=e.pos,this.string=e.current(),this.type=t||null,this.state=n};function ko(e,t,n,r){var i=e.doc,o=i.mode,l;t=Ae(i,t);var a=ye(i,t.line),s=fn(e,t.line,n),u=new Je(a.text,e.options.tabSize,s),h;for(r&&(h=[]);(r||u.pose.options.maxHighlightLength?(a=!1,l&&bi(e,t,r,h.pos),h.pos=t.length,x=null):x=wo(ki(n,h,r.state,D),o),D){var L=D[0].name;L&&(x="m-"+(x?L+" "+x:L))}if(!a||u!=x){for(;sl;--a){if(a<=o.first)return o.first;var s=ye(o,a-1),u=s.stateAfter;if(u&&(!n||a+(u instanceof Hn?u.lookAhead:0)<=o.modeFrontier))return a;var h=Fe(s.text,null,e.options.tabSize);(i==null||r>h)&&(i=a-1,r=h)}return i}function Va(e,t){if(e.modeFrontier=Math.min(e.modeFrontier,t),!(e.highlightFrontiern;r--){var i=ye(e,r).stateAfter;if(i&&(!(i instanceof Hn)||r+i.lookAhead=t:o.to>t);(r||(r=[])).push(new _n(l,o.from,s?null:o.to))}}return r}function os(e,t,n){var r;if(e)for(var i=0;i=t:o.to>t);if(a||o.from==t&&l.type=="bookmark"&&(!n||o.marker.insertLeft)){var s=o.from==null||(l.inclusiveLeft?o.from<=t:o.from0&&a)for(var ge=0;ge0)){var h=[s,1],x=ce(u.from,a.from),D=ce(u.to,a.to);(x<0||!l.inclusiveLeft&&!x)&&h.push({from:u.from,to:a.from}),(D>0||!l.inclusiveRight&&!D)&&h.push({from:a.to,to:u.to}),i.splice.apply(i,h),s+=h.length-3}}return i}function Co(e){var t=e.markedSpans;if(t){for(var n=0;nt)&&(!r||Si(r,o.marker)<0)&&(r=o.marker)}return r}function Ao(e,t,n,r,i){var o=ye(e,t),l=Vt&&o.markedSpans;if(l)for(var a=0;a=0&&x<=0||h<=0&&x>=0)&&(h<=0&&(s.marker.inclusiveRight&&i.inclusiveLeft?ce(u.to,n)>=0:ce(u.to,n)>0)||h>=0&&(s.marker.inclusiveRight&&i.inclusiveLeft?ce(u.from,r)<=0:ce(u.from,r)<0)))return!0}}}function qt(e){for(var t;t=Fo(e);)e=t.find(-1,!0).line;return e}function ss(e){for(var t;t=Kn(e);)e=t.find(1,!0).line;return e}function us(e){for(var t,n;t=Kn(e);)e=t.find(1,!0).line,(n||(n=[])).push(e);return n}function Li(e,t){var n=ye(e,t),r=qt(n);return n==r?t:f(r)}function No(e,t){if(t>e.lastLine())return t;var n=ye(e,t),r;if(!cr(e,n))return t;for(;r=Kn(n);)n=r.find(1,!0).line;return f(n)+1}function cr(e,t){var n=Vt&&t.markedSpans;if(n){for(var r=void 0,i=0;it.maxLineLength&&(t.maxLineLength=i,t.maxLine=r)})}var Hr=function(e,t,n){this.text=e,Do(this,t),this.height=n?n(this):1};Hr.prototype.lineNo=function(){return f(this)},Bt(Hr);function fs(e,t,n,r){e.text=t,e.stateAfter&&(e.stateAfter=null),e.styles&&(e.styles=null),e.order!=null&&(e.order=null),Co(e),Do(e,n);var i=r?r(e):1;i!=e.height&&Et(e,i)}function cs(e){e.parent=null,Co(e)}var ds={},hs={};function Eo(e,t){if(!e||/^\s*$/.test(e))return null;var n=t.addModeClass?hs:ds;return n[e]||(n[e]=e.replace(/\S+/g,"cm-$&"))}function Oo(e,t){var n=T("span",null,null,Y?"padding-right: .1px":null),r={pre:T("pre",[n],"CodeMirror-line"),content:n,col:0,pos:0,cm:e,trailingSpace:!1,splitSpaces:e.getOption("lineWrapping")};t.measure={};for(var i=0;i<=(t.rest?t.rest.length:0);i++){var o=i?t.rest[i-1]:t.line,l=void 0;r.pos=0,r.addToken=gs,sr(e.display.measure)&&(l=Re(o,e.doc.direction))&&(r.addToken=ms(r.addToken,l)),r.map=[];var a=t!=e.display.externalMeasured&&f(o);xs(o,r,xo(e,o,a)),o.styleClasses&&(o.styleClasses.bgClass&&(r.bgClass=de(o.styleClasses.bgClass,r.bgClass||"")),o.styleClasses.textClass&&(r.textClass=de(o.styleClasses.textClass,r.textClass||""))),r.map.length==0&&r.map.push(0,0,r.content.appendChild(Rn(e.display.measure))),i==0?(t.measure.map=r.map,t.measure.cache={}):((t.measure.maps||(t.measure.maps=[])).push(r.map),(t.measure.caches||(t.measure.caches=[])).push({}))}if(Y){var s=r.content.lastChild;(/\bcm-tab\b/.test(s.className)||s.querySelector&&s.querySelector(".cm-tab"))&&(r.content.className="cm-tab-wrap-hack")}return Ye(e,"renderLine",e,t.line,r.pre),r.pre.className&&(r.textClass=de(r.pre.className,r.textClass||"")),r}function ps(e){var t=c("span","•","cm-invalidchar");return t.title="\\u"+e.charCodeAt(0).toString(16),t.setAttribute("aria-label",t.title),t}function gs(e,t,n,r,i,o,l){if(t){var a=e.splitSpaces?vs(t,e.trailingSpace):t,s=e.cm.state.specialChars,u=!1,h;if(!s.test(t))e.col+=t.length,h=document.createTextNode(a),e.map.push(e.pos,e.pos+t.length,h),k&&I<9&&(u=!0),e.pos+=t.length;else{h=document.createDocumentFragment();for(var x=0;;){s.lastIndex=x;var D=s.exec(t),L=D?D.index-x:t.length-x;if(L){var H=document.createTextNode(a.slice(x,x+L));k&&I<9?h.appendChild(c("span",[H])):h.appendChild(H),e.map.push(e.pos,e.pos+L,H),e.col+=L,e.pos+=L}if(!D)break;x+=L+1;var Z=void 0;if(D[0]==" "){var ie=e.cm.options.tabSize,ae=ie-e.col%ie;Z=h.appendChild(c("span",et(ae),"cm-tab")),Z.setAttribute("role","presentation"),Z.setAttribute("cm-text"," "),e.col+=ae}else D[0]=="\r"||D[0]==` +`?(Z=h.appendChild(c("span",D[0]=="\r"?"␍":"␤","cm-invalidchar")),Z.setAttribute("cm-text",D[0]),e.col+=1):(Z=e.cm.options.specialCharPlaceholder(D[0]),Z.setAttribute("cm-text",D[0]),k&&I<9?h.appendChild(c("span",[Z])):h.appendChild(Z),e.col+=1);e.map.push(e.pos,e.pos+1,Z),e.pos++}}if(e.trailingSpace=a.charCodeAt(t.length-1)==32,n||r||i||u||o||l){var he=n||"";r&&(he+=r),i&&(he+=i);var se=c("span",[h],he,o);if(l)for(var ge in l)l.hasOwnProperty(ge)&&ge!="style"&&ge!="class"&&se.setAttribute(ge,l[ge]);return e.content.appendChild(se)}e.content.appendChild(h)}}function vs(e,t){if(e.length>1&&!/ /.test(e))return e;for(var n=t,r="",i=0;iu&&x.from<=u));D++);if(x.to>=h)return e(n,r,i,o,l,a,s);e(n,r.slice(0,x.to-u),i,o,null,a,s),o=null,r=r.slice(x.to-u),u=x.to}}}function Po(e,t,n,r){var i=!r&&n.widgetNode;i&&e.map.push(e.pos,e.pos+t,i),!r&&e.cm.display.input.needsContentAttribute&&(i||(i=e.content.appendChild(document.createElement("span"))),i.setAttribute("cm-marker",n.id)),i&&(e.cm.display.input.setUneditable(i),e.content.appendChild(i)),e.pos+=t,e.trailingSpace=!1}function xs(e,t,n){var r=e.markedSpans,i=e.text,o=0;if(!r){for(var l=1;ls||Ee.collapsed&&ke.to==s&&ke.from==s)){if(ke.to!=null&&ke.to!=s&&L>ke.to&&(L=ke.to,Z=""),Ee.className&&(H+=" "+Ee.className),Ee.css&&(D=(D?D+";":"")+Ee.css),Ee.startStyle&&ke.from==s&&(ie+=" "+Ee.startStyle),Ee.endStyle&&ke.to==L&&(ge||(ge=[])).push(Ee.endStyle,ke.to),Ee.title&&((he||(he={})).title=Ee.title),Ee.attributes)for(var Ke in Ee.attributes)(he||(he={}))[Ke]=Ee.attributes[Ke];Ee.collapsed&&(!ae||Si(ae.marker,Ee)<0)&&(ae=ke)}else ke.from>s&&L>ke.from&&(L=ke.from)}if(ge)for(var st=0;st=a)break;for(var Nt=Math.min(a,L);;){if(h){var Tt=s+h.length;if(!ae){var tt=Tt>Nt?h.slice(0,Nt-s):h;t.addToken(t,tt,x?x+H:H,ie,s+tt.length==L?Z:"",D,he)}if(Tt>=Nt){h=h.slice(Nt-s),s=Nt;break}s=Tt,ie=""}h=i.slice(o,o=n[u++]),x=Eo(n[u++],t.cm.options)}}}function Io(e,t,n){this.line=t,this.rest=us(t),this.size=this.rest?f(we(this.rest))-n+1:1,this.node=this.text=null,this.hidden=cr(e,t)}function Gn(e,t,n){for(var r=[],i,o=t;o2&&o.push((s.bottom+u.top)/2-n.top)}}o.push(n.bottom-n.top)}}function qo(e,t,n){if(e.line==t)return{map:e.measure.map,cache:e.measure.cache};if(e.rest){for(var r=0;rn)return{map:e.measure.maps[i],cache:e.measure.caches[i],before:!0}}}function Fs(e,t){t=qt(t);var n=f(t),r=e.display.externalMeasured=new Io(e.doc,t,n);r.lineN=n;var i=r.built=Oo(e,r);return r.text=i.pre,G(e.display.lineMeasure,i.pre),r}function jo(e,t,n,r){return Qt(e,qr(e,t),n,r)}function Ai(e,t){if(t>=e.display.viewFrom&&t=n.lineN&&tt)&&(o=s-a,i=o-1,t>=s&&(l="right")),i!=null){if(r=e[u+2],a==s&&n==(r.insertLeft?"left":"right")&&(l=n),n=="left"&&i==0)for(;u&&e[u-2]==e[u-3]&&e[u-1].insertLeft;)r=e[(u-=3)+2],l="left";if(n=="right"&&i==s-a)for(;u=0&&(n=e[i]).left==n.right;i--);return n}function Ns(e,t,n,r){var i=Uo(t.map,n,r),o=i.node,l=i.start,a=i.end,s=i.collapse,u;if(o.nodeType==3){for(var h=0;h<4;h++){for(;l&&Ne(t.line.text.charAt(i.coverStart+l));)--l;for(;i.coverStart+a0&&(s=r="right");var x;e.options.lineWrapping&&(x=o.getClientRects()).length>1?u=x[r=="right"?x.length-1:0]:u=o.getBoundingClientRect()}if(k&&I<9&&!l&&(!u||!u.left&&!u.right)){var D=o.parentNode.getClientRects()[0];D?u={left:D.left,right:D.left+Kr(e.display),top:D.top,bottom:D.bottom}:u=Ko}for(var L=u.top-t.rect.top,H=u.bottom-t.rect.top,Z=(L+H)/2,ie=t.view.measure.heights,ae=0;ae=r.text.length?(s=r.text.length,u="before"):s<=0&&(s=0,u="after"),!a)return l(u=="before"?s-1:s,u=="before");function h(H,Z,ie){var ae=a[Z],he=ae.level==1;return l(ie?H-1:H,he!=ie)}var x=lr(a,s,u),D=br,L=h(s,x,u=="before");return D!=null&&(L.other=h(s,D,u!="before")),L}function Zo(e,t){var n=0;t=Ae(e.doc,t),e.options.lineWrapping||(n=Kr(e.display)*t.ch);var r=ye(e.doc,t.line),i=er(r)+Xn(e.display);return{left:n,right:n,top:i,bottom:i+r.height}}function Ei(e,t,n,r,i){var o=B(e,t,n);return o.xRel=i,r&&(o.outside=r),o}function Oi(e,t,n){var r=e.doc;if(n+=e.display.viewOffset,n<0)return Ei(r.first,0,null,-1,-1);var i=m(r,n),o=r.first+r.size-1;if(i>o)return Ei(r.first+r.size-1,ye(r,o).text.length,null,1,1);t<0&&(t=0);for(var l=ye(r,i);;){var a=Os(e,l,i,t,n),s=as(l,a.ch+(a.xRel>0||a.outside>0?1:0));if(!s)return a;var u=s.find(1);if(u.line==i)return u;l=ye(r,i=u.line)}}function $o(e,t,n,r){r-=Ni(t);var i=t.text.length,o=Pt(function(l){return Qt(e,n,l-1).bottom<=r},i,0);return i=Pt(function(l){return Qt(e,n,l).top>r},o,i),{begin:o,end:i}}function Vo(e,t,n,r){n||(n=qr(e,t));var i=Yn(e,t,Qt(e,n,r),"line").top;return $o(e,t,n,i)}function Pi(e,t,n,r){return e.bottom<=n?!1:e.top>n?!0:(r?e.left:e.right)>t}function Os(e,t,n,r,i){i-=er(t);var o=qr(e,t),l=Ni(t),a=0,s=t.text.length,u=!0,h=Re(t,e.doc.direction);if(h){var x=(e.options.lineWrapping?Is:Ps)(e,t,n,o,h,r,i);u=x.level!=1,a=u?x.from:x.to-1,s=u?x.to:x.from-1}var D=null,L=null,H=Pt(function(Le){var ke=Qt(e,o,Le);return ke.top+=l,ke.bottom+=l,Pi(ke,r,i,!1)?(ke.top<=i&&ke.left<=r&&(D=Le,L=ke),!0):!1},a,s),Z,ie,ae=!1;if(L){var he=r-L.left=ge.bottom?1:0}return H=Mt(t.text,H,1),Ei(n,H,ie,ae,r-Z)}function Ps(e,t,n,r,i,o,l){var a=Pt(function(x){var D=i[x],L=D.level!=1;return Pi(jt(e,B(n,L?D.to:D.from,L?"before":"after"),"line",t,r),o,l,!0)},0,i.length-1),s=i[a];if(a>0){var u=s.level!=1,h=jt(e,B(n,u?s.from:s.to,u?"after":"before"),"line",t,r);Pi(h,o,l,!0)&&h.top>l&&(s=i[a-1])}return s}function Is(e,t,n,r,i,o,l){var a=$o(e,t,r,l),s=a.begin,u=a.end;/\s/.test(t.text.charAt(u-1))&&u--;for(var h=null,x=null,D=0;D=u||L.to<=s)){var H=L.level!=1,Z=Qt(e,r,H?Math.min(u,L.to)-1:Math.max(s,L.from)).right,ie=Zie)&&(h=L,x=ie)}}return h||(h=i[i.length-1]),h.fromu&&(h={from:h.from,to:u,level:h.level}),h}var Sr;function jr(e){if(e.cachedTextHeight!=null)return e.cachedTextHeight;if(Sr==null){Sr=c("pre",null,"CodeMirror-line-like");for(var t=0;t<49;++t)Sr.appendChild(document.createTextNode("x")),Sr.appendChild(c("br"));Sr.appendChild(document.createTextNode("x"))}G(e.measure,Sr);var n=Sr.offsetHeight/50;return n>3&&(e.cachedTextHeight=n),F(e.measure),n||1}function Kr(e){if(e.cachedCharWidth!=null)return e.cachedCharWidth;var t=c("span","xxxxxxxxxx"),n=c("pre",[t],"CodeMirror-line-like");G(e.measure,n);var r=t.getBoundingClientRect(),i=(r.right-r.left)/10;return i>2&&(e.cachedCharWidth=i),i||10}function Ii(e){for(var t=e.display,n={},r={},i=t.gutters.clientLeft,o=t.gutters.firstChild,l=0;o;o=o.nextSibling,++l){var a=e.display.gutterSpecs[l].className;n[a]=o.offsetLeft+o.clientLeft+i,r[a]=o.clientWidth}return{fixedPos:zi(t),gutterTotalWidth:t.gutters.offsetWidth,gutterLeft:n,gutterWidth:r,wrapperWidth:t.wrapper.clientWidth}}function zi(e){return e.scroller.getBoundingClientRect().left-e.sizer.getBoundingClientRect().left}function el(e){var t=jr(e.display),n=e.options.lineWrapping,r=n&&Math.max(5,e.display.scroller.clientWidth/Kr(e.display)-3);return function(i){if(cr(e.doc,i))return 0;var o=0;if(i.widgets)for(var l=0;l0&&(u=ye(e.doc,s.line).text).length==s.ch){var h=Fe(u,u.length,e.options.tabSize)-u.length;s=B(s.line,Math.max(0,Math.round((o-_o(e.display).left)/Kr(e.display))-h))}return s}function Tr(e,t){if(t>=e.display.viewTo||(t-=e.display.viewFrom,t<0))return null;for(var n=e.display.view,r=0;rt)&&(i.updateLineNumbers=t),e.curOp.viewChanged=!0,t>=i.viewTo)Vt&&Li(e.doc,t)i.viewFrom?hr(e):(i.viewFrom+=r,i.viewTo+=r);else if(t<=i.viewFrom&&n>=i.viewTo)hr(e);else if(t<=i.viewFrom){var o=Jn(e,n,n+r,1);o?(i.view=i.view.slice(o.index),i.viewFrom=o.lineN,i.viewTo+=r):hr(e)}else if(n>=i.viewTo){var l=Jn(e,t,t,-1);l?(i.view=i.view.slice(0,l.index),i.viewTo=l.lineN):hr(e)}else{var a=Jn(e,t,t,-1),s=Jn(e,n,n+r,1);a&&s?(i.view=i.view.slice(0,a.index).concat(Gn(e,a.lineN,s.lineN)).concat(i.view.slice(s.index)),i.viewTo+=r):hr(e)}var u=i.externalMeasured;u&&(n=i.lineN&&t=r.viewTo)){var o=r.view[Tr(e,t)];if(o.node!=null){var l=o.changes||(o.changes=[]);ve(l,n)==-1&&l.push(n)}}}function hr(e){e.display.viewFrom=e.display.viewTo=e.doc.first,e.display.view=[],e.display.viewOffset=0}function Jn(e,t,n,r){var i=Tr(e,t),o,l=e.display.view;if(!Vt||n==e.doc.first+e.doc.size)return{index:i,lineN:n};for(var a=e.display.viewFrom,s=0;s0){if(i==l.length-1)return null;o=a+l[i].size-t,i++}else o=a-t;t+=o,n+=o}for(;Li(e.doc,n)!=n;){if(i==(r<0?0:l.length-1))return null;n+=r*l[i-(r<0?1:0)].size,i+=r}return{index:i,lineN:n}}function zs(e,t,n){var r=e.display,i=r.view;i.length==0||t>=r.viewTo||n<=r.viewFrom?(r.view=Gn(e,t,n),r.viewFrom=t):(r.viewFrom>t?r.view=Gn(e,t,r.viewFrom).concat(r.view):r.viewFromn&&(r.view=r.view.slice(0,Tr(e,n)))),r.viewTo=n}function tl(e){for(var t=e.display.view,n=0,r=0;r=e.display.viewTo||s.to().line0?l:e.defaultCharWidth())+"px"}if(r.other){var a=n.appendChild(c("div"," ","CodeMirror-cursor CodeMirror-secondarycursor"));a.style.display="",a.style.left=r.other.left+"px",a.style.top=r.other.top+"px",a.style.height=(r.other.bottom-r.other.top)*.85+"px"}}function Zn(e,t){return e.top-t.top||e.left-t.left}function Bs(e,t,n){var r=e.display,i=e.doc,o=document.createDocumentFragment(),l=_o(e.display),a=l.left,s=Math.max(r.sizerWidth,wr(e)-r.sizer.offsetLeft)-l.right,u=i.direction=="ltr";function h(se,ge,Le,ke){ge<0&&(ge=0),ge=Math.round(ge),ke=Math.round(ke),o.appendChild(c("div",null,"CodeMirror-selected","position: absolute; left: "+se+`px; + top: `+ge+"px; width: "+(Le??s-se)+`px; + height: `+(ke-ge)+"px"))}function x(se,ge,Le){var ke=ye(i,se),Ee=ke.text.length,Ke,st;function Xe(tt,Ct){return Qn(e,B(se,tt),"div",ke,Ct)}function Nt(tt,Ct,ft){var nt=Vo(e,ke,null,tt),rt=Ct=="ltr"==(ft=="after")?"left":"right",Ze=ft=="after"?nt.begin:nt.end-(/\s/.test(ke.text.charAt(nt.end-1))?2:1);return Xe(Ze,rt)[rt]}var Tt=Re(ke,i.direction);return or(Tt,ge||0,Le??Ee,function(tt,Ct,ft,nt){var rt=ft=="ltr",Ze=Xe(tt,rt?"left":"right"),Dt=Xe(Ct-1,rt?"right":"left"),nn=ge==null&&tt==0,yr=Le==null&&Ct==Ee,vt=nt==0,Jt=!Tt||nt==Tt.length-1;if(Dt.top-Ze.top<=3){var ut=(u?nn:yr)&&vt,co=(u?yr:nn)&&Jt,ir=ut?a:(rt?Ze:Dt).left,Ar=co?s:(rt?Dt:Ze).right;h(ir,Ze.top,Ar-ir,Ze.bottom)}else{var Nr,bt,on,ho;rt?(Nr=u&&nn&&vt?a:Ze.left,bt=u?s:Nt(tt,ft,"before"),on=u?a:Nt(Ct,ft,"after"),ho=u&&yr&&Jt?s:Dt.right):(Nr=u?Nt(tt,ft,"before"):a,bt=!u&&nn&&vt?s:Ze.right,on=!u&&yr&&Jt?a:Dt.left,ho=u?Nt(Ct,ft,"after"):s),h(Nr,Ze.top,bt-Nr,Ze.bottom),Ze.bottom0?t.blinker=setInterval(function(){e.hasFocus()||Ur(e),t.cursorDiv.style.visibility=(n=!n)?"":"hidden"},e.options.cursorBlinkRate):e.options.cursorBlinkRate<0&&(t.cursorDiv.style.visibility="hidden")}}function nl(e){e.hasFocus()||(e.display.input.focus(),e.state.focused||_i(e))}function Hi(e){e.state.delayingBlurEvent=!0,setTimeout(function(){e.state.delayingBlurEvent&&(e.state.delayingBlurEvent=!1,e.state.focused&&Ur(e))},100)}function _i(e,t){e.state.delayingBlurEvent&&!e.state.draggingText&&(e.state.delayingBlurEvent=!1),e.options.readOnly!="nocursor"&&(e.state.focused||(Ye(e,"focus",e,t),e.state.focused=!0,j(e.display.wrapper,"CodeMirror-focused"),!e.curOp&&e.display.selForContextMenu!=e.doc.sel&&(e.display.input.reset(),Y&&setTimeout(function(){return e.display.input.reset(!0)},20)),e.display.input.receivedFocus()),Wi(e))}function Ur(e,t){e.state.delayingBlurEvent||(e.state.focused&&(Ye(e,"blur",e,t),e.state.focused=!1,V(e.display.wrapper,"CodeMirror-focused")),clearInterval(e.display.blinker),setTimeout(function(){e.state.focused||(e.display.shift=!1)},150))}function $n(e){for(var t=e.display,n=t.lineDiv.offsetTop,r=Math.max(0,t.scroller.getBoundingClientRect().top),i=t.lineDiv.getBoundingClientRect().top,o=0,l=0;l.005||L<-.005)&&(ie.display.sizerWidth){var Z=Math.ceil(h/Kr(e.display));Z>e.display.maxLineLength&&(e.display.maxLineLength=Z,e.display.maxLine=a.line,e.display.maxLineChanged=!0)}}}Math.abs(o)>2&&(t.scroller.scrollTop+=o)}function il(e){if(e.widgets)for(var t=0;t=l&&(o=m(t,er(ye(t,s))-e.wrapper.clientHeight),l=s)}return{from:o,to:Math.max(l,o+1)}}function Rs(e,t){if(!Qe(e,"scrollCursorIntoView")){var n=e.display,r=n.sizer.getBoundingClientRect(),i=null,o=n.wrapper.ownerDocument;if(t.top+r.top<0?i=!0:t.bottom+r.top>(o.defaultView.innerHeight||o.documentElement.clientHeight)&&(i=!1),i!=null&&!O){var l=c("div","​",null,`position: absolute; + top: `+(t.top-n.viewOffset-Xn(e.display))+`px; + height: `+(t.bottom-t.top+Yt(e)+n.barHeight)+`px; + left: `+t.left+"px; width: "+Math.max(2,t.right-t.left)+"px;");e.display.lineSpace.appendChild(l),l.scrollIntoView(i),e.display.lineSpace.removeChild(l)}}}function Ws(e,t,n,r){r==null&&(r=0);var i;!e.options.lineWrapping&&t==n&&(n=t.sticky=="before"?B(t.line,t.ch+1,"before"):t,t=t.ch?B(t.line,t.sticky=="before"?t.ch-1:t.ch,"after"):t);for(var o=0;o<5;o++){var l=!1,a=jt(e,t),s=!n||n==t?a:jt(e,n);i={left:Math.min(a.left,s.left),top:Math.min(a.top,s.top)-r,right:Math.max(a.left,s.left),bottom:Math.max(a.bottom,s.bottom)+r};var u=qi(e,i),h=e.doc.scrollTop,x=e.doc.scrollLeft;if(u.scrollTop!=null&&(xn(e,u.scrollTop),Math.abs(e.doc.scrollTop-h)>1&&(l=!0)),u.scrollLeft!=null&&(Cr(e,u.scrollLeft),Math.abs(e.doc.scrollLeft-x)>1&&(l=!0)),!l)break}return i}function Hs(e,t){var n=qi(e,t);n.scrollTop!=null&&xn(e,n.scrollTop),n.scrollLeft!=null&&Cr(e,n.scrollLeft)}function qi(e,t){var n=e.display,r=jr(e.display);t.top<0&&(t.top=0);var i=e.curOp&&e.curOp.scrollTop!=null?e.curOp.scrollTop:n.scroller.scrollTop,o=Fi(e),l={};t.bottom-t.top>o&&(t.bottom=t.top+o);var a=e.doc.height+Mi(n),s=t.topa-r;if(t.topi+o){var h=Math.min(t.top,(u?a:t.bottom)-o);h!=i&&(l.scrollTop=h)}var x=e.options.fixedGutter?0:n.gutters.offsetWidth,D=e.curOp&&e.curOp.scrollLeft!=null?e.curOp.scrollLeft:n.scroller.scrollLeft-x,L=wr(e)-n.gutters.offsetWidth,H=t.right-t.left>L;return H&&(t.right=t.left+L),t.left<10?l.scrollLeft=0:t.leftL+D-3&&(l.scrollLeft=t.right+(H?0:10)-L),l}function ji(e,t){t!=null&&(ei(e),e.curOp.scrollTop=(e.curOp.scrollTop==null?e.doc.scrollTop:e.curOp.scrollTop)+t)}function Gr(e){ei(e);var t=e.getCursor();e.curOp.scrollToPos={from:t,to:t,margin:e.options.cursorScrollMargin}}function mn(e,t,n){(t!=null||n!=null)&&ei(e),t!=null&&(e.curOp.scrollLeft=t),n!=null&&(e.curOp.scrollTop=n)}function _s(e,t){ei(e),e.curOp.scrollToPos=t}function ei(e){var t=e.curOp.scrollToPos;if(t){e.curOp.scrollToPos=null;var n=Zo(e,t.from),r=Zo(e,t.to);ol(e,n,r,t.margin)}}function ol(e,t,n,r){var i=qi(e,{left:Math.min(t.left,n.left),top:Math.min(t.top,n.top)-r,right:Math.max(t.right,n.right),bottom:Math.max(t.bottom,n.bottom)+r});mn(e,i.scrollLeft,i.scrollTop)}function xn(e,t){Math.abs(e.doc.scrollTop-t)<2||(_||Ui(e,{top:t}),ll(e,t,!0),_&&Ui(e),kn(e,100))}function ll(e,t,n){t=Math.max(0,Math.min(e.display.scroller.scrollHeight-e.display.scroller.clientHeight,t)),!(e.display.scroller.scrollTop==t&&!n)&&(e.doc.scrollTop=t,e.display.scrollbars.setScrollTop(t),e.display.scroller.scrollTop!=t&&(e.display.scroller.scrollTop=t))}function Cr(e,t,n,r){t=Math.max(0,Math.min(t,e.display.scroller.scrollWidth-e.display.scroller.clientWidth)),!((n?t==e.doc.scrollLeft:Math.abs(e.doc.scrollLeft-t)<2)&&!r)&&(e.doc.scrollLeft=t,cl(e),e.display.scroller.scrollLeft!=t&&(e.display.scroller.scrollLeft=t),e.display.scrollbars.setScrollLeft(t))}function yn(e){var t=e.display,n=t.gutters.offsetWidth,r=Math.round(e.doc.height+Mi(e.display));return{clientHeight:t.scroller.clientHeight,viewHeight:t.wrapper.clientHeight,scrollWidth:t.scroller.scrollWidth,clientWidth:t.scroller.clientWidth,viewWidth:t.wrapper.clientWidth,barLeft:e.options.fixedGutter?n:0,docHeight:r,scrollHeight:r+Yt(e)+t.barHeight,nativeBarWidth:t.nativeBarWidth,gutterWidth:n}}var Dr=function(e,t,n){this.cm=n;var r=this.vert=c("div",[c("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar"),i=this.horiz=c("div",[c("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");r.tabIndex=i.tabIndex=-1,e(r),e(i),Se(r,"scroll",function(){r.clientHeight&&t(r.scrollTop,"vertical")}),Se(i,"scroll",function(){i.clientWidth&&t(i.scrollLeft,"horizontal")}),this.checkedZeroWidth=!1,k&&I<8&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")};Dr.prototype.update=function(e){var t=e.scrollWidth>e.clientWidth+1,n=e.scrollHeight>e.clientHeight+1,r=e.nativeBarWidth;if(n){this.vert.style.display="block",this.vert.style.bottom=t?r+"px":"0";var i=e.viewHeight-(t?r:0);this.vert.firstChild.style.height=Math.max(0,e.scrollHeight-e.clientHeight+i)+"px"}else this.vert.scrollTop=0,this.vert.style.display="",this.vert.firstChild.style.height="0";if(t){this.horiz.style.display="block",this.horiz.style.right=n?r+"px":"0",this.horiz.style.left=e.barLeft+"px";var o=e.viewWidth-e.barLeft-(n?r:0);this.horiz.firstChild.style.width=Math.max(0,e.scrollWidth-e.clientWidth+o)+"px"}else this.horiz.style.display="",this.horiz.firstChild.style.width="0";return!this.checkedZeroWidth&&e.clientHeight>0&&(r==0&&this.zeroWidthHack(),this.checkedZeroWidth=!0),{right:n?r:0,bottom:t?r:0}},Dr.prototype.setScrollLeft=function(e){this.horiz.scrollLeft!=e&&(this.horiz.scrollLeft=e),this.disableHoriz&&this.enableZeroWidthBar(this.horiz,this.disableHoriz,"horiz")},Dr.prototype.setScrollTop=function(e){this.vert.scrollTop!=e&&(this.vert.scrollTop=e),this.disableVert&&this.enableZeroWidthBar(this.vert,this.disableVert,"vert")},Dr.prototype.zeroWidthHack=function(){var e=z&&!ue?"12px":"18px";this.horiz.style.height=this.vert.style.width=e,this.horiz.style.visibility=this.vert.style.visibility="hidden",this.disableHoriz=new Ce,this.disableVert=new Ce},Dr.prototype.enableZeroWidthBar=function(e,t,n){e.style.visibility="";function r(){var i=e.getBoundingClientRect(),o=n=="vert"?document.elementFromPoint(i.right-1,(i.top+i.bottom)/2):document.elementFromPoint((i.right+i.left)/2,i.bottom-1);o!=e?e.style.visibility="hidden":t.set(1e3,r)}t.set(1e3,r)},Dr.prototype.clear=function(){var e=this.horiz.parentNode;e.removeChild(this.horiz),e.removeChild(this.vert)};var bn=function(){};bn.prototype.update=function(){return{bottom:0,right:0}},bn.prototype.setScrollLeft=function(){},bn.prototype.setScrollTop=function(){},bn.prototype.clear=function(){};function Xr(e,t){t||(t=yn(e));var n=e.display.barWidth,r=e.display.barHeight;al(e,t);for(var i=0;i<4&&n!=e.display.barWidth||r!=e.display.barHeight;i++)n!=e.display.barWidth&&e.options.lineWrapping&&$n(e),al(e,yn(e)),n=e.display.barWidth,r=e.display.barHeight}function al(e,t){var n=e.display,r=n.scrollbars.update(t);n.sizer.style.paddingRight=(n.barWidth=r.right)+"px",n.sizer.style.paddingBottom=(n.barHeight=r.bottom)+"px",n.heightForcer.style.borderBottom=r.bottom+"px solid transparent",r.right&&r.bottom?(n.scrollbarFiller.style.display="block",n.scrollbarFiller.style.height=r.bottom+"px",n.scrollbarFiller.style.width=r.right+"px"):n.scrollbarFiller.style.display="",r.bottom&&e.options.coverGutterNextToScrollbar&&e.options.fixedGutter?(n.gutterFiller.style.display="block",n.gutterFiller.style.height=r.bottom+"px",n.gutterFiller.style.width=t.gutterWidth+"px"):n.gutterFiller.style.display=""}var sl={native:Dr,null:bn};function ul(e){e.display.scrollbars&&(e.display.scrollbars.clear(),e.display.scrollbars.addClass&&V(e.display.wrapper,e.display.scrollbars.addClass)),e.display.scrollbars=new sl[e.options.scrollbarStyle](function(t){e.display.wrapper.insertBefore(t,e.display.scrollbarFiller),Se(t,"mousedown",function(){e.state.focused&&setTimeout(function(){return e.display.input.focus()},0)}),t.setAttribute("cm-not-content","true")},function(t,n){n=="horizontal"?Cr(e,t):xn(e,t)},e),e.display.scrollbars.addClass&&j(e.display.wrapper,e.display.scrollbars.addClass)}var qs=0;function Mr(e){e.curOp={cm:e,viewChanged:!1,startHeight:e.doc.height,forceUpdate:!1,updateInput:0,typing:!1,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:!1,updateMaxLine:!1,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:!1,id:++qs,markArrays:null},ys(e.curOp)}function Fr(e){var t=e.curOp;t&&ks(t,function(n){for(var r=0;r=n.viewTo)||n.maxLineChanged&&t.options.lineWrapping,e.update=e.mustUpdate&&new ti(t,e.mustUpdate&&{top:e.scrollTop,ensure:e.scrollToPos},e.forceUpdate)}function Us(e){e.updatedDisplay=e.mustUpdate&&Ki(e.cm,e.update)}function Gs(e){var t=e.cm,n=t.display;e.updatedDisplay&&$n(t),e.barMeasure=yn(t),n.maxLineChanged&&!t.options.lineWrapping&&(e.adjustWidthTo=jo(t,n.maxLine,n.maxLine.text.length).left+3,t.display.sizerWidth=e.adjustWidthTo,e.barMeasure.scrollWidth=Math.max(n.scroller.clientWidth,n.sizer.offsetLeft+e.adjustWidthTo+Yt(t)+t.display.barWidth),e.maxScrollLeft=Math.max(0,n.sizer.offsetLeft+e.adjustWidthTo-wr(t))),(e.updatedDisplay||e.selectionChanged)&&(e.preparedSelection=n.input.prepareSelection())}function Xs(e){var t=e.cm;e.adjustWidthTo!=null&&(t.display.sizer.style.minWidth=e.adjustWidthTo+"px",e.maxScrollLeft=e.display.viewTo)){var n=+new Date+e.options.workTime,r=fn(e,t.highlightFrontier),i=[];t.iter(r.line,Math.min(t.first+t.size,e.display.viewTo+500),function(o){if(r.line>=e.display.viewFrom){var l=o.styles,a=o.text.length>e.options.maxHighlightLength?Gt(t.mode,r.state):null,s=mo(e,o,r,!0);a&&(r.state=a),o.styles=s.styles;var u=o.styleClasses,h=s.classes;h?o.styleClasses=h:u&&(o.styleClasses=null);for(var x=!l||l.length!=o.styles.length||u!=h&&(!u||!h||u.bgClass!=h.bgClass||u.textClass!=h.textClass),D=0;!x&&Dn)return kn(e,e.options.workDelay),!0}),t.highlightFrontier=r.line,t.modeFrontier=Math.max(t.modeFrontier,r.line),i.length&&At(e,function(){for(var o=0;o=n.viewFrom&&t.visible.to<=n.viewTo&&(n.updateLineNumbers==null||n.updateLineNumbers>=n.viewTo)&&n.renderedView==n.view&&tl(e)==0)return!1;dl(e)&&(hr(e),t.dims=Ii(e));var i=r.first+r.size,o=Math.max(t.visible.from-e.options.viewportMargin,r.first),l=Math.min(i,t.visible.to+e.options.viewportMargin);n.viewFroml&&n.viewTo-l<20&&(l=Math.min(i,n.viewTo)),Vt&&(o=Li(e.doc,o),l=No(e.doc,l));var a=o!=n.viewFrom||l!=n.viewTo||n.lastWrapHeight!=t.wrapperHeight||n.lastWrapWidth!=t.wrapperWidth;zs(e,o,l),n.viewOffset=er(ye(e.doc,n.viewFrom)),e.display.mover.style.top=n.viewOffset+"px";var s=tl(e);if(!a&&s==0&&!t.force&&n.renderedView==n.view&&(n.updateLineNumbers==null||n.updateLineNumbers>=n.viewTo))return!1;var u=Zs(e);return s>4&&(n.lineDiv.style.display="none"),Vs(e,n.updateLineNumbers,t.dims),s>4&&(n.lineDiv.style.display=""),n.renderedView=n.view,$s(u),F(n.cursorDiv),F(n.selectionDiv),n.gutters.style.height=n.sizer.style.minHeight=0,a&&(n.lastWrapHeight=t.wrapperHeight,n.lastWrapWidth=t.wrapperWidth,kn(e,400)),n.updateLineNumbers=null,!0}function fl(e,t){for(var n=t.viewport,r=!0;;r=!1){if(!r||!e.options.lineWrapping||t.oldDisplayWidth==wr(e)){if(n&&n.top!=null&&(n={top:Math.min(e.doc.height+Mi(e.display)-Fi(e),n.top)}),t.visible=Vn(e.display,e.doc,n),t.visible.from>=e.display.viewFrom&&t.visible.to<=e.display.viewTo)break}else r&&(t.visible=Vn(e.display,e.doc,n));if(!Ki(e,t))break;$n(e);var i=yn(e);vn(e),Xr(e,i),Xi(e,i),t.force=!1}t.signal(e,"update",e),(e.display.viewFrom!=e.display.reportedViewFrom||e.display.viewTo!=e.display.reportedViewTo)&&(t.signal(e,"viewportChange",e,e.display.viewFrom,e.display.viewTo),e.display.reportedViewFrom=e.display.viewFrom,e.display.reportedViewTo=e.display.viewTo)}function Ui(e,t){var n=new ti(e,t);if(Ki(e,n)){$n(e),fl(e,n);var r=yn(e);vn(e),Xr(e,r),Xi(e,r),n.finish()}}function Vs(e,t,n){var r=e.display,i=e.options.lineNumbers,o=r.lineDiv,l=o.firstChild;function a(H){var Z=H.nextSibling;return Y&&z&&e.display.currentWheelTarget==H?H.style.display="none":H.parentNode.removeChild(H),Z}for(var s=r.view,u=r.viewFrom,h=0;h-1&&(L=!1),zo(e,x,u,n)),L&&(F(x.lineNumber),x.lineNumber.appendChild(document.createTextNode(re(e.options,u)))),l=x.node.nextSibling}u+=x.size}for(;l;)l=a(l)}function Gi(e){var t=e.gutters.offsetWidth;e.sizer.style.marginLeft=t+"px",ot(e,"gutterChanged",e)}function Xi(e,t){e.display.sizer.style.minHeight=t.docHeight+"px",e.display.heightForcer.style.top=t.docHeight+"px",e.display.gutters.style.height=t.docHeight+e.display.barHeight+Yt(e)+"px"}function cl(e){var t=e.display,n=t.view;if(!(!t.alignWidgets&&(!t.gutters.firstChild||!e.options.fixedGutter))){for(var r=zi(t)-t.scroller.scrollLeft+e.doc.scrollLeft,i=t.gutters.offsetWidth,o=r+"px",l=0;l=105&&(i.wrapper.style.clipPath="inset(0px)"),i.wrapper.setAttribute("translate","no"),k&&I<8&&(i.gutters.style.zIndex=-1,i.scroller.style.paddingRight=0),!Y&&!(_&&N)&&(i.scroller.draggable=!0),e&&(e.appendChild?e.appendChild(i.wrapper):e(i.wrapper)),i.viewFrom=i.viewTo=t.first,i.reportedViewFrom=i.reportedViewTo=t.first,i.view=[],i.renderedView=null,i.externalMeasured=null,i.viewOffset=0,i.lastWrapHeight=i.lastWrapWidth=0,i.updateLineNumbers=null,i.nativeBarWidth=i.barHeight=i.barWidth=0,i.scrollbarsClipped=!1,i.lineNumWidth=i.lineNumInnerWidth=i.lineNumChars=null,i.alignWidgets=!1,i.cachedCharWidth=i.cachedTextHeight=i.cachedPaddingH=null,i.maxLine=null,i.maxLineLength=0,i.maxLineChanged=!1,i.wheelDX=i.wheelDY=i.wheelStartX=i.wheelStartY=null,i.shift=!1,i.selForContextMenu=null,i.activeTouch=null,i.gutterSpecs=Yi(r.gutters,r.lineNumbers),hl(i),n.init(i)}var ri=0,rr=null;k?rr=-.53:_?rr=15:S?rr=-.7:$&&(rr=-1/3);function pl(e){var t=e.wheelDeltaX,n=e.wheelDeltaY;return t==null&&e.detail&&e.axis==e.HORIZONTAL_AXIS&&(t=e.detail),n==null&&e.detail&&e.axis==e.VERTICAL_AXIS?n=e.detail:n==null&&(n=e.wheelDelta),{x:t,y:n}}function tu(e){var t=pl(e);return t.x*=rr,t.y*=rr,t}function gl(e,t){S&&R==102&&(e.display.chromeScrollHack==null?e.display.sizer.style.pointerEvents="none":clearTimeout(e.display.chromeScrollHack),e.display.chromeScrollHack=setTimeout(function(){e.display.chromeScrollHack=null,e.display.sizer.style.pointerEvents=""},100));var n=pl(t),r=n.x,i=n.y,o=rr;t.deltaMode===0&&(r=t.deltaX,i=t.deltaY,o=1);var l=e.display,a=l.scroller,s=a.scrollWidth>a.clientWidth,u=a.scrollHeight>a.clientHeight;if(r&&s||i&&u){if(i&&z&&Y){e:for(var h=t.target,x=l.view;h!=a;h=h.parentNode)for(var D=0;D=0&&ce(e,r.to())<=0)return n}return-1};var He=function(e,t){this.anchor=e,this.head=t};He.prototype.from=function(){return Wr(this.anchor,this.head)},He.prototype.to=function(){return wt(this.anchor,this.head)},He.prototype.empty=function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch};function Kt(e,t,n){var r=e&&e.options.selectionsMayTouch,i=t[n];t.sort(function(D,L){return ce(D.from(),L.from())}),n=ve(t,i);for(var o=1;o0:s>=0){var u=Wr(a.from(),l.from()),h=wt(a.to(),l.to()),x=a.empty()?l.from()==l.head:a.from()==a.head;o<=n&&--n,t.splice(--o,2,new He(x?h:u,x?u:h))}}return new Ot(t,n)}function pr(e,t){return new Ot([new He(e,t||e)],0)}function gr(e){return e.text?B(e.from.line+e.text.length-1,we(e.text).length+(e.text.length==1?e.from.ch:0)):e.to}function vl(e,t){if(ce(e,t.from)<0)return e;if(ce(e,t.to)<=0)return gr(t);var n=e.line+t.text.length-(t.to.line-t.from.line)-1,r=e.ch;return e.line==t.to.line&&(r+=gr(t).ch-t.to.ch),B(n,r)}function Qi(e,t){for(var n=[],r=0;r1&&e.remove(a.line+1,H-1),e.insert(a.line+1,ae)}ot(e,"change",e,t)}function vr(e,t,n){function r(i,o,l){if(i.linked)for(var a=0;a1&&!e.done[e.done.length-2].ranges)return e.done.pop(),we(e.done)}function wl(e,t,n,r){var i=e.history;i.undone.length=0;var o=+new Date,l,a;if((i.lastOp==r||i.lastOrigin==t.origin&&t.origin&&(t.origin.charAt(0)=="+"&&i.lastModTime>o-(e.cm?e.cm.options.historyEventDelay:500)||t.origin.charAt(0)=="*"))&&(l=iu(i,i.lastOp==r)))a=we(l.changes),ce(t.from,t.to)==0&&ce(t.from,a.to)==0?a.to=gr(t):l.changes.push($i(e,t));else{var s=we(i.done);for((!s||!s.ranges)&&ii(e.sel,i.done),l={changes:[$i(e,t)],generation:i.generation},i.done.push(l);i.done.length>i.undoDepth;)i.done.shift(),i.done[0].ranges||i.done.shift()}i.done.push(n),i.generation=++i.maxGeneration,i.lastModTime=i.lastSelTime=o,i.lastOp=i.lastSelOp=r,i.lastOrigin=i.lastSelOrigin=t.origin,a||Ye(e,"historyAdded")}function ou(e,t,n,r){var i=t.charAt(0);return i=="*"||i=="+"&&n.ranges.length==r.ranges.length&&n.somethingSelected()==r.somethingSelected()&&new Date-e.history.lastSelTime<=(e.cm?e.cm.options.historyEventDelay:500)}function lu(e,t,n,r){var i=e.history,o=r&&r.origin;n==i.lastSelOp||o&&i.lastSelOrigin==o&&(i.lastModTime==i.lastSelTime&&i.lastOrigin==o||ou(e,o,we(i.done),t))?i.done[i.done.length-1]=t:ii(t,i.done),i.lastSelTime=+new Date,i.lastSelOrigin=o,i.lastSelOp=n,r&&r.clearRedo!==!1&&kl(i.undone)}function ii(e,t){var n=we(t);n&&n.ranges&&n.equals(e)||t.push(e)}function Sl(e,t,n,r){var i=t["spans_"+e.id],o=0;e.iter(Math.max(e.first,n),Math.min(e.first+e.size,r),function(l){l.markedSpans&&((i||(i=t["spans_"+e.id]={}))[o]=l.markedSpans),++o})}function au(e){if(!e)return null;for(var t,n=0;n-1&&(we(a)[x]=u[x],delete u[x])}}return r}function Vi(e,t,n,r){if(r){var i=e.anchor;if(n){var o=ce(t,i)<0;o!=ce(n,i)<0?(i=t,t=n):o!=ce(t,n)<0&&(t=n)}return new He(i,t)}else return new He(n||t,t)}function oi(e,t,n,r,i){i==null&&(i=e.cm&&(e.cm.display.shift||e.extend)),gt(e,new Ot([Vi(e.sel.primary(),t,n,i)],0),r)}function Tl(e,t,n){for(var r=[],i=e.cm&&(e.cm.display.shift||e.extend),o=0;o=t.ch:a.to>t.ch))){if(i&&(Ye(s,"beforeCursorEnter"),s.explicitlyCleared))if(o.markedSpans){--l;continue}else break;if(!s.atomic)continue;if(n){var x=s.find(r<0?1:-1),D=void 0;if((r<0?h:u)&&(x=Nl(e,x,-r,x&&x.line==t.line?o:null)),x&&x.line==t.line&&(D=ce(x,n))&&(r<0?D<0:D>0))return Qr(e,x,t,r,i)}var L=s.find(r<0?-1:1);return(r<0?u:h)&&(L=Nl(e,L,r,L.line==t.line?o:null)),L?Qr(e,L,t,r,i):null}}return t}function ai(e,t,n,r,i){var o=r||1,l=Qr(e,t,n,o,i)||!i&&Qr(e,t,n,o,!0)||Qr(e,t,n,-o,i)||!i&&Qr(e,t,n,-o,!0);return l||(e.cantEdit=!0,B(e.first,0))}function Nl(e,t,n,r){return n<0&&t.ch==0?t.line>e.first?Ae(e,B(t.line-1)):null:n>0&&t.ch==(r||ye(e,t.line)).text.length?t.line=0;--i)Pl(e,{from:r[i].from,to:r[i].to,text:i?[""]:t.text,origin:t.origin});else Pl(e,t)}}function Pl(e,t){if(!(t.text.length==1&&t.text[0]==""&&ce(t.from,t.to)==0)){var n=Qi(e,t);wl(e,t,n,e.cm?e.cm.curOp.id:NaN),Ln(e,t,n,wi(e,t));var r=[];vr(e,function(i,o){!o&&ve(r,i.history)==-1&&(Rl(i.history,t),r.push(i.history)),Ln(i,t,null,wi(i,t))})}}function si(e,t,n){var r=e.cm&&e.cm.state.suppressEdits;if(!(r&&!n)){for(var i=e.history,o,l=e.sel,a=t=="undo"?i.done:i.undone,s=t=="undo"?i.undone:i.done,u=0;u=0;--L){var H=D(L);if(H)return H.v}}}}function Il(e,t){if(t!=0&&(e.first+=t,e.sel=new Ot(Ie(e.sel.ranges,function(i){return new He(B(i.anchor.line+t,i.anchor.ch),B(i.head.line+t,i.head.ch))}),e.sel.primIndex),e.cm)){St(e.cm,e.first,e.first-t,t);for(var n=e.cm.display,r=n.viewFrom;re.lastLine())){if(t.from.lineo&&(t={from:t.from,to:B(o,ye(e,o).text.length),text:[t.text[0]],origin:t.origin}),t.removed=$t(e,t.from,t.to),n||(n=Qi(e,t)),e.cm?fu(e.cm,t,r):Zi(e,t,r),li(e,n,$e),e.cantEdit&&ai(e,B(e.firstLine(),0))&&(e.cantEdit=!1)}}function fu(e,t,n){var r=e.doc,i=e.display,o=t.from,l=t.to,a=!1,s=o.line;e.options.lineWrapping||(s=f(qt(ye(r,o.line))),r.iter(s,l.line+1,function(L){if(L==i.maxLine)return a=!0,!0})),r.sel.contains(t.from,t.to)>-1&&It(e),Zi(r,t,n,el(e)),e.options.lineWrapping||(r.iter(s,o.line+t.text.length,function(L){var H=Un(L);H>i.maxLineLength&&(i.maxLine=L,i.maxLineLength=H,i.maxLineChanged=!0,a=!1)}),a&&(e.curOp.updateMaxLine=!0)),Va(r,o.line),kn(e,400);var u=t.text.length-(l.line-o.line)-1;t.full?St(e):o.line==l.line&&t.text.length==1&&!xl(e.doc,t)?dr(e,o.line,"text"):St(e,o.line,l.line+1,u);var h=Ft(e,"changes"),x=Ft(e,"change");if(x||h){var D={from:o,to:l,text:t.text,removed:t.removed,origin:t.origin};x&&ot(e,"change",e,D),h&&(e.curOp.changeObjs||(e.curOp.changeObjs=[])).push(D)}e.display.selForContextMenu=null}function Zr(e,t,n,r,i){var o;r||(r=n),ce(r,n)<0&&(o=[r,n],n=o[0],r=o[1]),typeof t=="string"&&(t=e.splitLines(t)),Jr(e,{from:n,to:r,text:t,origin:i})}function zl(e,t,n,r){n1||!(this.children[0]instanceof Cn))){var a=[];this.collapse(a),this.children=[new Cn(a)],this.children[0].parent=this}},collapse:function(e){for(var t=0;t50){for(var l=i.lines.length%25+25,a=l;a10);e.parent.maybeSpill()}},iterN:function(e,t,n){for(var r=0;re.display.maxLineLength&&(e.display.maxLine=u,e.display.maxLineLength=h,e.display.maxLineChanged=!0)}r!=null&&e&&this.collapsed&&St(e,r,i+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,e&&Fl(e.doc)),e&&ot(e,"markerCleared",e,this,r,i),t&&Fr(e),this.parent&&this.parent.clear()}},mr.prototype.find=function(e,t){e==null&&this.type=="bookmark"&&(e=1);for(var n,r,i=0;i0||l==0&&o.clearWhenEmpty!==!1)return o;if(o.replacedWith&&(o.collapsed=!0,o.widgetNode=T("span",[o.replacedWith],"CodeMirror-widget"),r.handleMouseEvents||o.widgetNode.setAttribute("cm-ignore-events","true"),r.insertLeft&&(o.widgetNode.insertLeft=!0)),o.collapsed){if(Ao(e,t.line,t,n,o)||t.line!=n.line&&Ao(e,n.line,t,n,o))throw new Error("Inserting collapsed marker partially overlapping an existing one");ts()}o.addToHistory&&wl(e,{from:t,to:n,origin:"markText"},e.sel,NaN);var a=t.line,s=e.cm,u;if(e.iter(a,n.line+1,function(x){s&&o.collapsed&&!s.options.lineWrapping&&qt(x)==s.display.maxLine&&(u=!0),o.collapsed&&a!=t.line&&Et(x,0),ns(x,new _n(o,a==t.line?t.ch:null,a==n.line?n.ch:null),e.cm&&e.cm.curOp),++a}),o.collapsed&&e.iter(t.line,n.line+1,function(x){cr(e,x)&&Et(x,0)}),o.clearOnEnter&&Se(o,"beforeCursorEnter",function(){return o.clear()}),o.readOnly&&(es(),(e.history.done.length||e.history.undone.length)&&e.clearHistory()),o.collapsed&&(o.id=++Hl,o.atomic=!0),s){if(u&&(s.curOp.updateMaxLine=!0),o.collapsed)St(s,t.line,n.line+1);else if(o.className||o.startStyle||o.endStyle||o.css||o.attributes||o.title)for(var h=t.line;h<=n.line;h++)dr(s,h,"text");o.atomic&&Fl(s.doc),ot(s,"markerAdded",s,o)}return o}var Fn=function(e,t){this.markers=e,this.primary=t;for(var n=0;n=0;s--)Jr(this,r[s]);a?Dl(this,a):this.cm&&Gr(this.cm)}),undo:at(function(){si(this,"undo")}),redo:at(function(){si(this,"redo")}),undoSelection:at(function(){si(this,"undo",!0)}),redoSelection:at(function(){si(this,"redo",!0)}),setExtending:function(e){this.extend=e},getExtending:function(){return this.extend},historySize:function(){for(var e=this.history,t=0,n=0,r=0;r=e.ch)&&t.push(i.marker.parent||i.marker)}return t},findMarks:function(e,t,n){e=Ae(this,e),t=Ae(this,t);var r=[],i=e.line;return this.iter(e.line,t.line+1,function(o){var l=o.markedSpans;if(l)for(var a=0;a=s.to||s.from==null&&i!=e.line||s.from!=null&&i==t.line&&s.from>=t.ch)&&(!n||n(s.marker))&&r.push(s.marker.parent||s.marker)}++i}),r},getAllMarks:function(){var e=[];return this.iter(function(t){var n=t.markedSpans;if(n)for(var r=0;re)return t=e,!0;e-=o,++n}),Ae(this,B(n,t))},indexFromPos:function(e){e=Ae(this,e);var t=e.ch;if(e.linet&&(t=e.from),e.to!=null&&e.to-1){t.state.draggingText(e),setTimeout(function(){return t.display.input.focus()},20);return}try{var h=e.dataTransfer.getData("Text");if(h){var x;if(t.state.draggingText&&!t.state.draggingText.copy&&(x=t.listSelections()),li(t.doc,pr(n,n)),x)for(var D=0;D=0;a--)Zr(e.doc,"",r[a].from,r[a].to,"+delete");Gr(e)})}function to(e,t,n){var r=Mt(e.text,t+n,n);return r<0||r>e.text.length?null:r}function ro(e,t,n){var r=to(e,t.ch,n);return r==null?null:new B(t.line,r,n<0?"after":"before")}function no(e,t,n,r,i){if(e){t.doc.direction=="rtl"&&(i=-i);var o=Re(n,t.doc.direction);if(o){var l=i<0?we(o):o[0],a=i<0==(l.level==1),s=a?"after":"before",u;if(l.level>0||t.doc.direction=="rtl"){var h=qr(t,n);u=i<0?n.text.length-1:0;var x=Qt(t,h,u).top;u=Pt(function(D){return Qt(t,h,D).top==x},i<0==(l.level==1)?l.from:l.to-1,u),s=="before"&&(u=to(n,u,1))}else u=i<0?l.to:l.from;return new B(r,u,s)}}return new B(r,i<0?n.text.length:0,i<0?"before":"after")}function Lu(e,t,n,r){var i=Re(t,e.doc.direction);if(!i)return ro(t,n,r);n.ch>=t.text.length?(n.ch=t.text.length,n.sticky="before"):n.ch<=0&&(n.ch=0,n.sticky="after");var o=lr(i,n.ch,n.sticky),l=i[o];if(e.doc.direction=="ltr"&&l.level%2==0&&(r>0?l.to>n.ch:l.from=l.from&&D>=h.begin)){var L=x?"before":"after";return new B(n.line,D,L)}}var H=function(ae,he,se){for(var ge=function(Ke,st){return st?new B(n.line,a(Ke,1),"before"):new B(n.line,Ke,"after")};ae>=0&&ae0==(Le.level!=1),Ee=ke?se.begin:a(se.end,-1);if(Le.from<=Ee&&Ee0?h.end:a(h.begin,-1);return ie!=null&&!(r>0&&ie==t.text.length)&&(Z=H(r>0?0:i.length-1,r,u(ie)),Z)?Z:null}var En={selectAll:El,singleSelection:function(e){return e.setSelection(e.getCursor("anchor"),e.getCursor("head"),$e)},killLine:function(e){return en(e,function(t){if(t.empty()){var n=ye(e.doc,t.head.line).text.length;return t.head.ch==n&&t.head.line0)i=new B(i.line,i.ch+1),e.replaceRange(o.charAt(i.ch-1)+o.charAt(i.ch-2),B(i.line,i.ch-2),i,"+transpose");else if(i.line>e.doc.first){var l=ye(e.doc,i.line-1).text;l&&(i=new B(i.line,1),e.replaceRange(o.charAt(0)+e.doc.lineSeparator()+l.charAt(l.length-1),B(i.line-1,l.length-1),i,"+transpose"))}}n.push(new He(i,i))}e.setSelections(n)})},newlineAndIndent:function(e){return At(e,function(){for(var t=e.listSelections(),n=t.length-1;n>=0;n--)e.replaceRange(e.doc.lineSeparator(),t[n].anchor,t[n].head,"+input");t=e.listSelections();for(var r=0;re&&ce(t,this.pos)==0&&n==this.button};var Pn,In;function Nu(e,t){var n=+new Date;return In&&In.compare(n,e,t)?(Pn=In=null,"triple"):Pn&&Pn.compare(n,e,t)?(In=new oo(n,e,t),Pn=null,"double"):(Pn=new oo(n,e,t),In=null,"single")}function ra(e){var t=this,n=t.display;if(!(Qe(t,e)||n.activeTouch&&n.input.supportsTouch())){if(n.input.ensurePolled(),n.shift=e.shiftKey,tr(n,e)){Y||(n.scroller.draggable=!1,setTimeout(function(){return n.scroller.draggable=!0},100));return}if(!lo(t,e)){var r=Lr(t,e),i=Rt(e),o=r?Nu(r,i):"single";le(t).focus(),i==1&&t.state.selectingText&&t.state.selectingText(e),!(r&&Eu(t,i,r,o,e))&&(i==1?r?Pu(t,r,o,e):ln(e)==n.scroller&&pt(e):i==2?(r&&oi(t.doc,r),setTimeout(function(){return n.input.focus()},20)):i==3&&(J?t.display.input.onContextMenu(e):Hi(t)))}}}function Eu(e,t,n,r,i){var o="Click";return r=="double"?o="Double"+o:r=="triple"&&(o="Triple"+o),o=(t==1?"Left":t==2?"Middle":"Right")+o,On(e,Xl(o,i),i,function(l){if(typeof l=="string"&&(l=En[l]),!l)return!1;var a=!1;try{e.isReadOnly()&&(e.state.suppressEdits=!0),a=l(e,n)!=qe}finally{e.state.suppressEdits=!1}return a})}function Ou(e,t,n){var r=e.getOption("configureMouse"),i=r?r(e,t,n):{};if(i.unit==null){var o=X?n.shiftKey&&n.metaKey:n.altKey;i.unit=o?"rectangle":t=="single"?"char":t=="double"?"word":"line"}return(i.extend==null||e.doc.extend)&&(i.extend=e.doc.extend||n.shiftKey),i.addNew==null&&(i.addNew=z?n.metaKey:n.ctrlKey),i.moveOnDrag==null&&(i.moveOnDrag=!(z?n.altKey:n.ctrlKey)),i}function Pu(e,t,n,r){k?setTimeout(xe(nl,e),0):e.curOp.focus=y(fe(e));var i=Ou(e,n,r),o=e.doc.sel,l;e.options.dragDrop&&xi&&!e.isReadOnly()&&n=="single"&&(l=o.contains(t))>-1&&(ce((l=o.ranges[l]).from(),t)<0||t.xRel>0)&&(ce(l.to(),t)>0||t.xRel<0)?Iu(e,r,t,i):zu(e,r,t,i)}function Iu(e,t,n,r){var i=e.display,o=!1,l=lt(e,function(u){Y&&(i.scroller.draggable=!1),e.state.draggingText=!1,e.state.delayingBlurEvent&&(e.hasFocus()?e.state.delayingBlurEvent=!1:Hi(e)),ht(i.wrapper.ownerDocument,"mouseup",l),ht(i.wrapper.ownerDocument,"mousemove",a),ht(i.scroller,"dragstart",s),ht(i.scroller,"drop",l),o||(pt(u),r.addNew||oi(e.doc,n,null,null,r.extend),Y&&!$||k&&I==9?setTimeout(function(){i.wrapper.ownerDocument.body.focus({preventScroll:!0}),i.input.focus()},20):i.input.focus())}),a=function(u){o=o||Math.abs(t.clientX-u.clientX)+Math.abs(t.clientY-u.clientY)>=10},s=function(){return o=!0};Y&&(i.scroller.draggable=!0),e.state.draggingText=l,l.copy=!r.moveOnDrag,Se(i.wrapper.ownerDocument,"mouseup",l),Se(i.wrapper.ownerDocument,"mousemove",a),Se(i.scroller,"dragstart",s),Se(i.scroller,"drop",l),e.state.delayingBlurEvent=!0,setTimeout(function(){return i.input.focus()},20),i.scroller.dragDrop&&i.scroller.dragDrop()}function na(e,t,n){if(n=="char")return new He(t,t);if(n=="word")return e.findWordAt(t);if(n=="line")return new He(B(t.line,0),Ae(e.doc,B(t.line+1,0)));var r=n(e,t);return new He(r.from,r.to)}function zu(e,t,n,r){k&&Hi(e);var i=e.display,o=e.doc;pt(t);var l,a,s=o.sel,u=s.ranges;if(r.addNew&&!r.extend?(a=o.sel.contains(n),a>-1?l=u[a]:l=new He(n,n)):(l=o.sel.primary(),a=o.sel.primIndex),r.unit=="rectangle")r.addNew||(l=new He(n,n)),n=Lr(e,t,!0,!0),a=-1;else{var h=na(e,n,r.unit);r.extend?l=Vi(l,h.anchor,h.head,r.extend):l=h}r.addNew?a==-1?(a=u.length,gt(o,Kt(e,u.concat([l]),a),{scroll:!1,origin:"*mouse"})):u.length>1&&u[a].empty()&&r.unit=="char"&&!r.extend?(gt(o,Kt(e,u.slice(0,a).concat(u.slice(a+1)),0),{scroll:!1,origin:"*mouse"}),s=o.sel):eo(o,a,l,dt):(a=0,gt(o,new Ot([l],0),dt),s=o.sel);var x=n;function D(se){if(ce(x,se)!=0)if(x=se,r.unit=="rectangle"){for(var ge=[],Le=e.options.tabSize,ke=Fe(ye(o,n.line).text,n.ch,Le),Ee=Fe(ye(o,se.line).text,se.ch,Le),Ke=Math.min(ke,Ee),st=Math.max(ke,Ee),Xe=Math.min(n.line,se.line),Nt=Math.min(e.lastLine(),Math.max(n.line,se.line));Xe<=Nt;Xe++){var Tt=ye(o,Xe).text,tt=_e(Tt,Ke,Le);Ke==st?ge.push(new He(B(Xe,tt),B(Xe,tt))):Tt.length>tt&&ge.push(new He(B(Xe,tt),B(Xe,_e(Tt,st,Le))))}ge.length||ge.push(new He(n,n)),gt(o,Kt(e,s.ranges.slice(0,a).concat(ge),a),{origin:"*mouse",scroll:!1}),e.scrollIntoView(se)}else{var Ct=l,ft=na(e,se,r.unit),nt=Ct.anchor,rt;ce(ft.anchor,nt)>0?(rt=ft.head,nt=Wr(Ct.from(),ft.anchor)):(rt=ft.anchor,nt=wt(Ct.to(),ft.head));var Ze=s.ranges.slice(0);Ze[a]=Bu(e,new He(Ae(o,nt),rt)),gt(o,Kt(e,Ze,a),dt)}}var L=i.wrapper.getBoundingClientRect(),H=0;function Z(se){var ge=++H,Le=Lr(e,se,!0,r.unit=="rectangle");if(Le)if(ce(Le,x)!=0){e.curOp.focus=y(fe(e)),D(Le);var ke=Vn(i,o);(Le.line>=ke.to||Le.lineL.bottom?20:0;Ee&&setTimeout(lt(e,function(){H==ge&&(i.scroller.scrollTop+=Ee,Z(se))}),50)}}function ie(se){e.state.selectingText=!1,H=1/0,se&&(pt(se),i.input.focus()),ht(i.wrapper.ownerDocument,"mousemove",ae),ht(i.wrapper.ownerDocument,"mouseup",he),o.history.lastSelOrigin=null}var ae=lt(e,function(se){se.buttons===0||!Rt(se)?ie(se):Z(se)}),he=lt(e,ie);e.state.selectingText=he,Se(i.wrapper.ownerDocument,"mousemove",ae),Se(i.wrapper.ownerDocument,"mouseup",he)}function Bu(e,t){var n=t.anchor,r=t.head,i=ye(e.doc,n.line);if(ce(n,r)==0&&n.sticky==r.sticky)return t;var o=Re(i);if(!o)return t;var l=lr(o,n.ch,n.sticky),a=o[l];if(a.from!=n.ch&&a.to!=n.ch)return t;var s=l+(a.from==n.ch==(a.level!=1)?0:1);if(s==0||s==o.length)return t;var u;if(r.line!=n.line)u=(r.line-n.line)*(e.doc.direction=="ltr"?1:-1)>0;else{var h=lr(o,r.ch,r.sticky),x=h-l||(r.ch-n.ch)*(a.level==1?-1:1);h==s-1||h==s?u=x<0:u=x>0}var D=o[s+(u?-1:0)],L=u==(D.level==1),H=L?D.from:D.to,Z=L?"after":"before";return n.ch==H&&n.sticky==Z?t:new He(new B(n.line,H,Z),r)}function ia(e,t,n,r){var i,o;if(t.touches)i=t.touches[0].clientX,o=t.touches[0].clientY;else try{i=t.clientX,o=t.clientY}catch{return!1}if(i>=Math.floor(e.display.gutters.getBoundingClientRect().right))return!1;r&&pt(t);var l=e.display,a=l.lineDiv.getBoundingClientRect();if(o>a.bottom||!Ft(e,n))return kt(t);o-=a.top-l.viewOffset;for(var s=0;s=i){var h=m(e.doc,o),x=e.display.gutterSpecs[s];return Ye(e,n,e,h,x.className,t),kt(t)}}}function lo(e,t){return ia(e,t,"gutterClick",!0)}function oa(e,t){tr(e.display,t)||Ru(e,t)||Qe(e,t,"contextmenu")||J||e.display.input.onContextMenu(t)}function Ru(e,t){return Ft(e,"gutterContextMenu")?ia(e,t,"gutterContextMenu",!1):!1}function la(e){e.display.wrapper.className=e.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+e.options.theme.replace(/(^|\s)\s*/g," cm-s-"),gn(e)}var tn={toString:function(){return"CodeMirror.Init"}},aa={},di={};function Wu(e){var t=e.optionHandlers;function n(r,i,o,l){e.defaults[r]=i,o&&(t[r]=l?function(a,s,u){u!=tn&&o(a,s,u)}:o)}e.defineOption=n,e.Init=tn,n("value","",function(r,i){return r.setValue(i)},!0),n("mode",null,function(r,i){r.doc.modeOption=i,Ji(r)},!0),n("indentUnit",2,Ji,!0),n("indentWithTabs",!1),n("smartIndent",!0),n("tabSize",4,function(r){Sn(r),gn(r),St(r)},!0),n("lineSeparator",null,function(r,i){if(r.doc.lineSep=i,!!i){var o=[],l=r.doc.first;r.doc.iter(function(s){for(var u=0;;){var h=s.text.indexOf(i,u);if(h==-1)break;u=h+i.length,o.push(B(l,h))}l++});for(var a=o.length-1;a>=0;a--)Zr(r.doc,i,o[a],B(o[a].line,o[a].ch+i.length))}}),n("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b\u200e\u200f\u2028\u2029\u202d\u202e\u2066\u2067\u2069\ufeff\ufff9-\ufffc]/g,function(r,i,o){r.state.specialChars=new RegExp(i.source+(i.test(" ")?"":"| "),"g"),o!=tn&&r.refresh()}),n("specialCharPlaceholder",ps,function(r){return r.refresh()},!0),n("electricChars",!0),n("inputStyle",N?"contenteditable":"textarea",function(){throw new Error("inputStyle can not (yet) be changed in a running editor")},!0),n("spellcheck",!1,function(r,i){return r.getInputField().spellcheck=i},!0),n("autocorrect",!1,function(r,i){return r.getInputField().autocorrect=i},!0),n("autocapitalize",!1,function(r,i){return r.getInputField().autocapitalize=i},!0),n("rtlMoveVisually",!q),n("wholeLineUpdateBefore",!0),n("theme","default",function(r){la(r),wn(r)},!0),n("keyMap","default",function(r,i,o){var l=fi(i),a=o!=tn&&fi(o);a&&a.detach&&a.detach(r,l),l.attach&&l.attach(r,a||null)}),n("extraKeys",null),n("configureMouse",null),n("lineWrapping",!1,_u,!0),n("gutters",[],function(r,i){r.display.gutterSpecs=Yi(i,r.options.lineNumbers),wn(r)},!0),n("fixedGutter",!0,function(r,i){r.display.gutters.style.left=i?zi(r.display)+"px":"0",r.refresh()},!0),n("coverGutterNextToScrollbar",!1,function(r){return Xr(r)},!0),n("scrollbarStyle","native",function(r){ul(r),Xr(r),r.display.scrollbars.setScrollTop(r.doc.scrollTop),r.display.scrollbars.setScrollLeft(r.doc.scrollLeft)},!0),n("lineNumbers",!1,function(r,i){r.display.gutterSpecs=Yi(r.options.gutters,i),wn(r)},!0),n("firstLineNumber",1,wn,!0),n("lineNumberFormatter",function(r){return r},wn,!0),n("showCursorWhenSelecting",!1,vn,!0),n("resetSelectionOnContextMenu",!0),n("lineWiseCopyCut",!0),n("pasteLinesPerSelection",!0),n("selectionsMayTouch",!1),n("readOnly",!1,function(r,i){i=="nocursor"&&(Ur(r),r.display.input.blur()),r.display.input.readOnlyChanged(i)}),n("screenReaderLabel",null,function(r,i){i=i===""?null:i,r.display.input.screenReaderLabelChanged(i)}),n("disableInput",!1,function(r,i){i||r.display.input.reset()},!0),n("dragDrop",!0,Hu),n("allowDropFileTypes",null),n("cursorBlinkRate",530),n("cursorScrollMargin",0),n("cursorHeight",1,vn,!0),n("singleCursorHeightPerLine",!0,vn,!0),n("workTime",100),n("workDelay",100),n("flattenSpans",!0,Sn,!0),n("addModeClass",!1,Sn,!0),n("pollInterval",100),n("undoDepth",200,function(r,i){return r.doc.history.undoDepth=i}),n("historyEventDelay",1250),n("viewportMargin",10,function(r){return r.refresh()},!0),n("maxHighlightLength",1e4,Sn,!0),n("moveInputWithCursor",!0,function(r,i){i||r.display.input.resetPosition()}),n("tabindex",null,function(r,i){return r.display.input.getField().tabIndex=i||""}),n("autofocus",null),n("direction","ltr",function(r,i){return r.doc.setDirection(i)},!0),n("phrases",null)}function Hu(e,t,n){var r=n&&n!=tn;if(!t!=!r){var i=e.display.dragFunctions,o=t?Se:ht;o(e.display.scroller,"dragstart",i.start),o(e.display.scroller,"dragenter",i.enter),o(e.display.scroller,"dragover",i.over),o(e.display.scroller,"dragleave",i.leave),o(e.display.scroller,"drop",i.drop)}}function _u(e){e.options.lineWrapping?(j(e.display.wrapper,"CodeMirror-wrap"),e.display.sizer.style.minWidth="",e.display.sizerWidth=null):(V(e.display.wrapper,"CodeMirror-wrap"),Ci(e)),Bi(e),St(e),gn(e),setTimeout(function(){return Xr(e)},100)}function Ge(e,t){var n=this;if(!(this instanceof Ge))return new Ge(e,t);this.options=t=t?Me(t):{},Me(aa,t,!1);var r=t.value;typeof r=="string"?r=new Lt(r,t.mode,null,t.lineSeparator,t.direction):t.mode&&(r.modeOption=t.mode),this.doc=r;var i=new Ge.inputStyles[t.inputStyle](this),o=this.display=new eu(e,r,i,t);o.wrapper.CodeMirror=this,la(this),t.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap"),ul(this),this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,delayingBlurEvent:!1,focused:!1,suppressEdits:!1,pasteIncoming:-1,cutIncoming:-1,selectingText:!1,draggingText:!1,highlight:new Ce,keySeq:null,specialChars:null},t.autofocus&&!N&&o.input.focus(),k&&I<11&&setTimeout(function(){return n.display.input.reset(!0)},20),qu(this),yu(),Mr(this),this.curOp.forceUpdate=!0,yl(this,r),t.autofocus&&!N||this.hasFocus()?setTimeout(function(){n.hasFocus()&&!n.state.focused&&_i(n)},20):Ur(this);for(var l in di)di.hasOwnProperty(l)&&di[l](this,t[l],tn);dl(this),t.finishInit&&t.finishInit(this);for(var a=0;a400}Se(t.scroller,"touchstart",function(s){if(!Qe(e,s)&&!o(s)&&!lo(e,s)){t.input.ensurePolled(),clearTimeout(n);var u=+new Date;t.activeTouch={start:u,moved:!1,prev:u-r.end<=300?r:null},s.touches.length==1&&(t.activeTouch.left=s.touches[0].pageX,t.activeTouch.top=s.touches[0].pageY)}}),Se(t.scroller,"touchmove",function(){t.activeTouch&&(t.activeTouch.moved=!0)}),Se(t.scroller,"touchend",function(s){var u=t.activeTouch;if(u&&!tr(t,s)&&u.left!=null&&!u.moved&&new Date-u.start<300){var h=e.coordsChar(t.activeTouch,"page"),x;!u.prev||l(u,u.prev)?x=new He(h,h):!u.prev.prev||l(u,u.prev.prev)?x=e.findWordAt(h):x=new He(B(h.line,0),Ae(e.doc,B(h.line+1,0))),e.setSelection(x.anchor,x.head),e.focus(),pt(s)}i()}),Se(t.scroller,"touchcancel",i),Se(t.scroller,"scroll",function(){t.scroller.clientHeight&&(xn(e,t.scroller.scrollTop),Cr(e,t.scroller.scrollLeft,!0),Ye(e,"scroll",e))}),Se(t.scroller,"mousewheel",function(s){return gl(e,s)}),Se(t.scroller,"DOMMouseScroll",function(s){return gl(e,s)}),Se(t.wrapper,"scroll",function(){return t.wrapper.scrollTop=t.wrapper.scrollLeft=0}),t.dragFunctions={enter:function(s){Qe(e,s)||ar(s)},over:function(s){Qe(e,s)||(xu(e,s),ar(s))},start:function(s){return mu(e,s)},drop:lt(e,vu),leave:function(s){Qe(e,s)||jl(e)}};var a=t.input.getField();Se(a,"keyup",function(s){return ea.call(e,s)}),Se(a,"keydown",lt(e,Vl)),Se(a,"keypress",lt(e,ta)),Se(a,"focus",function(s){return _i(e,s)}),Se(a,"blur",function(s){return Ur(e,s)})}var ao=[];Ge.defineInitHook=function(e){return ao.push(e)};function zn(e,t,n,r){var i=e.doc,o;n==null&&(n="add"),n=="smart"&&(i.mode.indent?o=fn(e,t).state:n="prev");var l=e.options.tabSize,a=ye(i,t),s=Fe(a.text,null,l);a.stateAfter&&(a.stateAfter=null);var u=a.text.match(/^\s*/)[0],h;if(!r&&!/\S/.test(a.text))h=0,n="not";else if(n=="smart"&&(h=i.mode.indent(o,a.text.slice(u.length),a.text),h==qe||h>150)){if(!r)return;n="prev"}n=="prev"?t>i.first?h=Fe(ye(i,t-1).text,null,l):h=0:n=="add"?h=s+e.options.indentUnit:n=="subtract"?h=s-e.options.indentUnit:typeof n=="number"&&(h=s+n),h=Math.max(0,h);var x="",D=0;if(e.options.indentWithTabs)for(var L=Math.floor(h/l);L;--L)D+=l,x+=" ";if(Dl,s=zt(t),u=null;if(a&&r.ranges.length>1)if(Ut&&Ut.text.join(` +`)==t){if(r.ranges.length%Ut.text.length==0){u=[];for(var h=0;h=0;D--){var L=r.ranges[D],H=L.from(),Z=L.to();L.empty()&&(n&&n>0?H=B(H.line,H.ch-n):e.state.overwrite&&!a?Z=B(Z.line,Math.min(ye(o,Z.line).text.length,Z.ch+we(s).length)):a&&Ut&&Ut.lineWise&&Ut.text.join(` +`)==s.join(` +`)&&(H=Z=B(H.line,0)));var ie={from:H,to:Z,text:u?u[D%u.length]:s,origin:i||(a?"paste":e.state.cutIncoming>l?"cut":"+input")};Jr(e.doc,ie),ot(e,"inputRead",e,ie)}t&&!a&&ua(e,t),Gr(e),e.curOp.updateInput<2&&(e.curOp.updateInput=x),e.curOp.typing=!0,e.state.pasteIncoming=e.state.cutIncoming=-1}function sa(e,t){var n=e.clipboardData&&e.clipboardData.getData("Text");if(n)return e.preventDefault(),!t.isReadOnly()&&!t.options.disableInput&&t.hasFocus()&&At(t,function(){return so(t,n,0,null,"paste")}),!0}function ua(e,t){if(!(!e.options.electricChars||!e.options.smartIndent))for(var n=e.doc.sel,r=n.ranges.length-1;r>=0;r--){var i=n.ranges[r];if(!(i.head.ch>100||r&&n.ranges[r-1].head.line==i.head.line)){var o=e.getModeAt(i.head),l=!1;if(o.electricChars){for(var a=0;a-1){l=zn(e,i.head.line,"smart");break}}else o.electricInput&&o.electricInput.test(ye(e.doc,i.head.line).text.slice(0,i.head.ch))&&(l=zn(e,i.head.line,"smart"));l&&ot(e,"electricInput",e,i.head.line)}}}function fa(e){for(var t=[],n=[],r=0;ro&&(zn(this,a.head.line,r,!0),o=a.head.line,l==this.doc.sel.primIndex&&Gr(this));else{var s=a.from(),u=a.to(),h=Math.max(o,s.line);o=Math.min(this.lastLine(),u.line-(u.ch?0:1))+1;for(var x=h;x0&&eo(this.doc,l,new He(s,D[l].to()),$e)}}}),getTokenAt:function(r,i){return ko(this,r,i)},getLineTokens:function(r,i){return ko(this,B(r),i,!0)},getTokenTypeAt:function(r){r=Ae(this.doc,r);var i=xo(this,ye(this.doc,r.line)),o=0,l=(i.length-1)/2,a=r.ch,s;if(a==0)s=i[2];else for(;;){var u=o+l>>1;if((u?i[u*2-1]:0)>=a)l=u;else if(i[u*2+1]s&&(r=s,l=!0),a=ye(this.doc,r)}else a=r;return Yn(this,a,{top:0,left:0},i||"page",o||l).top+(l?this.doc.height-er(a):0)},defaultTextHeight:function(){return jr(this.display)},defaultCharWidth:function(){return Kr(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(r,i,o,l,a){var s=this.display;r=jt(this,Ae(this.doc,r));var u=r.bottom,h=r.left;if(i.style.position="absolute",i.setAttribute("cm-ignore-events","true"),this.display.input.setUneditable(i),s.sizer.appendChild(i),l=="over")u=r.top;else if(l=="above"||l=="near"){var x=Math.max(s.wrapper.clientHeight,this.doc.height),D=Math.max(s.sizer.clientWidth,s.lineSpace.clientWidth);(l=="above"||r.bottom+i.offsetHeight>x)&&r.top>i.offsetHeight?u=r.top-i.offsetHeight:r.bottom+i.offsetHeight<=x&&(u=r.bottom),h+i.offsetWidth>D&&(h=D-i.offsetWidth)}i.style.top=u+"px",i.style.left=i.style.right="",a=="right"?(h=s.sizer.clientWidth-i.offsetWidth,i.style.right="0px"):(a=="left"?h=0:a=="middle"&&(h=(s.sizer.clientWidth-i.offsetWidth)/2),i.style.left=h+"px"),o&&Hs(this,{left:h,top:u,right:h+i.offsetWidth,bottom:u+i.offsetHeight})},triggerOnKeyDown:yt(Vl),triggerOnKeyPress:yt(ta),triggerOnKeyUp:ea,triggerOnMouseDown:yt(ra),execCommand:function(r){if(En.hasOwnProperty(r))return En[r].call(null,this)},triggerElectric:yt(function(r){ua(this,r)}),findPosH:function(r,i,o,l){var a=1;i<0&&(a=-1,i=-i);for(var s=Ae(this.doc,r),u=0;u0&&h(o.charAt(l-1));)--l;for(;a.5||this.options.lineWrapping)&&Bi(this),Ye(this,"refresh",this)}),swapDoc:yt(function(r){var i=this.doc;return i.cm=null,this.state.selectingText&&this.state.selectingText(),yl(this,r),gn(this),this.display.input.reset(),mn(this,r.scrollLeft,r.scrollTop),this.curOp.forceScroll=!0,ot(this,"swapDoc",this,i),i}),phrase:function(r){var i=this.options.phrases;return i&&Object.prototype.hasOwnProperty.call(i,r)?i[r]:r},getInputField:function(){return this.display.input.getField()},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}},Bt(e),e.registerHelper=function(r,i,o){n.hasOwnProperty(r)||(n[r]=e[r]={_global:[]}),n[r][i]=o},e.registerGlobalHelper=function(r,i,o,l){e.registerHelper(r,i,l),n[r]._global.push({pred:o,val:l})}}function fo(e,t,n,r,i){var o=t,l=n,a=ye(e,t.line),s=i&&e.direction=="rtl"?-n:n;function u(){var he=t.line+s;return he=e.first+e.size?!1:(t=new B(he,t.ch,t.sticky),a=ye(e,he))}function h(he){var se;if(r=="codepoint"){var ge=a.text.charCodeAt(t.ch+(n>0?0:-1));if(isNaN(ge))se=null;else{var Le=n>0?ge>=55296&&ge<56320:ge>=56320&&ge<57343;se=new B(t.line,Math.max(0,Math.min(a.text.length,t.ch+n*(Le?2:1))),-n)}}else i?se=Lu(e.cm,a,t,n):se=ro(a,t,n);if(se==null)if(!he&&u())t=no(i,e.cm,a,t.line,s);else return!1;else t=se;return!0}if(r=="char"||r=="codepoint")h();else if(r=="column")h(!0);else if(r=="word"||r=="group")for(var x=null,D=r=="group",L=e.cm&&e.cm.getHelper(t,"wordChars"),H=!0;!(n<0&&!h(!H));H=!1){var Z=a.text.charAt(t.ch)||` +`,ie=De(Z,L)?"w":D&&Z==` +`?"n":!D||/\s/.test(Z)?null:"p";if(D&&!H&&!ie&&(ie="s"),x&&x!=ie){n<0&&(n=1,h(),t.sticky="after");break}if(ie&&(x=ie),n>0&&!h(!H))break}var ae=ai(e,t,o,l,!0);return We(o,ae)&&(ae.hitSide=!0),ae}function da(e,t,n,r){var i=e.doc,o=t.left,l;if(r=="page"){var a=Math.min(e.display.wrapper.clientHeight,le(e).innerHeight||i(e).documentElement.clientHeight),s=Math.max(a-.5*jr(e.display),3);l=(n>0?t.bottom:t.top)+n*s}else r=="line"&&(l=n>0?t.bottom+3:t.top-3);for(var u;u=Oi(e,o,l),!!u.outside;){if(n<0?l<=0:l>=i.height){u.hitSide=!0;break}l+=n*5}return u}var je=function(e){this.cm=e,this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null,this.polling=new Ce,this.composing=null,this.gracePeriod=!1,this.readDOMTimeout=null};je.prototype.init=function(e){var t=this,n=this,r=n.cm,i=n.div=e.lineDiv;i.contentEditable=!0,uo(i,r.options.spellcheck,r.options.autocorrect,r.options.autocapitalize);function o(a){for(var s=a.target;s;s=s.parentNode){if(s==i)return!0;if(/\bCodeMirror-(?:line)?widget\b/.test(s.className))break}return!1}Se(i,"paste",function(a){!o(a)||Qe(r,a)||sa(a,r)||I<=11&&setTimeout(lt(r,function(){return t.updateFromDOM()}),20)}),Se(i,"compositionstart",function(a){t.composing={data:a.data,done:!1}}),Se(i,"compositionupdate",function(a){t.composing||(t.composing={data:a.data,done:!1})}),Se(i,"compositionend",function(a){t.composing&&(a.data!=t.composing.data&&t.readFromDOMSoon(),t.composing.done=!0)}),Se(i,"touchstart",function(){return n.forceCompositionEnd()}),Se(i,"input",function(){t.composing||t.readFromDOMSoon()});function l(a){if(!(!o(a)||Qe(r,a))){if(r.somethingSelected())hi({lineWise:!1,text:r.getSelections()}),a.type=="cut"&&r.replaceSelection("",null,"cut");else if(r.options.lineWiseCopyCut){var s=fa(r);hi({lineWise:!0,text:s.text}),a.type=="cut"&&r.operation(function(){r.setSelections(s.ranges,0,$e),r.replaceSelection("",null,"cut")})}else return;if(a.clipboardData){a.clipboardData.clearData();var u=Ut.text.join(` +`);if(a.clipboardData.setData("Text",u),a.clipboardData.getData("Text")==u){a.preventDefault();return}}var h=ca(),x=h.firstChild;uo(x),r.display.lineSpace.insertBefore(h,r.display.lineSpace.firstChild),x.value=Ut.text.join(` +`);var D=y(Te(i));v(x),setTimeout(function(){r.display.lineSpace.removeChild(h),D.focus(),D==i&&n.showPrimarySelection()},50)}}Se(i,"copy",l),Se(i,"cut",l)},je.prototype.screenReaderLabelChanged=function(e){e?this.div.setAttribute("aria-label",e):this.div.removeAttribute("aria-label")},je.prototype.prepareSelection=function(){var e=rl(this.cm,!1);return e.focus=y(Te(this.div))==this.div,e},je.prototype.showSelection=function(e,t){!e||!this.cm.display.view.length||((e.focus||t)&&this.showPrimarySelection(),this.showMultipleSelections(e))},je.prototype.getSelection=function(){return this.cm.display.wrapper.ownerDocument.getSelection()},je.prototype.showPrimarySelection=function(){var e=this.getSelection(),t=this.cm,n=t.doc.sel.primary(),r=n.from(),i=n.to();if(t.display.viewTo==t.display.viewFrom||r.line>=t.display.viewTo||i.line=t.display.viewFrom&&ha(t,r)||{node:a[0].measure.map[2],offset:0},u=i.linee.firstLine()&&(r=B(r.line-1,ye(e.doc,r.line-1).length)),i.ch==ye(e.doc,i.line).text.length&&i.linet.viewTo-1)return!1;var o,l,a;r.line==t.viewFrom||(o=Tr(e,r.line))==0?(l=f(t.view[0].line),a=t.view[0].node):(l=f(t.view[o].line),a=t.view[o-1].node.nextSibling);var s=Tr(e,i.line),u,h;if(s==t.view.length-1?(u=t.viewTo-1,h=t.lineDiv.lastChild):(u=f(t.view[s+1].line)-1,h=t.view[s+1].node.previousSibling),!a)return!1;for(var x=e.doc.splitLines(Uu(e,a,h,l,u)),D=$t(e.doc,B(l,0),B(u,ye(e.doc,u).text.length));x.length>1&&D.length>1;)if(we(x)==we(D))x.pop(),D.pop(),u--;else if(x[0]==D[0])x.shift(),D.shift(),l++;else break;for(var L=0,H=0,Z=x[0],ie=D[0],ae=Math.min(Z.length,ie.length);Lr.ch&&he.charCodeAt(he.length-H-1)==se.charCodeAt(se.length-H-1);)L--,H++;x[x.length-1]=he.slice(0,he.length-H).replace(/^\u200b+/,""),x[0]=x[0].slice(L).replace(/\u200b+$/,"");var Le=B(l,L),ke=B(u,D.length?we(D).length-H:0);if(x.length>1||x[0]||ce(Le,ke))return Zr(e.doc,x,Le,ke,"+input"),!0},je.prototype.ensurePolled=function(){this.forceCompositionEnd()},je.prototype.reset=function(){this.forceCompositionEnd()},je.prototype.forceCompositionEnd=function(){this.composing&&(clearTimeout(this.readDOMTimeout),this.composing=null,this.updateFromDOM(),this.div.blur(),this.div.focus())},je.prototype.readFromDOMSoon=function(){var e=this;this.readDOMTimeout==null&&(this.readDOMTimeout=setTimeout(function(){if(e.readDOMTimeout=null,e.composing)if(e.composing.done)e.composing=null;else return;e.updateFromDOM()},80))},je.prototype.updateFromDOM=function(){var e=this;(this.cm.isReadOnly()||!this.pollContent())&&At(this.cm,function(){return St(e.cm)})},je.prototype.setUneditable=function(e){e.contentEditable="false"},je.prototype.onKeyPress=function(e){e.charCode==0||this.composing||(e.preventDefault(),this.cm.isReadOnly()||lt(this.cm,so)(this.cm,String.fromCharCode(e.charCode==null?e.keyCode:e.charCode),0))},je.prototype.readOnlyChanged=function(e){this.div.contentEditable=String(e!="nocursor")},je.prototype.onContextMenu=function(){},je.prototype.resetPosition=function(){},je.prototype.needsContentAttribute=!0;function ha(e,t){var n=Ai(e,t.line);if(!n||n.hidden)return null;var r=ye(e.doc,t.line),i=qo(n,r,t.line),o=Re(r,e.doc.direction),l="left";if(o){var a=lr(o,t.ch);l=a%2?"right":"left"}var s=Uo(i.map,t.ch,l);return s.offset=s.collapse=="right"?s.end:s.start,s}function Ku(e){for(var t=e;t;t=t.parentNode)if(/CodeMirror-gutter-wrapper/.test(t.className))return!0;return!1}function rn(e,t){return t&&(e.bad=!0),e}function Uu(e,t,n,r,i){var o="",l=!1,a=e.doc.lineSeparator(),s=!1;function u(L){return function(H){return H.id==L}}function h(){l&&(o+=a,s&&(o+=a),l=s=!1)}function x(L){L&&(h(),o+=L)}function D(L){if(L.nodeType==1){var H=L.getAttribute("cm-text");if(H){x(H);return}var Z=L.getAttribute("cm-marker"),ie;if(Z){var ae=e.findMarks(B(r,0),B(i+1,0),u(+Z));ae.length&&(ie=ae[0].find(0))&&x($t(e.doc,ie.from,ie.to).join(a));return}if(L.getAttribute("contenteditable")=="false")return;var he=/^(pre|div|p|li|table|br)$/i.test(L.nodeName);if(!/^br$/i.test(L.nodeName)&&L.textContent.length==0)return;he&&h();for(var se=0;se=9&&t.hasSelection&&(t.hasSelection=null),n.poll()}),Se(i,"paste",function(l){Qe(r,l)||sa(l,r)||(r.state.pasteIncoming=+new Date,n.fastPoll())});function o(l){if(!Qe(r,l)){if(r.somethingSelected())hi({lineWise:!1,text:r.getSelections()});else if(r.options.lineWiseCopyCut){var a=fa(r);hi({lineWise:!0,text:a.text}),l.type=="cut"?r.setSelections(a.ranges,null,$e):(n.prevInput="",i.value=a.text.join(` +`),v(i))}else return;l.type=="cut"&&(r.state.cutIncoming=+new Date)}}Se(i,"cut",o),Se(i,"copy",o),Se(e.scroller,"paste",function(l){if(!(tr(e,l)||Qe(r,l))){if(!i.dispatchEvent){r.state.pasteIncoming=+new Date,n.focus();return}var a=new Event("paste");a.clipboardData=l.clipboardData,i.dispatchEvent(a)}}),Se(e.lineSpace,"selectstart",function(l){tr(e,l)||pt(l)}),Se(i,"compositionstart",function(){var l=r.getCursor("from");n.composing&&n.composing.range.clear(),n.composing={start:l,range:r.markText(l,r.getCursor("to"),{className:"CodeMirror-composing"})}}),Se(i,"compositionend",function(){n.composing&&(n.poll(),n.composing.range.clear(),n.composing=null)})},Ve.prototype.createField=function(e){this.wrapper=ca(),this.textarea=this.wrapper.firstChild;var t=this.cm.options;uo(this.textarea,t.spellcheck,t.autocorrect,t.autocapitalize)},Ve.prototype.screenReaderLabelChanged=function(e){e?this.textarea.setAttribute("aria-label",e):this.textarea.removeAttribute("aria-label")},Ve.prototype.prepareSelection=function(){var e=this.cm,t=e.display,n=e.doc,r=rl(e);if(e.options.moveInputWithCursor){var i=jt(e,n.sel.primary().head,"div"),o=t.wrapper.getBoundingClientRect(),l=t.lineDiv.getBoundingClientRect();r.teTop=Math.max(0,Math.min(t.wrapper.clientHeight-10,i.top+l.top-o.top)),r.teLeft=Math.max(0,Math.min(t.wrapper.clientWidth-10,i.left+l.left-o.left))}return r},Ve.prototype.showSelection=function(e){var t=this.cm,n=t.display;G(n.cursorDiv,e.cursors),G(n.selectionDiv,e.selection),e.teTop!=null&&(this.wrapper.style.top=e.teTop+"px",this.wrapper.style.left=e.teLeft+"px")},Ve.prototype.reset=function(e){if(!(this.contextMenuPending||this.composing&&e)){var t=this.cm;if(this.resetting=!0,t.somethingSelected()){this.prevInput="";var n=t.getSelection();this.textarea.value=n,t.state.focused&&v(this.textarea),k&&I>=9&&(this.hasSelection=n)}else e||(this.prevInput=this.textarea.value="",k&&I>=9&&(this.hasSelection=null));this.resetting=!1}},Ve.prototype.getField=function(){return this.textarea},Ve.prototype.supportsTouch=function(){return!1},Ve.prototype.focus=function(){if(this.cm.options.readOnly!="nocursor"&&(!N||y(Te(this.textarea))!=this.textarea))try{this.textarea.focus()}catch{}},Ve.prototype.blur=function(){this.textarea.blur()},Ve.prototype.resetPosition=function(){this.wrapper.style.top=this.wrapper.style.left=0},Ve.prototype.receivedFocus=function(){this.slowPoll()},Ve.prototype.slowPoll=function(){var e=this;this.pollingFast||this.polling.set(this.cm.options.pollInterval,function(){e.poll(),e.cm.state.focused&&e.slowPoll()})},Ve.prototype.fastPoll=function(){var e=!1,t=this;t.pollingFast=!0;function n(){var r=t.poll();!r&&!e?(e=!0,t.polling.set(60,n)):(t.pollingFast=!1,t.slowPoll())}t.polling.set(20,n)},Ve.prototype.poll=function(){var e=this,t=this.cm,n=this.textarea,r=this.prevInput;if(this.contextMenuPending||this.resetting||!t.state.focused||ur(n)&&!r&&!this.composing||t.isReadOnly()||t.options.disableInput||t.state.keySeq)return!1;var i=n.value;if(i==r&&!t.somethingSelected())return!1;if(k&&I>=9&&this.hasSelection===i||z&&/[\uf700-\uf7ff]/.test(i))return t.display.input.reset(),!1;if(t.doc.sel==t.display.selForContextMenu){var o=i.charCodeAt(0);if(o==8203&&!r&&(r="​"),o==8666)return this.reset(),this.cm.execCommand("undo")}for(var l=0,a=Math.min(r.length,i.length);l1e3||i.indexOf(` +`)>-1?n.value=e.prevInput="":e.prevInput=i,e.composing&&(e.composing.range.clear(),e.composing.range=t.markText(e.composing.start,t.getCursor("to"),{className:"CodeMirror-composing"}))}),!0},Ve.prototype.ensurePolled=function(){this.pollingFast&&this.poll()&&(this.pollingFast=!1)},Ve.prototype.onKeyPress=function(){k&&I>=9&&(this.hasSelection=null),this.fastPoll()},Ve.prototype.onContextMenu=function(e){var t=this,n=t.cm,r=n.display,i=t.textarea;t.contextMenuPending&&t.contextMenuPending();var o=Lr(n,e),l=r.scroller.scrollTop;if(!o||A)return;var a=n.options.resetSelectionOnContextMenu;a&&n.doc.sel.contains(o)==-1&<(n,gt)(n.doc,pr(o),$e);var s=i.style.cssText,u=t.wrapper.style.cssText,h=t.wrapper.offsetParent.getBoundingClientRect();t.wrapper.style.cssText="position: static",i.style.cssText=`position: absolute; width: 30px; height: 30px; + top: `+(e.clientY-h.top-5)+"px; left: "+(e.clientX-h.left-5)+`px; + z-index: 1000; background: `+(k?"rgba(255, 255, 255, .05)":"transparent")+`; + outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);`;var x;Y&&(x=i.ownerDocument.defaultView.scrollY),r.input.focus(),Y&&i.ownerDocument.defaultView.scrollTo(null,x),r.input.reset(),n.somethingSelected()||(i.value=t.prevInput=" "),t.contextMenuPending=L,r.selForContextMenu=n.doc.sel,clearTimeout(r.detectingSelectAll);function D(){if(i.selectionStart!=null){var Z=n.somethingSelected(),ie="​"+(Z?i.value:"");i.value="⇚",i.value=ie,t.prevInput=Z?"":"​",i.selectionStart=1,i.selectionEnd=ie.length,r.selForContextMenu=n.doc.sel}}function L(){if(t.contextMenuPending==L&&(t.contextMenuPending=!1,t.wrapper.style.cssText=u,i.style.cssText=s,k&&I<9&&r.scrollbars.setScrollTop(r.scroller.scrollTop=l),i.selectionStart!=null)){(!k||k&&I<9)&&D();var Z=0,ie=function(){r.selForContextMenu==n.doc.sel&&i.selectionStart==0&&i.selectionEnd>0&&t.prevInput=="​"?lt(n,El)(n):Z++<10?r.detectingSelectAll=setTimeout(ie,500):(r.selForContextMenu=null,r.input.reset())};r.detectingSelectAll=setTimeout(ie,200)}}if(k&&I>=9&&D(),J){ar(e);var H=function(){ht(window,"mouseup",H),setTimeout(L,20)};Se(window,"mouseup",H)}else setTimeout(L,50)},Ve.prototype.readOnlyChanged=function(e){e||this.reset(),this.textarea.disabled=e=="nocursor",this.textarea.readOnly=!!e},Ve.prototype.setUneditable=function(){},Ve.prototype.needsContentAttribute=!1;function Xu(e,t){if(t=t?Me(t):{},t.value=e.value,!t.tabindex&&e.tabIndex&&(t.tabindex=e.tabIndex),!t.placeholder&&e.placeholder&&(t.placeholder=e.placeholder),t.autofocus==null){var n=y(Te(e));t.autofocus=n==e||e.getAttribute("autofocus")!=null&&n==document.body}function r(){e.value=a.getValue()}var i;if(e.form&&(Se(e.form,"submit",r),!t.leaveSubmitMethodAlone)){var o=e.form;i=o.submit;try{var l=o.submit=function(){r(),o.submit=i,o.submit(),o.submit=l}}catch{}}t.finishInit=function(s){s.save=r,s.getTextArea=function(){return e},s.toTextArea=function(){s.toTextArea=isNaN,r(),e.parentNode.removeChild(s.getWrapperElement()),e.style.display="",e.form&&(ht(e.form,"submit",r),!t.leaveSubmitMethodAlone&&typeof e.form.submit=="function"&&(e.form.submit=i))}},e.style.display="none";var a=Ge(function(s){return e.parentNode.insertBefore(s,e.nextSibling)},t);return a}function Yu(e){e.off=ht,e.on=Se,e.wheelEventPixels=tu,e.Doc=Lt,e.splitLines=zt,e.countColumn=Fe,e.findColumn=_e,e.isWordChar=me,e.Pass=qe,e.signal=Ye,e.Line=Hr,e.changeEnd=gr,e.scrollbarModel=sl,e.Pos=B,e.cmpPos=ce,e.modes=Pr,e.mimeModes=Ht,e.resolveMode=Ir,e.getMode=zr,e.modeExtensions=fr,e.extendMode=Br,e.copyState=Gt,e.startState=Rr,e.innerMode=sn,e.commands=En,e.keyMap=nr,e.keyName=Yl,e.isModifierKey=Gl,e.lookupKey=Vr,e.normalizeKeyMap=Su,e.StringStream=Je,e.SharedTextMarker=Fn,e.TextMarker=mr,e.LineWidget=Mn,e.e_preventDefault=pt,e.e_stopPropagation=Er,e.e_stop=ar,e.addClass=j,e.contains=g,e.rmClass=V,e.keyNames=xr}Wu(Ge),ju(Ge);var Qu="iter insert remove copy getEditor constructor".split(" ");for(var gi in Lt.prototype)Lt.prototype.hasOwnProperty(gi)&&ve(Qu,gi)<0&&(Ge.prototype[gi]=(function(e){return function(){return e.apply(this.doc,arguments)}})(Lt.prototype[gi]));return Bt(Lt),Ge.inputStyles={textarea:Ve,contenteditable:je},Ge.defineMode=function(e){!Ge.defaults.mode&&e!="null"&&(Ge.defaults.mode=e),_t.apply(this,arguments)},Ge.defineMIME=kr,Ge.defineMode("null",function(){return{token:function(e){return e.skipToEnd()}}}),Ge.defineMIME("text/plain","null"),Ge.defineExtension=function(e,t){Ge.prototype[e]=t},Ge.defineDocExtension=function(e,t){Lt.prototype[e]=t},Ge.fromTextArea=Xu,Yu(Ge),Ge.version="5.65.18",Ge}))})(vi)),vi.exports}var $u=mt();const df=Ju($u);var ga={exports:{}},va;function Xa(){return va||(va=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineMode("css",function(J,P){var V=P.inline;P.propertyKeywords||(P=b.resolveMode("text/css"));var F=J.indentUnit,G=P.tokenHooks,c=P.documentTypes||{},T=P.mediaTypes||{},C=P.mediaFeatures||{},g=P.mediaValueKeywords||{},y=P.propertyKeywords||{},j=P.nonStandardPropertyKeywords||{},de=P.fontProperties||{},v=P.counterDescriptors||{},d=P.colorKeywords||{},fe=P.valueKeywords||{},Te=P.allowNested,le=P.lineComment,xe=P.supportsAtComponent===!0,Me=J.highlightNonStandardPropertyKeywords!==!1,Fe,Ce;function ve(E,ee){return Fe=ee,E}function Oe(E,ee){var K=E.next();if(G[K]){var ze=G[K](E,ee);if(ze!==!1)return ze}if(K=="@")return E.eatWhile(/[\w\\\-]/),ve("def",E.current());if(K=="="||(K=="~"||K=="|")&&E.eat("="))return ve(null,"compare");if(K=='"'||K=="'")return ee.tokenize=qe(K),ee.tokenize(E,ee);if(K=="#")return E.eatWhile(/[\w\\\-]/),ve("atom","hash");if(K=="!")return E.match(/^\s*\w*/),ve("keyword","important");if(/\d/.test(K)||K=="."&&E.eat(/\d/))return E.eatWhile(/[\w.%]/),ve("number","unit");if(K==="-"){if(/[\d.]/.test(E.peek()))return E.eatWhile(/[\w.%]/),ve("number","unit");if(E.match(/^-[\w\\\-]*/))return E.eatWhile(/[\w\\\-]/),E.match(/^\s*:/,!1)?ve("variable-2","variable-definition"):ve("variable-2","variable");if(E.match(/^\w+-/))return ve("meta","meta")}else return/[,+>*\/]/.test(K)?ve(null,"select-op"):K=="."&&E.match(/^-?[_a-z][_a-z0-9-]*/i)?ve("qualifier","qualifier"):/[:;{}\[\]\(\)]/.test(K)?ve(null,K):E.match(/^[\w-.]+(?=\()/)?(/^(url(-prefix)?|domain|regexp)$/i.test(E.current())&&(ee.tokenize=$e),ve("variable callee","variable")):/[\w\\\-]/.test(K)?(E.eatWhile(/[\w\\\-]/),ve("property","word")):ve(null,null)}function qe(E){return function(ee,K){for(var ze=!1,me;(me=ee.next())!=null;){if(me==E&&!ze){E==")"&&ee.backUp(1);break}ze=!ze&&me=="\\"}return(me==E||!ze&&E!=")")&&(K.tokenize=null),ve("string","string")}}function $e(E,ee){return E.next(),E.match(/^\s*[\"\')]/,!1)?ee.tokenize=null:ee.tokenize=qe(")"),ve(null,"(")}function dt(E,ee,K){this.type=E,this.indent=ee,this.prev=K}function Pe(E,ee,K,ze){return E.context=new dt(K,ee.indentation()+(ze===!1?0:F),E.context),K}function _e(E){return E.context.prev&&(E.context=E.context.prev),E.context.type}function Ue(E,ee,K){return Ie[K.context.type](E,ee,K)}function et(E,ee,K,ze){for(var me=ze||1;me>0;me--)K.context=K.context.prev;return Ue(E,ee,K)}function we(E){var ee=E.current().toLowerCase();fe.hasOwnProperty(ee)?Ce="atom":d.hasOwnProperty(ee)?Ce="keyword":Ce="variable"}var Ie={};return Ie.top=function(E,ee,K){if(E=="{")return Pe(K,ee,"block");if(E=="}"&&K.context.prev)return _e(K);if(xe&&/@component/i.test(E))return Pe(K,ee,"atComponentBlock");if(/^@(-moz-)?document$/i.test(E))return Pe(K,ee,"documentTypes");if(/^@(media|supports|(-moz-)?document|import)$/i.test(E))return Pe(K,ee,"atBlock");if(/^@(font-face|counter-style)/i.test(E))return K.stateArg=E,"restricted_atBlock_before";if(/^@(-(moz|ms|o|webkit)-)?keyframes$/i.test(E))return"keyframes";if(E&&E.charAt(0)=="@")return Pe(K,ee,"at");if(E=="hash")Ce="builtin";else if(E=="word")Ce="tag";else{if(E=="variable-definition")return"maybeprop";if(E=="interpolation")return Pe(K,ee,"interpolation");if(E==":")return"pseudo";if(Te&&E=="(")return Pe(K,ee,"parens")}return K.context.type},Ie.block=function(E,ee,K){if(E=="word"){var ze=ee.current().toLowerCase();return y.hasOwnProperty(ze)?(Ce="property","maybeprop"):j.hasOwnProperty(ze)?(Ce=Me?"string-2":"property","maybeprop"):Te?(Ce=ee.match(/^\s*:(?:\s|$)/,!1)?"property":"tag","block"):(Ce+=" error","maybeprop")}else return E=="meta"?"block":!Te&&(E=="hash"||E=="qualifier")?(Ce="error","block"):Ie.top(E,ee,K)},Ie.maybeprop=function(E,ee,K){return E==":"?Pe(K,ee,"prop"):Ue(E,ee,K)},Ie.prop=function(E,ee,K){if(E==";")return _e(K);if(E=="{"&&Te)return Pe(K,ee,"propBlock");if(E=="}"||E=="{")return et(E,ee,K);if(E=="(")return Pe(K,ee,"parens");if(E=="hash"&&!/^#([0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/.test(ee.current()))Ce+=" error";else if(E=="word")we(ee);else if(E=="interpolation")return Pe(K,ee,"interpolation");return"prop"},Ie.propBlock=function(E,ee,K){return E=="}"?_e(K):E=="word"?(Ce="property","maybeprop"):K.context.type},Ie.parens=function(E,ee,K){return E=="{"||E=="}"?et(E,ee,K):E==")"?_e(K):E=="("?Pe(K,ee,"parens"):E=="interpolation"?Pe(K,ee,"interpolation"):(E=="word"&&we(ee),"parens")},Ie.pseudo=function(E,ee,K){return E=="meta"?"pseudo":E=="word"?(Ce="variable-3",K.context.type):Ue(E,ee,K)},Ie.documentTypes=function(E,ee,K){return E=="word"&&c.hasOwnProperty(ee.current())?(Ce="tag",K.context.type):Ie.atBlock(E,ee,K)},Ie.atBlock=function(E,ee,K){if(E=="(")return Pe(K,ee,"atBlock_parens");if(E=="}"||E==";")return et(E,ee,K);if(E=="{")return _e(K)&&Pe(K,ee,Te?"block":"top");if(E=="interpolation")return Pe(K,ee,"interpolation");if(E=="word"){var ze=ee.current().toLowerCase();ze=="only"||ze=="not"||ze=="and"||ze=="or"?Ce="keyword":T.hasOwnProperty(ze)?Ce="attribute":C.hasOwnProperty(ze)?Ce="property":g.hasOwnProperty(ze)?Ce="keyword":y.hasOwnProperty(ze)?Ce="property":j.hasOwnProperty(ze)?Ce=Me?"string-2":"property":fe.hasOwnProperty(ze)?Ce="atom":d.hasOwnProperty(ze)?Ce="keyword":Ce="error"}return K.context.type},Ie.atComponentBlock=function(E,ee,K){return E=="}"?et(E,ee,K):E=="{"?_e(K)&&Pe(K,ee,Te?"block":"top",!1):(E=="word"&&(Ce="error"),K.context.type)},Ie.atBlock_parens=function(E,ee,K){return E==")"?_e(K):E=="{"||E=="}"?et(E,ee,K,2):Ie.atBlock(E,ee,K)},Ie.restricted_atBlock_before=function(E,ee,K){return E=="{"?Pe(K,ee,"restricted_atBlock"):E=="word"&&K.stateArg=="@counter-style"?(Ce="variable","restricted_atBlock_before"):Ue(E,ee,K)},Ie.restricted_atBlock=function(E,ee,K){return E=="}"?(K.stateArg=null,_e(K)):E=="word"?(K.stateArg=="@font-face"&&!de.hasOwnProperty(ee.current().toLowerCase())||K.stateArg=="@counter-style"&&!v.hasOwnProperty(ee.current().toLowerCase())?Ce="error":Ce="property","maybeprop"):"restricted_atBlock"},Ie.keyframes=function(E,ee,K){return E=="word"?(Ce="variable","keyframes"):E=="{"?Pe(K,ee,"top"):Ue(E,ee,K)},Ie.at=function(E,ee,K){return E==";"?_e(K):E=="{"||E=="}"?et(E,ee,K):(E=="word"?Ce="tag":E=="hash"&&(Ce="builtin"),"at")},Ie.interpolation=function(E,ee,K){return E=="}"?_e(K):E=="{"||E==";"?et(E,ee,K):(E=="word"?Ce="variable":E!="variable"&&E!="("&&E!=")"&&(Ce="error"),"interpolation")},{startState:function(E){return{tokenize:null,state:V?"block":"top",stateArg:null,context:new dt(V?"block":"top",E||0,null)}},token:function(E,ee){if(!ee.tokenize&&E.eatSpace())return null;var K=(ee.tokenize||Oe)(E,ee);return K&&typeof K=="object"&&(Fe=K[1],K=K[0]),Ce=K,Fe!="comment"&&(ee.state=Ie[ee.state](Fe,E,ee)),Ce},indent:function(E,ee){var K=E.context,ze=ee&&ee.charAt(0),me=K.indent;return K.type=="prop"&&(ze=="}"||ze==")")&&(K=K.prev),K.prev&&(ze=="}"&&(K.type=="block"||K.type=="top"||K.type=="interpolation"||K.type=="restricted_atBlock")?(K=K.prev,me=K.indent):(ze==")"&&(K.type=="parens"||K.type=="atBlock_parens")||ze=="{"&&(K.type=="at"||K.type=="atBlock"))&&(me=Math.max(0,K.indent-F))),me},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * ",lineComment:le,fold:"brace"}});function pe(J){for(var P={},V=0;V")):null:c.match("--")?C(ue("comment","-->")):c.match("DOCTYPE",!0,!0)?(c.eatWhile(/[\w\._\-]/),C(O(1))):null:c.eat("?")?(c.eatWhile(/[\w\._\-]/),T.tokenize=ue("meta","?>"),"meta"):(ne=c.eat("/")?"closeTag":"openTag",T.tokenize=A,"tag bracket");if(g=="&"){var y;return c.eat("#")?c.eat("x")?y=c.eatWhile(/[a-fA-F\d]/)&&c.eat(";"):y=c.eatWhile(/[\d]/)&&c.eat(";"):y=c.eatWhile(/[\w\.\-:]/)&&c.eat(";"),y?"atom":"error"}else return c.eatWhile(/[^&<]/),null}R.isInText=!0;function A(c,T){var C=c.next();if(C==">"||C=="/"&&c.eat(">"))return T.tokenize=R,ne=C==">"?"endTag":"selfcloseTag","tag bracket";if(C=="=")return ne="equals",null;if(C=="<"){T.tokenize=R,T.state=X,T.tagName=T.tagStart=null;var g=T.tokenize(c,T);return g?g+" tag error":"tag error"}else return/[\'\"]/.test(C)?(T.tokenize=$(C),T.stringStartCol=c.column(),T.tokenize(c,T)):(c.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/),"word")}function $(c){var T=function(C,g){for(;!C.eol();)if(C.next()==c){g.tokenize=A;break}return"string"};return T.isInAttribute=!0,T}function ue(c,T){return function(C,g){for(;!C.eol();){if(C.match(T)){g.tokenize=R;break}C.next()}return c}}function O(c){return function(T,C){for(var g;(g=T.next())!=null;){if(g=="<")return C.tokenize=O(c+1),C.tokenize(T,C);if(g==">")if(c==1){C.tokenize=R;break}else return C.tokenize=O(c-1),C.tokenize(T,C)}return"meta"}}function w(c){return c&&c.toLowerCase()}function M(c,T,C){this.prev=c.context,this.tagName=T||"",this.indent=c.indented,this.startOfLine=C,(k.doNotIndent.hasOwnProperty(T)||c.context&&c.context.noIndent)&&(this.noIndent=!0)}function N(c){c.context&&(c.context=c.context.prev)}function z(c,T){for(var C;;){if(!c.context||(C=c.context.tagName,!k.contextGrabbers.hasOwnProperty(w(C))||!k.contextGrabbers[w(C)].hasOwnProperty(w(T))))return;N(c)}}function X(c,T,C){return c=="openTag"?(C.tagStart=T.column(),q):c=="closeTag"?p:X}function q(c,T,C){return c=="word"?(C.tagName=T.current(),S="tag",P):k.allowMissingTagName&&c=="endTag"?(S="tag bracket",P(c,T,C)):(S="error",q)}function p(c,T,C){if(c=="word"){var g=T.current();return C.context&&C.context.tagName!=g&&k.implicitlyClosed.hasOwnProperty(w(C.context.tagName))&&N(C),C.context&&C.context.tagName==g||k.matchClosing===!1?(S="tag",W):(S="tag error",J)}else return k.allowMissingTagName&&c=="endTag"?(S="tag bracket",W(c,T,C)):(S="error",J)}function W(c,T,C){return c!="endTag"?(S="error",W):(N(C),X)}function J(c,T,C){return S="error",W(c,T,C)}function P(c,T,C){if(c=="word")return S="attribute",V;if(c=="endTag"||c=="selfcloseTag"){var g=C.tagName,y=C.tagStart;return C.tagName=C.tagStart=null,c=="selfcloseTag"||k.autoSelfClosers.hasOwnProperty(w(g))?z(C,g):(z(C,g),C.context=new M(C,g,y==C.indented)),X}return S="error",P}function V(c,T,C){return c=="equals"?F:(k.allowMissing||(S="error"),P(c,T,C))}function F(c,T,C){return c=="string"?G:c=="word"&&k.allowUnquoted?(S="string",P):(S="error",P(c,T,C))}function G(c,T,C){return c=="string"?G:P(c,T,C)}return{startState:function(c){var T={tokenize:R,state:X,indented:c||0,tagName:null,tagStart:null,context:null};return c!=null&&(T.baseIndent=c),T},token:function(c,T){if(!T.tagName&&c.sol()&&(T.indented=c.indentation()),c.eatSpace())return null;ne=null;var C=T.tokenize(c,T);return(C||ne)&&C!="comment"&&(S=null,T.state=T.state(ne||C,c,T),S&&(C=S=="error"?C+" error":S)),C},indent:function(c,T,C){var g=c.context;if(c.tokenize.isInAttribute)return c.tagStart==c.indented?c.stringStartCol+1:c.indented+Q;if(g&&g.noIndent)return b.Pass;if(c.tokenize!=A&&c.tokenize!=R)return C?C.match(/^(\s*)/)[0].length:0;if(c.tagName)return k.multilineTagIndentPastTag!==!1?c.tagStart+c.tagName.length+2:c.tagStart+Q*(k.multilineTagIndentFactor||1);if(k.alignCDATA&&/$/,blockCommentStart:"",configuration:k.htmlMode?"html":"xml",helperType:k.htmlMode?"html":"xml",skipAttribute:function(c){c.state==F&&(c.state=P)},xmlCurrentTag:function(c){return c.tagName?{name:c.tagName,close:c.type=="closeTag"}:null},xmlCurrentContext:function(c){for(var T=[],C=c.context;C;C=C.prev)T.push(C.tagName);return T.reverse()}}}),b.defineMIME("text/xml","xml"),b.defineMIME("application/xml","xml"),b.mimeModes.hasOwnProperty("text/html")||b.defineMIME("text/html",{name:"xml",htmlMode:!0})})})()),xa.exports}var ba={exports:{}},ka;function Qa(){return ka||(ka=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineMode("javascript",function(pe,_){var te=pe.indentUnit,oe=_.statementIndent,Q=_.jsonld,k=_.json||Q,I=_.trackScope!==!1,Y=_.typescript,ne=_.wordCharacters||/[\w$\xa1-\uffff]/,S=(function(){function f(it){return{type:it,style:"keyword"}}var m=f("keyword a"),U=f("keyword b"),re=f("keyword c"),B=f("keyword d"),ce=f("operator"),We={type:"atom",style:"atom"};return{if:f("if"),while:m,with:m,else:U,do:U,try:U,finally:U,return:B,break:B,continue:B,new:f("new"),delete:re,void:re,throw:re,debugger:f("debugger"),var:f("var"),const:f("var"),let:f("var"),function:f("function"),catch:f("catch"),for:f("for"),switch:f("switch"),case:f("case"),default:f("default"),in:ce,typeof:ce,instanceof:ce,true:We,false:We,null:We,undefined:We,NaN:We,Infinity:We,this:f("this"),class:f("class"),super:f("atom"),yield:re,export:f("export"),import:f("import"),extends:re,await:re}})(),R=/[+\-*&%=<>!?|~^@]/,A=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function $(f){for(var m=!1,U,re=!1;(U=f.next())!=null;){if(!m){if(U=="/"&&!re)return;U=="["?re=!0:re&&U=="]"&&(re=!1)}m=!m&&U=="\\"}}var ue,O;function w(f,m,U){return ue=f,O=U,m}function M(f,m){var U=f.next();if(U=='"'||U=="'")return m.tokenize=N(U),m.tokenize(f,m);if(U=="."&&f.match(/^\d[\d_]*(?:[eE][+\-]?[\d_]+)?/))return w("number","number");if(U=="."&&f.match(".."))return w("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test(U))return w(U);if(U=="="&&f.eat(">"))return w("=>","operator");if(U=="0"&&f.match(/^(?:x[\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/))return w("number","number");if(/\d/.test(U))return f.match(/^[\d_]*(?:n|(?:\.[\d_]*)?(?:[eE][+\-]?[\d_]+)?)?/),w("number","number");if(U=="/")return f.eat("*")?(m.tokenize=z,z(f,m)):f.eat("/")?(f.skipToEnd(),w("comment","comment")):Et(f,m,1)?($(f),f.match(/^\b(([gimyus])(?![gimyus]*\2))+\b/),w("regexp","string-2")):(f.eat("="),w("operator","operator",f.current()));if(U=="`")return m.tokenize=X,X(f,m);if(U=="#"&&f.peek()=="!")return f.skipToEnd(),w("meta","meta");if(U=="#"&&f.eatWhile(ne))return w("variable","property");if(U=="<"&&f.match("!--")||U=="-"&&f.match("->")&&!/\S/.test(f.string.slice(0,f.start)))return f.skipToEnd(),w("comment","comment");if(R.test(U))return(U!=">"||!m.lexical||m.lexical.type!=">")&&(f.eat("=")?(U=="!"||U=="=")&&f.eat("="):/[<>*+\-|&?]/.test(U)&&(f.eat(U),U==">"&&f.eat(U))),U=="?"&&f.eat(".")?w("."):w("operator","operator",f.current());if(ne.test(U)){f.eatWhile(ne);var re=f.current();if(m.lastType!="."){if(S.propertyIsEnumerable(re)){var B=S[re];return w(B.type,B.style,re)}if(re=="async"&&f.match(/^(\s|\/\*([^*]|\*(?!\/))*?\*\/)*[\[\(\w]/,!1))return w("async","keyword",re)}return w("variable","variable",re)}}function N(f){return function(m,U){var re=!1,B;if(Q&&m.peek()=="@"&&m.match(A))return U.tokenize=M,w("jsonld-keyword","meta");for(;(B=m.next())!=null&&!(B==f&&!re);)re=!re&&B=="\\";return re||(U.tokenize=M),w("string","string")}}function z(f,m){for(var U=!1,re;re=f.next();){if(re=="/"&&U){m.tokenize=M;break}U=re=="*"}return w("comment","comment")}function X(f,m){for(var U=!1,re;(re=f.next())!=null;){if(!U&&(re=="`"||re=="$"&&f.eat("{"))){m.tokenize=M;break}U=!U&&re=="\\"}return w("quasi","string-2",f.current())}var q="([{}])";function p(f,m){m.fatArrowAt&&(m.fatArrowAt=null);var U=f.string.indexOf("=>",f.start);if(!(U<0)){if(Y){var re=/:\s*(?:\w+(?:<[^>]*>|\[\])?|\{[^}]*\})\s*$/.exec(f.string.slice(f.start,U));re&&(U=re.index)}for(var B=0,ce=!1,We=U-1;We>=0;--We){var it=f.string.charAt(We),wt=q.indexOf(it);if(wt>=0&&wt<3){if(!B){++We;break}if(--B==0){it=="("&&(ce=!0);break}}else if(wt>=3&&wt<6)++B;else if(ne.test(it))ce=!0;else if(/["'\/`]/.test(it))for(;;--We){if(We==0)return;var Wr=f.string.charAt(We-1);if(Wr==it&&f.string.charAt(We-2)!="\\"){We--;break}}else if(ce&&!B){++We;break}}ce&&!B&&(m.fatArrowAt=We)}}var W={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,this:!0,import:!0,"jsonld-keyword":!0};function J(f,m,U,re,B,ce){this.indented=f,this.column=m,this.type=U,this.prev=B,this.info=ce,re!=null&&(this.align=re)}function P(f,m){if(!I)return!1;for(var U=f.localVars;U;U=U.next)if(U.name==m)return!0;for(var re=f.context;re;re=re.prev)for(var U=re.vars;U;U=U.next)if(U.name==m)return!0}function V(f,m,U,re,B){var ce=f.cc;for(F.state=f,F.stream=B,F.marked=null,F.cc=ce,F.style=m,f.lexical.hasOwnProperty("align")||(f.lexical.align=!0);;){var We=ce.length?ce.pop():k?ve:Fe;if(We(U,re)){for(;ce.length&&ce[ce.length-1].lex;)ce.pop()();return F.marked?F.marked:U=="variable"&&P(f,re)?"variable-2":m}}}var F={state:null,marked:null,cc:null};function G(){for(var f=arguments.length-1;f>=0;f--)F.cc.push(arguments[f])}function c(){return G.apply(null,arguments),!0}function T(f,m){for(var U=m;U;U=U.next)if(U.name==f)return!0;return!1}function C(f){var m=F.state;if(F.marked="def",!!I){if(m.context){if(m.lexical.info=="var"&&m.context&&m.context.block){var U=g(f,m.context);if(U!=null){m.context=U;return}}else if(!T(f,m.localVars)){m.localVars=new de(f,m.localVars);return}}_.globalVars&&!T(f,m.globalVars)&&(m.globalVars=new de(f,m.globalVars))}}function g(f,m){if(m)if(m.block){var U=g(f,m.prev);return U?U==m.prev?m:new j(U,m.vars,!0):null}else return T(f,m.vars)?m:new j(m.prev,new de(f,m.vars),!1);else return null}function y(f){return f=="public"||f=="private"||f=="protected"||f=="abstract"||f=="readonly"}function j(f,m,U){this.prev=f,this.vars=m,this.block=U}function de(f,m){this.name=f,this.next=m}var v=new de("this",new de("arguments",null));function d(){F.state.context=new j(F.state.context,F.state.localVars,!1),F.state.localVars=v}function fe(){F.state.context=new j(F.state.context,F.state.localVars,!0),F.state.localVars=null}d.lex=fe.lex=!0;function Te(){F.state.localVars=F.state.context.vars,F.state.context=F.state.context.prev}Te.lex=!0;function le(f,m){var U=function(){var re=F.state,B=re.indented;if(re.lexical.type=="stat")B=re.lexical.indented;else for(var ce=re.lexical;ce&&ce.type==")"&&ce.align;ce=ce.prev)B=ce.indented;re.lexical=new J(B,F.stream.column(),f,null,re.lexical,m)};return U.lex=!0,U}function xe(){var f=F.state;f.lexical.prev&&(f.lexical.type==")"&&(f.indented=f.lexical.indented),f.lexical=f.lexical.prev)}xe.lex=!0;function Me(f){function m(U){return U==f?c():f==";"||U=="}"||U==")"||U=="]"?G():c(m)}return m}function Fe(f,m){return f=="var"?c(le("vardef",m),Er,Me(";"),xe):f=="keyword a"?c(le("form"),qe,Fe,xe):f=="keyword b"?c(le("form"),Fe,xe):f=="keyword d"?F.stream.match(/^\s*$/,!1)?c():c(le("stat"),dt,Me(";"),xe):f=="debugger"?c(Me(";")):f=="{"?c(le("}"),fe,Pt,xe,Te):f==";"?c():f=="if"?(F.state.lexical.info=="else"&&F.state.cc[F.state.cc.length-1]==xe&&F.state.cc.pop()(),c(le("form"),qe,Fe,xe,Or)):f=="function"?c(zt):f=="for"?c(le("form"),fe,Rn,Fe,Te,xe):f=="class"||Y&&m=="interface"?(F.marked="keyword",c(le("form",f=="class"?f:m),Pr,xe)):f=="variable"?Y&&m=="declare"?(F.marked="keyword",c(Fe)):Y&&(m=="module"||m=="enum"||m=="type")&&F.stream.match(/^\s*\w/,!1)?(F.marked="keyword",m=="enum"?c(ye):m=="type"?c(Wn,Me("operator"),Re,Me(";")):c(le("form"),kt,Me("{"),le("}"),Pt,xe,xe)):Y&&m=="namespace"?(F.marked="keyword",c(le("form"),ve,Fe,xe)):Y&&m=="abstract"?(F.marked="keyword",c(Fe)):c(le("stat"),ze):f=="switch"?c(le("form"),qe,Me("{"),le("}","switch"),fe,Pt,xe,xe,Te):f=="case"?c(ve,Me(":")):f=="default"?c(Me(":")):f=="catch"?c(le("form"),d,Ce,Fe,xe,Te):f=="export"?c(le("stat"),Ir,xe):f=="import"?c(le("stat"),fr,xe):f=="async"?c(Fe):m=="@"?c(ve,Fe):G(le("stat"),ve,Me(";"),xe)}function Ce(f){if(f=="(")return c(Wt,Me(")"))}function ve(f,m){return $e(f,m,!1)}function Oe(f,m){return $e(f,m,!0)}function qe(f){return f!="("?G():c(le(")"),dt,Me(")"),xe)}function $e(f,m,U){if(F.state.fatArrowAt==F.stream.start){var re=U?Ie:we;if(f=="(")return c(d,le(")"),Ne(Wt,")"),xe,Me("=>"),re,Te);if(f=="variable")return G(d,kt,Me("=>"),re,Te)}var B=U?_e:Pe;return W.hasOwnProperty(f)?c(B):f=="function"?c(zt,B):f=="class"||Y&&m=="interface"?(F.marked="keyword",c(le("form"),yi,xe)):f=="keyword c"||f=="async"?c(U?Oe:ve):f=="("?c(le(")"),dt,Me(")"),xe,B):f=="operator"||f=="spread"?c(U?Oe:ve):f=="["?c(le("]"),Je,xe,B):f=="{"?Mt(De,"}",null,B):f=="quasi"?G(Ue,B):f=="new"?c(E(U)):c()}function dt(f){return f.match(/[;\}\)\],]/)?G():G(ve)}function Pe(f,m){return f==","?c(dt):_e(f,m,!1)}function _e(f,m,U){var re=U==!1?Pe:_e,B=U==!1?ve:Oe;if(f=="=>")return c(d,U?Ie:we,Te);if(f=="operator")return/\+\+|--/.test(m)||Y&&m=="!"?c(re):Y&&m=="<"&&F.stream.match(/^([^<>]|<[^<>]*>)*>\s*\(/,!1)?c(le(">"),Ne(Re,">"),xe,re):m=="?"?c(ve,Me(":"),B):c(B);if(f=="quasi")return G(Ue,re);if(f!=";"){if(f=="(")return Mt(Oe,")","call",re);if(f==".")return c(me,re);if(f=="[")return c(le("]"),dt,Me("]"),xe,re);if(Y&&m=="as")return F.marked="keyword",c(Re,re);if(f=="regexp")return F.state.lastType=F.marked="operator",F.stream.backUp(F.stream.pos-F.stream.start-1),c(B)}}function Ue(f,m){return f!="quasi"?G():m.slice(m.length-2)!="${"?c(Ue):c(dt,et)}function et(f){if(f=="}")return F.marked="string-2",F.state.tokenize=X,c(Ue)}function we(f){return p(F.stream,F.state),G(f=="{"?Fe:ve)}function Ie(f){return p(F.stream,F.state),G(f=="{"?Fe:Oe)}function E(f){return function(m){return m=="."?c(f?K:ee):m=="variable"&&Y?c(Ft,f?_e:Pe):G(f?Oe:ve)}}function ee(f,m){if(m=="target")return F.marked="keyword",c(Pe)}function K(f,m){if(m=="target")return F.marked="keyword",c(_e)}function ze(f){return f==":"?c(xe,Fe):G(Pe,Me(";"),xe)}function me(f){if(f=="variable")return F.marked="property",c()}function De(f,m){if(f=="async")return F.marked="property",c(De);if(f=="variable"||F.style=="keyword"){if(F.marked="property",m=="get"||m=="set")return c(be);var U;return Y&&F.state.fatArrowAt==F.stream.start&&(U=F.stream.match(/^\s*:\s*/,!1))&&(F.state.fatArrowAt=F.stream.pos+U[0].length),c(Be)}else{if(f=="number"||f=="string")return F.marked=Q?"property":F.style+" property",c(Be);if(f=="jsonld-keyword")return c(Be);if(Y&&y(m))return F.marked="keyword",c(De);if(f=="[")return c(ve,or,Me("]"),Be);if(f=="spread")return c(Oe,Be);if(m=="*")return F.marked="keyword",c(De);if(f==":")return G(Be)}}function be(f){return f!="variable"?G(Be):(F.marked="property",c(zt))}function Be(f){if(f==":")return c(Oe);if(f=="(")return G(zt)}function Ne(f,m,U){function re(B,ce){if(U?U.indexOf(B)>-1:B==","){var We=F.state.lexical;return We.info=="call"&&(We.pos=(We.pos||0)+1),c(function(it,wt){return it==m||wt==m?G():G(f)},re)}return B==m||ce==m?c():U&&U.indexOf(";")>-1?G(f):c(Me(m))}return function(B,ce){return B==m||ce==m?c():G(f,re)}}function Mt(f,m,U){for(var re=3;re"),Re);if(f=="quasi")return G(ht,It)}function Bn(f){if(f=="=>")return c(Re)}function Se(f){return f.match(/[\}\)\]]/)?c():f==","||f==";"?c(Se):G(Zt,Se)}function Zt(f,m){if(f=="variable"||F.style=="keyword")return F.marked="property",c(Zt);if(m=="?"||f=="number"||f=="string")return c(Zt);if(f==":")return c(Re);if(f=="[")return c(Me("variable"),br,Me("]"),Zt);if(f=="(")return G(ur,Zt);if(!f.match(/[;\}\)\],]/))return c()}function ht(f,m){return f!="quasi"?G():m.slice(m.length-2)!="${"?c(ht):c(Re,Ye)}function Ye(f){if(f=="}")return F.marked="string-2",F.state.tokenize=X,c(ht)}function Qe(f,m){return f=="variable"&&F.stream.match(/^\s*[?:]/,!1)||m=="?"?c(Qe):f==":"?c(Re):f=="spread"?c(Qe):G(Re)}function It(f,m){if(m=="<")return c(le(">"),Ne(Re,">"),xe,It);if(m=="|"||f=="."||m=="&")return c(Re);if(f=="[")return c(Re,Me("]"),It);if(m=="extends"||m=="implements")return F.marked="keyword",c(Re);if(m=="?")return c(Re,Me(":"),Re)}function Ft(f,m){if(m=="<")return c(le(">"),Ne(Re,">"),xe,It)}function Bt(){return G(Re,pt)}function pt(f,m){if(m=="=")return c(Re)}function Er(f,m){return m=="enum"?(F.marked="keyword",c(ye)):G(kt,or,Rt,xi)}function kt(f,m){if(Y&&y(m))return F.marked="keyword",c(kt);if(f=="variable")return C(m),c();if(f=="spread")return c(kt);if(f=="[")return Mt(ln,"]");if(f=="{")return Mt(ar,"}")}function ar(f,m){return f=="variable"&&!F.stream.match(/^\s*:/,!1)?(C(m),c(Rt)):(f=="variable"&&(F.marked="property"),f=="spread"?c(kt):f=="}"?G():f=="["?c(ve,Me("]"),Me(":"),ar):c(Me(":"),kt,Rt))}function ln(){return G(kt,Rt)}function Rt(f,m){if(m=="=")return c(Oe)}function xi(f){if(f==",")return c(Er)}function Or(f,m){if(f=="keyword b"&&m=="else")return c(le("form","else"),Fe,xe)}function Rn(f,m){if(m=="await")return c(Rn);if(f=="(")return c(le(")"),an,xe)}function an(f){return f=="var"?c(Er,sr):f=="variable"?c(sr):G(sr)}function sr(f,m){return f==")"?c():f==";"?c(sr):m=="in"||m=="of"?(F.marked="keyword",c(ve,sr)):G(ve,sr)}function zt(f,m){if(m=="*")return F.marked="keyword",c(zt);if(f=="variable")return C(m),c(zt);if(f=="(")return c(d,le(")"),Ne(Wt,")"),xe,lr,Fe,Te);if(Y&&m=="<")return c(le(">"),Ne(Bt,">"),xe,zt)}function ur(f,m){if(m=="*")return F.marked="keyword",c(ur);if(f=="variable")return C(m),c(ur);if(f=="(")return c(d,le(")"),Ne(Wt,")"),xe,lr,Te);if(Y&&m=="<")return c(le(">"),Ne(Bt,">"),xe,ur)}function Wn(f,m){if(f=="keyword"||f=="variable")return F.marked="type",c(Wn);if(m=="<")return c(le(">"),Ne(Bt,">"),xe)}function Wt(f,m){return m=="@"&&c(ve,Wt),f=="spread"?c(Wt):Y&&y(m)?(F.marked="keyword",c(Wt)):Y&&f=="this"?c(or,Rt):G(kt,or,Rt)}function yi(f,m){return f=="variable"?Pr(f,m):Ht(f,m)}function Pr(f,m){if(f=="variable")return C(m),c(Ht)}function Ht(f,m){if(m=="<")return c(le(">"),Ne(Bt,">"),xe,Ht);if(m=="extends"||m=="implements"||Y&&f==",")return m=="implements"&&(F.marked="keyword"),c(Y?Re:ve,Ht);if(f=="{")return c(le("}"),_t,xe)}function _t(f,m){if(f=="async"||f=="variable"&&(m=="static"||m=="get"||m=="set"||Y&&y(m))&&F.stream.match(/^\s+#?[\w$\xa1-\uffff]/,!1))return F.marked="keyword",c(_t);if(f=="variable"||F.style=="keyword")return F.marked="property",c(kr,_t);if(f=="number"||f=="string")return c(kr,_t);if(f=="[")return c(ve,or,Me("]"),kr,_t);if(m=="*")return F.marked="keyword",c(_t);if(Y&&f=="(")return G(ur,_t);if(f==";"||f==",")return c(_t);if(f=="}")return c();if(m=="@")return c(ve,_t)}function kr(f,m){if(m=="!"||m=="?")return c(kr);if(f==":")return c(Re,Rt);if(m=="=")return c(Oe);var U=F.state.lexical.prev,re=U&&U.info=="interface";return G(re?ur:zt)}function Ir(f,m){return m=="*"?(F.marked="keyword",c(Rr,Me(";"))):m=="default"?(F.marked="keyword",c(ve,Me(";"))):f=="{"?c(Ne(zr,"}"),Rr,Me(";")):G(Fe)}function zr(f,m){if(m=="as")return F.marked="keyword",c(Me("variable"));if(f=="variable")return G(Oe,zr)}function fr(f){return f=="string"?c():f=="("?G(ve):f=="."?G(Pe):G(Br,Gt,Rr)}function Br(f,m){return f=="{"?Mt(Br,"}"):(f=="variable"&&C(m),m=="*"&&(F.marked="keyword"),c(sn))}function Gt(f){if(f==",")return c(Br,Gt)}function sn(f,m){if(m=="as")return F.marked="keyword",c(Br)}function Rr(f,m){if(m=="from")return F.marked="keyword",c(ve)}function Je(f){return f=="]"?c():G(Ne(Oe,"]"))}function ye(){return G(le("form"),kt,Me("{"),le("}"),Ne($t,"}"),xe,xe)}function $t(){return G(kt,Rt)}function un(f,m){return f.lastType=="operator"||f.lastType==","||R.test(m.charAt(0))||/[,.]/.test(m.charAt(0))}function Et(f,m,U){return m.tokenize==M&&/^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\[{}\(,;:]|=>)$/.test(m.lastType)||m.lastType=="quasi"&&/\{\s*$/.test(f.string.slice(0,f.pos-(U||0)))}return{startState:function(f){var m={tokenize:M,lastType:"sof",cc:[],lexical:new J((f||0)-te,0,"block",!1),localVars:_.localVars,context:_.localVars&&new j(null,null,!1),indented:f||0};return _.globalVars&&typeof _.globalVars=="object"&&(m.globalVars=_.globalVars),m},token:function(f,m){if(f.sol()&&(m.lexical.hasOwnProperty("align")||(m.lexical.align=!1),m.indented=f.indentation(),p(f,m)),m.tokenize!=z&&f.eatSpace())return null;var U=m.tokenize(f,m);return ue=="comment"?U:(m.lastType=ue=="operator"&&(O=="++"||O=="--")?"incdec":ue,V(m,U,ue,O,f))},indent:function(f,m){if(f.tokenize==z||f.tokenize==X)return b.Pass;if(f.tokenize!=M)return 0;var U=m&&m.charAt(0),re=f.lexical,B;if(!/^\s*else\b/.test(m))for(var ce=f.cc.length-1;ce>=0;--ce){var We=f.cc[ce];if(We==xe)re=re.prev;else if(We!=Or&&We!=Te)break}for(;(re.type=="stat"||re.type=="form")&&(U=="}"||(B=f.cc[f.cc.length-1])&&(B==Pe||B==_e)&&!/^[,\.=+\-*:?[\(]/.test(m));)re=re.prev;oe&&re.type==")"&&re.prev.type=="stat"&&(re=re.prev);var it=re.type,wt=U==it;return it=="vardef"?re.indented+(f.lastType=="operator"||f.lastType==","?re.info.length+1:0):it=="form"&&U=="{"?re.indented:it=="form"?re.indented+te:it=="stat"?re.indented+(un(f,m)?oe||te:0):re.info=="switch"&&!wt&&_.doubleIndentSwitch!=!1?re.indented+(/^(?:case|default)\b/.test(m)?te:2*te):re.align?re.column+(wt?0:1):re.indented+(wt?0:te)},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:k?null:"/*",blockCommentEnd:k?null:"*/",blockCommentContinue:k?null:" * ",lineComment:k?null:"//",fold:"brace",closeBrackets:"()[]{}''\"\"``",helperType:k?"json":"javascript",jsonldMode:Q,jsonMode:k,expressionAllowed:Et,skipExpression:function(f){V(f,"atom","atom","true",new b.StringStream("",2,null))}}}),b.registerHelper("wordChars","javascript",/[\w$]/),b.defineMIME("text/javascript","javascript"),b.defineMIME("text/ecmascript","javascript"),b.defineMIME("application/javascript","javascript"),b.defineMIME("application/x-javascript","javascript"),b.defineMIME("application/ecmascript","javascript"),b.defineMIME("application/json",{name:"javascript",json:!0}),b.defineMIME("application/x-json",{name:"javascript",json:!0}),b.defineMIME("application/manifest+json",{name:"javascript",json:!0}),b.defineMIME("application/ld+json",{name:"javascript",jsonld:!0}),b.defineMIME("text/typescript",{name:"javascript",typescript:!0}),b.defineMIME("application/typescript",{name:"javascript",typescript:!0})})})()),ba.exports}var wa;function Vu(){return wa||(wa=1,(function(ct,xt){(function(b){b(mt(),Ya(),Qa(),Xa())})(function(b){var pe={script:[["lang",/(javascript|babel)/i,"javascript"],["type",/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i,"javascript"],["type",/./,"text/plain"],[null,null,"javascript"]],style:[["lang",/^css$/i,"css"],["type",/^(text\/)?(x-)?(stylesheet|css)$/i,"css"],["type",/./,"text/plain"],[null,null,"css"]]};function _(ne,S,R){var A=ne.current(),$=A.search(S);return $>-1?ne.backUp(A.length-$):A.match(/<\/?$/)&&(ne.backUp(A.length),ne.match(S,!1)||ne.match(A)),R}var te={};function oe(ne){var S=te[ne];return S||(te[ne]=new RegExp("\\s+"+ne+`\\s*=\\s*('|")?([^'"]+)('|")?\\s*`))}function Q(ne,S){var R=ne.match(oe(S));return R?/^\s*(.*?)\s*$/.exec(R[2])[1]:""}function k(ne,S){return new RegExp((S?"^":"")+"","i")}function I(ne,S){for(var R in ne)for(var A=S[R]||(S[R]=[]),$=ne[R],ue=$.length-1;ue>=0;ue--)A.unshift($[ue])}function Y(ne,S){for(var R=0;R=0;O--)A.script.unshift(["type",ue[O].matches,ue[O].mode]);function w(M,N){var z=R.token(M,N.htmlState),X=/\btag\b/.test(z),q;if(X&&!/[<>\s\/]/.test(M.current())&&(q=N.htmlState.tagName&&N.htmlState.tagName.toLowerCase())&&A.hasOwnProperty(q))N.inTag=q+" ";else if(N.inTag&&X&&/>$/.test(M.current())){var p=/^([\S]+) (.*)/.exec(N.inTag);N.inTag=null;var W=M.current()==">"&&Y(A[p[1]],p[2]),J=b.getMode(ne,W),P=k(p[1],!0),V=k(p[1],!1);N.token=function(F,G){return F.match(P,!1)?(G.token=w,G.localState=G.localMode=null,null):_(F,V,G.localMode.token(F,G.localState))},N.localMode=J,N.localState=b.startState(J,R.indent(N.htmlState,"",""))}else N.inTag&&(N.inTag+=M.current(),M.eol()&&(N.inTag+=" "));return z}return{startState:function(){var M=b.startState(R);return{token:w,inTag:null,localMode:null,localState:null,htmlState:M}},copyState:function(M){var N;return M.localState&&(N=b.copyState(M.localMode,M.localState)),{token:M.token,inTag:M.inTag,localMode:M.localMode,localState:N,htmlState:b.copyState(R,M.htmlState)}},token:function(M,N){return N.token(M,N)},indent:function(M,N,z){return!M.localMode||/^\s*<\//.test(N)?R.indent(M.htmlState,N,z):M.localMode.indent?M.localMode.indent(M.localState,N,z):b.Pass},innerMode:function(M){return{state:M.localState||M.htmlState,mode:M.localMode||R}}}},"xml","javascript","css"),b.defineMIME("text/html","htmlmixed")})})()),ma.exports}Vu();Qa();var Sa={exports:{}},La;function ef(){return La||(La=1,(function(ct,xt){(function(b){b(mt())})(function(b){function pe(I){return new RegExp("^(("+I.join(")|(")+"))\\b")}var _=pe(["and","or","not","is"]),te=["as","assert","break","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","lambda","pass","raise","return","try","while","with","yield","in","False","True"],oe=["abs","all","any","bin","bool","bytearray","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip","__import__","NotImplemented","Ellipsis","__debug__"];b.registerHelper("hintWords","python",te.concat(oe).concat(["exec","print"]));function Q(I){return I.scopes[I.scopes.length-1]}b.defineMode("python",function(I,Y){for(var ne="error",S=Y.delimiters||Y.singleDelimiters||/^[\(\)\[\]\{\}@,:`=;\.\\]/,R=[Y.singleOperators,Y.doubleOperators,Y.doubleDelimiters,Y.tripleDelimiters,Y.operators||/^([-+*/%\/&|^]=?|[<>=]+|\/\/=?|\*\*=?|!=|[~!@]|\.\.\.)/],A=0;Ay?P(C):j0&&F(T,C)&&(de+=" "+ne),de}}return p(T,C)}function p(T,C,g){if(T.eatSpace())return null;if(!g&&T.match(/^#.*/))return"comment";if(T.match(/^[0-9\.]/,!1)){var y=!1;if(T.match(/^[\d_]*\.\d+(e[\+\-]?\d+)?/i)&&(y=!0),T.match(/^[\d_]+\.\d*/)&&(y=!0),T.match(/^\.\d+/)&&(y=!0),y)return T.eat(/J/i),"number";var j=!1;if(T.match(/^0x[0-9a-f_]+/i)&&(j=!0),T.match(/^0b[01_]+/i)&&(j=!0),T.match(/^0o[0-7_]+/i)&&(j=!0),T.match(/^[1-9][\d_]*(e[\+\-]?[\d_]+)?/)&&(T.eat(/J/i),j=!0),T.match(/^0(?![\dx])/i)&&(j=!0),j)return T.eat(/L/i),"number"}if(T.match(N)){var de=T.current().toLowerCase().indexOf("f")!==-1;return de?(C.tokenize=W(T.current(),C.tokenize),C.tokenize(T,C)):(C.tokenize=J(T.current(),C.tokenize),C.tokenize(T,C))}for(var v=0;v=0;)T=T.substr(1);var g=T.length==1,y="string";function j(v){return function(d,fe){var Te=p(d,fe,!0);return Te=="punctuation"&&(d.current()=="{"?fe.tokenize=j(v+1):d.current()=="}"&&(v>1?fe.tokenize=j(v-1):fe.tokenize=de)),Te}}function de(v,d){for(;!v.eol();)if(v.eatWhile(/[^'"\{\}\\]/),v.eat("\\")){if(v.next(),g&&v.eol())return y}else{if(v.match(T))return d.tokenize=C,y;if(v.match("{{"))return y;if(v.match("{",!1))return d.tokenize=j(0),v.current()?y:d.tokenize(v,d);if(v.match("}}"))return y;if(v.match("}"))return ne;v.eat(/['"]/)}if(g){if(Y.singleLineStringErrors)return ne;d.tokenize=C}return y}return de.isString=!0,de}function J(T,C){for(;"rubf".indexOf(T.charAt(0).toLowerCase())>=0;)T=T.substr(1);var g=T.length==1,y="string";function j(de,v){for(;!de.eol();)if(de.eatWhile(/[^'"\\]/),de.eat("\\")){if(de.next(),g&&de.eol())return y}else{if(de.match(T))return v.tokenize=C,y;de.eat(/['"]/)}if(g){if(Y.singleLineStringErrors)return ne;v.tokenize=C}return y}return j.isString=!0,j}function P(T){for(;Q(T).type!="py";)T.scopes.pop();T.scopes.push({offset:Q(T).offset+I.indentUnit,type:"py",align:null})}function V(T,C,g){var y=T.match(/^[\s\[\{\(]*(?:#|$)/,!1)?null:T.column()+1;C.scopes.push({offset:C.indent+$,type:g,align:y})}function F(T,C){for(var g=T.indentation();C.scopes.length>1&&Q(C).offset>g;){if(Q(C).type!="py")return!0;C.scopes.pop()}return Q(C).offset!=g}function G(T,C){T.sol()&&(C.beginningOfLine=!0,C.dedent=!1);var g=C.tokenize(T,C),y=T.current();if(C.beginningOfLine&&y=="@")return T.match(M,!1)?"meta":w?"operator":ne;if(/\S/.test(y)&&(C.beginningOfLine=!1),(g=="variable"||g=="builtin")&&C.lastToken=="meta"&&(g="meta"),(y=="pass"||y=="return")&&(C.dedent=!0),y=="lambda"&&(C.lambda=!0),y==":"&&!C.lambda&&Q(C).type=="py"&&T.match(/^\s*(?:#|$)/,!1)&&P(C),y.length==1&&!/string|comment/.test(g)){var j="[({".indexOf(y);if(j!=-1&&V(T,C,"])}".slice(j,j+1)),j="])}".indexOf(y),j!=-1)if(Q(C).type==y)C.indent=C.scopes.pop().offset-$;else return ne}return C.dedent&&T.eol()&&Q(C).type=="py"&&C.scopes.length>1&&C.scopes.pop(),g}var c={startState:function(T){return{tokenize:q,scopes:[{offset:T||0,type:"py",align:null}],indent:T||0,lastToken:null,lambda:!1,dedent:0}},token:function(T,C){var g=C.errorToken;g&&(C.errorToken=!1);var y=G(T,C);return y&&y!="comment"&&(C.lastToken=y=="keyword"||y=="punctuation"?T.current():y),y=="punctuation"&&(y=null),T.eol()&&C.lambda&&(C.lambda=!1),g?y+" "+ne:y},indent:function(T,C){if(T.tokenize!=q)return T.tokenize.isString?b.Pass:0;var g=Q(T),y=g.type==C.charAt(0)||g.type=="py"&&!T.dedent&&/^(else:|elif |except |finally:)/.test(C);return g.align!=null?g.align-(y?1:0):g.offset-(y?$:0)},electricInput:/^\s*([\}\]\)]|else:|elif |except |finally:)$/,closeBrackets:{triples:`'"`},lineComment:"#",fold:"indent"};return c}),b.defineMIME("text/x-python","python");var k=function(I){return I.split(" ")};b.defineMIME("text/x-cython",{name:"python",extra_keywords:k("by cdef cimport cpdef ctypedef enum except extern gil include nogil property public readonly struct union DEF IF ELIF ELSE")})})})()),Sa.exports}ef();var Ta={exports:{}},Ca;function tf(){return Ca||(Ca=1,(function(ct,xt){(function(b){b(mt())})(function(b){function pe(g,y,j,de,v,d){this.indented=g,this.column=y,this.type=j,this.info=de,this.align=v,this.prev=d}function _(g,y,j,de){var v=g.indented;return g.context&&g.context.type=="statement"&&j!="statement"&&(v=g.context.indented),g.context=new pe(v,y,j,de,null,g.context)}function te(g){var y=g.context.type;return(y==")"||y=="]"||y=="}")&&(g.indented=g.context.indented),g.context=g.context.prev}function oe(g,y,j){if(y.prevToken=="variable"||y.prevToken=="type"||/\S(?:[^- ]>|[*\]])\s*$|\*$/.test(g.string.slice(0,j))||y.typeAtEndOfLine&&g.column()==g.indentation())return!0}function Q(g){for(;;){if(!g||g.type=="top")return!0;if(g.type=="}"&&g.prev.info!="namespace")return!1;g=g.prev}}b.defineMode("clike",function(g,y){var j=g.indentUnit,de=y.statementIndentUnit||j,v=y.dontAlignCalls,d=y.keywords||{},fe=y.types||{},Te=y.builtin||{},le=y.blockKeywords||{},xe=y.defKeywords||{},Me=y.atoms||{},Fe=y.hooks||{},Ce=y.multiLineStrings,ve=y.indentStatements!==!1,Oe=y.indentSwitch!==!1,qe=y.namespaceSeparator,$e=y.isPunctuationChar||/[\[\]{}\(\),;\:\.]/,dt=y.numberStart||/[\d\.]/,Pe=y.number||/^(?:0x[a-f\d]+|0b[01]+|(?:\d+\.?\d*|\.\d+)(?:e[-+]?\d+)?)(u|ll?|l|f)?/i,_e=y.isOperatorChar||/[+\-*&%=<>!?|\/]/,Ue=y.isIdentifierChar||/[\w\$_\xa1-\uffff]/,et=y.isReservedIdentifier||!1,we,Ie;function E(me,De){var be=me.next();if(Fe[be]){var Be=Fe[be](me,De);if(Be!==!1)return Be}if(be=='"'||be=="'")return De.tokenize=ee(be),De.tokenize(me,De);if(dt.test(be)){if(me.backUp(1),me.match(Pe))return"number";me.next()}if($e.test(be))return we=be,null;if(be=="/"){if(me.eat("*"))return De.tokenize=K,K(me,De);if(me.eat("/"))return me.skipToEnd(),"comment"}if(_e.test(be)){for(;!me.match(/^\/[\/*]/,!1)&&me.eat(_e););return"operator"}if(me.eatWhile(Ue),qe)for(;me.match(qe);)me.eatWhile(Ue);var Ne=me.current();return I(d,Ne)?(I(le,Ne)&&(we="newstatement"),I(xe,Ne)&&(Ie=!0),"keyword"):I(fe,Ne)?"type":I(Te,Ne)||et&&et(Ne)?(I(le,Ne)&&(we="newstatement"),"builtin"):I(Me,Ne)?"atom":"variable"}function ee(me){return function(De,be){for(var Be=!1,Ne,Mt=!1;(Ne=De.next())!=null;){if(Ne==me&&!Be){Mt=!0;break}Be=!Be&&Ne=="\\"}return(Mt||!(Be||Ce))&&(be.tokenize=null),"string"}}function K(me,De){for(var be=!1,Be;Be=me.next();){if(Be=="/"&&be){De.tokenize=null;break}be=Be=="*"}return"comment"}function ze(me,De){y.typeFirstDefinitions&&me.eol()&&Q(De.context)&&(De.typeAtEndOfLine=oe(me,De,me.pos))}return{startState:function(me){return{tokenize:null,context:new pe((me||0)-j,0,"top",null,!1),indented:0,startOfLine:!0,prevToken:null}},token:function(me,De){var be=De.context;if(me.sol()&&(be.align==null&&(be.align=!1),De.indented=me.indentation(),De.startOfLine=!0),me.eatSpace())return ze(me,De),null;we=Ie=null;var Be=(De.tokenize||E)(me,De);if(Be=="comment"||Be=="meta")return Be;if(be.align==null&&(be.align=!0),we==";"||we==":"||we==","&&me.match(/^\s*(?:\/\/.*)?$/,!1))for(;De.context.type=="statement";)te(De);else if(we=="{")_(De,me.column(),"}");else if(we=="[")_(De,me.column(),"]");else if(we=="(")_(De,me.column(),")");else if(we=="}"){for(;be.type=="statement";)be=te(De);for(be.type=="}"&&(be=te(De));be.type=="statement";)be=te(De)}else we==be.type?te(De):ve&&((be.type=="}"||be.type=="top")&&we!=";"||be.type=="statement"&&we=="newstatement")&&_(De,me.column(),"statement",me.current());if(Be=="variable"&&(De.prevToken=="def"||y.typeFirstDefinitions&&oe(me,De,me.start)&&Q(De.context)&&me.match(/^\s*\(/,!1))&&(Be="def"),Fe.token){var Ne=Fe.token(me,De,Be);Ne!==void 0&&(Be=Ne)}return Be=="def"&&y.styleDefs===!1&&(Be="variable"),De.startOfLine=!1,De.prevToken=Ie?"def":Be||we,ze(me,De),Be},indent:function(me,De){if(me.tokenize!=E&&me.tokenize!=null||me.typeAtEndOfLine&&Q(me.context))return b.Pass;var be=me.context,Be=De&&De.charAt(0),Ne=Be==be.type;if(be.type=="statement"&&Be=="}"&&(be=be.prev),y.dontIndentStatements)for(;be.type=="statement"&&y.dontIndentStatements.test(be.info);)be=be.prev;if(Fe.indent){var Mt=Fe.indent(me,be,De,j);if(typeof Mt=="number")return Mt}var Pt=be.prev&&be.prev.info=="switch";if(y.allmanIndentation&&/[{(]/.test(Be)){for(;be.type!="top"&&be.type!="}";)be=be.prev;return be.indented}return be.type=="statement"?be.indented+(Be=="{"?0:de):be.align&&(!v||be.type!=")")?be.column+(Ne?0:1):be.type==")"&&!Ne?be.indented+de:be.indented+(Ne?0:j)+(!Ne&&Pt&&!/^(?:case|default)\b/.test(De)?j:0)},electricInput:Oe?/^\s*(?:case .*?:|default:|\{\}?|\})$/:/^\s*[{}]$/,blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * ",lineComment:"//",fold:"brace"}});function k(g){for(var y={},j=g.split(" "),de=0;de!?|\/#:@]/,hooks:{"@":function(g){return g.eatWhile(/[\w\$_]/),"meta"},'"':function(g,y){return g.match('""')?(y.tokenize=F,y.tokenize(g,y)):!1},"'":function(g){return g.match(/^(\\[^'\s]+|[^\\'])'/)?"string-2":(g.eatWhile(/[\w\$_\xa1-\uffff]/),"atom")},"=":function(g,y){var j=y.context;return j.type=="}"&&j.align&&g.eat(">")?(y.context=new pe(j.indented,j.column,j.type,j.info,null,j.prev),"operator"):!1},"/":function(g,y){return g.eat("*")?(y.tokenize=G(1),y.tokenize(g,y)):!1}},modeProps:{closeBrackets:{pairs:'()[]{}""',triples:'"'}}});function c(g){return function(y,j){for(var de=!1,v,d=!1;!y.eol();){if(!g&&!de&&y.match('"')){d=!0;break}if(g&&y.match('"""')){d=!0;break}v=y.next(),!de&&v=="$"&&y.match("{")&&y.skipTo("}"),de=!de&&v=="\\"&&!g}return(d||!g)&&(j.tokenize=null),"string"}}V("text/x-kotlin",{name:"clike",keywords:k("package as typealias class interface this super val operator var fun for is in This throw return annotation break continue object if else while do try when !in !is as? file import where by get set abstract enum open inner override private public internal protected catch finally out final vararg reified dynamic companion constructor init sealed field property receiver param sparam lateinit data inline noinline tailrec external annotation crossinline const operator infix suspend actual expect setparam value"),types:k("Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void Annotation Any BooleanArray ByteArray Char CharArray DeprecationLevel DoubleArray Enum FloatArray Function Int IntArray Lazy LazyThreadSafetyMode LongArray Nothing ShortArray Unit"),intendSwitch:!1,indentStatements:!1,multiLineStrings:!0,number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+(\.\d+)?|\.\d+)(?:e[-+]?[\d_]+)?)(u|ll?|l|f)?/i,blockKeywords:k("catch class do else finally for if where try while enum"),defKeywords:k("class val var object interface fun"),atoms:k("true false null this"),hooks:{"@":function(g){return g.eatWhile(/[\w\$_]/),"meta"},"*":function(g,y){return y.prevToken=="."?"variable":"operator"},'"':function(g,y){return y.tokenize=c(g.match('""')),y.tokenize(g,y)},"/":function(g,y){return g.eat("*")?(y.tokenize=G(1),y.tokenize(g,y)):!1},indent:function(g,y,j,de){var v=j&&j.charAt(0);if((g.prevToken=="}"||g.prevToken==")")&&j=="")return g.indented;if(g.prevToken=="operator"&&j!="}"&&g.context.type!="}"||g.prevToken=="variable"&&v=="."||(g.prevToken=="}"||g.prevToken==")")&&v==".")return de*2+y.indented;if(y.align&&y.type=="}")return y.indented+(g.context.type==(j||"").charAt(0)?0:de)}},modeProps:{closeBrackets:{triples:'"'}}}),V(["x-shader/x-vertex","x-shader/x-fragment"],{name:"clike",keywords:k("sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadow const attribute uniform varying break continue discard return for while do if else struct in out inout"),types:k("float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4"),blockKeywords:k("for while do if else struct"),builtin:k("radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smoothstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4"),atoms:k("true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_PointCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TextureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers"),indentSwitch:!1,hooks:{"#":N},modeProps:{fold:["brace","include"]}}),V("text/x-nesc",{name:"clike",keywords:k(Y+" as atomic async call command component components configuration event generic implementation includes interface module new norace nx_struct nx_union post provides signal task uses abstract extends"),types:ue,blockKeywords:k(w),atoms:k("null true false"),hooks:{"#":N},modeProps:{fold:["brace","include"]}}),V("text/x-objectivec",{name:"clike",keywords:k(Y+" "+S),types:O,builtin:k(R),blockKeywords:k(w+" @synthesize @try @catch @finally @autoreleasepool @synchronized"),defKeywords:k(M+" @interface @implementation @protocol @class"),dontIndentStatements:/^@.*$/,typeFirstDefinitions:!0,atoms:k("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:X,hooks:{"#":N,"*":z},modeProps:{fold:["brace","include"]}}),V("text/x-objectivec++",{name:"clike",keywords:k(Y+" "+S+" "+ne),types:O,builtin:k(R),blockKeywords:k(w+" @synthesize @try @catch @finally @autoreleasepool @synchronized class try catch"),defKeywords:k(M+" @interface @implementation @protocol @class class namespace"),dontIndentStatements:/^@.*$|^template$/,typeFirstDefinitions:!0,atoms:k("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:X,hooks:{"#":N,"*":z,u:p,U:p,L:p,R:p,0:q,1:q,2:q,3:q,4:q,5:q,6:q,7:q,8:q,9:q,token:function(g,y,j){if(j=="variable"&&g.peek()=="("&&(y.prevToken==";"||y.prevToken==null||y.prevToken=="}")&&W(g.current()))return"def"}},namespaceSeparator:"::",modeProps:{fold:["brace","include"]}}),V("text/x-squirrel",{name:"clike",keywords:k("base break clone continue const default delete enum extends function in class foreach local resume return this throw typeof yield constructor instanceof static"),types:ue,blockKeywords:k("case catch class else for foreach if switch try while"),defKeywords:k("function local class"),typeFirstDefinitions:!0,atoms:k("true false null"),hooks:{"#":N},modeProps:{fold:["brace","include"]}});var T=null;function C(g){return function(y,j){for(var de=!1,v,d=!1;!y.eol();){if(!de&&y.match('"')&&(g=="single"||y.match('""'))){d=!0;break}if(!de&&y.match("``")){T=C(g),d=!0;break}v=y.next(),de=g=="single"&&!de&&v=="\\"}return d&&(j.tokenize=null),"string"}}V("text/x-ceylon",{name:"clike",keywords:k("abstracts alias assembly assert assign break case catch class continue dynamic else exists extends finally for function given if import in interface is let module new nonempty object of out outer package return satisfies super switch then this throw try value void while"),types:function(g){var y=g.charAt(0);return y===y.toUpperCase()&&y!==y.toLowerCase()},blockKeywords:k("case catch class dynamic else finally for function if interface module new object switch try while"),defKeywords:k("class dynamic function interface module object package value"),builtin:k("abstract actual aliased annotation by default deprecated doc final formal late license native optional sealed see serializable shared suppressWarnings tagged throws variable"),isPunctuationChar:/[\[\]{}\(\),;\:\.`]/,isOperatorChar:/[+\-*&%=<>!?|^~:\/]/,numberStart:/[\d#$]/,number:/^(?:#[\da-fA-F_]+|\$[01_]+|[\d_]+[kMGTPmunpf]?|[\d_]+\.[\d_]+(?:[eE][-+]?\d+|[kMGTPmunpf]|)|)/i,multiLineStrings:!0,typeFirstDefinitions:!0,atoms:k("true false null larger smaller equal empty finished"),indentSwitch:!1,styleDefs:!1,hooks:{"@":function(g){return g.eatWhile(/[\w\$_]/),"meta"},'"':function(g,y){return y.tokenize=C(g.match('""')?"triple":"single"),y.tokenize(g,y)},"`":function(g,y){return!T||!g.match("`")?!1:(y.tokenize=T,T=null,y.tokenize(g,y))},"'":function(g){return g.eatWhile(/[\w\$_\xa1-\uffff]/),"atom"},token:function(g,y,j){if((j=="variable"||j=="type")&&y.prevToken==".")return"variable-2"}},modeProps:{fold:["brace","import"],closeBrackets:{triples:'"'}}})})})()),Ta.exports}tf();var Da={exports:{}},Ma={exports:{}},Fa;function rf(){return Fa||(Fa=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.modeInfo=[{name:"APL",mime:"text/apl",mode:"apl",ext:["dyalog","apl"]},{name:"PGP",mimes:["application/pgp","application/pgp-encrypted","application/pgp-keys","application/pgp-signature"],mode:"asciiarmor",ext:["asc","pgp","sig"]},{name:"ASN.1",mime:"text/x-ttcn-asn",mode:"asn.1",ext:["asn","asn1"]},{name:"Asterisk",mime:"text/x-asterisk",mode:"asterisk",file:/^extensions\.conf$/i},{name:"Brainfuck",mime:"text/x-brainfuck",mode:"brainfuck",ext:["b","bf"]},{name:"C",mime:"text/x-csrc",mode:"clike",ext:["c","h","ino"]},{name:"C++",mime:"text/x-c++src",mode:"clike",ext:["cpp","c++","cc","cxx","hpp","h++","hh","hxx"],alias:["cpp"]},{name:"Cobol",mime:"text/x-cobol",mode:"cobol",ext:["cob","cpy","cbl"]},{name:"C#",mime:"text/x-csharp",mode:"clike",ext:["cs"],alias:["csharp","cs"]},{name:"Clojure",mime:"text/x-clojure",mode:"clojure",ext:["clj","cljc","cljx"]},{name:"ClojureScript",mime:"text/x-clojurescript",mode:"clojure",ext:["cljs"]},{name:"Closure Stylesheets (GSS)",mime:"text/x-gss",mode:"css",ext:["gss"]},{name:"CMake",mime:"text/x-cmake",mode:"cmake",ext:["cmake","cmake.in"],file:/^CMakeLists\.txt$/},{name:"CoffeeScript",mimes:["application/vnd.coffeescript","text/coffeescript","text/x-coffeescript"],mode:"coffeescript",ext:["coffee"],alias:["coffee","coffee-script"]},{name:"Common Lisp",mime:"text/x-common-lisp",mode:"commonlisp",ext:["cl","lisp","el"],alias:["lisp"]},{name:"Cypher",mime:"application/x-cypher-query",mode:"cypher",ext:["cyp","cypher"]},{name:"Cython",mime:"text/x-cython",mode:"python",ext:["pyx","pxd","pxi"]},{name:"Crystal",mime:"text/x-crystal",mode:"crystal",ext:["cr"]},{name:"CSS",mime:"text/css",mode:"css",ext:["css"]},{name:"CQL",mime:"text/x-cassandra",mode:"sql",ext:["cql"]},{name:"D",mime:"text/x-d",mode:"d",ext:["d"]},{name:"Dart",mimes:["application/dart","text/x-dart"],mode:"dart",ext:["dart"]},{name:"diff",mime:"text/x-diff",mode:"diff",ext:["diff","patch"]},{name:"Django",mime:"text/x-django",mode:"django"},{name:"Dockerfile",mime:"text/x-dockerfile",mode:"dockerfile",file:/^Dockerfile$/},{name:"DTD",mime:"application/xml-dtd",mode:"dtd",ext:["dtd"]},{name:"Dylan",mime:"text/x-dylan",mode:"dylan",ext:["dylan","dyl","intr"]},{name:"EBNF",mime:"text/x-ebnf",mode:"ebnf"},{name:"ECL",mime:"text/x-ecl",mode:"ecl",ext:["ecl"]},{name:"edn",mime:"application/edn",mode:"clojure",ext:["edn"]},{name:"Eiffel",mime:"text/x-eiffel",mode:"eiffel",ext:["e"]},{name:"Elm",mime:"text/x-elm",mode:"elm",ext:["elm"]},{name:"Embedded JavaScript",mime:"application/x-ejs",mode:"htmlembedded",ext:["ejs"]},{name:"Embedded Ruby",mime:"application/x-erb",mode:"htmlembedded",ext:["erb"]},{name:"Erlang",mime:"text/x-erlang",mode:"erlang",ext:["erl"]},{name:"Esper",mime:"text/x-esper",mode:"sql"},{name:"Factor",mime:"text/x-factor",mode:"factor",ext:["factor"]},{name:"FCL",mime:"text/x-fcl",mode:"fcl"},{name:"Forth",mime:"text/x-forth",mode:"forth",ext:["forth","fth","4th"]},{name:"Fortran",mime:"text/x-fortran",mode:"fortran",ext:["f","for","f77","f90","f95"]},{name:"F#",mime:"text/x-fsharp",mode:"mllike",ext:["fs"],alias:["fsharp"]},{name:"Gas",mime:"text/x-gas",mode:"gas",ext:["s"]},{name:"Gherkin",mime:"text/x-feature",mode:"gherkin",ext:["feature"]},{name:"GitHub Flavored Markdown",mime:"text/x-gfm",mode:"gfm",file:/^(readme|contributing|history)\.md$/i},{name:"Go",mime:"text/x-go",mode:"go",ext:["go"]},{name:"Groovy",mime:"text/x-groovy",mode:"groovy",ext:["groovy","gradle"],file:/^Jenkinsfile$/},{name:"HAML",mime:"text/x-haml",mode:"haml",ext:["haml"]},{name:"Haskell",mime:"text/x-haskell",mode:"haskell",ext:["hs"]},{name:"Haskell (Literate)",mime:"text/x-literate-haskell",mode:"haskell-literate",ext:["lhs"]},{name:"Haxe",mime:"text/x-haxe",mode:"haxe",ext:["hx"]},{name:"HXML",mime:"text/x-hxml",mode:"haxe",ext:["hxml"]},{name:"ASP.NET",mime:"application/x-aspx",mode:"htmlembedded",ext:["aspx"],alias:["asp","aspx"]},{name:"HTML",mime:"text/html",mode:"htmlmixed",ext:["html","htm","handlebars","hbs"],alias:["xhtml"]},{name:"HTTP",mime:"message/http",mode:"http"},{name:"IDL",mime:"text/x-idl",mode:"idl",ext:["pro"]},{name:"Pug",mime:"text/x-pug",mode:"pug",ext:["jade","pug"],alias:["jade"]},{name:"Java",mime:"text/x-java",mode:"clike",ext:["java"]},{name:"Java Server Pages",mime:"application/x-jsp",mode:"htmlembedded",ext:["jsp"],alias:["jsp"]},{name:"JavaScript",mimes:["text/javascript","text/ecmascript","application/javascript","application/x-javascript","application/ecmascript"],mode:"javascript",ext:["js"],alias:["ecmascript","js","node"]},{name:"JSON",mimes:["application/json","application/x-json"],mode:"javascript",ext:["json","map"],alias:["json5"]},{name:"JSON-LD",mime:"application/ld+json",mode:"javascript",ext:["jsonld"],alias:["jsonld"]},{name:"JSX",mime:"text/jsx",mode:"jsx",ext:["jsx"]},{name:"Jinja2",mime:"text/jinja2",mode:"jinja2",ext:["j2","jinja","jinja2"]},{name:"Julia",mime:"text/x-julia",mode:"julia",ext:["jl"],alias:["jl"]},{name:"Kotlin",mime:"text/x-kotlin",mode:"clike",ext:["kt"]},{name:"LESS",mime:"text/x-less",mode:"css",ext:["less"]},{name:"LiveScript",mime:"text/x-livescript",mode:"livescript",ext:["ls"],alias:["ls"]},{name:"Lua",mime:"text/x-lua",mode:"lua",ext:["lua"]},{name:"Markdown",mime:"text/x-markdown",mode:"markdown",ext:["markdown","md","mkd"]},{name:"mIRC",mime:"text/mirc",mode:"mirc"},{name:"MariaDB SQL",mime:"text/x-mariadb",mode:"sql"},{name:"Mathematica",mime:"text/x-mathematica",mode:"mathematica",ext:["m","nb","wl","wls"]},{name:"Modelica",mime:"text/x-modelica",mode:"modelica",ext:["mo"]},{name:"MUMPS",mime:"text/x-mumps",mode:"mumps",ext:["mps"]},{name:"MS SQL",mime:"text/x-mssql",mode:"sql"},{name:"mbox",mime:"application/mbox",mode:"mbox",ext:["mbox"]},{name:"MySQL",mime:"text/x-mysql",mode:"sql"},{name:"Nginx",mime:"text/x-nginx-conf",mode:"nginx",file:/nginx.*\.conf$/i},{name:"NSIS",mime:"text/x-nsis",mode:"nsis",ext:["nsh","nsi"]},{name:"NTriples",mimes:["application/n-triples","application/n-quads","text/n-triples"],mode:"ntriples",ext:["nt","nq"]},{name:"Objective-C",mime:"text/x-objectivec",mode:"clike",ext:["m"],alias:["objective-c","objc"]},{name:"Objective-C++",mime:"text/x-objectivec++",mode:"clike",ext:["mm"],alias:["objective-c++","objc++"]},{name:"OCaml",mime:"text/x-ocaml",mode:"mllike",ext:["ml","mli","mll","mly"]},{name:"Octave",mime:"text/x-octave",mode:"octave",ext:["m"]},{name:"Oz",mime:"text/x-oz",mode:"oz",ext:["oz"]},{name:"Pascal",mime:"text/x-pascal",mode:"pascal",ext:["p","pas"]},{name:"PEG.js",mime:"null",mode:"pegjs",ext:["jsonld"]},{name:"Perl",mime:"text/x-perl",mode:"perl",ext:["pl","pm"]},{name:"PHP",mimes:["text/x-php","application/x-httpd-php","application/x-httpd-php-open"],mode:"php",ext:["php","php3","php4","php5","php7","phtml"]},{name:"Pig",mime:"text/x-pig",mode:"pig",ext:["pig"]},{name:"Plain Text",mime:"text/plain",mode:"null",ext:["txt","text","conf","def","list","log"]},{name:"PLSQL",mime:"text/x-plsql",mode:"sql",ext:["pls"]},{name:"PostgreSQL",mime:"text/x-pgsql",mode:"sql"},{name:"PowerShell",mime:"application/x-powershell",mode:"powershell",ext:["ps1","psd1","psm1"]},{name:"Properties files",mime:"text/x-properties",mode:"properties",ext:["properties","ini","in"],alias:["ini","properties"]},{name:"ProtoBuf",mime:"text/x-protobuf",mode:"protobuf",ext:["proto"]},{name:"Python",mime:"text/x-python",mode:"python",ext:["BUILD","bzl","py","pyw"],file:/^(BUCK|BUILD)$/},{name:"Puppet",mime:"text/x-puppet",mode:"puppet",ext:["pp"]},{name:"Q",mime:"text/x-q",mode:"q",ext:["q"]},{name:"R",mime:"text/x-rsrc",mode:"r",ext:["r","R"],alias:["rscript"]},{name:"reStructuredText",mime:"text/x-rst",mode:"rst",ext:["rst"],alias:["rst"]},{name:"RPM Changes",mime:"text/x-rpm-changes",mode:"rpm"},{name:"RPM Spec",mime:"text/x-rpm-spec",mode:"rpm",ext:["spec"]},{name:"Ruby",mime:"text/x-ruby",mode:"ruby",ext:["rb"],alias:["jruby","macruby","rake","rb","rbx"]},{name:"Rust",mime:"text/x-rustsrc",mode:"rust",ext:["rs"]},{name:"SAS",mime:"text/x-sas",mode:"sas",ext:["sas"]},{name:"Sass",mime:"text/x-sass",mode:"sass",ext:["sass"]},{name:"Scala",mime:"text/x-scala",mode:"clike",ext:["scala"]},{name:"Scheme",mime:"text/x-scheme",mode:"scheme",ext:["scm","ss"]},{name:"SCSS",mime:"text/x-scss",mode:"css",ext:["scss"]},{name:"Shell",mimes:["text/x-sh","application/x-sh"],mode:"shell",ext:["sh","ksh","bash"],alias:["bash","sh","zsh"],file:/^PKGBUILD$/},{name:"Sieve",mime:"application/sieve",mode:"sieve",ext:["siv","sieve"]},{name:"Slim",mimes:["text/x-slim","application/x-slim"],mode:"slim",ext:["slim"]},{name:"Smalltalk",mime:"text/x-stsrc",mode:"smalltalk",ext:["st"]},{name:"Smarty",mime:"text/x-smarty",mode:"smarty",ext:["tpl"]},{name:"Solr",mime:"text/x-solr",mode:"solr"},{name:"SML",mime:"text/x-sml",mode:"mllike",ext:["sml","sig","fun","smackspec"]},{name:"Soy",mime:"text/x-soy",mode:"soy",ext:["soy"],alias:["closure template"]},{name:"SPARQL",mime:"application/sparql-query",mode:"sparql",ext:["rq","sparql"],alias:["sparul"]},{name:"Spreadsheet",mime:"text/x-spreadsheet",mode:"spreadsheet",alias:["excel","formula"]},{name:"SQL",mime:"text/x-sql",mode:"sql",ext:["sql"]},{name:"SQLite",mime:"text/x-sqlite",mode:"sql"},{name:"Squirrel",mime:"text/x-squirrel",mode:"clike",ext:["nut"]},{name:"Stylus",mime:"text/x-styl",mode:"stylus",ext:["styl"]},{name:"Swift",mime:"text/x-swift",mode:"swift",ext:["swift"]},{name:"sTeX",mime:"text/x-stex",mode:"stex"},{name:"LaTeX",mime:"text/x-latex",mode:"stex",ext:["text","ltx","tex"],alias:["tex"]},{name:"SystemVerilog",mime:"text/x-systemverilog",mode:"verilog",ext:["v","sv","svh"]},{name:"Tcl",mime:"text/x-tcl",mode:"tcl",ext:["tcl"]},{name:"Textile",mime:"text/x-textile",mode:"textile",ext:["textile"]},{name:"TiddlyWiki",mime:"text/x-tiddlywiki",mode:"tiddlywiki"},{name:"Tiki wiki",mime:"text/tiki",mode:"tiki"},{name:"TOML",mime:"text/x-toml",mode:"toml",ext:["toml"]},{name:"Tornado",mime:"text/x-tornado",mode:"tornado"},{name:"troff",mime:"text/troff",mode:"troff",ext:["1","2","3","4","5","6","7","8","9"]},{name:"TTCN",mime:"text/x-ttcn",mode:"ttcn",ext:["ttcn","ttcn3","ttcnpp"]},{name:"TTCN_CFG",mime:"text/x-ttcn-cfg",mode:"ttcn-cfg",ext:["cfg"]},{name:"Turtle",mime:"text/turtle",mode:"turtle",ext:["ttl"]},{name:"TypeScript",mime:"application/typescript",mode:"javascript",ext:["ts"],alias:["ts"]},{name:"TypeScript-JSX",mime:"text/typescript-jsx",mode:"jsx",ext:["tsx"],alias:["tsx"]},{name:"Twig",mime:"text/x-twig",mode:"twig"},{name:"Web IDL",mime:"text/x-webidl",mode:"webidl",ext:["webidl"]},{name:"VB.NET",mime:"text/x-vb",mode:"vb",ext:["vb"]},{name:"VBScript",mime:"text/vbscript",mode:"vbscript",ext:["vbs"]},{name:"Velocity",mime:"text/velocity",mode:"velocity",ext:["vtl"]},{name:"Verilog",mime:"text/x-verilog",mode:"verilog",ext:["v"]},{name:"VHDL",mime:"text/x-vhdl",mode:"vhdl",ext:["vhd","vhdl"]},{name:"Vue.js Component",mimes:["script/x-vue","text/x-vue"],mode:"vue",ext:["vue"]},{name:"XML",mimes:["application/xml","text/xml"],mode:"xml",ext:["xml","xsl","xsd","svg"],alias:["rss","wsdl","xsd"]},{name:"XQuery",mime:"application/xquery",mode:"xquery",ext:["xy","xquery"]},{name:"Yacas",mime:"text/x-yacas",mode:"yacas",ext:["ys"]},{name:"YAML",mimes:["text/x-yaml","text/yaml"],mode:"yaml",ext:["yaml","yml"],alias:["yml"]},{name:"Z80",mime:"text/x-z80",mode:"z80",ext:["z80"]},{name:"mscgen",mime:"text/x-mscgen",mode:"mscgen",ext:["mscgen","mscin","msc"]},{name:"xu",mime:"text/x-xu",mode:"mscgen",ext:["xu"]},{name:"msgenny",mime:"text/x-msgenny",mode:"mscgen",ext:["msgenny"]},{name:"WebAssembly",mime:"text/webassembly",mode:"wast",ext:["wat","wast"]}];for(var pe=0;pe-1&&te.substring(k+1,te.length);if(I)return b.findModeByExtension(I)},b.findModeByName=function(te){te=te.toLowerCase();for(var oe=0;oe` "'(~:]+/,ue=/^(~~~+|```+)[ \t]*([\w\/+#-]*)[^\n`]*$/,O=/^\s*\[[^\]]+?\]:.*$/,w=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u0AF0\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E42\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC9\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDF3C-\uDF3E]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]/,M=" ";function N(v,d,fe){return d.f=d.inline=fe,fe(v,d)}function z(v,d,fe){return d.f=d.block=fe,fe(v,d)}function X(v){return!v||!/\S/.test(v.string)}function q(v){if(v.linkTitle=!1,v.linkHref=!1,v.linkText=!1,v.em=!1,v.strong=!1,v.strikethrough=!1,v.quote=0,v.indentedCode=!1,v.f==W){var d=oe;if(!d){var fe=b.innerMode(te,v.htmlState);d=fe.mode.name=="xml"&&fe.state.tagStart===null&&!fe.state.context&&fe.state.tokenize.isInText}d&&(v.f=F,v.block=p,v.htmlState=null)}return v.trailingSpace=0,v.trailingSpaceNewLine=!1,v.prevLine=v.thisLine,v.thisLine={stream:null},null}function p(v,d){var fe=v.column()===d.indentation,Te=X(d.prevLine.stream),le=d.indentedCode,xe=d.prevLine.hr,Me=d.list!==!1,Fe=(d.listStack[d.listStack.length-1]||0)+3;d.indentedCode=!1;var Ce=d.indentation;if(d.indentationDiff===null&&(d.indentationDiff=d.indentation,Me)){for(d.list=null;Ce=4&&(le||d.prevLine.fencedCodeEnd||d.prevLine.header||Te))return v.skipToEnd(),d.indentedCode=!0,k.code;if(v.eatSpace())return null;if(fe&&d.indentation<=Fe&&(qe=v.match(R))&&qe[1].length<=6)return d.quote=0,d.header=qe[1].length,d.thisLine.header=!0,_.highlightFormatting&&(d.formatting="header"),d.f=d.inline,P(d);if(d.indentation<=Fe&&v.eat(">"))return d.quote=fe?1:d.quote+1,_.highlightFormatting&&(d.formatting="quote"),v.eatSpace(),P(d);if(!Oe&&!d.setext&&fe&&d.indentation<=Fe&&(qe=v.match(ne))){var $e=qe[1]?"ol":"ul";return d.indentation=Ce+v.current().length,d.list=!0,d.quote=0,d.listStack.push(d.indentation),d.em=!1,d.strong=!1,d.code=!1,d.strikethrough=!1,_.taskLists&&v.match(S,!1)&&(d.taskList=!0),d.f=d.inline,_.highlightFormatting&&(d.formatting=["list","list-"+$e]),P(d)}else{if(fe&&d.indentation<=Fe&&(qe=v.match(ue,!0)))return d.quote=0,d.fencedEndRE=new RegExp(qe[1]+"+ *$"),d.localMode=_.fencedCodeBlockHighlighting&&Q(qe[2]||_.fencedCodeBlockDefaultMode),d.localMode&&(d.localState=b.startState(d.localMode)),d.f=d.block=J,_.highlightFormatting&&(d.formatting="code-block"),d.code=-1,P(d);if(d.setext||(!ve||!Me)&&!d.quote&&d.list===!1&&!d.code&&!Oe&&!O.test(v.string)&&(qe=v.lookAhead(1))&&(qe=qe.match(A)))return d.setext?(d.header=d.setext,d.setext=0,v.skipToEnd(),_.highlightFormatting&&(d.formatting="header")):(d.header=qe[0].charAt(0)=="="?1:2,d.setext=d.header),d.thisLine.header=!0,d.f=d.inline,P(d);if(Oe)return v.skipToEnd(),d.hr=!0,d.thisLine.hr=!0,k.hr;if(v.peek()==="[")return N(v,d,g)}return N(v,d,d.inline)}function W(v,d){var fe=te.token(v,d.htmlState);if(!oe){var Te=b.innerMode(te,d.htmlState);(Te.mode.name=="xml"&&Te.state.tagStart===null&&!Te.state.context&&Te.state.tokenize.isInText||d.md_inside&&v.current().indexOf(">")>-1)&&(d.f=F,d.block=p,d.htmlState=null)}return fe}function J(v,d){var fe=d.listStack[d.listStack.length-1]||0,Te=d.indentation=v.quote?d.push(k.formatting+"-"+v.formatting[fe]+"-"+v.quote):d.push("error"))}if(v.taskOpen)return d.push("meta"),d.length?d.join(" "):null;if(v.taskClosed)return d.push("property"),d.length?d.join(" "):null;if(v.linkHref?d.push(k.linkHref,"url"):(v.strong&&d.push(k.strong),v.em&&d.push(k.em),v.strikethrough&&d.push(k.strikethrough),v.emoji&&d.push(k.emoji),v.linkText&&d.push(k.linkText),v.code&&d.push(k.code),v.image&&d.push(k.image),v.imageAltText&&d.push(k.imageAltText,"link"),v.imageMarker&&d.push(k.imageMarker)),v.header&&d.push(k.header,k.header+"-"+v.header),v.quote&&(d.push(k.quote),!_.maxBlockquoteDepth||_.maxBlockquoteDepth>=v.quote?d.push(k.quote+"-"+v.quote):d.push(k.quote+"-"+_.maxBlockquoteDepth)),v.list!==!1){var Te=(v.listStack.length-1)%3;Te?Te===1?d.push(k.list2):d.push(k.list3):d.push(k.list1)}return v.trailingSpaceNewLine?d.push("trailing-space-new-line"):v.trailingSpace&&d.push("trailing-space-"+(v.trailingSpace%2?"a":"b")),d.length?d.join(" "):null}function V(v,d){if(v.match($,!0))return P(d)}function F(v,d){var fe=d.text(v,d);if(typeof fe<"u")return fe;if(d.list)return d.list=null,P(d);if(d.taskList){var Te=v.match(S,!0)[1]===" ";return Te?d.taskOpen=!0:d.taskClosed=!0,_.highlightFormatting&&(d.formatting="task"),d.taskList=!1,P(d)}if(d.taskOpen=!1,d.taskClosed=!1,d.header&&v.match(/^#+$/,!0))return _.highlightFormatting&&(d.formatting="header"),P(d);var le=v.next();if(d.linkTitle){d.linkTitle=!1;var xe=le;le==="("&&(xe=")"),xe=(xe+"").replace(/([.?*+^\[\]\\(){}|-])/g,"\\$1");var Me="^\\s*(?:[^"+xe+"\\\\]+|\\\\\\\\|\\\\.)"+xe;if(v.match(new RegExp(Me),!0))return k.linkHref}if(le==="`"){var Fe=d.formatting;_.highlightFormatting&&(d.formatting="code"),v.eatWhile("`");var Ce=v.current().length;if(d.code==0&&(!d.quote||Ce==1))return d.code=Ce,P(d);if(Ce==d.code){var ve=P(d);return d.code=0,ve}else return d.formatting=Fe,P(d)}else if(d.code)return P(d);if(le==="\\"&&(v.next(),_.highlightFormatting)){var Oe=P(d),qe=k.formatting+"-escape";return Oe?Oe+" "+qe:qe}if(le==="!"&&v.match(/\[[^\]]*\] ?(?:\(|\[)/,!1))return d.imageMarker=!0,d.image=!0,_.highlightFormatting&&(d.formatting="image"),P(d);if(le==="["&&d.imageMarker&&v.match(/[^\]]*\](\(.*?\)| ?\[.*?\])/,!1))return d.imageMarker=!1,d.imageAltText=!0,_.highlightFormatting&&(d.formatting="image"),P(d);if(le==="]"&&d.imageAltText){_.highlightFormatting&&(d.formatting="image");var Oe=P(d);return d.imageAltText=!1,d.image=!1,d.inline=d.f=c,Oe}if(le==="["&&!d.image)return d.linkText&&v.match(/^.*?\]/)||(d.linkText=!0,_.highlightFormatting&&(d.formatting="link")),P(d);if(le==="]"&&d.linkText){_.highlightFormatting&&(d.formatting="link");var Oe=P(d);return d.linkText=!1,d.inline=d.f=v.match(/\(.*?\)| ?\[.*?\]/,!1)?c:F,Oe}if(le==="<"&&v.match(/^(https?|ftps?):\/\/(?:[^\\>]|\\.)+>/,!1)){d.f=d.inline=G,_.highlightFormatting&&(d.formatting="link");var Oe=P(d);return Oe?Oe+=" ":Oe="",Oe+k.linkInline}if(le==="<"&&v.match(/^[^> \\]+@(?:[^\\>]|\\.)+>/,!1)){d.f=d.inline=G,_.highlightFormatting&&(d.formatting="link");var Oe=P(d);return Oe?Oe+=" ":Oe="",Oe+k.linkEmail}if(_.xml&&le==="<"&&v.match(/^(!--|\?|!\[CDATA\[|[a-z][a-z0-9-]*(?:\s+[a-z_:.\-]+(?:\s*=\s*[^>]+)?)*\s*(?:>|$))/i,!1)){var $e=v.string.indexOf(">",v.pos);if($e!=-1){var dt=v.string.substring(v.start,$e);/markdown\s*=\s*('|"){0,1}1('|"){0,1}/.test(dt)&&(d.md_inside=!0)}return v.backUp(1),d.htmlState=b.startState(te),z(v,d,W)}if(_.xml&&le==="<"&&v.match(/^\/\w*?>/))return d.md_inside=!1,"tag";if(le==="*"||le==="_"){for(var Pe=1,_e=v.pos==1?" ":v.string.charAt(v.pos-2);Pe<3&&v.eat(le);)Pe++;var Ue=v.peek()||" ",et=!/\s/.test(Ue)&&(!w.test(Ue)||/\s/.test(_e)||w.test(_e)),we=!/\s/.test(_e)&&(!w.test(_e)||/\s/.test(Ue)||w.test(Ue)),Ie=null,E=null;if(Pe%2&&(!d.em&&et&&(le==="*"||!we||w.test(_e))?Ie=!0:d.em==le&&we&&(le==="*"||!et||w.test(Ue))&&(Ie=!1)),Pe>1&&(!d.strong&&et&&(le==="*"||!we||w.test(_e))?E=!0:d.strong==le&&we&&(le==="*"||!et||w.test(Ue))&&(E=!1)),E!=null||Ie!=null){_.highlightFormatting&&(d.formatting=Ie==null?"strong":E==null?"em":"strong em"),Ie===!0&&(d.em=le),E===!0&&(d.strong=le);var ve=P(d);return Ie===!1&&(d.em=!1),E===!1&&(d.strong=!1),ve}}else if(le===" "&&(v.eat("*")||v.eat("_"))){if(v.peek()===" ")return P(d);v.backUp(1)}if(_.strikethrough){if(le==="~"&&v.eatWhile(le)){if(d.strikethrough){_.highlightFormatting&&(d.formatting="strikethrough");var ve=P(d);return d.strikethrough=!1,ve}else if(v.match(/^[^\s]/,!1))return d.strikethrough=!0,_.highlightFormatting&&(d.formatting="strikethrough"),P(d)}else if(le===" "&&v.match("~~",!0)){if(v.peek()===" ")return P(d);v.backUp(2)}}if(_.emoji&&le===":"&&v.match(/^(?:[a-z_\d+][a-z_\d+-]*|\-[a-z_\d+][a-z_\d+-]*):/)){d.emoji=!0,_.highlightFormatting&&(d.formatting="emoji");var ee=P(d);return d.emoji=!1,ee}return le===" "&&(v.match(/^ +$/,!1)?d.trailingSpace++:d.trailingSpace&&(d.trailingSpaceNewLine=!0)),P(d)}function G(v,d){var fe=v.next();if(fe===">"){d.f=d.inline=F,_.highlightFormatting&&(d.formatting="link");var Te=P(d);return Te?Te+=" ":Te="",Te+k.linkInline}return v.match(/^[^>]+/,!0),k.linkInline}function c(v,d){if(v.eatSpace())return null;var fe=v.next();return fe==="("||fe==="["?(d.f=d.inline=C(fe==="("?")":"]"),_.highlightFormatting&&(d.formatting="link-string"),d.linkHref=!0,P(d)):"error"}var T={")":/^(?:[^\\\(\)]|\\.|\((?:[^\\\(\)]|\\.)*\))*?(?=\))/,"]":/^(?:[^\\\[\]]|\\.|\[(?:[^\\\[\]]|\\.)*\])*?(?=\])/};function C(v){return function(d,fe){var Te=d.next();if(Te===v){fe.f=fe.inline=F,_.highlightFormatting&&(fe.formatting="link-string");var le=P(fe);return fe.linkHref=!1,le}return d.match(T[v]),fe.linkHref=!0,P(fe)}}function g(v,d){return v.match(/^([^\]\\]|\\.)*\]:/,!1)?(d.f=y,v.next(),_.highlightFormatting&&(d.formatting="link"),d.linkText=!0,P(d)):N(v,d,F)}function y(v,d){if(v.match("]:",!0)){d.f=d.inline=j,_.highlightFormatting&&(d.formatting="link");var fe=P(d);return d.linkText=!1,fe}return v.match(/^([^\]\\]|\\.)+/,!0),k.linkText}function j(v,d){return v.eatSpace()?null:(v.match(/^[^\s]+/,!0),v.peek()===void 0?d.linkTitle=!0:v.match(/^(?:\s+(?:"(?:[^"\\]|\\.)+"|'(?:[^'\\]|\\.)+'|\((?:[^)\\]|\\.)+\)))?/,!0),d.f=d.inline=F,k.linkHref+" url")}var de={startState:function(){return{f:p,prevLine:{stream:null},thisLine:{stream:null},block:p,htmlState:null,indentation:0,inline:F,text:V,formatting:!1,linkText:!1,linkHref:!1,linkTitle:!1,code:0,em:!1,strong:!1,header:0,setext:0,hr:!1,taskList:!1,list:!1,listStack:[],quote:0,trailingSpace:0,trailingSpaceNewLine:!1,strikethrough:!1,emoji:!1,fencedEndRE:null}},copyState:function(v){return{f:v.f,prevLine:v.prevLine,thisLine:v.thisLine,block:v.block,htmlState:v.htmlState&&b.copyState(te,v.htmlState),indentation:v.indentation,localMode:v.localMode,localState:v.localMode?b.copyState(v.localMode,v.localState):null,inline:v.inline,text:v.text,formatting:!1,linkText:v.linkText,linkTitle:v.linkTitle,linkHref:v.linkHref,code:v.code,em:v.em,strong:v.strong,strikethrough:v.strikethrough,emoji:v.emoji,header:v.header,setext:v.setext,hr:v.hr,taskList:v.taskList,list:v.list,listStack:v.listStack.slice(0),quote:v.quote,indentedCode:v.indentedCode,trailingSpace:v.trailingSpace,trailingSpaceNewLine:v.trailingSpaceNewLine,md_inside:v.md_inside,fencedEndRE:v.fencedEndRE}},token:function(v,d){if(d.formatting=!1,v!=d.thisLine.stream){if(d.header=0,d.hr=!1,v.match(/^\s*$/,!0))return q(d),null;if(d.prevLine=d.thisLine,d.thisLine={stream:v},d.taskList=!1,d.trailingSpace=0,d.trailingSpaceNewLine=!1,!d.localState&&(d.f=d.block,d.f!=W)){var fe=v.match(/^\s*/,!0)[0].replace(/\t/g,M).length;if(d.indentation=fe,d.indentationDiff=null,fe>0)return null}}return d.f(v,d)},innerMode:function(v){return v.block==W?{state:v.htmlState,mode:te}:v.localState?{state:v.localState,mode:v.localMode}:{state:v,mode:de}},indent:function(v,d,fe){return v.block==W&&te.indent?te.indent(v.htmlState,d,fe):v.localState&&v.localMode.indent?v.localMode.indent(v.localState,d,fe):b.Pass},blankLine:q,getType:P,blockCommentStart:"",closeBrackets:"()[]{}''\"\"``",fold:"markdown"};return de},"xml"),b.defineMIME("text/markdown","markdown"),b.defineMIME("text/x-markdown","markdown")})})()),Da.exports}nf();var Na={exports:{}},Ea;function of(){return Ea||(Ea=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineOption("placeholder","",function(I,Y,ne){var S=ne&&ne!=b.Init;if(Y&&!S)I.on("blur",oe),I.on("change",Q),I.on("swapDoc",Q),b.on(I.getInputField(),"compositionupdate",I.state.placeholderCompose=function(){te(I)}),Q(I);else if(!Y&&S){I.off("blur",oe),I.off("change",Q),I.off("swapDoc",Q),b.off(I.getInputField(),"compositionupdate",I.state.placeholderCompose),pe(I);var R=I.getWrapperElement();R.className=R.className.replace(" CodeMirror-empty","")}Y&&!I.hasFocus()&&oe(I)});function pe(I){I.state.placeholder&&(I.state.placeholder.parentNode.removeChild(I.state.placeholder),I.state.placeholder=null)}function _(I){pe(I);var Y=I.state.placeholder=document.createElement("pre");Y.style.cssText="height: 0; overflow: visible",Y.style.direction=I.getOption("direction"),Y.className="CodeMirror-placeholder CodeMirror-line-like";var ne=I.getOption("placeholder");typeof ne=="string"&&(ne=document.createTextNode(ne)),Y.appendChild(ne),I.display.lineSpace.insertBefore(Y,I.display.lineSpace.firstChild)}function te(I){setTimeout(function(){var Y=!1;if(I.lineCount()==1){var ne=I.getInputField();Y=ne.nodeName=="TEXTAREA"?!I.getLine(0).length:!/[^\u200b]/.test(ne.querySelector(".CodeMirror-line").textContent)}Y?_(I):pe(I)},20)}function oe(I){k(I)&&_(I)}function Q(I){var Y=I.getWrapperElement(),ne=k(I);Y.className=Y.className.replace(" CodeMirror-empty","")+(ne?" CodeMirror-empty":""),ne?_(I):pe(I)}function k(I){return I.lineCount()===1&&I.getLine(0)===""}})})()),Na.exports}of();var Oa={exports:{}},Pa;function lf(){return Pa||(Pa=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineSimpleMode=function(S,R){b.defineMode(S,function(A){return b.simpleMode(A,R)})},b.simpleMode=function(S,R){pe(R,"start");var A={},$=R.meta||{},ue=!1;for(var O in R)if(O!=$&&R.hasOwnProperty(O))for(var w=A[O]=[],M=R[O],N=0;N2&&z.token&&typeof z.token!="string"){for(var p=2;p-1)return b.Pass;var O=A.indent.length-1,w=S[A.state];e:for(;;){for(var M=0;M",")":"(<","[":"]>","]":"[<","{":"}>","}":"{<","<":">>",">":"<<"};function oe(S){return S&&S.bracketRegex||/[(){}[\]]/}function Q(S,R,A){var $=S.getLineHandle(R.line),ue=R.ch-1,O=A&&A.afterCursor;O==null&&(O=/(^| )cm-fat-cursor($| )/.test(S.getWrapperElement().className));var w=oe(A),M=!O&&ue>=0&&w.test($.text.charAt(ue))&&te[$.text.charAt(ue)]||w.test($.text.charAt(ue+1))&&te[$.text.charAt(++ue)];if(!M)return null;var N=M.charAt(1)==">"?1:-1;if(A&&A.strict&&N>0!=(ue==R.ch))return null;var z=S.getTokenTypeAt(_(R.line,ue+1)),X=k(S,_(R.line,ue+(N>0?1:0)),N,z,A);return X==null?null:{from:_(R.line,ue),to:X&&X.pos,match:X&&X.ch==M.charAt(0),forward:N>0}}function k(S,R,A,$,ue){for(var O=ue&&ue.maxScanLineLength||1e4,w=ue&&ue.maxScanLines||1e3,M=[],N=oe(ue),z=A>0?Math.min(R.line+w,S.lastLine()+1):Math.max(S.firstLine()-1,R.line-w),X=R.line;X!=z;X+=A){var q=S.getLine(X);if(q){var p=A>0?0:q.length-1,W=A>0?q.length:-1;if(!(q.length>O))for(X==R.line&&(p=R.ch-(A<0?1:0));p!=W;p+=A){var J=q.charAt(p);if(N.test(J)&&($===void 0||(S.getTokenTypeAt(_(X,p+1))||"")==($||""))){var P=te[J];if(P&&P.charAt(1)==">"==A>0)M.push(J);else if(M.length)M.pop();else return{pos:_(X,p),ch:J}}}}}return X-A==(A>0?S.lastLine():S.firstLine())?!1:null}function I(S,R,A){for(var $=S.state.matchBrackets.maxHighlightLineLength||1e3,ue=A&&A.highlightNonMatching,O=[],w=S.listSelections(),M=0;M`,triples:"",explode:"[]{}"},_=b.Pos;b.defineOption("autoCloseBrackets",!1,function(O,w,M){M&&M!=b.Init&&(O.removeKeyMap(oe),O.state.closeBrackets=null),w&&(Q(te(w,"pairs")),O.state.closeBrackets=w,O.addKeyMap(oe))});function te(O,w){return w=="pairs"&&typeof O=="string"?O:typeof O=="object"&&O[w]!=null?O[w]:pe[w]}var oe={Backspace:Y,Enter:ne};function Q(O){for(var w=0;w=0;z--){var q=N[z].head;O.replaceRange("",_(q.line,q.ch-1),_(q.line,q.ch+1),"+delete")}}function ne(O){var w=I(O),M=w&&te(w,"explode");if(!M||O.getOption("disableInput"))return b.Pass;for(var N=O.listSelections(),z=0;z0?{line:q.head.line,ch:q.head.ch+w}:{line:q.head.line-1};M.push({anchor:p,head:p})}O.setSelections(M,z)}function R(O){var w=b.cmpPos(O.anchor,O.head)>0;return{anchor:new _(O.anchor.line,O.anchor.ch+(w?-1:1)),head:new _(O.head.line,O.head.ch+(w?1:-1))}}function A(O,w){var M=I(O);if(!M||O.getOption("disableInput"))return b.Pass;var N=te(M,"pairs"),z=N.indexOf(w);if(z==-1)return b.Pass;for(var X=te(M,"closeBefore"),q=te(M,"triples"),p=N.charAt(z+1)==w,W=O.listSelections(),J=z%2==0,P,V=0;V=0&&O.getRange(G,_(G.line,G.ch+3))==w+w+w?c="skipThree":c="skip";else if(p&&G.ch>1&&q.indexOf(w)>=0&&O.getRange(_(G.line,G.ch-2),G)==w+w){if(G.ch>2&&/\bstring/.test(O.getTokenTypeAt(_(G.line,G.ch-2))))return b.Pass;c="addFour"}else if(p){var C=G.ch==0?" ":O.getRange(_(G.line,G.ch-1),G);if(!b.isWordChar(T)&&C!=w&&!b.isWordChar(C))c="both";else return b.Pass}else if(J&&(T.length===0||/\s/.test(T)||X.indexOf(T)>-1))c="both";else return b.Pass;if(!P)P=c;else if(P!=c)return b.Pass}var g=z%2?N.charAt(z-1):w,y=z%2?w:N.charAt(z+1);O.operation(function(){if(P=="skip")S(O,1);else if(P=="skipThree")S(O,3);else if(P=="surround"){for(var j=O.getSelections(),de=0;dep);W++){var J=w.getLine(q++);z=z==null?J:z+` +`+J}X=X*2,M.lastIndex=N.ch;var P=M.exec(z);if(P){var V=z.slice(0,P.index).split(` +`),F=P[0].split(` +`),G=N.line+V.length-1,c=V[V.length-1].length;return{from:pe(G,c),to:pe(G+F.length-1,F.length==1?c+F[0].length:F[F.length-1].length),match:P}}}}function I(w,M,N){for(var z,X=0;X<=w.length;){M.lastIndex=X;var q=M.exec(w);if(!q)break;var p=q.index+q[0].length;if(p>w.length-N)break;(!z||p>z.index+z[0].length)&&(z=q),X=q.index+1}return z}function Y(w,M,N){M=te(M,"g");for(var z=N.line,X=N.ch,q=w.firstLine();z>=q;z--,X=-1){var p=w.getLine(z),W=I(p,M,X<0?0:p.length-X);if(W)return{from:pe(z,W.index),to:pe(z,W.index+W[0].length),match:W}}}function ne(w,M,N){if(!oe(M))return Y(w,M,N);M=te(M,"gm");for(var z,X=1,q=w.getLine(N.line).length-N.ch,p=N.line,W=w.firstLine();p>=W;){for(var J=0;J=W;J++){var P=w.getLine(p--);z=z==null?P:P+` +`+z}X*=2;var V=I(z,M,q);if(V){var F=z.slice(0,V.index).split(` +`),G=V[0].split(` +`),c=p+F.length,T=F[F.length-1].length;return{from:pe(c,T),to:pe(c+G.length-1,G.length==1?T+G[0].length:G[G.length-1].length),match:V}}}}var S,R;String.prototype.normalize?(S=function(w){return w.normalize("NFD").toLowerCase()},R=function(w){return w.normalize("NFD")}):(S=function(w){return w.toLowerCase()},R=function(w){return w});function A(w,M,N,z){if(w.length==M.length)return N;for(var X=0,q=N+Math.max(0,w.length-M.length);;){if(X==q)return X;var p=X+q>>1,W=z(w.slice(0,p)).length;if(W==N)return p;W>N?q=p:X=p+1}}function $(w,M,N,z){if(!M.length)return null;var X=z?S:R,q=X(M).split(/\r|\n\r?/);e:for(var p=N.line,W=N.ch,J=w.lastLine()+1-q.length;p<=J;p++,W=0){var P=w.getLine(p).slice(W),V=X(P);if(q.length==1){var F=V.indexOf(q[0]);if(F==-1)continue e;var N=A(P,V,F,X)+W;return{from:pe(p,A(P,V,F,X)+W),to:pe(p,A(P,V,F+q[0].length,X)+W)}}else{var G=V.length-q[0].length;if(V.slice(G)!=q[0])continue e;for(var c=1;c=J;p--,W=-1){var P=w.getLine(p);W>-1&&(P=P.slice(0,W));var V=X(P);if(q.length==1){var F=V.lastIndexOf(q[0]);if(F==-1)continue e;return{from:pe(p,A(P,V,F,X)),to:pe(p,A(P,V,F+q[0].length,X))}}else{var G=q[q.length-1];if(V.slice(0,G.length)!=G)continue e;for(var c=1,N=p-q.length+1;c(this.doc.getLine(M.line)||"").length&&(M.ch=0,M.line++)),b.cmpPos(M,this.doc.clipPos(M))!=0))return this.atOccurrence=!1;var N=this.matches(w,M);if(this.afterEmptyMatch=N&&b.cmpPos(N.from,N.to)==0,N)return this.pos=N,this.atOccurrence=!0,this.pos.match||!0;var z=pe(w?this.doc.firstLine():this.doc.lastLine()+1,0);return this.pos={from:z,to:z},this.atOccurrence=!1},from:function(){if(this.atOccurrence)return this.pos.from},to:function(){if(this.atOccurrence)return this.pos.to},replace:function(w,M){if(this.atOccurrence){var N=b.splitLines(w);this.doc.replaceRange(N,this.pos.from,this.pos.to,M),this.pos.to=pe(this.pos.from.line+N.length-1,N[N.length-1].length+(N.length==1?this.pos.from.ch:0))}}},b.defineExtension("getSearchCursor",function(w,M,N){return new O(this.doc,w,M,N)}),b.defineDocExtension("getSearchCursor",function(w,M,N){return new O(this,w,M,N)}),b.defineExtension("selectMatches",function(w,M){for(var N=[],z=this.getSearchCursor(w,this.getCursor("from"),M);z.findNext()&&!(b.cmpPos(z.to(),this.getCursor("to"))>0);)N.push({anchor:z.from(),head:z.to()});N.length&&this.setSelections(N,0)})})})()),Ha.exports}var qa={exports:{}},ja;function po(){return ja||(ja=1,(function(ct,xt){(function(b){b(mt())})(function(b){function pe(te,oe,Q){var k=te.getWrapperElement(),I;return I=k.appendChild(document.createElement("div")),Q?I.className="CodeMirror-dialog CodeMirror-dialog-bottom":I.className="CodeMirror-dialog CodeMirror-dialog-top",typeof oe=="string"?I.innerHTML=oe:I.appendChild(oe),b.addClass(k,"dialog-opened"),I}function _(te,oe){te.state.currentNotificationClose&&te.state.currentNotificationClose(),te.state.currentNotificationClose=oe}b.defineExtension("openDialog",function(te,oe,Q){Q||(Q={}),_(this,null);var k=pe(this,te,Q.bottom),I=!1,Y=this;function ne(A){if(typeof A=="string")S.value=A;else{if(I)return;I=!0,b.rmClass(k.parentNode,"dialog-opened"),k.parentNode.removeChild(k),Y.focus(),Q.onClose&&Q.onClose(k)}}var S=k.getElementsByTagName("input")[0],R;return S?(S.focus(),Q.value&&(S.value=Q.value,Q.selectValueOnOpen!==!1&&S.select()),Q.onInput&&b.on(S,"input",function(A){Q.onInput(A,S.value,ne)}),Q.onKeyUp&&b.on(S,"keyup",function(A){Q.onKeyUp(A,S.value,ne)}),b.on(S,"keydown",function(A){Q&&Q.onKeyDown&&Q.onKeyDown(A,S.value,ne)||((A.keyCode==27||Q.closeOnEnter!==!1&&A.keyCode==13)&&(S.blur(),b.e_stop(A),ne()),A.keyCode==13&&oe(S.value,A))}),Q.closeOnBlur!==!1&&b.on(k,"focusout",function(A){A.relatedTarget!==null&&ne()})):(R=k.getElementsByTagName("button")[0])&&(b.on(R,"click",function(){ne(),Y.focus()}),Q.closeOnBlur!==!1&&b.on(R,"blur",ne),R.focus()),ne}),b.defineExtension("openConfirm",function(te,oe,Q){_(this,null);var k=pe(this,te,Q&&Q.bottom),I=k.getElementsByTagName("button"),Y=!1,ne=this,S=1;function R(){Y||(Y=!0,b.rmClass(k.parentNode,"dialog-opened"),k.parentNode.removeChild(k),ne.focus())}I[0].focus();for(var A=0;Ap.cursorCoords(y,"window").top&&((G=j).style.opacity=.4)}))};k(p,w(p),F,c,function(T,C){var g=b.keyName(T),y=p.getOption("extraKeys"),j=y&&y[g]||b.keyMap[p.getOption("keyMap")][g];j=="findNext"||j=="findPrev"||j=="findPersistentNext"||j=="findPersistentPrev"?(b.e_stop(T),R(p,te(p),C),p.execCommand(j)):(j=="find"||j=="findPersistent")&&(b.e_stop(T),c(C,T))}),P&&F&&(R(p,V,F),$(p,W))}else I(p,w(p),"Search for:",F,function(T){T&&!V.query&&p.operation(function(){R(p,V,T),V.posFrom=V.posTo=p.getCursor(),$(p,W)})})}function $(p,W,J){p.operation(function(){var P=te(p),V=Q(p,P.query,W?P.posFrom:P.posTo);!V.find(W)&&(V=Q(p,P.query,W?b.Pos(p.lastLine()):b.Pos(p.firstLine(),0)),!V.find(W))||(p.setSelection(V.from(),V.to()),p.scrollIntoView({from:V.from(),to:V.to()},20),P.posFrom=V.from(),P.posTo=V.to(),J&&J(V.from(),V.to()))})}function ue(p){p.operation(function(){var W=te(p);W.lastQuery=W.query,W.query&&(W.query=W.queryText=null,p.removeOverlay(W.overlay),W.annotate&&(W.annotate.clear(),W.annotate=null))})}function O(p,W){var J=p?document.createElement(p):document.createDocumentFragment();for(var P in W)J[P]=W[P];for(var V=2;V '+oe.phrase("(Use line:column or scroll% syntax)")+""}function te(oe,Q){var k=Number(Q);return/^[-+]/.test(Q)?oe.getCursor().line+k:k-1}b.commands.jumpToLine=function(oe){var Q=oe.getCursor();pe(oe,_(oe),oe.phrase("Jump to line:"),Q.line+1+":"+Q.ch,function(k){if(k){var I;if(I=/^\s*([\+\-]?\d+)\s*\:\s*(\d+)\s*$/.exec(k))oe.setCursor(te(oe,I[1]),Number(I[2]));else if(I=/^\s*([\+\-]?\d+(\.\d+)?)\%\s*/.exec(k)){var Y=Math.round(oe.lineCount()*Number(I[1])/100);/^[-+]/.test(I[1])&&(Y=Q.line+Y+1),oe.setCursor(Y-1,Q.ch)}else(I=/^\s*\:?\s*([\+\-]?\d+)\s*/.exec(k))&&oe.setCursor(te(oe,I[1]),Q.ch)}})},b.keyMap.default["Alt-G"]="jumpToLine"})})()),Ua.exports}ff();po();export{df as default}; diff --git a/node_modules.codex-backup/playwright-core/lib/vite/recorder/assets/index-CqAYX1I3.js b/node_modules.codex-backup/playwright-core/lib/vite/recorder/assets/index-CqAYX1I3.js new file mode 100644 index 00000000..e655cbc5 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/vite/recorder/assets/index-CqAYX1I3.js @@ -0,0 +1,193 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/codeMirrorModule-C8KMvO9L.js","assets/codeMirrorModule-DYBRYzYX.css"])))=>i.map(i=>d[i]); +(function(){const l=document.createElement("link").relList;if(l&&l.supports&&l.supports("modulepreload"))return;for(const c of document.querySelectorAll('link[rel="modulepreload"]'))s(c);new MutationObserver(c=>{for(const o of c)if(o.type==="childList")for(const h of o.addedNodes)h.tagName==="LINK"&&h.rel==="modulepreload"&&s(h)}).observe(document,{childList:!0,subtree:!0});function i(c){const o={};return c.integrity&&(o.integrity=c.integrity),c.referrerPolicy&&(o.referrerPolicy=c.referrerPolicy),c.crossOrigin==="use-credentials"?o.credentials="include":c.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function s(c){if(c.ep)return;c.ep=!0;const o=i(c);fetch(c.href,o)}})();function b1(u){return u&&u.__esModule&&Object.prototype.hasOwnProperty.call(u,"default")?u.default:u}var lf={exports:{}},Oi={};/** + * @license React + * react-jsx-runtime.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Wm;function S1(){if(Wm)return Oi;Wm=1;var u=Symbol.for("react.transitional.element"),l=Symbol.for("react.fragment");function i(s,c,o){var h=null;if(o!==void 0&&(h=""+o),c.key!==void 0&&(h=""+c.key),"key"in c){o={};for(var m in c)m!=="key"&&(o[m]=c[m])}else o=c;return c=o.ref,{$$typeof:u,type:s,key:h,ref:c!==void 0?c:null,props:o}}return Oi.Fragment=l,Oi.jsx=i,Oi.jsxs=i,Oi}var Fm;function T1(){return Fm||(Fm=1,lf.exports=S1()),lf.exports}var X=T1(),af={exports:{}},ue={};/** + * @license React + * react.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Im;function E1(){if(Im)return ue;Im=1;var u=Symbol.for("react.transitional.element"),l=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),c=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),h=Symbol.for("react.context"),m=Symbol.for("react.forward_ref"),g=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),T=Symbol.for("react.lazy"),v=Symbol.for("react.activity"),_=Symbol.iterator;function E(O){return O===null||typeof O!="object"?null:(O=_&&O[_]||O["@@iterator"],typeof O=="function"?O:null)}var x={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},S=Object.assign,w={};function M(O,Y,J){this.props=O,this.context=Y,this.refs=w,this.updater=J||x}M.prototype.isReactComponent={},M.prototype.setState=function(O,Y){if(typeof O!="object"&&typeof O!="function"&&O!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,O,Y,"setState")},M.prototype.forceUpdate=function(O){this.updater.enqueueForceUpdate(this,O,"forceUpdate")};function R(){}R.prototype=M.prototype;function G(O,Y,J){this.props=O,this.context=Y,this.refs=w,this.updater=J||x}var Q=G.prototype=new R;Q.constructor=G,S(Q,M.prototype),Q.isPureReactComponent=!0;var Z=Array.isArray;function W(){}var k={H:null,A:null,T:null,S:null},V=Object.prototype.hasOwnProperty;function U(O,Y,J){var I=J.ref;return{$$typeof:u,type:O,key:Y,ref:I!==void 0?I:null,props:J}}function ie(O,Y){return U(O.type,Y,O.props)}function te(O){return typeof O=="object"&&O!==null&&O.$$typeof===u}function $(O){var Y={"=":"=0",":":"=2"};return"$"+O.replace(/[=:]/g,function(J){return Y[J]})}var ee=/\/+/g;function Ae(O,Y){return typeof O=="object"&&O!==null&&O.key!=null?$(""+O.key):Y.toString(36)}function se(O){switch(O.status){case"fulfilled":return O.value;case"rejected":throw O.reason;default:switch(typeof O.status=="string"?O.then(W,W):(O.status="pending",O.then(function(Y){O.status==="pending"&&(O.status="fulfilled",O.value=Y)},function(Y){O.status==="pending"&&(O.status="rejected",O.reason=Y)})),O.status){case"fulfilled":return O.value;case"rejected":throw O.reason}}throw O}function D(O,Y,J,I,re){var me=typeof O;(me==="undefined"||me==="boolean")&&(O=null);var we=!1;if(O===null)we=!0;else switch(me){case"bigint":case"string":case"number":we=!0;break;case"object":switch(O.$$typeof){case u:case l:we=!0;break;case T:return we=O._init,D(we(O._payload),Y,J,I,re)}}if(we)return re=re(O),we=I===""?"."+Ae(O,0):I,Z(re)?(J="",we!=null&&(J=we.replace(ee,"$&/")+"/"),D(re,Y,J,"",function(Da){return Da})):re!=null&&(te(re)&&(re=ie(re,J+(re.key==null||O&&O.key===re.key?"":(""+re.key).replace(ee,"$&/")+"/")+we)),Y.push(re)),1;we=0;var rt=I===""?".":I+":";if(Z(O))for(var Ye=0;Ye{const c=u==null?void 0:u.current;c&&i(c.getBoundingClientRect())},[u]);return wn.useLayoutEffect(()=>{const c=u==null?void 0:u.current;if(!c)return;s();const o=new ResizeObserver(s);return o.observe(c),window.addEventListener("resize",s),()=>{o.disconnect(),window.removeEventListener("resize",s)}},[s,u]),[l,s]}function eg(u){const l=document.createElement("textarea");l.style.position="absolute",l.style.zIndex="-1000",l.value=u,document.body.appendChild(l),l.select(),document.execCommand("copy"),l.remove()}function pu(u,l){u&&(l=Sl.getObject(u,l));const[i,s]=wn.useState(l),c=wn.useCallback(o=>{u?Sl.setObject(u,o):s(o)},[u,s]);return wn.useEffect(()=>{if(u){const o=()=>s(Sl.getObject(u,l));return Sl.onChangeEmitter.addEventListener(u,o),()=>Sl.onChangeEmitter.removeEventListener(u,o)}},[l,u]),[i,c]}class A1{constructor(){this.onChangeEmitter=new EventTarget}getString(l,i){return localStorage[l]||i}setString(l,i){var s;localStorage[l]=i,this.onChangeEmitter.dispatchEvent(new Event(l)),(s=window.saveSettings)==null||s.call(window)}getObject(l,i){if(!localStorage[l])return i;try{return JSON.parse(localStorage[l])}catch{return i}}setObject(l,i){var s;localStorage[l]=JSON.stringify(i),this.onChangeEmitter.dispatchEvent(new Event(l)),(s=window.saveSettings)==null||s.call(window)}}const Sl=new A1;function wl(...u){return u.filter(Boolean).join(" ")}const tg="\\u0000-\\u0020\\u007f-\\u009f",w1=new RegExp("(?:[a-zA-Z][a-zA-Z0-9+.-]{2,}:\\/\\/|www\\.)[^\\s"+tg+'"]{2,}[^\\s'+tg+`"')}\\],:;.!?]`,"ug"),O1="system",Cg="theme",_1=[{label:"Dark mode",value:"dark-mode"},{label:"Light mode",value:"light-mode"},{label:"System",value:"system"}],zg=window.matchMedia("(prefers-color-scheme: dark)");function N1(){document.playwrightThemeInitialized||(document.playwrightThemeInitialized=!0,document.defaultView.addEventListener("focus",u=>{u.target.document.nodeType===Node.DOCUMENT_NODE&&document.body.classList.remove("inactive")},!1),document.defaultView.addEventListener("blur",u=>{document.body.classList.add("inactive")},!1),Tf(Ef()),zg.addEventListener("change",()=>{Tf(Ef())}))}const M1=new Set;function Tf(u){const l=C1(),i=u==="system"?zg.matches?"dark-mode":"light-mode":u;if(l!==i){l&&document.documentElement.classList.remove(l),document.documentElement.classList.add(i);for(const s of M1)s(i)}}function Ef(){return Sl.getString(Cg,O1)}function C1(){return document.documentElement.classList.contains("dark-mode")?"dark-mode":document.documentElement.classList.contains("light-mode")?"light-mode":null}function z1(){const[u,l]=wn.useState(Ef());return wn.useEffect(()=>{Sl.setString(Cg,u),Tf(u)},[u]),[u,l]}var sf={exports:{}},_i={},uf={exports:{}},cf={};/** + * @license React + * scheduler.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var ng;function x1(){return ng||(ng=1,(function(u){function l(D,K){var ne=D.length;D.push(K);e:for(;0>>1,Ne=D[de];if(0>>1;dec(J,ne))Ic(re,J)?(D[de]=re,D[I]=ne,de=I):(D[de]=J,D[Y]=ne,de=Y);else if(Ic(re,ne))D[de]=re,D[I]=ne,de=I;else break e}}return K}function c(D,K){var ne=D.sortIndex-K.sortIndex;return ne!==0?ne:D.id-K.id}if(u.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;u.unstable_now=function(){return o.now()}}else{var h=Date,m=h.now();u.unstable_now=function(){return h.now()-m}}var g=[],p=[],T=1,v=null,_=3,E=!1,x=!1,S=!1,w=!1,M=typeof setTimeout=="function"?setTimeout:null,R=typeof clearTimeout=="function"?clearTimeout:null,G=typeof setImmediate<"u"?setImmediate:null;function Q(D){for(var K=i(p);K!==null;){if(K.callback===null)s(p);else if(K.startTime<=D)s(p),K.sortIndex=K.expirationTime,l(g,K);else break;K=i(p)}}function Z(D){if(S=!1,Q(D),!x)if(i(g)!==null)x=!0,W||(W=!0,$());else{var K=i(p);K!==null&&se(Z,K.startTime-D)}}var W=!1,k=-1,V=5,U=-1;function ie(){return w?!0:!(u.unstable_now()-UD&&ie());){var de=v.callback;if(typeof de=="function"){v.callback=null,_=v.priorityLevel;var Ne=de(v.expirationTime<=D);if(D=u.unstable_now(),typeof Ne=="function"){v.callback=Ne,Q(D),K=!0;break t}v===i(g)&&s(g),Q(D)}else s(g);v=i(g)}if(v!==null)K=!0;else{var O=i(p);O!==null&&se(Z,O.startTime-D),K=!1}}break e}finally{v=null,_=ne,E=!1}K=void 0}}finally{K?$():W=!1}}}var $;if(typeof G=="function")$=function(){G(te)};else if(typeof MessageChannel<"u"){var ee=new MessageChannel,Ae=ee.port2;ee.port1.onmessage=te,$=function(){Ae.postMessage(null)}}else $=function(){M(te,0)};function se(D,K){k=M(function(){D(u.unstable_now())},K)}u.unstable_IdlePriority=5,u.unstable_ImmediatePriority=1,u.unstable_LowPriority=4,u.unstable_NormalPriority=3,u.unstable_Profiling=null,u.unstable_UserBlockingPriority=2,u.unstable_cancelCallback=function(D){D.callback=null},u.unstable_forceFrameRate=function(D){0>D||125de?(D.sortIndex=ne,l(p,D),i(g)===null&&D===i(p)&&(S?(R(k),k=-1):S=!0,se(Z,ne-de))):(D.sortIndex=Ne,l(g,D),x||E||(x=!0,W||(W=!0,$()))),D},u.unstable_shouldYield=ie,u.unstable_wrapCallback=function(D){var K=_;return function(){var ne=_;_=K;try{return D.apply(this,arguments)}finally{_=ne}}}})(cf)),cf}var lg;function D1(){return lg||(lg=1,uf.exports=x1()),uf.exports}var rf={exports:{}},st={};/** + * @license React + * react-dom.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var ag;function L1(){if(ag)return st;ag=1;var u=xf();function l(g){var p="https://react.dev/errors/"+g;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(l){console.error(l)}}return u(),rf.exports=L1(),rf.exports}/** + * @license React + * react-dom-client.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var sg;function R1(){if(sg)return _i;sg=1;var u=D1(),l=xf(),i=U1();function s(e){var t="https://react.dev/errors/"+e;if(1Ne||(e.current=de[Ne],de[Ne]=null,Ne--)}function J(e,t){Ne++,de[Ne]=e.current,e.current=t}var I=O(null),re=O(null),me=O(null),we=O(null);function rt(e,t){switch(J(me,t),J(re,e),J(I,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?bm(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=bm(t),e=Sm(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}Y(I),J(I,e)}function Ye(){Y(I),Y(re),Y(me)}function Da(e){e.memoizedState!==null&&J(we,e);var t=I.current,n=Sm(t,e.type);t!==n&&(J(re,e),J(I,n))}function ki(e){re.current===e&&(Y(I),Y(re)),we.current===e&&(Y(we),Ti._currentValue=ne)}var qu,Zf;function tl(e){if(qu===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);qu=t&&t[1]||"",Zf=-1)":-1r||b[a]!==z[r]){var B=` +`+b[a].replace(" at new "," at ");return e.displayName&&B.includes("")&&(B=B.replace("",e.displayName)),B}while(1<=a&&0<=r);break}}}finally{Hu=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?tl(n):""}function Wp(e,t){switch(e.tag){case 26:case 27:case 5:return tl(e.type);case 16:return tl("Lazy");case 13:return e.child!==t&&t!==null?tl("Suspense Fallback"):tl("Suspense");case 19:return tl("SuspenseList");case 0:case 15:return Yu(e.type,!1);case 11:return Yu(e.type.render,!1);case 1:return Yu(e.type,!0);case 31:return tl("Activity");default:return""}}function Jf(e){try{var t="",n=null;do t+=Wp(e,n),n=e,e=e.return;while(e);return t}catch(a){return` +Error generating stack: `+a.message+` +`+a.stack}}var $u=Object.prototype.hasOwnProperty,Gu=u.unstable_scheduleCallback,Ku=u.unstable_cancelCallback,Fp=u.unstable_shouldYield,Ip=u.unstable_requestPaint,Et=u.unstable_now,Pp=u.unstable_getCurrentPriorityLevel,Wf=u.unstable_ImmediatePriority,Ff=u.unstable_UserBlockingPriority,qi=u.unstable_NormalPriority,ey=u.unstable_LowPriority,If=u.unstable_IdlePriority,ty=u.log,ny=u.unstable_setDisableYieldValue,La=null,At=null;function _n(e){if(typeof ty=="function"&&ny(e),At&&typeof At.setStrictMode=="function")try{At.setStrictMode(La,e)}catch{}}var wt=Math.clz32?Math.clz32:iy,ly=Math.log,ay=Math.LN2;function iy(e){return e>>>=0,e===0?32:31-(ly(e)/ay|0)|0}var Hi=256,Yi=262144,$i=4194304;function nl(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Gi(e,t,n){var a=e.pendingLanes;if(a===0)return 0;var r=0,f=e.suspendedLanes,d=e.pingedLanes;e=e.warmLanes;var y=a&134217727;return y!==0?(a=y&~f,a!==0?r=nl(a):(d&=y,d!==0?r=nl(d):n||(n=y&~e,n!==0&&(r=nl(n))))):(y=a&~f,y!==0?r=nl(y):d!==0?r=nl(d):n||(n=a&~e,n!==0&&(r=nl(n)))),r===0?0:t!==0&&t!==r&&(t&f)===0&&(f=r&-r,n=t&-t,f>=n||f===32&&(n&4194048)!==0)?t:r}function Ua(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function sy(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Pf(){var e=$i;return $i<<=1,($i&62914560)===0&&($i=4194304),e}function Vu(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Ra(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function uy(e,t,n,a,r,f){var d=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var y=e.entanglements,b=e.expirationTimes,z=e.hiddenUpdates;for(n=d&~n;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var dy=/[\n"\\]/g;function Rt(e){return e.replace(dy,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Fu(e,t,n,a,r,f,d,y){e.name="",d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?e.type=d:e.removeAttribute("type"),t!=null?d==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+Ut(t)):e.value!==""+Ut(t)&&(e.value=""+Ut(t)):d!=="submit"&&d!=="reset"||e.removeAttribute("value"),t!=null?Iu(e,d,Ut(t)):n!=null?Iu(e,d,Ut(n)):a!=null&&e.removeAttribute("value"),r==null&&f!=null&&(e.defaultChecked=!!f),r!=null&&(e.checked=r&&typeof r!="function"&&typeof r!="symbol"),y!=null&&typeof y!="function"&&typeof y!="symbol"&&typeof y!="boolean"?e.name=""+Ut(y):e.removeAttribute("name")}function ho(e,t,n,a,r,f,d,y){if(f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"&&(e.type=f),t!=null||n!=null){if(!(f!=="submit"&&f!=="reset"||t!=null)){Wu(e);return}n=n!=null?""+Ut(n):"",t=t!=null?""+Ut(t):n,y||t===e.value||(e.value=t),e.defaultValue=t}a=a??r,a=typeof a!="function"&&typeof a!="symbol"&&!!a,e.checked=y?e.checked:!!a,e.defaultChecked=!!a,d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"&&(e.name=d),Wu(e)}function Iu(e,t,n){t==="number"&&Qi(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function Ll(e,t,n,a){if(e=e.options,t){t={};for(var r=0;r"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),lc=!1;if(sn)try{var qa={};Object.defineProperty(qa,"passive",{get:function(){lc=!0}}),window.addEventListener("test",qa,qa),window.removeEventListener("test",qa,qa)}catch{lc=!1}var Mn=null,ac=null,Zi=null;function So(){if(Zi)return Zi;var e,t=ac,n=t.length,a,r="value"in Mn?Mn.value:Mn.textContent,f=r.length;for(e=0;e=$a),_o=" ",No=!1;function Mo(e,t){switch(e){case"keyup":return Yy.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Co(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Bl=!1;function Gy(e,t){switch(e){case"compositionend":return Co(t);case"keypress":return t.which!==32?null:(No=!0,_o);case"textInput":return e=t.data,e===_o&&No?null:e;default:return null}}function Ky(e,t){if(Bl)return e==="compositionend"||!rc&&Mo(e,t)?(e=So(),Zi=ac=Mn=null,Bl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=a}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Bo(n)}}function qo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?qo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Ho(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Qi(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Qi(e.document)}return t}function hc(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var Iy=sn&&"documentMode"in document&&11>=document.documentMode,kl=null,dc=null,Qa=null,mc=!1;function Yo(e,t,n){var a=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;mc||kl==null||kl!==Qi(a)||(a=kl,"selectionStart"in a&&hc(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),Qa&&Va(Qa,a)||(Qa=a,a=Ys(dc,"onSelect"),0>=d,r-=d,Ft=1<<32-wt(t)+r|n<oe?(ve=P,P=null):ve=P.sibling;var Te=L(N,P,C[oe],q);if(Te===null){P===null&&(P=ve);break}e&&P&&Te.alternate===null&&t(N,P),A=f(Te,A,oe),Se===null?le=Te:Se.sibling=Te,Se=Te,P=ve}if(oe===C.length)return n(N,P),be&&cn(N,oe),le;if(P===null){for(;oeoe?(ve=P,P=null):ve=P.sibling;var Wn=L(N,P,Te.value,q);if(Wn===null){P===null&&(P=ve);break}e&&P&&Wn.alternate===null&&t(N,P),A=f(Wn,A,oe),Se===null?le=Wn:Se.sibling=Wn,Se=Wn,P=ve}if(Te.done)return n(N,P),be&&cn(N,oe),le;if(P===null){for(;!Te.done;oe++,Te=C.next())Te=H(N,Te.value,q),Te!==null&&(A=f(Te,A,oe),Se===null?le=Te:Se.sibling=Te,Se=Te);return be&&cn(N,oe),le}for(P=a(P);!Te.done;oe++,Te=C.next())Te=j(P,N,oe,Te.value,q),Te!==null&&(e&&Te.alternate!==null&&P.delete(Te.key===null?oe:Te.key),A=f(Te,A,oe),Se===null?le=Te:Se.sibling=Te,Se=Te);return e&&P.forEach(function(v1){return t(N,v1)}),be&&cn(N,oe),le}function ze(N,A,C,q){if(typeof C=="object"&&C!==null&&C.type===S&&C.key===null&&(C=C.props.children),typeof C=="object"&&C!==null){switch(C.$$typeof){case E:e:{for(var le=C.key;A!==null;){if(A.key===le){if(le=C.type,le===S){if(A.tag===7){n(N,A.sibling),q=r(A,C.props.children),q.return=N,N=q;break e}}else if(A.elementType===le||typeof le=="object"&&le!==null&&le.$$typeof===V&&dl(le)===A.type){n(N,A.sibling),q=r(A,C.props),Ia(q,C),q.return=N,N=q;break e}n(N,A);break}else t(N,A);A=A.sibling}C.type===S?(q=cl(C.props.children,N.mode,q,C.key),q.return=N,N=q):(q=as(C.type,C.key,C.props,null,N.mode,q),Ia(q,C),q.return=N,N=q)}return d(N);case x:e:{for(le=C.key;A!==null;){if(A.key===le)if(A.tag===4&&A.stateNode.containerInfo===C.containerInfo&&A.stateNode.implementation===C.implementation){n(N,A.sibling),q=r(A,C.children||[]),q.return=N,N=q;break e}else{n(N,A);break}else t(N,A);A=A.sibling}q=Tc(C,N.mode,q),q.return=N,N=q}return d(N);case V:return C=dl(C),ze(N,A,C,q)}if(se(C))return F(N,A,C,q);if($(C)){if(le=$(C),typeof le!="function")throw Error(s(150));return C=le.call(C),ae(N,A,C,q)}if(typeof C.then=="function")return ze(N,A,os(C),q);if(C.$$typeof===G)return ze(N,A,us(N,C),q);hs(N,C)}return typeof C=="string"&&C!==""||typeof C=="number"||typeof C=="bigint"?(C=""+C,A!==null&&A.tag===6?(n(N,A.sibling),q=r(A,C),q.return=N,N=q):(n(N,A),q=Sc(C,N.mode,q),q.return=N,N=q),d(N)):n(N,A)}return function(N,A,C,q){try{Fa=0;var le=ze(N,A,C,q);return Jl=null,le}catch(P){if(P===Zl||P===rs)throw P;var Se=_t(29,P,null,N.mode);return Se.lanes=q,Se.return=N,Se}finally{}}}var gl=fh(!0),oh=fh(!1),Ln=!1;function Lc(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Uc(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Un(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Rn(e,t,n){var a=e.updateQueue;if(a===null)return null;if(a=a.shared,(Ee&2)!==0){var r=a.pending;return r===null?t.next=t:(t.next=r.next,r.next=t),a.pending=t,t=ls(e),Zo(e,null,n),t}return ns(e,a,t,n),ls(e)}function Pa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var a=t.lanes;a&=e.pendingLanes,n|=a,t.lanes=n,to(e,n)}}function Rc(e,t){var n=e.updateQueue,a=e.alternate;if(a!==null&&(a=a.updateQueue,n===a)){var r=null,f=null;if(n=n.firstBaseUpdate,n!==null){do{var d={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};f===null?r=f=d:f=f.next=d,n=n.next}while(n!==null);f===null?r=f=t:f=f.next=t}else r=f=t;n={baseState:a.baseState,firstBaseUpdate:r,lastBaseUpdate:f,shared:a.shared,callbacks:a.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var jc=!1;function ei(){if(jc){var e=Xl;if(e!==null)throw e}}function ti(e,t,n,a){jc=!1;var r=e.updateQueue;Ln=!1;var f=r.firstBaseUpdate,d=r.lastBaseUpdate,y=r.shared.pending;if(y!==null){r.shared.pending=null;var b=y,z=b.next;b.next=null,d===null?f=z:d.next=z,d=b;var B=e.alternate;B!==null&&(B=B.updateQueue,y=B.lastBaseUpdate,y!==d&&(y===null?B.firstBaseUpdate=z:y.next=z,B.lastBaseUpdate=b))}if(f!==null){var H=r.baseState;d=0,B=z=b=null,y=f;do{var L=y.lane&-536870913,j=L!==y.lane;if(j?(ye&L)===L:(a&L)===L){L!==0&&L===Ql&&(jc=!0),B!==null&&(B=B.next={lane:0,tag:y.tag,payload:y.payload,callback:null,next:null});e:{var F=e,ae=y;L=t;var ze=n;switch(ae.tag){case 1:if(F=ae.payload,typeof F=="function"){H=F.call(ze,H,L);break e}H=F;break e;case 3:F.flags=F.flags&-65537|128;case 0:if(F=ae.payload,L=typeof F=="function"?F.call(ze,H,L):F,L==null)break e;H=v({},H,L);break e;case 2:Ln=!0}}L=y.callback,L!==null&&(e.flags|=64,j&&(e.flags|=8192),j=r.callbacks,j===null?r.callbacks=[L]:j.push(L))}else j={lane:L,tag:y.tag,payload:y.payload,callback:y.callback,next:null},B===null?(z=B=j,b=H):B=B.next=j,d|=L;if(y=y.next,y===null){if(y=r.shared.pending,y===null)break;j=y,y=j.next,j.next=null,r.lastBaseUpdate=j,r.shared.pending=null}}while(!0);B===null&&(b=H),r.baseState=b,r.firstBaseUpdate=z,r.lastBaseUpdate=B,f===null&&(r.shared.lanes=0),Hn|=d,e.lanes=d,e.memoizedState=H}}function hh(e,t){if(typeof e!="function")throw Error(s(191,e));e.call(t)}function dh(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;ef?f:8;var d=D.T,y={};D.T=y,tr(e,!1,t,n);try{var b=r(),z=D.S;if(z!==null&&z(y,b),b!==null&&typeof b=="object"&&typeof b.then=="function"){var B=u0(b,a);ai(e,t,B,xt(e))}else ai(e,t,a,xt(e))}catch(H){ai(e,t,{then:function(){},status:"rejected",reason:H},xt())}finally{K.p=f,d!==null&&y.types!==null&&(d.types=y.types),D.T=d}}function d0(){}function Pc(e,t,n,a){if(e.tag!==5)throw Error(s(476));var r=Vh(e).queue;Kh(e,r,t,ne,n===null?d0:function(){return Qh(e),n(a)})}function Vh(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:ne,baseState:ne,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:hn,lastRenderedState:ne},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:hn,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Qh(e){var t=Vh(e);t.next===null&&(t=e.alternate.memoizedState),ai(e,t.next.queue,{},xt())}function er(){return nt(Ti)}function Xh(){return Ge().memoizedState}function Zh(){return Ge().memoizedState}function m0(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=xt();e=Un(n);var a=Rn(t,e,n);a!==null&&(vt(a,t,n),Pa(a,t,n)),t={cache:Cc()},e.payload=t;return}t=t.return}}function g0(e,t,n){var a=xt();n={lane:a,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Es(e)?Wh(t,n):(n=vc(e,t,n,a),n!==null&&(vt(n,e,a),Fh(n,t,a)))}function Jh(e,t,n){var a=xt();ai(e,t,n,a)}function ai(e,t,n,a){var r={lane:a,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Es(e))Wh(t,r);else{var f=e.alternate;if(e.lanes===0&&(f===null||f.lanes===0)&&(f=t.lastRenderedReducer,f!==null))try{var d=t.lastRenderedState,y=f(d,n);if(r.hasEagerState=!0,r.eagerState=y,Ot(y,d))return ns(e,t,r,0),xe===null&&ts(),!1}catch{}finally{}if(n=vc(e,t,r,a),n!==null)return vt(n,e,a),Fh(n,t,a),!0}return!1}function tr(e,t,n,a){if(a={lane:2,revertLane:Lr(),gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},Es(e)){if(t)throw Error(s(479))}else t=vc(e,n,a,2),t!==null&&vt(t,e,2)}function Es(e){var t=e.alternate;return e===fe||t!==null&&t===fe}function Wh(e,t){Fl=gs=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Fh(e,t,n){if((n&4194048)!==0){var a=t.lanes;a&=e.pendingLanes,n|=a,t.lanes=n,to(e,n)}}var ii={readContext:nt,use:vs,useCallback:qe,useContext:qe,useEffect:qe,useImperativeHandle:qe,useLayoutEffect:qe,useInsertionEffect:qe,useMemo:qe,useReducer:qe,useRef:qe,useState:qe,useDebugValue:qe,useDeferredValue:qe,useTransition:qe,useSyncExternalStore:qe,useId:qe,useHostTransitionStatus:qe,useFormState:qe,useActionState:qe,useOptimistic:qe,useMemoCache:qe,useCacheRefresh:qe};ii.useEffectEvent=qe;var Ih={readContext:nt,use:vs,useCallback:function(e,t){return ft().memoizedState=[e,t===void 0?null:t],e},useContext:nt,useEffect:Rh,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Ss(4194308,4,qh.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Ss(4194308,4,e,t)},useInsertionEffect:function(e,t){Ss(4,2,e,t)},useMemo:function(e,t){var n=ft();t=t===void 0?null:t;var a=e();if(pl){_n(!0);try{e()}finally{_n(!1)}}return n.memoizedState=[a,t],a},useReducer:function(e,t,n){var a=ft();if(n!==void 0){var r=n(t);if(pl){_n(!0);try{n(t)}finally{_n(!1)}}}else r=t;return a.memoizedState=a.baseState=r,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:r},a.queue=e,e=e.dispatch=g0.bind(null,fe,e),[a.memoizedState,e]},useRef:function(e){var t=ft();return e={current:e},t.memoizedState=e},useState:function(e){e=Zc(e);var t=e.queue,n=Jh.bind(null,fe,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Fc,useDeferredValue:function(e,t){var n=ft();return Ic(n,e,t)},useTransition:function(){var e=Zc(!1);return e=Kh.bind(null,fe,e.queue,!0,!1),ft().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var a=fe,r=ft();if(be){if(n===void 0)throw Error(s(407));n=n()}else{if(n=t(),xe===null)throw Error(s(349));(ye&127)!==0||bh(a,t,n)}r.memoizedState=n;var f={value:n,getSnapshot:t};return r.queue=f,Rh(Th.bind(null,a,f,e),[e]),a.flags|=2048,Pl(9,{destroy:void 0},Sh.bind(null,a,f,n,t),null),n},useId:function(){var e=ft(),t=xe.identifierPrefix;if(be){var n=It,a=Ft;n=(a&~(1<<32-wt(a)-1)).toString(32)+n,t="_"+t+"R_"+n,n=ps++,0<\/script>",f=f.removeChild(f.firstChild);break;case"select":f=typeof a.is=="string"?d.createElement("select",{is:a.is}):d.createElement("select"),a.multiple?f.multiple=!0:a.size&&(f.size=a.size);break;default:f=typeof a.is=="string"?d.createElement(r,{is:a.is}):d.createElement(r)}}f[et]=t,f[ht]=a;e:for(d=t.child;d!==null;){if(d.tag===5||d.tag===6)f.appendChild(d.stateNode);else if(d.tag!==4&&d.tag!==27&&d.child!==null){d.child.return=d,d=d.child;continue}if(d===t)break e;for(;d.sibling===null;){if(d.return===null||d.return===t)break e;d=d.return}d.sibling.return=d.return,d=d.sibling}t.stateNode=f;e:switch(at(f,r,a),r){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break e;case"img":a=!0;break e;default:a=!1}a&&mn(t)}}return Ue(t),gr(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==a&&mn(t);else{if(typeof a!="string"&&t.stateNode===null)throw Error(s(166));if(e=me.current,Kl(t)){if(e=t.stateNode,n=t.memoizedProps,a=null,r=tt,r!==null)switch(r.tag){case 27:case 5:a=r.memoizedProps}e[et]=t,e=!!(e.nodeValue===n||a!==null&&a.suppressHydrationWarning===!0||ym(e.nodeValue,n)),e||xn(t,!0)}else e=$s(e).createTextNode(a),e[et]=t,t.stateNode=e}return Ue(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(a=Kl(t),n!==null){if(e===null){if(!a)throw Error(s(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(s(557));e[et]=t}else rl(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ue(t),e=!1}else n=Oc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(Mt(t),t):(Mt(t),null);if((t.flags&128)!==0)throw Error(s(558))}return Ue(t),null;case 13:if(a=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(r=Kl(t),a!==null&&a.dehydrated!==null){if(e===null){if(!r)throw Error(s(318));if(r=t.memoizedState,r=r!==null?r.dehydrated:null,!r)throw Error(s(317));r[et]=t}else rl(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ue(t),r=!1}else r=Oc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=r),r=!0;if(!r)return t.flags&256?(Mt(t),t):(Mt(t),null)}return Mt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=a!==null,e=e!==null&&e.memoizedState!==null,n&&(a=t.child,r=null,a.alternate!==null&&a.alternate.memoizedState!==null&&a.alternate.memoizedState.cachePool!==null&&(r=a.alternate.memoizedState.cachePool.pool),f=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(f=a.memoizedState.cachePool.pool),f!==r&&(a.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Ns(t,t.updateQueue),Ue(t),null);case 4:return Ye(),e===null&&Br(t.stateNode.containerInfo),Ue(t),null;case 10:return fn(t.type),Ue(t),null;case 19:if(Y($e),a=t.memoizedState,a===null)return Ue(t),null;if(r=(t.flags&128)!==0,f=a.rendering,f===null)if(r)ui(a,!1);else{if(He!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(f=ms(e),f!==null){for(t.flags|=128,ui(a,!1),e=f.updateQueue,t.updateQueue=e,Ns(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Jo(n,e),n=n.sibling;return J($e,$e.current&1|2),be&&cn(t,a.treeForkCount),t.child}e=e.sibling}a.tail!==null&&Et()>Ds&&(t.flags|=128,r=!0,ui(a,!1),t.lanes=4194304)}else{if(!r)if(e=ms(f),e!==null){if(t.flags|=128,r=!0,e=e.updateQueue,t.updateQueue=e,Ns(t,e),ui(a,!0),a.tail===null&&a.tailMode==="hidden"&&!f.alternate&&!be)return Ue(t),null}else 2*Et()-a.renderingStartTime>Ds&&n!==536870912&&(t.flags|=128,r=!0,ui(a,!1),t.lanes=4194304);a.isBackwards?(f.sibling=t.child,t.child=f):(e=a.last,e!==null?e.sibling=f:t.child=f,a.last=f)}return a.tail!==null?(e=a.tail,a.rendering=e,a.tail=e.sibling,a.renderingStartTime=Et(),e.sibling=null,n=$e.current,J($e,r?n&1|2:n&1),be&&cn(t,a.treeForkCount),e):(Ue(t),null);case 22:case 23:return Mt(t),kc(),a=t.memoizedState!==null,e!==null?e.memoizedState!==null!==a&&(t.flags|=8192):a&&(t.flags|=8192),a?(n&536870912)!==0&&(t.flags&128)===0&&(Ue(t),t.subtreeFlags&6&&(t.flags|=8192)):Ue(t),n=t.updateQueue,n!==null&&Ns(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),a=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(a=t.memoizedState.cachePool.pool),a!==n&&(t.flags|=2048),e!==null&&Y(hl),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),fn(Ve),Ue(t),null;case 25:return null;case 30:return null}throw Error(s(156,t.tag))}function S0(e,t){switch(Ac(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return fn(Ve),Ye(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ki(t),null;case 31:if(t.memoizedState!==null){if(Mt(t),t.alternate===null)throw Error(s(340));rl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Mt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(s(340));rl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Y($e),null;case 4:return Ye(),null;case 10:return fn(t.type),null;case 22:case 23:return Mt(t),kc(),e!==null&&Y(hl),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return fn(Ve),null;case 25:return null;default:return null}}function Ed(e,t){switch(Ac(t),t.tag){case 3:fn(Ve),Ye();break;case 26:case 27:case 5:ki(t);break;case 4:Ye();break;case 31:t.memoizedState!==null&&Mt(t);break;case 13:Mt(t);break;case 19:Y($e);break;case 10:fn(t.type);break;case 22:case 23:Mt(t),kc(),e!==null&&Y(hl);break;case 24:fn(Ve)}}function ci(e,t){try{var n=t.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var r=a.next;n=r;do{if((n.tag&e)===e){a=void 0;var f=n.create,d=n.inst;a=f(),d.destroy=a}n=n.next}while(n!==r)}}catch(y){_e(t,t.return,y)}}function kn(e,t,n){try{var a=t.updateQueue,r=a!==null?a.lastEffect:null;if(r!==null){var f=r.next;a=f;do{if((a.tag&e)===e){var d=a.inst,y=d.destroy;if(y!==void 0){d.destroy=void 0,r=t;var b=n,z=y;try{z()}catch(B){_e(r,b,B)}}}a=a.next}while(a!==f)}}catch(B){_e(t,t.return,B)}}function Ad(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{dh(t,n)}catch(a){_e(e,e.return,a)}}}function wd(e,t,n){n.props=yl(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(a){_e(e,t,a)}}function ri(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var a=e.stateNode;break;case 30:a=e.stateNode;break;default:a=e.stateNode}typeof n=="function"?e.refCleanup=n(a):n.current=a}}catch(r){_e(e,t,r)}}function Pt(e,t){var n=e.ref,a=e.refCleanup;if(n!==null)if(typeof a=="function")try{a()}catch(r){_e(e,t,r)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(r){_e(e,t,r)}else n.current=null}function Od(e){var t=e.type,n=e.memoizedProps,a=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&a.focus();break e;case"img":n.src?a.src=n.src:n.srcSet&&(a.srcset=n.srcSet)}}catch(r){_e(e,e.return,r)}}function pr(e,t,n){try{var a=e.stateNode;$0(a,e.type,n,t),a[ht]=t}catch(r){_e(e,e.return,r)}}function _d(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Vn(e.type)||e.tag===4}function yr(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||_d(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Vn(e.type)||e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function vr(e,t,n){var a=e.tag;if(a===5||a===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=an));else if(a!==4&&(a===27&&Vn(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(vr(e,t,n),e=e.sibling;e!==null;)vr(e,t,n),e=e.sibling}function Ms(e,t,n){var a=e.tag;if(a===5||a===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(a!==4&&(a===27&&Vn(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Ms(e,t,n),e=e.sibling;e!==null;)Ms(e,t,n),e=e.sibling}function Nd(e){var t=e.stateNode,n=e.memoizedProps;try{for(var a=e.type,r=t.attributes;r.length;)t.removeAttributeNode(r[0]);at(t,a,n),t[et]=e,t[ht]=n}catch(f){_e(e,e.return,f)}}var gn=!1,Ze=!1,br=!1,Md=typeof WeakSet=="function"?WeakSet:Set,Pe=null;function T0(e,t){if(e=e.containerInfo,Hr=Js,e=Ho(e),hc(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var a=n.getSelection&&n.getSelection();if(a&&a.rangeCount!==0){n=a.anchorNode;var r=a.anchorOffset,f=a.focusNode;a=a.focusOffset;try{n.nodeType,f.nodeType}catch{n=null;break e}var d=0,y=-1,b=-1,z=0,B=0,H=e,L=null;t:for(;;){for(var j;H!==n||r!==0&&H.nodeType!==3||(y=d+r),H!==f||a!==0&&H.nodeType!==3||(b=d+a),H.nodeType===3&&(d+=H.nodeValue.length),(j=H.firstChild)!==null;)L=H,H=j;for(;;){if(H===e)break t;if(L===n&&++z===r&&(y=d),L===f&&++B===a&&(b=d),(j=H.nextSibling)!==null)break;H=L,L=H.parentNode}H=j}n=y===-1||b===-1?null:{start:y,end:b}}else n=null}n=n||{start:0,end:0}}else n=null;for(Yr={focusedElem:e,selectionRange:n},Js=!1,Pe=t;Pe!==null;)if(t=Pe,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Pe=e;else for(;Pe!==null;){switch(t=Pe,f=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n title"))),at(f,a,n),f[et]=e,Ie(f),a=f;break e;case"link":var d=Um("link","href",r).get(a+(n.href||""));if(d){for(var y=0;yze&&(d=ze,ze=ae,ae=d);var N=ko(y,ae),A=ko(y,ze);if(N&&A&&(j.rangeCount!==1||j.anchorNode!==N.node||j.anchorOffset!==N.offset||j.focusNode!==A.node||j.focusOffset!==A.offset)){var C=H.createRange();C.setStart(N.node,N.offset),j.removeAllRanges(),ae>ze?(j.addRange(C),j.extend(A.node,A.offset)):(C.setEnd(A.node,A.offset),j.addRange(C))}}}}for(H=[],j=y;j=j.parentNode;)j.nodeType===1&&H.push({element:j,left:j.scrollLeft,top:j.scrollTop});for(typeof y.focus=="function"&&y.focus(),y=0;yn?32:n,D.T=null,n=_r,_r=null;var f=$n,d=Sn;if(We=0,aa=$n=null,Sn=0,(Ee&6)!==0)throw Error(s(331));var y=Ee;if(Ee|=4,qd(f.current),jd(f,f.current,d,n),Ee=y,gi(0,!1),At&&typeof At.onPostCommitFiberRoot=="function")try{At.onPostCommitFiberRoot(La,f)}catch{}return!0}finally{K.p=r,D.T=a,lm(e,t)}}function im(e,t,n){t=Bt(n,t),t=ir(e.stateNode,t,2),e=Rn(e,t,2),e!==null&&(Ra(e,2),en(e))}function _e(e,t,n){if(e.tag===3)im(e,e,n);else for(;t!==null;){if(t.tag===3){im(t,e,n);break}else if(t.tag===1){var a=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof a.componentDidCatch=="function"&&(Yn===null||!Yn.has(a))){e=Bt(n,e),n=sd(2),a=Rn(t,n,2),a!==null&&(ud(n,a,t,e),Ra(a,2),en(a));break}}t=t.return}}function zr(e,t,n){var a=e.pingCache;if(a===null){a=e.pingCache=new w0;var r=new Set;a.set(t,r)}else r=a.get(t),r===void 0&&(r=new Set,a.set(t,r));r.has(n)||(Er=!0,r.add(n),e=C0.bind(null,e,t,n),t.then(e,e))}function C0(e,t,n){var a=e.pingCache;a!==null&&a.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,xe===e&&(ye&n)===n&&(He===4||He===3&&(ye&62914560)===ye&&300>Et()-xs?(Ee&2)===0&&ia(e,0):Ar|=n,la===ye&&(la=0)),en(e)}function sm(e,t){t===0&&(t=Pf()),e=ul(e,t),e!==null&&(Ra(e,t),en(e))}function z0(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),sm(e,n)}function x0(e,t){var n=0;switch(e.tag){case 31:case 13:var a=e.stateNode,r=e.memoizedState;r!==null&&(n=r.retryLane);break;case 19:a=e.stateNode;break;case 22:a=e.stateNode._retryCache;break;default:throw Error(s(314))}a!==null&&a.delete(t),sm(e,n)}function D0(e,t){return Gu(e,t)}var ks=null,ua=null,xr=!1,qs=!1,Dr=!1,Kn=0;function en(e){e!==ua&&e.next===null&&(ua===null?ks=ua=e:ua=ua.next=e),qs=!0,xr||(xr=!0,U0())}function gi(e,t){if(!Dr&&qs){Dr=!0;do for(var n=!1,a=ks;a!==null;){if(e!==0){var r=a.pendingLanes;if(r===0)var f=0;else{var d=a.suspendedLanes,y=a.pingedLanes;f=(1<<31-wt(42|e)+1)-1,f&=r&~(d&~y),f=f&201326741?f&201326741|1:f?f|2:0}f!==0&&(n=!0,fm(a,f))}else f=ye,f=Gi(a,a===xe?f:0,a.cancelPendingCommit!==null||a.timeoutHandle!==-1),(f&3)===0||Ua(a,f)||(n=!0,fm(a,f));a=a.next}while(n);Dr=!1}}function L0(){um()}function um(){qs=xr=!1;var e=0;Kn!==0&&K0()&&(e=Kn);for(var t=Et(),n=null,a=ks;a!==null;){var r=a.next,f=cm(a,t);f===0?(a.next=null,n===null?ks=r:n.next=r,r===null&&(ua=n)):(n=a,(e!==0||(f&3)!==0)&&(qs=!0)),a=r}We!==0&&We!==5||gi(e),Kn!==0&&(Kn=0)}function cm(e,t){for(var n=e.suspendedLanes,a=e.pingedLanes,r=e.expirationTimes,f=e.pendingLanes&-62914561;0y)break;var B=b.transferSize,H=b.initiatorType;B&&vm(H)&&(b=b.responseEnd,d+=B*(b"u"?null:document;function zm(e,t,n){var a=ca;if(a&&typeof t=="string"&&t){var r=Rt(t);r='link[rel="'+e+'"][href="'+r+'"]',typeof n=="string"&&(r+='[crossorigin="'+n+'"]'),Cm.has(r)||(Cm.add(r),e={rel:e,crossOrigin:n,href:t},a.querySelector(r)===null&&(t=a.createElement("link"),at(t,"link",e),Ie(t),a.head.appendChild(t)))}}function P0(e){Tn.D(e),zm("dns-prefetch",e,null)}function e1(e,t){Tn.C(e,t),zm("preconnect",e,t)}function t1(e,t,n){Tn.L(e,t,n);var a=ca;if(a&&e&&t){var r='link[rel="preload"][as="'+Rt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(r+='[imagesrcset="'+Rt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(r+='[imagesizes="'+Rt(n.imageSizes)+'"]')):r+='[href="'+Rt(e)+'"]';var f=r;switch(t){case"style":f=ra(e);break;case"script":f=fa(e)}Gt.has(f)||(e=v({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Gt.set(f,e),a.querySelector(r)!==null||t==="style"&&a.querySelector(bi(f))||t==="script"&&a.querySelector(Si(f))||(t=a.createElement("link"),at(t,"link",e),Ie(t),a.head.appendChild(t)))}}function n1(e,t){Tn.m(e,t);var n=ca;if(n&&e){var a=t&&typeof t.as=="string"?t.as:"script",r='link[rel="modulepreload"][as="'+Rt(a)+'"][href="'+Rt(e)+'"]',f=r;switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":f=fa(e)}if(!Gt.has(f)&&(e=v({rel:"modulepreload",href:e},t),Gt.set(f,e),n.querySelector(r)===null)){switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Si(f)))return}a=n.createElement("link"),at(a,"link",e),Ie(a),n.head.appendChild(a)}}}function l1(e,t,n){Tn.S(e,t,n);var a=ca;if(a&&e){var r=xl(a).hoistableStyles,f=ra(e);t=t||"default";var d=r.get(f);if(!d){var y={loading:0,preload:null};if(d=a.querySelector(bi(f)))y.loading=5;else{e=v({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Gt.get(f))&&Zr(e,n);var b=d=a.createElement("link");Ie(b),at(b,"link",e),b._p=new Promise(function(z,B){b.onload=z,b.onerror=B}),b.addEventListener("load",function(){y.loading|=1}),b.addEventListener("error",function(){y.loading|=2}),y.loading|=4,Ks(d,t,a)}d={type:"stylesheet",instance:d,count:1,state:y},r.set(f,d)}}}function a1(e,t){Tn.X(e,t);var n=ca;if(n&&e){var a=xl(n).hoistableScripts,r=fa(e),f=a.get(r);f||(f=n.querySelector(Si(r)),f||(e=v({src:e,async:!0},t),(t=Gt.get(r))&&Jr(e,t),f=n.createElement("script"),Ie(f),at(f,"link",e),n.head.appendChild(f)),f={type:"script",instance:f,count:1,state:null},a.set(r,f))}}function i1(e,t){Tn.M(e,t);var n=ca;if(n&&e){var a=xl(n).hoistableScripts,r=fa(e),f=a.get(r);f||(f=n.querySelector(Si(r)),f||(e=v({src:e,async:!0,type:"module"},t),(t=Gt.get(r))&&Jr(e,t),f=n.createElement("script"),Ie(f),at(f,"link",e),n.head.appendChild(f)),f={type:"script",instance:f,count:1,state:null},a.set(r,f))}}function xm(e,t,n,a){var r=(r=me.current)?Gs(r):null;if(!r)throw Error(s(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=ra(n.href),n=xl(r).hoistableStyles,a=n.get(t),a||(a={type:"style",instance:null,count:0,state:null},n.set(t,a)),a):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=ra(n.href);var f=xl(r).hoistableStyles,d=f.get(e);if(d||(r=r.ownerDocument||r,d={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},f.set(e,d),(f=r.querySelector(bi(e)))&&!f._p&&(d.instance=f,d.state.loading=5),Gt.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Gt.set(e,n),f||s1(r,e,n,d.state))),t&&a===null)throw Error(s(528,""));return d}if(t&&a!==null)throw Error(s(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=fa(n),n=xl(r).hoistableScripts,a=n.get(t),a||(a={type:"script",instance:null,count:0,state:null},n.set(t,a)),a):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,e))}}function ra(e){return'href="'+Rt(e)+'"'}function bi(e){return'link[rel="stylesheet"]['+e+"]"}function Dm(e){return v({},e,{"data-precedence":e.precedence,precedence:null})}function s1(e,t,n,a){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?a.loading=1:(t=e.createElement("link"),a.preload=t,t.addEventListener("load",function(){return a.loading|=1}),t.addEventListener("error",function(){return a.loading|=2}),at(t,"link",n),Ie(t),e.head.appendChild(t))}function fa(e){return'[src="'+Rt(e)+'"]'}function Si(e){return"script[async]"+e}function Lm(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var a=e.querySelector('style[data-href~="'+Rt(n.href)+'"]');if(a)return t.instance=a,Ie(a),a;var r=v({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return a=(e.ownerDocument||e).createElement("style"),Ie(a),at(a,"style",r),Ks(a,n.precedence,e),t.instance=a;case"stylesheet":r=ra(n.href);var f=e.querySelector(bi(r));if(f)return t.state.loading|=4,t.instance=f,Ie(f),f;a=Dm(n),(r=Gt.get(r))&&Zr(a,r),f=(e.ownerDocument||e).createElement("link"),Ie(f);var d=f;return d._p=new Promise(function(y,b){d.onload=y,d.onerror=b}),at(f,"link",a),t.state.loading|=4,Ks(f,n.precedence,e),t.instance=f;case"script":return f=fa(n.src),(r=e.querySelector(Si(f)))?(t.instance=r,Ie(r),r):(a=n,(r=Gt.get(f))&&(a=v({},n),Jr(a,r)),e=e.ownerDocument||e,r=e.createElement("script"),Ie(r),at(r,"link",a),e.head.appendChild(r),t.instance=r);case"void":return null;default:throw Error(s(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(a=t.instance,t.state.loading|=4,Ks(a,n.precedence,e));return t.instance}function Ks(e,t,n){for(var a=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),r=a.length?a[a.length-1]:null,f=r,d=0;d title"):null)}function u1(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function jm(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function c1(e,t,n,a){if(n.type==="stylesheet"&&(typeof a.media!="string"||matchMedia(a.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var r=ra(a.href),f=t.querySelector(bi(r));if(f){t=f._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=Qs.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=f,Ie(f);return}f=t.ownerDocument||t,a=Dm(a),(r=Gt.get(r))&&Zr(a,r),f=f.createElement("link"),Ie(f);var d=f;d._p=new Promise(function(y,b){d.onload=y,d.onerror=b}),at(f,"link",a),n.instance=f}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=Qs.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var Wr=0;function r1(e,t){return e.stylesheets&&e.count===0&&Zs(e,e.stylesheets),0Wr?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(a),clearTimeout(r)}}:null}function Qs(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Zs(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Xs=null;function Zs(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Xs=new Map,t.forEach(f1,e),Xs=null,Qs.call(e))}function f1(e,t){if(!(t.state.loading&4)){var n=Xs.get(e);if(n)var a=n.get(null);else{n=new Map,Xs.set(e,n);for(var r=e.querySelectorAll("link[data-precedence],style[data-precedence]"),f=0;f"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(l){console.error(l)}}return u(),sf.exports=R1(),sf.exports}var B1=j1();const k1="modulepreload",q1=function(u){return"/"+u},cg={},H1=function(l,i,s){let c=Promise.resolve();if(i&&i.length>0){let h=function(p){return Promise.all(p.map(T=>Promise.resolve(T).then(v=>({status:"fulfilled",value:v}),v=>({status:"rejected",reason:v}))))};document.getElementsByTagName("link");const m=document.querySelector("meta[property=csp-nonce]"),g=(m==null?void 0:m.nonce)||(m==null?void 0:m.getAttribute("nonce"));c=h(i.map(p=>{if(p=q1(p),p in cg)return;cg[p]=!0;const T=p.endsWith(".css"),v=T?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${p}"]${v}`))return;const _=document.createElement("link");if(_.rel=T?"stylesheet":k1,T||(_.as="script"),_.crossOrigin="",_.href=p,g&&_.setAttribute("nonce",g),document.head.appendChild(_),T)return new Promise((E,x)=>{_.addEventListener("load",E),_.addEventListener("error",()=>x(new Error(`Unable to preload CSS for ${p}`)))})}))}function o(h){const m=new Event("vite:preloadError",{cancelable:!0});if(m.payload=h,window.dispatchEvent(m),!m.defaultPrevented)throw h}return c.then(h=>{for(const m of h||[])m.status==="rejected"&&o(m.reason);return l().catch(o)})};function Y1(u,l){const i=/(\x1b\[(\d+(;\d+)*)m)|([^\x1b]+)/g,s=[];let c,o={},h=!1,m=l==null?void 0:l.fg,g=l==null?void 0:l.bg;for(;(c=i.exec(u))!==null;){const[,,p,,T]=c;if(p){const v=+p;switch(v){case 0:o={};break;case 1:o["font-weight"]="bold";break;case 2:o.opacity="0.8";break;case 3:o["font-style"]="italic";break;case 4:o["text-decoration"]="underline";break;case 7:h=!0;break;case 8:o.display="none";break;case 9:o["text-decoration"]="line-through";break;case 22:delete o["font-weight"],delete o["font-style"],delete o.opacity,delete o["text-decoration"];break;case 23:delete o["font-weight"],delete o["font-style"],delete o.opacity;break;case 24:delete o["text-decoration"];break;case 27:h=!1;break;case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:m=rg[v-30];break;case 39:m=l==null?void 0:l.fg;break;case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:g=rg[v-40];break;case 49:g=l==null?void 0:l.bg;break;case 53:o["text-decoration"]="overline";break;case 90:case 91:case 92:case 93:case 94:case 95:case 96:case 97:m=fg[v-90];break;case 100:case 101:case 102:case 103:case 104:case 105:case 106:case 107:g=fg[v-100];break}}else if(T){const v={...o},_=h?g:m;_!==void 0&&(v.color=_);const E=h?m:g;E!==void 0&&(v["background-color"]=E),s.push(`${$1(T)}`)}}return s.join("")}const rg={0:"var(--vscode-terminal-ansiBlack)",1:"var(--vscode-terminal-ansiRed)",2:"var(--vscode-terminal-ansiGreen)",3:"var(--vscode-terminal-ansiYellow)",4:"var(--vscode-terminal-ansiBlue)",5:"var(--vscode-terminal-ansiMagenta)",6:"var(--vscode-terminal-ansiCyan)",7:"var(--vscode-terminal-ansiWhite)"},fg={0:"var(--vscode-terminal-ansiBrightBlack)",1:"var(--vscode-terminal-ansiBrightRed)",2:"var(--vscode-terminal-ansiBrightGreen)",3:"var(--vscode-terminal-ansiBrightYellow)",4:"var(--vscode-terminal-ansiBrightBlue)",5:"var(--vscode-terminal-ansiBrightMagenta)",6:"var(--vscode-terminal-ansiBrightCyan)",7:"var(--vscode-terminal-ansiBrightWhite)"};function $1(u){return u.replace(/[&"<>]/g,l=>({"&":"&",'"':""","<":"<",">":">"})[l])}function G1(u){return Object.entries(u).map(([l,i])=>`${l}: ${i}`).join("; ")}const ff=({text:u,highlighter:l,mimeType:i,linkify:s,readOnly:c,highlight:o,revealLine:h,lineNumbers:m,isFocused:g,focusOnChange:p,wrapLines:T,onChange:v,dataTestId:_,placeholder:E})=>{const[x,S]=Mg(),[w]=he.useState(H1(()=>import("./codeMirrorModule-C8KMvO9L.js"),__vite__mapDeps([0,1])).then(Q=>Q.default)),M=he.useRef(null),[R,G]=he.useState();return he.useEffect(()=>{(async()=>{var V,U;const Q=await w;V1(Q);const Z=S.current;if(!Z)return;const W=X1(l)||Q1(i)||(s?"text/linkified":"");if(M.current&&W===M.current.cm.getOption("mode")&&!!c===M.current.cm.getOption("readOnly")&&m===M.current.cm.getOption("lineNumbers")&&T===M.current.cm.getOption("lineWrapping")&&E===M.current.cm.getOption("placeholder"))return;(U=(V=M.current)==null?void 0:V.cm)==null||U.getWrapperElement().remove();const k=Q(Z,{value:"",mode:W,readOnly:!!c,lineNumbers:m,lineWrapping:T,placeholder:E,matchBrackets:!0,autoCloseBrackets:!0,extraKeys:{"Ctrl-F":"findPersistent","Cmd-F":"findPersistent"}});return M.current={cm:k},g&&k.focus(),G(k),k})()},[w,R,S,l,i,s,m,T,c,g,E]),he.useEffect(()=>{M.current&&M.current.cm.setSize(x.width,x.height)},[x]),he.useLayoutEffect(()=>{var W;if(!R)return;let Q=!1;if(R.getValue()!==u&&(R.setValue(u),Q=!0,p&&(R.execCommand("selectAll"),R.focus())),Q||JSON.stringify(o)!==JSON.stringify(M.current.highlight)){for(const U of M.current.highlight||[])R.removeLineClass(U.line-1,"wrap");for(const U of o||[])R.addLineClass(U.line-1,"wrap",`source-line-${U.type}`);for(const U of M.current.widgets||[])R.removeLineWidget(U);for(const U of M.current.markers||[])U.clear();const k=[],V=[];for(const U of o||[]){if(U.type!=="subtle-error"&&U.type!=="error")continue;const ie=(W=M.current)==null?void 0:W.cm.getLine(U.line-1);if(ie){const te={};te.title=U.message||"",V.push(R.markText({line:U.line-1,ch:0},{line:U.line-1,ch:U.column||ie.length},{className:"source-line-error-underline",attributes:te}))}if(U.type==="error"){const te=document.createElement("div");te.innerHTML=Y1(U.message||""),te.className="source-line-error-widget",k.push(R.addLineWidget(U.line,te,{above:!0,coverGutter:!1}))}}M.current.highlight=o,M.current.widgets=k,M.current.markers=V}typeof h=="number"&&M.current.cm.lineCount()>=h&&R.scrollIntoView({line:Math.max(0,h-1),ch:0},50);let Z;return v&&(Z=()=>v(R.getValue()),R.on("change",Z)),()=>{Z&&R.off("change",Z)}},[R,u,o,h,p,v]),X.jsx("div",{"data-testid":_,className:"cm-wrapper",ref:S,onClick:K1})};function K1(u){var i;if(!(u.target instanceof HTMLElement))return;let l;u.target.classList.contains("cm-linkified")?l=u.target.textContent:u.target.classList.contains("cm-link")&&((i=u.target.nextElementSibling)!=null&&i.classList.contains("cm-url"))&&(l=u.target.nextElementSibling.textContent.slice(1,-1)),l&&(u.preventDefault(),u.stopPropagation(),window.open(l,"_blank"))}let og=!1;function V1(u){og||(og=!0,u.defineSimpleMode("text/linkified",{start:[{regex:w1,token:"linkified"}]}))}function Q1(u){if(u){if(u.includes("javascript")||u.includes("json"))return"javascript";if(u.includes("python"))return"python";if(u.includes("csharp"))return"text/x-csharp";if(u.includes("java"))return"text/x-java";if(u.includes("markdown"))return"markdown";if(u.includes("html")||u.includes("svg"))return"htmlmixed";if(u.includes("css"))return"css"}}function X1(u){if(u)return{javascript:"javascript",jsonl:"javascript",python:"python",csharp:"text/x-csharp",java:"text/x-java",markdown:"markdown",html:"htmlmixed",css:"css",yaml:"yaml"}[u]}const Z1=50,J1=({sidebarSize:u,sidebarHidden:l=!1,sidebarIsFirst:i=!1,orientation:s="vertical",minSidebarSize:c=Z1,settingName:o,sidebar:h,main:m})=>{const g=Math.max(c,u)*window.devicePixelRatio,[p,T]=pu(o?o+"."+s+":size":void 0,g),[v,_]=pu(o?o+"."+s+":size":void 0,g),[E,x]=he.useState(null),[S,w]=Mg();let M;s==="vertical"?(M=v/window.devicePixelRatio,S&&S.heightx({offset:s==="vertical"?G.clientY:G.clientX,size:M}),onMouseUp:()=>x(null),onMouseMove:G=>{if(!G.buttons)x(null);else if(E){const Z=(s==="vertical"?G.clientY:G.clientX)-E.offset,W=i?E.size+Z:E.size-Z,V=G.target.parentElement.getBoundingClientRect(),U=Math.min(Math.max(c,W),(s==="vertical"?V.height:V.width)-c);s==="vertical"?_(U*window.devicePixelRatio):T(U*window.devicePixelRatio)}}})]})},xg=({noShadow:u,children:l,noMinHeight:i,className:s,sidebarBackground:c,onClick:o})=>X.jsx("div",{className:wl("toolbar",u&&"no-shadow",i&&"no-min-height",s,c&&"toolbar-sidebar-background"),onClick:o,children:l}),W1=({tabs:u,selectedTab:l,setSelectedTab:i,leftToolbar:s,rightToolbar:c,dataTestId:o,mode:h})=>{const m=he.useId();return l||(l=u[0].id),h||(h="default"),X.jsx("div",{className:"tabbed-pane","data-testid":o,children:X.jsxs("div",{className:"vbox",children:[X.jsxs(xg,{children:[s&&X.jsxs("div",{style:{flex:"none",display:"flex",margin:"0 4px",alignItems:"center"},children:[...s]}),h==="default"&&X.jsx("div",{style:{flex:"auto",display:"flex",height:"100%",overflow:"hidden"},role:"tablist",children:[...u.map(g=>X.jsx(F1,{id:g.id,ariaControls:`${m}-${g.id}`,title:g.title,count:g.count,errorCount:g.errorCount,selected:l===g.id,onSelect:i},g.id))]}),h==="select"&&X.jsx("div",{style:{flex:"auto",display:"flex",height:"100%",overflow:"hidden"},role:"tablist",children:X.jsx("select",{style:{width:"100%",background:"none",cursor:"pointer"},value:l,onChange:g=>{i==null||i(u[g.currentTarget.selectedIndex].id)},children:u.map(g=>{let p="";return g.count&&(p=` (${g.count})`),g.errorCount&&(p=` (${g.errorCount})`),X.jsxs("option",{value:g.id,role:"tab","aria-controls":`${m}-${g.id}`,children:[g.title,p]},g.id)})})}),c&&X.jsxs("div",{style:{flex:"none",display:"flex",alignItems:"center"},children:[...c]})]}),u.map(g=>{const p="tab-content tab-"+g.id;if(g.component)return X.jsx("div",{id:`${m}-${g.id}`,role:"tabpanel","aria-label":g.title,className:p,style:{display:l===g.id?"inherit":"none"},children:g.component},g.id);if(l===g.id)return X.jsx("div",{id:`${m}-${g.id}`,role:"tabpanel","aria-label":g.title,className:p,children:g.render()},g.id)})]})})},F1=({id:u,title:l,count:i,errorCount:s,selected:c,onSelect:o,ariaControls:h})=>X.jsxs("div",{className:wl("tabbed-pane-tab",c&&"selected"),onClick:()=>o==null?void 0:o(u),role:"tab",title:l,"aria-controls":h,"aria-selected":c,children:[X.jsx("div",{className:"tabbed-pane-tab-label",children:l}),!!i&&X.jsx("div",{className:"tabbed-pane-tab-counter",children:i}),!!s&&X.jsx("div",{className:"tabbed-pane-tab-counter error",children:s})]}),I1=({sources:u,fileId:l,setFileId:i})=>X.jsx("select",{className:"source-chooser",hidden:!u.length,title:"Source chooser",value:l,onChange:s=>{i(s.target.selectedOptions[0].value)},children:P1(u)});function P1(u){const l=c=>c.replace(/.*[/\\]([^/\\]+)/,"$1"),i=c=>X.jsx("option",{value:c.id,children:l(c.label)},c.id),s=new Map;for(const c of u){let o=s.get(c.group||"Debugger");o||(o=[],s.set(c.group||"Debugger",o)),o.push(c)}return[...s.entries()].map(([c,o])=>X.jsx("optgroup",{label:c,children:o.filter(h=>(h.group||"Debugger")===c).map(h=>i(h))},c))}function ev(){return{id:"default",isRecorded:!1,text:"",language:"javascript",label:"",highlight:[]}}const Dt=he.forwardRef(function({children:l,title:i="",icon:s,disabled:c=!1,toggled:o=!1,onClick:h=()=>{},style:m,testId:g,className:p,ariaLabel:T},v){return X.jsxs("button",{ref:v,className:wl(p,"toolbar-button",s,o&&"toggled"),onMouseDown:dg,onClick:h,onDoubleClick:dg,title:i,disabled:!!c,style:m,"data-testid":g,"aria-label":T||i,children:[s&&X.jsx("span",{className:`codicon codicon-${s}`,style:l?{marginRight:5}:{}}),l]})}),hg=({style:u})=>X.jsx("div",{className:"toolbar-separator",style:u}),dg=u=>{u.stopPropagation(),u.preventDefault()};function tv(u){if(u<0||!isFinite(u))return"-";if(u===0)return"0ms";if(u<1e3)return u.toFixed(0)+"ms";const l=u/1e3;if(l<60)return l.toFixed(1)+"s";const i=l/60;if(i<60)return i.toFixed(1)+"m";const s=i/60;return s<24?s.toFixed(1)+"h":(s/24).toFixed(1)+"d"}const Je=function(u,l,i){return u>=l&&u<=i};function bt(u){return Je(u,48,57)}function mg(u){return bt(u)||Je(u,65,70)||Je(u,97,102)}function nv(u){return Je(u,65,90)}function lv(u){return Je(u,97,122)}function av(u){return nv(u)||lv(u)}function iv(u){return u>=128}function uu(u){return av(u)||iv(u)||u===95}function gg(u){return uu(u)||bt(u)||u===45}function sv(u){return Je(u,0,8)||u===11||Je(u,14,31)||u===127}function cu(u){return u===10}function En(u){return cu(u)||u===9||u===32}const uv=1114111;class Df extends Error{constructor(l){super(l),this.name="InvalidCharacterError"}}function cv(u){const l=[];for(let i=0;i=l.length?-1:l[$]},h=function($){if($===void 0&&($=1),$>3)throw"Spec Error: no more than three codepoints of lookahead.";return o(i+$)},m=function($){return $===void 0&&($=1),i+=$,c=o(i),!0},g=function(){return i-=1,!0},p=function($){return $===void 0&&($=c),$===-1},T=function(){if(v(),m(),En(c)){for(;En(h());)m();return new Af}else{if(c===34)return x();if(c===35)if(gg(h())||M(h(1),h(2))){const $=new Qg("");return G(h(1),h(2),h(3))&&($.type="id"),$.value=k(),$}else return new ut(c);else return c===36?h()===61?(m(),new dv):new ut(c):c===39?x():c===40?new Yg:c===41?new $g:c===42?h()===61?(m(),new mv):new ut(c):c===43?W()?(g(),_()):new ut(c):c===44?new Bg:c===45?W()?(g(),_()):h(1)===45&&h(2)===62?(m(2),new Ug):Q()?(g(),E()):new ut(c):c===46?W()?(g(),_()):new ut(c):c===58?new Rg:c===59?new jg:c===60?h(1)===33&&h(2)===45&&h(3)===45?(m(3),new Lg):new ut(c):c===64?G(h(1),h(2),h(3))?new Vg(k()):new ut(c):c===91?new Hg:c===92?R()?(g(),E()):new ut(c):c===93?new wf:c===94?h()===61?(m(),new hv):new ut(c):c===123?new kg:c===124?h()===61?(m(),new ov):h()===124?(m(),new Gg):new ut(c):c===125?new qg:c===126?h()===61?(m(),new fv):new ut(c):bt(c)?(g(),_()):uu(c)?(g(),E()):p()?new fu:new ut(c)}},v=function(){for(;h(1)===47&&h(2)===42;)for(m(2);;)if(m(),c===42&&h()===47){m();break}else if(p())return},_=function(){const $=V();if(G(h(1),h(2),h(3))){const ee=new gv;return ee.value=$.value,ee.repr=$.repr,ee.type=$.type,ee.unit=k(),ee}else if(h()===37){m();const ee=new Wg;return ee.value=$.value,ee.repr=$.repr,ee}else{const ee=new Jg;return ee.value=$.value,ee.repr=$.repr,ee.type=$.type,ee}},E=function(){const $=k();if($.toLowerCase()==="url"&&h()===40){for(m();En(h(1))&&En(h(2));)m();return h()===34||h()===39?new ou($):En(h())&&(h(2)===34||h(2)===39)?new ou($):S()}else return h()===40?(m(),new ou($)):new Kg($)},x=function($){$===void 0&&($=c);let ee="";for(;m();){if(c===$||p())return new Xg(ee);if(cu(c))return g(),new Dg;c===92?p(h())||(cu(h())?m():ee+=Fe(w())):ee+=Fe(c)}throw new Error("Internal error")},S=function(){const $=new Zg("");for(;En(h());)m();if(p(h()))return $;for(;m();){if(c===41||p())return $;if(En(c)){for(;En(h());)m();return h()===41||p(h())?(m(),$):(ie(),new ru)}else{if(c===34||c===39||c===40||sv(c))return ie(),new ru;if(c===92)if(R())$.value+=Fe(w());else return ie(),new ru;else $.value+=Fe(c)}}throw new Error("Internal error")},w=function(){if(m(),mg(c)){const $=[c];for(let Ae=0;Ae<5&&mg(h());Ae++)m(),$.push(c);En(h())&&m();let ee=parseInt($.map(function(Ae){return String.fromCharCode(Ae)}).join(""),16);return ee>uv&&(ee=65533),ee}else return p()?65533:c},M=function($,ee){return!($!==92||cu(ee))},R=function(){return M(c,h())},G=function($,ee,Ae){return $===45?uu(ee)||ee===45||M(ee,Ae):uu($)?!0:$===92?M($,ee):!1},Q=function(){return G(c,h(1),h(2))},Z=function($,ee,Ae){return $===43||$===45?!!(bt(ee)||ee===46&&bt(Ae)):$===46?!!bt(ee):!!bt($)},W=function(){return Z(c,h(1),h(2))},k=function(){let $="";for(;m();)if(gg(c))$+=Fe(c);else if(R())$+=Fe(w());else return g(),$;throw new Error("Internal parse error")},V=function(){let $="",ee="integer";for((h()===43||h()===45)&&(m(),$+=Fe(c));bt(h());)m(),$+=Fe(c);if(h(1)===46&&bt(h(2)))for(m(),$+=Fe(c),m(),$+=Fe(c),ee="number";bt(h());)m(),$+=Fe(c);const Ae=h(1),se=h(2),D=h(3);if((Ae===69||Ae===101)&&bt(se))for(m(),$+=Fe(c),m(),$+=Fe(c),ee="number";bt(h());)m(),$+=Fe(c);else if((Ae===69||Ae===101)&&(se===43||se===45)&&bt(D))for(m(),$+=Fe(c),m(),$+=Fe(c),m(),$+=Fe(c),ee="number";bt(h());)m(),$+=Fe(c);const K=U($);return{type:ee,value:K,repr:$}},U=function($){return+$},ie=function(){for(;m();){if(c===41||p())return;R()&&w()}};let te=0;for(;!p(h());)if(s.push(T()),te++,te>l.length*2)throw new Error("I'm infinite-looping!");return s}class Ke{constructor(){this.tokenType=""}toJSON(){return{token:this.tokenType}}toString(){return this.tokenType}toSource(){return""+this}}class Dg extends Ke{constructor(){super(...arguments),this.tokenType="BADSTRING"}}class ru extends Ke{constructor(){super(...arguments),this.tokenType="BADURL"}}class Af extends Ke{constructor(){super(...arguments),this.tokenType="WHITESPACE"}toString(){return"WS"}toSource(){return" "}}class Lg extends Ke{constructor(){super(...arguments),this.tokenType="CDO"}toSource(){return""}}class Rg extends Ke{constructor(){super(...arguments),this.tokenType=":"}}class jg extends Ke{constructor(){super(...arguments),this.tokenType=";"}}class Bg extends Ke{constructor(){super(...arguments),this.tokenType=","}}class wa extends Ke{constructor(){super(...arguments),this.value="",this.mirror=""}}class kg extends wa{constructor(){super(),this.tokenType="{",this.value="{",this.mirror="}"}}class qg extends wa{constructor(){super(),this.tokenType="}",this.value="}",this.mirror="{"}}class Hg extends wa{constructor(){super(),this.tokenType="[",this.value="[",this.mirror="]"}}class wf extends wa{constructor(){super(),this.tokenType="]",this.value="]",this.mirror="["}}class Yg extends wa{constructor(){super(),this.tokenType="(",this.value="(",this.mirror=")"}}class $g extends wa{constructor(){super(),this.tokenType=")",this.value=")",this.mirror="("}}class fv extends Ke{constructor(){super(...arguments),this.tokenType="~="}}class ov extends Ke{constructor(){super(...arguments),this.tokenType="|="}}class hv extends Ke{constructor(){super(...arguments),this.tokenType="^="}}class dv extends Ke{constructor(){super(...arguments),this.tokenType="$="}}class mv extends Ke{constructor(){super(...arguments),this.tokenType="*="}}class Gg extends Ke{constructor(){super(...arguments),this.tokenType="||"}}class fu extends Ke{constructor(){super(...arguments),this.tokenType="EOF"}toSource(){return""}}class ut extends Ke{constructor(l){super(),this.tokenType="DELIM",this.value="",this.value=Fe(l)}toString(){return"DELIM("+this.value+")"}toJSON(){const l=this.constructor.prototype.constructor.prototype.toJSON.call(this);return l.value=this.value,l}toSource(){return this.value==="\\"?`\\ +`:this.value}}class Oa extends Ke{constructor(){super(...arguments),this.value=""}ASCIIMatch(l){return this.value.toLowerCase()===l.toLowerCase()}toJSON(){const l=this.constructor.prototype.constructor.prototype.toJSON.call(this);return l.value=this.value,l}}class Kg extends Oa{constructor(l){super(),this.tokenType="IDENT",this.value=l}toString(){return"IDENT("+this.value+")"}toSource(){return Ui(this.value)}}class ou extends Oa{constructor(l){super(),this.tokenType="FUNCTION",this.value=l,this.mirror=")"}toString(){return"FUNCTION("+this.value+")"}toSource(){return Ui(this.value)+"("}}class Vg extends Oa{constructor(l){super(),this.tokenType="AT-KEYWORD",this.value=l}toString(){return"AT("+this.value+")"}toSource(){return"@"+Ui(this.value)}}class Qg extends Oa{constructor(l){super(),this.tokenType="HASH",this.value=l,this.type="unrestricted"}toString(){return"HASH("+this.value+")"}toJSON(){const l=this.constructor.prototype.constructor.prototype.toJSON.call(this);return l.value=this.value,l.type=this.type,l}toSource(){return this.type==="id"?"#"+Ui(this.value):"#"+pv(this.value)}}class Xg extends Oa{constructor(l){super(),this.tokenType="STRING",this.value=l}toString(){return'"'+Fg(this.value)+'"'}}class Zg extends Oa{constructor(l){super(),this.tokenType="URL",this.value=l}toString(){return"URL("+this.value+")"}toSource(){return'url("'+Fg(this.value)+'")'}}class Jg extends Ke{constructor(){super(),this.tokenType="NUMBER",this.type="integer",this.repr=""}toString(){return this.type==="integer"?"INT("+this.value+")":"NUMBER("+this.value+")"}toJSON(){const l=super.toJSON();return l.value=this.value,l.type=this.type,l.repr=this.repr,l}toSource(){return this.repr}}class Wg extends Ke{constructor(){super(),this.tokenType="PERCENTAGE",this.repr=""}toString(){return"PERCENTAGE("+this.value+")"}toJSON(){const l=this.constructor.prototype.constructor.prototype.toJSON.call(this);return l.value=this.value,l.repr=this.repr,l}toSource(){return this.repr+"%"}}class gv extends Ke{constructor(){super(),this.tokenType="DIMENSION",this.type="integer",this.repr="",this.unit=""}toString(){return"DIM("+this.value+","+this.unit+")"}toJSON(){const l=this.constructor.prototype.constructor.prototype.toJSON.call(this);return l.value=this.value,l.type=this.type,l.repr=this.repr,l.unit=this.unit,l}toSource(){const l=this.repr;let i=Ui(this.unit);return i[0].toLowerCase()==="e"&&(i[1]==="-"||Je(i.charCodeAt(1),48,57))&&(i="\\65 "+i.slice(1,i.length)),l+i}}function Ui(u){u=""+u;let l="";const i=u.charCodeAt(0);for(let s=0;s=128||c===45||c===95||Je(c,48,57)||Je(c,65,90)||Je(c,97,122)?l+=u[s]:l+="\\"+u[s]}return l}function pv(u){u=""+u;let l="";for(let i=0;i=128||s===45||s===95||Je(s,48,57)||Je(s,65,90)||Je(s,97,122)?l+=u[i]:l+="\\"+s.toString(16)+" "}return l}function Fg(u){u=""+u;let l="";for(let i=0;iU instanceof Vg||U instanceof Dg||U instanceof ru||U instanceof Gg||U instanceof Lg||U instanceof Ug||U instanceof jg||U instanceof kg||U instanceof qg||U instanceof Zg||U instanceof Wg);if(s)throw new St(`Unsupported token "${s.toSource()}" while parsing css selector "${u}". Did you mean to CSS.escape it?`);let c=0;const o=new Set;function h(){return new St(`Unexpected token "${i[c].toSource()}" while parsing css selector "${u}". Did you mean to CSS.escape it?`)}function m(){for(;i[c]instanceof Af;)c++}function g(U=c){return i[U]instanceof Kg}function p(U=c){return i[U]instanceof Xg}function T(U=c){return i[U]instanceof Jg}function v(U=c){return i[U]instanceof Bg}function _(U=c){return i[U]instanceof Yg}function E(U=c){return i[U]instanceof $g}function x(U=c){return i[U]instanceof ou}function S(U=c){return i[U]instanceof ut&&i[U].value==="*"}function w(U=c){return i[U]instanceof fu}function M(U=c){return i[U]instanceof ut&&[">","+","~"].includes(i[U].value)}function R(U=c){return v(U)||E(U)||w(U)||M(U)||i[U]instanceof Af}function G(){const U=[Q()];for(;m(),!!v();)c++,U.push(Q());return U}function Q(){return m(),T()||p()?i[c++].value:Z()}function Z(){const U={simples:[]};for(m(),M()?U.simples.push({selector:{functions:[{name:"scope",args:[]}]},combinator:""}):U.simples.push({selector:W(),combinator:""});;){if(m(),M())U.simples[U.simples.length-1].combinator=i[c++].value,m();else if(R())break;U.simples.push({combinator:"",selector:W()})}return U}function W(){let U="";const ie=[];for(;!R();)if(g()||S())U+=i[c++].toSource();else if(i[c]instanceof Qg)U+=i[c++].toSource();else if(i[c]instanceof ut&&i[c].value===".")if(c++,g())U+="."+i[c++].toSource();else throw h();else if(i[c]instanceof Rg)if(c++,g())if(!l.has(i[c].value.toLowerCase()))U+=":"+i[c++].toSource();else{const te=i[c++].value.toLowerCase();ie.push({name:te,args:[]}),o.add(te)}else if(x()){const te=i[c++].value.toLowerCase();if(l.has(te)?(ie.push({name:te,args:G()}),o.add(te)):U+=`:${te}(${k()})`,m(),!E())throw h();c++}else throw h();else if(i[c]instanceof Hg){for(U+="[",c++;!(i[c]instanceof wf)&&!w();)U+=i[c++].toSource();if(!(i[c]instanceof wf))throw h();U+="]",c++}else throw h();if(!U&&!ie.length)throw h();return{css:U||void 0,functions:ie}}function k(){let U="",ie=1;for(;!w()&&((_()||x())&&ie++,E()&&ie--,!!ie);)U+=i[c++].toSource();return U}const V=G();if(!w())throw h();if(V.some(U=>typeof U!="object"||!("simples"in U)))throw new St(`Error while parsing css selector "${u}". Did you mean to CSS.escape it?`);return{selector:V,names:Array.from(o)}}const pg=new Set(["internal:has","internal:has-not","internal:and","internal:or","internal:chain","left-of","right-of","above","below","near"]),vv=new Set(["left-of","right-of","above","below","near"]),bv=new Set(["not","is","where","has","scope","light","visible","text","text-matches","text-is","has-text","above","below","right-of","left-of","near","nth-match"]);function Ig(u){const l=Tv(u),i=[];for(const s of l.parts){if(s.name==="css"||s.name==="css:light"){s.name==="css:light"&&(s.body=":light("+s.body+")");const c=yv(s.body,bv);i.push({name:"css",body:c.selector,source:s.body});continue}if(pg.has(s.name)){let c,o;try{const p=JSON.parse("["+s.body+"]");if(!Array.isArray(p)||p.length<1||p.length>2||typeof p[0]!="string")throw new St(`Malformed selector: ${s.name}=`+s.body);if(c=p[0],p.length===2){if(typeof p[1]!="number"||!vv.has(s.name))throw new St(`Malformed selector: ${s.name}=`+s.body);o=p[1]}}catch{throw new St(`Malformed selector: ${s.name}=`+s.body)}const h={name:s.name,source:s.body,body:{parsed:Ig(c),distance:o}},m=[...h.body.parsed.parts].reverse().find(p=>p.name==="internal:control"&&p.body==="enter-frame"),g=m?h.body.parsed.parts.indexOf(m):-1;g!==-1&&Sv(h.body.parsed.parts.slice(0,g+1),i.slice(0,g+1))&&h.body.parsed.parts.splice(0,g+1),i.push(h);continue}i.push({...s,source:s.body})}if(pg.has(i[0].name))throw new St(`"${i[0].name}" selector cannot be first`);return{capture:l.capture,parts:i}}function Sv(u,l){return ga({parts:u})===ga({parts:l})}function ga(u,l){return typeof u=="string"?u:u.parts.map((i,s)=>{let c=!0;!l&&s!==u.capture&&(i.name==="css"||i.name==="xpath"&&i.source.startsWith("//")||i.source.startsWith(".."))&&(c=!1);const o=c?i.name+"=":"";return`${s===u.capture?"*":""}${o}${i.source}`}).join(" >> ")}function Tv(u){let l=0,i,s=0;const c={parts:[]},o=()=>{const m=u.substring(s,l).trim(),g=m.indexOf("=");let p,T;g!==-1&&m.substring(0,g).trim().match(/^[a-zA-Z_0-9-+:*]+$/)?(p=m.substring(0,g).trim(),T=m.substring(g+1)):m.length>1&&m[0]==='"'&&m[m.length-1]==='"'||m.length>1&&m[0]==="'"&&m[m.length-1]==="'"?(p="text",T=m):/^\(*\/\//.test(m)||m.startsWith("..")?(p="xpath",T=m):(p="css",T=m);let v=!1;if(p[0]==="*"&&(v=!0,p=p.substring(1)),c.parts.push({name:p,body:T}),v){if(c.capture!==void 0)throw new St("Only one of the selectors can capture using * modifier");c.capture=c.parts.length-1}};if(!u.includes(">>"))return l=u.length,o(),c;const h=()=>{const g=u.substring(s,l).match(/^\s*text\s*=(.*)$/);return!!g&&!!g[1]};for(;l"&&u[l+1]===">"?(o(),l+=2,s=l):l++}return o(),c}function of(u,l){let i=0,s=u.length===0;const c=()=>u[i]||"",o=()=>{const w=c();return++i,s=i>=u.length,w},h=w=>{throw s?new St(`Unexpected end of selector while parsing selector \`${u}\``):new St(`Error while parsing selector \`${u}\` - unexpected symbol "${c()}" at position ${i}`+(w?" during "+w:""))};function m(){for(;!s&&/\s/.test(c());)o()}function g(w){return w>="€"||w>="0"&&w<="9"||w>="A"&&w<="Z"||w>="a"&&w<="z"||w>="0"&&w<="9"||w==="_"||w==="-"}function p(){let w="";for(m();!s&&g(c());)w+=o();return w}function T(w){let M=o();for(M!==w&&h("parsing quoted string");!s&&c()!==w;)c()==="\\"&&o(),M+=o();return c()!==w&&h("parsing quoted string"),M+=o(),M}function v(){o()!=="/"&&h("parsing regular expression");let w="",M=!1;for(;!s;){if(c()==="\\")w+=o(),s&&h("parsing regular expression");else if(M&&c()==="]")M=!1;else if(!M&&c()==="[")M=!0;else if(!M&&c()==="/")break;w+=o()}o()!=="/"&&h("parsing regular expression");let R="";for(;!s&&c().match(/[dgimsuy]/);)R+=o();try{return new RegExp(w,R)}catch(G){throw new St(`Error while parsing selector \`${u}\`: ${G.message}`)}}function _(){let w="";return m(),c()==="'"||c()==='"'?w=T(c()).slice(1,-1):w=p(),w||h("parsing property path"),w}function E(){m();let w="";return s||(w+=o()),!s&&w!=="="&&(w+=o()),["=","*=","^=","$=","|=","~="].includes(w)||h("parsing operator"),w}function x(){o();const w=[];for(w.push(_()),m();c()===".";)o(),w.push(_()),m();if(c()==="]")return o(),{name:w.join("."),jsonPath:w,op:"",value:null,caseSensitive:!1};const M=E();let R,G=!0;if(m(),c()==="/"){if(M!=="=")throw new St(`Error while parsing selector \`${u}\` - cannot use ${M} in attribute with regular expression`);R=v()}else if(c()==="'"||c()==='"')R=T(c()).slice(1,-1),m(),c()==="i"||c()==="I"?(G=!1,o()):(c()==="s"||c()==="S")&&(G=!0,o());else{for(R="";!s&&(g(c())||c()==="+"||c()===".");)R+=o();R==="true"?R=!0:R==="false"&&(R=!1)}if(m(),c()!=="]"&&h("parsing attribute value"),o(),M!=="="&&typeof R!="string")throw new St(`Error while parsing selector \`${u}\` - cannot use ${M} in attribute with non-string matching value - ${R}`);return{name:w.join("."),jsonPath:w,op:M,value:R,caseSensitive:G}}const S={name:"",attributes:[]};for(S.name=p(),m();c()==="[";)S.attributes.push(x()),m();if(s||h(void 0),!S.name&&!S.attributes.length)throw new St(`Error while parsing selector \`${u}\` - selector cannot be empty`);return S}function Au(u,l="'"){const i=JSON.stringify(u),s=i.substring(1,i.length-1).replace(/\\"/g,'"');if(l==="'")return l+s.replace(/[']/g,"\\'")+l;if(l==='"')return l+s.replace(/["]/g,'\\"')+l;if(l==="`")return l+s.replace(/[`]/g,"\\`")+l;throw new Error("Invalid escape char")}function yu(u){return u.charAt(0).toUpperCase()+u.substring(1)}function Pg(u){return u.replace(/([a-z0-9])([A-Z])/g,"$1_$2").replace(/([A-Z])([A-Z][a-z])/g,"$1_$2").toLowerCase()}function wu(u){return u.replace(/(^|[^\\])(\\\\)*\\(['"`])/g,"$1$2$3")}function ep(u,l,i=!1){return Ev(u,l,i,1)[0]}function Ev(u,l,i=!1,s=20,c){try{return ma(new Cv[u](c),Ig(l),i,s)}catch{return[l]}}function ma(u,l,i=!1,s=20){const c=[...l.parts],o=[];let h=i?"frame-locator":"page";for(let m=0;mu.generateLocator(p,"has",S)));continue}if(g.name==="internal:has-not"){const x=ma(u,g.body.parsed,!1,s);o.push(x.map(S=>u.generateLocator(p,"hasNot",S)));continue}if(g.name==="internal:and"){const x=ma(u,g.body.parsed,!1,s);o.push(x.map(S=>u.generateLocator(p,"and",S)));continue}if(g.name==="internal:or"){const x=ma(u,g.body.parsed,!1,s);o.push(x.map(S=>u.generateLocator(p,"or",S)));continue}if(g.name==="internal:chain"){const x=ma(u,g.body.parsed,!1,s);o.push(x.map(S=>u.generateLocator(p,"chain",S)));continue}if(g.name==="internal:label"){const{exact:x,text:S}=Ni(g.body);o.push([u.generateLocator(p,"label",S,{exact:x})]);continue}if(g.name==="internal:role"){const x=of(g.body),S={attrs:[]};for(const w of x.attributes)w.name==="name"?(S.exact=w.caseSensitive,S.name=w.value):(w.name==="level"&&typeof w.value=="string"&&(w.value=+w.value),S.attrs.push({name:w.name==="include-hidden"?"includeHidden":w.name,value:w.value}));o.push([u.generateLocator(p,"role",x.name,S)]);continue}if(g.name==="internal:testid"){const x=of(g.body),{value:S}=x.attributes[0];o.push([u.generateLocator(p,"test-id",S)]);continue}if(g.name==="internal:attr"){const x=of(g.body),{name:S,value:w,caseSensitive:M}=x.attributes[0],R=w,G=!!M;if(S==="placeholder"){o.push([u.generateLocator(p,"placeholder",R,{exact:G})]);continue}if(S==="alt"){o.push([u.generateLocator(p,"alt",R,{exact:G})]);continue}if(S==="title"){o.push([u.generateLocator(p,"title",R,{exact:G})]);continue}}if(g.name==="internal:control"&&g.body==="enter-frame"){const x=o[o.length-1],S=c[m-1],w=x.map(M=>u.chainLocators([M,u.generateLocator(p,"frame","")]));["xpath","css"].includes(S.name)&&w.push(u.generateLocator(p,"frame-locator",ga({parts:[S]})),u.generateLocator(p,"frame-locator",ga({parts:[S]},!0))),x.splice(0,x.length,...w),h="frame-locator";continue}const T=c[m+1],v=ga({parts:[g]}),_=u.generateLocator(p,"default",v);if(T&&["internal:has-text","internal:has-not-text"].includes(T.name)){const{exact:x,text:S}=Ni(T.body);if(!x){const w=u.generateLocator("locator",T.name==="internal:has-text"?"has-text":"has-not-text",S,{exact:x}),M={};T.name==="internal:has-text"?M.hasText=S:M.hasNotText=S;const R=u.generateLocator(p,"default",v,M);o.push([u.chainLocators([_,w]),R]),m++;continue}}let E;if(["xpath","css"].includes(g.name)){const x=ga({parts:[g]},!0);E=u.generateLocator(p,"default",x)}o.push([_,E].filter(Boolean))}return Av(u,o,s)}function Av(u,l,i){const s=l.map(()=>""),c=[],o=h=>{if(h===l.length)return c.push(u.chainLocators(s)),c.lengthJSON.parse(s));for(let s=0;s{const i=he.useRef(null),[s,c]=he.useState(new Map);return he.useLayoutEffect(()=>{var o;l.find(h=>h.reveal)&&((o=i.current)==null||o.scrollIntoView({block:"center",inline:"nearest"}))},[i,l]),X.jsxs("div",{className:"call-log",style:{flex:"auto"},children:[l.map(o=>{const h=s.get(o.id),m=typeof h=="boolean"?h:o.status!=="done",g=o.params.selector?ep(u,o.params.selector):null;let p=o.title,T="";return o.title.startsWith("expect.to")||o.title.startsWith("expect.not.to")?(p="expect(",T=`).${o.title.substring(7)}()`):o.title.startsWith("locator.")?(p="",T=`.${o.title.substring(8)}()`):(g||o.params.url)&&(p=o.title+"(",T=")"),X.jsxs("div",{className:wl("call-log-call",o.status),children:[X.jsxs("div",{className:"call-log-call-header",children:[X.jsx("span",{className:wl("codicon",`codicon-chevron-${m?"down":"right"}`),style:{cursor:"pointer"},onClick:()=>{const v=new Map(s);v.set(o.id,!m),c(v)}}),p,o.params.url?X.jsx("span",{className:"call-log-details",children:X.jsx("span",{className:"call-log-url",title:o.params.url,children:o.params.url})}):void 0,g?X.jsx("span",{className:"call-log-details",children:X.jsx("span",{className:"call-log-selector",title:`page.${g}`,children:`page.${g}`})}):void 0,T,X.jsx("span",{className:wl("codicon",xv(o))}),typeof o.duration=="number"?X.jsxs("span",{className:"call-log-time",children:["— ",tv(o.duration)]}):void 0]}),(m?o.messages:[]).map((v,_)=>X.jsx("div",{className:"call-log-message",children:v.trim()},_)),!!o.error&&X.jsx("div",{className:"call-log-message error",hidden:!m,children:o.error})]},o.id)}),X.jsx("div",{ref:i})]})};function xv(u){switch(u.status){case"done":return"codicon-check";case"in-progress":return"codicon-clock";case"paused":return"codicon-debug-pause";case"error":return"codicon-error"}}const Lf=Symbol.for("yaml.alias"),Of=Symbol.for("yaml.document"),In=Symbol.for("yaml.map"),tp=Symbol.for("yaml.pair"),nn=Symbol.for("yaml.scalar"),_a=Symbol.for("yaml.seq"),Vt=Symbol.for("yaml.node.type"),el=u=>!!u&&typeof u=="object"&&u[Vt]===Lf,_l=u=>!!u&&typeof u=="object"&&u[Vt]===Of,Na=u=>!!u&&typeof u=="object"&&u[Vt]===In,je=u=>!!u&&typeof u=="object"&&u[Vt]===tp,De=u=>!!u&&typeof u=="object"&&u[Vt]===nn,Ma=u=>!!u&&typeof u=="object"&&u[Vt]===_a;function Be(u){if(u&&typeof u=="object")switch(u[Vt]){case In:case _a:return!0}return!1}function ke(u){if(u&&typeof u=="object")switch(u[Vt]){case Lf:case In:case nn:case _a:return!0}return!1}const np=u=>(De(u)||Be(u))&&!!u.anchor,Tt=Symbol("break visit"),lp=Symbol("skip children"),tn=Symbol("remove node");function Nl(u,l){const i=ap(l);_l(u)?pa(null,u.contents,i,Object.freeze([u]))===tn&&(u.contents=null):pa(null,u,i,Object.freeze([]))}Nl.BREAK=Tt;Nl.SKIP=lp;Nl.REMOVE=tn;function pa(u,l,i,s){const c=ip(u,l,i,s);if(ke(c)||je(c))return sp(u,s,c),pa(u,c,i,s);if(typeof c!="symbol"){if(Be(l)){s=Object.freeze(s.concat(l));for(let o=0;ou.replace(/[!,[\]{}]/g,l=>Dv[l]);class ot{constructor(l,i){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},ot.defaultYaml,l),this.tags=Object.assign({},ot.defaultTags,i)}clone(){const l=new ot(this.yaml,this.tags);return l.docStart=this.docStart,l}atDocument(){const l=new ot(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:ot.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},ot.defaultTags);break}return l}add(l,i){this.atNextDocument&&(this.yaml={explicit:ot.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},ot.defaultTags),this.atNextDocument=!1);const s=l.trim().split(/[ \t]+/),c=s.shift();switch(c){case"%TAG":{if(s.length!==2&&(i(0,"%TAG directive should contain exactly two parts"),s.length<2))return!1;const[o,h]=s;return this.tags[o]=h,!0}case"%YAML":{if(this.yaml.explicit=!0,s.length!==1)return i(0,"%YAML directive should contain exactly one part"),!1;const[o]=s;if(o==="1.1"||o==="1.2")return this.yaml.version=o,!0;{const h=/^\d+\.\d+$/.test(o);return i(6,`Unsupported YAML version ${o}`,h),!1}}default:return i(0,`Unknown directive ${c}`,!0),!1}}tagName(l,i){if(l==="!")return"!";if(l[0]!=="!")return i(`Not a valid tag: ${l}`),null;if(l[1]==="<"){const h=l.slice(2,-1);return h==="!"||h==="!!"?(i(`Verbatim tags aren't resolved, so ${l} is invalid.`),null):(l[l.length-1]!==">"&&i("Verbatim tags must end with a >"),h)}const[,s,c]=l.match(/^(.*!)([^!]*)$/s);c||i(`The ${l} tag has no suffix`);const o=this.tags[s];if(o)try{return o+decodeURIComponent(c)}catch(h){return i(String(h)),null}return s==="!"?l:(i(`Could not resolve tag: ${l}`),null)}tagString(l){for(const[i,s]of Object.entries(this.tags))if(l.startsWith(s))return i+Lv(l.substring(s.length));return l[0]==="!"?l:`!<${l}>`}toString(l){const i=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],s=Object.entries(this.tags);let c;if(l&&s.length>0&&ke(l.contents)){const o={};Nl(l.contents,(h,m)=>{ke(m)&&m.tag&&(o[m.tag]=!0)}),c=Object.keys(o)}else c=[];for(const[o,h]of s)o==="!!"&&h==="tag:yaml.org,2002:"||(!l||c.some(m=>m.startsWith(h)))&&i.push(`%TAG ${o} ${h}`);return i.join(` +`)}}ot.defaultYaml={explicit:!1,version:"1.2"};ot.defaultTags={"!!":"tag:yaml.org,2002:"};function up(u){if(/[\x00-\x19\s,[\]{}]/.test(u)){const i=`Anchor must not contain whitespace or control characters: ${JSON.stringify(u)}`;throw new Error(i)}return!0}function cp(u){const l=new Set;return Nl(u,{Value(i,s){s.anchor&&l.add(s.anchor)}}),l}function rp(u,l){for(let i=1;;++i){const s=`${u}${i}`;if(!l.has(s))return s}}function Uv(u,l){const i=[],s=new Map;let c=null;return{onAnchor:o=>{i.push(o),c??(c=cp(u));const h=rp(l,c);return c.add(h),h},setAnchors:()=>{for(const o of i){const h=s.get(o);if(typeof h=="object"&&h.anchor&&(De(h.node)||Be(h.node)))h.node.anchor=h.anchor;else{const m=new Error("Failed to resolve repeated object (this should not happen)");throw m.source=o,m}}},sourceObjects:s}}function va(u,l,i,s){if(s&&typeof s=="object")if(Array.isArray(s))for(let c=0,o=s.length;cKt(s,String(c),i));if(u&&typeof u.toJSON=="function"){if(!i||!np(u))return u.toJSON(l,i);const s={aliasCount:0,count:1,res:void 0};i.anchors.set(u,s),i.onCreate=o=>{s.res=o,delete i.onCreate};const c=u.toJSON(l,i);return i.onCreate&&i.onCreate(c),c}return typeof u=="bigint"&&!(i!=null&&i.keep)?Number(u):u}class Uf{constructor(l){Object.defineProperty(this,Vt,{value:l})}clone(){const l=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(l.range=this.range.slice()),l}toJS(l,{mapAsMap:i,maxAliasCount:s,onAnchor:c,reviver:o}={}){if(!_l(l))throw new TypeError("A document argument is required");const h={anchors:new Map,doc:l,keep:!0,mapAsMap:i===!0,mapKeyWarned:!1,maxAliasCount:typeof s=="number"?s:100},m=Kt(this,"",h);if(typeof c=="function")for(const{count:g,res:p}of h.anchors.values())c(p,g);return typeof o=="function"?va(o,{"":m},"",m):m}}class _u extends Uf{constructor(l){super(Lf),this.source=l,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(l,i){let s;i!=null&&i.aliasResolveCache?s=i.aliasResolveCache:(s=[],Nl(l,{Node:(o,h)=>{(el(h)||np(h))&&s.push(h)}}),i&&(i.aliasResolveCache=s));let c;for(const o of s){if(o===this)break;o.anchor===this.source&&(c=o)}return c}toJSON(l,i){if(!i)return{source:this.source};const{anchors:s,doc:c,maxAliasCount:o}=i,h=this.resolve(c,i);if(!h){const g=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(g)}let m=s.get(h);if(m||(Kt(h,null,i),m=s.get(h)),(m==null?void 0:m.res)===void 0){const g="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(g)}if(o>=0&&(m.count+=1,m.aliasCount===0&&(m.aliasCount=hu(c,h,s)),m.count*m.aliasCount>o)){const g="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(g)}return m.res}toString(l,i,s){const c=`*${this.source}`;if(l){if(up(this.source),l.options.verifyAliasOrder&&!l.anchors.has(this.source)){const o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(l.implicitKey)return`${c} `}return c}}function hu(u,l,i){if(el(l)){const s=l.resolve(u),c=i&&s&&i.get(s);return c?c.count*c.aliasCount:0}else if(Be(l)){let s=0;for(const c of l.items){const o=hu(u,c,i);o>s&&(s=o)}return s}else if(je(l)){const s=hu(u,l.key,i),c=hu(u,l.value,i);return Math.max(s,c)}return 1}const fp=u=>!u||typeof u!="function"&&typeof u!="object";class ce extends Uf{constructor(l){super(nn),this.value=l}toJSON(l,i){return i!=null&&i.keep?this.value:Kt(this.value,l,i)}toString(){return String(this.value)}}ce.BLOCK_FOLDED="BLOCK_FOLDED";ce.BLOCK_LITERAL="BLOCK_LITERAL";ce.PLAIN="PLAIN";ce.QUOTE_DOUBLE="QUOTE_DOUBLE";ce.QUOTE_SINGLE="QUOTE_SINGLE";const Rv="tag:yaml.org,2002:";function jv(u,l,i){if(l){const s=i.filter(o=>o.tag===l),c=s.find(o=>!o.format)??s[0];if(!c)throw new Error(`Tag ${l} not found`);return c}return i.find(s=>{var c;return((c=s.identify)==null?void 0:c.call(s,u))&&!s.format})}function xi(u,l,i){var v,_,E;if(_l(u)&&(u=u.contents),ke(u))return u;if(je(u)){const x=(_=(v=i.schema[In]).createNode)==null?void 0:_.call(v,i.schema,null,i);return x.items.push(u),x}(u instanceof String||u instanceof Number||u instanceof Boolean||typeof BigInt<"u"&&u instanceof BigInt)&&(u=u.valueOf());const{aliasDuplicateObjects:s,onAnchor:c,onTagObj:o,schema:h,sourceObjects:m}=i;let g;if(s&&u&&typeof u=="object"){if(g=m.get(u),g)return g.anchor??(g.anchor=c(u)),new _u(g.anchor);g={anchor:null,node:null},m.set(u,g)}l!=null&&l.startsWith("!!")&&(l=Rv+l.slice(2));let p=jv(u,l,h.tags);if(!p){if(u&&typeof u.toJSON=="function"&&(u=u.toJSON()),!u||typeof u!="object"){const x=new ce(u);return g&&(g.node=x),x}p=u instanceof Map?h[In]:Symbol.iterator in Object(u)?h[_a]:h[In]}o&&(o(p),delete i.onTagObj);const T=p!=null&&p.createNode?p.createNode(i.schema,u,i):typeof((E=p==null?void 0:p.nodeClass)==null?void 0:E.from)=="function"?p.nodeClass.from(i.schema,u,i):new ce(u);return l?T.tag=l:p.default||(T.tag=p.tag),g&&(g.node=T),T}function vu(u,l,i){let s=i;for(let c=l.length-1;c>=0;--c){const o=l[c];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){const h=[];h[o]=s,s=h}else s=new Map([[o,s]])}return xi(s,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:u,sourceObjects:new Map})}const Ci=u=>u==null||typeof u=="object"&&!!u[Symbol.iterator]().next().done;class op extends Uf{constructor(l,i){super(l),Object.defineProperty(this,"schema",{value:i,configurable:!0,enumerable:!1,writable:!0})}clone(l){const i=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return l&&(i.schema=l),i.items=i.items.map(s=>ke(s)||je(s)?s.clone(l):s),this.range&&(i.range=this.range.slice()),i}addIn(l,i){if(Ci(l))this.add(i);else{const[s,...c]=l,o=this.get(s,!0);if(Be(o))o.addIn(c,i);else if(o===void 0&&this.schema)this.set(s,vu(this.schema,c,i));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${c}`)}}deleteIn(l){const[i,...s]=l;if(s.length===0)return this.delete(i);const c=this.get(i,!0);if(Be(c))return c.deleteIn(s);throw new Error(`Expected YAML collection at ${i}. Remaining path: ${s}`)}getIn(l,i){const[s,...c]=l,o=this.get(s,!0);return c.length===0?!i&&De(o)?o.value:o:Be(o)?o.getIn(c,i):void 0}hasAllNullValues(l){return this.items.every(i=>{if(!je(i))return!1;const s=i.value;return s==null||l&&De(s)&&s.value==null&&!s.commentBefore&&!s.comment&&!s.tag})}hasIn(l){const[i,...s]=l;if(s.length===0)return this.has(i);const c=this.get(i,!0);return Be(c)?c.hasIn(s):!1}setIn(l,i){const[s,...c]=l;if(c.length===0)this.set(s,i);else{const o=this.get(s,!0);if(Be(o))o.setIn(c,i);else if(o===void 0&&this.schema)this.set(s,vu(this.schema,c,i));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${c}`)}}}const Bv=u=>u.replace(/^(?!$)(?: $)?/gm,"#");function An(u,l){return/^\n+$/.test(u)?u.substring(1):l?u.replace(/^(?! *$)/gm,l):u}const Tl=(u,l,i)=>u.endsWith(` +`)?An(i,l):i.includes(` +`)?` +`+An(i,l):(u.endsWith(" ")?"":" ")+i,hp="flow",_f="block",du="quoted";function Nu(u,l,i="flow",{indentAtStart:s,lineWidth:c=80,minContentWidth:o=20,onFold:h,onOverflow:m}={}){if(!c||c<0)return u;cc-Math.max(2,o)?p.push(0):v=c-s);let _,E,x=!1,S=-1,w=-1,M=-1;i===_f&&(S=yg(u,S,l.length),S!==-1&&(v=S+g));for(let G;G=u[S+=1];){if(i===du&&G==="\\"){switch(w=S,u[S+1]){case"x":S+=3;break;case"u":S+=5;break;case"U":S+=9;break;default:S+=1}M=S}if(G===` +`)i===_f&&(S=yg(u,S,l.length)),v=S+l.length+g,_=void 0;else{if(G===" "&&E&&E!==" "&&E!==` +`&&E!==" "){const Q=u[S+1];Q&&Q!==" "&&Q!==` +`&&Q!==" "&&(_=S)}if(S>=v)if(_)p.push(_),v=_+g,_=void 0;else if(i===du){for(;E===" "||E===" ";)E=G,G=u[S+=1],x=!0;const Q=S>M+1?S-2:w-1;if(T[Q])return u;p.push(Q),T[Q]=!0,v=Q+g,_=void 0}else x=!0}E=G}if(x&&m&&m(),p.length===0)return u;h&&h();let R=u.slice(0,p[0]);for(let G=0;G({indentAtStart:l?u.indent.length:u.indentAtStart,lineWidth:u.options.lineWidth,minContentWidth:u.options.minContentWidth}),Cu=u=>/^(%|---|\.\.\.)/m.test(u);function kv(u,l,i){if(!l||l<0)return!1;const s=l-i,c=u.length;if(c<=s)return!1;for(let o=0,h=0;os)return!0;if(h=o+1,c-h<=s)return!1}return!0}function zi(u,l){const i=JSON.stringify(u);if(l.options.doubleQuotedAsJSON)return i;const{implicitKey:s}=l,c=l.options.doubleQuotedMinMultiLineLength,o=l.indent||(Cu(u)?" ":"");let h="",m=0;for(let g=0,p=i[g];p;p=i[++g])if(p===" "&&i[g+1]==="\\"&&i[g+2]==="n"&&(h+=i.slice(m,g)+"\\ ",g+=1,m=g,p="\\"),p==="\\")switch(i[g+1]){case"u":{h+=i.slice(m,g);const T=i.substr(g+2,4);switch(T){case"0000":h+="\\0";break;case"0007":h+="\\a";break;case"000b":h+="\\v";break;case"001b":h+="\\e";break;case"0085":h+="\\N";break;case"00a0":h+="\\_";break;case"2028":h+="\\L";break;case"2029":h+="\\P";break;default:T.substr(0,2)==="00"?h+="\\x"+T.substr(2):h+=i.substr(g,6)}g+=5,m=g+1}break;case"n":if(s||i[g+2]==='"'||i.length +`;let v,_;for(_=i.length;_>0;--_){const Z=i[_-1];if(Z!==` +`&&Z!==" "&&Z!==" ")break}let E=i.substring(_);const x=E.indexOf(` +`);x===-1?v="-":i===E||x!==E.length-1?(v="+",o&&o()):v="",E&&(i=i.slice(0,-E.length),E[E.length-1]===` +`&&(E=E.slice(0,-1)),E=E.replace(Mf,`$&${p}`));let S=!1,w,M=-1;for(w=0;w{W=!0});const V=Nu(`${R}${Z}${E}`,p,_f,k);if(!W)return`>${Q} +${p}${V}`}return i=i.replace(/\n+/g,`$&${p}`),`|${Q} +${p}${R}${i}${E}`}function qv(u,l,i,s){const{type:c,value:o}=u,{actualString:h,implicitKey:m,indent:g,indentStep:p,inFlow:T}=l;if(m&&o.includes(` +`)||T&&/[[\]{},]/.test(o))return ba(o,l);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return m||T||!o.includes(` +`)?ba(o,l):mu(u,l,i,s);if(!m&&!T&&c!==ce.PLAIN&&o.includes(` +`))return mu(u,l,i,s);if(Cu(o)){if(g==="")return l.forceBlockIndent=!0,mu(u,l,i,s);if(m&&g===p)return ba(o,l)}const v=o.replace(/\n+/g,`$& +${g}`);if(h){const _=S=>{var w;return S.default&&S.tag!=="tag:yaml.org,2002:str"&&((w=S.test)==null?void 0:w.test(v))},{compat:E,tags:x}=l.doc.schema;if(x.some(_)||E!=null&&E.some(_))return ba(o,l)}return m?v:Nu(v,g,hp,Mu(l,!1))}function Ri(u,l,i,s){const{implicitKey:c,inFlow:o}=l,h=typeof u.value=="string"?u:Object.assign({},u,{value:String(u.value)});let{type:m}=u;m!==ce.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(h.value)&&(m=ce.QUOTE_DOUBLE);const g=T=>{switch(T){case ce.BLOCK_FOLDED:case ce.BLOCK_LITERAL:return c||o?ba(h.value,l):mu(h,l,i,s);case ce.QUOTE_DOUBLE:return zi(h.value,l);case ce.QUOTE_SINGLE:return Nf(h.value,l);case ce.PLAIN:return qv(h,l,i,s);default:return null}};let p=g(m);if(p===null){const{defaultKeyType:T,defaultStringType:v}=l.options,_=c&&T||v;if(p=g(_),p===null)throw new Error(`Unsupported default string type ${_}`)}return p}function dp(u,l){const i=Object.assign({blockQuote:!0,commentString:Bv,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:"true",verifyAliasOrder:!0},u.schema.toStringOptions,l);let s;switch(i.collectionStyle){case"block":s=!1;break;case"flow":s=!0;break;default:s=null}return{anchors:new Set,doc:u,flowCollectionPadding:i.flowCollectionPadding?" ":"",indent:"",indentStep:typeof i.indent=="number"?" ".repeat(i.indent):" ",inFlow:s,options:i}}function Hv(u,l){var c;if(l.tag){const o=u.filter(h=>h.tag===l.tag);if(o.length>0)return o.find(h=>h.format===l.format)??o[0]}let i,s;if(De(l)){s=l.value;let o=u.filter(h=>{var m;return(m=h.identify)==null?void 0:m.call(h,s)});if(o.length>1){const h=o.filter(m=>m.test);h.length>0&&(o=h)}i=o.find(h=>h.format===l.format)??o.find(h=>!h.format)}else s=l,i=u.find(o=>o.nodeClass&&s instanceof o.nodeClass);if(!i){const o=((c=s==null?void 0:s.constructor)==null?void 0:c.name)??(s===null?"null":typeof s);throw new Error(`Tag not resolved for ${o} value`)}return i}function Yv(u,l,{anchors:i,doc:s}){if(!s.directives)return"";const c=[],o=(De(u)||Be(u))&&u.anchor;o&&up(o)&&(i.add(o),c.push(`&${o}`));const h=u.tag??(l.default?null:l.tag);return h&&c.push(s.directives.tagString(h)),c.join(" ")}function Ea(u,l,i,s){var g;if(je(u))return u.toString(l,i,s);if(el(u)){if(l.doc.directives)return u.toString(l);if((g=l.resolvedAliases)!=null&&g.has(u))throw new TypeError("Cannot stringify circular structure without alias nodes");l.resolvedAliases?l.resolvedAliases.add(u):l.resolvedAliases=new Set([u]),u=u.resolve(l.doc)}let c;const o=ke(u)?u:l.doc.createNode(u,{onTagObj:p=>c=p});c??(c=Hv(l.doc.schema.tags,o));const h=Yv(o,c,l);h.length>0&&(l.indentAtStart=(l.indentAtStart??0)+h.length+1);const m=typeof c.stringify=="function"?c.stringify(o,l,i,s):De(o)?Ri(o,l,i,s):o.toString(l,i,s);return h?De(o)||m[0]==="{"||m[0]==="["?`${h} ${m}`:`${h} +${l.indent}${m}`:m}function $v({key:u,value:l},i,s,c){const{allNullValues:o,doc:h,indent:m,indentStep:g,options:{commentString:p,indentSeq:T,simpleKeys:v}}=i;let _=ke(u)&&u.comment||null;if(v){if(_)throw new Error("With simple keys, key nodes cannot have comments");if(Be(u)||!ke(u)&&typeof u=="object"){const k="With simple keys, collection cannot be used as a key value";throw new Error(k)}}let E=!v&&(!u||_&&l==null&&!i.inFlow||Be(u)||(De(u)?u.type===ce.BLOCK_FOLDED||u.type===ce.BLOCK_LITERAL:typeof u=="object"));i=Object.assign({},i,{allNullValues:!1,implicitKey:!E&&(v||!o),indent:m+g});let x=!1,S=!1,w=Ea(u,i,()=>x=!0,()=>S=!0);if(!E&&!i.inFlow&&w.length>1024){if(v)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");E=!0}if(i.inFlow){if(o||l==null)return x&&s&&s(),w===""?"?":E?`? ${w}`:w}else if(o&&!v||l==null&&E)return w=`? ${w}`,_&&!x?w+=Tl(w,i.indent,p(_)):S&&c&&c(),w;x&&(_=null),E?(_&&(w+=Tl(w,i.indent,p(_))),w=`? ${w} +${m}:`):(w=`${w}:`,_&&(w+=Tl(w,i.indent,p(_))));let M,R,G;ke(l)?(M=!!l.spaceBefore,R=l.commentBefore,G=l.comment):(M=!1,R=null,G=null,l&&typeof l=="object"&&(l=h.createNode(l))),i.implicitKey=!1,!E&&!_&&De(l)&&(i.indentAtStart=w.length+1),S=!1,!T&&g.length>=2&&!i.inFlow&&!E&&Ma(l)&&!l.flow&&!l.tag&&!l.anchor&&(i.indent=i.indent.substring(2));let Q=!1;const Z=Ea(l,i,()=>Q=!0,()=>S=!0);let W=" ";if(_||M||R){if(W=M?` +`:"",R){const k=p(R);W+=` +${An(k,i.indent)}`}Z===""&&!i.inFlow?W===` +`&&G&&(W=` + +`):W+=` +${i.indent}`}else if(!E&&Be(l)){const k=Z[0],V=Z.indexOf(` +`),U=V!==-1,ie=i.inFlow??l.flow??l.items.length===0;if(U||!ie){let te=!1;if(U&&(k==="&"||k==="!")){let $=Z.indexOf(" ");k==="&"&&$!==-1&&$u===nu||typeof u=="symbol"&&u.description===nu,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new ce(Symbol(nu)),{addToJSMap:gp}),stringify:()=>nu},Gv=(u,l)=>(On.identify(l)||De(l)&&(!l.type||l.type===ce.PLAIN)&&On.identify(l.value))&&(u==null?void 0:u.doc.schema.tags.some(i=>i.tag===On.tag&&i.default));function gp(u,l,i){if(i=u&&el(i)?i.resolve(u.doc):i,Ma(i))for(const s of i.items)hf(u,l,s);else if(Array.isArray(i))for(const s of i)hf(u,l,s);else hf(u,l,i)}function hf(u,l,i){const s=u&&el(i)?i.resolve(u.doc):i;if(!Na(s))throw new Error("Merge sources must be maps or map aliases");const c=s.toJSON(null,u,Map);for(const[o,h]of c)l instanceof Map?l.has(o)||l.set(o,h):l instanceof Set?l.add(o):Object.prototype.hasOwnProperty.call(l,o)||Object.defineProperty(l,o,{value:h,writable:!0,enumerable:!0,configurable:!0});return l}function pp(u,l,{key:i,value:s}){if(ke(i)&&i.addToJSMap)i.addToJSMap(u,l,s);else if(Gv(u,i))gp(u,l,s);else{const c=Kt(i,"",u);if(l instanceof Map)l.set(c,Kt(s,c,u));else if(l instanceof Set)l.add(c);else{const o=Kv(i,c,u),h=Kt(s,o,u);o in l?Object.defineProperty(l,o,{value:h,writable:!0,enumerable:!0,configurable:!0}):l[o]=h}}return l}function Kv(u,l,i){if(l===null)return"";if(typeof l!="object")return String(l);if(ke(u)&&(i!=null&&i.doc)){const s=dp(i.doc,{});s.anchors=new Set;for(const o of i.anchors.keys())s.anchors.add(o.anchor);s.inFlow=!0,s.inStringifyKey=!0;const c=u.toString(s);if(!i.mapKeyWarned){let o=JSON.stringify(c);o.length>40&&(o=o.substring(0,36)+'..."'),mp(i.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${o}. Set mapAsMap: true to use object keys.`),i.mapKeyWarned=!0}return c}return JSON.stringify(l)}function Rf(u,l,i){const s=xi(u,void 0,i),c=xi(l,void 0,i);return new ct(s,c)}class ct{constructor(l,i=null){Object.defineProperty(this,Vt,{value:tp}),this.key=l,this.value=i}clone(l){let{key:i,value:s}=this;return ke(i)&&(i=i.clone(l)),ke(s)&&(s=s.clone(l)),new ct(i,s)}toJSON(l,i){const s=i!=null&&i.mapAsMap?new Map:{};return pp(i,s,this)}toString(l,i,s){return l!=null&&l.doc?$v(this,l,i,s):JSON.stringify(this)}}function yp(u,l,i){return(l.inFlow??u.flow?Qv:Vv)(u,l,i)}function Vv({comment:u,items:l},i,{blockItemPrefix:s,flowChars:c,itemIndent:o,onChompKeep:h,onComment:m}){const{indent:g,options:{commentString:p}}=i,T=Object.assign({},i,{indent:o,type:null});let v=!1;const _=[];for(let x=0;xw=null,()=>v=!0);w&&(M+=Tl(M,o,p(w))),v&&w&&(v=!1),_.push(s+M)}let E;if(_.length===0)E=c.start+c.end;else{E=_[0];for(let x=1;x<_.length;++x){const S=_[x];E+=S?` +${g}${S}`:` +`}}return u?(E+=` +`+An(p(u),g),m&&m()):v&&h&&h(),E}function Qv({items:u},l,{flowChars:i,itemIndent:s}){const{indent:c,indentStep:o,flowCollectionPadding:h,options:{commentString:m}}=l;s+=o;const g=Object.assign({},l,{indent:s,inFlow:!0,type:null});let p=!1,T=0;const v=[];for(let x=0;xw=null);p||(p=v.length>T||M.includes(` +`)),x0&&(p||(p=v.reduce((R,G)=>R+G.length+2,2)+(M.length+2)>l.options.lineWidth)),p&&(M+=",")),w&&(M+=Tl(M,s,m(w))),v.push(M),T=v.length}const{start:_,end:E}=i;if(v.length===0)return _+E;if(!p){const x=v.reduce((S,w)=>S+w.length+2,2);p=l.options.lineWidth>0&&x>l.options.lineWidth}if(p){let x=_;for(const S of v)x+=S?` +${o}${c}${S}`:` +`;return`${x} +${c}${E}`}else return`${_}${h}${v.join(" ")}${h}${E}`}function bu({indent:u,options:{commentString:l}},i,s,c){if(s&&c&&(s=s.replace(/^\n+/,"")),s){const o=An(l(s),u);i.push(o.trimStart())}}function El(u,l){const i=De(l)?l.value:l;for(const s of u)if(je(s)&&(s.key===l||s.key===i||De(s.key)&&s.key.value===i))return s}class Lt extends op{static get tagName(){return"tag:yaml.org,2002:map"}constructor(l){super(In,l),this.items=[]}static from(l,i,s){const{keepUndefined:c,replacer:o}=s,h=new this(l),m=(g,p)=>{if(typeof o=="function")p=o.call(i,g,p);else if(Array.isArray(o)&&!o.includes(g))return;(p!==void 0||c)&&h.items.push(Rf(g,p,s))};if(i instanceof Map)for(const[g,p]of i)m(g,p);else if(i&&typeof i=="object")for(const g of Object.keys(i))m(g,i[g]);return typeof l.sortMapEntries=="function"&&h.items.sort(l.sortMapEntries),h}add(l,i){var h;let s;je(l)?s=l:!l||typeof l!="object"||!("key"in l)?s=new ct(l,l==null?void 0:l.value):s=new ct(l.key,l.value);const c=El(this.items,s.key),o=(h=this.schema)==null?void 0:h.sortMapEntries;if(c){if(!i)throw new Error(`Key ${s.key} already set`);De(c.value)&&fp(s.value)?c.value.value=s.value:c.value=s.value}else if(o){const m=this.items.findIndex(g=>o(s,g)<0);m===-1?this.items.push(s):this.items.splice(m,0,s)}else this.items.push(s)}delete(l){const i=El(this.items,l);return i?this.items.splice(this.items.indexOf(i),1).length>0:!1}get(l,i){const s=El(this.items,l),c=s==null?void 0:s.value;return(!i&&De(c)?c.value:c)??void 0}has(l){return!!El(this.items,l)}set(l,i){this.add(new ct(l,i),!0)}toJSON(l,i,s){const c=s?new s:i!=null&&i.mapAsMap?new Map:{};i!=null&&i.onCreate&&i.onCreate(c);for(const o of this.items)pp(i,c,o);return c}toString(l,i,s){if(!l)return JSON.stringify(this);for(const c of this.items)if(!je(c))throw new Error(`Map items must all be pairs; found ${JSON.stringify(c)} instead`);return!l.allNullValues&&this.hasAllNullValues(!1)&&(l=Object.assign({},l,{allNullValues:!0})),yp(this,l,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:l.indent||"",onChompKeep:s,onComment:i})}}const Ca={collection:"map",default:!0,nodeClass:Lt,tag:"tag:yaml.org,2002:map",resolve(u,l){return Na(u)||l("Expected a mapping for this tag"),u},createNode:(u,l,i)=>Lt.from(u,l,i)};class Pn extends op{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(l){super(_a,l),this.items=[]}add(l){this.items.push(l)}delete(l){const i=lu(l);return typeof i!="number"?!1:this.items.splice(i,1).length>0}get(l,i){const s=lu(l);if(typeof s!="number")return;const c=this.items[s];return!i&&De(c)?c.value:c}has(l){const i=lu(l);return typeof i=="number"&&i=0?l:null}const za={collection:"seq",default:!0,nodeClass:Pn,tag:"tag:yaml.org,2002:seq",resolve(u,l){return Ma(u)||l("Expected a sequence for this tag"),u},createNode:(u,l,i)=>Pn.from(u,l,i)},zu={identify:u=>typeof u=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:u=>u,stringify(u,l,i,s){return l=Object.assign({actualString:!0},l),Ri(u,l,i,s)}},xu={identify:u=>u==null,createNode:()=>new ce(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new ce(null),stringify:({source:u},l)=>typeof u=="string"&&xu.test.test(u)?u:l.options.nullStr},jf={identify:u=>typeof u=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:u=>new ce(u[0]==="t"||u[0]==="T"),stringify({source:u,value:l},i){if(u&&jf.test.test(u)){const s=u[0]==="t"||u[0]==="T";if(l===s)return u}return l?i.options.trueStr:i.options.falseStr}};function Wt({format:u,minFractionDigits:l,tag:i,value:s}){if(typeof s=="bigint")return String(s);const c=typeof s=="number"?s:Number(s);if(!isFinite(c))return isNaN(c)?".nan":c<0?"-.inf":".inf";let o=Object.is(s,-0)?"-0":JSON.stringify(s);if(!u&&l&&(!i||i==="tag:yaml.org,2002:float")&&/^\d/.test(o)){let h=o.indexOf(".");h<0&&(h=o.length,o+=".");let m=l-(o.length-h-1);for(;m-- >0;)o+="0"}return o}const vp={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:u=>u.slice(-3).toLowerCase()==="nan"?NaN:u[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Wt},bp={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:u=>parseFloat(u),stringify(u){const l=Number(u.value);return isFinite(l)?l.toExponential():Wt(u)}},Sp={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(u){const l=new ce(parseFloat(u)),i=u.indexOf(".");return i!==-1&&u[u.length-1]==="0"&&(l.minFractionDigits=u.length-i-1),l},stringify:Wt},Du=u=>typeof u=="bigint"||Number.isInteger(u),Bf=(u,l,i,{intAsBigInt:s})=>s?BigInt(u):parseInt(u.substring(l),i);function Tp(u,l,i){const{value:s}=u;return Du(s)&&s>=0?i+s.toString(l):Wt(u)}const Ep={identify:u=>Du(u)&&u>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(u,l,i)=>Bf(u,2,8,i),stringify:u=>Tp(u,8,"0o")},Ap={identify:Du,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(u,l,i)=>Bf(u,0,10,i),stringify:Wt},wp={identify:u=>Du(u)&&u>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(u,l,i)=>Bf(u,2,16,i),stringify:u=>Tp(u,16,"0x")},Xv=[Ca,za,zu,xu,jf,Ep,Ap,wp,vp,bp,Sp];function vg(u){return typeof u=="bigint"||Number.isInteger(u)}const au=({value:u})=>JSON.stringify(u),Zv=[{identify:u=>typeof u=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:u=>u,stringify:au},{identify:u=>u==null,createNode:()=>new ce(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:au},{identify:u=>typeof u=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:u=>u==="true",stringify:au},{identify:vg,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(u,l,{intAsBigInt:i})=>i?BigInt(u):parseInt(u,10),stringify:({value:u})=>vg(u)?u.toString():JSON.stringify(u)},{identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:u=>parseFloat(u),stringify:au}],Jv={default:!0,tag:"",test:/^/,resolve(u,l){return l(`Unresolved plain scalar ${JSON.stringify(u)}`),u}},Wv=[Ca,za].concat(Zv,Jv),kf={identify:u=>u instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(u,l){if(typeof atob=="function"){const i=atob(u.replace(/[\n\r]/g,"")),s=new Uint8Array(i.length);for(let c=0;c1&&l("Each pair must have its own sequence indicator");const c=s.items[0]||new ct(new ce(null));if(s.commentBefore&&(c.key.commentBefore=c.key.commentBefore?`${s.commentBefore} +${c.key.commentBefore}`:s.commentBefore),s.comment){const o=c.value??c.key;o.comment=o.comment?`${s.comment} +${o.comment}`:s.comment}s=c}u.items[i]=je(s)?s:new ct(s)}}else l("Expected a sequence for this tag");return u}function _p(u,l,i){const{replacer:s}=i,c=new Pn(u);c.tag="tag:yaml.org,2002:pairs";let o=0;if(l&&Symbol.iterator in Object(l))for(let h of l){typeof s=="function"&&(h=s.call(l,String(o++),h));let m,g;if(Array.isArray(h))if(h.length===2)m=h[0],g=h[1];else throw new TypeError(`Expected [key, value] tuple: ${h}`);else if(h&&h instanceof Object){const p=Object.keys(h);if(p.length===1)m=p[0],g=h[m];else throw new TypeError(`Expected tuple with one key, not ${p.length} keys`)}else m=h;c.items.push(Rf(m,g,i))}return c}const qf={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:Op,createNode:_p};class Sa extends Pn{constructor(){super(),this.add=Lt.prototype.add.bind(this),this.delete=Lt.prototype.delete.bind(this),this.get=Lt.prototype.get.bind(this),this.has=Lt.prototype.has.bind(this),this.set=Lt.prototype.set.bind(this),this.tag=Sa.tag}toJSON(l,i){if(!i)return super.toJSON(l);const s=new Map;i!=null&&i.onCreate&&i.onCreate(s);for(const c of this.items){let o,h;if(je(c)?(o=Kt(c.key,"",i),h=Kt(c.value,o,i)):o=Kt(c,"",i),s.has(o))throw new Error("Ordered maps must not include duplicate keys");s.set(o,h)}return s}static from(l,i,s){const c=_p(l,i,s),o=new this;return o.items=c.items,o}}Sa.tag="tag:yaml.org,2002:omap";const Hf={collection:"seq",identify:u=>u instanceof Map,nodeClass:Sa,default:!1,tag:"tag:yaml.org,2002:omap",resolve(u,l){const i=Op(u,l),s=[];for(const{key:c}of i.items)De(c)&&(s.includes(c.value)?l(`Ordered maps must not include duplicate keys: ${c.value}`):s.push(c.value));return Object.assign(new Sa,i)},createNode:(u,l,i)=>Sa.from(u,l,i)};function Np({value:u,source:l},i){return l&&(u?Mp:Cp).test.test(l)?l:u?i.options.trueStr:i.options.falseStr}const Mp={identify:u=>u===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new ce(!0),stringify:Np},Cp={identify:u=>u===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new ce(!1),stringify:Np},Fv={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:u=>u.slice(-3).toLowerCase()==="nan"?NaN:u[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Wt},Iv={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:u=>parseFloat(u.replace(/_/g,"")),stringify(u){const l=Number(u.value);return isFinite(l)?l.toExponential():Wt(u)}},Pv={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(u){const l=new ce(parseFloat(u.replace(/_/g,""))),i=u.indexOf(".");if(i!==-1){const s=u.substring(i+1).replace(/_/g,"");s[s.length-1]==="0"&&(l.minFractionDigits=s.length)}return l},stringify:Wt},ji=u=>typeof u=="bigint"||Number.isInteger(u);function Lu(u,l,i,{intAsBigInt:s}){const c=u[0];if((c==="-"||c==="+")&&(l+=1),u=u.substring(l).replace(/_/g,""),s){switch(i){case 2:u=`0b${u}`;break;case 8:u=`0o${u}`;break;case 16:u=`0x${u}`;break}const h=BigInt(u);return c==="-"?BigInt(-1)*h:h}const o=parseInt(u,i);return c==="-"?-1*o:o}function Yf(u,l,i){const{value:s}=u;if(ji(s)){const c=s.toString(l);return s<0?"-"+i+c.substr(1):i+c}return Wt(u)}const eb={identify:ji,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(u,l,i)=>Lu(u,2,2,i),stringify:u=>Yf(u,2,"0b")},tb={identify:ji,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(u,l,i)=>Lu(u,1,8,i),stringify:u=>Yf(u,8,"0")},nb={identify:ji,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(u,l,i)=>Lu(u,0,10,i),stringify:Wt},lb={identify:ji,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(u,l,i)=>Lu(u,2,16,i),stringify:u=>Yf(u,16,"0x")};class Ta extends Lt{constructor(l){super(l),this.tag=Ta.tag}add(l){let i;je(l)?i=l:l&&typeof l=="object"&&"key"in l&&"value"in l&&l.value===null?i=new ct(l.key,null):i=new ct(l,null),El(this.items,i.key)||this.items.push(i)}get(l,i){const s=El(this.items,l);return!i&&je(s)?De(s.key)?s.key.value:s.key:s}set(l,i){if(typeof i!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof i}`);const s=El(this.items,l);s&&!i?this.items.splice(this.items.indexOf(s),1):!s&&i&&this.items.push(new ct(l))}toJSON(l,i){return super.toJSON(l,i,Set)}toString(l,i,s){if(!l)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},l,{allNullValues:!0}),i,s);throw new Error("Set items must all have null values")}static from(l,i,s){const{replacer:c}=s,o=new this(l);if(i&&Symbol.iterator in Object(i))for(let h of i)typeof c=="function"&&(h=c.call(i,h,h)),o.items.push(Rf(h,null,s));return o}}Ta.tag="tag:yaml.org,2002:set";const $f={collection:"map",identify:u=>u instanceof Set,nodeClass:Ta,default:!1,tag:"tag:yaml.org,2002:set",createNode:(u,l,i)=>Ta.from(u,l,i),resolve(u,l){if(Na(u)){if(u.hasAllNullValues(!0))return Object.assign(new Ta,u);l("Set items must all have null values")}else l("Expected a mapping for this tag");return u}};function Gf(u,l){const i=u[0],s=i==="-"||i==="+"?u.substring(1):u,c=h=>l?BigInt(h):Number(h),o=s.replace(/_/g,"").split(":").reduce((h,m)=>h*c(60)+c(m),c(0));return i==="-"?c(-1)*o:o}function zp(u){let{value:l}=u,i=h=>h;if(typeof l=="bigint")i=h=>BigInt(h);else if(isNaN(l)||!isFinite(l))return Wt(u);let s="";l<0&&(s="-",l*=i(-1));const c=i(60),o=[l%c];return l<60?o.unshift(0):(l=(l-o[0])/c,o.unshift(l%c),l>=60&&(l=(l-o[0])/c,o.unshift(l))),s+o.map(h=>String(h).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}const xp={identify:u=>typeof u=="bigint"||Number.isInteger(u),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(u,l,{intAsBigInt:i})=>Gf(u,i),stringify:zp},Dp={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:u=>Gf(u,!1),stringify:zp},Uu={identify:u=>u instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(u){const l=u.match(Uu.test);if(!l)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");const[,i,s,c,o,h,m]=l.map(Number),g=l[7]?Number((l[7]+"00").substr(1,3)):0;let p=Date.UTC(i,s-1,c,o||0,h||0,m||0,g);const T=l[8];if(T&&T!=="Z"){let v=Gf(T,!1);Math.abs(v)<30&&(v*=60),p-=6e4*v}return new Date(p)},stringify:({value:u})=>(u==null?void 0:u.toISOString().replace(/(T00:00:00)?\.000Z$/,""))??""},bg=[Ca,za,zu,xu,Mp,Cp,eb,tb,nb,lb,Fv,Iv,Pv,kf,On,Hf,qf,$f,xp,Dp,Uu],Sg=new Map([["core",Xv],["failsafe",[Ca,za,zu]],["json",Wv],["yaml11",bg],["yaml-1.1",bg]]),Tg={binary:kf,bool:jf,float:Sp,floatExp:bp,floatNaN:vp,floatTime:Dp,int:Ap,intHex:wp,intOct:Ep,intTime:xp,map:Ca,merge:On,null:xu,omap:Hf,pairs:qf,seq:za,set:$f,timestamp:Uu},ab={"tag:yaml.org,2002:binary":kf,"tag:yaml.org,2002:merge":On,"tag:yaml.org,2002:omap":Hf,"tag:yaml.org,2002:pairs":qf,"tag:yaml.org,2002:set":$f,"tag:yaml.org,2002:timestamp":Uu};function df(u,l,i){const s=Sg.get(l);if(s&&!u)return i&&!s.includes(On)?s.concat(On):s.slice();let c=s;if(!c)if(Array.isArray(u))c=[];else{const o=Array.from(Sg.keys()).filter(h=>h!=="yaml11").map(h=>JSON.stringify(h)).join(", ");throw new Error(`Unknown schema "${l}"; use one of ${o} or define customTags array`)}if(Array.isArray(u))for(const o of u)c=c.concat(o);else typeof u=="function"&&(c=u(c.slice()));return i&&(c=c.concat(On)),c.reduce((o,h)=>{const m=typeof h=="string"?Tg[h]:h;if(!m){const g=JSON.stringify(h),p=Object.keys(Tg).map(T=>JSON.stringify(T)).join(", ");throw new Error(`Unknown custom tag ${g}; use one of ${p}`)}return o.includes(m)||o.push(m),o},[])}const ib=(u,l)=>u.keyl.key?1:0;class Ru{constructor({compat:l,customTags:i,merge:s,resolveKnownTags:c,schema:o,sortMapEntries:h,toStringDefaults:m}){this.compat=Array.isArray(l)?df(l,"compat"):l?df(null,l):null,this.name=typeof o=="string"&&o||"core",this.knownTags=c?ab:{},this.tags=df(i,this.name,s),this.toStringOptions=m??null,Object.defineProperty(this,In,{value:Ca}),Object.defineProperty(this,nn,{value:zu}),Object.defineProperty(this,_a,{value:za}),this.sortMapEntries=typeof h=="function"?h:h===!0?ib:null}clone(){const l=Object.create(Ru.prototype,Object.getOwnPropertyDescriptors(this));return l.tags=this.tags.slice(),l}}function sb(u,l){var g;const i=[];let s=l.directives===!0;if(l.directives!==!1&&u.directives){const p=u.directives.toString(u);p?(i.push(p),s=!0):u.directives.docStart&&(s=!0)}s&&i.push("---");const c=dp(u,l),{commentString:o}=c.options;if(u.commentBefore){i.length!==1&&i.unshift("");const p=o(u.commentBefore);i.unshift(An(p,""))}let h=!1,m=null;if(u.contents){if(ke(u.contents)){if(u.contents.spaceBefore&&s&&i.push(""),u.contents.commentBefore){const v=o(u.contents.commentBefore);i.push(An(v,""))}c.forceBlockIndent=!!u.comment,m=u.contents.comment}const p=m?void 0:()=>h=!0;let T=Ea(u.contents,c,()=>m=null,p);m&&(T+=Tl(T,"",o(m))),(T[0]==="|"||T[0]===">")&&i[i.length-1]==="---"?i[i.length-1]=`--- ${T}`:i.push(T)}else i.push(Ea(u.contents,c));if((g=u.directives)!=null&&g.docEnd)if(u.comment){const p=o(u.comment);p.includes(` +`)?(i.push("..."),i.push(An(p,""))):i.push(`... ${p}`)}else i.push("...");else{let p=u.comment;p&&h&&(p=p.replace(/^\n+/,"")),p&&((!h||m)&&i[i.length-1]!==""&&i.push(""),i.push(An(o(p),"")))}return i.join(` +`)+` +`}class xa{constructor(l,i,s){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,Vt,{value:Of});let c=null;typeof i=="function"||Array.isArray(i)?c=i:s===void 0&&i&&(s=i,i=void 0);const o=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},s);this.options=o;let{version:h}=o;s!=null&&s._directives?(this.directives=s._directives.atDocument(),this.directives.yaml.explicit&&(h=this.directives.yaml.version)):this.directives=new ot({version:h}),this.setSchema(h,s),this.contents=l===void 0?null:this.createNode(l,c,s)}clone(){const l=Object.create(xa.prototype,{[Vt]:{value:Of}});return l.commentBefore=this.commentBefore,l.comment=this.comment,l.errors=this.errors.slice(),l.warnings=this.warnings.slice(),l.options=Object.assign({},this.options),this.directives&&(l.directives=this.directives.clone()),l.schema=this.schema.clone(),l.contents=ke(this.contents)?this.contents.clone(l.schema):this.contents,this.range&&(l.range=this.range.slice()),l}add(l){ha(this.contents)&&this.contents.add(l)}addIn(l,i){ha(this.contents)&&this.contents.addIn(l,i)}createAlias(l,i){if(!l.anchor){const s=cp(this);l.anchor=!i||s.has(i)?rp(i||"a",s):i}return new _u(l.anchor)}createNode(l,i,s){let c;if(typeof i=="function")l=i.call({"":l},"",l),c=i;else if(Array.isArray(i)){const w=R=>typeof R=="number"||R instanceof String||R instanceof Number,M=i.filter(w).map(String);M.length>0&&(i=i.concat(M)),c=i}else s===void 0&&i&&(s=i,i=void 0);const{aliasDuplicateObjects:o,anchorPrefix:h,flow:m,keepUndefined:g,onTagObj:p,tag:T}=s??{},{onAnchor:v,setAnchors:_,sourceObjects:E}=Uv(this,h||"a"),x={aliasDuplicateObjects:o??!0,keepUndefined:g??!1,onAnchor:v,onTagObj:p,replacer:c,schema:this.schema,sourceObjects:E},S=xi(l,T,x);return m&&Be(S)&&(S.flow=!0),_(),S}createPair(l,i,s={}){const c=this.createNode(l,null,s),o=this.createNode(i,null,s);return new ct(c,o)}delete(l){return ha(this.contents)?this.contents.delete(l):!1}deleteIn(l){return Ci(l)?this.contents==null?!1:(this.contents=null,!0):ha(this.contents)?this.contents.deleteIn(l):!1}get(l,i){return Be(this.contents)?this.contents.get(l,i):void 0}getIn(l,i){return Ci(l)?!i&&De(this.contents)?this.contents.value:this.contents:Be(this.contents)?this.contents.getIn(l,i):void 0}has(l){return Be(this.contents)?this.contents.has(l):!1}hasIn(l){return Ci(l)?this.contents!==void 0:Be(this.contents)?this.contents.hasIn(l):!1}set(l,i){this.contents==null?this.contents=vu(this.schema,[l],i):ha(this.contents)&&this.contents.set(l,i)}setIn(l,i){Ci(l)?this.contents=i:this.contents==null?this.contents=vu(this.schema,Array.from(l),i):ha(this.contents)&&this.contents.setIn(l,i)}setSchema(l,i={}){typeof l=="number"&&(l=String(l));let s;switch(l){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new ot({version:"1.1"}),s={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=l:this.directives=new ot({version:l}),s={resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,s=null;break;default:{const c=JSON.stringify(l);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${c}`)}}if(i.schema instanceof Object)this.schema=i.schema;else if(s)this.schema=new Ru(Object.assign(s,i));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:l,jsonArg:i,mapAsMap:s,maxAliasCount:c,onAnchor:o,reviver:h}={}){const m={anchors:new Map,doc:this,keep:!l,mapAsMap:s===!0,mapKeyWarned:!1,maxAliasCount:typeof c=="number"?c:100},g=Kt(this.contents,i??"",m);if(typeof o=="function")for(const{count:p,res:T}of m.anchors.values())o(T,p);return typeof h=="function"?va(h,{"":g},"",g):g}toJSON(l,i){return this.toJS({json:!0,jsonArg:l,mapAsMap:!1,onAnchor:i})}toString(l={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in l&&(!Number.isInteger(l.indent)||Number(l.indent)<=0)){const i=JSON.stringify(l.indent);throw new Error(`"indent" option must be a positive integer, not ${i}`)}return sb(this,l)}}function ha(u){if(Be(u))return!0;throw new Error("Expected a YAML collection as document contents")}class Kf extends Error{constructor(l,i,s,c){super(),this.name=l,this.code=s,this.message=c,this.pos=i}}class Al extends Kf{constructor(l,i,s){super("YAMLParseError",l,i,s)}}class Lp extends Kf{constructor(l,i,s){super("YAMLWarning",l,i,s)}}const Su=(u,l)=>i=>{if(i.pos[0]===-1)return;i.linePos=i.pos.map(m=>l.linePos(m));const{line:s,col:c}=i.linePos[0];i.message+=` at line ${s}, column ${c}`;let o=c-1,h=u.substring(l.lineStarts[s-1],l.lineStarts[s]).replace(/[\n\r]+$/,"");if(o>=60&&h.length>80){const m=Math.min(o-39,h.length-79);h="…"+h.substring(m),o-=m-1}if(h.length>80&&(h=h.substring(0,79)+"…"),s>1&&/^ *$/.test(h.substring(0,o))){let m=u.substring(l.lineStarts[s-2],l.lineStarts[s-1]);m.length>80&&(m=m.substring(0,79)+`… +`),h=m+h}if(/[^ ]/.test(h)){let m=1;const g=i.linePos[1];(g==null?void 0:g.line)===s&&g.col>c&&(m=Math.max(1,Math.min(g.col-c,80-o)));const p=" ".repeat(o)+"^".repeat(m);i.message+=`: + +${h} +${p} +`}};function Aa(u,{flow:l,indicator:i,next:s,offset:c,onError:o,parentIndent:h,startOnNewline:m}){let g=!1,p=m,T=m,v="",_="",E=!1,x=!1,S=null,w=null,M=null,R=null,G=null,Q=null,Z=null;for(const V of u)switch(x&&(V.type!=="space"&&V.type!=="newline"&&V.type!=="comma"&&o(V.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),x=!1),S&&(p&&V.type!=="comment"&&V.type!=="newline"&&o(S,"TAB_AS_INDENT","Tabs are not allowed as indentation"),S=null),V.type){case"space":!l&&(i!=="doc-start"||(s==null?void 0:s.type)!=="flow-collection")&&V.source.includes(" ")&&(S=V),T=!0;break;case"comment":{T||o(V,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const U=V.source.substring(1)||" ";v?v+=_+U:v=U,_="",p=!1;break}case"newline":p?v?v+=V.source:(!Q||i!=="seq-item-ind")&&(g=!0):_+=V.source,p=!0,E=!0,(w||M)&&(R=V),T=!0;break;case"anchor":w&&o(V,"MULTIPLE_ANCHORS","A node can have at most one anchor"),V.source.endsWith(":")&&o(V.offset+V.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),w=V,Z??(Z=V.offset),p=!1,T=!1,x=!0;break;case"tag":{M&&o(V,"MULTIPLE_TAGS","A node can have at most one tag"),M=V,Z??(Z=V.offset),p=!1,T=!1,x=!0;break}case i:(w||M)&&o(V,"BAD_PROP_ORDER",`Anchors and tags must be after the ${V.source} indicator`),Q&&o(V,"UNEXPECTED_TOKEN",`Unexpected ${V.source} in ${l??"collection"}`),Q=V,p=i==="seq-item-ind"||i==="explicit-key-ind",T=!1;break;case"comma":if(l){G&&o(V,"UNEXPECTED_TOKEN",`Unexpected , in ${l}`),G=V,p=!1,T=!1;break}default:o(V,"UNEXPECTED_TOKEN",`Unexpected ${V.type} token`),p=!1,T=!1}const W=u[u.length-1],k=W?W.offset+W.source.length:c;return x&&s&&s.type!=="space"&&s.type!=="newline"&&s.type!=="comma"&&(s.type!=="scalar"||s.source!=="")&&o(s.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),S&&(p&&S.indent<=h||(s==null?void 0:s.type)==="block-map"||(s==null?void 0:s.type)==="block-seq")&&o(S,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:G,found:Q,spaceBefore:g,comment:v,hasNewline:E,anchor:w,tag:M,newlineAfterProp:R,end:k,start:Z??k}}function Di(u){if(!u)return null;switch(u.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(u.source.includes(` +`))return!0;if(u.end){for(const l of u.end)if(l.type==="newline")return!0}return!1;case"flow-collection":for(const l of u.items){for(const i of l.start)if(i.type==="newline")return!0;if(l.sep){for(const i of l.sep)if(i.type==="newline")return!0}if(Di(l.key)||Di(l.value))return!0}return!1;default:return!0}}function Cf(u,l,i){if((l==null?void 0:l.type)==="flow-collection"){const s=l.end[0];s.indent===u&&(s.source==="]"||s.source==="}")&&Di(l)&&i(s,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}function Up(u,l,i){const{uniqueKeys:s}=u.options;if(s===!1)return!1;const c=typeof s=="function"?s:(o,h)=>o===h||De(o)&&De(h)&&o.value===h.value;return l.some(o=>c(o.key,i))}const Eg="All mapping items must start at the same column";function ub({composeNode:u,composeEmptyNode:l},i,s,c,o){var T;const h=(o==null?void 0:o.nodeClass)??Lt,m=new h(i.schema);i.atRoot&&(i.atRoot=!1);let g=s.offset,p=null;for(const v of s.items){const{start:_,key:E,sep:x,value:S}=v,w=Aa(_,{indicator:"explicit-key-ind",next:E??(x==null?void 0:x[0]),offset:g,onError:c,parentIndent:s.indent,startOnNewline:!0}),M=!w.found;if(M){if(E&&(E.type==="block-seq"?c(g,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in E&&E.indent!==s.indent&&c(g,"BAD_INDENT",Eg)),!w.anchor&&!w.tag&&!x){p=w.end,w.comment&&(m.comment?m.comment+=` +`+w.comment:m.comment=w.comment);continue}(w.newlineAfterProp||Di(E))&&c(E??_[_.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else((T=w.found)==null?void 0:T.indent)!==s.indent&&c(g,"BAD_INDENT",Eg);i.atKey=!0;const R=w.end,G=E?u(i,E,w,c):l(i,R,_,null,w,c);i.schema.compat&&Cf(s.indent,E,c),i.atKey=!1,Up(i,m.items,G)&&c(R,"DUPLICATE_KEY","Map keys must be unique");const Q=Aa(x??[],{indicator:"map-value-ind",next:S,offset:G.range[2],onError:c,parentIndent:s.indent,startOnNewline:!E||E.type==="block-scalar"});if(g=Q.end,Q.found){M&&((S==null?void 0:S.type)==="block-map"&&!Q.hasNewline&&c(g,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),i.options.strict&&w.startu&&(u.type==="block-map"||u.type==="block-seq");function rb({composeNode:u,composeEmptyNode:l},i,s,c,o){var w;const h=s.start.source==="{",m=h?"flow map":"flow sequence",g=(o==null?void 0:o.nodeClass)??(h?Lt:Pn),p=new g(i.schema);p.flow=!0;const T=i.atRoot;T&&(i.atRoot=!1),i.atKey&&(i.atKey=!1);let v=s.offset+s.start.source.length;for(let M=0;M0){const M=Bi(x,S,i.options.strict,c);M.comment&&(p.comment?p.comment+=` +`+M.comment:p.comment=M.comment),p.range=[s.offset,S,M.offset]}else p.range=[s.offset,S,S];return p}function pf(u,l,i,s,c,o){const h=i.type==="block-map"?ub(u,l,i,s,o):i.type==="block-seq"?cb(u,l,i,s,o):rb(u,l,i,s,o),m=h.constructor;return c==="!"||c===m.tagName?(h.tag=m.tagName,h):(c&&(h.tag=c),h)}function fb(u,l,i,s,c){var _;const o=s.tag,h=o?l.directives.tagName(o.source,E=>c(o,"TAG_RESOLVE_FAILED",E)):null;if(i.type==="block-seq"){const{anchor:E,newlineAfterProp:x}=s,S=E&&o?E.offset>o.offset?E:o:E??o;S&&(!x||x.offsetE.tag===h&&E.collection===m);if(!g){const E=l.schema.knownTags[h];if((E==null?void 0:E.collection)===m)l.schema.tags.push(Object.assign({},E,{default:!1})),g=E;else return E?c(o,"BAD_COLLECTION_TYPE",`${E.tag} used for ${m} collection, but expects ${E.collection??"scalar"}`,!0):c(o,"TAG_RESOLVE_FAILED",`Unresolved tag: ${h}`,!0),pf(u,l,i,c,h)}const p=pf(u,l,i,c,h,g),T=((_=g.resolve)==null?void 0:_.call(g,p,E=>c(o,"TAG_RESOLVE_FAILED",E),l.options))??p,v=ke(T)?T:new ce(T);return v.range=p.range,v.tag=h,g!=null&&g.format&&(v.format=g.format),v}function Rp(u,l,i){const s=l.offset,c=ob(l,u.options.strict,i);if(!c)return{value:"",type:null,comment:"",range:[s,s,s]};const o=c.mode===">"?ce.BLOCK_FOLDED:ce.BLOCK_LITERAL,h=l.source?hb(l.source):[];let m=h.length;for(let S=h.length-1;S>=0;--S){const w=h[S][1];if(w===""||w==="\r")m=S;else break}if(m===0){const S=c.chomp==="+"&&h.length>0?` +`.repeat(Math.max(1,h.length-1)):"";let w=s+c.length;return l.source&&(w+=l.source.length),{value:S,type:o,comment:c.comment,range:[s,w,w]}}let g=l.indent+c.indent,p=l.offset+c.length,T=0;for(let S=0;Sg&&(g=w.length);else{w.length=m;--S)h[S][0].length>g&&(m=S+1);let v="",_="",E=!1;for(let S=0;Sg||M[0]===" "?(_===" "?_=` +`:!E&&_===` +`&&(_=` + +`),v+=_+w.slice(g)+M,_=` +`,E=!0):M===""?_===` +`?v+=` +`:_=` +`:(v+=_+M,_=" ",E=!1)}switch(c.chomp){case"-":break;case"+":for(let S=m;Si(s+_,E,x);switch(c){case"scalar":m=ce.PLAIN,g=db(o,p);break;case"single-quoted-scalar":m=ce.QUOTE_SINGLE,g=mb(o,p);break;case"double-quoted-scalar":m=ce.QUOTE_DOUBLE,g=gb(o,p);break;default:return i(u,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${c}`),{value:"",type:null,comment:"",range:[s,s+o.length,s+o.length]}}const T=s+o.length,v=Bi(h,T,l,i);return{value:g,type:m,comment:v.comment,range:[s,T,v.offset]}}function db(u,l){let i="";switch(u[0]){case" ":i="a tab character";break;case",":i="flow indicator character ,";break;case"%":i="directive indicator character %";break;case"|":case">":{i=`block scalar indicator ${u[0]}`;break}case"@":case"`":{i=`reserved character ${u[0]}`;break}}return i&&l(0,"BAD_SCALAR_START",`Plain value cannot start with ${i}`),Bp(u)}function mb(u,l){return(u[u.length-1]!=="'"||u.length===1)&&l(u.length,"MISSING_CHAR","Missing closing 'quote"),Bp(u.slice(1,-1)).replace(/''/g,"'")}function Bp(u){let l,i;try{l=new RegExp(`(.*?)(?o?u.slice(o,s+1):c)}else i+=c}return(u[u.length-1]!=='"'||u.length===1)&&l(u.length,"MISSING_CHAR",'Missing closing "quote'),i}function pb(u,l){let i="",s=u[l+1];for(;(s===" "||s===" "||s===` +`||s==="\r")&&!(s==="\r"&&u[l+2]!==` +`);)s===` +`&&(i+=` +`),l+=1,s=u[l+1];return i||(i=" "),{fold:i,offset:l}}const yb={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:` +`,r:"\r",t:" ",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function vb(u,l,i,s){const c=u.substr(l,i),h=c.length===i&&/^[0-9a-fA-F]+$/.test(c)?parseInt(c,16):NaN;if(isNaN(h)){const m=u.substr(l-2,i+2);return s(l-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${m}`),m}return String.fromCodePoint(h)}function kp(u,l,i,s){const{value:c,type:o,comment:h,range:m}=l.type==="block-scalar"?Rp(u,l,s):jp(l,u.options.strict,s),g=i?u.directives.tagName(i.source,v=>s(i,"TAG_RESOLVE_FAILED",v)):null;let p;u.options.stringKeys&&u.atKey?p=u.schema[nn]:g?p=bb(u.schema,c,g,i,s):l.type==="scalar"?p=Sb(u,c,l,s):p=u.schema[nn];let T;try{const v=p.resolve(c,_=>s(i??l,"TAG_RESOLVE_FAILED",_),u.options);T=De(v)?v:new ce(v)}catch(v){const _=v instanceof Error?v.message:String(v);s(i??l,"TAG_RESOLVE_FAILED",_),T=new ce(c)}return T.range=m,T.source=c,o&&(T.type=o),g&&(T.tag=g),p.format&&(T.format=p.format),h&&(T.comment=h),T}function bb(u,l,i,s,c){var m;if(i==="!")return u[nn];const o=[];for(const g of u.tags)if(!g.collection&&g.tag===i)if(g.default&&g.test)o.push(g);else return g;for(const g of o)if((m=g.test)!=null&&m.test(l))return g;const h=u.knownTags[i];return h&&!h.collection?(u.tags.push(Object.assign({},h,{default:!1,test:void 0})),h):(c(s,"TAG_RESOLVE_FAILED",`Unresolved tag: ${i}`,i!=="tag:yaml.org,2002:str"),u[nn])}function Sb({atKey:u,directives:l,schema:i},s,c,o){const h=i.tags.find(m=>{var g;return(m.default===!0||u&&m.default==="key")&&((g=m.test)==null?void 0:g.test(s))})||i[nn];if(i.compat){const m=i.compat.find(g=>{var p;return g.default&&((p=g.test)==null?void 0:p.test(s))})??i[nn];if(h.tag!==m.tag){const g=l.tagString(h.tag),p=l.tagString(m.tag),T=`Value may be parsed as either ${g} or ${p}`;o(c,"TAG_RESOLVE_FAILED",T,!0)}}return h}function Tb(u,l,i){if(l){i??(i=l.length);for(let s=i-1;s>=0;--s){let c=l[s];switch(c.type){case"space":case"comment":case"newline":u-=c.source.length;continue}for(c=l[++s];(c==null?void 0:c.type)==="space";)u+=c.source.length,c=l[++s];break}}return u}const Eb={composeNode:qp,composeEmptyNode:Vf};function qp(u,l,i,s){const c=u.atKey,{spaceBefore:o,comment:h,anchor:m,tag:g}=i;let p,T=!0;switch(l.type){case"alias":p=Ab(u,l,s),(m||g)&&s(l,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":p=kp(u,l,g,s),m&&(p.anchor=m.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":try{p=fb(Eb,u,l,i,s),m&&(p.anchor=m.source.substring(1))}catch(v){const _=v instanceof Error?v.message:String(v);s(l,"RESOURCE_EXHAUSTION",_)}break;default:{const v=l.type==="error"?l.message:`Unsupported token (type: ${l.type})`;s(l,"UNEXPECTED_TOKEN",v),T=!1}}return p??(p=Vf(u,l.offset,void 0,null,i,s)),m&&p.anchor===""&&s(m,"BAD_ALIAS","Anchor cannot be an empty string"),c&&u.options.stringKeys&&(!De(p)||typeof p.value!="string"||p.tag&&p.tag!=="tag:yaml.org,2002:str")&&s(g??l,"NON_STRING_KEY","With stringKeys, all keys must be strings"),o&&(p.spaceBefore=!0),h&&(l.type==="scalar"&&l.source===""?p.comment=h:p.commentBefore=h),u.options.keepSourceTokens&&T&&(p.srcToken=l),p}function Vf(u,l,i,s,{spaceBefore:c,comment:o,anchor:h,tag:m,end:g},p){const T={type:"scalar",offset:Tb(l,i,s),indent:-1,source:""},v=kp(u,T,m,p);return h&&(v.anchor=h.source.substring(1),v.anchor===""&&p(h,"BAD_ALIAS","Anchor cannot be an empty string")),c&&(v.spaceBefore=!0),o&&(v.comment=o,v.range[2]=g),v}function Ab({options:u},{offset:l,source:i,end:s},c){const o=new _u(i.substring(1));o.source===""&&c(l,"BAD_ALIAS","Alias cannot be an empty string"),o.source.endsWith(":")&&c(l+i.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);const h=l+i.length,m=Bi(s,h,u.strict,c);return o.range=[l,h,m.offset],m.comment&&(o.comment=m.comment),o}function wb(u,l,{offset:i,start:s,value:c,end:o},h){const m=Object.assign({_directives:l},u),g=new xa(void 0,m),p={atKey:!1,atRoot:!0,directives:g.directives,options:g.options,schema:g.schema},T=Aa(s,{indicator:"doc-start",next:c??(o==null?void 0:o[0]),offset:i,onError:h,parentIndent:0,startOnNewline:!0});T.found&&(g.directives.docStart=!0,c&&(c.type==="block-map"||c.type==="block-seq")&&!T.hasNewline&&h(T.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),g.contents=c?qp(p,c,T,h):Vf(p,T.end,s,null,T,h);const v=g.contents.range[2],_=Bi(o,v,!1,h);return _.comment&&(g.comment=_.comment),g.range=[i,v,_.offset],g}function Mi(u){if(typeof u=="number")return[u,u+1];if(Array.isArray(u))return u.length===2?u:[u[0],u[1]];const{offset:l,source:i}=u;return[l,l+(typeof i=="string"?i.length:1)]}function Ag(u){var c;let l="",i=!1,s=!1;for(let o=0;o{const h=Mi(i);o?this.warnings.push(new Lp(h,s,c)):this.errors.push(new Al(h,s,c))},this.directives=new ot({version:l.version||"1.2"}),this.options=l}decorate(l,i){const{comment:s,afterEmptyLine:c}=Ag(this.prelude);if(s){const o=l.contents;if(i)l.comment=l.comment?`${l.comment} +${s}`:s;else if(c||l.directives.docStart||!o)l.commentBefore=s;else if(Be(o)&&!o.flow&&o.items.length>0){let h=o.items[0];je(h)&&(h=h.key);const m=h.commentBefore;h.commentBefore=m?`${s} +${m}`:s}else{const h=o.commentBefore;o.commentBefore=h?`${s} +${h}`:s}}i?(Array.prototype.push.apply(l.errors,this.errors),Array.prototype.push.apply(l.warnings,this.warnings)):(l.errors=this.errors,l.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:Ag(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(l,i=!1,s=-1){for(const c of l)yield*this.next(c);yield*this.end(i,s)}*next(l){switch(l.type){case"directive":this.directives.add(l.source,(i,s,c)=>{const o=Mi(l);o[0]+=i,this.onError(o,"BAD_DIRECTIVE",s,c)}),this.prelude.push(l.source),this.atDirectives=!0;break;case"document":{const i=wb(this.options,this.directives,l,this.onError);this.atDirectives&&!i.directives.docStart&&this.onError(l,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(i,!1),this.doc&&(yield this.doc),this.doc=i,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(l.source);break;case"error":{const i=l.source?`${l.message}: ${JSON.stringify(l.source)}`:l.message,s=new Al(Mi(l),"UNEXPECTED_TOKEN",i);this.atDirectives||!this.doc?this.errors.push(s):this.doc.errors.push(s);break}case"doc-end":{if(!this.doc){const s="Unexpected doc-end without preceding document";this.errors.push(new Al(Mi(l),"UNEXPECTED_TOKEN",s));break}this.doc.directives.docEnd=!0;const i=Bi(l.end,l.offset+l.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),i.comment){const s=this.doc.comment;this.doc.comment=s?`${s} +${i.comment}`:i.comment}this.doc.range[2]=i.offset;break}default:this.errors.push(new Al(Mi(l),"UNEXPECTED_TOKEN",`Unsupported token ${l.type}`))}}*end(l=!1,i=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(l){const s=Object.assign({_directives:this.directives},this.options),c=new xa(void 0,s);this.atDirectives&&this.onError(i,"MISSING_CHAR","Missing directives-end indicator line"),c.range=[0,i,i],this.decorate(c,!1),yield c}}}function Ob(u,l=!0,i){if(u){const s=(c,o,h)=>{const m=typeof c=="number"?c:Array.isArray(c)?c[0]:c.offset;if(i)i(m,o,h);else throw new Al([m,m+1],o,h)};switch(u.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return jp(u,l,s);case"block-scalar":return Rp({options:{strict:l}},u,s)}}return null}function _b(u,l){const{implicitKey:i=!1,indent:s,inFlow:c=!1,offset:o=-1,type:h="PLAIN"}=l,m=Ri({type:h,value:u},{implicitKey:i,indent:s>0?" ".repeat(s):"",inFlow:c,options:{blockQuote:!0,lineWidth:-1}}),g=l.end??[{type:"newline",offset:-1,indent:s,source:` +`}];switch(m[0]){case"|":case">":{const p=m.indexOf(` +`),T=m.substring(0,p),v=m.substring(p+1)+` +`,_=[{type:"block-scalar-header",offset:o,indent:s,source:T}];return Hp(_,g)||_.push({type:"newline",offset:-1,indent:s,source:` +`}),{type:"block-scalar",offset:o,indent:s,props:_,source:v}}case'"':return{type:"double-quoted-scalar",offset:o,indent:s,source:m,end:g};case"'":return{type:"single-quoted-scalar",offset:o,indent:s,source:m,end:g};default:return{type:"scalar",offset:o,indent:s,source:m,end:g}}}function Nb(u,l,i={}){let{afterKey:s=!1,implicitKey:c=!1,inFlow:o=!1,type:h}=i,m="indent"in u?u.indent:null;if(s&&typeof m=="number"&&(m+=2),!h)switch(u.type){case"single-quoted-scalar":h="QUOTE_SINGLE";break;case"double-quoted-scalar":h="QUOTE_DOUBLE";break;case"block-scalar":{const p=u.props[0];if(p.type!=="block-scalar-header")throw new Error("Invalid block scalar header");h=p.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:h="PLAIN"}const g=Ri({type:h,value:l},{implicitKey:c||m===null,indent:m!==null&&m>0?" ".repeat(m):"",inFlow:o,options:{blockQuote:!0,lineWidth:-1}});switch(g[0]){case"|":case">":Mb(u,g);break;case'"':yf(u,g,"double-quoted-scalar");break;case"'":yf(u,g,"single-quoted-scalar");break;default:yf(u,g,"scalar")}}function Mb(u,l){const i=l.indexOf(` +`),s=l.substring(0,i),c=l.substring(i+1)+` +`;if(u.type==="block-scalar"){const o=u.props[0];if(o.type!=="block-scalar-header")throw new Error("Invalid block scalar header");o.source=s,u.source=c}else{const{offset:o}=u,h="indent"in u?u.indent:-1,m=[{type:"block-scalar-header",offset:o,indent:h,source:s}];Hp(m,"end"in u?u.end:void 0)||m.push({type:"newline",offset:-1,indent:h,source:` +`});for(const g of Object.keys(u))g!=="type"&&g!=="offset"&&delete u[g];Object.assign(u,{type:"block-scalar",indent:h,props:m,source:c})}}function Hp(u,l){if(l)for(const i of l)switch(i.type){case"space":case"comment":u.push(i);break;case"newline":return u.push(i),!0}return!1}function yf(u,l,i){switch(u.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":u.type=i,u.source=l;break;case"block-scalar":{const s=u.props.slice(1);let c=l.length;u.props[0].type==="block-scalar-header"&&(c-=u.props[0].source.length);for(const o of s)o.offset+=c;delete u.props,Object.assign(u,{type:i,source:l,end:s});break}case"block-map":case"block-seq":{const c={type:"newline",offset:u.offset+l.length,indent:u.indent,source:` +`};delete u.items,Object.assign(u,{type:i,source:l,end:[c]});break}default:{const s="indent"in u?u.indent:-1,c="end"in u&&Array.isArray(u.end)?u.end.filter(o=>o.type==="space"||o.type==="comment"||o.type==="newline"):[];for(const o of Object.keys(u))o!=="type"&&o!=="offset"&&delete u[o];Object.assign(u,{type:i,indent:s,source:l,end:c})}}}const Cb=u=>"type"in u?Tu(u):gu(u);function Tu(u){switch(u.type){case"block-scalar":{let l="";for(const i of u.props)l+=Tu(i);return l+u.source}case"block-map":case"block-seq":{let l="";for(const i of u.items)l+=gu(i);return l}case"flow-collection":{let l=u.start.source;for(const i of u.items)l+=gu(i);for(const i of u.end)l+=i.source;return l}case"document":{let l=gu(u);if(u.end)for(const i of u.end)l+=i.source;return l}default:{let l=u.source;if("end"in u&&u.end)for(const i of u.end)l+=i.source;return l}}}function gu({start:u,key:l,sep:i,value:s}){let c="";for(const o of u)c+=o.source;if(l&&(c+=Tu(l)),i)for(const o of i)c+=o.source;return s&&(c+=Tu(s)),c}const zf=Symbol("break visit"),zb=Symbol("skip children"),Yp=Symbol("remove item");function Ol(u,l){"type"in u&&u.type==="document"&&(u={start:u.start,value:u.value}),$p(Object.freeze([]),u,l)}Ol.BREAK=zf;Ol.SKIP=zb;Ol.REMOVE=Yp;Ol.itemAtPath=(u,l)=>{let i=u;for(const[s,c]of l){const o=i==null?void 0:i[s];if(o&&"items"in o)i=o.items[c];else return}return i};Ol.parentCollection=(u,l)=>{const i=Ol.itemAtPath(u,l.slice(0,-1)),s=l[l.length-1][0],c=i==null?void 0:i[s];if(c&&"items"in c)return c;throw new Error("Parent collection not found")};function $p(u,l,i){let s=i(l,u);if(typeof s=="symbol")return s;for(const c of["key","value"]){const o=l[c];if(o&&"items"in o){for(let h=0;h!!u&&"items"in u,Db=u=>!!u&&(u.type==="scalar"||u.type==="single-quoted-scalar"||u.type==="double-quoted-scalar"||u.type==="block-scalar");function Lb(u){switch(u){case ju:return"";case Bu:return"";case ku:return"";case Li:return"";default:return JSON.stringify(u)}}function Gp(u){switch(u){case ju:return"byte-order-mark";case Bu:return"doc-mode";case ku:return"flow-error-end";case Li:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case` +`:case`\r +`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(u[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}const Ub=Object.freeze(Object.defineProperty({__proto__:null,BOM:ju,DOCUMENT:Bu,FLOW_END:ku,SCALAR:Li,createScalarToken:_b,isCollection:xb,isScalar:Db,prettyToken:Lb,resolveAsScalar:Ob,setScalarValue:Nb,stringify:Cb,tokenType:Gp,visit:Ol},Symbol.toStringTag,{value:"Module"}));function Jt(u){switch(u){case void 0:case" ":case` +`:case"\r":case" ":return!0;default:return!1}}const wg=new Set("0123456789ABCDEFabcdef"),Rb=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),iu=new Set(",[]{}"),jb=new Set(` ,[]{} +\r `),vf=u=>!u||jb.has(u);class Kp{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(l,i=!1){if(l){if(typeof l!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+l:l,this.lineEndPos=null}this.atEnd=!i;let s=this.next??"stream";for(;s&&(i||this.hasChars(1));)s=yield*this.parseNext(s)}atLineEnd(){let l=this.pos,i=this.buffer[l];for(;i===" "||i===" ";)i=this.buffer[++l];return!i||i==="#"||i===` +`?!0:i==="\r"?this.buffer[l+1]===` +`:!1}charAt(l){return this.buffer[this.pos+l]}continueScalar(l){let i=this.buffer[l];if(this.indentNext>0){let s=0;for(;i===" ";)i=this.buffer[++s+l];if(i==="\r"){const c=this.buffer[s+l+1];if(c===` +`||!c&&!this.atEnd)return l+s+1}return i===` +`||s>=this.indentNext||!i&&!this.atEnd?l+s:-1}if(i==="-"||i==="."){const s=this.buffer.substr(l,3);if((s==="---"||s==="...")&&Jt(this.buffer[l+3]))return-1}return l}getLine(){let l=this.lineEndPos;return(typeof l!="number"||l!==-1&&lthis.indentValue&&!Jt(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){const[l,i]=this.peek(2);if(!i&&!this.atEnd)return this.setNext("block-start");if((l==="-"||l==="?"||l===":")&&Jt(i)){const s=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=s,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);const l=this.getLine();if(l===null)return this.setNext("doc");let i=yield*this.pushIndicators();switch(l[i]){case"#":yield*this.pushCount(l.length-i);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(vf),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return i+=yield*this.parseBlockScalarHeader(),i+=yield*this.pushSpaces(!0),yield*this.pushCount(l.length-i),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let l,i,s=-1;do l=yield*this.pushNewline(),l>0?(i=yield*this.pushSpaces(!1),this.indentValue=s=i):i=0,i+=yield*this.pushSpaces(!0);while(l+i>0);const c=this.getLine();if(c===null)return this.setNext("flow");if((s!==-1&&s"0"&&i<="9")this.blockScalarIndent=Number(i)-1;else if(i!=="-")break}return yield*this.pushUntil(i=>Jt(i)||i==="#")}*parseBlockScalar(){let l=this.pos-1,i=0,s;e:for(let o=this.pos;s=this.buffer[o];++o)switch(s){case" ":i+=1;break;case` +`:l=o,i=0;break;case"\r":{const h=this.buffer[o+1];if(!h&&!this.atEnd)return this.setNext("block-scalar");if(h===` +`)break}default:break e}if(!s&&!this.atEnd)return this.setNext("block-scalar");if(i>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=i:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{const o=this.continueScalar(l+1);if(o===-1)break;l=this.buffer.indexOf(` +`,o)}while(l!==-1);if(l===-1){if(!this.atEnd)return this.setNext("block-scalar");l=this.buffer.length}}let c=l+1;for(s=this.buffer[c];s===" ";)s=this.buffer[++c];if(s===" "){for(;s===" "||s===" "||s==="\r"||s===` +`;)s=this.buffer[++c];l=c-1}else if(!this.blockScalarKeep)do{let o=l-1,h=this.buffer[o];h==="\r"&&(h=this.buffer[--o]);const m=o;for(;h===" ";)h=this.buffer[--o];if(h===` +`&&o>=this.pos&&o+1+i>m)l=o;else break}while(!0);return yield Li,yield*this.pushToIndex(l+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){const l=this.flowLevel>0;let i=this.pos-1,s=this.pos-1,c;for(;c=this.buffer[++s];)if(c===":"){const o=this.buffer[s+1];if(Jt(o)||l&&iu.has(o))break;i=s}else if(Jt(c)){let o=this.buffer[s+1];if(c==="\r"&&(o===` +`?(s+=1,c=` +`,o=this.buffer[s+1]):i=s),o==="#"||l&&iu.has(o))break;if(c===` +`){const h=this.continueScalar(s+1);if(h===-1)break;s=Math.max(s,h-2)}}else{if(l&&iu.has(c))break;i=s}return!c&&!this.atEnd?this.setNext("plain-scalar"):(yield Li,yield*this.pushToIndex(i+1,!0),l?"flow":"doc")}*pushCount(l){return l>0?(yield this.buffer.substr(this.pos,l),this.pos+=l,l):0}*pushToIndex(l,i){const s=this.buffer.slice(this.pos,l);return s?(yield s,this.pos+=s.length,s.length):(i&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(vf))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{const l=this.flowLevel>0,i=this.charAt(1);if(Jt(i)||l&&iu.has(i))return l?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}return 0}*pushTag(){if(this.charAt(1)==="<"){let l=this.pos+2,i=this.buffer[l];for(;!Jt(i)&&i!==">";)i=this.buffer[++l];return yield*this.pushToIndex(i===">"?l+1:l,!1)}else{let l=this.pos+1,i=this.buffer[l];for(;i;)if(Rb.has(i))i=this.buffer[++l];else if(i==="%"&&wg.has(this.buffer[l+1])&&wg.has(this.buffer[l+2]))i=this.buffer[l+=3];else break;return yield*this.pushToIndex(l,!1)}}*pushNewline(){const l=this.buffer[this.pos];return l===` +`?yield*this.pushCount(1):l==="\r"&&this.charAt(1)===` +`?yield*this.pushCount(2):0}*pushSpaces(l){let i=this.pos-1,s;do s=this.buffer[++i];while(s===" "||l&&s===" ");const c=i-this.pos;return c>0&&(yield this.buffer.substr(this.pos,c),this.pos=i),c}*pushUntil(l){let i=this.pos,s=this.buffer[i];for(;!l(s);)s=this.buffer[++i];return yield*this.pushToIndex(i,!1)}}class Vp{constructor(){this.lineStarts=[],this.addNewLine=l=>this.lineStarts.push(l),this.linePos=l=>{let i=0,s=this.lineStarts.length;for(;i>1;this.lineStarts[o]=0;)switch(u[l].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;((i=u[++l])==null?void 0:i.type)==="space";);return u.splice(l,u.length)}function _g(u){if(u.start.type==="flow-seq-start")for(const l of u.items)l.sep&&!l.value&&!Fn(l.start,"explicit-key-ind")&&!Fn(l.sep,"map-value-ind")&&(l.key&&(l.value=l.key),delete l.key,Qp(l.value)?l.value.end?Array.prototype.push.apply(l.value.end,l.sep):l.value.end=l.sep:Array.prototype.push.apply(l.start,l.sep),delete l.sep)}class Xf{constructor(l){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new Kp,this.onNewLine=l}*parse(l,i=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(const s of this.lexer.lex(l,i))yield*this.next(s);i||(yield*this.end())}*next(l){if(this.source=l,this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=l.length;return}const i=Gp(l);if(i)if(i==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=i,yield*this.step(),i){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+l.length);break;case"space":this.atNewLine&&l[0]===" "&&(this.indent+=l.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=l.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=l.length}else{const s=`Not a YAML token: ${l}`;yield*this.pop({type:"error",offset:this.offset,message:s,source:l}),this.offset+=l.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){const l=this.peek(1);if(this.type==="doc-end"&&(l==null?void 0:l.type)!=="doc-end"){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!l)return yield*this.stream();switch(l.type){case"document":return yield*this.document(l);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(l);case"block-scalar":return yield*this.blockScalar(l);case"block-map":return yield*this.blockMap(l);case"block-seq":return yield*this.blockSequence(l);case"flow-collection":return yield*this.flowCollection(l);case"doc-end":return yield*this.documentEnd(l)}yield*this.pop()}peek(l){return this.stack[this.stack.length-l]}*pop(l){const i=l??this.stack.pop();if(!i)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield i;else{const s=this.peek(1);switch(i.type==="block-scalar"?i.indent="indent"in s?s.indent:0:i.type==="flow-collection"&&s.type==="document"&&(i.indent=0),i.type==="flow-collection"&&_g(i),s.type){case"document":s.value=i;break;case"block-scalar":s.props.push(i);break;case"block-map":{const c=s.items[s.items.length-1];if(c.value){s.items.push({start:[],key:i,sep:[]}),this.onKeyLine=!0;return}else if(c.sep)c.value=i;else{Object.assign(c,{key:i,sep:[]}),this.onKeyLine=!c.explicitKey;return}break}case"block-seq":{const c=s.items[s.items.length-1];c.value?s.items.push({start:[],value:i}):c.value=i;break}case"flow-collection":{const c=s.items[s.items.length-1];!c||c.value?s.items.push({start:[],key:i,sep:[]}):c.sep?c.value=i:Object.assign(c,{key:i,sep:[]});return}default:yield*this.pop(),yield*this.pop(i)}if((s.type==="document"||s.type==="block-map"||s.type==="block-seq")&&(i.type==="block-map"||i.type==="block-seq")){const c=i.items[i.items.length-1];c&&!c.sep&&!c.value&&c.start.length>0&&Og(c.start)===-1&&(i.indent===0||c.start.every(o=>o.type!=="comment"||o.indent=l.indent){const c=!this.onKeyLine&&this.indent===l.indent,o=c&&(i.sep||i.explicitKey)&&this.type!=="seq-item-ind";let h=[];if(o&&i.sep&&!i.value){const m=[];for(let g=0;gl.indent&&(m.length=0);break;default:m.length=0}}m.length>=2&&(h=i.sep.splice(m[1]))}switch(this.type){case"anchor":case"tag":o||i.value?(h.push(this.sourceToken),l.items.push({start:h}),this.onKeyLine=!0):i.sep?i.sep.push(this.sourceToken):i.start.push(this.sourceToken);return;case"explicit-key-ind":!i.sep&&!i.explicitKey?(i.start.push(this.sourceToken),i.explicitKey=!0):o||i.value?(h.push(this.sourceToken),l.items.push({start:h,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(i.explicitKey)if(i.sep)if(i.value)l.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Fn(i.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:h,key:null,sep:[this.sourceToken]}]});else if(Qp(i.key)&&!Fn(i.sep,"newline")){const m=da(i.start),g=i.key,p=i.sep;p.push(this.sourceToken),delete i.key,delete i.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:m,key:g,sep:p}]})}else h.length>0?i.sep=i.sep.concat(h,this.sourceToken):i.sep.push(this.sourceToken);else if(Fn(i.start,"newline"))Object.assign(i,{key:null,sep:[this.sourceToken]});else{const m=da(i.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:m,key:null,sep:[this.sourceToken]}]})}else i.sep?i.value||o?l.items.push({start:h,key:null,sep:[this.sourceToken]}):Fn(i.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):i.sep.push(this.sourceToken):Object.assign(i,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const m=this.flowScalar(this.type);o||i.value?(l.items.push({start:h,key:m,sep:[]}),this.onKeyLine=!0):i.sep?this.stack.push(m):(Object.assign(i,{key:m,sep:[]}),this.onKeyLine=!0);return}default:{const m=this.startBlockValue(l);if(m){if(m.type==="block-seq"){if(!i.explicitKey&&i.sep&&!Fn(i.sep,"newline")){yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source});return}}else c&&l.items.push({start:h});this.stack.push(m);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(l){var s;const i=l.items[l.items.length-1];switch(this.type){case"newline":if(i.value){const c="end"in i.value?i.value.end:void 0,o=Array.isArray(c)?c[c.length-1]:void 0;(o==null?void 0:o.type)==="comment"?c==null||c.push(this.sourceToken):l.items.push({start:[this.sourceToken]})}else i.start.push(this.sourceToken);return;case"space":case"comment":if(i.value)l.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(i.start,l.indent)){const c=l.items[l.items.length-2],o=(s=c==null?void 0:c.value)==null?void 0:s.end;if(Array.isArray(o)){Array.prototype.push.apply(o,i.start),o.push(this.sourceToken),l.items.pop();return}}i.start.push(this.sourceToken)}return;case"anchor":case"tag":if(i.value||this.indent<=l.indent)break;i.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==l.indent)break;i.value||Fn(i.start,"seq-item-ind")?l.items.push({start:[this.sourceToken]}):i.start.push(this.sourceToken);return}if(this.indent>l.indent){const c=this.startBlockValue(l);if(c){this.stack.push(c);return}}yield*this.pop(),yield*this.step()}*flowCollection(l){const i=l.items[l.items.length-1];if(this.type==="flow-error-end"){let s;do yield*this.pop(),s=this.peek(1);while((s==null?void 0:s.type)==="flow-collection")}else if(l.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!i||i.sep?l.items.push({start:[this.sourceToken]}):i.start.push(this.sourceToken);return;case"map-value-ind":!i||i.value?l.items.push({start:[],key:null,sep:[this.sourceToken]}):i.sep?i.sep.push(this.sourceToken):Object.assign(i,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!i||i.value?l.items.push({start:[this.sourceToken]}):i.sep?i.sep.push(this.sourceToken):i.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const c=this.flowScalar(this.type);!i||i.value?l.items.push({start:[],key:c,sep:[]}):i.sep?this.stack.push(c):Object.assign(i,{key:c,sep:[]});return}case"flow-map-end":case"flow-seq-end":l.end.push(this.sourceToken);return}const s=this.startBlockValue(l);s?this.stack.push(s):(yield*this.pop(),yield*this.step())}else{const s=this.peek(2);if(s.type==="block-map"&&(this.type==="map-value-ind"&&s.indent===l.indent||this.type==="newline"&&!s.items[s.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&s.type!=="flow-collection"){const c=su(s),o=da(c);_g(l);const h=l.end.splice(1,l.end.length);h.push(this.sourceToken);const m={type:"block-map",offset:l.offset,indent:l.indent,items:[{start:o,key:l,sep:h}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=m}else yield*this.lineEnd(l)}}flowScalar(l){if(this.onNewLine){let i=this.source.indexOf(` +`)+1;for(;i!==0;)this.onNewLine(this.offset+i),i=this.source.indexOf(` +`,i)+1}return{type:l,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(l){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;const i=su(l),s=da(i);return s.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;const i=su(l),s=da(i);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(l,i){return this.type!=="comment"||this.indent<=i?!1:l.every(s=>s.type==="newline"||s.type==="space")}*documentEnd(l){this.type!=="doc-mode"&&(l.end?l.end.push(this.sourceToken):l.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(l){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:l.end?l.end.push(this.sourceToken):l.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}}function Xp(u){const l=u.prettyErrors!==!1;return{lineCounter:u.lineCounter||l&&new Vp||null,prettyErrors:l}}function Bb(u,l={}){const{lineCounter:i,prettyErrors:s}=Xp(l),c=new Xf(i==null?void 0:i.addNewLine),o=new Qf(l),h=Array.from(o.compose(c.parse(u)));if(s&&i)for(const m of h)m.errors.forEach(Su(u,i)),m.warnings.forEach(Su(u,i));return h.length>0?h:Object.assign([],{empty:!0},o.streamInfo())}function Zp(u,l={}){const{lineCounter:i,prettyErrors:s}=Xp(l),c=new Xf(i==null?void 0:i.addNewLine),o=new Qf(l);let h=null;for(const m of o.compose(c.parse(u),!0,u.length))if(!h)h=m;else if(h.options.logLevel!=="silent"){h.errors.push(new Al(m.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return s&&i&&(h.errors.forEach(Su(u,i)),h.warnings.forEach(Su(u,i))),h}function kb(u,l,i){let s;typeof l=="function"?s=l:i===void 0&&l&&typeof l=="object"&&(i=l);const c=Zp(u,i);if(!c)return null;if(c.warnings.forEach(o=>mp(c.options.logLevel,o)),c.errors.length>0){if(c.options.logLevel!=="silent")throw c.errors[0];c.errors=[]}return c.toJS(Object.assign({reviver:s},i))}function qb(u,l,i){let s=null;if(typeof l=="function"||Array.isArray(l)?s=l:i===void 0&&l&&(i=l),typeof i=="string"&&(i=i.length),typeof i=="number"){const c=Math.round(i);i=c<1?void 0:c>8?{indent:8}:{indent:c}}if(u===void 0){const{keepUndefined:c}=i??l??{};if(!c)return}return _l(u)&&!s?u.toString(i):new xa(u,s,i).toString(i)}const Hb=Object.freeze(Object.defineProperty({__proto__:null,Alias:_u,CST:Ub,Composer:Qf,Document:xa,Lexer:Kp,LineCounter:Vp,Pair:ct,Parser:Xf,Scalar:ce,Schema:Ru,YAMLError:Kf,YAMLMap:Lt,YAMLParseError:Al,YAMLSeq:Pn,YAMLWarning:Lp,isAlias:el,isCollection:Be,isDocument:_l,isMap:Na,isNode:ke,isPair:je,isScalar:De,isSeq:Ma,parse:kb,parseAllDocuments:Bb,parseDocument:Zp,stringify:qb,visit:Nl,visitAsync:Ou},Symbol.toStringTag,{value:"Module"}));function Yb(u,l,i={}){var _;const s=new u.LineCounter,c={keepSourceTokens:!0,lineCounter:s,...i},o=u.parseDocument(l,c),h=[],m=E=>[s.linePos(E[0]),s.linePos(E[1])],g=E=>{h.push({message:E.message,range:[s.linePos(E.pos[0]),s.linePos(E.pos[1])]})},p=(E,x)=>{for(const S of x.items){if(S instanceof u.Scalar&&typeof S.value=="string"){const R=Eu.parse(S,c,h);R&&(E.children=E.children||[],E.children.push(R));continue}if(S instanceof u.YAMLMap){T(E,S);continue}h.push({message:"Sequence items should be strings or maps",range:m(S.range||x.range)})}},T=(E,x)=>{for(const S of x.items){if(E.children=E.children||[],!(S.key instanceof u.Scalar&&typeof S.key.value=="string")){h.push({message:"Only string keys are supported",range:m(S.key.range||x.range)});continue}const M=S.key,R=S.value;if(M.value==="text"){if(!(R instanceof u.Scalar&&typeof R.value=="string")){h.push({message:"Text value should be a string",range:m(S.value.range||x.range)});continue}E.children.push({kind:"text",text:bf(R.value)});continue}if(M.value==="/children"){if(!(R instanceof u.Scalar&&typeof R.value=="string")||R.value!=="contain"&&R.value!=="equal"&&R.value!=="deep-equal"){h.push({message:'Strict value should be "contain", "equal" or "deep-equal"',range:m(S.value.range||x.range)});continue}E.containerMode=R.value;continue}if(M.value.startsWith("/")){if(!(R instanceof u.Scalar&&typeof R.value=="string")){h.push({message:"Property value should be a string",range:m(S.value.range||x.range)});continue}E.props=E.props??{},E.props[M.value.slice(1)]=bf(R.value);continue}const G=Eu.parse(M,c,h);if(!G)continue;if(R instanceof u.Scalar){const W=typeof R.value;if(W!=="string"&&W!=="number"&&W!=="boolean"){h.push({message:"Node value should be a string or a sequence",range:m(S.value.range||x.range)});continue}E.children.push({...G,children:[{kind:"text",text:bf(String(R.value))}]});continue}if(R instanceof u.YAMLSeq){E.children.push(G),p(G,R);continue}h.push({message:"Map values should be strings or sequences",range:m(S.value.range||x.range)})}},v={kind:"role",role:"fragment"};return o.errors.forEach(g),h.length?{errors:h,fragment:v}:(o.contents instanceof u.YAMLSeq||h.push({message:'Aria snapshot must be a YAML sequence, elements starting with " -"',range:o.contents?m(o.contents.range):[{line:0,col:0},{line:0,col:0}]}),h.length?{errors:h,fragment:v}:(p(v,o.contents),h.length?{errors:h,fragment:$b}:((_=v.children)==null?void 0:_.length)===1&&(!v.containerMode||v.containerMode==="contain")?{fragment:v.children[0],errors:[]}:{fragment:v,errors:[]}))}const $b={kind:"role",role:"fragment"};function Jp(u){return u.replace(/[\u200b\u00ad]/g,"").replace(/[\r\n\s\t]+/g," ").trim()}function bf(u){return{raw:u,normalized:Jp(u)}}class Eu{static parse(l,i,s){try{return new Eu(l.value)._parse()}catch(c){if(c instanceof Ng){const o=i.prettyErrors===!1?c.message:c.message+`: + +`+l.value+` +`+" ".repeat(c.pos)+`^ +`;return s.push({message:o,range:[i.lineCounter.linePos(l.range[0]),i.lineCounter.linePos(l.range[0]+c.pos)]}),null}throw c}}constructor(l){this._input=l,this._pos=0,this._length=l.length}_peek(){return this._input[this._pos]||""}_next(){return this._pos=this._length}_isWhitespace(){return!this._eof()&&/\s/.test(this._peek())}_skipWhitespace(){for(;this._isWhitespace();)this._pos++}_readIdentifier(l){this._eof()&&this._throwError(`Unexpected end of input when expecting ${l}`);const i=this._pos;for(;!this._eof()&&/[a-zA-Z]/.test(this._peek());)this._pos++;return this._input.slice(i,this._pos)}_readString(){let l="",i=!1;for(;!this._eof();){const s=this._next();if(i)l+=s,i=!1;else if(s==="\\")i=!0;else{if(s==='"')return l;l+=s}}this._throwError("Unterminated string")}_throwError(l,i=0){throw new Ng(l,i||this._pos)}_readRegex(){let l="",i=!1,s=!1;for(;!this._eof();){const c=this._next();if(i)l+=c,i=!1;else if(c==="\\")i=!0,l+=c;else{if(c==="/"&&!s)return{pattern:l};c==="["?(s=!0,l+=c):c==="]"&&s?(l+=c,s=!1):l+=c}}this._throwError("Unterminated regex")}_readStringOrRegex(){const l=this._peek();return l==='"'?(this._next(),Jp(this._readString())):l==="/"?(this._next(),this._readRegex()):null}_readAttributes(l){let i=this._pos;for(;this._skipWhitespace(),this._peek()==="[";){this._next(),this._skipWhitespace(),i=this._pos;const s=this._readIdentifier("attribute");this._skipWhitespace();let c="";if(this._peek()==="=")for(this._next(),this._skipWhitespace(),i=this._pos;this._peek()!=="]"&&!this._isWhitespace()&&!this._eof();)c+=this._next();this._skipWhitespace(),this._peek()!=="]"&&this._throwError("Expected ]"),this._next(),this._applyAttribute(l,s,c||"true",i)}}_parse(){this._skipWhitespace();const l=this._readIdentifier("role");this._skipWhitespace();const i=this._readStringOrRegex()||"",s={kind:"role",role:l,name:i};return this._readAttributes(s),this._skipWhitespace(),this._eof()||this._throwError("Unexpected input"),s}_applyAttribute(l,i,s,c){if(i==="checked"){this._assert(s==="true"||s==="false"||s==="mixed",'Value of "checked" attribute must be a boolean or "mixed"',c),l.checked=s==="true"?!0:s==="false"?!1:"mixed";return}if(i==="disabled"){this._assert(s==="true"||s==="false",'Value of "disabled" attribute must be a boolean',c),l.disabled=s==="true";return}if(i==="expanded"){this._assert(s==="true"||s==="false",'Value of "expanded" attribute must be a boolean',c),l.expanded=s==="true";return}if(i==="active"){this._assert(s==="true"||s==="false",'Value of "active" attribute must be a boolean',c),l.active=s==="true";return}if(i==="level"){this._assert(!isNaN(Number(s)),'Value of "level" attribute must be a number',c),l.level=Number(s);return}if(i==="pressed"){this._assert(s==="true"||s==="false"||s==="mixed",'Value of "pressed" attribute must be a boolean or "mixed"',c),l.pressed=s==="true"?!0:s==="false"?!1:"mixed";return}if(i==="selected"){this._assert(s==="true"||s==="false",'Value of "selected" attribute must be a boolean',c),l.selected=s==="true";return}this._assert(!1,`Unsupported attribute [${i}]`,c)}_assert(l,i,s){l||this._throwError(i||"Assertion error",s)}}class Ng extends Error{constructor(l,i){super(l),this.pos=i}}const Gb=({className:u,style:l,open:i,isModal:s,minWidth:c,verticalOffset:o,requestClose:h,anchor:m,dataTestId:g,children:p})=>{const T=he.useRef(null),[v,_]=he.useState(0),[E]=Sf(T),[x,S]=Sf(m),w=m?Kb(E,x,o):void 0;return he.useEffect(()=>{const M=G=>{!T.current||!(G.target instanceof Node)||T.current.contains(G.target)||h==null||h()},R=G=>{G.key==="Escape"&&(h==null||h())};return i?(document.addEventListener("mousedown",M),document.addEventListener("keydown",R),()=>{document.removeEventListener("mousedown",M),document.removeEventListener("keydown",R)}):()=>{}},[i,h]),he.useLayoutEffect(()=>S(),[i,S]),he.useEffect(()=>{const M=()=>_(R=>R+1);return window.addEventListener("resize",M),()=>{window.removeEventListener("resize",M)}},[]),he.useLayoutEffect(()=>{T.current&&(i?s?T.current.showModal():T.current.show():T.current.close())},[i,s]),X.jsx("dialog",{ref:T,style:{position:"fixed",margin:w?0:void 0,zIndex:110,top:w==null?void 0:w.top,left:w==null?void 0:w.left,minWidth:c||0,...l},className:u,"data-testid":g,children:p})};function Kb(u,l,i=4,s=4){let c=Math.max(s,l.left);c+u.width>window.innerWidth-s&&(c=window.innerWidth-u.width-s);let o=Math.max(0,l.bottom)+i;return o+u.height>window.innerHeight-i&&(Math.max(0,l.top)>u.height+i?o=Math.max(0,l.top)-u.height-i:o=window.innerHeight-i-u.height),{left:c,top:o}}const Vb=({})=>{const[u,l]=he.useState([]),[i,s]=he.useState(!1),[c,o]=he.useState(new Map),[h,m]=he.useState("none"),[g,p]=he.useState(),[T,v]=pu("recorderPropertiesTab","log"),[_,E]=he.useState(),[x,S]=he.useState(),[w,M]=he.useState(!1),[R,G]=z1(),[Q,Z]=pu("autoExpect",!1),W=he.useRef(null),k=he.useMemo(Qb,[]),[V,U]=he.useState(""),ie=he.useRef(null),te=he.useMemo(()=>u.find(D=>D.id===g)??ev(),[u,g]);he.useLayoutEffect(()=>{const se={modeChanged:({mode:D})=>m(D),sourcesUpdated:({sources:D})=>{l(D),window.playwrightSourcesEchoForTest=D},pageNavigated:({url:D})=>{document.title=D?`Playwright Inspector - ${D}`:"Playwright Inspector"},pauseStateChanged:({paused:D})=>s(D),callLogsUpdated:({callLogs:D})=>{o(K=>{const ne=new Map(K);for(const de of D)de.reveal=!K.has(de.id),ne.set(de.id,de);return ne})},sourceRevealRequested:({sourceId:D})=>p(D),elementPicked:({elementInfo:D,userGesture:K})=>{const ne=te.language;U(ep(ne,D.selector)),E(D.ariaSnapshot),S([]),K&&T!=="locator"&&T!=="aria"&&v("locator"),h==="inspecting"&&T==="aria"||k.setMode({mode:h==="inspecting"?"standby":"recording"}).catch(()=>{})}};window.dispatch=D=>{se[D.method].call(se,D.params)}},[k,h,T,v,te]),he.useEffect(()=>{k.setAutoExpect({autoExpect:Q})},[Q,k]),he.useLayoutEffect(()=>{var se;(se=ie.current)==null||se.scrollIntoView({block:"center",inline:"nearest"})},[ie]),he.useLayoutEffect(()=>{const se=D=>{switch(D.key){case"F8":D.preventDefault(),i?k.resume():k.pause();break;case"F10":D.preventDefault(),i&&k.step();break}};return document.addEventListener("keydown",se),()=>document.removeEventListener("keydown",se)},[i,k]);const $=he.useCallback(se=>{(h==="none"||h==="inspecting")&&k.setMode({mode:"standby"}),U(se),k.highlightRequested({selector:se})},[h,k]),ee=he.useCallback(se=>{(h==="none"||h==="inspecting")&&k.setMode({mode:"standby"});const{fragment:D,errors:K}=Yb(Hb,se,{prettyErrors:!1}),ne=K.map(de=>({message:de.message,line:de.range[1].line,column:de.range[1].col,type:"subtle-error"}));S(ne),E(se),K.length||k.highlightRequested({ariaTemplate:D})},[h,k]),Ae=h==="recording"||h==="recording-inspecting"||h==="assertingText"||h==="assertingVisibility";return X.jsxs("div",{className:"recorder",children:[X.jsxs(xg,{children:[X.jsx(Dt,{icon:Ae?"stop-circle":"circle-large-filled",title:Ae?"Stop Recording":"Start Recording",toggled:Ae,onClick:()=>{k.setMode({mode:h==="none"||h==="standby"||h==="inspecting"?"recording":"standby"})},children:"Record"}),X.jsx(hg,{}),X.jsx(Dt,{icon:"inspect",title:"Pick locator",toggled:h==="inspecting"||h==="recording-inspecting",onClick:()=>{const se={inspecting:"standby",none:"inspecting",standby:"inspecting",recording:"recording-inspecting","recording-inspecting":"recording",assertingText:"recording-inspecting",assertingVisibility:"recording-inspecting",assertingValue:"recording-inspecting",assertingSnapshot:"recording-inspecting"}[h];k.setMode({mode:se}).catch(()=>{})}}),X.jsx(Dt,{icon:"eye",title:"Assert visibility",toggled:h==="assertingVisibility",disabled:h==="none"||h==="standby"||h==="inspecting",onClick:()=>{k.setMode({mode:h==="assertingVisibility"?"recording":"assertingVisibility"})}}),X.jsx(Dt,{icon:"whole-word",title:"Assert text",toggled:h==="assertingText",disabled:h==="none"||h==="standby"||h==="inspecting",onClick:()=>{k.setMode({mode:h==="assertingText"?"recording":"assertingText"})}}),X.jsx(Dt,{icon:"symbol-constant",title:"Assert value",toggled:h==="assertingValue",disabled:h==="none"||h==="standby"||h==="inspecting",onClick:()=>{k.setMode({mode:h==="assertingValue"?"recording":"assertingValue"})}}),X.jsx(Dt,{icon:"gist",title:"Assert snapshot",toggled:h==="assertingSnapshot",disabled:h==="none"||h==="standby"||h==="inspecting",onClick:()=>{k.setMode({mode:h==="assertingSnapshot"?"recording":"assertingSnapshot"})}}),X.jsx(hg,{}),X.jsx(Dt,{icon:"files",title:"Copy",disabled:!te||!te.text,onClick:()=>{eg(te.text)}}),X.jsx(Dt,{icon:"debug-continue",title:"Resume (F8)",ariaLabel:"Resume",disabled:!i,onClick:()=>{k.resume()}}),X.jsx(Dt,{icon:"debug-pause",title:"Pause (F8)",ariaLabel:"Pause",disabled:i,onClick:()=>{k.pause()}}),X.jsx(Dt,{icon:"debug-step-over",title:"Step over (F10)",ariaLabel:"Step over",disabled:!i,onClick:()=>{k.step()}}),X.jsx("div",{style:{flex:"auto"}}),X.jsx("div",{children:"Target:"}),X.jsx(I1,{fileId:te.id,sources:u,setFileId:se=>{p(se),k.fileChanged({fileId:se})}}),X.jsx(Dt,{icon:"clear-all",title:"Clear",disabled:!te||!te.text,onClick:()=>{k.clear()}}),X.jsx(Dt,{ref:W,icon:"settings-gear",title:"Settings",onClick:()=>M(se=>!se)}),X.jsxs(Gb,{style:{padding:"4px 8px"},open:w,verticalOffset:8,requestClose:()=>M(!1),anchor:W,dataTestId:"settings-dialog",children:[X.jsxs("div",{className:"setting setting-theme",children:[X.jsx("label",{htmlFor:"dark-mode-setting",children:"Theme:"}),X.jsx("select",{id:"dark-mode-setting",value:R,onChange:se=>G(se.target.value),children:_1.map(se=>X.jsx("option",{value:se.value,children:se.label},se.value))})]},"dark-mode-setting"),X.jsxs("div",{className:"setting",title:"Automatically generate assertions while recording",children:[X.jsx("input",{type:"checkbox",id:"auto-expect-setting",checked:Q,onChange:()=>{k.setAutoExpect({autoExpect:!Q}),Z(!Q)}}),X.jsx("label",{htmlFor:"auto-expect-setting",children:"Generate assertions"})]},"auto-expect-setting")]})]}),X.jsx(J1,{sidebarSize:200,main:X.jsx(ff,{text:te.text,highlighter:te.language,highlight:te.highlight,revealLine:te.revealLine,readOnly:!0,lineNumbers:!0}),sidebar:X.jsx(W1,{rightToolbar:T==="locator"||T==="aria"?[X.jsx(Dt,{icon:"files",title:"Copy",onClick:()=>eg((T==="locator"?V:_)||"")},1)]:[],tabs:[{id:"locator",title:"Locator",render:()=>X.jsx(ff,{text:V,placeholder:"Type locator to inspect",highlighter:te.language,focusOnChange:!0,onChange:$,wrapLines:!0})},{id:"log",title:"Log",render:()=>X.jsx(zv,{language:te.language,log:Array.from(c.values())})},{id:"aria",title:"Aria",render:()=>X.jsx(ff,{text:_||"",placeholder:"Type aria template to match",highlighter:"yaml",onChange:ee,highlight:x,wrapLines:!0})}],selectedTab:T,setSelectedTab:v})})]})};function Qb(){return new Proxy({},{get:(u,l)=>{if(typeof l=="string")return i=>window.sendCommand({method:l,params:i})}})}(async()=>(N1(),B1.createRoot(document.querySelector("#root")).render(X.jsx(Vb,{}))))();export{b1 as g}; diff --git a/node_modules.codex-backup/playwright-core/lib/vite/traceViewer/assets/codeMirrorModule-DS0FLvoc.js b/node_modules.codex-backup/playwright-core/lib/vite/traceViewer/assets/codeMirrorModule-DS0FLvoc.js new file mode 100644 index 00000000..3f0e8bf8 --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/vite/traceViewer/assets/codeMirrorModule-DS0FLvoc.js @@ -0,0 +1,32 @@ +import{v as Ju}from"./defaultSettingsView-GTWI-W_B.js";var vi={exports:{}},Zu=vi.exports,pa;function mt(){return pa||(pa=1,(function(ct,xt){(function(b,pe){ct.exports=pe()})(Zu,(function(){var b=navigator.userAgent,pe=navigator.platform,_=/gecko\/\d/i.test(b),te=/MSIE \d/.test(b),oe=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(b),Q=/Edge\/(\d+)/.exec(b),k=te||oe||Q,I=k&&(te?document.documentMode||6:+(Q||oe)[1]),Y=!Q&&/WebKit\//.test(b),ne=Y&&/Qt\/\d+\.\d+/.test(b),S=!Q&&/Chrome\/(\d+)/.exec(b),R=S&&+S[1],A=/Opera\//.test(b),$=/Apple Computer/.test(navigator.vendor),ue=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(b),O=/PhantomJS/.test(b),w=$&&(/Mobile\/\w+/.test(b)||navigator.maxTouchPoints>2),M=/Android/.test(b),N=w||M||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(b),z=w||/Mac/.test(pe),X=/\bCrOS\b/.test(b),q=/win/i.test(pe),p=A&&b.match(/Version\/(\d*\.\d*)/);p&&(p=Number(p[1])),p&&p>=15&&(A=!1,Y=!0);var W=z&&(ne||A&&(p==null||p<12.11)),J=_||k&&I>=9;function P(e){return new RegExp("(^|\\s)"+e+"(?:$|\\s)\\s*")}var V=function(e,t){var n=e.className,r=P(t).exec(n);if(r){var i=n.slice(r.index+r[0].length);e.className=n.slice(0,r.index)+(i?r[1]+i:"")}};function F(e){for(var t=e.childNodes.length;t>0;--t)e.removeChild(e.firstChild);return e}function G(e,t){return F(e).appendChild(t)}function c(e,t,n,r){var i=document.createElement(e);if(n&&(i.className=n),r&&(i.style.cssText=r),typeof t=="string")i.appendChild(document.createTextNode(t));else if(t)for(var o=0;o=t)return l+(t-o);l+=a-o,l+=n-l%n,o=a+1}}var Ce=function(){this.id=null,this.f=null,this.time=0,this.handler=xe(this.onTimeout,this)};Ce.prototype.onTimeout=function(e){e.id=0,e.time<=+new Date?e.f():setTimeout(e.handler,e.time-+new Date)},Ce.prototype.set=function(e,t){this.f=t;var n=+new Date+e;(!this.id||n=t)return r+Math.min(l,t-i);if(i+=o-r,i+=n-i%n,r=o+1,i>=t)return r}}var Ue=[""];function et(e){for(;Ue.length<=e;)Ue.push(we(Ue)+" ");return Ue[e]}function we(e){return e[e.length-1]}function Ie(e,t){for(var n=[],r=0;r"€"&&(e.toUpperCase()!=e.toLowerCase()||ze.test(e))}function De(e,t){return t?t.source.indexOf("\\w")>-1&&me(e)?!0:t.test(e):me(e)}function be(e){for(var t in e)if(e.hasOwnProperty(t)&&e[t])return!1;return!0}var Be=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;function Ne(e){return e.charCodeAt(0)>=768&&Be.test(e)}function Mt(e,t,n){for(;(n<0?t>0:tn?-1:1;;){if(t==n)return t;var i=(t+n)/2,o=r<0?Math.ceil(i):Math.floor(i);if(o==t)return e(o)?t:n;e(o)?n=o:t=o+r}}function or(e,t,n,r){if(!e)return r(t,n,"ltr",0);for(var i=!1,o=0;ot||t==n&&l.to==t)&&(r(Math.max(l.from,t),Math.min(l.to,n),l.level==1?"rtl":"ltr",o),i=!0)}i||r(t,n,"ltr")}var br=null;function lr(e,t,n){var r;br=null;for(var i=0;it)return i;o.to==t&&(o.from!=o.to&&n=="before"?r=i:br=i),o.from==t&&(o.from!=o.to&&n!="before"?r=i:br=i)}return r??br}var mi=(function(){var e="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",t="nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111";function n(u){return u<=247?e.charAt(u):1424<=u&&u<=1524?"R":1536<=u&&u<=1785?t.charAt(u-1536):1774<=u&&u<=2220?"r":8192<=u&&u<=8203?"w":u==8204?"b":"L"}var r=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,i=/[stwN]/,o=/[LRr]/,l=/[Lb1n]/,a=/[1n]/;function s(u,h,x){this.level=u,this.from=h,this.to=x}return function(u,h){var x=h=="ltr"?"L":"R";if(u.length==0||h=="ltr"&&!r.test(u))return!1;for(var D=u.length,L=[],H=0;H-1&&(r[t]=i.slice(0,o).concat(i.slice(o+1)))}}}function Ye(e,t){var n=Zt(e,t);if(n.length)for(var r=Array.prototype.slice.call(arguments,2),i=0;i0}function Bt(e){e.prototype.on=function(t,n){Se(this,t,n)},e.prototype.off=function(t,n){ht(this,t,n)}}function pt(e){e.preventDefault?e.preventDefault():e.returnValue=!1}function Er(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function kt(e){return e.defaultPrevented!=null?e.defaultPrevented:e.returnValue==!1}function ar(e){pt(e),Er(e)}function ln(e){return e.target||e.srcElement}function Rt(e){var t=e.which;return t==null&&(e.button&1?t=1:e.button&2?t=3:e.button&4&&(t=2)),z&&e.ctrlKey&&t==1&&(t=3),t}var xi=(function(){if(k&&I<9)return!1;var e=c("div");return"draggable"in e||"dragDrop"in e})(),Or;function Rn(e){if(Or==null){var t=c("span","​");G(e,c("span",[t,document.createTextNode("x")])),e.firstChild.offsetHeight!=0&&(Or=t.offsetWidth<=1&&t.offsetHeight>2&&!(k&&I<8))}var n=Or?c("span","​"):c("span"," ",null,"display: inline-block; width: 1px; margin-right: -1px");return n.setAttribute("cm-text",""),n}var an;function sr(e){if(an!=null)return an;var t=G(e,document.createTextNode("AخA")),n=C(t,0,1).getBoundingClientRect(),r=C(t,1,2).getBoundingClientRect();return F(e),!n||n.left==n.right?!1:an=r.right-n.right<3}var zt=` + +b`.split(/\n/).length!=3?function(e){for(var t=0,n=[],r=e.length;t<=r;){var i=e.indexOf(` +`,t);i==-1&&(i=e.length);var o=e.slice(t,e.charAt(i-1)=="\r"?i-1:i),l=o.indexOf("\r");l!=-1?(n.push(o.slice(0,l)),t+=l+1):(n.push(o),t=i+1)}return n}:function(e){return e.split(/\r\n?|\n/)},ur=window.getSelection?function(e){try{return e.selectionStart!=e.selectionEnd}catch{return!1}}:function(e){var t;try{t=e.ownerDocument.selection.createRange()}catch{}return!t||t.parentElement()!=e?!1:t.compareEndPoints("StartToEnd",t)!=0},Wn=(function(){var e=c("div");return"oncopy"in e?!0:(e.setAttribute("oncopy","return;"),typeof e.oncopy=="function")})(),Wt=null;function yi(e){if(Wt!=null)return Wt;var t=G(e,c("span","x")),n=t.getBoundingClientRect(),r=C(t,0,1).getBoundingClientRect();return Wt=Math.abs(n.left-r.left)>1}var Pr={},Ht={};function _t(e,t){arguments.length>2&&(t.dependencies=Array.prototype.slice.call(arguments,2)),Pr[e]=t}function kr(e,t){Ht[e]=t}function Ir(e){if(typeof e=="string"&&Ht.hasOwnProperty(e))e=Ht[e];else if(e&&typeof e.name=="string"&&Ht.hasOwnProperty(e.name)){var t=Ht[e.name];typeof t=="string"&&(t={name:t}),e=K(t,e),e.name=t.name}else{if(typeof e=="string"&&/^[\w\-]+\/[\w\-]+\+xml$/.test(e))return Ir("application/xml");if(typeof e=="string"&&/^[\w\-]+\/[\w\-]+\+json$/.test(e))return Ir("application/json")}return typeof e=="string"?{name:e}:e||{name:"null"}}function zr(e,t){t=Ir(t);var n=Pr[t.name];if(!n)return zr(e,"text/plain");var r=n(e,t);if(fr.hasOwnProperty(t.name)){var i=fr[t.name];for(var o in i)i.hasOwnProperty(o)&&(r.hasOwnProperty(o)&&(r["_"+o]=r[o]),r[o]=i[o])}if(r.name=t.name,t.helperType&&(r.helperType=t.helperType),t.modeProps)for(var l in t.modeProps)r[l]=t.modeProps[l];return r}var fr={};function Br(e,t){var n=fr.hasOwnProperty(e)?fr[e]:fr[e]={};Me(t,n)}function Gt(e,t){if(t===!0)return t;if(e.copyState)return e.copyState(t);var n={};for(var r in t){var i=t[r];i instanceof Array&&(i=i.concat([])),n[r]=i}return n}function sn(e,t){for(var n;e.innerMode&&(n=e.innerMode(t),!(!n||n.mode==e));)t=n.state,e=n.mode;return n||{mode:e,state:t}}function Rr(e,t,n){return e.startState?e.startState(t,n):!0}var Je=function(e,t,n){this.pos=this.start=0,this.string=e,this.tabSize=t||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0,this.lineOracle=n};Je.prototype.eol=function(){return this.pos>=this.string.length},Je.prototype.sol=function(){return this.pos==this.lineStart},Je.prototype.peek=function(){return this.string.charAt(this.pos)||void 0},Je.prototype.next=function(){if(this.post},Je.prototype.eatSpace=function(){for(var e=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e},Je.prototype.skipToEnd=function(){this.pos=this.string.length},Je.prototype.skipTo=function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},Je.prototype.backUp=function(e){this.pos-=e},Je.prototype.column=function(){return this.lastColumnPos0?null:(o&&t!==!1&&(this.pos+=o[0].length),o)}},Je.prototype.current=function(){return this.string.slice(this.start,this.pos)},Je.prototype.hideFirstChars=function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}},Je.prototype.lookAhead=function(e){var t=this.lineOracle;return t&&t.lookAhead(e)},Je.prototype.baseToken=function(){var e=this.lineOracle;return e&&e.baseToken(this.pos)};function ye(e,t){if(t-=e.first,t<0||t>=e.size)throw new Error("There is no line "+(t+e.first)+" in the document.");for(var n=e;!n.lines;)for(var r=0;;++r){var i=n.children[r],o=i.chunkSize();if(t=e.first&&tn?B(n,ye(e,n).text.length):Za(t,ye(e,t.line).text.length)}function Za(e,t){var n=e.ch;return n==null||n>t?B(e.line,t):n<0?B(e.line,0):e}function vo(e,t){for(var n=[],r=0;rthis.maxLookAhead&&(this.maxLookAhead=e),t},Xt.prototype.baseToken=function(e){if(!this.baseTokens)return null;for(;this.baseTokens[this.baseTokenPos]<=e;)this.baseTokenPos+=2;var t=this.baseTokens[this.baseTokenPos+1];return{type:t&&t.replace(/( |^)overlay .*/,""),size:this.baseTokens[this.baseTokenPos]-e}},Xt.prototype.nextLine=function(){this.line++,this.maxLookAhead>0&&this.maxLookAhead--},Xt.fromSaved=function(e,t,n){return t instanceof Hn?new Xt(e,Gt(e.mode,t.state),n,t.lookAhead):new Xt(e,Gt(e.mode,t),n)},Xt.prototype.save=function(e){var t=e!==!1?Gt(this.doc.mode,this.state):this.state;return this.maxLookAhead>0?new Hn(t,this.maxLookAhead):t};function mo(e,t,n,r){var i=[e.state.modeGen],o={};So(e,t.text,e.doc.mode,n,function(u,h){return i.push(u,h)},o,r);for(var l=n.state,a=function(u){n.baseTokens=i;var h=e.state.overlays[u],x=1,D=0;n.state=!0,So(e,t.text,h.mode,n,function(L,H){for(var Z=x;DL&&i.splice(x,1,L,i[x+1],ie),x+=2,D=Math.min(L,ie)}if(H)if(h.opaque)i.splice(Z,x-Z,L,"overlay "+H),x=Z+2;else for(;Ze.options.maxHighlightLength&&Gt(e.doc.mode,r.state),o=mo(e,t,r);i&&(r.state=i),t.stateAfter=r.save(!i),t.styles=o.styles,o.classes?t.styleClasses=o.classes:t.styleClasses&&(t.styleClasses=null),n===e.doc.highlightFrontier&&(e.doc.modeFrontier=Math.max(e.doc.modeFrontier,++e.doc.highlightFrontier))}return t.styles}function fn(e,t,n){var r=e.doc,i=e.display;if(!r.mode.startState)return new Xt(r,!0,t);var o=$a(e,t,n),l=o>r.first&&ye(r,o-1).stateAfter,a=l?Xt.fromSaved(r,l,o):new Xt(r,Rr(r.mode),o);return r.iter(o,t,function(s){bi(e,s.text,a);var u=a.line;s.stateAfter=u==t-1||u%5==0||u>=i.viewFrom&&ut.start)return o}throw new Error("Mode "+e.name+" failed to advance stream.")}var bo=function(e,t,n){this.start=e.start,this.end=e.pos,this.string=e.current(),this.type=t||null,this.state=n};function ko(e,t,n,r){var i=e.doc,o=i.mode,l;t=Ae(i,t);var a=ye(i,t.line),s=fn(e,t.line,n),u=new Je(a.text,e.options.tabSize,s),h;for(r&&(h=[]);(r||u.pose.options.maxHighlightLength?(a=!1,l&&bi(e,t,r,h.pos),h.pos=t.length,x=null):x=wo(ki(n,h,r.state,D),o),D){var L=D[0].name;L&&(x="m-"+(x?L+" "+x:L))}if(!a||u!=x){for(;sl;--a){if(a<=o.first)return o.first;var s=ye(o,a-1),u=s.stateAfter;if(u&&(!n||a+(u instanceof Hn?u.lookAhead:0)<=o.modeFrontier))return a;var h=Fe(s.text,null,e.options.tabSize);(i==null||r>h)&&(i=a-1,r=h)}return i}function Va(e,t){if(e.modeFrontier=Math.min(e.modeFrontier,t),!(e.highlightFrontiern;r--){var i=ye(e,r).stateAfter;if(i&&(!(i instanceof Hn)||r+i.lookAhead=t:o.to>t);(r||(r=[])).push(new _n(l,o.from,s?null:o.to))}}return r}function os(e,t,n){var r;if(e)for(var i=0;i=t:o.to>t);if(a||o.from==t&&l.type=="bookmark"&&(!n||o.marker.insertLeft)){var s=o.from==null||(l.inclusiveLeft?o.from<=t:o.from0&&a)for(var ge=0;ge0)){var h=[s,1],x=ce(u.from,a.from),D=ce(u.to,a.to);(x<0||!l.inclusiveLeft&&!x)&&h.push({from:u.from,to:a.from}),(D>0||!l.inclusiveRight&&!D)&&h.push({from:a.to,to:u.to}),i.splice.apply(i,h),s+=h.length-3}}return i}function Co(e){var t=e.markedSpans;if(t){for(var n=0;nt)&&(!r||Si(r,o.marker)<0)&&(r=o.marker)}return r}function Ao(e,t,n,r,i){var o=ye(e,t),l=Vt&&o.markedSpans;if(l)for(var a=0;a=0&&x<=0||h<=0&&x>=0)&&(h<=0&&(s.marker.inclusiveRight&&i.inclusiveLeft?ce(u.to,n)>=0:ce(u.to,n)>0)||h>=0&&(s.marker.inclusiveRight&&i.inclusiveLeft?ce(u.from,r)<=0:ce(u.from,r)<0)))return!0}}}function qt(e){for(var t;t=Fo(e);)e=t.find(-1,!0).line;return e}function ss(e){for(var t;t=Kn(e);)e=t.find(1,!0).line;return e}function us(e){for(var t,n;t=Kn(e);)e=t.find(1,!0).line,(n||(n=[])).push(e);return n}function Li(e,t){var n=ye(e,t),r=qt(n);return n==r?t:f(r)}function No(e,t){if(t>e.lastLine())return t;var n=ye(e,t),r;if(!cr(e,n))return t;for(;r=Kn(n);)n=r.find(1,!0).line;return f(n)+1}function cr(e,t){var n=Vt&&t.markedSpans;if(n){for(var r=void 0,i=0;it.maxLineLength&&(t.maxLineLength=i,t.maxLine=r)})}var Hr=function(e,t,n){this.text=e,Do(this,t),this.height=n?n(this):1};Hr.prototype.lineNo=function(){return f(this)},Bt(Hr);function fs(e,t,n,r){e.text=t,e.stateAfter&&(e.stateAfter=null),e.styles&&(e.styles=null),e.order!=null&&(e.order=null),Co(e),Do(e,n);var i=r?r(e):1;i!=e.height&&Et(e,i)}function cs(e){e.parent=null,Co(e)}var ds={},hs={};function Eo(e,t){if(!e||/^\s*$/.test(e))return null;var n=t.addModeClass?hs:ds;return n[e]||(n[e]=e.replace(/\S+/g,"cm-$&"))}function Oo(e,t){var n=T("span",null,null,Y?"padding-right: .1px":null),r={pre:T("pre",[n],"CodeMirror-line"),content:n,col:0,pos:0,cm:e,trailingSpace:!1,splitSpaces:e.getOption("lineWrapping")};t.measure={};for(var i=0;i<=(t.rest?t.rest.length:0);i++){var o=i?t.rest[i-1]:t.line,l=void 0;r.pos=0,r.addToken=gs,sr(e.display.measure)&&(l=Re(o,e.doc.direction))&&(r.addToken=ms(r.addToken,l)),r.map=[];var a=t!=e.display.externalMeasured&&f(o);xs(o,r,xo(e,o,a)),o.styleClasses&&(o.styleClasses.bgClass&&(r.bgClass=de(o.styleClasses.bgClass,r.bgClass||"")),o.styleClasses.textClass&&(r.textClass=de(o.styleClasses.textClass,r.textClass||""))),r.map.length==0&&r.map.push(0,0,r.content.appendChild(Rn(e.display.measure))),i==0?(t.measure.map=r.map,t.measure.cache={}):((t.measure.maps||(t.measure.maps=[])).push(r.map),(t.measure.caches||(t.measure.caches=[])).push({}))}if(Y){var s=r.content.lastChild;(/\bcm-tab\b/.test(s.className)||s.querySelector&&s.querySelector(".cm-tab"))&&(r.content.className="cm-tab-wrap-hack")}return Ye(e,"renderLine",e,t.line,r.pre),r.pre.className&&(r.textClass=de(r.pre.className,r.textClass||"")),r}function ps(e){var t=c("span","•","cm-invalidchar");return t.title="\\u"+e.charCodeAt(0).toString(16),t.setAttribute("aria-label",t.title),t}function gs(e,t,n,r,i,o,l){if(t){var a=e.splitSpaces?vs(t,e.trailingSpace):t,s=e.cm.state.specialChars,u=!1,h;if(!s.test(t))e.col+=t.length,h=document.createTextNode(a),e.map.push(e.pos,e.pos+t.length,h),k&&I<9&&(u=!0),e.pos+=t.length;else{h=document.createDocumentFragment();for(var x=0;;){s.lastIndex=x;var D=s.exec(t),L=D?D.index-x:t.length-x;if(L){var H=document.createTextNode(a.slice(x,x+L));k&&I<9?h.appendChild(c("span",[H])):h.appendChild(H),e.map.push(e.pos,e.pos+L,H),e.col+=L,e.pos+=L}if(!D)break;x+=L+1;var Z=void 0;if(D[0]==" "){var ie=e.cm.options.tabSize,ae=ie-e.col%ie;Z=h.appendChild(c("span",et(ae),"cm-tab")),Z.setAttribute("role","presentation"),Z.setAttribute("cm-text"," "),e.col+=ae}else D[0]=="\r"||D[0]==` +`?(Z=h.appendChild(c("span",D[0]=="\r"?"␍":"␤","cm-invalidchar")),Z.setAttribute("cm-text",D[0]),e.col+=1):(Z=e.cm.options.specialCharPlaceholder(D[0]),Z.setAttribute("cm-text",D[0]),k&&I<9?h.appendChild(c("span",[Z])):h.appendChild(Z),e.col+=1);e.map.push(e.pos,e.pos+1,Z),e.pos++}}if(e.trailingSpace=a.charCodeAt(t.length-1)==32,n||r||i||u||o||l){var he=n||"";r&&(he+=r),i&&(he+=i);var se=c("span",[h],he,o);if(l)for(var ge in l)l.hasOwnProperty(ge)&&ge!="style"&&ge!="class"&&se.setAttribute(ge,l[ge]);return e.content.appendChild(se)}e.content.appendChild(h)}}function vs(e,t){if(e.length>1&&!/ /.test(e))return e;for(var n=t,r="",i=0;iu&&x.from<=u));D++);if(x.to>=h)return e(n,r,i,o,l,a,s);e(n,r.slice(0,x.to-u),i,o,null,a,s),o=null,r=r.slice(x.to-u),u=x.to}}}function Po(e,t,n,r){var i=!r&&n.widgetNode;i&&e.map.push(e.pos,e.pos+t,i),!r&&e.cm.display.input.needsContentAttribute&&(i||(i=e.content.appendChild(document.createElement("span"))),i.setAttribute("cm-marker",n.id)),i&&(e.cm.display.input.setUneditable(i),e.content.appendChild(i)),e.pos+=t,e.trailingSpace=!1}function xs(e,t,n){var r=e.markedSpans,i=e.text,o=0;if(!r){for(var l=1;ls||Ee.collapsed&&ke.to==s&&ke.from==s)){if(ke.to!=null&&ke.to!=s&&L>ke.to&&(L=ke.to,Z=""),Ee.className&&(H+=" "+Ee.className),Ee.css&&(D=(D?D+";":"")+Ee.css),Ee.startStyle&&ke.from==s&&(ie+=" "+Ee.startStyle),Ee.endStyle&&ke.to==L&&(ge||(ge=[])).push(Ee.endStyle,ke.to),Ee.title&&((he||(he={})).title=Ee.title),Ee.attributes)for(var Ke in Ee.attributes)(he||(he={}))[Ke]=Ee.attributes[Ke];Ee.collapsed&&(!ae||Si(ae.marker,Ee)<0)&&(ae=ke)}else ke.from>s&&L>ke.from&&(L=ke.from)}if(ge)for(var st=0;st=a)break;for(var Nt=Math.min(a,L);;){if(h){var Tt=s+h.length;if(!ae){var tt=Tt>Nt?h.slice(0,Nt-s):h;t.addToken(t,tt,x?x+H:H,ie,s+tt.length==L?Z:"",D,he)}if(Tt>=Nt){h=h.slice(Nt-s),s=Nt;break}s=Tt,ie=""}h=i.slice(o,o=n[u++]),x=Eo(n[u++],t.cm.options)}}}function Io(e,t,n){this.line=t,this.rest=us(t),this.size=this.rest?f(we(this.rest))-n+1:1,this.node=this.text=null,this.hidden=cr(e,t)}function Gn(e,t,n){for(var r=[],i,o=t;o2&&o.push((s.bottom+u.top)/2-n.top)}}o.push(n.bottom-n.top)}}function qo(e,t,n){if(e.line==t)return{map:e.measure.map,cache:e.measure.cache};if(e.rest){for(var r=0;rn)return{map:e.measure.maps[i],cache:e.measure.caches[i],before:!0}}}function Fs(e,t){t=qt(t);var n=f(t),r=e.display.externalMeasured=new Io(e.doc,t,n);r.lineN=n;var i=r.built=Oo(e,r);return r.text=i.pre,G(e.display.lineMeasure,i.pre),r}function jo(e,t,n,r){return Qt(e,qr(e,t),n,r)}function Ai(e,t){if(t>=e.display.viewFrom&&t=n.lineN&&tt)&&(o=s-a,i=o-1,t>=s&&(l="right")),i!=null){if(r=e[u+2],a==s&&n==(r.insertLeft?"left":"right")&&(l=n),n=="left"&&i==0)for(;u&&e[u-2]==e[u-3]&&e[u-1].insertLeft;)r=e[(u-=3)+2],l="left";if(n=="right"&&i==s-a)for(;u=0&&(n=e[i]).left==n.right;i--);return n}function Ns(e,t,n,r){var i=Uo(t.map,n,r),o=i.node,l=i.start,a=i.end,s=i.collapse,u;if(o.nodeType==3){for(var h=0;h<4;h++){for(;l&&Ne(t.line.text.charAt(i.coverStart+l));)--l;for(;i.coverStart+a0&&(s=r="right");var x;e.options.lineWrapping&&(x=o.getClientRects()).length>1?u=x[r=="right"?x.length-1:0]:u=o.getBoundingClientRect()}if(k&&I<9&&!l&&(!u||!u.left&&!u.right)){var D=o.parentNode.getClientRects()[0];D?u={left:D.left,right:D.left+Kr(e.display),top:D.top,bottom:D.bottom}:u=Ko}for(var L=u.top-t.rect.top,H=u.bottom-t.rect.top,Z=(L+H)/2,ie=t.view.measure.heights,ae=0;ae=r.text.length?(s=r.text.length,u="before"):s<=0&&(s=0,u="after"),!a)return l(u=="before"?s-1:s,u=="before");function h(H,Z,ie){var ae=a[Z],he=ae.level==1;return l(ie?H-1:H,he!=ie)}var x=lr(a,s,u),D=br,L=h(s,x,u=="before");return D!=null&&(L.other=h(s,D,u!="before")),L}function Zo(e,t){var n=0;t=Ae(e.doc,t),e.options.lineWrapping||(n=Kr(e.display)*t.ch);var r=ye(e.doc,t.line),i=er(r)+Xn(e.display);return{left:n,right:n,top:i,bottom:i+r.height}}function Ei(e,t,n,r,i){var o=B(e,t,n);return o.xRel=i,r&&(o.outside=r),o}function Oi(e,t,n){var r=e.doc;if(n+=e.display.viewOffset,n<0)return Ei(r.first,0,null,-1,-1);var i=m(r,n),o=r.first+r.size-1;if(i>o)return Ei(r.first+r.size-1,ye(r,o).text.length,null,1,1);t<0&&(t=0);for(var l=ye(r,i);;){var a=Os(e,l,i,t,n),s=as(l,a.ch+(a.xRel>0||a.outside>0?1:0));if(!s)return a;var u=s.find(1);if(u.line==i)return u;l=ye(r,i=u.line)}}function $o(e,t,n,r){r-=Ni(t);var i=t.text.length,o=Pt(function(l){return Qt(e,n,l-1).bottom<=r},i,0);return i=Pt(function(l){return Qt(e,n,l).top>r},o,i),{begin:o,end:i}}function Vo(e,t,n,r){n||(n=qr(e,t));var i=Yn(e,t,Qt(e,n,r),"line").top;return $o(e,t,n,i)}function Pi(e,t,n,r){return e.bottom<=n?!1:e.top>n?!0:(r?e.left:e.right)>t}function Os(e,t,n,r,i){i-=er(t);var o=qr(e,t),l=Ni(t),a=0,s=t.text.length,u=!0,h=Re(t,e.doc.direction);if(h){var x=(e.options.lineWrapping?Is:Ps)(e,t,n,o,h,r,i);u=x.level!=1,a=u?x.from:x.to-1,s=u?x.to:x.from-1}var D=null,L=null,H=Pt(function(Le){var ke=Qt(e,o,Le);return ke.top+=l,ke.bottom+=l,Pi(ke,r,i,!1)?(ke.top<=i&&ke.left<=r&&(D=Le,L=ke),!0):!1},a,s),Z,ie,ae=!1;if(L){var he=r-L.left=ge.bottom?1:0}return H=Mt(t.text,H,1),Ei(n,H,ie,ae,r-Z)}function Ps(e,t,n,r,i,o,l){var a=Pt(function(x){var D=i[x],L=D.level!=1;return Pi(jt(e,B(n,L?D.to:D.from,L?"before":"after"),"line",t,r),o,l,!0)},0,i.length-1),s=i[a];if(a>0){var u=s.level!=1,h=jt(e,B(n,u?s.from:s.to,u?"after":"before"),"line",t,r);Pi(h,o,l,!0)&&h.top>l&&(s=i[a-1])}return s}function Is(e,t,n,r,i,o,l){var a=$o(e,t,r,l),s=a.begin,u=a.end;/\s/.test(t.text.charAt(u-1))&&u--;for(var h=null,x=null,D=0;D=u||L.to<=s)){var H=L.level!=1,Z=Qt(e,r,H?Math.min(u,L.to)-1:Math.max(s,L.from)).right,ie=Zie)&&(h=L,x=ie)}}return h||(h=i[i.length-1]),h.fromu&&(h={from:h.from,to:u,level:h.level}),h}var Sr;function jr(e){if(e.cachedTextHeight!=null)return e.cachedTextHeight;if(Sr==null){Sr=c("pre",null,"CodeMirror-line-like");for(var t=0;t<49;++t)Sr.appendChild(document.createTextNode("x")),Sr.appendChild(c("br"));Sr.appendChild(document.createTextNode("x"))}G(e.measure,Sr);var n=Sr.offsetHeight/50;return n>3&&(e.cachedTextHeight=n),F(e.measure),n||1}function Kr(e){if(e.cachedCharWidth!=null)return e.cachedCharWidth;var t=c("span","xxxxxxxxxx"),n=c("pre",[t],"CodeMirror-line-like");G(e.measure,n);var r=t.getBoundingClientRect(),i=(r.right-r.left)/10;return i>2&&(e.cachedCharWidth=i),i||10}function Ii(e){for(var t=e.display,n={},r={},i=t.gutters.clientLeft,o=t.gutters.firstChild,l=0;o;o=o.nextSibling,++l){var a=e.display.gutterSpecs[l].className;n[a]=o.offsetLeft+o.clientLeft+i,r[a]=o.clientWidth}return{fixedPos:zi(t),gutterTotalWidth:t.gutters.offsetWidth,gutterLeft:n,gutterWidth:r,wrapperWidth:t.wrapper.clientWidth}}function zi(e){return e.scroller.getBoundingClientRect().left-e.sizer.getBoundingClientRect().left}function el(e){var t=jr(e.display),n=e.options.lineWrapping,r=n&&Math.max(5,e.display.scroller.clientWidth/Kr(e.display)-3);return function(i){if(cr(e.doc,i))return 0;var o=0;if(i.widgets)for(var l=0;l0&&(u=ye(e.doc,s.line).text).length==s.ch){var h=Fe(u,u.length,e.options.tabSize)-u.length;s=B(s.line,Math.max(0,Math.round((o-_o(e.display).left)/Kr(e.display))-h))}return s}function Tr(e,t){if(t>=e.display.viewTo||(t-=e.display.viewFrom,t<0))return null;for(var n=e.display.view,r=0;rt)&&(i.updateLineNumbers=t),e.curOp.viewChanged=!0,t>=i.viewTo)Vt&&Li(e.doc,t)i.viewFrom?hr(e):(i.viewFrom+=r,i.viewTo+=r);else if(t<=i.viewFrom&&n>=i.viewTo)hr(e);else if(t<=i.viewFrom){var o=Jn(e,n,n+r,1);o?(i.view=i.view.slice(o.index),i.viewFrom=o.lineN,i.viewTo+=r):hr(e)}else if(n>=i.viewTo){var l=Jn(e,t,t,-1);l?(i.view=i.view.slice(0,l.index),i.viewTo=l.lineN):hr(e)}else{var a=Jn(e,t,t,-1),s=Jn(e,n,n+r,1);a&&s?(i.view=i.view.slice(0,a.index).concat(Gn(e,a.lineN,s.lineN)).concat(i.view.slice(s.index)),i.viewTo+=r):hr(e)}var u=i.externalMeasured;u&&(n=i.lineN&&t=r.viewTo)){var o=r.view[Tr(e,t)];if(o.node!=null){var l=o.changes||(o.changes=[]);ve(l,n)==-1&&l.push(n)}}}function hr(e){e.display.viewFrom=e.display.viewTo=e.doc.first,e.display.view=[],e.display.viewOffset=0}function Jn(e,t,n,r){var i=Tr(e,t),o,l=e.display.view;if(!Vt||n==e.doc.first+e.doc.size)return{index:i,lineN:n};for(var a=e.display.viewFrom,s=0;s0){if(i==l.length-1)return null;o=a+l[i].size-t,i++}else o=a-t;t+=o,n+=o}for(;Li(e.doc,n)!=n;){if(i==(r<0?0:l.length-1))return null;n+=r*l[i-(r<0?1:0)].size,i+=r}return{index:i,lineN:n}}function zs(e,t,n){var r=e.display,i=r.view;i.length==0||t>=r.viewTo||n<=r.viewFrom?(r.view=Gn(e,t,n),r.viewFrom=t):(r.viewFrom>t?r.view=Gn(e,t,r.viewFrom).concat(r.view):r.viewFromn&&(r.view=r.view.slice(0,Tr(e,n)))),r.viewTo=n}function tl(e){for(var t=e.display.view,n=0,r=0;r=e.display.viewTo||s.to().line0?l:e.defaultCharWidth())+"px"}if(r.other){var a=n.appendChild(c("div"," ","CodeMirror-cursor CodeMirror-secondarycursor"));a.style.display="",a.style.left=r.other.left+"px",a.style.top=r.other.top+"px",a.style.height=(r.other.bottom-r.other.top)*.85+"px"}}function Zn(e,t){return e.top-t.top||e.left-t.left}function Bs(e,t,n){var r=e.display,i=e.doc,o=document.createDocumentFragment(),l=_o(e.display),a=l.left,s=Math.max(r.sizerWidth,wr(e)-r.sizer.offsetLeft)-l.right,u=i.direction=="ltr";function h(se,ge,Le,ke){ge<0&&(ge=0),ge=Math.round(ge),ke=Math.round(ke),o.appendChild(c("div",null,"CodeMirror-selected","position: absolute; left: "+se+`px; + top: `+ge+"px; width: "+(Le??s-se)+`px; + height: `+(ke-ge)+"px"))}function x(se,ge,Le){var ke=ye(i,se),Ee=ke.text.length,Ke,st;function Xe(tt,Ct){return Qn(e,B(se,tt),"div",ke,Ct)}function Nt(tt,Ct,ft){var nt=Vo(e,ke,null,tt),rt=Ct=="ltr"==(ft=="after")?"left":"right",Ze=ft=="after"?nt.begin:nt.end-(/\s/.test(ke.text.charAt(nt.end-1))?2:1);return Xe(Ze,rt)[rt]}var Tt=Re(ke,i.direction);return or(Tt,ge||0,Le??Ee,function(tt,Ct,ft,nt){var rt=ft=="ltr",Ze=Xe(tt,rt?"left":"right"),Dt=Xe(Ct-1,rt?"right":"left"),nn=ge==null&&tt==0,yr=Le==null&&Ct==Ee,vt=nt==0,Jt=!Tt||nt==Tt.length-1;if(Dt.top-Ze.top<=3){var ut=(u?nn:yr)&&vt,co=(u?yr:nn)&&Jt,ir=ut?a:(rt?Ze:Dt).left,Ar=co?s:(rt?Dt:Ze).right;h(ir,Ze.top,Ar-ir,Ze.bottom)}else{var Nr,bt,on,ho;rt?(Nr=u&&nn&&vt?a:Ze.left,bt=u?s:Nt(tt,ft,"before"),on=u?a:Nt(Ct,ft,"after"),ho=u&&yr&&Jt?s:Dt.right):(Nr=u?Nt(tt,ft,"before"):a,bt=!u&&nn&&vt?s:Ze.right,on=!u&&yr&&Jt?a:Dt.left,ho=u?Nt(Ct,ft,"after"):s),h(Nr,Ze.top,bt-Nr,Ze.bottom),Ze.bottom0?t.blinker=setInterval(function(){e.hasFocus()||Ur(e),t.cursorDiv.style.visibility=(n=!n)?"":"hidden"},e.options.cursorBlinkRate):e.options.cursorBlinkRate<0&&(t.cursorDiv.style.visibility="hidden")}}function nl(e){e.hasFocus()||(e.display.input.focus(),e.state.focused||_i(e))}function Hi(e){e.state.delayingBlurEvent=!0,setTimeout(function(){e.state.delayingBlurEvent&&(e.state.delayingBlurEvent=!1,e.state.focused&&Ur(e))},100)}function _i(e,t){e.state.delayingBlurEvent&&!e.state.draggingText&&(e.state.delayingBlurEvent=!1),e.options.readOnly!="nocursor"&&(e.state.focused||(Ye(e,"focus",e,t),e.state.focused=!0,j(e.display.wrapper,"CodeMirror-focused"),!e.curOp&&e.display.selForContextMenu!=e.doc.sel&&(e.display.input.reset(),Y&&setTimeout(function(){return e.display.input.reset(!0)},20)),e.display.input.receivedFocus()),Wi(e))}function Ur(e,t){e.state.delayingBlurEvent||(e.state.focused&&(Ye(e,"blur",e,t),e.state.focused=!1,V(e.display.wrapper,"CodeMirror-focused")),clearInterval(e.display.blinker),setTimeout(function(){e.state.focused||(e.display.shift=!1)},150))}function $n(e){for(var t=e.display,n=t.lineDiv.offsetTop,r=Math.max(0,t.scroller.getBoundingClientRect().top),i=t.lineDiv.getBoundingClientRect().top,o=0,l=0;l.005||L<-.005)&&(ie.display.sizerWidth){var Z=Math.ceil(h/Kr(e.display));Z>e.display.maxLineLength&&(e.display.maxLineLength=Z,e.display.maxLine=a.line,e.display.maxLineChanged=!0)}}}Math.abs(o)>2&&(t.scroller.scrollTop+=o)}function il(e){if(e.widgets)for(var t=0;t=l&&(o=m(t,er(ye(t,s))-e.wrapper.clientHeight),l=s)}return{from:o,to:Math.max(l,o+1)}}function Rs(e,t){if(!Qe(e,"scrollCursorIntoView")){var n=e.display,r=n.sizer.getBoundingClientRect(),i=null,o=n.wrapper.ownerDocument;if(t.top+r.top<0?i=!0:t.bottom+r.top>(o.defaultView.innerHeight||o.documentElement.clientHeight)&&(i=!1),i!=null&&!O){var l=c("div","​",null,`position: absolute; + top: `+(t.top-n.viewOffset-Xn(e.display))+`px; + height: `+(t.bottom-t.top+Yt(e)+n.barHeight)+`px; + left: `+t.left+"px; width: "+Math.max(2,t.right-t.left)+"px;");e.display.lineSpace.appendChild(l),l.scrollIntoView(i),e.display.lineSpace.removeChild(l)}}}function Ws(e,t,n,r){r==null&&(r=0);var i;!e.options.lineWrapping&&t==n&&(n=t.sticky=="before"?B(t.line,t.ch+1,"before"):t,t=t.ch?B(t.line,t.sticky=="before"?t.ch-1:t.ch,"after"):t);for(var o=0;o<5;o++){var l=!1,a=jt(e,t),s=!n||n==t?a:jt(e,n);i={left:Math.min(a.left,s.left),top:Math.min(a.top,s.top)-r,right:Math.max(a.left,s.left),bottom:Math.max(a.bottom,s.bottom)+r};var u=qi(e,i),h=e.doc.scrollTop,x=e.doc.scrollLeft;if(u.scrollTop!=null&&(xn(e,u.scrollTop),Math.abs(e.doc.scrollTop-h)>1&&(l=!0)),u.scrollLeft!=null&&(Cr(e,u.scrollLeft),Math.abs(e.doc.scrollLeft-x)>1&&(l=!0)),!l)break}return i}function Hs(e,t){var n=qi(e,t);n.scrollTop!=null&&xn(e,n.scrollTop),n.scrollLeft!=null&&Cr(e,n.scrollLeft)}function qi(e,t){var n=e.display,r=jr(e.display);t.top<0&&(t.top=0);var i=e.curOp&&e.curOp.scrollTop!=null?e.curOp.scrollTop:n.scroller.scrollTop,o=Fi(e),l={};t.bottom-t.top>o&&(t.bottom=t.top+o);var a=e.doc.height+Mi(n),s=t.topa-r;if(t.topi+o){var h=Math.min(t.top,(u?a:t.bottom)-o);h!=i&&(l.scrollTop=h)}var x=e.options.fixedGutter?0:n.gutters.offsetWidth,D=e.curOp&&e.curOp.scrollLeft!=null?e.curOp.scrollLeft:n.scroller.scrollLeft-x,L=wr(e)-n.gutters.offsetWidth,H=t.right-t.left>L;return H&&(t.right=t.left+L),t.left<10?l.scrollLeft=0:t.leftL+D-3&&(l.scrollLeft=t.right+(H?0:10)-L),l}function ji(e,t){t!=null&&(ei(e),e.curOp.scrollTop=(e.curOp.scrollTop==null?e.doc.scrollTop:e.curOp.scrollTop)+t)}function Gr(e){ei(e);var t=e.getCursor();e.curOp.scrollToPos={from:t,to:t,margin:e.options.cursorScrollMargin}}function mn(e,t,n){(t!=null||n!=null)&&ei(e),t!=null&&(e.curOp.scrollLeft=t),n!=null&&(e.curOp.scrollTop=n)}function _s(e,t){ei(e),e.curOp.scrollToPos=t}function ei(e){var t=e.curOp.scrollToPos;if(t){e.curOp.scrollToPos=null;var n=Zo(e,t.from),r=Zo(e,t.to);ol(e,n,r,t.margin)}}function ol(e,t,n,r){var i=qi(e,{left:Math.min(t.left,n.left),top:Math.min(t.top,n.top)-r,right:Math.max(t.right,n.right),bottom:Math.max(t.bottom,n.bottom)+r});mn(e,i.scrollLeft,i.scrollTop)}function xn(e,t){Math.abs(e.doc.scrollTop-t)<2||(_||Ui(e,{top:t}),ll(e,t,!0),_&&Ui(e),kn(e,100))}function ll(e,t,n){t=Math.max(0,Math.min(e.display.scroller.scrollHeight-e.display.scroller.clientHeight,t)),!(e.display.scroller.scrollTop==t&&!n)&&(e.doc.scrollTop=t,e.display.scrollbars.setScrollTop(t),e.display.scroller.scrollTop!=t&&(e.display.scroller.scrollTop=t))}function Cr(e,t,n,r){t=Math.max(0,Math.min(t,e.display.scroller.scrollWidth-e.display.scroller.clientWidth)),!((n?t==e.doc.scrollLeft:Math.abs(e.doc.scrollLeft-t)<2)&&!r)&&(e.doc.scrollLeft=t,cl(e),e.display.scroller.scrollLeft!=t&&(e.display.scroller.scrollLeft=t),e.display.scrollbars.setScrollLeft(t))}function yn(e){var t=e.display,n=t.gutters.offsetWidth,r=Math.round(e.doc.height+Mi(e.display));return{clientHeight:t.scroller.clientHeight,viewHeight:t.wrapper.clientHeight,scrollWidth:t.scroller.scrollWidth,clientWidth:t.scroller.clientWidth,viewWidth:t.wrapper.clientWidth,barLeft:e.options.fixedGutter?n:0,docHeight:r,scrollHeight:r+Yt(e)+t.barHeight,nativeBarWidth:t.nativeBarWidth,gutterWidth:n}}var Dr=function(e,t,n){this.cm=n;var r=this.vert=c("div",[c("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar"),i=this.horiz=c("div",[c("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");r.tabIndex=i.tabIndex=-1,e(r),e(i),Se(r,"scroll",function(){r.clientHeight&&t(r.scrollTop,"vertical")}),Se(i,"scroll",function(){i.clientWidth&&t(i.scrollLeft,"horizontal")}),this.checkedZeroWidth=!1,k&&I<8&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")};Dr.prototype.update=function(e){var t=e.scrollWidth>e.clientWidth+1,n=e.scrollHeight>e.clientHeight+1,r=e.nativeBarWidth;if(n){this.vert.style.display="block",this.vert.style.bottom=t?r+"px":"0";var i=e.viewHeight-(t?r:0);this.vert.firstChild.style.height=Math.max(0,e.scrollHeight-e.clientHeight+i)+"px"}else this.vert.scrollTop=0,this.vert.style.display="",this.vert.firstChild.style.height="0";if(t){this.horiz.style.display="block",this.horiz.style.right=n?r+"px":"0",this.horiz.style.left=e.barLeft+"px";var o=e.viewWidth-e.barLeft-(n?r:0);this.horiz.firstChild.style.width=Math.max(0,e.scrollWidth-e.clientWidth+o)+"px"}else this.horiz.style.display="",this.horiz.firstChild.style.width="0";return!this.checkedZeroWidth&&e.clientHeight>0&&(r==0&&this.zeroWidthHack(),this.checkedZeroWidth=!0),{right:n?r:0,bottom:t?r:0}},Dr.prototype.setScrollLeft=function(e){this.horiz.scrollLeft!=e&&(this.horiz.scrollLeft=e),this.disableHoriz&&this.enableZeroWidthBar(this.horiz,this.disableHoriz,"horiz")},Dr.prototype.setScrollTop=function(e){this.vert.scrollTop!=e&&(this.vert.scrollTop=e),this.disableVert&&this.enableZeroWidthBar(this.vert,this.disableVert,"vert")},Dr.prototype.zeroWidthHack=function(){var e=z&&!ue?"12px":"18px";this.horiz.style.height=this.vert.style.width=e,this.horiz.style.visibility=this.vert.style.visibility="hidden",this.disableHoriz=new Ce,this.disableVert=new Ce},Dr.prototype.enableZeroWidthBar=function(e,t,n){e.style.visibility="";function r(){var i=e.getBoundingClientRect(),o=n=="vert"?document.elementFromPoint(i.right-1,(i.top+i.bottom)/2):document.elementFromPoint((i.right+i.left)/2,i.bottom-1);o!=e?e.style.visibility="hidden":t.set(1e3,r)}t.set(1e3,r)},Dr.prototype.clear=function(){var e=this.horiz.parentNode;e.removeChild(this.horiz),e.removeChild(this.vert)};var bn=function(){};bn.prototype.update=function(){return{bottom:0,right:0}},bn.prototype.setScrollLeft=function(){},bn.prototype.setScrollTop=function(){},bn.prototype.clear=function(){};function Xr(e,t){t||(t=yn(e));var n=e.display.barWidth,r=e.display.barHeight;al(e,t);for(var i=0;i<4&&n!=e.display.barWidth||r!=e.display.barHeight;i++)n!=e.display.barWidth&&e.options.lineWrapping&&$n(e),al(e,yn(e)),n=e.display.barWidth,r=e.display.barHeight}function al(e,t){var n=e.display,r=n.scrollbars.update(t);n.sizer.style.paddingRight=(n.barWidth=r.right)+"px",n.sizer.style.paddingBottom=(n.barHeight=r.bottom)+"px",n.heightForcer.style.borderBottom=r.bottom+"px solid transparent",r.right&&r.bottom?(n.scrollbarFiller.style.display="block",n.scrollbarFiller.style.height=r.bottom+"px",n.scrollbarFiller.style.width=r.right+"px"):n.scrollbarFiller.style.display="",r.bottom&&e.options.coverGutterNextToScrollbar&&e.options.fixedGutter?(n.gutterFiller.style.display="block",n.gutterFiller.style.height=r.bottom+"px",n.gutterFiller.style.width=t.gutterWidth+"px"):n.gutterFiller.style.display=""}var sl={native:Dr,null:bn};function ul(e){e.display.scrollbars&&(e.display.scrollbars.clear(),e.display.scrollbars.addClass&&V(e.display.wrapper,e.display.scrollbars.addClass)),e.display.scrollbars=new sl[e.options.scrollbarStyle](function(t){e.display.wrapper.insertBefore(t,e.display.scrollbarFiller),Se(t,"mousedown",function(){e.state.focused&&setTimeout(function(){return e.display.input.focus()},0)}),t.setAttribute("cm-not-content","true")},function(t,n){n=="horizontal"?Cr(e,t):xn(e,t)},e),e.display.scrollbars.addClass&&j(e.display.wrapper,e.display.scrollbars.addClass)}var qs=0;function Mr(e){e.curOp={cm:e,viewChanged:!1,startHeight:e.doc.height,forceUpdate:!1,updateInput:0,typing:!1,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:!1,updateMaxLine:!1,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:!1,id:++qs,markArrays:null},ys(e.curOp)}function Fr(e){var t=e.curOp;t&&ks(t,function(n){for(var r=0;r=n.viewTo)||n.maxLineChanged&&t.options.lineWrapping,e.update=e.mustUpdate&&new ti(t,e.mustUpdate&&{top:e.scrollTop,ensure:e.scrollToPos},e.forceUpdate)}function Us(e){e.updatedDisplay=e.mustUpdate&&Ki(e.cm,e.update)}function Gs(e){var t=e.cm,n=t.display;e.updatedDisplay&&$n(t),e.barMeasure=yn(t),n.maxLineChanged&&!t.options.lineWrapping&&(e.adjustWidthTo=jo(t,n.maxLine,n.maxLine.text.length).left+3,t.display.sizerWidth=e.adjustWidthTo,e.barMeasure.scrollWidth=Math.max(n.scroller.clientWidth,n.sizer.offsetLeft+e.adjustWidthTo+Yt(t)+t.display.barWidth),e.maxScrollLeft=Math.max(0,n.sizer.offsetLeft+e.adjustWidthTo-wr(t))),(e.updatedDisplay||e.selectionChanged)&&(e.preparedSelection=n.input.prepareSelection())}function Xs(e){var t=e.cm;e.adjustWidthTo!=null&&(t.display.sizer.style.minWidth=e.adjustWidthTo+"px",e.maxScrollLeft=e.display.viewTo)){var n=+new Date+e.options.workTime,r=fn(e,t.highlightFrontier),i=[];t.iter(r.line,Math.min(t.first+t.size,e.display.viewTo+500),function(o){if(r.line>=e.display.viewFrom){var l=o.styles,a=o.text.length>e.options.maxHighlightLength?Gt(t.mode,r.state):null,s=mo(e,o,r,!0);a&&(r.state=a),o.styles=s.styles;var u=o.styleClasses,h=s.classes;h?o.styleClasses=h:u&&(o.styleClasses=null);for(var x=!l||l.length!=o.styles.length||u!=h&&(!u||!h||u.bgClass!=h.bgClass||u.textClass!=h.textClass),D=0;!x&&Dn)return kn(e,e.options.workDelay),!0}),t.highlightFrontier=r.line,t.modeFrontier=Math.max(t.modeFrontier,r.line),i.length&&At(e,function(){for(var o=0;o=n.viewFrom&&t.visible.to<=n.viewTo&&(n.updateLineNumbers==null||n.updateLineNumbers>=n.viewTo)&&n.renderedView==n.view&&tl(e)==0)return!1;dl(e)&&(hr(e),t.dims=Ii(e));var i=r.first+r.size,o=Math.max(t.visible.from-e.options.viewportMargin,r.first),l=Math.min(i,t.visible.to+e.options.viewportMargin);n.viewFroml&&n.viewTo-l<20&&(l=Math.min(i,n.viewTo)),Vt&&(o=Li(e.doc,o),l=No(e.doc,l));var a=o!=n.viewFrom||l!=n.viewTo||n.lastWrapHeight!=t.wrapperHeight||n.lastWrapWidth!=t.wrapperWidth;zs(e,o,l),n.viewOffset=er(ye(e.doc,n.viewFrom)),e.display.mover.style.top=n.viewOffset+"px";var s=tl(e);if(!a&&s==0&&!t.force&&n.renderedView==n.view&&(n.updateLineNumbers==null||n.updateLineNumbers>=n.viewTo))return!1;var u=Zs(e);return s>4&&(n.lineDiv.style.display="none"),Vs(e,n.updateLineNumbers,t.dims),s>4&&(n.lineDiv.style.display=""),n.renderedView=n.view,$s(u),F(n.cursorDiv),F(n.selectionDiv),n.gutters.style.height=n.sizer.style.minHeight=0,a&&(n.lastWrapHeight=t.wrapperHeight,n.lastWrapWidth=t.wrapperWidth,kn(e,400)),n.updateLineNumbers=null,!0}function fl(e,t){for(var n=t.viewport,r=!0;;r=!1){if(!r||!e.options.lineWrapping||t.oldDisplayWidth==wr(e)){if(n&&n.top!=null&&(n={top:Math.min(e.doc.height+Mi(e.display)-Fi(e),n.top)}),t.visible=Vn(e.display,e.doc,n),t.visible.from>=e.display.viewFrom&&t.visible.to<=e.display.viewTo)break}else r&&(t.visible=Vn(e.display,e.doc,n));if(!Ki(e,t))break;$n(e);var i=yn(e);vn(e),Xr(e,i),Xi(e,i),t.force=!1}t.signal(e,"update",e),(e.display.viewFrom!=e.display.reportedViewFrom||e.display.viewTo!=e.display.reportedViewTo)&&(t.signal(e,"viewportChange",e,e.display.viewFrom,e.display.viewTo),e.display.reportedViewFrom=e.display.viewFrom,e.display.reportedViewTo=e.display.viewTo)}function Ui(e,t){var n=new ti(e,t);if(Ki(e,n)){$n(e),fl(e,n);var r=yn(e);vn(e),Xr(e,r),Xi(e,r),n.finish()}}function Vs(e,t,n){var r=e.display,i=e.options.lineNumbers,o=r.lineDiv,l=o.firstChild;function a(H){var Z=H.nextSibling;return Y&&z&&e.display.currentWheelTarget==H?H.style.display="none":H.parentNode.removeChild(H),Z}for(var s=r.view,u=r.viewFrom,h=0;h-1&&(L=!1),zo(e,x,u,n)),L&&(F(x.lineNumber),x.lineNumber.appendChild(document.createTextNode(re(e.options,u)))),l=x.node.nextSibling}u+=x.size}for(;l;)l=a(l)}function Gi(e){var t=e.gutters.offsetWidth;e.sizer.style.marginLeft=t+"px",ot(e,"gutterChanged",e)}function Xi(e,t){e.display.sizer.style.minHeight=t.docHeight+"px",e.display.heightForcer.style.top=t.docHeight+"px",e.display.gutters.style.height=t.docHeight+e.display.barHeight+Yt(e)+"px"}function cl(e){var t=e.display,n=t.view;if(!(!t.alignWidgets&&(!t.gutters.firstChild||!e.options.fixedGutter))){for(var r=zi(t)-t.scroller.scrollLeft+e.doc.scrollLeft,i=t.gutters.offsetWidth,o=r+"px",l=0;l=105&&(i.wrapper.style.clipPath="inset(0px)"),i.wrapper.setAttribute("translate","no"),k&&I<8&&(i.gutters.style.zIndex=-1,i.scroller.style.paddingRight=0),!Y&&!(_&&N)&&(i.scroller.draggable=!0),e&&(e.appendChild?e.appendChild(i.wrapper):e(i.wrapper)),i.viewFrom=i.viewTo=t.first,i.reportedViewFrom=i.reportedViewTo=t.first,i.view=[],i.renderedView=null,i.externalMeasured=null,i.viewOffset=0,i.lastWrapHeight=i.lastWrapWidth=0,i.updateLineNumbers=null,i.nativeBarWidth=i.barHeight=i.barWidth=0,i.scrollbarsClipped=!1,i.lineNumWidth=i.lineNumInnerWidth=i.lineNumChars=null,i.alignWidgets=!1,i.cachedCharWidth=i.cachedTextHeight=i.cachedPaddingH=null,i.maxLine=null,i.maxLineLength=0,i.maxLineChanged=!1,i.wheelDX=i.wheelDY=i.wheelStartX=i.wheelStartY=null,i.shift=!1,i.selForContextMenu=null,i.activeTouch=null,i.gutterSpecs=Yi(r.gutters,r.lineNumbers),hl(i),n.init(i)}var ri=0,rr=null;k?rr=-.53:_?rr=15:S?rr=-.7:$&&(rr=-1/3);function pl(e){var t=e.wheelDeltaX,n=e.wheelDeltaY;return t==null&&e.detail&&e.axis==e.HORIZONTAL_AXIS&&(t=e.detail),n==null&&e.detail&&e.axis==e.VERTICAL_AXIS?n=e.detail:n==null&&(n=e.wheelDelta),{x:t,y:n}}function tu(e){var t=pl(e);return t.x*=rr,t.y*=rr,t}function gl(e,t){S&&R==102&&(e.display.chromeScrollHack==null?e.display.sizer.style.pointerEvents="none":clearTimeout(e.display.chromeScrollHack),e.display.chromeScrollHack=setTimeout(function(){e.display.chromeScrollHack=null,e.display.sizer.style.pointerEvents=""},100));var n=pl(t),r=n.x,i=n.y,o=rr;t.deltaMode===0&&(r=t.deltaX,i=t.deltaY,o=1);var l=e.display,a=l.scroller,s=a.scrollWidth>a.clientWidth,u=a.scrollHeight>a.clientHeight;if(r&&s||i&&u){if(i&&z&&Y){e:for(var h=t.target,x=l.view;h!=a;h=h.parentNode)for(var D=0;D=0&&ce(e,r.to())<=0)return n}return-1};var He=function(e,t){this.anchor=e,this.head=t};He.prototype.from=function(){return Wr(this.anchor,this.head)},He.prototype.to=function(){return wt(this.anchor,this.head)},He.prototype.empty=function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch};function Kt(e,t,n){var r=e&&e.options.selectionsMayTouch,i=t[n];t.sort(function(D,L){return ce(D.from(),L.from())}),n=ve(t,i);for(var o=1;o0:s>=0){var u=Wr(a.from(),l.from()),h=wt(a.to(),l.to()),x=a.empty()?l.from()==l.head:a.from()==a.head;o<=n&&--n,t.splice(--o,2,new He(x?h:u,x?u:h))}}return new Ot(t,n)}function pr(e,t){return new Ot([new He(e,t||e)],0)}function gr(e){return e.text?B(e.from.line+e.text.length-1,we(e.text).length+(e.text.length==1?e.from.ch:0)):e.to}function vl(e,t){if(ce(e,t.from)<0)return e;if(ce(e,t.to)<=0)return gr(t);var n=e.line+t.text.length-(t.to.line-t.from.line)-1,r=e.ch;return e.line==t.to.line&&(r+=gr(t).ch-t.to.ch),B(n,r)}function Qi(e,t){for(var n=[],r=0;r1&&e.remove(a.line+1,H-1),e.insert(a.line+1,ae)}ot(e,"change",e,t)}function vr(e,t,n){function r(i,o,l){if(i.linked)for(var a=0;a1&&!e.done[e.done.length-2].ranges)return e.done.pop(),we(e.done)}function wl(e,t,n,r){var i=e.history;i.undone.length=0;var o=+new Date,l,a;if((i.lastOp==r||i.lastOrigin==t.origin&&t.origin&&(t.origin.charAt(0)=="+"&&i.lastModTime>o-(e.cm?e.cm.options.historyEventDelay:500)||t.origin.charAt(0)=="*"))&&(l=iu(i,i.lastOp==r)))a=we(l.changes),ce(t.from,t.to)==0&&ce(t.from,a.to)==0?a.to=gr(t):l.changes.push($i(e,t));else{var s=we(i.done);for((!s||!s.ranges)&&ii(e.sel,i.done),l={changes:[$i(e,t)],generation:i.generation},i.done.push(l);i.done.length>i.undoDepth;)i.done.shift(),i.done[0].ranges||i.done.shift()}i.done.push(n),i.generation=++i.maxGeneration,i.lastModTime=i.lastSelTime=o,i.lastOp=i.lastSelOp=r,i.lastOrigin=i.lastSelOrigin=t.origin,a||Ye(e,"historyAdded")}function ou(e,t,n,r){var i=t.charAt(0);return i=="*"||i=="+"&&n.ranges.length==r.ranges.length&&n.somethingSelected()==r.somethingSelected()&&new Date-e.history.lastSelTime<=(e.cm?e.cm.options.historyEventDelay:500)}function lu(e,t,n,r){var i=e.history,o=r&&r.origin;n==i.lastSelOp||o&&i.lastSelOrigin==o&&(i.lastModTime==i.lastSelTime&&i.lastOrigin==o||ou(e,o,we(i.done),t))?i.done[i.done.length-1]=t:ii(t,i.done),i.lastSelTime=+new Date,i.lastSelOrigin=o,i.lastSelOp=n,r&&r.clearRedo!==!1&&kl(i.undone)}function ii(e,t){var n=we(t);n&&n.ranges&&n.equals(e)||t.push(e)}function Sl(e,t,n,r){var i=t["spans_"+e.id],o=0;e.iter(Math.max(e.first,n),Math.min(e.first+e.size,r),function(l){l.markedSpans&&((i||(i=t["spans_"+e.id]={}))[o]=l.markedSpans),++o})}function au(e){if(!e)return null;for(var t,n=0;n-1&&(we(a)[x]=u[x],delete u[x])}}return r}function Vi(e,t,n,r){if(r){var i=e.anchor;if(n){var o=ce(t,i)<0;o!=ce(n,i)<0?(i=t,t=n):o!=ce(t,n)<0&&(t=n)}return new He(i,t)}else return new He(n||t,t)}function oi(e,t,n,r,i){i==null&&(i=e.cm&&(e.cm.display.shift||e.extend)),gt(e,new Ot([Vi(e.sel.primary(),t,n,i)],0),r)}function Tl(e,t,n){for(var r=[],i=e.cm&&(e.cm.display.shift||e.extend),o=0;o=t.ch:a.to>t.ch))){if(i&&(Ye(s,"beforeCursorEnter"),s.explicitlyCleared))if(o.markedSpans){--l;continue}else break;if(!s.atomic)continue;if(n){var x=s.find(r<0?1:-1),D=void 0;if((r<0?h:u)&&(x=Nl(e,x,-r,x&&x.line==t.line?o:null)),x&&x.line==t.line&&(D=ce(x,n))&&(r<0?D<0:D>0))return Qr(e,x,t,r,i)}var L=s.find(r<0?-1:1);return(r<0?u:h)&&(L=Nl(e,L,r,L.line==t.line?o:null)),L?Qr(e,L,t,r,i):null}}return t}function ai(e,t,n,r,i){var o=r||1,l=Qr(e,t,n,o,i)||!i&&Qr(e,t,n,o,!0)||Qr(e,t,n,-o,i)||!i&&Qr(e,t,n,-o,!0);return l||(e.cantEdit=!0,B(e.first,0))}function Nl(e,t,n,r){return n<0&&t.ch==0?t.line>e.first?Ae(e,B(t.line-1)):null:n>0&&t.ch==(r||ye(e,t.line)).text.length?t.line=0;--i)Pl(e,{from:r[i].from,to:r[i].to,text:i?[""]:t.text,origin:t.origin});else Pl(e,t)}}function Pl(e,t){if(!(t.text.length==1&&t.text[0]==""&&ce(t.from,t.to)==0)){var n=Qi(e,t);wl(e,t,n,e.cm?e.cm.curOp.id:NaN),Ln(e,t,n,wi(e,t));var r=[];vr(e,function(i,o){!o&&ve(r,i.history)==-1&&(Rl(i.history,t),r.push(i.history)),Ln(i,t,null,wi(i,t))})}}function si(e,t,n){var r=e.cm&&e.cm.state.suppressEdits;if(!(r&&!n)){for(var i=e.history,o,l=e.sel,a=t=="undo"?i.done:i.undone,s=t=="undo"?i.undone:i.done,u=0;u=0;--L){var H=D(L);if(H)return H.v}}}}function Il(e,t){if(t!=0&&(e.first+=t,e.sel=new Ot(Ie(e.sel.ranges,function(i){return new He(B(i.anchor.line+t,i.anchor.ch),B(i.head.line+t,i.head.ch))}),e.sel.primIndex),e.cm)){St(e.cm,e.first,e.first-t,t);for(var n=e.cm.display,r=n.viewFrom;re.lastLine())){if(t.from.lineo&&(t={from:t.from,to:B(o,ye(e,o).text.length),text:[t.text[0]],origin:t.origin}),t.removed=$t(e,t.from,t.to),n||(n=Qi(e,t)),e.cm?fu(e.cm,t,r):Zi(e,t,r),li(e,n,$e),e.cantEdit&&ai(e,B(e.firstLine(),0))&&(e.cantEdit=!1)}}function fu(e,t,n){var r=e.doc,i=e.display,o=t.from,l=t.to,a=!1,s=o.line;e.options.lineWrapping||(s=f(qt(ye(r,o.line))),r.iter(s,l.line+1,function(L){if(L==i.maxLine)return a=!0,!0})),r.sel.contains(t.from,t.to)>-1&&It(e),Zi(r,t,n,el(e)),e.options.lineWrapping||(r.iter(s,o.line+t.text.length,function(L){var H=Un(L);H>i.maxLineLength&&(i.maxLine=L,i.maxLineLength=H,i.maxLineChanged=!0,a=!1)}),a&&(e.curOp.updateMaxLine=!0)),Va(r,o.line),kn(e,400);var u=t.text.length-(l.line-o.line)-1;t.full?St(e):o.line==l.line&&t.text.length==1&&!xl(e.doc,t)?dr(e,o.line,"text"):St(e,o.line,l.line+1,u);var h=Ft(e,"changes"),x=Ft(e,"change");if(x||h){var D={from:o,to:l,text:t.text,removed:t.removed,origin:t.origin};x&&ot(e,"change",e,D),h&&(e.curOp.changeObjs||(e.curOp.changeObjs=[])).push(D)}e.display.selForContextMenu=null}function Zr(e,t,n,r,i){var o;r||(r=n),ce(r,n)<0&&(o=[r,n],n=o[0],r=o[1]),typeof t=="string"&&(t=e.splitLines(t)),Jr(e,{from:n,to:r,text:t,origin:i})}function zl(e,t,n,r){n1||!(this.children[0]instanceof Cn))){var a=[];this.collapse(a),this.children=[new Cn(a)],this.children[0].parent=this}},collapse:function(e){for(var t=0;t50){for(var l=i.lines.length%25+25,a=l;a10);e.parent.maybeSpill()}},iterN:function(e,t,n){for(var r=0;re.display.maxLineLength&&(e.display.maxLine=u,e.display.maxLineLength=h,e.display.maxLineChanged=!0)}r!=null&&e&&this.collapsed&&St(e,r,i+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,e&&Fl(e.doc)),e&&ot(e,"markerCleared",e,this,r,i),t&&Fr(e),this.parent&&this.parent.clear()}},mr.prototype.find=function(e,t){e==null&&this.type=="bookmark"&&(e=1);for(var n,r,i=0;i0||l==0&&o.clearWhenEmpty!==!1)return o;if(o.replacedWith&&(o.collapsed=!0,o.widgetNode=T("span",[o.replacedWith],"CodeMirror-widget"),r.handleMouseEvents||o.widgetNode.setAttribute("cm-ignore-events","true"),r.insertLeft&&(o.widgetNode.insertLeft=!0)),o.collapsed){if(Ao(e,t.line,t,n,o)||t.line!=n.line&&Ao(e,n.line,t,n,o))throw new Error("Inserting collapsed marker partially overlapping an existing one");ts()}o.addToHistory&&wl(e,{from:t,to:n,origin:"markText"},e.sel,NaN);var a=t.line,s=e.cm,u;if(e.iter(a,n.line+1,function(x){s&&o.collapsed&&!s.options.lineWrapping&&qt(x)==s.display.maxLine&&(u=!0),o.collapsed&&a!=t.line&&Et(x,0),ns(x,new _n(o,a==t.line?t.ch:null,a==n.line?n.ch:null),e.cm&&e.cm.curOp),++a}),o.collapsed&&e.iter(t.line,n.line+1,function(x){cr(e,x)&&Et(x,0)}),o.clearOnEnter&&Se(o,"beforeCursorEnter",function(){return o.clear()}),o.readOnly&&(es(),(e.history.done.length||e.history.undone.length)&&e.clearHistory()),o.collapsed&&(o.id=++Hl,o.atomic=!0),s){if(u&&(s.curOp.updateMaxLine=!0),o.collapsed)St(s,t.line,n.line+1);else if(o.className||o.startStyle||o.endStyle||o.css||o.attributes||o.title)for(var h=t.line;h<=n.line;h++)dr(s,h,"text");o.atomic&&Fl(s.doc),ot(s,"markerAdded",s,o)}return o}var Fn=function(e,t){this.markers=e,this.primary=t;for(var n=0;n=0;s--)Jr(this,r[s]);a?Dl(this,a):this.cm&&Gr(this.cm)}),undo:at(function(){si(this,"undo")}),redo:at(function(){si(this,"redo")}),undoSelection:at(function(){si(this,"undo",!0)}),redoSelection:at(function(){si(this,"redo",!0)}),setExtending:function(e){this.extend=e},getExtending:function(){return this.extend},historySize:function(){for(var e=this.history,t=0,n=0,r=0;r=e.ch)&&t.push(i.marker.parent||i.marker)}return t},findMarks:function(e,t,n){e=Ae(this,e),t=Ae(this,t);var r=[],i=e.line;return this.iter(e.line,t.line+1,function(o){var l=o.markedSpans;if(l)for(var a=0;a=s.to||s.from==null&&i!=e.line||s.from!=null&&i==t.line&&s.from>=t.ch)&&(!n||n(s.marker))&&r.push(s.marker.parent||s.marker)}++i}),r},getAllMarks:function(){var e=[];return this.iter(function(t){var n=t.markedSpans;if(n)for(var r=0;re)return t=e,!0;e-=o,++n}),Ae(this,B(n,t))},indexFromPos:function(e){e=Ae(this,e);var t=e.ch;if(e.linet&&(t=e.from),e.to!=null&&e.to-1){t.state.draggingText(e),setTimeout(function(){return t.display.input.focus()},20);return}try{var h=e.dataTransfer.getData("Text");if(h){var x;if(t.state.draggingText&&!t.state.draggingText.copy&&(x=t.listSelections()),li(t.doc,pr(n,n)),x)for(var D=0;D=0;a--)Zr(e.doc,"",r[a].from,r[a].to,"+delete");Gr(e)})}function to(e,t,n){var r=Mt(e.text,t+n,n);return r<0||r>e.text.length?null:r}function ro(e,t,n){var r=to(e,t.ch,n);return r==null?null:new B(t.line,r,n<0?"after":"before")}function no(e,t,n,r,i){if(e){t.doc.direction=="rtl"&&(i=-i);var o=Re(n,t.doc.direction);if(o){var l=i<0?we(o):o[0],a=i<0==(l.level==1),s=a?"after":"before",u;if(l.level>0||t.doc.direction=="rtl"){var h=qr(t,n);u=i<0?n.text.length-1:0;var x=Qt(t,h,u).top;u=Pt(function(D){return Qt(t,h,D).top==x},i<0==(l.level==1)?l.from:l.to-1,u),s=="before"&&(u=to(n,u,1))}else u=i<0?l.to:l.from;return new B(r,u,s)}}return new B(r,i<0?n.text.length:0,i<0?"before":"after")}function Lu(e,t,n,r){var i=Re(t,e.doc.direction);if(!i)return ro(t,n,r);n.ch>=t.text.length?(n.ch=t.text.length,n.sticky="before"):n.ch<=0&&(n.ch=0,n.sticky="after");var o=lr(i,n.ch,n.sticky),l=i[o];if(e.doc.direction=="ltr"&&l.level%2==0&&(r>0?l.to>n.ch:l.from=l.from&&D>=h.begin)){var L=x?"before":"after";return new B(n.line,D,L)}}var H=function(ae,he,se){for(var ge=function(Ke,st){return st?new B(n.line,a(Ke,1),"before"):new B(n.line,Ke,"after")};ae>=0&&ae0==(Le.level!=1),Ee=ke?se.begin:a(se.end,-1);if(Le.from<=Ee&&Ee0?h.end:a(h.begin,-1);return ie!=null&&!(r>0&&ie==t.text.length)&&(Z=H(r>0?0:i.length-1,r,u(ie)),Z)?Z:null}var En={selectAll:El,singleSelection:function(e){return e.setSelection(e.getCursor("anchor"),e.getCursor("head"),$e)},killLine:function(e){return en(e,function(t){if(t.empty()){var n=ye(e.doc,t.head.line).text.length;return t.head.ch==n&&t.head.line0)i=new B(i.line,i.ch+1),e.replaceRange(o.charAt(i.ch-1)+o.charAt(i.ch-2),B(i.line,i.ch-2),i,"+transpose");else if(i.line>e.doc.first){var l=ye(e.doc,i.line-1).text;l&&(i=new B(i.line,1),e.replaceRange(o.charAt(0)+e.doc.lineSeparator()+l.charAt(l.length-1),B(i.line-1,l.length-1),i,"+transpose"))}}n.push(new He(i,i))}e.setSelections(n)})},newlineAndIndent:function(e){return At(e,function(){for(var t=e.listSelections(),n=t.length-1;n>=0;n--)e.replaceRange(e.doc.lineSeparator(),t[n].anchor,t[n].head,"+input");t=e.listSelections();for(var r=0;re&&ce(t,this.pos)==0&&n==this.button};var Pn,In;function Nu(e,t){var n=+new Date;return In&&In.compare(n,e,t)?(Pn=In=null,"triple"):Pn&&Pn.compare(n,e,t)?(In=new oo(n,e,t),Pn=null,"double"):(Pn=new oo(n,e,t),In=null,"single")}function ra(e){var t=this,n=t.display;if(!(Qe(t,e)||n.activeTouch&&n.input.supportsTouch())){if(n.input.ensurePolled(),n.shift=e.shiftKey,tr(n,e)){Y||(n.scroller.draggable=!1,setTimeout(function(){return n.scroller.draggable=!0},100));return}if(!lo(t,e)){var r=Lr(t,e),i=Rt(e),o=r?Nu(r,i):"single";le(t).focus(),i==1&&t.state.selectingText&&t.state.selectingText(e),!(r&&Eu(t,i,r,o,e))&&(i==1?r?Pu(t,r,o,e):ln(e)==n.scroller&&pt(e):i==2?(r&&oi(t.doc,r),setTimeout(function(){return n.input.focus()},20)):i==3&&(J?t.display.input.onContextMenu(e):Hi(t)))}}}function Eu(e,t,n,r,i){var o="Click";return r=="double"?o="Double"+o:r=="triple"&&(o="Triple"+o),o=(t==1?"Left":t==2?"Middle":"Right")+o,On(e,Xl(o,i),i,function(l){if(typeof l=="string"&&(l=En[l]),!l)return!1;var a=!1;try{e.isReadOnly()&&(e.state.suppressEdits=!0),a=l(e,n)!=qe}finally{e.state.suppressEdits=!1}return a})}function Ou(e,t,n){var r=e.getOption("configureMouse"),i=r?r(e,t,n):{};if(i.unit==null){var o=X?n.shiftKey&&n.metaKey:n.altKey;i.unit=o?"rectangle":t=="single"?"char":t=="double"?"word":"line"}return(i.extend==null||e.doc.extend)&&(i.extend=e.doc.extend||n.shiftKey),i.addNew==null&&(i.addNew=z?n.metaKey:n.ctrlKey),i.moveOnDrag==null&&(i.moveOnDrag=!(z?n.altKey:n.ctrlKey)),i}function Pu(e,t,n,r){k?setTimeout(xe(nl,e),0):e.curOp.focus=y(fe(e));var i=Ou(e,n,r),o=e.doc.sel,l;e.options.dragDrop&&xi&&!e.isReadOnly()&&n=="single"&&(l=o.contains(t))>-1&&(ce((l=o.ranges[l]).from(),t)<0||t.xRel>0)&&(ce(l.to(),t)>0||t.xRel<0)?Iu(e,r,t,i):zu(e,r,t,i)}function Iu(e,t,n,r){var i=e.display,o=!1,l=lt(e,function(u){Y&&(i.scroller.draggable=!1),e.state.draggingText=!1,e.state.delayingBlurEvent&&(e.hasFocus()?e.state.delayingBlurEvent=!1:Hi(e)),ht(i.wrapper.ownerDocument,"mouseup",l),ht(i.wrapper.ownerDocument,"mousemove",a),ht(i.scroller,"dragstart",s),ht(i.scroller,"drop",l),o||(pt(u),r.addNew||oi(e.doc,n,null,null,r.extend),Y&&!$||k&&I==9?setTimeout(function(){i.wrapper.ownerDocument.body.focus({preventScroll:!0}),i.input.focus()},20):i.input.focus())}),a=function(u){o=o||Math.abs(t.clientX-u.clientX)+Math.abs(t.clientY-u.clientY)>=10},s=function(){return o=!0};Y&&(i.scroller.draggable=!0),e.state.draggingText=l,l.copy=!r.moveOnDrag,Se(i.wrapper.ownerDocument,"mouseup",l),Se(i.wrapper.ownerDocument,"mousemove",a),Se(i.scroller,"dragstart",s),Se(i.scroller,"drop",l),e.state.delayingBlurEvent=!0,setTimeout(function(){return i.input.focus()},20),i.scroller.dragDrop&&i.scroller.dragDrop()}function na(e,t,n){if(n=="char")return new He(t,t);if(n=="word")return e.findWordAt(t);if(n=="line")return new He(B(t.line,0),Ae(e.doc,B(t.line+1,0)));var r=n(e,t);return new He(r.from,r.to)}function zu(e,t,n,r){k&&Hi(e);var i=e.display,o=e.doc;pt(t);var l,a,s=o.sel,u=s.ranges;if(r.addNew&&!r.extend?(a=o.sel.contains(n),a>-1?l=u[a]:l=new He(n,n)):(l=o.sel.primary(),a=o.sel.primIndex),r.unit=="rectangle")r.addNew||(l=new He(n,n)),n=Lr(e,t,!0,!0),a=-1;else{var h=na(e,n,r.unit);r.extend?l=Vi(l,h.anchor,h.head,r.extend):l=h}r.addNew?a==-1?(a=u.length,gt(o,Kt(e,u.concat([l]),a),{scroll:!1,origin:"*mouse"})):u.length>1&&u[a].empty()&&r.unit=="char"&&!r.extend?(gt(o,Kt(e,u.slice(0,a).concat(u.slice(a+1)),0),{scroll:!1,origin:"*mouse"}),s=o.sel):eo(o,a,l,dt):(a=0,gt(o,new Ot([l],0),dt),s=o.sel);var x=n;function D(se){if(ce(x,se)!=0)if(x=se,r.unit=="rectangle"){for(var ge=[],Le=e.options.tabSize,ke=Fe(ye(o,n.line).text,n.ch,Le),Ee=Fe(ye(o,se.line).text,se.ch,Le),Ke=Math.min(ke,Ee),st=Math.max(ke,Ee),Xe=Math.min(n.line,se.line),Nt=Math.min(e.lastLine(),Math.max(n.line,se.line));Xe<=Nt;Xe++){var Tt=ye(o,Xe).text,tt=_e(Tt,Ke,Le);Ke==st?ge.push(new He(B(Xe,tt),B(Xe,tt))):Tt.length>tt&&ge.push(new He(B(Xe,tt),B(Xe,_e(Tt,st,Le))))}ge.length||ge.push(new He(n,n)),gt(o,Kt(e,s.ranges.slice(0,a).concat(ge),a),{origin:"*mouse",scroll:!1}),e.scrollIntoView(se)}else{var Ct=l,ft=na(e,se,r.unit),nt=Ct.anchor,rt;ce(ft.anchor,nt)>0?(rt=ft.head,nt=Wr(Ct.from(),ft.anchor)):(rt=ft.anchor,nt=wt(Ct.to(),ft.head));var Ze=s.ranges.slice(0);Ze[a]=Bu(e,new He(Ae(o,nt),rt)),gt(o,Kt(e,Ze,a),dt)}}var L=i.wrapper.getBoundingClientRect(),H=0;function Z(se){var ge=++H,Le=Lr(e,se,!0,r.unit=="rectangle");if(Le)if(ce(Le,x)!=0){e.curOp.focus=y(fe(e)),D(Le);var ke=Vn(i,o);(Le.line>=ke.to||Le.lineL.bottom?20:0;Ee&&setTimeout(lt(e,function(){H==ge&&(i.scroller.scrollTop+=Ee,Z(se))}),50)}}function ie(se){e.state.selectingText=!1,H=1/0,se&&(pt(se),i.input.focus()),ht(i.wrapper.ownerDocument,"mousemove",ae),ht(i.wrapper.ownerDocument,"mouseup",he),o.history.lastSelOrigin=null}var ae=lt(e,function(se){se.buttons===0||!Rt(se)?ie(se):Z(se)}),he=lt(e,ie);e.state.selectingText=he,Se(i.wrapper.ownerDocument,"mousemove",ae),Se(i.wrapper.ownerDocument,"mouseup",he)}function Bu(e,t){var n=t.anchor,r=t.head,i=ye(e.doc,n.line);if(ce(n,r)==0&&n.sticky==r.sticky)return t;var o=Re(i);if(!o)return t;var l=lr(o,n.ch,n.sticky),a=o[l];if(a.from!=n.ch&&a.to!=n.ch)return t;var s=l+(a.from==n.ch==(a.level!=1)?0:1);if(s==0||s==o.length)return t;var u;if(r.line!=n.line)u=(r.line-n.line)*(e.doc.direction=="ltr"?1:-1)>0;else{var h=lr(o,r.ch,r.sticky),x=h-l||(r.ch-n.ch)*(a.level==1?-1:1);h==s-1||h==s?u=x<0:u=x>0}var D=o[s+(u?-1:0)],L=u==(D.level==1),H=L?D.from:D.to,Z=L?"after":"before";return n.ch==H&&n.sticky==Z?t:new He(new B(n.line,H,Z),r)}function ia(e,t,n,r){var i,o;if(t.touches)i=t.touches[0].clientX,o=t.touches[0].clientY;else try{i=t.clientX,o=t.clientY}catch{return!1}if(i>=Math.floor(e.display.gutters.getBoundingClientRect().right))return!1;r&&pt(t);var l=e.display,a=l.lineDiv.getBoundingClientRect();if(o>a.bottom||!Ft(e,n))return kt(t);o-=a.top-l.viewOffset;for(var s=0;s=i){var h=m(e.doc,o),x=e.display.gutterSpecs[s];return Ye(e,n,e,h,x.className,t),kt(t)}}}function lo(e,t){return ia(e,t,"gutterClick",!0)}function oa(e,t){tr(e.display,t)||Ru(e,t)||Qe(e,t,"contextmenu")||J||e.display.input.onContextMenu(t)}function Ru(e,t){return Ft(e,"gutterContextMenu")?ia(e,t,"gutterContextMenu",!1):!1}function la(e){e.display.wrapper.className=e.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+e.options.theme.replace(/(^|\s)\s*/g," cm-s-"),gn(e)}var tn={toString:function(){return"CodeMirror.Init"}},aa={},di={};function Wu(e){var t=e.optionHandlers;function n(r,i,o,l){e.defaults[r]=i,o&&(t[r]=l?function(a,s,u){u!=tn&&o(a,s,u)}:o)}e.defineOption=n,e.Init=tn,n("value","",function(r,i){return r.setValue(i)},!0),n("mode",null,function(r,i){r.doc.modeOption=i,Ji(r)},!0),n("indentUnit",2,Ji,!0),n("indentWithTabs",!1),n("smartIndent",!0),n("tabSize",4,function(r){Sn(r),gn(r),St(r)},!0),n("lineSeparator",null,function(r,i){if(r.doc.lineSep=i,!!i){var o=[],l=r.doc.first;r.doc.iter(function(s){for(var u=0;;){var h=s.text.indexOf(i,u);if(h==-1)break;u=h+i.length,o.push(B(l,h))}l++});for(var a=o.length-1;a>=0;a--)Zr(r.doc,i,o[a],B(o[a].line,o[a].ch+i.length))}}),n("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b\u200e\u200f\u2028\u2029\u202d\u202e\u2066\u2067\u2069\ufeff\ufff9-\ufffc]/g,function(r,i,o){r.state.specialChars=new RegExp(i.source+(i.test(" ")?"":"| "),"g"),o!=tn&&r.refresh()}),n("specialCharPlaceholder",ps,function(r){return r.refresh()},!0),n("electricChars",!0),n("inputStyle",N?"contenteditable":"textarea",function(){throw new Error("inputStyle can not (yet) be changed in a running editor")},!0),n("spellcheck",!1,function(r,i){return r.getInputField().spellcheck=i},!0),n("autocorrect",!1,function(r,i){return r.getInputField().autocorrect=i},!0),n("autocapitalize",!1,function(r,i){return r.getInputField().autocapitalize=i},!0),n("rtlMoveVisually",!q),n("wholeLineUpdateBefore",!0),n("theme","default",function(r){la(r),wn(r)},!0),n("keyMap","default",function(r,i,o){var l=fi(i),a=o!=tn&&fi(o);a&&a.detach&&a.detach(r,l),l.attach&&l.attach(r,a||null)}),n("extraKeys",null),n("configureMouse",null),n("lineWrapping",!1,_u,!0),n("gutters",[],function(r,i){r.display.gutterSpecs=Yi(i,r.options.lineNumbers),wn(r)},!0),n("fixedGutter",!0,function(r,i){r.display.gutters.style.left=i?zi(r.display)+"px":"0",r.refresh()},!0),n("coverGutterNextToScrollbar",!1,function(r){return Xr(r)},!0),n("scrollbarStyle","native",function(r){ul(r),Xr(r),r.display.scrollbars.setScrollTop(r.doc.scrollTop),r.display.scrollbars.setScrollLeft(r.doc.scrollLeft)},!0),n("lineNumbers",!1,function(r,i){r.display.gutterSpecs=Yi(r.options.gutters,i),wn(r)},!0),n("firstLineNumber",1,wn,!0),n("lineNumberFormatter",function(r){return r},wn,!0),n("showCursorWhenSelecting",!1,vn,!0),n("resetSelectionOnContextMenu",!0),n("lineWiseCopyCut",!0),n("pasteLinesPerSelection",!0),n("selectionsMayTouch",!1),n("readOnly",!1,function(r,i){i=="nocursor"&&(Ur(r),r.display.input.blur()),r.display.input.readOnlyChanged(i)}),n("screenReaderLabel",null,function(r,i){i=i===""?null:i,r.display.input.screenReaderLabelChanged(i)}),n("disableInput",!1,function(r,i){i||r.display.input.reset()},!0),n("dragDrop",!0,Hu),n("allowDropFileTypes",null),n("cursorBlinkRate",530),n("cursorScrollMargin",0),n("cursorHeight",1,vn,!0),n("singleCursorHeightPerLine",!0,vn,!0),n("workTime",100),n("workDelay",100),n("flattenSpans",!0,Sn,!0),n("addModeClass",!1,Sn,!0),n("pollInterval",100),n("undoDepth",200,function(r,i){return r.doc.history.undoDepth=i}),n("historyEventDelay",1250),n("viewportMargin",10,function(r){return r.refresh()},!0),n("maxHighlightLength",1e4,Sn,!0),n("moveInputWithCursor",!0,function(r,i){i||r.display.input.resetPosition()}),n("tabindex",null,function(r,i){return r.display.input.getField().tabIndex=i||""}),n("autofocus",null),n("direction","ltr",function(r,i){return r.doc.setDirection(i)},!0),n("phrases",null)}function Hu(e,t,n){var r=n&&n!=tn;if(!t!=!r){var i=e.display.dragFunctions,o=t?Se:ht;o(e.display.scroller,"dragstart",i.start),o(e.display.scroller,"dragenter",i.enter),o(e.display.scroller,"dragover",i.over),o(e.display.scroller,"dragleave",i.leave),o(e.display.scroller,"drop",i.drop)}}function _u(e){e.options.lineWrapping?(j(e.display.wrapper,"CodeMirror-wrap"),e.display.sizer.style.minWidth="",e.display.sizerWidth=null):(V(e.display.wrapper,"CodeMirror-wrap"),Ci(e)),Bi(e),St(e),gn(e),setTimeout(function(){return Xr(e)},100)}function Ge(e,t){var n=this;if(!(this instanceof Ge))return new Ge(e,t);this.options=t=t?Me(t):{},Me(aa,t,!1);var r=t.value;typeof r=="string"?r=new Lt(r,t.mode,null,t.lineSeparator,t.direction):t.mode&&(r.modeOption=t.mode),this.doc=r;var i=new Ge.inputStyles[t.inputStyle](this),o=this.display=new eu(e,r,i,t);o.wrapper.CodeMirror=this,la(this),t.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap"),ul(this),this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,delayingBlurEvent:!1,focused:!1,suppressEdits:!1,pasteIncoming:-1,cutIncoming:-1,selectingText:!1,draggingText:!1,highlight:new Ce,keySeq:null,specialChars:null},t.autofocus&&!N&&o.input.focus(),k&&I<11&&setTimeout(function(){return n.display.input.reset(!0)},20),qu(this),yu(),Mr(this),this.curOp.forceUpdate=!0,yl(this,r),t.autofocus&&!N||this.hasFocus()?setTimeout(function(){n.hasFocus()&&!n.state.focused&&_i(n)},20):Ur(this);for(var l in di)di.hasOwnProperty(l)&&di[l](this,t[l],tn);dl(this),t.finishInit&&t.finishInit(this);for(var a=0;a400}Se(t.scroller,"touchstart",function(s){if(!Qe(e,s)&&!o(s)&&!lo(e,s)){t.input.ensurePolled(),clearTimeout(n);var u=+new Date;t.activeTouch={start:u,moved:!1,prev:u-r.end<=300?r:null},s.touches.length==1&&(t.activeTouch.left=s.touches[0].pageX,t.activeTouch.top=s.touches[0].pageY)}}),Se(t.scroller,"touchmove",function(){t.activeTouch&&(t.activeTouch.moved=!0)}),Se(t.scroller,"touchend",function(s){var u=t.activeTouch;if(u&&!tr(t,s)&&u.left!=null&&!u.moved&&new Date-u.start<300){var h=e.coordsChar(t.activeTouch,"page"),x;!u.prev||l(u,u.prev)?x=new He(h,h):!u.prev.prev||l(u,u.prev.prev)?x=e.findWordAt(h):x=new He(B(h.line,0),Ae(e.doc,B(h.line+1,0))),e.setSelection(x.anchor,x.head),e.focus(),pt(s)}i()}),Se(t.scroller,"touchcancel",i),Se(t.scroller,"scroll",function(){t.scroller.clientHeight&&(xn(e,t.scroller.scrollTop),Cr(e,t.scroller.scrollLeft,!0),Ye(e,"scroll",e))}),Se(t.scroller,"mousewheel",function(s){return gl(e,s)}),Se(t.scroller,"DOMMouseScroll",function(s){return gl(e,s)}),Se(t.wrapper,"scroll",function(){return t.wrapper.scrollTop=t.wrapper.scrollLeft=0}),t.dragFunctions={enter:function(s){Qe(e,s)||ar(s)},over:function(s){Qe(e,s)||(xu(e,s),ar(s))},start:function(s){return mu(e,s)},drop:lt(e,vu),leave:function(s){Qe(e,s)||jl(e)}};var a=t.input.getField();Se(a,"keyup",function(s){return ea.call(e,s)}),Se(a,"keydown",lt(e,Vl)),Se(a,"keypress",lt(e,ta)),Se(a,"focus",function(s){return _i(e,s)}),Se(a,"blur",function(s){return Ur(e,s)})}var ao=[];Ge.defineInitHook=function(e){return ao.push(e)};function zn(e,t,n,r){var i=e.doc,o;n==null&&(n="add"),n=="smart"&&(i.mode.indent?o=fn(e,t).state:n="prev");var l=e.options.tabSize,a=ye(i,t),s=Fe(a.text,null,l);a.stateAfter&&(a.stateAfter=null);var u=a.text.match(/^\s*/)[0],h;if(!r&&!/\S/.test(a.text))h=0,n="not";else if(n=="smart"&&(h=i.mode.indent(o,a.text.slice(u.length),a.text),h==qe||h>150)){if(!r)return;n="prev"}n=="prev"?t>i.first?h=Fe(ye(i,t-1).text,null,l):h=0:n=="add"?h=s+e.options.indentUnit:n=="subtract"?h=s-e.options.indentUnit:typeof n=="number"&&(h=s+n),h=Math.max(0,h);var x="",D=0;if(e.options.indentWithTabs)for(var L=Math.floor(h/l);L;--L)D+=l,x+=" ";if(Dl,s=zt(t),u=null;if(a&&r.ranges.length>1)if(Ut&&Ut.text.join(` +`)==t){if(r.ranges.length%Ut.text.length==0){u=[];for(var h=0;h=0;D--){var L=r.ranges[D],H=L.from(),Z=L.to();L.empty()&&(n&&n>0?H=B(H.line,H.ch-n):e.state.overwrite&&!a?Z=B(Z.line,Math.min(ye(o,Z.line).text.length,Z.ch+we(s).length)):a&&Ut&&Ut.lineWise&&Ut.text.join(` +`)==s.join(` +`)&&(H=Z=B(H.line,0)));var ie={from:H,to:Z,text:u?u[D%u.length]:s,origin:i||(a?"paste":e.state.cutIncoming>l?"cut":"+input")};Jr(e.doc,ie),ot(e,"inputRead",e,ie)}t&&!a&&ua(e,t),Gr(e),e.curOp.updateInput<2&&(e.curOp.updateInput=x),e.curOp.typing=!0,e.state.pasteIncoming=e.state.cutIncoming=-1}function sa(e,t){var n=e.clipboardData&&e.clipboardData.getData("Text");if(n)return e.preventDefault(),!t.isReadOnly()&&!t.options.disableInput&&t.hasFocus()&&At(t,function(){return so(t,n,0,null,"paste")}),!0}function ua(e,t){if(!(!e.options.electricChars||!e.options.smartIndent))for(var n=e.doc.sel,r=n.ranges.length-1;r>=0;r--){var i=n.ranges[r];if(!(i.head.ch>100||r&&n.ranges[r-1].head.line==i.head.line)){var o=e.getModeAt(i.head),l=!1;if(o.electricChars){for(var a=0;a-1){l=zn(e,i.head.line,"smart");break}}else o.electricInput&&o.electricInput.test(ye(e.doc,i.head.line).text.slice(0,i.head.ch))&&(l=zn(e,i.head.line,"smart"));l&&ot(e,"electricInput",e,i.head.line)}}}function fa(e){for(var t=[],n=[],r=0;ro&&(zn(this,a.head.line,r,!0),o=a.head.line,l==this.doc.sel.primIndex&&Gr(this));else{var s=a.from(),u=a.to(),h=Math.max(o,s.line);o=Math.min(this.lastLine(),u.line-(u.ch?0:1))+1;for(var x=h;x0&&eo(this.doc,l,new He(s,D[l].to()),$e)}}}),getTokenAt:function(r,i){return ko(this,r,i)},getLineTokens:function(r,i){return ko(this,B(r),i,!0)},getTokenTypeAt:function(r){r=Ae(this.doc,r);var i=xo(this,ye(this.doc,r.line)),o=0,l=(i.length-1)/2,a=r.ch,s;if(a==0)s=i[2];else for(;;){var u=o+l>>1;if((u?i[u*2-1]:0)>=a)l=u;else if(i[u*2+1]s&&(r=s,l=!0),a=ye(this.doc,r)}else a=r;return Yn(this,a,{top:0,left:0},i||"page",o||l).top+(l?this.doc.height-er(a):0)},defaultTextHeight:function(){return jr(this.display)},defaultCharWidth:function(){return Kr(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(r,i,o,l,a){var s=this.display;r=jt(this,Ae(this.doc,r));var u=r.bottom,h=r.left;if(i.style.position="absolute",i.setAttribute("cm-ignore-events","true"),this.display.input.setUneditable(i),s.sizer.appendChild(i),l=="over")u=r.top;else if(l=="above"||l=="near"){var x=Math.max(s.wrapper.clientHeight,this.doc.height),D=Math.max(s.sizer.clientWidth,s.lineSpace.clientWidth);(l=="above"||r.bottom+i.offsetHeight>x)&&r.top>i.offsetHeight?u=r.top-i.offsetHeight:r.bottom+i.offsetHeight<=x&&(u=r.bottom),h+i.offsetWidth>D&&(h=D-i.offsetWidth)}i.style.top=u+"px",i.style.left=i.style.right="",a=="right"?(h=s.sizer.clientWidth-i.offsetWidth,i.style.right="0px"):(a=="left"?h=0:a=="middle"&&(h=(s.sizer.clientWidth-i.offsetWidth)/2),i.style.left=h+"px"),o&&Hs(this,{left:h,top:u,right:h+i.offsetWidth,bottom:u+i.offsetHeight})},triggerOnKeyDown:yt(Vl),triggerOnKeyPress:yt(ta),triggerOnKeyUp:ea,triggerOnMouseDown:yt(ra),execCommand:function(r){if(En.hasOwnProperty(r))return En[r].call(null,this)},triggerElectric:yt(function(r){ua(this,r)}),findPosH:function(r,i,o,l){var a=1;i<0&&(a=-1,i=-i);for(var s=Ae(this.doc,r),u=0;u0&&h(o.charAt(l-1));)--l;for(;a.5||this.options.lineWrapping)&&Bi(this),Ye(this,"refresh",this)}),swapDoc:yt(function(r){var i=this.doc;return i.cm=null,this.state.selectingText&&this.state.selectingText(),yl(this,r),gn(this),this.display.input.reset(),mn(this,r.scrollLeft,r.scrollTop),this.curOp.forceScroll=!0,ot(this,"swapDoc",this,i),i}),phrase:function(r){var i=this.options.phrases;return i&&Object.prototype.hasOwnProperty.call(i,r)?i[r]:r},getInputField:function(){return this.display.input.getField()},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}},Bt(e),e.registerHelper=function(r,i,o){n.hasOwnProperty(r)||(n[r]=e[r]={_global:[]}),n[r][i]=o},e.registerGlobalHelper=function(r,i,o,l){e.registerHelper(r,i,l),n[r]._global.push({pred:o,val:l})}}function fo(e,t,n,r,i){var o=t,l=n,a=ye(e,t.line),s=i&&e.direction=="rtl"?-n:n;function u(){var he=t.line+s;return he=e.first+e.size?!1:(t=new B(he,t.ch,t.sticky),a=ye(e,he))}function h(he){var se;if(r=="codepoint"){var ge=a.text.charCodeAt(t.ch+(n>0?0:-1));if(isNaN(ge))se=null;else{var Le=n>0?ge>=55296&&ge<56320:ge>=56320&&ge<57343;se=new B(t.line,Math.max(0,Math.min(a.text.length,t.ch+n*(Le?2:1))),-n)}}else i?se=Lu(e.cm,a,t,n):se=ro(a,t,n);if(se==null)if(!he&&u())t=no(i,e.cm,a,t.line,s);else return!1;else t=se;return!0}if(r=="char"||r=="codepoint")h();else if(r=="column")h(!0);else if(r=="word"||r=="group")for(var x=null,D=r=="group",L=e.cm&&e.cm.getHelper(t,"wordChars"),H=!0;!(n<0&&!h(!H));H=!1){var Z=a.text.charAt(t.ch)||` +`,ie=De(Z,L)?"w":D&&Z==` +`?"n":!D||/\s/.test(Z)?null:"p";if(D&&!H&&!ie&&(ie="s"),x&&x!=ie){n<0&&(n=1,h(),t.sticky="after");break}if(ie&&(x=ie),n>0&&!h(!H))break}var ae=ai(e,t,o,l,!0);return We(o,ae)&&(ae.hitSide=!0),ae}function da(e,t,n,r){var i=e.doc,o=t.left,l;if(r=="page"){var a=Math.min(e.display.wrapper.clientHeight,le(e).innerHeight||i(e).documentElement.clientHeight),s=Math.max(a-.5*jr(e.display),3);l=(n>0?t.bottom:t.top)+n*s}else r=="line"&&(l=n>0?t.bottom+3:t.top-3);for(var u;u=Oi(e,o,l),!!u.outside;){if(n<0?l<=0:l>=i.height){u.hitSide=!0;break}l+=n*5}return u}var je=function(e){this.cm=e,this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null,this.polling=new Ce,this.composing=null,this.gracePeriod=!1,this.readDOMTimeout=null};je.prototype.init=function(e){var t=this,n=this,r=n.cm,i=n.div=e.lineDiv;i.contentEditable=!0,uo(i,r.options.spellcheck,r.options.autocorrect,r.options.autocapitalize);function o(a){for(var s=a.target;s;s=s.parentNode){if(s==i)return!0;if(/\bCodeMirror-(?:line)?widget\b/.test(s.className))break}return!1}Se(i,"paste",function(a){!o(a)||Qe(r,a)||sa(a,r)||I<=11&&setTimeout(lt(r,function(){return t.updateFromDOM()}),20)}),Se(i,"compositionstart",function(a){t.composing={data:a.data,done:!1}}),Se(i,"compositionupdate",function(a){t.composing||(t.composing={data:a.data,done:!1})}),Se(i,"compositionend",function(a){t.composing&&(a.data!=t.composing.data&&t.readFromDOMSoon(),t.composing.done=!0)}),Se(i,"touchstart",function(){return n.forceCompositionEnd()}),Se(i,"input",function(){t.composing||t.readFromDOMSoon()});function l(a){if(!(!o(a)||Qe(r,a))){if(r.somethingSelected())hi({lineWise:!1,text:r.getSelections()}),a.type=="cut"&&r.replaceSelection("",null,"cut");else if(r.options.lineWiseCopyCut){var s=fa(r);hi({lineWise:!0,text:s.text}),a.type=="cut"&&r.operation(function(){r.setSelections(s.ranges,0,$e),r.replaceSelection("",null,"cut")})}else return;if(a.clipboardData){a.clipboardData.clearData();var u=Ut.text.join(` +`);if(a.clipboardData.setData("Text",u),a.clipboardData.getData("Text")==u){a.preventDefault();return}}var h=ca(),x=h.firstChild;uo(x),r.display.lineSpace.insertBefore(h,r.display.lineSpace.firstChild),x.value=Ut.text.join(` +`);var D=y(Te(i));v(x),setTimeout(function(){r.display.lineSpace.removeChild(h),D.focus(),D==i&&n.showPrimarySelection()},50)}}Se(i,"copy",l),Se(i,"cut",l)},je.prototype.screenReaderLabelChanged=function(e){e?this.div.setAttribute("aria-label",e):this.div.removeAttribute("aria-label")},je.prototype.prepareSelection=function(){var e=rl(this.cm,!1);return e.focus=y(Te(this.div))==this.div,e},je.prototype.showSelection=function(e,t){!e||!this.cm.display.view.length||((e.focus||t)&&this.showPrimarySelection(),this.showMultipleSelections(e))},je.prototype.getSelection=function(){return this.cm.display.wrapper.ownerDocument.getSelection()},je.prototype.showPrimarySelection=function(){var e=this.getSelection(),t=this.cm,n=t.doc.sel.primary(),r=n.from(),i=n.to();if(t.display.viewTo==t.display.viewFrom||r.line>=t.display.viewTo||i.line=t.display.viewFrom&&ha(t,r)||{node:a[0].measure.map[2],offset:0},u=i.linee.firstLine()&&(r=B(r.line-1,ye(e.doc,r.line-1).length)),i.ch==ye(e.doc,i.line).text.length&&i.linet.viewTo-1)return!1;var o,l,a;r.line==t.viewFrom||(o=Tr(e,r.line))==0?(l=f(t.view[0].line),a=t.view[0].node):(l=f(t.view[o].line),a=t.view[o-1].node.nextSibling);var s=Tr(e,i.line),u,h;if(s==t.view.length-1?(u=t.viewTo-1,h=t.lineDiv.lastChild):(u=f(t.view[s+1].line)-1,h=t.view[s+1].node.previousSibling),!a)return!1;for(var x=e.doc.splitLines(Uu(e,a,h,l,u)),D=$t(e.doc,B(l,0),B(u,ye(e.doc,u).text.length));x.length>1&&D.length>1;)if(we(x)==we(D))x.pop(),D.pop(),u--;else if(x[0]==D[0])x.shift(),D.shift(),l++;else break;for(var L=0,H=0,Z=x[0],ie=D[0],ae=Math.min(Z.length,ie.length);Lr.ch&&he.charCodeAt(he.length-H-1)==se.charCodeAt(se.length-H-1);)L--,H++;x[x.length-1]=he.slice(0,he.length-H).replace(/^\u200b+/,""),x[0]=x[0].slice(L).replace(/\u200b+$/,"");var Le=B(l,L),ke=B(u,D.length?we(D).length-H:0);if(x.length>1||x[0]||ce(Le,ke))return Zr(e.doc,x,Le,ke,"+input"),!0},je.prototype.ensurePolled=function(){this.forceCompositionEnd()},je.prototype.reset=function(){this.forceCompositionEnd()},je.prototype.forceCompositionEnd=function(){this.composing&&(clearTimeout(this.readDOMTimeout),this.composing=null,this.updateFromDOM(),this.div.blur(),this.div.focus())},je.prototype.readFromDOMSoon=function(){var e=this;this.readDOMTimeout==null&&(this.readDOMTimeout=setTimeout(function(){if(e.readDOMTimeout=null,e.composing)if(e.composing.done)e.composing=null;else return;e.updateFromDOM()},80))},je.prototype.updateFromDOM=function(){var e=this;(this.cm.isReadOnly()||!this.pollContent())&&At(this.cm,function(){return St(e.cm)})},je.prototype.setUneditable=function(e){e.contentEditable="false"},je.prototype.onKeyPress=function(e){e.charCode==0||this.composing||(e.preventDefault(),this.cm.isReadOnly()||lt(this.cm,so)(this.cm,String.fromCharCode(e.charCode==null?e.keyCode:e.charCode),0))},je.prototype.readOnlyChanged=function(e){this.div.contentEditable=String(e!="nocursor")},je.prototype.onContextMenu=function(){},je.prototype.resetPosition=function(){},je.prototype.needsContentAttribute=!0;function ha(e,t){var n=Ai(e,t.line);if(!n||n.hidden)return null;var r=ye(e.doc,t.line),i=qo(n,r,t.line),o=Re(r,e.doc.direction),l="left";if(o){var a=lr(o,t.ch);l=a%2?"right":"left"}var s=Uo(i.map,t.ch,l);return s.offset=s.collapse=="right"?s.end:s.start,s}function Ku(e){for(var t=e;t;t=t.parentNode)if(/CodeMirror-gutter-wrapper/.test(t.className))return!0;return!1}function rn(e,t){return t&&(e.bad=!0),e}function Uu(e,t,n,r,i){var o="",l=!1,a=e.doc.lineSeparator(),s=!1;function u(L){return function(H){return H.id==L}}function h(){l&&(o+=a,s&&(o+=a),l=s=!1)}function x(L){L&&(h(),o+=L)}function D(L){if(L.nodeType==1){var H=L.getAttribute("cm-text");if(H){x(H);return}var Z=L.getAttribute("cm-marker"),ie;if(Z){var ae=e.findMarks(B(r,0),B(i+1,0),u(+Z));ae.length&&(ie=ae[0].find(0))&&x($t(e.doc,ie.from,ie.to).join(a));return}if(L.getAttribute("contenteditable")=="false")return;var he=/^(pre|div|p|li|table|br)$/i.test(L.nodeName);if(!/^br$/i.test(L.nodeName)&&L.textContent.length==0)return;he&&h();for(var se=0;se=9&&t.hasSelection&&(t.hasSelection=null),n.poll()}),Se(i,"paste",function(l){Qe(r,l)||sa(l,r)||(r.state.pasteIncoming=+new Date,n.fastPoll())});function o(l){if(!Qe(r,l)){if(r.somethingSelected())hi({lineWise:!1,text:r.getSelections()});else if(r.options.lineWiseCopyCut){var a=fa(r);hi({lineWise:!0,text:a.text}),l.type=="cut"?r.setSelections(a.ranges,null,$e):(n.prevInput="",i.value=a.text.join(` +`),v(i))}else return;l.type=="cut"&&(r.state.cutIncoming=+new Date)}}Se(i,"cut",o),Se(i,"copy",o),Se(e.scroller,"paste",function(l){if(!(tr(e,l)||Qe(r,l))){if(!i.dispatchEvent){r.state.pasteIncoming=+new Date,n.focus();return}var a=new Event("paste");a.clipboardData=l.clipboardData,i.dispatchEvent(a)}}),Se(e.lineSpace,"selectstart",function(l){tr(e,l)||pt(l)}),Se(i,"compositionstart",function(){var l=r.getCursor("from");n.composing&&n.composing.range.clear(),n.composing={start:l,range:r.markText(l,r.getCursor("to"),{className:"CodeMirror-composing"})}}),Se(i,"compositionend",function(){n.composing&&(n.poll(),n.composing.range.clear(),n.composing=null)})},Ve.prototype.createField=function(e){this.wrapper=ca(),this.textarea=this.wrapper.firstChild;var t=this.cm.options;uo(this.textarea,t.spellcheck,t.autocorrect,t.autocapitalize)},Ve.prototype.screenReaderLabelChanged=function(e){e?this.textarea.setAttribute("aria-label",e):this.textarea.removeAttribute("aria-label")},Ve.prototype.prepareSelection=function(){var e=this.cm,t=e.display,n=e.doc,r=rl(e);if(e.options.moveInputWithCursor){var i=jt(e,n.sel.primary().head,"div"),o=t.wrapper.getBoundingClientRect(),l=t.lineDiv.getBoundingClientRect();r.teTop=Math.max(0,Math.min(t.wrapper.clientHeight-10,i.top+l.top-o.top)),r.teLeft=Math.max(0,Math.min(t.wrapper.clientWidth-10,i.left+l.left-o.left))}return r},Ve.prototype.showSelection=function(e){var t=this.cm,n=t.display;G(n.cursorDiv,e.cursors),G(n.selectionDiv,e.selection),e.teTop!=null&&(this.wrapper.style.top=e.teTop+"px",this.wrapper.style.left=e.teLeft+"px")},Ve.prototype.reset=function(e){if(!(this.contextMenuPending||this.composing&&e)){var t=this.cm;if(this.resetting=!0,t.somethingSelected()){this.prevInput="";var n=t.getSelection();this.textarea.value=n,t.state.focused&&v(this.textarea),k&&I>=9&&(this.hasSelection=n)}else e||(this.prevInput=this.textarea.value="",k&&I>=9&&(this.hasSelection=null));this.resetting=!1}},Ve.prototype.getField=function(){return this.textarea},Ve.prototype.supportsTouch=function(){return!1},Ve.prototype.focus=function(){if(this.cm.options.readOnly!="nocursor"&&(!N||y(Te(this.textarea))!=this.textarea))try{this.textarea.focus()}catch{}},Ve.prototype.blur=function(){this.textarea.blur()},Ve.prototype.resetPosition=function(){this.wrapper.style.top=this.wrapper.style.left=0},Ve.prototype.receivedFocus=function(){this.slowPoll()},Ve.prototype.slowPoll=function(){var e=this;this.pollingFast||this.polling.set(this.cm.options.pollInterval,function(){e.poll(),e.cm.state.focused&&e.slowPoll()})},Ve.prototype.fastPoll=function(){var e=!1,t=this;t.pollingFast=!0;function n(){var r=t.poll();!r&&!e?(e=!0,t.polling.set(60,n)):(t.pollingFast=!1,t.slowPoll())}t.polling.set(20,n)},Ve.prototype.poll=function(){var e=this,t=this.cm,n=this.textarea,r=this.prevInput;if(this.contextMenuPending||this.resetting||!t.state.focused||ur(n)&&!r&&!this.composing||t.isReadOnly()||t.options.disableInput||t.state.keySeq)return!1;var i=n.value;if(i==r&&!t.somethingSelected())return!1;if(k&&I>=9&&this.hasSelection===i||z&&/[\uf700-\uf7ff]/.test(i))return t.display.input.reset(),!1;if(t.doc.sel==t.display.selForContextMenu){var o=i.charCodeAt(0);if(o==8203&&!r&&(r="​"),o==8666)return this.reset(),this.cm.execCommand("undo")}for(var l=0,a=Math.min(r.length,i.length);l1e3||i.indexOf(` +`)>-1?n.value=e.prevInput="":e.prevInput=i,e.composing&&(e.composing.range.clear(),e.composing.range=t.markText(e.composing.start,t.getCursor("to"),{className:"CodeMirror-composing"}))}),!0},Ve.prototype.ensurePolled=function(){this.pollingFast&&this.poll()&&(this.pollingFast=!1)},Ve.prototype.onKeyPress=function(){k&&I>=9&&(this.hasSelection=null),this.fastPoll()},Ve.prototype.onContextMenu=function(e){var t=this,n=t.cm,r=n.display,i=t.textarea;t.contextMenuPending&&t.contextMenuPending();var o=Lr(n,e),l=r.scroller.scrollTop;if(!o||A)return;var a=n.options.resetSelectionOnContextMenu;a&&n.doc.sel.contains(o)==-1&<(n,gt)(n.doc,pr(o),$e);var s=i.style.cssText,u=t.wrapper.style.cssText,h=t.wrapper.offsetParent.getBoundingClientRect();t.wrapper.style.cssText="position: static",i.style.cssText=`position: absolute; width: 30px; height: 30px; + top: `+(e.clientY-h.top-5)+"px; left: "+(e.clientX-h.left-5)+`px; + z-index: 1000; background: `+(k?"rgba(255, 255, 255, .05)":"transparent")+`; + outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);`;var x;Y&&(x=i.ownerDocument.defaultView.scrollY),r.input.focus(),Y&&i.ownerDocument.defaultView.scrollTo(null,x),r.input.reset(),n.somethingSelected()||(i.value=t.prevInput=" "),t.contextMenuPending=L,r.selForContextMenu=n.doc.sel,clearTimeout(r.detectingSelectAll);function D(){if(i.selectionStart!=null){var Z=n.somethingSelected(),ie="​"+(Z?i.value:"");i.value="⇚",i.value=ie,t.prevInput=Z?"":"​",i.selectionStart=1,i.selectionEnd=ie.length,r.selForContextMenu=n.doc.sel}}function L(){if(t.contextMenuPending==L&&(t.contextMenuPending=!1,t.wrapper.style.cssText=u,i.style.cssText=s,k&&I<9&&r.scrollbars.setScrollTop(r.scroller.scrollTop=l),i.selectionStart!=null)){(!k||k&&I<9)&&D();var Z=0,ie=function(){r.selForContextMenu==n.doc.sel&&i.selectionStart==0&&i.selectionEnd>0&&t.prevInput=="​"?lt(n,El)(n):Z++<10?r.detectingSelectAll=setTimeout(ie,500):(r.selForContextMenu=null,r.input.reset())};r.detectingSelectAll=setTimeout(ie,200)}}if(k&&I>=9&&D(),J){ar(e);var H=function(){ht(window,"mouseup",H),setTimeout(L,20)};Se(window,"mouseup",H)}else setTimeout(L,50)},Ve.prototype.readOnlyChanged=function(e){e||this.reset(),this.textarea.disabled=e=="nocursor",this.textarea.readOnly=!!e},Ve.prototype.setUneditable=function(){},Ve.prototype.needsContentAttribute=!1;function Xu(e,t){if(t=t?Me(t):{},t.value=e.value,!t.tabindex&&e.tabIndex&&(t.tabindex=e.tabIndex),!t.placeholder&&e.placeholder&&(t.placeholder=e.placeholder),t.autofocus==null){var n=y(Te(e));t.autofocus=n==e||e.getAttribute("autofocus")!=null&&n==document.body}function r(){e.value=a.getValue()}var i;if(e.form&&(Se(e.form,"submit",r),!t.leaveSubmitMethodAlone)){var o=e.form;i=o.submit;try{var l=o.submit=function(){r(),o.submit=i,o.submit(),o.submit=l}}catch{}}t.finishInit=function(s){s.save=r,s.getTextArea=function(){return e},s.toTextArea=function(){s.toTextArea=isNaN,r(),e.parentNode.removeChild(s.getWrapperElement()),e.style.display="",e.form&&(ht(e.form,"submit",r),!t.leaveSubmitMethodAlone&&typeof e.form.submit=="function"&&(e.form.submit=i))}},e.style.display="none";var a=Ge(function(s){return e.parentNode.insertBefore(s,e.nextSibling)},t);return a}function Yu(e){e.off=ht,e.on=Se,e.wheelEventPixels=tu,e.Doc=Lt,e.splitLines=zt,e.countColumn=Fe,e.findColumn=_e,e.isWordChar=me,e.Pass=qe,e.signal=Ye,e.Line=Hr,e.changeEnd=gr,e.scrollbarModel=sl,e.Pos=B,e.cmpPos=ce,e.modes=Pr,e.mimeModes=Ht,e.resolveMode=Ir,e.getMode=zr,e.modeExtensions=fr,e.extendMode=Br,e.copyState=Gt,e.startState=Rr,e.innerMode=sn,e.commands=En,e.keyMap=nr,e.keyName=Yl,e.isModifierKey=Gl,e.lookupKey=Vr,e.normalizeKeyMap=Su,e.StringStream=Je,e.SharedTextMarker=Fn,e.TextMarker=mr,e.LineWidget=Mn,e.e_preventDefault=pt,e.e_stopPropagation=Er,e.e_stop=ar,e.addClass=j,e.contains=g,e.rmClass=V,e.keyNames=xr}Wu(Ge),ju(Ge);var Qu="iter insert remove copy getEditor constructor".split(" ");for(var gi in Lt.prototype)Lt.prototype.hasOwnProperty(gi)&&ve(Qu,gi)<0&&(Ge.prototype[gi]=(function(e){return function(){return e.apply(this.doc,arguments)}})(Lt.prototype[gi]));return Bt(Lt),Ge.inputStyles={textarea:Ve,contenteditable:je},Ge.defineMode=function(e){!Ge.defaults.mode&&e!="null"&&(Ge.defaults.mode=e),_t.apply(this,arguments)},Ge.defineMIME=kr,Ge.defineMode("null",function(){return{token:function(e){return e.skipToEnd()}}}),Ge.defineMIME("text/plain","null"),Ge.defineExtension=function(e,t){Ge.prototype[e]=t},Ge.defineDocExtension=function(e,t){Lt.prototype[e]=t},Ge.fromTextArea=Xu,Yu(Ge),Ge.version="5.65.18",Ge}))})(vi)),vi.exports}var $u=mt();const df=Ju($u);var ga={exports:{}},va;function Xa(){return va||(va=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineMode("css",function(J,P){var V=P.inline;P.propertyKeywords||(P=b.resolveMode("text/css"));var F=J.indentUnit,G=P.tokenHooks,c=P.documentTypes||{},T=P.mediaTypes||{},C=P.mediaFeatures||{},g=P.mediaValueKeywords||{},y=P.propertyKeywords||{},j=P.nonStandardPropertyKeywords||{},de=P.fontProperties||{},v=P.counterDescriptors||{},d=P.colorKeywords||{},fe=P.valueKeywords||{},Te=P.allowNested,le=P.lineComment,xe=P.supportsAtComponent===!0,Me=J.highlightNonStandardPropertyKeywords!==!1,Fe,Ce;function ve(E,ee){return Fe=ee,E}function Oe(E,ee){var K=E.next();if(G[K]){var ze=G[K](E,ee);if(ze!==!1)return ze}if(K=="@")return E.eatWhile(/[\w\\\-]/),ve("def",E.current());if(K=="="||(K=="~"||K=="|")&&E.eat("="))return ve(null,"compare");if(K=='"'||K=="'")return ee.tokenize=qe(K),ee.tokenize(E,ee);if(K=="#")return E.eatWhile(/[\w\\\-]/),ve("atom","hash");if(K=="!")return E.match(/^\s*\w*/),ve("keyword","important");if(/\d/.test(K)||K=="."&&E.eat(/\d/))return E.eatWhile(/[\w.%]/),ve("number","unit");if(K==="-"){if(/[\d.]/.test(E.peek()))return E.eatWhile(/[\w.%]/),ve("number","unit");if(E.match(/^-[\w\\\-]*/))return E.eatWhile(/[\w\\\-]/),E.match(/^\s*:/,!1)?ve("variable-2","variable-definition"):ve("variable-2","variable");if(E.match(/^\w+-/))return ve("meta","meta")}else return/[,+>*\/]/.test(K)?ve(null,"select-op"):K=="."&&E.match(/^-?[_a-z][_a-z0-9-]*/i)?ve("qualifier","qualifier"):/[:;{}\[\]\(\)]/.test(K)?ve(null,K):E.match(/^[\w-.]+(?=\()/)?(/^(url(-prefix)?|domain|regexp)$/i.test(E.current())&&(ee.tokenize=$e),ve("variable callee","variable")):/[\w\\\-]/.test(K)?(E.eatWhile(/[\w\\\-]/),ve("property","word")):ve(null,null)}function qe(E){return function(ee,K){for(var ze=!1,me;(me=ee.next())!=null;){if(me==E&&!ze){E==")"&&ee.backUp(1);break}ze=!ze&&me=="\\"}return(me==E||!ze&&E!=")")&&(K.tokenize=null),ve("string","string")}}function $e(E,ee){return E.next(),E.match(/^\s*[\"\')]/,!1)?ee.tokenize=null:ee.tokenize=qe(")"),ve(null,"(")}function dt(E,ee,K){this.type=E,this.indent=ee,this.prev=K}function Pe(E,ee,K,ze){return E.context=new dt(K,ee.indentation()+(ze===!1?0:F),E.context),K}function _e(E){return E.context.prev&&(E.context=E.context.prev),E.context.type}function Ue(E,ee,K){return Ie[K.context.type](E,ee,K)}function et(E,ee,K,ze){for(var me=ze||1;me>0;me--)K.context=K.context.prev;return Ue(E,ee,K)}function we(E){var ee=E.current().toLowerCase();fe.hasOwnProperty(ee)?Ce="atom":d.hasOwnProperty(ee)?Ce="keyword":Ce="variable"}var Ie={};return Ie.top=function(E,ee,K){if(E=="{")return Pe(K,ee,"block");if(E=="}"&&K.context.prev)return _e(K);if(xe&&/@component/i.test(E))return Pe(K,ee,"atComponentBlock");if(/^@(-moz-)?document$/i.test(E))return Pe(K,ee,"documentTypes");if(/^@(media|supports|(-moz-)?document|import)$/i.test(E))return Pe(K,ee,"atBlock");if(/^@(font-face|counter-style)/i.test(E))return K.stateArg=E,"restricted_atBlock_before";if(/^@(-(moz|ms|o|webkit)-)?keyframes$/i.test(E))return"keyframes";if(E&&E.charAt(0)=="@")return Pe(K,ee,"at");if(E=="hash")Ce="builtin";else if(E=="word")Ce="tag";else{if(E=="variable-definition")return"maybeprop";if(E=="interpolation")return Pe(K,ee,"interpolation");if(E==":")return"pseudo";if(Te&&E=="(")return Pe(K,ee,"parens")}return K.context.type},Ie.block=function(E,ee,K){if(E=="word"){var ze=ee.current().toLowerCase();return y.hasOwnProperty(ze)?(Ce="property","maybeprop"):j.hasOwnProperty(ze)?(Ce=Me?"string-2":"property","maybeprop"):Te?(Ce=ee.match(/^\s*:(?:\s|$)/,!1)?"property":"tag","block"):(Ce+=" error","maybeprop")}else return E=="meta"?"block":!Te&&(E=="hash"||E=="qualifier")?(Ce="error","block"):Ie.top(E,ee,K)},Ie.maybeprop=function(E,ee,K){return E==":"?Pe(K,ee,"prop"):Ue(E,ee,K)},Ie.prop=function(E,ee,K){if(E==";")return _e(K);if(E=="{"&&Te)return Pe(K,ee,"propBlock");if(E=="}"||E=="{")return et(E,ee,K);if(E=="(")return Pe(K,ee,"parens");if(E=="hash"&&!/^#([0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/.test(ee.current()))Ce+=" error";else if(E=="word")we(ee);else if(E=="interpolation")return Pe(K,ee,"interpolation");return"prop"},Ie.propBlock=function(E,ee,K){return E=="}"?_e(K):E=="word"?(Ce="property","maybeprop"):K.context.type},Ie.parens=function(E,ee,K){return E=="{"||E=="}"?et(E,ee,K):E==")"?_e(K):E=="("?Pe(K,ee,"parens"):E=="interpolation"?Pe(K,ee,"interpolation"):(E=="word"&&we(ee),"parens")},Ie.pseudo=function(E,ee,K){return E=="meta"?"pseudo":E=="word"?(Ce="variable-3",K.context.type):Ue(E,ee,K)},Ie.documentTypes=function(E,ee,K){return E=="word"&&c.hasOwnProperty(ee.current())?(Ce="tag",K.context.type):Ie.atBlock(E,ee,K)},Ie.atBlock=function(E,ee,K){if(E=="(")return Pe(K,ee,"atBlock_parens");if(E=="}"||E==";")return et(E,ee,K);if(E=="{")return _e(K)&&Pe(K,ee,Te?"block":"top");if(E=="interpolation")return Pe(K,ee,"interpolation");if(E=="word"){var ze=ee.current().toLowerCase();ze=="only"||ze=="not"||ze=="and"||ze=="or"?Ce="keyword":T.hasOwnProperty(ze)?Ce="attribute":C.hasOwnProperty(ze)?Ce="property":g.hasOwnProperty(ze)?Ce="keyword":y.hasOwnProperty(ze)?Ce="property":j.hasOwnProperty(ze)?Ce=Me?"string-2":"property":fe.hasOwnProperty(ze)?Ce="atom":d.hasOwnProperty(ze)?Ce="keyword":Ce="error"}return K.context.type},Ie.atComponentBlock=function(E,ee,K){return E=="}"?et(E,ee,K):E=="{"?_e(K)&&Pe(K,ee,Te?"block":"top",!1):(E=="word"&&(Ce="error"),K.context.type)},Ie.atBlock_parens=function(E,ee,K){return E==")"?_e(K):E=="{"||E=="}"?et(E,ee,K,2):Ie.atBlock(E,ee,K)},Ie.restricted_atBlock_before=function(E,ee,K){return E=="{"?Pe(K,ee,"restricted_atBlock"):E=="word"&&K.stateArg=="@counter-style"?(Ce="variable","restricted_atBlock_before"):Ue(E,ee,K)},Ie.restricted_atBlock=function(E,ee,K){return E=="}"?(K.stateArg=null,_e(K)):E=="word"?(K.stateArg=="@font-face"&&!de.hasOwnProperty(ee.current().toLowerCase())||K.stateArg=="@counter-style"&&!v.hasOwnProperty(ee.current().toLowerCase())?Ce="error":Ce="property","maybeprop"):"restricted_atBlock"},Ie.keyframes=function(E,ee,K){return E=="word"?(Ce="variable","keyframes"):E=="{"?Pe(K,ee,"top"):Ue(E,ee,K)},Ie.at=function(E,ee,K){return E==";"?_e(K):E=="{"||E=="}"?et(E,ee,K):(E=="word"?Ce="tag":E=="hash"&&(Ce="builtin"),"at")},Ie.interpolation=function(E,ee,K){return E=="}"?_e(K):E=="{"||E==";"?et(E,ee,K):(E=="word"?Ce="variable":E!="variable"&&E!="("&&E!=")"&&(Ce="error"),"interpolation")},{startState:function(E){return{tokenize:null,state:V?"block":"top",stateArg:null,context:new dt(V?"block":"top",E||0,null)}},token:function(E,ee){if(!ee.tokenize&&E.eatSpace())return null;var K=(ee.tokenize||Oe)(E,ee);return K&&typeof K=="object"&&(Fe=K[1],K=K[0]),Ce=K,Fe!="comment"&&(ee.state=Ie[ee.state](Fe,E,ee)),Ce},indent:function(E,ee){var K=E.context,ze=ee&&ee.charAt(0),me=K.indent;return K.type=="prop"&&(ze=="}"||ze==")")&&(K=K.prev),K.prev&&(ze=="}"&&(K.type=="block"||K.type=="top"||K.type=="interpolation"||K.type=="restricted_atBlock")?(K=K.prev,me=K.indent):(ze==")"&&(K.type=="parens"||K.type=="atBlock_parens")||ze=="{"&&(K.type=="at"||K.type=="atBlock"))&&(me=Math.max(0,K.indent-F))),me},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * ",lineComment:le,fold:"brace"}});function pe(J){for(var P={},V=0;V")):null:c.match("--")?C(ue("comment","-->")):c.match("DOCTYPE",!0,!0)?(c.eatWhile(/[\w\._\-]/),C(O(1))):null:c.eat("?")?(c.eatWhile(/[\w\._\-]/),T.tokenize=ue("meta","?>"),"meta"):(ne=c.eat("/")?"closeTag":"openTag",T.tokenize=A,"tag bracket");if(g=="&"){var y;return c.eat("#")?c.eat("x")?y=c.eatWhile(/[a-fA-F\d]/)&&c.eat(";"):y=c.eatWhile(/[\d]/)&&c.eat(";"):y=c.eatWhile(/[\w\.\-:]/)&&c.eat(";"),y?"atom":"error"}else return c.eatWhile(/[^&<]/),null}R.isInText=!0;function A(c,T){var C=c.next();if(C==">"||C=="/"&&c.eat(">"))return T.tokenize=R,ne=C==">"?"endTag":"selfcloseTag","tag bracket";if(C=="=")return ne="equals",null;if(C=="<"){T.tokenize=R,T.state=X,T.tagName=T.tagStart=null;var g=T.tokenize(c,T);return g?g+" tag error":"tag error"}else return/[\'\"]/.test(C)?(T.tokenize=$(C),T.stringStartCol=c.column(),T.tokenize(c,T)):(c.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/),"word")}function $(c){var T=function(C,g){for(;!C.eol();)if(C.next()==c){g.tokenize=A;break}return"string"};return T.isInAttribute=!0,T}function ue(c,T){return function(C,g){for(;!C.eol();){if(C.match(T)){g.tokenize=R;break}C.next()}return c}}function O(c){return function(T,C){for(var g;(g=T.next())!=null;){if(g=="<")return C.tokenize=O(c+1),C.tokenize(T,C);if(g==">")if(c==1){C.tokenize=R;break}else return C.tokenize=O(c-1),C.tokenize(T,C)}return"meta"}}function w(c){return c&&c.toLowerCase()}function M(c,T,C){this.prev=c.context,this.tagName=T||"",this.indent=c.indented,this.startOfLine=C,(k.doNotIndent.hasOwnProperty(T)||c.context&&c.context.noIndent)&&(this.noIndent=!0)}function N(c){c.context&&(c.context=c.context.prev)}function z(c,T){for(var C;;){if(!c.context||(C=c.context.tagName,!k.contextGrabbers.hasOwnProperty(w(C))||!k.contextGrabbers[w(C)].hasOwnProperty(w(T))))return;N(c)}}function X(c,T,C){return c=="openTag"?(C.tagStart=T.column(),q):c=="closeTag"?p:X}function q(c,T,C){return c=="word"?(C.tagName=T.current(),S="tag",P):k.allowMissingTagName&&c=="endTag"?(S="tag bracket",P(c,T,C)):(S="error",q)}function p(c,T,C){if(c=="word"){var g=T.current();return C.context&&C.context.tagName!=g&&k.implicitlyClosed.hasOwnProperty(w(C.context.tagName))&&N(C),C.context&&C.context.tagName==g||k.matchClosing===!1?(S="tag",W):(S="tag error",J)}else return k.allowMissingTagName&&c=="endTag"?(S="tag bracket",W(c,T,C)):(S="error",J)}function W(c,T,C){return c!="endTag"?(S="error",W):(N(C),X)}function J(c,T,C){return S="error",W(c,T,C)}function P(c,T,C){if(c=="word")return S="attribute",V;if(c=="endTag"||c=="selfcloseTag"){var g=C.tagName,y=C.tagStart;return C.tagName=C.tagStart=null,c=="selfcloseTag"||k.autoSelfClosers.hasOwnProperty(w(g))?z(C,g):(z(C,g),C.context=new M(C,g,y==C.indented)),X}return S="error",P}function V(c,T,C){return c=="equals"?F:(k.allowMissing||(S="error"),P(c,T,C))}function F(c,T,C){return c=="string"?G:c=="word"&&k.allowUnquoted?(S="string",P):(S="error",P(c,T,C))}function G(c,T,C){return c=="string"?G:P(c,T,C)}return{startState:function(c){var T={tokenize:R,state:X,indented:c||0,tagName:null,tagStart:null,context:null};return c!=null&&(T.baseIndent=c),T},token:function(c,T){if(!T.tagName&&c.sol()&&(T.indented=c.indentation()),c.eatSpace())return null;ne=null;var C=T.tokenize(c,T);return(C||ne)&&C!="comment"&&(S=null,T.state=T.state(ne||C,c,T),S&&(C=S=="error"?C+" error":S)),C},indent:function(c,T,C){var g=c.context;if(c.tokenize.isInAttribute)return c.tagStart==c.indented?c.stringStartCol+1:c.indented+Q;if(g&&g.noIndent)return b.Pass;if(c.tokenize!=A&&c.tokenize!=R)return C?C.match(/^(\s*)/)[0].length:0;if(c.tagName)return k.multilineTagIndentPastTag!==!1?c.tagStart+c.tagName.length+2:c.tagStart+Q*(k.multilineTagIndentFactor||1);if(k.alignCDATA&&/$/,blockCommentStart:"",configuration:k.htmlMode?"html":"xml",helperType:k.htmlMode?"html":"xml",skipAttribute:function(c){c.state==F&&(c.state=P)},xmlCurrentTag:function(c){return c.tagName?{name:c.tagName,close:c.type=="closeTag"}:null},xmlCurrentContext:function(c){for(var T=[],C=c.context;C;C=C.prev)T.push(C.tagName);return T.reverse()}}}),b.defineMIME("text/xml","xml"),b.defineMIME("application/xml","xml"),b.mimeModes.hasOwnProperty("text/html")||b.defineMIME("text/html",{name:"xml",htmlMode:!0})})})()),xa.exports}var ba={exports:{}},ka;function Qa(){return ka||(ka=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineMode("javascript",function(pe,_){var te=pe.indentUnit,oe=_.statementIndent,Q=_.jsonld,k=_.json||Q,I=_.trackScope!==!1,Y=_.typescript,ne=_.wordCharacters||/[\w$\xa1-\uffff]/,S=(function(){function f(it){return{type:it,style:"keyword"}}var m=f("keyword a"),U=f("keyword b"),re=f("keyword c"),B=f("keyword d"),ce=f("operator"),We={type:"atom",style:"atom"};return{if:f("if"),while:m,with:m,else:U,do:U,try:U,finally:U,return:B,break:B,continue:B,new:f("new"),delete:re,void:re,throw:re,debugger:f("debugger"),var:f("var"),const:f("var"),let:f("var"),function:f("function"),catch:f("catch"),for:f("for"),switch:f("switch"),case:f("case"),default:f("default"),in:ce,typeof:ce,instanceof:ce,true:We,false:We,null:We,undefined:We,NaN:We,Infinity:We,this:f("this"),class:f("class"),super:f("atom"),yield:re,export:f("export"),import:f("import"),extends:re,await:re}})(),R=/[+\-*&%=<>!?|~^@]/,A=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function $(f){for(var m=!1,U,re=!1;(U=f.next())!=null;){if(!m){if(U=="/"&&!re)return;U=="["?re=!0:re&&U=="]"&&(re=!1)}m=!m&&U=="\\"}}var ue,O;function w(f,m,U){return ue=f,O=U,m}function M(f,m){var U=f.next();if(U=='"'||U=="'")return m.tokenize=N(U),m.tokenize(f,m);if(U=="."&&f.match(/^\d[\d_]*(?:[eE][+\-]?[\d_]+)?/))return w("number","number");if(U=="."&&f.match(".."))return w("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test(U))return w(U);if(U=="="&&f.eat(">"))return w("=>","operator");if(U=="0"&&f.match(/^(?:x[\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/))return w("number","number");if(/\d/.test(U))return f.match(/^[\d_]*(?:n|(?:\.[\d_]*)?(?:[eE][+\-]?[\d_]+)?)?/),w("number","number");if(U=="/")return f.eat("*")?(m.tokenize=z,z(f,m)):f.eat("/")?(f.skipToEnd(),w("comment","comment")):Et(f,m,1)?($(f),f.match(/^\b(([gimyus])(?![gimyus]*\2))+\b/),w("regexp","string-2")):(f.eat("="),w("operator","operator",f.current()));if(U=="`")return m.tokenize=X,X(f,m);if(U=="#"&&f.peek()=="!")return f.skipToEnd(),w("meta","meta");if(U=="#"&&f.eatWhile(ne))return w("variable","property");if(U=="<"&&f.match("!--")||U=="-"&&f.match("->")&&!/\S/.test(f.string.slice(0,f.start)))return f.skipToEnd(),w("comment","comment");if(R.test(U))return(U!=">"||!m.lexical||m.lexical.type!=">")&&(f.eat("=")?(U=="!"||U=="=")&&f.eat("="):/[<>*+\-|&?]/.test(U)&&(f.eat(U),U==">"&&f.eat(U))),U=="?"&&f.eat(".")?w("."):w("operator","operator",f.current());if(ne.test(U)){f.eatWhile(ne);var re=f.current();if(m.lastType!="."){if(S.propertyIsEnumerable(re)){var B=S[re];return w(B.type,B.style,re)}if(re=="async"&&f.match(/^(\s|\/\*([^*]|\*(?!\/))*?\*\/)*[\[\(\w]/,!1))return w("async","keyword",re)}return w("variable","variable",re)}}function N(f){return function(m,U){var re=!1,B;if(Q&&m.peek()=="@"&&m.match(A))return U.tokenize=M,w("jsonld-keyword","meta");for(;(B=m.next())!=null&&!(B==f&&!re);)re=!re&&B=="\\";return re||(U.tokenize=M),w("string","string")}}function z(f,m){for(var U=!1,re;re=f.next();){if(re=="/"&&U){m.tokenize=M;break}U=re=="*"}return w("comment","comment")}function X(f,m){for(var U=!1,re;(re=f.next())!=null;){if(!U&&(re=="`"||re=="$"&&f.eat("{"))){m.tokenize=M;break}U=!U&&re=="\\"}return w("quasi","string-2",f.current())}var q="([{}])";function p(f,m){m.fatArrowAt&&(m.fatArrowAt=null);var U=f.string.indexOf("=>",f.start);if(!(U<0)){if(Y){var re=/:\s*(?:\w+(?:<[^>]*>|\[\])?|\{[^}]*\})\s*$/.exec(f.string.slice(f.start,U));re&&(U=re.index)}for(var B=0,ce=!1,We=U-1;We>=0;--We){var it=f.string.charAt(We),wt=q.indexOf(it);if(wt>=0&&wt<3){if(!B){++We;break}if(--B==0){it=="("&&(ce=!0);break}}else if(wt>=3&&wt<6)++B;else if(ne.test(it))ce=!0;else if(/["'\/`]/.test(it))for(;;--We){if(We==0)return;var Wr=f.string.charAt(We-1);if(Wr==it&&f.string.charAt(We-2)!="\\"){We--;break}}else if(ce&&!B){++We;break}}ce&&!B&&(m.fatArrowAt=We)}}var W={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,this:!0,import:!0,"jsonld-keyword":!0};function J(f,m,U,re,B,ce){this.indented=f,this.column=m,this.type=U,this.prev=B,this.info=ce,re!=null&&(this.align=re)}function P(f,m){if(!I)return!1;for(var U=f.localVars;U;U=U.next)if(U.name==m)return!0;for(var re=f.context;re;re=re.prev)for(var U=re.vars;U;U=U.next)if(U.name==m)return!0}function V(f,m,U,re,B){var ce=f.cc;for(F.state=f,F.stream=B,F.marked=null,F.cc=ce,F.style=m,f.lexical.hasOwnProperty("align")||(f.lexical.align=!0);;){var We=ce.length?ce.pop():k?ve:Fe;if(We(U,re)){for(;ce.length&&ce[ce.length-1].lex;)ce.pop()();return F.marked?F.marked:U=="variable"&&P(f,re)?"variable-2":m}}}var F={state:null,marked:null,cc:null};function G(){for(var f=arguments.length-1;f>=0;f--)F.cc.push(arguments[f])}function c(){return G.apply(null,arguments),!0}function T(f,m){for(var U=m;U;U=U.next)if(U.name==f)return!0;return!1}function C(f){var m=F.state;if(F.marked="def",!!I){if(m.context){if(m.lexical.info=="var"&&m.context&&m.context.block){var U=g(f,m.context);if(U!=null){m.context=U;return}}else if(!T(f,m.localVars)){m.localVars=new de(f,m.localVars);return}}_.globalVars&&!T(f,m.globalVars)&&(m.globalVars=new de(f,m.globalVars))}}function g(f,m){if(m)if(m.block){var U=g(f,m.prev);return U?U==m.prev?m:new j(U,m.vars,!0):null}else return T(f,m.vars)?m:new j(m.prev,new de(f,m.vars),!1);else return null}function y(f){return f=="public"||f=="private"||f=="protected"||f=="abstract"||f=="readonly"}function j(f,m,U){this.prev=f,this.vars=m,this.block=U}function de(f,m){this.name=f,this.next=m}var v=new de("this",new de("arguments",null));function d(){F.state.context=new j(F.state.context,F.state.localVars,!1),F.state.localVars=v}function fe(){F.state.context=new j(F.state.context,F.state.localVars,!0),F.state.localVars=null}d.lex=fe.lex=!0;function Te(){F.state.localVars=F.state.context.vars,F.state.context=F.state.context.prev}Te.lex=!0;function le(f,m){var U=function(){var re=F.state,B=re.indented;if(re.lexical.type=="stat")B=re.lexical.indented;else for(var ce=re.lexical;ce&&ce.type==")"&&ce.align;ce=ce.prev)B=ce.indented;re.lexical=new J(B,F.stream.column(),f,null,re.lexical,m)};return U.lex=!0,U}function xe(){var f=F.state;f.lexical.prev&&(f.lexical.type==")"&&(f.indented=f.lexical.indented),f.lexical=f.lexical.prev)}xe.lex=!0;function Me(f){function m(U){return U==f?c():f==";"||U=="}"||U==")"||U=="]"?G():c(m)}return m}function Fe(f,m){return f=="var"?c(le("vardef",m),Er,Me(";"),xe):f=="keyword a"?c(le("form"),qe,Fe,xe):f=="keyword b"?c(le("form"),Fe,xe):f=="keyword d"?F.stream.match(/^\s*$/,!1)?c():c(le("stat"),dt,Me(";"),xe):f=="debugger"?c(Me(";")):f=="{"?c(le("}"),fe,Pt,xe,Te):f==";"?c():f=="if"?(F.state.lexical.info=="else"&&F.state.cc[F.state.cc.length-1]==xe&&F.state.cc.pop()(),c(le("form"),qe,Fe,xe,Or)):f=="function"?c(zt):f=="for"?c(le("form"),fe,Rn,Fe,Te,xe):f=="class"||Y&&m=="interface"?(F.marked="keyword",c(le("form",f=="class"?f:m),Pr,xe)):f=="variable"?Y&&m=="declare"?(F.marked="keyword",c(Fe)):Y&&(m=="module"||m=="enum"||m=="type")&&F.stream.match(/^\s*\w/,!1)?(F.marked="keyword",m=="enum"?c(ye):m=="type"?c(Wn,Me("operator"),Re,Me(";")):c(le("form"),kt,Me("{"),le("}"),Pt,xe,xe)):Y&&m=="namespace"?(F.marked="keyword",c(le("form"),ve,Fe,xe)):Y&&m=="abstract"?(F.marked="keyword",c(Fe)):c(le("stat"),ze):f=="switch"?c(le("form"),qe,Me("{"),le("}","switch"),fe,Pt,xe,xe,Te):f=="case"?c(ve,Me(":")):f=="default"?c(Me(":")):f=="catch"?c(le("form"),d,Ce,Fe,xe,Te):f=="export"?c(le("stat"),Ir,xe):f=="import"?c(le("stat"),fr,xe):f=="async"?c(Fe):m=="@"?c(ve,Fe):G(le("stat"),ve,Me(";"),xe)}function Ce(f){if(f=="(")return c(Wt,Me(")"))}function ve(f,m){return $e(f,m,!1)}function Oe(f,m){return $e(f,m,!0)}function qe(f){return f!="("?G():c(le(")"),dt,Me(")"),xe)}function $e(f,m,U){if(F.state.fatArrowAt==F.stream.start){var re=U?Ie:we;if(f=="(")return c(d,le(")"),Ne(Wt,")"),xe,Me("=>"),re,Te);if(f=="variable")return G(d,kt,Me("=>"),re,Te)}var B=U?_e:Pe;return W.hasOwnProperty(f)?c(B):f=="function"?c(zt,B):f=="class"||Y&&m=="interface"?(F.marked="keyword",c(le("form"),yi,xe)):f=="keyword c"||f=="async"?c(U?Oe:ve):f=="("?c(le(")"),dt,Me(")"),xe,B):f=="operator"||f=="spread"?c(U?Oe:ve):f=="["?c(le("]"),Je,xe,B):f=="{"?Mt(De,"}",null,B):f=="quasi"?G(Ue,B):f=="new"?c(E(U)):c()}function dt(f){return f.match(/[;\}\)\],]/)?G():G(ve)}function Pe(f,m){return f==","?c(dt):_e(f,m,!1)}function _e(f,m,U){var re=U==!1?Pe:_e,B=U==!1?ve:Oe;if(f=="=>")return c(d,U?Ie:we,Te);if(f=="operator")return/\+\+|--/.test(m)||Y&&m=="!"?c(re):Y&&m=="<"&&F.stream.match(/^([^<>]|<[^<>]*>)*>\s*\(/,!1)?c(le(">"),Ne(Re,">"),xe,re):m=="?"?c(ve,Me(":"),B):c(B);if(f=="quasi")return G(Ue,re);if(f!=";"){if(f=="(")return Mt(Oe,")","call",re);if(f==".")return c(me,re);if(f=="[")return c(le("]"),dt,Me("]"),xe,re);if(Y&&m=="as")return F.marked="keyword",c(Re,re);if(f=="regexp")return F.state.lastType=F.marked="operator",F.stream.backUp(F.stream.pos-F.stream.start-1),c(B)}}function Ue(f,m){return f!="quasi"?G():m.slice(m.length-2)!="${"?c(Ue):c(dt,et)}function et(f){if(f=="}")return F.marked="string-2",F.state.tokenize=X,c(Ue)}function we(f){return p(F.stream,F.state),G(f=="{"?Fe:ve)}function Ie(f){return p(F.stream,F.state),G(f=="{"?Fe:Oe)}function E(f){return function(m){return m=="."?c(f?K:ee):m=="variable"&&Y?c(Ft,f?_e:Pe):G(f?Oe:ve)}}function ee(f,m){if(m=="target")return F.marked="keyword",c(Pe)}function K(f,m){if(m=="target")return F.marked="keyword",c(_e)}function ze(f){return f==":"?c(xe,Fe):G(Pe,Me(";"),xe)}function me(f){if(f=="variable")return F.marked="property",c()}function De(f,m){if(f=="async")return F.marked="property",c(De);if(f=="variable"||F.style=="keyword"){if(F.marked="property",m=="get"||m=="set")return c(be);var U;return Y&&F.state.fatArrowAt==F.stream.start&&(U=F.stream.match(/^\s*:\s*/,!1))&&(F.state.fatArrowAt=F.stream.pos+U[0].length),c(Be)}else{if(f=="number"||f=="string")return F.marked=Q?"property":F.style+" property",c(Be);if(f=="jsonld-keyword")return c(Be);if(Y&&y(m))return F.marked="keyword",c(De);if(f=="[")return c(ve,or,Me("]"),Be);if(f=="spread")return c(Oe,Be);if(m=="*")return F.marked="keyword",c(De);if(f==":")return G(Be)}}function be(f){return f!="variable"?G(Be):(F.marked="property",c(zt))}function Be(f){if(f==":")return c(Oe);if(f=="(")return G(zt)}function Ne(f,m,U){function re(B,ce){if(U?U.indexOf(B)>-1:B==","){var We=F.state.lexical;return We.info=="call"&&(We.pos=(We.pos||0)+1),c(function(it,wt){return it==m||wt==m?G():G(f)},re)}return B==m||ce==m?c():U&&U.indexOf(";")>-1?G(f):c(Me(m))}return function(B,ce){return B==m||ce==m?c():G(f,re)}}function Mt(f,m,U){for(var re=3;re"),Re);if(f=="quasi")return G(ht,It)}function Bn(f){if(f=="=>")return c(Re)}function Se(f){return f.match(/[\}\)\]]/)?c():f==","||f==";"?c(Se):G(Zt,Se)}function Zt(f,m){if(f=="variable"||F.style=="keyword")return F.marked="property",c(Zt);if(m=="?"||f=="number"||f=="string")return c(Zt);if(f==":")return c(Re);if(f=="[")return c(Me("variable"),br,Me("]"),Zt);if(f=="(")return G(ur,Zt);if(!f.match(/[;\}\)\],]/))return c()}function ht(f,m){return f!="quasi"?G():m.slice(m.length-2)!="${"?c(ht):c(Re,Ye)}function Ye(f){if(f=="}")return F.marked="string-2",F.state.tokenize=X,c(ht)}function Qe(f,m){return f=="variable"&&F.stream.match(/^\s*[?:]/,!1)||m=="?"?c(Qe):f==":"?c(Re):f=="spread"?c(Qe):G(Re)}function It(f,m){if(m=="<")return c(le(">"),Ne(Re,">"),xe,It);if(m=="|"||f=="."||m=="&")return c(Re);if(f=="[")return c(Re,Me("]"),It);if(m=="extends"||m=="implements")return F.marked="keyword",c(Re);if(m=="?")return c(Re,Me(":"),Re)}function Ft(f,m){if(m=="<")return c(le(">"),Ne(Re,">"),xe,It)}function Bt(){return G(Re,pt)}function pt(f,m){if(m=="=")return c(Re)}function Er(f,m){return m=="enum"?(F.marked="keyword",c(ye)):G(kt,or,Rt,xi)}function kt(f,m){if(Y&&y(m))return F.marked="keyword",c(kt);if(f=="variable")return C(m),c();if(f=="spread")return c(kt);if(f=="[")return Mt(ln,"]");if(f=="{")return Mt(ar,"}")}function ar(f,m){return f=="variable"&&!F.stream.match(/^\s*:/,!1)?(C(m),c(Rt)):(f=="variable"&&(F.marked="property"),f=="spread"?c(kt):f=="}"?G():f=="["?c(ve,Me("]"),Me(":"),ar):c(Me(":"),kt,Rt))}function ln(){return G(kt,Rt)}function Rt(f,m){if(m=="=")return c(Oe)}function xi(f){if(f==",")return c(Er)}function Or(f,m){if(f=="keyword b"&&m=="else")return c(le("form","else"),Fe,xe)}function Rn(f,m){if(m=="await")return c(Rn);if(f=="(")return c(le(")"),an,xe)}function an(f){return f=="var"?c(Er,sr):f=="variable"?c(sr):G(sr)}function sr(f,m){return f==")"?c():f==";"?c(sr):m=="in"||m=="of"?(F.marked="keyword",c(ve,sr)):G(ve,sr)}function zt(f,m){if(m=="*")return F.marked="keyword",c(zt);if(f=="variable")return C(m),c(zt);if(f=="(")return c(d,le(")"),Ne(Wt,")"),xe,lr,Fe,Te);if(Y&&m=="<")return c(le(">"),Ne(Bt,">"),xe,zt)}function ur(f,m){if(m=="*")return F.marked="keyword",c(ur);if(f=="variable")return C(m),c(ur);if(f=="(")return c(d,le(")"),Ne(Wt,")"),xe,lr,Te);if(Y&&m=="<")return c(le(">"),Ne(Bt,">"),xe,ur)}function Wn(f,m){if(f=="keyword"||f=="variable")return F.marked="type",c(Wn);if(m=="<")return c(le(">"),Ne(Bt,">"),xe)}function Wt(f,m){return m=="@"&&c(ve,Wt),f=="spread"?c(Wt):Y&&y(m)?(F.marked="keyword",c(Wt)):Y&&f=="this"?c(or,Rt):G(kt,or,Rt)}function yi(f,m){return f=="variable"?Pr(f,m):Ht(f,m)}function Pr(f,m){if(f=="variable")return C(m),c(Ht)}function Ht(f,m){if(m=="<")return c(le(">"),Ne(Bt,">"),xe,Ht);if(m=="extends"||m=="implements"||Y&&f==",")return m=="implements"&&(F.marked="keyword"),c(Y?Re:ve,Ht);if(f=="{")return c(le("}"),_t,xe)}function _t(f,m){if(f=="async"||f=="variable"&&(m=="static"||m=="get"||m=="set"||Y&&y(m))&&F.stream.match(/^\s+#?[\w$\xa1-\uffff]/,!1))return F.marked="keyword",c(_t);if(f=="variable"||F.style=="keyword")return F.marked="property",c(kr,_t);if(f=="number"||f=="string")return c(kr,_t);if(f=="[")return c(ve,or,Me("]"),kr,_t);if(m=="*")return F.marked="keyword",c(_t);if(Y&&f=="(")return G(ur,_t);if(f==";"||f==",")return c(_t);if(f=="}")return c();if(m=="@")return c(ve,_t)}function kr(f,m){if(m=="!"||m=="?")return c(kr);if(f==":")return c(Re,Rt);if(m=="=")return c(Oe);var U=F.state.lexical.prev,re=U&&U.info=="interface";return G(re?ur:zt)}function Ir(f,m){return m=="*"?(F.marked="keyword",c(Rr,Me(";"))):m=="default"?(F.marked="keyword",c(ve,Me(";"))):f=="{"?c(Ne(zr,"}"),Rr,Me(";")):G(Fe)}function zr(f,m){if(m=="as")return F.marked="keyword",c(Me("variable"));if(f=="variable")return G(Oe,zr)}function fr(f){return f=="string"?c():f=="("?G(ve):f=="."?G(Pe):G(Br,Gt,Rr)}function Br(f,m){return f=="{"?Mt(Br,"}"):(f=="variable"&&C(m),m=="*"&&(F.marked="keyword"),c(sn))}function Gt(f){if(f==",")return c(Br,Gt)}function sn(f,m){if(m=="as")return F.marked="keyword",c(Br)}function Rr(f,m){if(m=="from")return F.marked="keyword",c(ve)}function Je(f){return f=="]"?c():G(Ne(Oe,"]"))}function ye(){return G(le("form"),kt,Me("{"),le("}"),Ne($t,"}"),xe,xe)}function $t(){return G(kt,Rt)}function un(f,m){return f.lastType=="operator"||f.lastType==","||R.test(m.charAt(0))||/[,.]/.test(m.charAt(0))}function Et(f,m,U){return m.tokenize==M&&/^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\[{}\(,;:]|=>)$/.test(m.lastType)||m.lastType=="quasi"&&/\{\s*$/.test(f.string.slice(0,f.pos-(U||0)))}return{startState:function(f){var m={tokenize:M,lastType:"sof",cc:[],lexical:new J((f||0)-te,0,"block",!1),localVars:_.localVars,context:_.localVars&&new j(null,null,!1),indented:f||0};return _.globalVars&&typeof _.globalVars=="object"&&(m.globalVars=_.globalVars),m},token:function(f,m){if(f.sol()&&(m.lexical.hasOwnProperty("align")||(m.lexical.align=!1),m.indented=f.indentation(),p(f,m)),m.tokenize!=z&&f.eatSpace())return null;var U=m.tokenize(f,m);return ue=="comment"?U:(m.lastType=ue=="operator"&&(O=="++"||O=="--")?"incdec":ue,V(m,U,ue,O,f))},indent:function(f,m){if(f.tokenize==z||f.tokenize==X)return b.Pass;if(f.tokenize!=M)return 0;var U=m&&m.charAt(0),re=f.lexical,B;if(!/^\s*else\b/.test(m))for(var ce=f.cc.length-1;ce>=0;--ce){var We=f.cc[ce];if(We==xe)re=re.prev;else if(We!=Or&&We!=Te)break}for(;(re.type=="stat"||re.type=="form")&&(U=="}"||(B=f.cc[f.cc.length-1])&&(B==Pe||B==_e)&&!/^[,\.=+\-*:?[\(]/.test(m));)re=re.prev;oe&&re.type==")"&&re.prev.type=="stat"&&(re=re.prev);var it=re.type,wt=U==it;return it=="vardef"?re.indented+(f.lastType=="operator"||f.lastType==","?re.info.length+1:0):it=="form"&&U=="{"?re.indented:it=="form"?re.indented+te:it=="stat"?re.indented+(un(f,m)?oe||te:0):re.info=="switch"&&!wt&&_.doubleIndentSwitch!=!1?re.indented+(/^(?:case|default)\b/.test(m)?te:2*te):re.align?re.column+(wt?0:1):re.indented+(wt?0:te)},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:k?null:"/*",blockCommentEnd:k?null:"*/",blockCommentContinue:k?null:" * ",lineComment:k?null:"//",fold:"brace",closeBrackets:"()[]{}''\"\"``",helperType:k?"json":"javascript",jsonldMode:Q,jsonMode:k,expressionAllowed:Et,skipExpression:function(f){V(f,"atom","atom","true",new b.StringStream("",2,null))}}}),b.registerHelper("wordChars","javascript",/[\w$]/),b.defineMIME("text/javascript","javascript"),b.defineMIME("text/ecmascript","javascript"),b.defineMIME("application/javascript","javascript"),b.defineMIME("application/x-javascript","javascript"),b.defineMIME("application/ecmascript","javascript"),b.defineMIME("application/json",{name:"javascript",json:!0}),b.defineMIME("application/x-json",{name:"javascript",json:!0}),b.defineMIME("application/manifest+json",{name:"javascript",json:!0}),b.defineMIME("application/ld+json",{name:"javascript",jsonld:!0}),b.defineMIME("text/typescript",{name:"javascript",typescript:!0}),b.defineMIME("application/typescript",{name:"javascript",typescript:!0})})})()),ba.exports}var wa;function Vu(){return wa||(wa=1,(function(ct,xt){(function(b){b(mt(),Ya(),Qa(),Xa())})(function(b){var pe={script:[["lang",/(javascript|babel)/i,"javascript"],["type",/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i,"javascript"],["type",/./,"text/plain"],[null,null,"javascript"]],style:[["lang",/^css$/i,"css"],["type",/^(text\/)?(x-)?(stylesheet|css)$/i,"css"],["type",/./,"text/plain"],[null,null,"css"]]};function _(ne,S,R){var A=ne.current(),$=A.search(S);return $>-1?ne.backUp(A.length-$):A.match(/<\/?$/)&&(ne.backUp(A.length),ne.match(S,!1)||ne.match(A)),R}var te={};function oe(ne){var S=te[ne];return S||(te[ne]=new RegExp("\\s+"+ne+`\\s*=\\s*('|")?([^'"]+)('|")?\\s*`))}function Q(ne,S){var R=ne.match(oe(S));return R?/^\s*(.*?)\s*$/.exec(R[2])[1]:""}function k(ne,S){return new RegExp((S?"^":"")+"","i")}function I(ne,S){for(var R in ne)for(var A=S[R]||(S[R]=[]),$=ne[R],ue=$.length-1;ue>=0;ue--)A.unshift($[ue])}function Y(ne,S){for(var R=0;R=0;O--)A.script.unshift(["type",ue[O].matches,ue[O].mode]);function w(M,N){var z=R.token(M,N.htmlState),X=/\btag\b/.test(z),q;if(X&&!/[<>\s\/]/.test(M.current())&&(q=N.htmlState.tagName&&N.htmlState.tagName.toLowerCase())&&A.hasOwnProperty(q))N.inTag=q+" ";else if(N.inTag&&X&&/>$/.test(M.current())){var p=/^([\S]+) (.*)/.exec(N.inTag);N.inTag=null;var W=M.current()==">"&&Y(A[p[1]],p[2]),J=b.getMode(ne,W),P=k(p[1],!0),V=k(p[1],!1);N.token=function(F,G){return F.match(P,!1)?(G.token=w,G.localState=G.localMode=null,null):_(F,V,G.localMode.token(F,G.localState))},N.localMode=J,N.localState=b.startState(J,R.indent(N.htmlState,"",""))}else N.inTag&&(N.inTag+=M.current(),M.eol()&&(N.inTag+=" "));return z}return{startState:function(){var M=b.startState(R);return{token:w,inTag:null,localMode:null,localState:null,htmlState:M}},copyState:function(M){var N;return M.localState&&(N=b.copyState(M.localMode,M.localState)),{token:M.token,inTag:M.inTag,localMode:M.localMode,localState:N,htmlState:b.copyState(R,M.htmlState)}},token:function(M,N){return N.token(M,N)},indent:function(M,N,z){return!M.localMode||/^\s*<\//.test(N)?R.indent(M.htmlState,N,z):M.localMode.indent?M.localMode.indent(M.localState,N,z):b.Pass},innerMode:function(M){return{state:M.localState||M.htmlState,mode:M.localMode||R}}}},"xml","javascript","css"),b.defineMIME("text/html","htmlmixed")})})()),ma.exports}Vu();Qa();var Sa={exports:{}},La;function ef(){return La||(La=1,(function(ct,xt){(function(b){b(mt())})(function(b){function pe(I){return new RegExp("^(("+I.join(")|(")+"))\\b")}var _=pe(["and","or","not","is"]),te=["as","assert","break","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","lambda","pass","raise","return","try","while","with","yield","in","False","True"],oe=["abs","all","any","bin","bool","bytearray","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip","__import__","NotImplemented","Ellipsis","__debug__"];b.registerHelper("hintWords","python",te.concat(oe).concat(["exec","print"]));function Q(I){return I.scopes[I.scopes.length-1]}b.defineMode("python",function(I,Y){for(var ne="error",S=Y.delimiters||Y.singleDelimiters||/^[\(\)\[\]\{\}@,:`=;\.\\]/,R=[Y.singleOperators,Y.doubleOperators,Y.doubleDelimiters,Y.tripleDelimiters,Y.operators||/^([-+*/%\/&|^]=?|[<>=]+|\/\/=?|\*\*=?|!=|[~!@]|\.\.\.)/],A=0;Ay?P(C):j0&&F(T,C)&&(de+=" "+ne),de}}return p(T,C)}function p(T,C,g){if(T.eatSpace())return null;if(!g&&T.match(/^#.*/))return"comment";if(T.match(/^[0-9\.]/,!1)){var y=!1;if(T.match(/^[\d_]*\.\d+(e[\+\-]?\d+)?/i)&&(y=!0),T.match(/^[\d_]+\.\d*/)&&(y=!0),T.match(/^\.\d+/)&&(y=!0),y)return T.eat(/J/i),"number";var j=!1;if(T.match(/^0x[0-9a-f_]+/i)&&(j=!0),T.match(/^0b[01_]+/i)&&(j=!0),T.match(/^0o[0-7_]+/i)&&(j=!0),T.match(/^[1-9][\d_]*(e[\+\-]?[\d_]+)?/)&&(T.eat(/J/i),j=!0),T.match(/^0(?![\dx])/i)&&(j=!0),j)return T.eat(/L/i),"number"}if(T.match(N)){var de=T.current().toLowerCase().indexOf("f")!==-1;return de?(C.tokenize=W(T.current(),C.tokenize),C.tokenize(T,C)):(C.tokenize=J(T.current(),C.tokenize),C.tokenize(T,C))}for(var v=0;v=0;)T=T.substr(1);var g=T.length==1,y="string";function j(v){return function(d,fe){var Te=p(d,fe,!0);return Te=="punctuation"&&(d.current()=="{"?fe.tokenize=j(v+1):d.current()=="}"&&(v>1?fe.tokenize=j(v-1):fe.tokenize=de)),Te}}function de(v,d){for(;!v.eol();)if(v.eatWhile(/[^'"\{\}\\]/),v.eat("\\")){if(v.next(),g&&v.eol())return y}else{if(v.match(T))return d.tokenize=C,y;if(v.match("{{"))return y;if(v.match("{",!1))return d.tokenize=j(0),v.current()?y:d.tokenize(v,d);if(v.match("}}"))return y;if(v.match("}"))return ne;v.eat(/['"]/)}if(g){if(Y.singleLineStringErrors)return ne;d.tokenize=C}return y}return de.isString=!0,de}function J(T,C){for(;"rubf".indexOf(T.charAt(0).toLowerCase())>=0;)T=T.substr(1);var g=T.length==1,y="string";function j(de,v){for(;!de.eol();)if(de.eatWhile(/[^'"\\]/),de.eat("\\")){if(de.next(),g&&de.eol())return y}else{if(de.match(T))return v.tokenize=C,y;de.eat(/['"]/)}if(g){if(Y.singleLineStringErrors)return ne;v.tokenize=C}return y}return j.isString=!0,j}function P(T){for(;Q(T).type!="py";)T.scopes.pop();T.scopes.push({offset:Q(T).offset+I.indentUnit,type:"py",align:null})}function V(T,C,g){var y=T.match(/^[\s\[\{\(]*(?:#|$)/,!1)?null:T.column()+1;C.scopes.push({offset:C.indent+$,type:g,align:y})}function F(T,C){for(var g=T.indentation();C.scopes.length>1&&Q(C).offset>g;){if(Q(C).type!="py")return!0;C.scopes.pop()}return Q(C).offset!=g}function G(T,C){T.sol()&&(C.beginningOfLine=!0,C.dedent=!1);var g=C.tokenize(T,C),y=T.current();if(C.beginningOfLine&&y=="@")return T.match(M,!1)?"meta":w?"operator":ne;if(/\S/.test(y)&&(C.beginningOfLine=!1),(g=="variable"||g=="builtin")&&C.lastToken=="meta"&&(g="meta"),(y=="pass"||y=="return")&&(C.dedent=!0),y=="lambda"&&(C.lambda=!0),y==":"&&!C.lambda&&Q(C).type=="py"&&T.match(/^\s*(?:#|$)/,!1)&&P(C),y.length==1&&!/string|comment/.test(g)){var j="[({".indexOf(y);if(j!=-1&&V(T,C,"])}".slice(j,j+1)),j="])}".indexOf(y),j!=-1)if(Q(C).type==y)C.indent=C.scopes.pop().offset-$;else return ne}return C.dedent&&T.eol()&&Q(C).type=="py"&&C.scopes.length>1&&C.scopes.pop(),g}var c={startState:function(T){return{tokenize:q,scopes:[{offset:T||0,type:"py",align:null}],indent:T||0,lastToken:null,lambda:!1,dedent:0}},token:function(T,C){var g=C.errorToken;g&&(C.errorToken=!1);var y=G(T,C);return y&&y!="comment"&&(C.lastToken=y=="keyword"||y=="punctuation"?T.current():y),y=="punctuation"&&(y=null),T.eol()&&C.lambda&&(C.lambda=!1),g?y+" "+ne:y},indent:function(T,C){if(T.tokenize!=q)return T.tokenize.isString?b.Pass:0;var g=Q(T),y=g.type==C.charAt(0)||g.type=="py"&&!T.dedent&&/^(else:|elif |except |finally:)/.test(C);return g.align!=null?g.align-(y?1:0):g.offset-(y?$:0)},electricInput:/^\s*([\}\]\)]|else:|elif |except |finally:)$/,closeBrackets:{triples:`'"`},lineComment:"#",fold:"indent"};return c}),b.defineMIME("text/x-python","python");var k=function(I){return I.split(" ")};b.defineMIME("text/x-cython",{name:"python",extra_keywords:k("by cdef cimport cpdef ctypedef enum except extern gil include nogil property public readonly struct union DEF IF ELIF ELSE")})})})()),Sa.exports}ef();var Ta={exports:{}},Ca;function tf(){return Ca||(Ca=1,(function(ct,xt){(function(b){b(mt())})(function(b){function pe(g,y,j,de,v,d){this.indented=g,this.column=y,this.type=j,this.info=de,this.align=v,this.prev=d}function _(g,y,j,de){var v=g.indented;return g.context&&g.context.type=="statement"&&j!="statement"&&(v=g.context.indented),g.context=new pe(v,y,j,de,null,g.context)}function te(g){var y=g.context.type;return(y==")"||y=="]"||y=="}")&&(g.indented=g.context.indented),g.context=g.context.prev}function oe(g,y,j){if(y.prevToken=="variable"||y.prevToken=="type"||/\S(?:[^- ]>|[*\]])\s*$|\*$/.test(g.string.slice(0,j))||y.typeAtEndOfLine&&g.column()==g.indentation())return!0}function Q(g){for(;;){if(!g||g.type=="top")return!0;if(g.type=="}"&&g.prev.info!="namespace")return!1;g=g.prev}}b.defineMode("clike",function(g,y){var j=g.indentUnit,de=y.statementIndentUnit||j,v=y.dontAlignCalls,d=y.keywords||{},fe=y.types||{},Te=y.builtin||{},le=y.blockKeywords||{},xe=y.defKeywords||{},Me=y.atoms||{},Fe=y.hooks||{},Ce=y.multiLineStrings,ve=y.indentStatements!==!1,Oe=y.indentSwitch!==!1,qe=y.namespaceSeparator,$e=y.isPunctuationChar||/[\[\]{}\(\),;\:\.]/,dt=y.numberStart||/[\d\.]/,Pe=y.number||/^(?:0x[a-f\d]+|0b[01]+|(?:\d+\.?\d*|\.\d+)(?:e[-+]?\d+)?)(u|ll?|l|f)?/i,_e=y.isOperatorChar||/[+\-*&%=<>!?|\/]/,Ue=y.isIdentifierChar||/[\w\$_\xa1-\uffff]/,et=y.isReservedIdentifier||!1,we,Ie;function E(me,De){var be=me.next();if(Fe[be]){var Be=Fe[be](me,De);if(Be!==!1)return Be}if(be=='"'||be=="'")return De.tokenize=ee(be),De.tokenize(me,De);if(dt.test(be)){if(me.backUp(1),me.match(Pe))return"number";me.next()}if($e.test(be))return we=be,null;if(be=="/"){if(me.eat("*"))return De.tokenize=K,K(me,De);if(me.eat("/"))return me.skipToEnd(),"comment"}if(_e.test(be)){for(;!me.match(/^\/[\/*]/,!1)&&me.eat(_e););return"operator"}if(me.eatWhile(Ue),qe)for(;me.match(qe);)me.eatWhile(Ue);var Ne=me.current();return I(d,Ne)?(I(le,Ne)&&(we="newstatement"),I(xe,Ne)&&(Ie=!0),"keyword"):I(fe,Ne)?"type":I(Te,Ne)||et&&et(Ne)?(I(le,Ne)&&(we="newstatement"),"builtin"):I(Me,Ne)?"atom":"variable"}function ee(me){return function(De,be){for(var Be=!1,Ne,Mt=!1;(Ne=De.next())!=null;){if(Ne==me&&!Be){Mt=!0;break}Be=!Be&&Ne=="\\"}return(Mt||!(Be||Ce))&&(be.tokenize=null),"string"}}function K(me,De){for(var be=!1,Be;Be=me.next();){if(Be=="/"&&be){De.tokenize=null;break}be=Be=="*"}return"comment"}function ze(me,De){y.typeFirstDefinitions&&me.eol()&&Q(De.context)&&(De.typeAtEndOfLine=oe(me,De,me.pos))}return{startState:function(me){return{tokenize:null,context:new pe((me||0)-j,0,"top",null,!1),indented:0,startOfLine:!0,prevToken:null}},token:function(me,De){var be=De.context;if(me.sol()&&(be.align==null&&(be.align=!1),De.indented=me.indentation(),De.startOfLine=!0),me.eatSpace())return ze(me,De),null;we=Ie=null;var Be=(De.tokenize||E)(me,De);if(Be=="comment"||Be=="meta")return Be;if(be.align==null&&(be.align=!0),we==";"||we==":"||we==","&&me.match(/^\s*(?:\/\/.*)?$/,!1))for(;De.context.type=="statement";)te(De);else if(we=="{")_(De,me.column(),"}");else if(we=="[")_(De,me.column(),"]");else if(we=="(")_(De,me.column(),")");else if(we=="}"){for(;be.type=="statement";)be=te(De);for(be.type=="}"&&(be=te(De));be.type=="statement";)be=te(De)}else we==be.type?te(De):ve&&((be.type=="}"||be.type=="top")&&we!=";"||be.type=="statement"&&we=="newstatement")&&_(De,me.column(),"statement",me.current());if(Be=="variable"&&(De.prevToken=="def"||y.typeFirstDefinitions&&oe(me,De,me.start)&&Q(De.context)&&me.match(/^\s*\(/,!1))&&(Be="def"),Fe.token){var Ne=Fe.token(me,De,Be);Ne!==void 0&&(Be=Ne)}return Be=="def"&&y.styleDefs===!1&&(Be="variable"),De.startOfLine=!1,De.prevToken=Ie?"def":Be||we,ze(me,De),Be},indent:function(me,De){if(me.tokenize!=E&&me.tokenize!=null||me.typeAtEndOfLine&&Q(me.context))return b.Pass;var be=me.context,Be=De&&De.charAt(0),Ne=Be==be.type;if(be.type=="statement"&&Be=="}"&&(be=be.prev),y.dontIndentStatements)for(;be.type=="statement"&&y.dontIndentStatements.test(be.info);)be=be.prev;if(Fe.indent){var Mt=Fe.indent(me,be,De,j);if(typeof Mt=="number")return Mt}var Pt=be.prev&&be.prev.info=="switch";if(y.allmanIndentation&&/[{(]/.test(Be)){for(;be.type!="top"&&be.type!="}";)be=be.prev;return be.indented}return be.type=="statement"?be.indented+(Be=="{"?0:de):be.align&&(!v||be.type!=")")?be.column+(Ne?0:1):be.type==")"&&!Ne?be.indented+de:be.indented+(Ne?0:j)+(!Ne&&Pt&&!/^(?:case|default)\b/.test(De)?j:0)},electricInput:Oe?/^\s*(?:case .*?:|default:|\{\}?|\})$/:/^\s*[{}]$/,blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * ",lineComment:"//",fold:"brace"}});function k(g){for(var y={},j=g.split(" "),de=0;de!?|\/#:@]/,hooks:{"@":function(g){return g.eatWhile(/[\w\$_]/),"meta"},'"':function(g,y){return g.match('""')?(y.tokenize=F,y.tokenize(g,y)):!1},"'":function(g){return g.match(/^(\\[^'\s]+|[^\\'])'/)?"string-2":(g.eatWhile(/[\w\$_\xa1-\uffff]/),"atom")},"=":function(g,y){var j=y.context;return j.type=="}"&&j.align&&g.eat(">")?(y.context=new pe(j.indented,j.column,j.type,j.info,null,j.prev),"operator"):!1},"/":function(g,y){return g.eat("*")?(y.tokenize=G(1),y.tokenize(g,y)):!1}},modeProps:{closeBrackets:{pairs:'()[]{}""',triples:'"'}}});function c(g){return function(y,j){for(var de=!1,v,d=!1;!y.eol();){if(!g&&!de&&y.match('"')){d=!0;break}if(g&&y.match('"""')){d=!0;break}v=y.next(),!de&&v=="$"&&y.match("{")&&y.skipTo("}"),de=!de&&v=="\\"&&!g}return(d||!g)&&(j.tokenize=null),"string"}}V("text/x-kotlin",{name:"clike",keywords:k("package as typealias class interface this super val operator var fun for is in This throw return annotation break continue object if else while do try when !in !is as? file import where by get set abstract enum open inner override private public internal protected catch finally out final vararg reified dynamic companion constructor init sealed field property receiver param sparam lateinit data inline noinline tailrec external annotation crossinline const operator infix suspend actual expect setparam value"),types:k("Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void Annotation Any BooleanArray ByteArray Char CharArray DeprecationLevel DoubleArray Enum FloatArray Function Int IntArray Lazy LazyThreadSafetyMode LongArray Nothing ShortArray Unit"),intendSwitch:!1,indentStatements:!1,multiLineStrings:!0,number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+(\.\d+)?|\.\d+)(?:e[-+]?[\d_]+)?)(u|ll?|l|f)?/i,blockKeywords:k("catch class do else finally for if where try while enum"),defKeywords:k("class val var object interface fun"),atoms:k("true false null this"),hooks:{"@":function(g){return g.eatWhile(/[\w\$_]/),"meta"},"*":function(g,y){return y.prevToken=="."?"variable":"operator"},'"':function(g,y){return y.tokenize=c(g.match('""')),y.tokenize(g,y)},"/":function(g,y){return g.eat("*")?(y.tokenize=G(1),y.tokenize(g,y)):!1},indent:function(g,y,j,de){var v=j&&j.charAt(0);if((g.prevToken=="}"||g.prevToken==")")&&j=="")return g.indented;if(g.prevToken=="operator"&&j!="}"&&g.context.type!="}"||g.prevToken=="variable"&&v=="."||(g.prevToken=="}"||g.prevToken==")")&&v==".")return de*2+y.indented;if(y.align&&y.type=="}")return y.indented+(g.context.type==(j||"").charAt(0)?0:de)}},modeProps:{closeBrackets:{triples:'"'}}}),V(["x-shader/x-vertex","x-shader/x-fragment"],{name:"clike",keywords:k("sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadow const attribute uniform varying break continue discard return for while do if else struct in out inout"),types:k("float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4"),blockKeywords:k("for while do if else struct"),builtin:k("radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smoothstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4"),atoms:k("true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_PointCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TextureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers"),indentSwitch:!1,hooks:{"#":N},modeProps:{fold:["brace","include"]}}),V("text/x-nesc",{name:"clike",keywords:k(Y+" as atomic async call command component components configuration event generic implementation includes interface module new norace nx_struct nx_union post provides signal task uses abstract extends"),types:ue,blockKeywords:k(w),atoms:k("null true false"),hooks:{"#":N},modeProps:{fold:["brace","include"]}}),V("text/x-objectivec",{name:"clike",keywords:k(Y+" "+S),types:O,builtin:k(R),blockKeywords:k(w+" @synthesize @try @catch @finally @autoreleasepool @synchronized"),defKeywords:k(M+" @interface @implementation @protocol @class"),dontIndentStatements:/^@.*$/,typeFirstDefinitions:!0,atoms:k("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:X,hooks:{"#":N,"*":z},modeProps:{fold:["brace","include"]}}),V("text/x-objectivec++",{name:"clike",keywords:k(Y+" "+S+" "+ne),types:O,builtin:k(R),blockKeywords:k(w+" @synthesize @try @catch @finally @autoreleasepool @synchronized class try catch"),defKeywords:k(M+" @interface @implementation @protocol @class class namespace"),dontIndentStatements:/^@.*$|^template$/,typeFirstDefinitions:!0,atoms:k("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:X,hooks:{"#":N,"*":z,u:p,U:p,L:p,R:p,0:q,1:q,2:q,3:q,4:q,5:q,6:q,7:q,8:q,9:q,token:function(g,y,j){if(j=="variable"&&g.peek()=="("&&(y.prevToken==";"||y.prevToken==null||y.prevToken=="}")&&W(g.current()))return"def"}},namespaceSeparator:"::",modeProps:{fold:["brace","include"]}}),V("text/x-squirrel",{name:"clike",keywords:k("base break clone continue const default delete enum extends function in class foreach local resume return this throw typeof yield constructor instanceof static"),types:ue,blockKeywords:k("case catch class else for foreach if switch try while"),defKeywords:k("function local class"),typeFirstDefinitions:!0,atoms:k("true false null"),hooks:{"#":N},modeProps:{fold:["brace","include"]}});var T=null;function C(g){return function(y,j){for(var de=!1,v,d=!1;!y.eol();){if(!de&&y.match('"')&&(g=="single"||y.match('""'))){d=!0;break}if(!de&&y.match("``")){T=C(g),d=!0;break}v=y.next(),de=g=="single"&&!de&&v=="\\"}return d&&(j.tokenize=null),"string"}}V("text/x-ceylon",{name:"clike",keywords:k("abstracts alias assembly assert assign break case catch class continue dynamic else exists extends finally for function given if import in interface is let module new nonempty object of out outer package return satisfies super switch then this throw try value void while"),types:function(g){var y=g.charAt(0);return y===y.toUpperCase()&&y!==y.toLowerCase()},blockKeywords:k("case catch class dynamic else finally for function if interface module new object switch try while"),defKeywords:k("class dynamic function interface module object package value"),builtin:k("abstract actual aliased annotation by default deprecated doc final formal late license native optional sealed see serializable shared suppressWarnings tagged throws variable"),isPunctuationChar:/[\[\]{}\(\),;\:\.`]/,isOperatorChar:/[+\-*&%=<>!?|^~:\/]/,numberStart:/[\d#$]/,number:/^(?:#[\da-fA-F_]+|\$[01_]+|[\d_]+[kMGTPmunpf]?|[\d_]+\.[\d_]+(?:[eE][-+]?\d+|[kMGTPmunpf]|)|)/i,multiLineStrings:!0,typeFirstDefinitions:!0,atoms:k("true false null larger smaller equal empty finished"),indentSwitch:!1,styleDefs:!1,hooks:{"@":function(g){return g.eatWhile(/[\w\$_]/),"meta"},'"':function(g,y){return y.tokenize=C(g.match('""')?"triple":"single"),y.tokenize(g,y)},"`":function(g,y){return!T||!g.match("`")?!1:(y.tokenize=T,T=null,y.tokenize(g,y))},"'":function(g){return g.eatWhile(/[\w\$_\xa1-\uffff]/),"atom"},token:function(g,y,j){if((j=="variable"||j=="type")&&y.prevToken==".")return"variable-2"}},modeProps:{fold:["brace","import"],closeBrackets:{triples:'"'}}})})})()),Ta.exports}tf();var Da={exports:{}},Ma={exports:{}},Fa;function rf(){return Fa||(Fa=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.modeInfo=[{name:"APL",mime:"text/apl",mode:"apl",ext:["dyalog","apl"]},{name:"PGP",mimes:["application/pgp","application/pgp-encrypted","application/pgp-keys","application/pgp-signature"],mode:"asciiarmor",ext:["asc","pgp","sig"]},{name:"ASN.1",mime:"text/x-ttcn-asn",mode:"asn.1",ext:["asn","asn1"]},{name:"Asterisk",mime:"text/x-asterisk",mode:"asterisk",file:/^extensions\.conf$/i},{name:"Brainfuck",mime:"text/x-brainfuck",mode:"brainfuck",ext:["b","bf"]},{name:"C",mime:"text/x-csrc",mode:"clike",ext:["c","h","ino"]},{name:"C++",mime:"text/x-c++src",mode:"clike",ext:["cpp","c++","cc","cxx","hpp","h++","hh","hxx"],alias:["cpp"]},{name:"Cobol",mime:"text/x-cobol",mode:"cobol",ext:["cob","cpy","cbl"]},{name:"C#",mime:"text/x-csharp",mode:"clike",ext:["cs"],alias:["csharp","cs"]},{name:"Clojure",mime:"text/x-clojure",mode:"clojure",ext:["clj","cljc","cljx"]},{name:"ClojureScript",mime:"text/x-clojurescript",mode:"clojure",ext:["cljs"]},{name:"Closure Stylesheets (GSS)",mime:"text/x-gss",mode:"css",ext:["gss"]},{name:"CMake",mime:"text/x-cmake",mode:"cmake",ext:["cmake","cmake.in"],file:/^CMakeLists\.txt$/},{name:"CoffeeScript",mimes:["application/vnd.coffeescript","text/coffeescript","text/x-coffeescript"],mode:"coffeescript",ext:["coffee"],alias:["coffee","coffee-script"]},{name:"Common Lisp",mime:"text/x-common-lisp",mode:"commonlisp",ext:["cl","lisp","el"],alias:["lisp"]},{name:"Cypher",mime:"application/x-cypher-query",mode:"cypher",ext:["cyp","cypher"]},{name:"Cython",mime:"text/x-cython",mode:"python",ext:["pyx","pxd","pxi"]},{name:"Crystal",mime:"text/x-crystal",mode:"crystal",ext:["cr"]},{name:"CSS",mime:"text/css",mode:"css",ext:["css"]},{name:"CQL",mime:"text/x-cassandra",mode:"sql",ext:["cql"]},{name:"D",mime:"text/x-d",mode:"d",ext:["d"]},{name:"Dart",mimes:["application/dart","text/x-dart"],mode:"dart",ext:["dart"]},{name:"diff",mime:"text/x-diff",mode:"diff",ext:["diff","patch"]},{name:"Django",mime:"text/x-django",mode:"django"},{name:"Dockerfile",mime:"text/x-dockerfile",mode:"dockerfile",file:/^Dockerfile$/},{name:"DTD",mime:"application/xml-dtd",mode:"dtd",ext:["dtd"]},{name:"Dylan",mime:"text/x-dylan",mode:"dylan",ext:["dylan","dyl","intr"]},{name:"EBNF",mime:"text/x-ebnf",mode:"ebnf"},{name:"ECL",mime:"text/x-ecl",mode:"ecl",ext:["ecl"]},{name:"edn",mime:"application/edn",mode:"clojure",ext:["edn"]},{name:"Eiffel",mime:"text/x-eiffel",mode:"eiffel",ext:["e"]},{name:"Elm",mime:"text/x-elm",mode:"elm",ext:["elm"]},{name:"Embedded JavaScript",mime:"application/x-ejs",mode:"htmlembedded",ext:["ejs"]},{name:"Embedded Ruby",mime:"application/x-erb",mode:"htmlembedded",ext:["erb"]},{name:"Erlang",mime:"text/x-erlang",mode:"erlang",ext:["erl"]},{name:"Esper",mime:"text/x-esper",mode:"sql"},{name:"Factor",mime:"text/x-factor",mode:"factor",ext:["factor"]},{name:"FCL",mime:"text/x-fcl",mode:"fcl"},{name:"Forth",mime:"text/x-forth",mode:"forth",ext:["forth","fth","4th"]},{name:"Fortran",mime:"text/x-fortran",mode:"fortran",ext:["f","for","f77","f90","f95"]},{name:"F#",mime:"text/x-fsharp",mode:"mllike",ext:["fs"],alias:["fsharp"]},{name:"Gas",mime:"text/x-gas",mode:"gas",ext:["s"]},{name:"Gherkin",mime:"text/x-feature",mode:"gherkin",ext:["feature"]},{name:"GitHub Flavored Markdown",mime:"text/x-gfm",mode:"gfm",file:/^(readme|contributing|history)\.md$/i},{name:"Go",mime:"text/x-go",mode:"go",ext:["go"]},{name:"Groovy",mime:"text/x-groovy",mode:"groovy",ext:["groovy","gradle"],file:/^Jenkinsfile$/},{name:"HAML",mime:"text/x-haml",mode:"haml",ext:["haml"]},{name:"Haskell",mime:"text/x-haskell",mode:"haskell",ext:["hs"]},{name:"Haskell (Literate)",mime:"text/x-literate-haskell",mode:"haskell-literate",ext:["lhs"]},{name:"Haxe",mime:"text/x-haxe",mode:"haxe",ext:["hx"]},{name:"HXML",mime:"text/x-hxml",mode:"haxe",ext:["hxml"]},{name:"ASP.NET",mime:"application/x-aspx",mode:"htmlembedded",ext:["aspx"],alias:["asp","aspx"]},{name:"HTML",mime:"text/html",mode:"htmlmixed",ext:["html","htm","handlebars","hbs"],alias:["xhtml"]},{name:"HTTP",mime:"message/http",mode:"http"},{name:"IDL",mime:"text/x-idl",mode:"idl",ext:["pro"]},{name:"Pug",mime:"text/x-pug",mode:"pug",ext:["jade","pug"],alias:["jade"]},{name:"Java",mime:"text/x-java",mode:"clike",ext:["java"]},{name:"Java Server Pages",mime:"application/x-jsp",mode:"htmlembedded",ext:["jsp"],alias:["jsp"]},{name:"JavaScript",mimes:["text/javascript","text/ecmascript","application/javascript","application/x-javascript","application/ecmascript"],mode:"javascript",ext:["js"],alias:["ecmascript","js","node"]},{name:"JSON",mimes:["application/json","application/x-json"],mode:"javascript",ext:["json","map"],alias:["json5"]},{name:"JSON-LD",mime:"application/ld+json",mode:"javascript",ext:["jsonld"],alias:["jsonld"]},{name:"JSX",mime:"text/jsx",mode:"jsx",ext:["jsx"]},{name:"Jinja2",mime:"text/jinja2",mode:"jinja2",ext:["j2","jinja","jinja2"]},{name:"Julia",mime:"text/x-julia",mode:"julia",ext:["jl"],alias:["jl"]},{name:"Kotlin",mime:"text/x-kotlin",mode:"clike",ext:["kt"]},{name:"LESS",mime:"text/x-less",mode:"css",ext:["less"]},{name:"LiveScript",mime:"text/x-livescript",mode:"livescript",ext:["ls"],alias:["ls"]},{name:"Lua",mime:"text/x-lua",mode:"lua",ext:["lua"]},{name:"Markdown",mime:"text/x-markdown",mode:"markdown",ext:["markdown","md","mkd"]},{name:"mIRC",mime:"text/mirc",mode:"mirc"},{name:"MariaDB SQL",mime:"text/x-mariadb",mode:"sql"},{name:"Mathematica",mime:"text/x-mathematica",mode:"mathematica",ext:["m","nb","wl","wls"]},{name:"Modelica",mime:"text/x-modelica",mode:"modelica",ext:["mo"]},{name:"MUMPS",mime:"text/x-mumps",mode:"mumps",ext:["mps"]},{name:"MS SQL",mime:"text/x-mssql",mode:"sql"},{name:"mbox",mime:"application/mbox",mode:"mbox",ext:["mbox"]},{name:"MySQL",mime:"text/x-mysql",mode:"sql"},{name:"Nginx",mime:"text/x-nginx-conf",mode:"nginx",file:/nginx.*\.conf$/i},{name:"NSIS",mime:"text/x-nsis",mode:"nsis",ext:["nsh","nsi"]},{name:"NTriples",mimes:["application/n-triples","application/n-quads","text/n-triples"],mode:"ntriples",ext:["nt","nq"]},{name:"Objective-C",mime:"text/x-objectivec",mode:"clike",ext:["m"],alias:["objective-c","objc"]},{name:"Objective-C++",mime:"text/x-objectivec++",mode:"clike",ext:["mm"],alias:["objective-c++","objc++"]},{name:"OCaml",mime:"text/x-ocaml",mode:"mllike",ext:["ml","mli","mll","mly"]},{name:"Octave",mime:"text/x-octave",mode:"octave",ext:["m"]},{name:"Oz",mime:"text/x-oz",mode:"oz",ext:["oz"]},{name:"Pascal",mime:"text/x-pascal",mode:"pascal",ext:["p","pas"]},{name:"PEG.js",mime:"null",mode:"pegjs",ext:["jsonld"]},{name:"Perl",mime:"text/x-perl",mode:"perl",ext:["pl","pm"]},{name:"PHP",mimes:["text/x-php","application/x-httpd-php","application/x-httpd-php-open"],mode:"php",ext:["php","php3","php4","php5","php7","phtml"]},{name:"Pig",mime:"text/x-pig",mode:"pig",ext:["pig"]},{name:"Plain Text",mime:"text/plain",mode:"null",ext:["txt","text","conf","def","list","log"]},{name:"PLSQL",mime:"text/x-plsql",mode:"sql",ext:["pls"]},{name:"PostgreSQL",mime:"text/x-pgsql",mode:"sql"},{name:"PowerShell",mime:"application/x-powershell",mode:"powershell",ext:["ps1","psd1","psm1"]},{name:"Properties files",mime:"text/x-properties",mode:"properties",ext:["properties","ini","in"],alias:["ini","properties"]},{name:"ProtoBuf",mime:"text/x-protobuf",mode:"protobuf",ext:["proto"]},{name:"Python",mime:"text/x-python",mode:"python",ext:["BUILD","bzl","py","pyw"],file:/^(BUCK|BUILD)$/},{name:"Puppet",mime:"text/x-puppet",mode:"puppet",ext:["pp"]},{name:"Q",mime:"text/x-q",mode:"q",ext:["q"]},{name:"R",mime:"text/x-rsrc",mode:"r",ext:["r","R"],alias:["rscript"]},{name:"reStructuredText",mime:"text/x-rst",mode:"rst",ext:["rst"],alias:["rst"]},{name:"RPM Changes",mime:"text/x-rpm-changes",mode:"rpm"},{name:"RPM Spec",mime:"text/x-rpm-spec",mode:"rpm",ext:["spec"]},{name:"Ruby",mime:"text/x-ruby",mode:"ruby",ext:["rb"],alias:["jruby","macruby","rake","rb","rbx"]},{name:"Rust",mime:"text/x-rustsrc",mode:"rust",ext:["rs"]},{name:"SAS",mime:"text/x-sas",mode:"sas",ext:["sas"]},{name:"Sass",mime:"text/x-sass",mode:"sass",ext:["sass"]},{name:"Scala",mime:"text/x-scala",mode:"clike",ext:["scala"]},{name:"Scheme",mime:"text/x-scheme",mode:"scheme",ext:["scm","ss"]},{name:"SCSS",mime:"text/x-scss",mode:"css",ext:["scss"]},{name:"Shell",mimes:["text/x-sh","application/x-sh"],mode:"shell",ext:["sh","ksh","bash"],alias:["bash","sh","zsh"],file:/^PKGBUILD$/},{name:"Sieve",mime:"application/sieve",mode:"sieve",ext:["siv","sieve"]},{name:"Slim",mimes:["text/x-slim","application/x-slim"],mode:"slim",ext:["slim"]},{name:"Smalltalk",mime:"text/x-stsrc",mode:"smalltalk",ext:["st"]},{name:"Smarty",mime:"text/x-smarty",mode:"smarty",ext:["tpl"]},{name:"Solr",mime:"text/x-solr",mode:"solr"},{name:"SML",mime:"text/x-sml",mode:"mllike",ext:["sml","sig","fun","smackspec"]},{name:"Soy",mime:"text/x-soy",mode:"soy",ext:["soy"],alias:["closure template"]},{name:"SPARQL",mime:"application/sparql-query",mode:"sparql",ext:["rq","sparql"],alias:["sparul"]},{name:"Spreadsheet",mime:"text/x-spreadsheet",mode:"spreadsheet",alias:["excel","formula"]},{name:"SQL",mime:"text/x-sql",mode:"sql",ext:["sql"]},{name:"SQLite",mime:"text/x-sqlite",mode:"sql"},{name:"Squirrel",mime:"text/x-squirrel",mode:"clike",ext:["nut"]},{name:"Stylus",mime:"text/x-styl",mode:"stylus",ext:["styl"]},{name:"Swift",mime:"text/x-swift",mode:"swift",ext:["swift"]},{name:"sTeX",mime:"text/x-stex",mode:"stex"},{name:"LaTeX",mime:"text/x-latex",mode:"stex",ext:["text","ltx","tex"],alias:["tex"]},{name:"SystemVerilog",mime:"text/x-systemverilog",mode:"verilog",ext:["v","sv","svh"]},{name:"Tcl",mime:"text/x-tcl",mode:"tcl",ext:["tcl"]},{name:"Textile",mime:"text/x-textile",mode:"textile",ext:["textile"]},{name:"TiddlyWiki",mime:"text/x-tiddlywiki",mode:"tiddlywiki"},{name:"Tiki wiki",mime:"text/tiki",mode:"tiki"},{name:"TOML",mime:"text/x-toml",mode:"toml",ext:["toml"]},{name:"Tornado",mime:"text/x-tornado",mode:"tornado"},{name:"troff",mime:"text/troff",mode:"troff",ext:["1","2","3","4","5","6","7","8","9"]},{name:"TTCN",mime:"text/x-ttcn",mode:"ttcn",ext:["ttcn","ttcn3","ttcnpp"]},{name:"TTCN_CFG",mime:"text/x-ttcn-cfg",mode:"ttcn-cfg",ext:["cfg"]},{name:"Turtle",mime:"text/turtle",mode:"turtle",ext:["ttl"]},{name:"TypeScript",mime:"application/typescript",mode:"javascript",ext:["ts"],alias:["ts"]},{name:"TypeScript-JSX",mime:"text/typescript-jsx",mode:"jsx",ext:["tsx"],alias:["tsx"]},{name:"Twig",mime:"text/x-twig",mode:"twig"},{name:"Web IDL",mime:"text/x-webidl",mode:"webidl",ext:["webidl"]},{name:"VB.NET",mime:"text/x-vb",mode:"vb",ext:["vb"]},{name:"VBScript",mime:"text/vbscript",mode:"vbscript",ext:["vbs"]},{name:"Velocity",mime:"text/velocity",mode:"velocity",ext:["vtl"]},{name:"Verilog",mime:"text/x-verilog",mode:"verilog",ext:["v"]},{name:"VHDL",mime:"text/x-vhdl",mode:"vhdl",ext:["vhd","vhdl"]},{name:"Vue.js Component",mimes:["script/x-vue","text/x-vue"],mode:"vue",ext:["vue"]},{name:"XML",mimes:["application/xml","text/xml"],mode:"xml",ext:["xml","xsl","xsd","svg"],alias:["rss","wsdl","xsd"]},{name:"XQuery",mime:"application/xquery",mode:"xquery",ext:["xy","xquery"]},{name:"Yacas",mime:"text/x-yacas",mode:"yacas",ext:["ys"]},{name:"YAML",mimes:["text/x-yaml","text/yaml"],mode:"yaml",ext:["yaml","yml"],alias:["yml"]},{name:"Z80",mime:"text/x-z80",mode:"z80",ext:["z80"]},{name:"mscgen",mime:"text/x-mscgen",mode:"mscgen",ext:["mscgen","mscin","msc"]},{name:"xu",mime:"text/x-xu",mode:"mscgen",ext:["xu"]},{name:"msgenny",mime:"text/x-msgenny",mode:"mscgen",ext:["msgenny"]},{name:"WebAssembly",mime:"text/webassembly",mode:"wast",ext:["wat","wast"]}];for(var pe=0;pe-1&&te.substring(k+1,te.length);if(I)return b.findModeByExtension(I)},b.findModeByName=function(te){te=te.toLowerCase();for(var oe=0;oe` "'(~:]+/,ue=/^(~~~+|```+)[ \t]*([\w\/+#-]*)[^\n`]*$/,O=/^\s*\[[^\]]+?\]:.*$/,w=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u0AF0\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E42\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC9\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDF3C-\uDF3E]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]/,M=" ";function N(v,d,fe){return d.f=d.inline=fe,fe(v,d)}function z(v,d,fe){return d.f=d.block=fe,fe(v,d)}function X(v){return!v||!/\S/.test(v.string)}function q(v){if(v.linkTitle=!1,v.linkHref=!1,v.linkText=!1,v.em=!1,v.strong=!1,v.strikethrough=!1,v.quote=0,v.indentedCode=!1,v.f==W){var d=oe;if(!d){var fe=b.innerMode(te,v.htmlState);d=fe.mode.name=="xml"&&fe.state.tagStart===null&&!fe.state.context&&fe.state.tokenize.isInText}d&&(v.f=F,v.block=p,v.htmlState=null)}return v.trailingSpace=0,v.trailingSpaceNewLine=!1,v.prevLine=v.thisLine,v.thisLine={stream:null},null}function p(v,d){var fe=v.column()===d.indentation,Te=X(d.prevLine.stream),le=d.indentedCode,xe=d.prevLine.hr,Me=d.list!==!1,Fe=(d.listStack[d.listStack.length-1]||0)+3;d.indentedCode=!1;var Ce=d.indentation;if(d.indentationDiff===null&&(d.indentationDiff=d.indentation,Me)){for(d.list=null;Ce=4&&(le||d.prevLine.fencedCodeEnd||d.prevLine.header||Te))return v.skipToEnd(),d.indentedCode=!0,k.code;if(v.eatSpace())return null;if(fe&&d.indentation<=Fe&&(qe=v.match(R))&&qe[1].length<=6)return d.quote=0,d.header=qe[1].length,d.thisLine.header=!0,_.highlightFormatting&&(d.formatting="header"),d.f=d.inline,P(d);if(d.indentation<=Fe&&v.eat(">"))return d.quote=fe?1:d.quote+1,_.highlightFormatting&&(d.formatting="quote"),v.eatSpace(),P(d);if(!Oe&&!d.setext&&fe&&d.indentation<=Fe&&(qe=v.match(ne))){var $e=qe[1]?"ol":"ul";return d.indentation=Ce+v.current().length,d.list=!0,d.quote=0,d.listStack.push(d.indentation),d.em=!1,d.strong=!1,d.code=!1,d.strikethrough=!1,_.taskLists&&v.match(S,!1)&&(d.taskList=!0),d.f=d.inline,_.highlightFormatting&&(d.formatting=["list","list-"+$e]),P(d)}else{if(fe&&d.indentation<=Fe&&(qe=v.match(ue,!0)))return d.quote=0,d.fencedEndRE=new RegExp(qe[1]+"+ *$"),d.localMode=_.fencedCodeBlockHighlighting&&Q(qe[2]||_.fencedCodeBlockDefaultMode),d.localMode&&(d.localState=b.startState(d.localMode)),d.f=d.block=J,_.highlightFormatting&&(d.formatting="code-block"),d.code=-1,P(d);if(d.setext||(!ve||!Me)&&!d.quote&&d.list===!1&&!d.code&&!Oe&&!O.test(v.string)&&(qe=v.lookAhead(1))&&(qe=qe.match(A)))return d.setext?(d.header=d.setext,d.setext=0,v.skipToEnd(),_.highlightFormatting&&(d.formatting="header")):(d.header=qe[0].charAt(0)=="="?1:2,d.setext=d.header),d.thisLine.header=!0,d.f=d.inline,P(d);if(Oe)return v.skipToEnd(),d.hr=!0,d.thisLine.hr=!0,k.hr;if(v.peek()==="[")return N(v,d,g)}return N(v,d,d.inline)}function W(v,d){var fe=te.token(v,d.htmlState);if(!oe){var Te=b.innerMode(te,d.htmlState);(Te.mode.name=="xml"&&Te.state.tagStart===null&&!Te.state.context&&Te.state.tokenize.isInText||d.md_inside&&v.current().indexOf(">")>-1)&&(d.f=F,d.block=p,d.htmlState=null)}return fe}function J(v,d){var fe=d.listStack[d.listStack.length-1]||0,Te=d.indentation=v.quote?d.push(k.formatting+"-"+v.formatting[fe]+"-"+v.quote):d.push("error"))}if(v.taskOpen)return d.push("meta"),d.length?d.join(" "):null;if(v.taskClosed)return d.push("property"),d.length?d.join(" "):null;if(v.linkHref?d.push(k.linkHref,"url"):(v.strong&&d.push(k.strong),v.em&&d.push(k.em),v.strikethrough&&d.push(k.strikethrough),v.emoji&&d.push(k.emoji),v.linkText&&d.push(k.linkText),v.code&&d.push(k.code),v.image&&d.push(k.image),v.imageAltText&&d.push(k.imageAltText,"link"),v.imageMarker&&d.push(k.imageMarker)),v.header&&d.push(k.header,k.header+"-"+v.header),v.quote&&(d.push(k.quote),!_.maxBlockquoteDepth||_.maxBlockquoteDepth>=v.quote?d.push(k.quote+"-"+v.quote):d.push(k.quote+"-"+_.maxBlockquoteDepth)),v.list!==!1){var Te=(v.listStack.length-1)%3;Te?Te===1?d.push(k.list2):d.push(k.list3):d.push(k.list1)}return v.trailingSpaceNewLine?d.push("trailing-space-new-line"):v.trailingSpace&&d.push("trailing-space-"+(v.trailingSpace%2?"a":"b")),d.length?d.join(" "):null}function V(v,d){if(v.match($,!0))return P(d)}function F(v,d){var fe=d.text(v,d);if(typeof fe<"u")return fe;if(d.list)return d.list=null,P(d);if(d.taskList){var Te=v.match(S,!0)[1]===" ";return Te?d.taskOpen=!0:d.taskClosed=!0,_.highlightFormatting&&(d.formatting="task"),d.taskList=!1,P(d)}if(d.taskOpen=!1,d.taskClosed=!1,d.header&&v.match(/^#+$/,!0))return _.highlightFormatting&&(d.formatting="header"),P(d);var le=v.next();if(d.linkTitle){d.linkTitle=!1;var xe=le;le==="("&&(xe=")"),xe=(xe+"").replace(/([.?*+^\[\]\\(){}|-])/g,"\\$1");var Me="^\\s*(?:[^"+xe+"\\\\]+|\\\\\\\\|\\\\.)"+xe;if(v.match(new RegExp(Me),!0))return k.linkHref}if(le==="`"){var Fe=d.formatting;_.highlightFormatting&&(d.formatting="code"),v.eatWhile("`");var Ce=v.current().length;if(d.code==0&&(!d.quote||Ce==1))return d.code=Ce,P(d);if(Ce==d.code){var ve=P(d);return d.code=0,ve}else return d.formatting=Fe,P(d)}else if(d.code)return P(d);if(le==="\\"&&(v.next(),_.highlightFormatting)){var Oe=P(d),qe=k.formatting+"-escape";return Oe?Oe+" "+qe:qe}if(le==="!"&&v.match(/\[[^\]]*\] ?(?:\(|\[)/,!1))return d.imageMarker=!0,d.image=!0,_.highlightFormatting&&(d.formatting="image"),P(d);if(le==="["&&d.imageMarker&&v.match(/[^\]]*\](\(.*?\)| ?\[.*?\])/,!1))return d.imageMarker=!1,d.imageAltText=!0,_.highlightFormatting&&(d.formatting="image"),P(d);if(le==="]"&&d.imageAltText){_.highlightFormatting&&(d.formatting="image");var Oe=P(d);return d.imageAltText=!1,d.image=!1,d.inline=d.f=c,Oe}if(le==="["&&!d.image)return d.linkText&&v.match(/^.*?\]/)||(d.linkText=!0,_.highlightFormatting&&(d.formatting="link")),P(d);if(le==="]"&&d.linkText){_.highlightFormatting&&(d.formatting="link");var Oe=P(d);return d.linkText=!1,d.inline=d.f=v.match(/\(.*?\)| ?\[.*?\]/,!1)?c:F,Oe}if(le==="<"&&v.match(/^(https?|ftps?):\/\/(?:[^\\>]|\\.)+>/,!1)){d.f=d.inline=G,_.highlightFormatting&&(d.formatting="link");var Oe=P(d);return Oe?Oe+=" ":Oe="",Oe+k.linkInline}if(le==="<"&&v.match(/^[^> \\]+@(?:[^\\>]|\\.)+>/,!1)){d.f=d.inline=G,_.highlightFormatting&&(d.formatting="link");var Oe=P(d);return Oe?Oe+=" ":Oe="",Oe+k.linkEmail}if(_.xml&&le==="<"&&v.match(/^(!--|\?|!\[CDATA\[|[a-z][a-z0-9-]*(?:\s+[a-z_:.\-]+(?:\s*=\s*[^>]+)?)*\s*(?:>|$))/i,!1)){var $e=v.string.indexOf(">",v.pos);if($e!=-1){var dt=v.string.substring(v.start,$e);/markdown\s*=\s*('|"){0,1}1('|"){0,1}/.test(dt)&&(d.md_inside=!0)}return v.backUp(1),d.htmlState=b.startState(te),z(v,d,W)}if(_.xml&&le==="<"&&v.match(/^\/\w*?>/))return d.md_inside=!1,"tag";if(le==="*"||le==="_"){for(var Pe=1,_e=v.pos==1?" ":v.string.charAt(v.pos-2);Pe<3&&v.eat(le);)Pe++;var Ue=v.peek()||" ",et=!/\s/.test(Ue)&&(!w.test(Ue)||/\s/.test(_e)||w.test(_e)),we=!/\s/.test(_e)&&(!w.test(_e)||/\s/.test(Ue)||w.test(Ue)),Ie=null,E=null;if(Pe%2&&(!d.em&&et&&(le==="*"||!we||w.test(_e))?Ie=!0:d.em==le&&we&&(le==="*"||!et||w.test(Ue))&&(Ie=!1)),Pe>1&&(!d.strong&&et&&(le==="*"||!we||w.test(_e))?E=!0:d.strong==le&&we&&(le==="*"||!et||w.test(Ue))&&(E=!1)),E!=null||Ie!=null){_.highlightFormatting&&(d.formatting=Ie==null?"strong":E==null?"em":"strong em"),Ie===!0&&(d.em=le),E===!0&&(d.strong=le);var ve=P(d);return Ie===!1&&(d.em=!1),E===!1&&(d.strong=!1),ve}}else if(le===" "&&(v.eat("*")||v.eat("_"))){if(v.peek()===" ")return P(d);v.backUp(1)}if(_.strikethrough){if(le==="~"&&v.eatWhile(le)){if(d.strikethrough){_.highlightFormatting&&(d.formatting="strikethrough");var ve=P(d);return d.strikethrough=!1,ve}else if(v.match(/^[^\s]/,!1))return d.strikethrough=!0,_.highlightFormatting&&(d.formatting="strikethrough"),P(d)}else if(le===" "&&v.match("~~",!0)){if(v.peek()===" ")return P(d);v.backUp(2)}}if(_.emoji&&le===":"&&v.match(/^(?:[a-z_\d+][a-z_\d+-]*|\-[a-z_\d+][a-z_\d+-]*):/)){d.emoji=!0,_.highlightFormatting&&(d.formatting="emoji");var ee=P(d);return d.emoji=!1,ee}return le===" "&&(v.match(/^ +$/,!1)?d.trailingSpace++:d.trailingSpace&&(d.trailingSpaceNewLine=!0)),P(d)}function G(v,d){var fe=v.next();if(fe===">"){d.f=d.inline=F,_.highlightFormatting&&(d.formatting="link");var Te=P(d);return Te?Te+=" ":Te="",Te+k.linkInline}return v.match(/^[^>]+/,!0),k.linkInline}function c(v,d){if(v.eatSpace())return null;var fe=v.next();return fe==="("||fe==="["?(d.f=d.inline=C(fe==="("?")":"]"),_.highlightFormatting&&(d.formatting="link-string"),d.linkHref=!0,P(d)):"error"}var T={")":/^(?:[^\\\(\)]|\\.|\((?:[^\\\(\)]|\\.)*\))*?(?=\))/,"]":/^(?:[^\\\[\]]|\\.|\[(?:[^\\\[\]]|\\.)*\])*?(?=\])/};function C(v){return function(d,fe){var Te=d.next();if(Te===v){fe.f=fe.inline=F,_.highlightFormatting&&(fe.formatting="link-string");var le=P(fe);return fe.linkHref=!1,le}return d.match(T[v]),fe.linkHref=!0,P(fe)}}function g(v,d){return v.match(/^([^\]\\]|\\.)*\]:/,!1)?(d.f=y,v.next(),_.highlightFormatting&&(d.formatting="link"),d.linkText=!0,P(d)):N(v,d,F)}function y(v,d){if(v.match("]:",!0)){d.f=d.inline=j,_.highlightFormatting&&(d.formatting="link");var fe=P(d);return d.linkText=!1,fe}return v.match(/^([^\]\\]|\\.)+/,!0),k.linkText}function j(v,d){return v.eatSpace()?null:(v.match(/^[^\s]+/,!0),v.peek()===void 0?d.linkTitle=!0:v.match(/^(?:\s+(?:"(?:[^"\\]|\\.)+"|'(?:[^'\\]|\\.)+'|\((?:[^)\\]|\\.)+\)))?/,!0),d.f=d.inline=F,k.linkHref+" url")}var de={startState:function(){return{f:p,prevLine:{stream:null},thisLine:{stream:null},block:p,htmlState:null,indentation:0,inline:F,text:V,formatting:!1,linkText:!1,linkHref:!1,linkTitle:!1,code:0,em:!1,strong:!1,header:0,setext:0,hr:!1,taskList:!1,list:!1,listStack:[],quote:0,trailingSpace:0,trailingSpaceNewLine:!1,strikethrough:!1,emoji:!1,fencedEndRE:null}},copyState:function(v){return{f:v.f,prevLine:v.prevLine,thisLine:v.thisLine,block:v.block,htmlState:v.htmlState&&b.copyState(te,v.htmlState),indentation:v.indentation,localMode:v.localMode,localState:v.localMode?b.copyState(v.localMode,v.localState):null,inline:v.inline,text:v.text,formatting:!1,linkText:v.linkText,linkTitle:v.linkTitle,linkHref:v.linkHref,code:v.code,em:v.em,strong:v.strong,strikethrough:v.strikethrough,emoji:v.emoji,header:v.header,setext:v.setext,hr:v.hr,taskList:v.taskList,list:v.list,listStack:v.listStack.slice(0),quote:v.quote,indentedCode:v.indentedCode,trailingSpace:v.trailingSpace,trailingSpaceNewLine:v.trailingSpaceNewLine,md_inside:v.md_inside,fencedEndRE:v.fencedEndRE}},token:function(v,d){if(d.formatting=!1,v!=d.thisLine.stream){if(d.header=0,d.hr=!1,v.match(/^\s*$/,!0))return q(d),null;if(d.prevLine=d.thisLine,d.thisLine={stream:v},d.taskList=!1,d.trailingSpace=0,d.trailingSpaceNewLine=!1,!d.localState&&(d.f=d.block,d.f!=W)){var fe=v.match(/^\s*/,!0)[0].replace(/\t/g,M).length;if(d.indentation=fe,d.indentationDiff=null,fe>0)return null}}return d.f(v,d)},innerMode:function(v){return v.block==W?{state:v.htmlState,mode:te}:v.localState?{state:v.localState,mode:v.localMode}:{state:v,mode:de}},indent:function(v,d,fe){return v.block==W&&te.indent?te.indent(v.htmlState,d,fe):v.localState&&v.localMode.indent?v.localMode.indent(v.localState,d,fe):b.Pass},blankLine:q,getType:P,blockCommentStart:"",closeBrackets:"()[]{}''\"\"``",fold:"markdown"};return de},"xml"),b.defineMIME("text/markdown","markdown"),b.defineMIME("text/x-markdown","markdown")})})()),Da.exports}nf();var Na={exports:{}},Ea;function of(){return Ea||(Ea=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineOption("placeholder","",function(I,Y,ne){var S=ne&&ne!=b.Init;if(Y&&!S)I.on("blur",oe),I.on("change",Q),I.on("swapDoc",Q),b.on(I.getInputField(),"compositionupdate",I.state.placeholderCompose=function(){te(I)}),Q(I);else if(!Y&&S){I.off("blur",oe),I.off("change",Q),I.off("swapDoc",Q),b.off(I.getInputField(),"compositionupdate",I.state.placeholderCompose),pe(I);var R=I.getWrapperElement();R.className=R.className.replace(" CodeMirror-empty","")}Y&&!I.hasFocus()&&oe(I)});function pe(I){I.state.placeholder&&(I.state.placeholder.parentNode.removeChild(I.state.placeholder),I.state.placeholder=null)}function _(I){pe(I);var Y=I.state.placeholder=document.createElement("pre");Y.style.cssText="height: 0; overflow: visible",Y.style.direction=I.getOption("direction"),Y.className="CodeMirror-placeholder CodeMirror-line-like";var ne=I.getOption("placeholder");typeof ne=="string"&&(ne=document.createTextNode(ne)),Y.appendChild(ne),I.display.lineSpace.insertBefore(Y,I.display.lineSpace.firstChild)}function te(I){setTimeout(function(){var Y=!1;if(I.lineCount()==1){var ne=I.getInputField();Y=ne.nodeName=="TEXTAREA"?!I.getLine(0).length:!/[^\u200b]/.test(ne.querySelector(".CodeMirror-line").textContent)}Y?_(I):pe(I)},20)}function oe(I){k(I)&&_(I)}function Q(I){var Y=I.getWrapperElement(),ne=k(I);Y.className=Y.className.replace(" CodeMirror-empty","")+(ne?" CodeMirror-empty":""),ne?_(I):pe(I)}function k(I){return I.lineCount()===1&&I.getLine(0)===""}})})()),Na.exports}of();var Oa={exports:{}},Pa;function lf(){return Pa||(Pa=1,(function(ct,xt){(function(b){b(mt())})(function(b){b.defineSimpleMode=function(S,R){b.defineMode(S,function(A){return b.simpleMode(A,R)})},b.simpleMode=function(S,R){pe(R,"start");var A={},$=R.meta||{},ue=!1;for(var O in R)if(O!=$&&R.hasOwnProperty(O))for(var w=A[O]=[],M=R[O],N=0;N2&&z.token&&typeof z.token!="string"){for(var p=2;p-1)return b.Pass;var O=A.indent.length-1,w=S[A.state];e:for(;;){for(var M=0;M",")":"(<","[":"]>","]":"[<","{":"}>","}":"{<","<":">>",">":"<<"};function oe(S){return S&&S.bracketRegex||/[(){}[\]]/}function Q(S,R,A){var $=S.getLineHandle(R.line),ue=R.ch-1,O=A&&A.afterCursor;O==null&&(O=/(^| )cm-fat-cursor($| )/.test(S.getWrapperElement().className));var w=oe(A),M=!O&&ue>=0&&w.test($.text.charAt(ue))&&te[$.text.charAt(ue)]||w.test($.text.charAt(ue+1))&&te[$.text.charAt(++ue)];if(!M)return null;var N=M.charAt(1)==">"?1:-1;if(A&&A.strict&&N>0!=(ue==R.ch))return null;var z=S.getTokenTypeAt(_(R.line,ue+1)),X=k(S,_(R.line,ue+(N>0?1:0)),N,z,A);return X==null?null:{from:_(R.line,ue),to:X&&X.pos,match:X&&X.ch==M.charAt(0),forward:N>0}}function k(S,R,A,$,ue){for(var O=ue&&ue.maxScanLineLength||1e4,w=ue&&ue.maxScanLines||1e3,M=[],N=oe(ue),z=A>0?Math.min(R.line+w,S.lastLine()+1):Math.max(S.firstLine()-1,R.line-w),X=R.line;X!=z;X+=A){var q=S.getLine(X);if(q){var p=A>0?0:q.length-1,W=A>0?q.length:-1;if(!(q.length>O))for(X==R.line&&(p=R.ch-(A<0?1:0));p!=W;p+=A){var J=q.charAt(p);if(N.test(J)&&($===void 0||(S.getTokenTypeAt(_(X,p+1))||"")==($||""))){var P=te[J];if(P&&P.charAt(1)==">"==A>0)M.push(J);else if(M.length)M.pop();else return{pos:_(X,p),ch:J}}}}}return X-A==(A>0?S.lastLine():S.firstLine())?!1:null}function I(S,R,A){for(var $=S.state.matchBrackets.maxHighlightLineLength||1e3,ue=A&&A.highlightNonMatching,O=[],w=S.listSelections(),M=0;M`,triples:"",explode:"[]{}"},_=b.Pos;b.defineOption("autoCloseBrackets",!1,function(O,w,M){M&&M!=b.Init&&(O.removeKeyMap(oe),O.state.closeBrackets=null),w&&(Q(te(w,"pairs")),O.state.closeBrackets=w,O.addKeyMap(oe))});function te(O,w){return w=="pairs"&&typeof O=="string"?O:typeof O=="object"&&O[w]!=null?O[w]:pe[w]}var oe={Backspace:Y,Enter:ne};function Q(O){for(var w=0;w=0;z--){var q=N[z].head;O.replaceRange("",_(q.line,q.ch-1),_(q.line,q.ch+1),"+delete")}}function ne(O){var w=I(O),M=w&&te(w,"explode");if(!M||O.getOption("disableInput"))return b.Pass;for(var N=O.listSelections(),z=0;z0?{line:q.head.line,ch:q.head.ch+w}:{line:q.head.line-1};M.push({anchor:p,head:p})}O.setSelections(M,z)}function R(O){var w=b.cmpPos(O.anchor,O.head)>0;return{anchor:new _(O.anchor.line,O.anchor.ch+(w?-1:1)),head:new _(O.head.line,O.head.ch+(w?1:-1))}}function A(O,w){var M=I(O);if(!M||O.getOption("disableInput"))return b.Pass;var N=te(M,"pairs"),z=N.indexOf(w);if(z==-1)return b.Pass;for(var X=te(M,"closeBefore"),q=te(M,"triples"),p=N.charAt(z+1)==w,W=O.listSelections(),J=z%2==0,P,V=0;V=0&&O.getRange(G,_(G.line,G.ch+3))==w+w+w?c="skipThree":c="skip";else if(p&&G.ch>1&&q.indexOf(w)>=0&&O.getRange(_(G.line,G.ch-2),G)==w+w){if(G.ch>2&&/\bstring/.test(O.getTokenTypeAt(_(G.line,G.ch-2))))return b.Pass;c="addFour"}else if(p){var C=G.ch==0?" ":O.getRange(_(G.line,G.ch-1),G);if(!b.isWordChar(T)&&C!=w&&!b.isWordChar(C))c="both";else return b.Pass}else if(J&&(T.length===0||/\s/.test(T)||X.indexOf(T)>-1))c="both";else return b.Pass;if(!P)P=c;else if(P!=c)return b.Pass}var g=z%2?N.charAt(z-1):w,y=z%2?w:N.charAt(z+1);O.operation(function(){if(P=="skip")S(O,1);else if(P=="skipThree")S(O,3);else if(P=="surround"){for(var j=O.getSelections(),de=0;dep);W++){var J=w.getLine(q++);z=z==null?J:z+` +`+J}X=X*2,M.lastIndex=N.ch;var P=M.exec(z);if(P){var V=z.slice(0,P.index).split(` +`),F=P[0].split(` +`),G=N.line+V.length-1,c=V[V.length-1].length;return{from:pe(G,c),to:pe(G+F.length-1,F.length==1?c+F[0].length:F[F.length-1].length),match:P}}}}function I(w,M,N){for(var z,X=0;X<=w.length;){M.lastIndex=X;var q=M.exec(w);if(!q)break;var p=q.index+q[0].length;if(p>w.length-N)break;(!z||p>z.index+z[0].length)&&(z=q),X=q.index+1}return z}function Y(w,M,N){M=te(M,"g");for(var z=N.line,X=N.ch,q=w.firstLine();z>=q;z--,X=-1){var p=w.getLine(z),W=I(p,M,X<0?0:p.length-X);if(W)return{from:pe(z,W.index),to:pe(z,W.index+W[0].length),match:W}}}function ne(w,M,N){if(!oe(M))return Y(w,M,N);M=te(M,"gm");for(var z,X=1,q=w.getLine(N.line).length-N.ch,p=N.line,W=w.firstLine();p>=W;){for(var J=0;J=W;J++){var P=w.getLine(p--);z=z==null?P:P+` +`+z}X*=2;var V=I(z,M,q);if(V){var F=z.slice(0,V.index).split(` +`),G=V[0].split(` +`),c=p+F.length,T=F[F.length-1].length;return{from:pe(c,T),to:pe(c+G.length-1,G.length==1?T+G[0].length:G[G.length-1].length),match:V}}}}var S,R;String.prototype.normalize?(S=function(w){return w.normalize("NFD").toLowerCase()},R=function(w){return w.normalize("NFD")}):(S=function(w){return w.toLowerCase()},R=function(w){return w});function A(w,M,N,z){if(w.length==M.length)return N;for(var X=0,q=N+Math.max(0,w.length-M.length);;){if(X==q)return X;var p=X+q>>1,W=z(w.slice(0,p)).length;if(W==N)return p;W>N?q=p:X=p+1}}function $(w,M,N,z){if(!M.length)return null;var X=z?S:R,q=X(M).split(/\r|\n\r?/);e:for(var p=N.line,W=N.ch,J=w.lastLine()+1-q.length;p<=J;p++,W=0){var P=w.getLine(p).slice(W),V=X(P);if(q.length==1){var F=V.indexOf(q[0]);if(F==-1)continue e;var N=A(P,V,F,X)+W;return{from:pe(p,A(P,V,F,X)+W),to:pe(p,A(P,V,F+q[0].length,X)+W)}}else{var G=V.length-q[0].length;if(V.slice(G)!=q[0])continue e;for(var c=1;c=J;p--,W=-1){var P=w.getLine(p);W>-1&&(P=P.slice(0,W));var V=X(P);if(q.length==1){var F=V.lastIndexOf(q[0]);if(F==-1)continue e;return{from:pe(p,A(P,V,F,X)),to:pe(p,A(P,V,F+q[0].length,X))}}else{var G=q[q.length-1];if(V.slice(0,G.length)!=G)continue e;for(var c=1,N=p-q.length+1;c(this.doc.getLine(M.line)||"").length&&(M.ch=0,M.line++)),b.cmpPos(M,this.doc.clipPos(M))!=0))return this.atOccurrence=!1;var N=this.matches(w,M);if(this.afterEmptyMatch=N&&b.cmpPos(N.from,N.to)==0,N)return this.pos=N,this.atOccurrence=!0,this.pos.match||!0;var z=pe(w?this.doc.firstLine():this.doc.lastLine()+1,0);return this.pos={from:z,to:z},this.atOccurrence=!1},from:function(){if(this.atOccurrence)return this.pos.from},to:function(){if(this.atOccurrence)return this.pos.to},replace:function(w,M){if(this.atOccurrence){var N=b.splitLines(w);this.doc.replaceRange(N,this.pos.from,this.pos.to,M),this.pos.to=pe(this.pos.from.line+N.length-1,N[N.length-1].length+(N.length==1?this.pos.from.ch:0))}}},b.defineExtension("getSearchCursor",function(w,M,N){return new O(this.doc,w,M,N)}),b.defineDocExtension("getSearchCursor",function(w,M,N){return new O(this,w,M,N)}),b.defineExtension("selectMatches",function(w,M){for(var N=[],z=this.getSearchCursor(w,this.getCursor("from"),M);z.findNext()&&!(b.cmpPos(z.to(),this.getCursor("to"))>0);)N.push({anchor:z.from(),head:z.to()});N.length&&this.setSelections(N,0)})})})()),Ha.exports}var qa={exports:{}},ja;function po(){return ja||(ja=1,(function(ct,xt){(function(b){b(mt())})(function(b){function pe(te,oe,Q){var k=te.getWrapperElement(),I;return I=k.appendChild(document.createElement("div")),Q?I.className="CodeMirror-dialog CodeMirror-dialog-bottom":I.className="CodeMirror-dialog CodeMirror-dialog-top",typeof oe=="string"?I.innerHTML=oe:I.appendChild(oe),b.addClass(k,"dialog-opened"),I}function _(te,oe){te.state.currentNotificationClose&&te.state.currentNotificationClose(),te.state.currentNotificationClose=oe}b.defineExtension("openDialog",function(te,oe,Q){Q||(Q={}),_(this,null);var k=pe(this,te,Q.bottom),I=!1,Y=this;function ne(A){if(typeof A=="string")S.value=A;else{if(I)return;I=!0,b.rmClass(k.parentNode,"dialog-opened"),k.parentNode.removeChild(k),Y.focus(),Q.onClose&&Q.onClose(k)}}var S=k.getElementsByTagName("input")[0],R;return S?(S.focus(),Q.value&&(S.value=Q.value,Q.selectValueOnOpen!==!1&&S.select()),Q.onInput&&b.on(S,"input",function(A){Q.onInput(A,S.value,ne)}),Q.onKeyUp&&b.on(S,"keyup",function(A){Q.onKeyUp(A,S.value,ne)}),b.on(S,"keydown",function(A){Q&&Q.onKeyDown&&Q.onKeyDown(A,S.value,ne)||((A.keyCode==27||Q.closeOnEnter!==!1&&A.keyCode==13)&&(S.blur(),b.e_stop(A),ne()),A.keyCode==13&&oe(S.value,A))}),Q.closeOnBlur!==!1&&b.on(k,"focusout",function(A){A.relatedTarget!==null&&ne()})):(R=k.getElementsByTagName("button")[0])&&(b.on(R,"click",function(){ne(),Y.focus()}),Q.closeOnBlur!==!1&&b.on(R,"blur",ne),R.focus()),ne}),b.defineExtension("openConfirm",function(te,oe,Q){_(this,null);var k=pe(this,te,Q&&Q.bottom),I=k.getElementsByTagName("button"),Y=!1,ne=this,S=1;function R(){Y||(Y=!0,b.rmClass(k.parentNode,"dialog-opened"),k.parentNode.removeChild(k),ne.focus())}I[0].focus();for(var A=0;Ap.cursorCoords(y,"window").top&&((G=j).style.opacity=.4)}))};k(p,w(p),F,c,function(T,C){var g=b.keyName(T),y=p.getOption("extraKeys"),j=y&&y[g]||b.keyMap[p.getOption("keyMap")][g];j=="findNext"||j=="findPrev"||j=="findPersistentNext"||j=="findPersistentPrev"?(b.e_stop(T),R(p,te(p),C),p.execCommand(j)):(j=="find"||j=="findPersistent")&&(b.e_stop(T),c(C,T))}),P&&F&&(R(p,V,F),$(p,W))}else I(p,w(p),"Search for:",F,function(T){T&&!V.query&&p.operation(function(){R(p,V,T),V.posFrom=V.posTo=p.getCursor(),$(p,W)})})}function $(p,W,J){p.operation(function(){var P=te(p),V=Q(p,P.query,W?P.posFrom:P.posTo);!V.find(W)&&(V=Q(p,P.query,W?b.Pos(p.lastLine()):b.Pos(p.firstLine(),0)),!V.find(W))||(p.setSelection(V.from(),V.to()),p.scrollIntoView({from:V.from(),to:V.to()},20),P.posFrom=V.from(),P.posTo=V.to(),J&&J(V.from(),V.to()))})}function ue(p){p.operation(function(){var W=te(p);W.lastQuery=W.query,W.query&&(W.query=W.queryText=null,p.removeOverlay(W.overlay),W.annotate&&(W.annotate.clear(),W.annotate=null))})}function O(p,W){var J=p?document.createElement(p):document.createDocumentFragment();for(var P in W)J[P]=W[P];for(var V=2;V '+oe.phrase("(Use line:column or scroll% syntax)")+""}function te(oe,Q){var k=Number(Q);return/^[-+]/.test(Q)?oe.getCursor().line+k:k-1}b.commands.jumpToLine=function(oe){var Q=oe.getCursor();pe(oe,_(oe),oe.phrase("Jump to line:"),Q.line+1+":"+Q.ch,function(k){if(k){var I;if(I=/^\s*([\+\-]?\d+)\s*\:\s*(\d+)\s*$/.exec(k))oe.setCursor(te(oe,I[1]),Number(I[2]));else if(I=/^\s*([\+\-]?\d+(\.\d+)?)\%\s*/.exec(k)){var Y=Math.round(oe.lineCount()*Number(I[1])/100);/^[-+]/.test(I[1])&&(Y=Q.line+Y+1),oe.setCursor(Y-1,Q.ch)}else(I=/^\s*\:?\s*([\+\-]?\d+)\s*/.exec(k))&&oe.setCursor(te(oe,I[1]),Q.ch)}})},b.keyMap.default["Alt-G"]="jumpToLine"})})()),Ua.exports}ff();po();export{df as default}; diff --git a/node_modules.codex-backup/playwright-core/lib/vite/traceViewer/assets/defaultSettingsView-GTWI-W_B.js b/node_modules.codex-backup/playwright-core/lib/vite/traceViewer/assets/defaultSettingsView-GTWI-W_B.js new file mode 100644 index 00000000..3001229c --- /dev/null +++ b/node_modules.codex-backup/playwright-core/lib/vite/traceViewer/assets/defaultSettingsView-GTWI-W_B.js @@ -0,0 +1,262 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./codeMirrorModule-DS0FLvoc.js","../codeMirrorModule.DYBRYzYX.css"])))=>i.map(i=>d[i]); +(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const l of document.querySelectorAll('link[rel="modulepreload"]'))r(l);new MutationObserver(l=>{for(const o of l)if(o.type==="childList")for(const u of o.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&r(u)}).observe(document,{childList:!0,subtree:!0});function i(l){const o={};return l.integrity&&(o.integrity=l.integrity),l.referrerPolicy&&(o.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?o.credentials="include":l.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(l){if(l.ep)return;l.ep=!0;const o=i(l);fetch(l.href,o)}})();function ex(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var Wf={exports:{}},Ma={};/** + * @license React + * react-jsx-runtime.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var qy;function tx(){if(qy)return Ma;qy=1;var n=Symbol.for("react.transitional.element"),e=Symbol.for("react.fragment");function i(r,l,o){var u=null;if(o!==void 0&&(u=""+o),l.key!==void 0&&(u=""+l.key),"key"in l){o={};for(var f in l)f!=="key"&&(o[f]=l[f])}else o=l;return l=o.ref,{$$typeof:n,type:r,key:u,ref:l!==void 0?l:null,props:o}}return Ma.Fragment=e,Ma.jsx=i,Ma.jsxs=i,Ma}var $y;function nx(){return $y||($y=1,Wf.exports=tx()),Wf.exports}var v=nx(),eh={exports:{}},ce={};/** + * @license React + * react.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Iy;function ix(){if(Iy)return ce;Iy=1;var n=Symbol.for("react.transitional.element"),e=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),u=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),g=Symbol.for("react.memo"),b=Symbol.for("react.lazy"),m=Symbol.for("react.activity"),S=Symbol.iterator;function w(M){return M===null||typeof M!="object"?null:(M=S&&M[S]||M["@@iterator"],typeof M=="function"?M:null)}var T={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},x=Object.assign,_={};function A(M,Y,Z){this.props=M,this.context=Y,this.refs=_,this.updater=Z||T}A.prototype.isReactComponent={},A.prototype.setState=function(M,Y){if(typeof M!="object"&&typeof M!="function"&&M!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,M,Y,"setState")},A.prototype.forceUpdate=function(M){this.updater.enqueueForceUpdate(this,M,"forceUpdate")};function N(){}N.prototype=A.prototype;function $(M,Y,Z){this.props=M,this.context=Y,this.refs=_,this.updater=Z||T}var G=$.prototype=new N;G.constructor=$,x(G,A.prototype),G.isPureReactComponent=!0;var X=Array.isArray;function U(){}var L={H:null,A:null,T:null,S:null},B=Object.prototype.hasOwnProperty;function O(M,Y,Z){var P=Z.ref;return{$$typeof:n,type:M,key:Y,ref:P!==void 0?P:null,props:Z}}function ne(M,Y){return O(M.type,Y,M.props)}function te(M){return typeof M=="object"&&M!==null&&M.$$typeof===n}function V(M){var Y={"=":"=0",":":"=2"};return"$"+M.replace(/[=:]/g,function(Z){return Y[Z]})}var W=/\/+/g;function ge(M,Y){return typeof M=="object"&&M!==null&&M.key!=null?V(""+M.key):Y.toString(36)}function Ue(M){switch(M.status){case"fulfilled":return M.value;case"rejected":throw M.reason;default:switch(typeof M.status=="string"?M.then(U,U):(M.status="pending",M.then(function(Y){M.status==="pending"&&(M.status="fulfilled",M.value=Y)},function(Y){M.status==="pending"&&(M.status="rejected",M.reason=Y)})),M.status){case"fulfilled":return M.value;case"rejected":throw M.reason}}throw M}function I(M,Y,Z,P,oe){var he=typeof M;(he==="undefined"||he==="boolean")&&(M=null);var be=!1;if(M===null)be=!0;else switch(he){case"bigint":case"string":case"number":be=!0;break;case"object":switch(M.$$typeof){case n:case e:be=!0;break;case b:return be=M._init,I(be(M._payload),Y,Z,P,oe)}}if(be)return oe=oe(M),be=P===""?"."+ge(M,0):P,X(oe)?(Z="",be!=null&&(Z=be.replace(W,"$&/")+"/"),I(oe,Y,Z,"",function(Et){return Et})):oe!=null&&(te(oe)&&(oe=ne(oe,Z+(oe.key==null||M&&M.key===oe.key?"":(""+oe.key).replace(W,"$&/")+"/")+be)),Y.push(oe)),1;be=0;var rt=P===""?".":P+":";if(X(M))for(var ke=0;ke{let u=!1;return n().then(f=>{u||o(f)}),()=>{u=!0}},e),l}function ms(){const n=vt.useRef(null),[e]=xh(n);return[e,n]}function xh(n){const[e,i]=vt.useState(new DOMRect(0,0,10,10)),r=vt.useCallback(()=>{const l=n==null?void 0:n.current;l&&i(l.getBoundingClientRect())},[n]);return vt.useLayoutEffect(()=>{const l=n==null?void 0:n.current;if(!l)return;r();const o=new ResizeObserver(r);return o.observe(l),window.addEventListener("resize",r),()=>{o.disconnect(),window.removeEventListener("resize",r)}},[r,n]),[e,r]}function Zb(n,e,i,r,l){let o=0,u=n.length;for(;o>1;i(e,n[f])>=0?o=f+1:u=f}return u}function Gy(n){const e=document.createElement("textarea");e.style.position="absolute",e.style.zIndex="-1000",e.value=n,document.body.appendChild(e),e.select(),document.execCommand("copy"),e.remove()}function pn(n,e){n&&(e=us.getObject(n,e));const[i,r]=vt.useState(e),l=vt.useCallback(o=>{n?us.setObject(n,o):r(o)},[n,r]);return vt.useEffect(()=>{if(n){const o=()=>r(us.getObject(n,e));return us.onChangeEmitter.addEventListener(n,o),()=>us.onChangeEmitter.removeEventListener(n,o)}},[e,n]),[i,l]}const _h=new Map,Wb=new Map;let tc;function rr(n,e){const[i,r]=vt.useState();Wb.set(n,{setter:r,defaultValue:e});const l=vt.useCallback(o=>{const u=_h.get(tc||"default")||{};u[n]=o,_h.set(tc||"default",u),r(o)},[n]);return[i,l]}function sx(n){if(tc===n)return;tc=n;const e=_h.get(n)||{};for(const[i,r]of Wb.entries())r.setter(e[i]||r.defaultValue)}class rx{constructor(){this.onChangeEmitter=new EventTarget}getString(e,i){return localStorage[e]||i}setString(e,i){var r;localStorage[e]=i,this.onChangeEmitter.dispatchEvent(new Event(e)),(r=window.saveSettings)==null||r.call(window)}getObject(e,i){if(!localStorage[e])return i;try{return JSON.parse(localStorage[e])}catch{return i}}setObject(e,i){var r;localStorage[e]=JSON.stringify(i),this.onChangeEmitter.dispatchEvent(new Event(e)),(r=window.saveSettings)==null||r.call(window)}}const us=new rx;function st(...n){return n.filter(Boolean).join(" ")}function e0(n){n&&(n!=null&&n.scrollIntoViewIfNeeded?n.scrollIntoViewIfNeeded(!1):n==null||n.scrollIntoView())}const Ky="\\u0000-\\u0020\\u007f-\\u009f",t0=new RegExp("(?:[a-zA-Z][a-zA-Z0-9+.-]{2,}:\\/\\/|www\\.)[^\\s"+Ky+'"]{2,}[^\\s'+Ky+`"')}\\],:;.!?]`,"ug");function ax(){const[n,e]=vt.useState(!1),i=vt.useCallback(()=>{const r=[];return e(l=>(r.push(setTimeout(()=>e(!1),1e3)),l?(r.push(setTimeout(()=>e(!0),50)),!1):!0)),()=>r.forEach(clearTimeout)},[e]);return[n,i]}const lx="system",n0="theme",ox=[{label:"Dark mode",value:"dark-mode"},{label:"Light mode",value:"light-mode"},{label:"System",value:"system"}],i0=window.matchMedia("(prefers-color-scheme: dark)");function m2(){document.playwrightThemeInitialized||(document.playwrightThemeInitialized=!0,document.defaultView.addEventListener("focus",n=>{n.target.document.nodeType===Node.DOCUMENT_NODE&&document.body.classList.remove("inactive")},!1),document.defaultView.addEventListener("blur",n=>{document.body.classList.add("inactive")},!1),Eh(Th()),i0.addEventListener("change",()=>{Eh(Th())}))}const Fh=new Set;function Eh(n){const e=cx(),i=n==="system"?i0.matches?"dark-mode":"light-mode":n;if(e!==i){e&&document.documentElement.classList.remove(e),document.documentElement.classList.add(i);for(const r of Fh)r(i)}}function y2(n){Fh.add(n)}function b2(n){Fh.delete(n)}function Th(){return us.getString(n0,lx)}function cx(){return document.documentElement.classList.contains("dark-mode")?"dark-mode":document.documentElement.classList.contains("light-mode")?"light-mode":null}function ux(){const[n,e]=vt.useState(Th());return vt.useEffect(()=>{us.setString(n0,n),Eh(n)},[n]),[n,e]}var th={exports:{}},Oa={},nh={exports:{}},ih={};/** + * @license React + * scheduler.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Xy;function fx(){return Xy||(Xy=1,(function(n){function e(I,J){var re=I.length;I.push(J);e:for(;0>>1,_e=I[xe];if(0>>1;xel(Z,re))P<_e&&0>l(oe,Z)?(I[xe]=oe,I[P]=re,xe=P):(I[xe]=Z,I[Y]=re,xe=Y);else if(P<_e&&0>l(oe,re))I[xe]=oe,I[P]=re,xe=P;else break e}}return J}function l(I,J){var re=I.sortIndex-J.sortIndex;return re!==0?re:I.id-J.id}if(n.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;n.unstable_now=function(){return o.now()}}else{var u=Date,f=u.now();n.unstable_now=function(){return u.now()-f}}var d=[],g=[],b=1,m=null,S=3,w=!1,T=!1,x=!1,_=!1,A=typeof setTimeout=="function"?setTimeout:null,N=typeof clearTimeout=="function"?clearTimeout:null,$=typeof setImmediate<"u"?setImmediate:null;function G(I){for(var J=i(g);J!==null;){if(J.callback===null)r(g);else if(J.startTime<=I)r(g),J.sortIndex=J.expirationTime,e(d,J);else break;J=i(g)}}function X(I){if(x=!1,G(I),!T)if(i(d)!==null)T=!0,U||(U=!0,V());else{var J=i(g);J!==null&&Ue(X,J.startTime-I)}}var U=!1,L=-1,B=5,O=-1;function ne(){return _?!0:!(n.unstable_now()-OI&&ne());){var xe=m.callback;if(typeof xe=="function"){m.callback=null,S=m.priorityLevel;var _e=xe(m.expirationTime<=I);if(I=n.unstable_now(),typeof _e=="function"){m.callback=_e,G(I),J=!0;break t}m===i(d)&&r(d),G(I)}else r(d);m=i(d)}if(m!==null)J=!0;else{var M=i(g);M!==null&&Ue(X,M.startTime-I),J=!1}}break e}finally{m=null,S=re,w=!1}J=void 0}}finally{J?V():U=!1}}}var V;if(typeof $=="function")V=function(){$(te)};else if(typeof MessageChannel<"u"){var W=new MessageChannel,ge=W.port2;W.port1.onmessage=te,V=function(){ge.postMessage(null)}}else V=function(){A(te,0)};function Ue(I,J){L=A(function(){I(n.unstable_now())},J)}n.unstable_IdlePriority=5,n.unstable_ImmediatePriority=1,n.unstable_LowPriority=4,n.unstable_NormalPriority=3,n.unstable_Profiling=null,n.unstable_UserBlockingPriority=2,n.unstable_cancelCallback=function(I){I.callback=null},n.unstable_forceFrameRate=function(I){0>I||125xe?(I.sortIndex=re,e(g,I),i(d)===null&&I===i(g)&&(x?(N(L),L=-1):x=!0,Ue(X,re-xe))):(I.sortIndex=_e,e(d,I),T||w||(T=!0,U||(U=!0,V()))),I},n.unstable_shouldYield=ne,n.unstable_wrapCallback=function(I){var J=S;return function(){var re=S;S=J;try{return I.apply(this,arguments)}finally{S=re}}}})(ih)),ih}var Yy;function hx(){return Yy||(Yy=1,nh.exports=fx()),nh.exports}var sh={exports:{}},wt={};/** + * @license React + * react-dom.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Fy;function dx(){if(Fy)return wt;Fy=1;var n=Xh();function e(d){var g="https://react.dev/errors/"+d;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}return n(),sh.exports=dx(),sh.exports}/** + * @license React + * react-dom-client.production.js + * + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Py;function gx(){if(Py)return Oa;Py=1;var n=hx(),e=Xh(),i=px();function r(t){var s="https://react.dev/errors/"+t;if(1_e||(t.current=xe[_e],xe[_e]=null,_e--)}function Z(t,s){_e++,xe[_e]=t.current,t.current=s}var P=M(null),oe=M(null),he=M(null),be=M(null);function rt(t,s){switch(Z(he,s),Z(oe,t),Z(P,null),s.nodeType){case 9:case 11:t=(t=s.documentElement)&&(t=t.namespaceURI)?cy(t):0;break;default:if(t=s.tagName,s=s.namespaceURI)s=cy(s),t=uy(s,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}Y(P),Z(P,t)}function ke(){Y(P),Y(oe),Y(he)}function Et(t){t.memoizedState!==null&&Z(be,t);var s=P.current,a=uy(s,t.type);s!==a&&(Z(oe,t),Z(P,a))}function fe(t){oe.current===t&&(Y(P),Y(oe)),be.current===t&&(Y(be),Aa._currentValue=re)}var Ne,qe;function Ee(t){if(Ne===void 0)try{throw Error()}catch(a){var s=a.stack.trim().match(/\n( *(at )?)/);Ne=s&&s[1]||"",qe=-1)":-1h||C[c]!==z[h]){var K=` +`+C[c].replace(" at new "," at ");return t.displayName&&K.includes("")&&(K=K.replace("",t.displayName)),K}while(1<=c&&0<=h);break}}}finally{Gt=!1,Error.prepareStackTrace=a}return(a=t?t.displayName||t.name:"")?Ee(a):""}function en(t,s){switch(t.tag){case 26:case 27:case 5:return Ee(t.type);case 16:return Ee("Lazy");case 13:return t.child!==s&&s!==null?Ee("Suspense Fallback"):Ee("Suspense");case 19:return Ee("SuspenseList");case 0:case 15:return Wt(t.type,!1);case 11:return Wt(t.type.render,!1);case 1:return Wt(t.type,!0);case 31:return Ee("Activity");default:return""}}function qi(t){try{var s="",a=null;do s+=en(t,a),a=t,t=t.return;while(t);return s}catch(c){return` +Error generating stack: `+c.message+` +`+c.stack}}var Ss=Object.prototype.hasOwnProperty,ri=n.unstable_scheduleCallback,Ur=n.unstable_cancelCallback,ai=n.unstable_shouldYield,zc=n.unstable_requestPaint,Tt=n.unstable_now,Uc=n.unstable_getCurrentPriorityLevel,hl=n.unstable_ImmediatePriority,Hr=n.unstable_UserBlockingPriority,li=n.unstable_NormalPriority,Hc=n.unstable_LowPriority,dl=n.unstable_IdlePriority,Bc=n.log,$i=n.unstable_setDisableYieldValue,En=null,At=null;function Tn(t){if(typeof Bc=="function"&&$i(t),At&&typeof At.setStrictMode=="function")try{At.setStrictMode(En,t)}catch{}}var Ct=Math.clz32?Math.clz32:Ii,pl=Math.log,ae=Math.LN2;function Ii(t){return t>>>=0,t===0?32:31-(pl(t)/ae|0)|0}var tn=256,gl=262144,ml=4194304;function Vi(t){var s=t&42;if(s!==0)return s;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function yl(t,s,a){var c=t.pendingLanes;if(c===0)return 0;var h=0,p=t.suspendedLanes,y=t.pingedLanes;t=t.warmLanes;var E=c&134217727;return E!==0?(c=E&~p,c!==0?h=Vi(c):(y&=E,y!==0?h=Vi(y):a||(a=E&~t,a!==0&&(h=Vi(a))))):(E=c&~p,E!==0?h=Vi(E):y!==0?h=Vi(y):a||(a=c&~t,a!==0&&(h=Vi(a)))),h===0?0:s!==0&&s!==h&&(s&p)===0&&(p=h&-h,a=s&-s,p>=a||p===32&&(a&4194048)!==0)?s:h}function Br(t,s){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&s)===0}function $S(t,s){switch(t){case 1:case 2:case 4:case 8:case 64:return s+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return s+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Gd(){var t=ml;return ml<<=1,(ml&62914560)===0&&(ml=4194304),t}function qc(t){for(var s=[],a=0;31>a;a++)s.push(t);return s}function qr(t,s){t.pendingLanes|=s,s!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function IS(t,s,a,c,h,p){var y=t.pendingLanes;t.pendingLanes=a,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=a,t.entangledLanes&=a,t.errorRecoveryDisabledLanes&=a,t.shellSuspendCounter=0;var E=t.entanglements,C=t.expirationTimes,z=t.hiddenUpdates;for(a=y&~a;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var FS=/[\n"\\]/g;function sn(t){return t.replace(FS,function(s){return"\\"+s.charCodeAt(0).toString(16)+" "})}function Xc(t,s,a,c,h,p,y,E){t.name="",y!=null&&typeof y!="function"&&typeof y!="symbol"&&typeof y!="boolean"?t.type=y:t.removeAttribute("type"),s!=null?y==="number"?(s===0&&t.value===""||t.value!=s)&&(t.value=""+nn(s)):t.value!==""+nn(s)&&(t.value=""+nn(s)):y!=="submit"&&y!=="reset"||t.removeAttribute("value"),s!=null?Yc(t,y,nn(s)):a!=null?Yc(t,y,nn(a)):c!=null&&t.removeAttribute("value"),h==null&&p!=null&&(t.defaultChecked=!!p),h!=null&&(t.checked=h&&typeof h!="function"&&typeof h!="symbol"),E!=null&&typeof E!="function"&&typeof E!="symbol"&&typeof E!="boolean"?t.name=""+nn(E):t.removeAttribute("name")}function ip(t,s,a,c,h,p,y,E){if(p!=null&&typeof p!="function"&&typeof p!="symbol"&&typeof p!="boolean"&&(t.type=p),s!=null||a!=null){if(!(p!=="submit"&&p!=="reset"||s!=null)){Kc(t);return}a=a!=null?""+nn(a):"",s=s!=null?""+nn(s):a,E||s===t.value||(t.value=s),t.defaultValue=s}c=c??h,c=typeof c!="function"&&typeof c!="symbol"&&!!c,t.checked=E?t.checked:!!c,t.defaultChecked=!!c,y!=null&&typeof y!="function"&&typeof y!="symbol"&&typeof y!="boolean"&&(t.name=y),Kc(t)}function Yc(t,s,a){s==="number"&&Sl(t.ownerDocument)===t||t.defaultValue===""+a||(t.defaultValue=""+a)}function As(t,s,a,c){if(t=t.options,s){s={};for(var h=0;h"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Zc=!1;if(zn)try{var Gr={};Object.defineProperty(Gr,"passive",{get:function(){Zc=!0}}),window.addEventListener("test",Gr,Gr),window.removeEventListener("test",Gr,Gr)}catch{Zc=!1}var ci=null,Wc=null,xl=null;function up(){if(xl)return xl;var t,s=Wc,a=s.length,c,h="value"in ci?ci.value:ci.textContent,p=h.length;for(t=0;t=Yr),mp=" ",yp=!1;function bp(t,s){switch(t){case"keyup":return x1.indexOf(s.keyCode)!==-1;case"keydown":return s.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function vp(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var Ms=!1;function E1(t,s){switch(t){case"compositionend":return vp(s);case"keypress":return s.which!==32?null:(yp=!0,mp);case"textInput":return t=s.data,t===mp&&yp?null:t;default:return null}}function T1(t,s){if(Ms)return t==="compositionend"||!su&&bp(t,s)?(t=up(),xl=Wc=ci=null,Ms=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(s.ctrlKey||s.altKey||s.metaKey)||s.ctrlKey&&s.altKey){if(s.char&&1=s)return{node:a,offset:s-t};t=c}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=Cp(a)}}function kp(t,s){return t&&s?t===s?!0:t&&t.nodeType===3?!1:s&&s.nodeType===3?kp(t,s.parentNode):"contains"in t?t.contains(s):t.compareDocumentPosition?!!(t.compareDocumentPosition(s)&16):!1:!1}function Mp(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var s=Sl(t.document);s instanceof t.HTMLIFrameElement;){try{var a=typeof s.contentWindow.location.href=="string"}catch{a=!1}if(a)t=s.contentWindow;else break;s=Sl(t.document)}return s}function lu(t){var s=t&&t.nodeName&&t.nodeName.toLowerCase();return s&&(s==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||s==="textarea"||t.contentEditable==="true")}var L1=zn&&"documentMode"in document&&11>=document.documentMode,Os=null,ou=null,Jr=null,cu=!1;function Op(t,s,a){var c=a.window===a?a.document:a.nodeType===9?a:a.ownerDocument;cu||Os==null||Os!==Sl(c)||(c=Os,"selectionStart"in c&&lu(c)?c={start:c.selectionStart,end:c.selectionEnd}:(c=(c.ownerDocument&&c.ownerDocument.defaultView||window).getSelection(),c={anchorNode:c.anchorNode,anchorOffset:c.anchorOffset,focusNode:c.focusNode,focusOffset:c.focusOffset}),Jr&&Pr(Jr,c)||(Jr=c,c=mo(ou,"onSelect"),0>=y,h-=y,An=1<<32-Ct(s)+h|a<pe?(Se=ie,ie=null):Se=ie.sibling;var Ae=H(j,ie,D[pe],F);if(Ae===null){ie===null&&(ie=Se);break}t&&ie&&Ae.alternate===null&&s(j,ie),k=p(Ae,k,pe),Te===null?se=Ae:Te.sibling=Ae,Te=Ae,ie=Se}if(pe===D.length)return a(j,ie),we&&Hn(j,pe),se;if(ie===null){for(;pepe?(Se=ie,ie=null):Se=ie.sibling;var Oi=H(j,ie,Ae.value,F);if(Oi===null){ie===null&&(ie=Se);break}t&&ie&&Oi.alternate===null&&s(j,ie),k=p(Oi,k,pe),Te===null?se=Oi:Te.sibling=Oi,Te=Oi,ie=Se}if(Ae.done)return a(j,ie),we&&Hn(j,pe),se;if(ie===null){for(;!Ae.done;pe++,Ae=D.next())Ae=Q(j,Ae.value,F),Ae!==null&&(k=p(Ae,k,pe),Te===null?se=Ae:Te.sibling=Ae,Te=Ae);return we&&Hn(j,pe),se}for(ie=c(ie);!Ae.done;pe++,Ae=D.next())Ae=q(ie,j,pe,Ae.value,F),Ae!==null&&(t&&Ae.alternate!==null&&ie.delete(Ae.key===null?pe:Ae.key),k=p(Ae,k,pe),Te===null?se=Ae:Te.sibling=Ae,Te=Ae);return t&&ie.forEach(function(Ww){return s(j,Ww)}),we&&Hn(j,pe),se}function Re(j,k,D,F){if(typeof D=="object"&&D!==null&&D.type===x&&D.key===null&&(D=D.props.children),typeof D=="object"&&D!==null){switch(D.$$typeof){case w:e:{for(var se=D.key;k!==null;){if(k.key===se){if(se=D.type,se===x){if(k.tag===7){a(j,k.sibling),F=h(k,D.props.children),F.return=j,j=F;break e}}else if(k.elementType===se||typeof se=="object"&&se!==null&&se.$$typeof===B&&es(se)===k.type){a(j,k.sibling),F=h(k,D.props),ia(F,D),F.return=j,j=F;break e}a(j,k);break}else s(j,k);k=k.sibling}D.type===x?(F=Qi(D.props.children,j.mode,F,D.key),F.return=j,j=F):(F=jl(D.type,D.key,D.props,null,j.mode,F),ia(F,D),F.return=j,j=F)}return y(j);case T:e:{for(se=D.key;k!==null;){if(k.key===se)if(k.tag===4&&k.stateNode.containerInfo===D.containerInfo&&k.stateNode.implementation===D.implementation){a(j,k.sibling),F=h(k,D.children||[]),F.return=j,j=F;break e}else{a(j,k);break}else s(j,k);k=k.sibling}F=mu(D,j.mode,F),F.return=j,j=F}return y(j);case B:return D=es(D),Re(j,k,D,F)}if(Ue(D))return ee(j,k,D,F);if(V(D)){if(se=V(D),typeof se!="function")throw Error(r(150));return D=se.call(D),le(j,k,D,F)}if(typeof D.then=="function")return Re(j,k,Bl(D),F);if(D.$$typeof===$)return Re(j,k,Dl(j,D),F);ql(j,D)}return typeof D=="string"&&D!==""||typeof D=="number"||typeof D=="bigint"?(D=""+D,k!==null&&k.tag===6?(a(j,k.sibling),F=h(k,D),F.return=j,j=F):(a(j,k),F=gu(D,j.mode,F),F.return=j,j=F),y(j)):a(j,k)}return function(j,k,D,F){try{na=0;var se=Re(j,k,D,F);return Is=null,se}catch(ie){if(ie===$s||ie===Ul)throw ie;var Te=Xt(29,ie,null,j.mode);return Te.lanes=F,Te.return=j,Te}finally{}}}var ns=eg(!0),tg=eg(!1),pi=!1;function Nu(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ku(t,s){t=t.updateQueue,s.updateQueue===t&&(s.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function gi(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function mi(t,s,a){var c=t.updateQueue;if(c===null)return null;if(c=c.shared,(Ce&2)!==0){var h=c.pending;return h===null?s.next=s:(s.next=h.next,h.next=s),c.pending=s,s=Ol(t),Hp(t,null,a),s}return Ml(t,c,s,a),Ol(t)}function sa(t,s,a){if(s=s.updateQueue,s!==null&&(s=s.shared,(a&4194048)!==0)){var c=s.lanes;c&=t.pendingLanes,a|=c,s.lanes=a,Xd(t,a)}}function Mu(t,s){var a=t.updateQueue,c=t.alternate;if(c!==null&&(c=c.updateQueue,a===c)){var h=null,p=null;if(a=a.firstBaseUpdate,a!==null){do{var y={lane:a.lane,tag:a.tag,payload:a.payload,callback:null,next:null};p===null?h=p=y:p=p.next=y,a=a.next}while(a!==null);p===null?h=p=s:p=p.next=s}else h=p=s;a={baseState:c.baseState,firstBaseUpdate:h,lastBaseUpdate:p,shared:c.shared,callbacks:c.callbacks},t.updateQueue=a;return}t=a.lastBaseUpdate,t===null?a.firstBaseUpdate=s:t.next=s,a.lastBaseUpdate=s}var Ou=!1;function ra(){if(Ou){var t=qs;if(t!==null)throw t}}function aa(t,s,a,c){Ou=!1;var h=t.updateQueue;pi=!1;var p=h.firstBaseUpdate,y=h.lastBaseUpdate,E=h.shared.pending;if(E!==null){h.shared.pending=null;var C=E,z=C.next;C.next=null,y===null?p=z:y.next=z,y=C;var K=t.alternate;K!==null&&(K=K.updateQueue,E=K.lastBaseUpdate,E!==y&&(E===null?K.firstBaseUpdate=z:E.next=z,K.lastBaseUpdate=C))}if(p!==null){var Q=h.baseState;y=0,K=z=C=null,E=p;do{var H=E.lane&-536870913,q=H!==E.lane;if(q?(ve&H)===H:(c&H)===H){H!==0&&H===Bs&&(Ou=!0),K!==null&&(K=K.next={lane:0,tag:E.tag,payload:E.payload,callback:null,next:null});e:{var ee=t,le=E;H=s;var Re=a;switch(le.tag){case 1:if(ee=le.payload,typeof ee=="function"){Q=ee.call(Re,Q,H);break e}Q=ee;break e;case 3:ee.flags=ee.flags&-65537|128;case 0:if(ee=le.payload,H=typeof ee=="function"?ee.call(Re,Q,H):ee,H==null)break e;Q=m({},Q,H);break e;case 2:pi=!0}}H=E.callback,H!==null&&(t.flags|=64,q&&(t.flags|=8192),q=h.callbacks,q===null?h.callbacks=[H]:q.push(H))}else q={lane:H,tag:E.tag,payload:E.payload,callback:E.callback,next:null},K===null?(z=K=q,C=Q):K=K.next=q,y|=H;if(E=E.next,E===null){if(E=h.shared.pending,E===null)break;q=E,E=q.next,q.next=null,h.lastBaseUpdate=q,h.shared.pending=null}}while(!0);K===null&&(C=Q),h.baseState=C,h.firstBaseUpdate=z,h.lastBaseUpdate=K,p===null&&(h.shared.lanes=0),wi|=y,t.lanes=y,t.memoizedState=Q}}function ng(t,s){if(typeof t!="function")throw Error(r(191,t));t.call(s)}function ig(t,s){var a=t.callbacks;if(a!==null)for(t.callbacks=null,t=0;tp?p:8;var y=I.T,E={};I.T=E,Pu(t,!1,s,a);try{var C=h(),z=I.S;if(z!==null&&z(E,C),C!==null&&typeof C=="object"&&typeof C.then=="function"){var K=I1(C,c);ca(t,s,K,Jt(t))}else ca(t,s,c,Jt(t))}catch(Q){ca(t,s,{then:function(){},status:"rejected",reason:Q},Jt())}finally{J.p=p,y!==null&&E.types!==null&&(y.types=E.types),I.T=y}}function F1(){}function Fu(t,s,a,c){if(t.tag!==5)throw Error(r(476));var h=Dg(t).queue;Rg(t,h,s,re,a===null?F1:function(){return zg(t),a(c)})}function Dg(t){var s=t.memoizedState;if(s!==null)return s;s={memoizedState:re,baseState:re,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:In,lastRenderedState:re},next:null};var a={};return s.next={memoizedState:a,baseState:a,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:In,lastRenderedState:a},next:null},t.memoizedState=s,t=t.alternate,t!==null&&(t.memoizedState=s),s}function zg(t){var s=Dg(t);s.next===null&&(s=t.alternate.memoizedState),ca(t,s.next.queue,{},Jt())}function Qu(){return dt(Aa)}function Ug(){return Pe().memoizedState}function Hg(){return Pe().memoizedState}function Q1(t){for(var s=t.return;s!==null;){switch(s.tag){case 24:case 3:var a=Jt();t=gi(a);var c=mi(s,t,a);c!==null&&(Ht(c,s,a),sa(c,s,a)),s={cache:Eu()},t.payload=s;return}s=s.return}}function P1(t,s,a){var c=Jt();a={lane:c,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},Pl(t)?qg(s,a):(a=du(t,s,a,c),a!==null&&(Ht(a,t,c),$g(a,s,c)))}function Bg(t,s,a){var c=Jt();ca(t,s,a,c)}function ca(t,s,a,c){var h={lane:c,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null};if(Pl(t))qg(s,h);else{var p=t.alternate;if(t.lanes===0&&(p===null||p.lanes===0)&&(p=s.lastRenderedReducer,p!==null))try{var y=s.lastRenderedState,E=p(y,a);if(h.hasEagerState=!0,h.eagerState=E,Kt(E,y))return Ml(t,s,h,0),De===null&&kl(),!1}catch{}finally{}if(a=du(t,s,h,c),a!==null)return Ht(a,t,c),$g(a,s,c),!0}return!1}function Pu(t,s,a,c){if(c={lane:2,revertLane:kf(),gesture:null,action:c,hasEagerState:!1,eagerState:null,next:null},Pl(t)){if(s)throw Error(r(479))}else s=du(t,a,c,2),s!==null&&Ht(s,t,2)}function Pl(t){var s=t.alternate;return t===de||s!==null&&s===de}function qg(t,s){Gs=Vl=!0;var a=t.pending;a===null?s.next=s:(s.next=a.next,a.next=s),t.pending=s}function $g(t,s,a){if((a&4194048)!==0){var c=s.lanes;c&=t.pendingLanes,a|=c,s.lanes=a,Xd(t,a)}}var ua={readContext:dt,use:Xl,useCallback:Ye,useContext:Ye,useEffect:Ye,useImperativeHandle:Ye,useLayoutEffect:Ye,useInsertionEffect:Ye,useMemo:Ye,useReducer:Ye,useRef:Ye,useState:Ye,useDebugValue:Ye,useDeferredValue:Ye,useTransition:Ye,useSyncExternalStore:Ye,useId:Ye,useHostTransitionStatus:Ye,useFormState:Ye,useActionState:Ye,useOptimistic:Ye,useMemoCache:Ye,useCacheRefresh:Ye};ua.useEffectEvent=Ye;var Ig={readContext:dt,use:Xl,useCallback:function(t,s){return Nt().memoizedState=[t,s===void 0?null:s],t},useContext:dt,useEffect:Tg,useImperativeHandle:function(t,s,a){a=a!=null?a.concat([t]):null,Fl(4194308,4,kg.bind(null,s,t),a)},useLayoutEffect:function(t,s){return Fl(4194308,4,t,s)},useInsertionEffect:function(t,s){Fl(4,2,t,s)},useMemo:function(t,s){var a=Nt();s=s===void 0?null:s;var c=t();if(is){Tn(!0);try{t()}finally{Tn(!1)}}return a.memoizedState=[c,s],c},useReducer:function(t,s,a){var c=Nt();if(a!==void 0){var h=a(s);if(is){Tn(!0);try{a(s)}finally{Tn(!1)}}}else h=s;return c.memoizedState=c.baseState=h,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:h},c.queue=t,t=t.dispatch=P1.bind(null,de,t),[c.memoizedState,t]},useRef:function(t){var s=Nt();return t={current:t},s.memoizedState=t},useState:function(t){t=Vu(t);var s=t.queue,a=Bg.bind(null,de,s);return s.dispatch=a,[t.memoizedState,a]},useDebugValue:Xu,useDeferredValue:function(t,s){var a=Nt();return Yu(a,t,s)},useTransition:function(){var t=Vu(!1);return t=Rg.bind(null,de,t.queue,!0,!1),Nt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,s,a){var c=de,h=Nt();if(we){if(a===void 0)throw Error(r(407));a=a()}else{if(a=s(),De===null)throw Error(r(349));(ve&127)!==0||cg(c,s,a)}h.memoizedState=a;var p={value:a,getSnapshot:s};return h.queue=p,Tg(fg.bind(null,c,p,t),[t]),c.flags|=2048,Xs(9,{destroy:void 0},ug.bind(null,c,p,a,s),null),a},useId:function(){var t=Nt(),s=De.identifierPrefix;if(we){var a=Cn,c=An;a=(c&~(1<<32-Ct(c)-1)).toString(32)+a,s="_"+s+"R_"+a,a=Gl++,0<\/script>",p=p.removeChild(p.firstChild);break;case"select":p=typeof c.is=="string"?y.createElement("select",{is:c.is}):y.createElement("select"),c.multiple?p.multiple=!0:c.size&&(p.size=c.size);break;default:p=typeof c.is=="string"?y.createElement(h,{is:c.is}):y.createElement(h)}}p[ft]=s,p[jt]=c;e:for(y=s.child;y!==null;){if(y.tag===5||y.tag===6)p.appendChild(y.stateNode);else if(y.tag!==4&&y.tag!==27&&y.child!==null){y.child.return=y,y=y.child;continue}if(y===s)break e;for(;y.sibling===null;){if(y.return===null||y.return===s)break e;y=y.return}y.sibling.return=y.return,y=y.sibling}s.stateNode=p;e:switch(gt(p,h,c),h){case"button":case"input":case"select":case"textarea":c=!!c.autoFocus;break e;case"img":c=!0;break e;default:c=!1}c&&Gn(s)}}return Be(s),ff(s,s.type,t===null?null:t.memoizedProps,s.pendingProps,a),null;case 6:if(t&&s.stateNode!=null)t.memoizedProps!==c&&Gn(s);else{if(typeof c!="string"&&s.stateNode===null)throw Error(r(166));if(t=he.current,Us(s)){if(t=s.stateNode,a=s.memoizedProps,c=null,h=ht,h!==null)switch(h.tag){case 27:case 5:c=h.memoizedProps}t[ft]=s,t=!!(t.nodeValue===a||c!==null&&c.suppressHydrationWarning===!0||ly(t.nodeValue,a)),t||hi(s,!0)}else t=yo(t).createTextNode(c),t[ft]=s,s.stateNode=t}return Be(s),null;case 31:if(a=s.memoizedState,t===null||t.memoizedState!==null){if(c=Us(s),a!==null){if(t===null){if(!c)throw Error(r(318));if(t=s.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(557));t[ft]=s}else Pi(),(s.flags&128)===0&&(s.memoizedState=null),s.flags|=4;Be(s),t=!1}else a=Su(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),t=!0;if(!t)return s.flags&256?(Ft(s),s):(Ft(s),null);if((s.flags&128)!==0)throw Error(r(558))}return Be(s),null;case 13:if(c=s.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(h=Us(s),c!==null&&c.dehydrated!==null){if(t===null){if(!h)throw Error(r(318));if(h=s.memoizedState,h=h!==null?h.dehydrated:null,!h)throw Error(r(317));h[ft]=s}else Pi(),(s.flags&128)===0&&(s.memoizedState=null),s.flags|=4;Be(s),h=!1}else h=Su(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=h),h=!0;if(!h)return s.flags&256?(Ft(s),s):(Ft(s),null)}return Ft(s),(s.flags&128)!==0?(s.lanes=a,s):(a=c!==null,t=t!==null&&t.memoizedState!==null,a&&(c=s.child,h=null,c.alternate!==null&&c.alternate.memoizedState!==null&&c.alternate.memoizedState.cachePool!==null&&(h=c.alternate.memoizedState.cachePool.pool),p=null,c.memoizedState!==null&&c.memoizedState.cachePool!==null&&(p=c.memoizedState.cachePool.pool),p!==h&&(c.flags|=2048)),a!==t&&a&&(s.child.flags|=8192),to(s,s.updateQueue),Be(s),null);case 4:return ke(),t===null&&Lf(s.stateNode.containerInfo),Be(s),null;case 10:return qn(s.type),Be(s),null;case 19:if(Y(Qe),c=s.memoizedState,c===null)return Be(s),null;if(h=(s.flags&128)!==0,p=c.rendering,p===null)if(h)ha(c,!1);else{if(Fe!==0||t!==null&&(t.flags&128)!==0)for(t=s.child;t!==null;){if(p=Il(t),p!==null){for(s.flags|=128,ha(c,!1),t=p.updateQueue,s.updateQueue=t,to(s,t),s.subtreeFlags=0,t=a,a=s.child;a!==null;)Bp(a,t),a=a.sibling;return Z(Qe,Qe.current&1|2),we&&Hn(s,c.treeForkCount),s.child}t=t.sibling}c.tail!==null&&Tt()>ao&&(s.flags|=128,h=!0,ha(c,!1),s.lanes=4194304)}else{if(!h)if(t=Il(p),t!==null){if(s.flags|=128,h=!0,t=t.updateQueue,s.updateQueue=t,to(s,t),ha(c,!0),c.tail===null&&c.tailMode==="hidden"&&!p.alternate&&!we)return Be(s),null}else 2*Tt()-c.renderingStartTime>ao&&a!==536870912&&(s.flags|=128,h=!0,ha(c,!1),s.lanes=4194304);c.isBackwards?(p.sibling=s.child,s.child=p):(t=c.last,t!==null?t.sibling=p:s.child=p,c.last=p)}return c.tail!==null?(t=c.tail,c.rendering=t,c.tail=t.sibling,c.renderingStartTime=Tt(),t.sibling=null,a=Qe.current,Z(Qe,h?a&1|2:a&1),we&&Hn(s,c.treeForkCount),t):(Be(s),null);case 22:case 23:return Ft(s),Lu(),c=s.memoizedState!==null,t!==null?t.memoizedState!==null!==c&&(s.flags|=8192):c&&(s.flags|=8192),c?(a&536870912)!==0&&(s.flags&128)===0&&(Be(s),s.subtreeFlags&6&&(s.flags|=8192)):Be(s),a=s.updateQueue,a!==null&&to(s,a.retryQueue),a=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(a=t.memoizedState.cachePool.pool),c=null,s.memoizedState!==null&&s.memoizedState.cachePool!==null&&(c=s.memoizedState.cachePool.pool),c!==a&&(s.flags|=2048),t!==null&&Y(Wi),null;case 24:return a=null,t!==null&&(a=t.memoizedState.cache),s.memoizedState.cache!==a&&(s.flags|=2048),qn(We),Be(s),null;case 25:return null;case 30:return null}throw Error(r(156,s.tag))}function tw(t,s){switch(bu(s),s.tag){case 1:return t=s.flags,t&65536?(s.flags=t&-65537|128,s):null;case 3:return qn(We),ke(),t=s.flags,(t&65536)!==0&&(t&128)===0?(s.flags=t&-65537|128,s):null;case 26:case 27:case 5:return fe(s),null;case 31:if(s.memoizedState!==null){if(Ft(s),s.alternate===null)throw Error(r(340));Pi()}return t=s.flags,t&65536?(s.flags=t&-65537|128,s):null;case 13:if(Ft(s),t=s.memoizedState,t!==null&&t.dehydrated!==null){if(s.alternate===null)throw Error(r(340));Pi()}return t=s.flags,t&65536?(s.flags=t&-65537|128,s):null;case 19:return Y(Qe),null;case 4:return ke(),null;case 10:return qn(s.type),null;case 22:case 23:return Ft(s),Lu(),t!==null&&Y(Wi),t=s.flags,t&65536?(s.flags=t&-65537|128,s):null;case 24:return qn(We),null;case 25:return null;default:return null}}function hm(t,s){switch(bu(s),s.tag){case 3:qn(We),ke();break;case 26:case 27:case 5:fe(s);break;case 4:ke();break;case 31:s.memoizedState!==null&&Ft(s);break;case 13:Ft(s);break;case 19:Y(Qe);break;case 10:qn(s.type);break;case 22:case 23:Ft(s),Lu(),t!==null&&Y(Wi);break;case 24:qn(We)}}function da(t,s){try{var a=s.updateQueue,c=a!==null?a.lastEffect:null;if(c!==null){var h=c.next;a=h;do{if((a.tag&t)===t){c=void 0;var p=a.create,y=a.inst;c=p(),y.destroy=c}a=a.next}while(a!==h)}}catch(E){Oe(s,s.return,E)}}function vi(t,s,a){try{var c=s.updateQueue,h=c!==null?c.lastEffect:null;if(h!==null){var p=h.next;c=p;do{if((c.tag&t)===t){var y=c.inst,E=y.destroy;if(E!==void 0){y.destroy=void 0,h=s;var C=a,z=E;try{z()}catch(K){Oe(h,C,K)}}}c=c.next}while(c!==p)}}catch(K){Oe(s,s.return,K)}}function dm(t){var s=t.updateQueue;if(s!==null){var a=t.stateNode;try{ig(s,a)}catch(c){Oe(t,t.return,c)}}}function pm(t,s,a){a.props=ss(t.type,t.memoizedProps),a.state=t.memoizedState;try{a.componentWillUnmount()}catch(c){Oe(t,s,c)}}function pa(t,s){try{var a=t.ref;if(a!==null){switch(t.tag){case 26:case 27:case 5:var c=t.stateNode;break;case 30:c=t.stateNode;break;default:c=t.stateNode}typeof a=="function"?t.refCleanup=a(c):a.current=c}}catch(h){Oe(t,s,h)}}function Nn(t,s){var a=t.ref,c=t.refCleanup;if(a!==null)if(typeof c=="function")try{c()}catch(h){Oe(t,s,h)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof a=="function")try{a(null)}catch(h){Oe(t,s,h)}else a.current=null}function gm(t){var s=t.type,a=t.memoizedProps,c=t.stateNode;try{e:switch(s){case"button":case"input":case"select":case"textarea":a.autoFocus&&c.focus();break e;case"img":a.src?c.src=a.src:a.srcSet&&(c.srcset=a.srcSet)}}catch(h){Oe(t,t.return,h)}}function hf(t,s,a){try{var c=t.stateNode;_w(c,t.type,a,s),c[jt]=s}catch(h){Oe(t,t.return,h)}}function mm(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&Ai(t.type)||t.tag===4}function df(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||mm(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&Ai(t.type)||t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function pf(t,s,a){var c=t.tag;if(c===5||c===6)t=t.stateNode,s?(a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a).insertBefore(t,s):(s=a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a,s.appendChild(t),a=a._reactRootContainer,a!=null||s.onclick!==null||(s.onclick=Dn));else if(c!==4&&(c===27&&Ai(t.type)&&(a=t.stateNode,s=null),t=t.child,t!==null))for(pf(t,s,a),t=t.sibling;t!==null;)pf(t,s,a),t=t.sibling}function no(t,s,a){var c=t.tag;if(c===5||c===6)t=t.stateNode,s?a.insertBefore(t,s):a.appendChild(t);else if(c!==4&&(c===27&&Ai(t.type)&&(a=t.stateNode),t=t.child,t!==null))for(no(t,s,a),t=t.sibling;t!==null;)no(t,s,a),t=t.sibling}function ym(t){var s=t.stateNode,a=t.memoizedProps;try{for(var c=t.type,h=s.attributes;h.length;)s.removeAttributeNode(h[0]);gt(s,c,a),s[ft]=t,s[jt]=a}catch(p){Oe(t,t.return,p)}}var Kn=!1,nt=!1,gf=!1,bm=typeof WeakSet=="function"?WeakSet:Set,ct=null;function nw(t,s){if(t=t.containerInfo,zf=Eo,t=Mp(t),lu(t)){if("selectionStart"in t)var a={start:t.selectionStart,end:t.selectionEnd};else e:{a=(a=t.ownerDocument)&&a.defaultView||window;var c=a.getSelection&&a.getSelection();if(c&&c.rangeCount!==0){a=c.anchorNode;var h=c.anchorOffset,p=c.focusNode;c=c.focusOffset;try{a.nodeType,p.nodeType}catch{a=null;break e}var y=0,E=-1,C=-1,z=0,K=0,Q=t,H=null;t:for(;;){for(var q;Q!==a||h!==0&&Q.nodeType!==3||(E=y+h),Q!==p||c!==0&&Q.nodeType!==3||(C=y+c),Q.nodeType===3&&(y+=Q.nodeValue.length),(q=Q.firstChild)!==null;)H=Q,Q=q;for(;;){if(Q===t)break t;if(H===a&&++z===h&&(E=y),H===p&&++K===c&&(C=y),(q=Q.nextSibling)!==null)break;Q=H,H=Q.parentNode}Q=q}a=E===-1||C===-1?null:{start:E,end:C}}else a=null}a=a||{start:0,end:0}}else a=null;for(Uf={focusedElem:t,selectionRange:a},Eo=!1,ct=s;ct!==null;)if(s=ct,t=s.child,(s.subtreeFlags&1028)!==0&&t!==null)t.return=s,ct=t;else for(;ct!==null;){switch(s=ct,p=s.alternate,t=s.flags,s.tag){case 0:if((t&4)!==0&&(t=s.updateQueue,t=t!==null?t.events:null,t!==null))for(a=0;a title"))),gt(p,c,a),p[ft]=t,ot(p),c=p;break e;case"link":var y=Ey("link","href",h).get(c+(a.href||""));if(y){for(var E=0;ERe&&(y=Re,Re=le,le=y);var j=Np(E,le),k=Np(E,Re);if(j&&k&&(q.rangeCount!==1||q.anchorNode!==j.node||q.anchorOffset!==j.offset||q.focusNode!==k.node||q.focusOffset!==k.offset)){var D=Q.createRange();D.setStart(j.node,j.offset),q.removeAllRanges(),le>Re?(q.addRange(D),q.extend(k.node,k.offset)):(D.setEnd(k.node,k.offset),q.addRange(D))}}}}for(Q=[],q=E;q=q.parentNode;)q.nodeType===1&&Q.push({element:q,left:q.scrollLeft,top:q.scrollTop});for(typeof E.focus=="function"&&E.focus(),E=0;Ea?32:a,I.T=null,a=xf,xf=null;var p=_i,y=Pn;if(at=0,Js=_i=null,Pn=0,(Ce&6)!==0)throw Error(r(331));var E=Ce;if(Ce|=4,km(p.current),Am(p,p.current,y,a),Ce=E,Sa(0,!1),At&&typeof At.onPostCommitFiberRoot=="function")try{At.onPostCommitFiberRoot(En,p)}catch{}return!0}finally{J.p=h,I.T=c,Ym(t,s)}}function Qm(t,s,a){s=an(a,s),s=ef(t.stateNode,s,2),t=mi(t,s,2),t!==null&&(qr(t,2),kn(t))}function Oe(t,s,a){if(t.tag===3)Qm(t,t,a);else for(;s!==null;){if(s.tag===3){Qm(s,t,a);break}else if(s.tag===1){var c=s.stateNode;if(typeof s.type.getDerivedStateFromError=="function"||typeof c.componentDidCatch=="function"&&(xi===null||!xi.has(c))){t=an(a,t),a=Pg(2),c=mi(s,a,2),c!==null&&(Jg(a,c,s,t),qr(c,2),kn(c));break}}s=s.return}}function Af(t,s,a){var c=t.pingCache;if(c===null){c=t.pingCache=new rw;var h=new Set;c.set(s,h)}else h=c.get(s),h===void 0&&(h=new Set,c.set(s,h));h.has(a)||(bf=!0,h.add(a),t=uw.bind(null,t,s,a),s.then(t,t))}function uw(t,s,a){var c=t.pingCache;c!==null&&c.delete(s),t.pingedLanes|=t.suspendedLanes&a,t.warmLanes&=~a,De===t&&(ve&a)===a&&(Fe===4||Fe===3&&(ve&62914560)===ve&&300>Tt()-ro?(Ce&2)===0&&Zs(t,0):vf|=a,Ps===ve&&(Ps=0)),kn(t)}function Pm(t,s){s===0&&(s=Gd()),t=Fi(t,s),t!==null&&(qr(t,s),kn(t))}function fw(t){var s=t.memoizedState,a=0;s!==null&&(a=s.retryLane),Pm(t,a)}function hw(t,s){var a=0;switch(t.tag){case 31:case 13:var c=t.stateNode,h=t.memoizedState;h!==null&&(a=h.retryLane);break;case 19:c=t.stateNode;break;case 22:c=t.stateNode._retryCache;break;default:throw Error(r(314))}c!==null&&c.delete(s),Pm(t,a)}function dw(t,s){return ri(t,s)}var ho=null,er=null,Cf=!1,po=!1,Nf=!1,Ti=0;function kn(t){t!==er&&t.next===null&&(er===null?ho=er=t:er=er.next=t),po=!0,Cf||(Cf=!0,gw())}function Sa(t,s){if(!Nf&&po){Nf=!0;do for(var a=!1,c=ho;c!==null;){if(t!==0){var h=c.pendingLanes;if(h===0)var p=0;else{var y=c.suspendedLanes,E=c.pingedLanes;p=(1<<31-Ct(42|t)+1)-1,p&=h&~(y&~E),p=p&201326741?p&201326741|1:p?p|2:0}p!==0&&(a=!0,ey(c,p))}else p=ve,p=yl(c,c===De?p:0,c.cancelPendingCommit!==null||c.timeoutHandle!==-1),(p&3)===0||Br(c,p)||(a=!0,ey(c,p));c=c.next}while(a);Nf=!1}}function pw(){Jm()}function Jm(){po=Cf=!1;var t=0;Ti!==0&&Tw()&&(t=Ti);for(var s=Tt(),a=null,c=ho;c!==null;){var h=c.next,p=Zm(c,s);p===0?(c.next=null,a===null?ho=h:a.next=h,h===null&&(er=a)):(a=c,(t!==0||(p&3)!==0)&&(po=!0)),c=h}at!==0&&at!==5||Sa(t),Ti!==0&&(Ti=0)}function Zm(t,s){for(var a=t.suspendedLanes,c=t.pingedLanes,h=t.expirationTimes,p=t.pendingLanes&-62914561;0E)break;var K=C.transferSize,Q=C.initiatorType;K&&oy(Q)&&(C=C.responseEnd,y+=K*(C"u"?null:document;function Sy(t,s,a){var c=tr;if(c&&typeof s=="string"&&s){var h=sn(s);h='link[rel="'+t+'"][href="'+h+'"]',typeof a=="string"&&(h+='[crossorigin="'+a+'"]'),vy.has(h)||(vy.add(h),t={rel:t,crossOrigin:a,href:s},c.querySelector(h)===null&&(s=c.createElement("link"),gt(s,"link",t),ot(s),c.head.appendChild(s)))}}function Rw(t){Jn.D(t),Sy("dns-prefetch",t,null)}function Dw(t,s){Jn.C(t,s),Sy("preconnect",t,s)}function zw(t,s,a){Jn.L(t,s,a);var c=tr;if(c&&t&&s){var h='link[rel="preload"][as="'+sn(s)+'"]';s==="image"&&a&&a.imageSrcSet?(h+='[imagesrcset="'+sn(a.imageSrcSet)+'"]',typeof a.imageSizes=="string"&&(h+='[imagesizes="'+sn(a.imageSizes)+'"]')):h+='[href="'+sn(t)+'"]';var p=h;switch(s){case"style":p=nr(t);break;case"script":p=ir(t)}hn.has(p)||(t=m({rel:"preload",href:s==="image"&&a&&a.imageSrcSet?void 0:t,as:s},a),hn.set(p,t),c.querySelector(h)!==null||s==="style"&&c.querySelector(Ea(p))||s==="script"&&c.querySelector(Ta(p))||(s=c.createElement("link"),gt(s,"link",t),ot(s),c.head.appendChild(s)))}}function Uw(t,s){Jn.m(t,s);var a=tr;if(a&&t){var c=s&&typeof s.as=="string"?s.as:"script",h='link[rel="modulepreload"][as="'+sn(c)+'"][href="'+sn(t)+'"]',p=h;switch(c){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":p=ir(t)}if(!hn.has(p)&&(t=m({rel:"modulepreload",href:t},s),hn.set(p,t),a.querySelector(h)===null)){switch(c){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(a.querySelector(Ta(p)))return}c=a.createElement("link"),gt(c,"link",t),ot(c),a.head.appendChild(c)}}}function Hw(t,s,a){Jn.S(t,s,a);var c=tr;if(c&&t){var h=Es(c).hoistableStyles,p=nr(t);s=s||"default";var y=h.get(p);if(!y){var E={loading:0,preload:null};if(y=c.querySelector(Ea(p)))E.loading=5;else{t=m({rel:"stylesheet",href:t,"data-precedence":s},a),(a=hn.get(p))&&Gf(t,a);var C=y=c.createElement("link");ot(C),gt(C,"link",t),C._p=new Promise(function(z,K){C.onload=z,C.onerror=K}),C.addEventListener("load",function(){E.loading|=1}),C.addEventListener("error",function(){E.loading|=2}),E.loading|=4,vo(y,s,c)}y={type:"stylesheet",instance:y,count:1,state:E},h.set(p,y)}}}function Bw(t,s){Jn.X(t,s);var a=tr;if(a&&t){var c=Es(a).hoistableScripts,h=ir(t),p=c.get(h);p||(p=a.querySelector(Ta(h)),p||(t=m({src:t,async:!0},s),(s=hn.get(h))&&Kf(t,s),p=a.createElement("script"),ot(p),gt(p,"link",t),a.head.appendChild(p)),p={type:"script",instance:p,count:1,state:null},c.set(h,p))}}function qw(t,s){Jn.M(t,s);var a=tr;if(a&&t){var c=Es(a).hoistableScripts,h=ir(t),p=c.get(h);p||(p=a.querySelector(Ta(h)),p||(t=m({src:t,async:!0,type:"module"},s),(s=hn.get(h))&&Kf(t,s),p=a.createElement("script"),ot(p),gt(p,"link",t),a.head.appendChild(p)),p={type:"script",instance:p,count:1,state:null},c.set(h,p))}}function wy(t,s,a,c){var h=(h=he.current)?bo(h):null;if(!h)throw Error(r(446));switch(t){case"meta":case"title":return null;case"style":return typeof a.precedence=="string"&&typeof a.href=="string"?(s=nr(a.href),a=Es(h).hoistableStyles,c=a.get(s),c||(c={type:"style",instance:null,count:0,state:null},a.set(s,c)),c):{type:"void",instance:null,count:0,state:null};case"link":if(a.rel==="stylesheet"&&typeof a.href=="string"&&typeof a.precedence=="string"){t=nr(a.href);var p=Es(h).hoistableStyles,y=p.get(t);if(y||(h=h.ownerDocument||h,y={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},p.set(t,y),(p=h.querySelector(Ea(t)))&&!p._p&&(y.instance=p,y.state.loading=5),hn.has(t)||(a={rel:"preload",as:"style",href:a.href,crossOrigin:a.crossOrigin,integrity:a.integrity,media:a.media,hrefLang:a.hrefLang,referrerPolicy:a.referrerPolicy},hn.set(t,a),p||$w(h,t,a,y.state))),s&&c===null)throw Error(r(528,""));return y}if(s&&c!==null)throw Error(r(529,""));return null;case"script":return s=a.async,a=a.src,typeof a=="string"&&s&&typeof s!="function"&&typeof s!="symbol"?(s=ir(a),a=Es(h).hoistableScripts,c=a.get(s),c||(c={type:"script",instance:null,count:0,state:null},a.set(s,c)),c):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,t))}}function nr(t){return'href="'+sn(t)+'"'}function Ea(t){return'link[rel="stylesheet"]['+t+"]"}function xy(t){return m({},t,{"data-precedence":t.precedence,precedence:null})}function $w(t,s,a,c){t.querySelector('link[rel="preload"][as="style"]['+s+"]")?c.loading=1:(s=t.createElement("link"),c.preload=s,s.addEventListener("load",function(){return c.loading|=1}),s.addEventListener("error",function(){return c.loading|=2}),gt(s,"link",a),ot(s),t.head.appendChild(s))}function ir(t){return'[src="'+sn(t)+'"]'}function Ta(t){return"script[async]"+t}function _y(t,s,a){if(s.count++,s.instance===null)switch(s.type){case"style":var c=t.querySelector('style[data-href~="'+sn(a.href)+'"]');if(c)return s.instance=c,ot(c),c;var h=m({},a,{"data-href":a.href,"data-precedence":a.precedence,href:null,precedence:null});return c=(t.ownerDocument||t).createElement("style"),ot(c),gt(c,"style",h),vo(c,a.precedence,t),s.instance=c;case"stylesheet":h=nr(a.href);var p=t.querySelector(Ea(h));if(p)return s.state.loading|=4,s.instance=p,ot(p),p;c=xy(a),(h=hn.get(h))&&Gf(c,h),p=(t.ownerDocument||t).createElement("link"),ot(p);var y=p;return y._p=new Promise(function(E,C){y.onload=E,y.onerror=C}),gt(p,"link",c),s.state.loading|=4,vo(p,a.precedence,t),s.instance=p;case"script":return p=ir(a.src),(h=t.querySelector(Ta(p)))?(s.instance=h,ot(h),h):(c=a,(h=hn.get(p))&&(c=m({},a),Kf(c,h)),t=t.ownerDocument||t,h=t.createElement("script"),ot(h),gt(h,"link",c),t.head.appendChild(h),s.instance=h);case"void":return null;default:throw Error(r(443,s.type))}else s.type==="stylesheet"&&(s.state.loading&4)===0&&(c=s.instance,s.state.loading|=4,vo(c,a.precedence,t));return s.instance}function vo(t,s,a){for(var c=a.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),h=c.length?c[c.length-1]:null,p=h,y=0;y title"):null)}function Iw(t,s,a){if(a===1||s.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof s.precedence!="string"||typeof s.href!="string"||s.href==="")break;return!0;case"link":if(typeof s.rel!="string"||typeof s.href!="string"||s.href===""||s.onLoad||s.onError)break;switch(s.rel){case"stylesheet":return t=s.disabled,typeof s.precedence=="string"&&t==null;default:return!0}case"script":if(s.async&&typeof s.async!="function"&&typeof s.async!="symbol"&&!s.onLoad&&!s.onError&&s.src&&typeof s.src=="string")return!0}return!1}function Ay(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function Vw(t,s,a,c){if(a.type==="stylesheet"&&(typeof c.media!="string"||matchMedia(c.media).matches!==!1)&&(a.state.loading&4)===0){if(a.instance===null){var h=nr(c.href),p=s.querySelector(Ea(h));if(p){s=p._p,s!==null&&typeof s=="object"&&typeof s.then=="function"&&(t.count++,t=wo.bind(t),s.then(t,t)),a.state.loading|=4,a.instance=p,ot(p);return}p=s.ownerDocument||s,c=xy(c),(h=hn.get(h))&&Gf(c,h),p=p.createElement("link"),ot(p);var y=p;y._p=new Promise(function(E,C){y.onload=E,y.onerror=C}),gt(p,"link",c),a.instance=p}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(a,s),(s=a.state.preload)&&(a.state.loading&3)===0&&(t.count++,a=wo.bind(t),s.addEventListener("load",a),s.addEventListener("error",a))}}var Xf=0;function Gw(t,s){return t.stylesheets&&t.count===0&&_o(t,t.stylesheets),0Xf?50:800)+s);return t.unsuspend=a,function(){t.unsuspend=null,clearTimeout(c),clearTimeout(h)}}:null}function wo(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)_o(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var xo=null;function _o(t,s){t.stylesheets=null,t.unsuspend!==null&&(t.count++,xo=new Map,s.forEach(Kw,t),xo=null,wo.call(t))}function Kw(t,s){if(!(s.state.loading&4)){var a=xo.get(t);if(a)var c=a.get(null);else{a=new Map,xo.set(t,a);for(var h=t.querySelectorAll("link[data-precedence],style[data-precedence]"),p=0;p"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}return n(),th.exports=gx(),th.exports}var v2=mx();const yx=new Map([["APIRequestContext.fetch",{title:'{method} "{url}"'}],["APIRequestContext.fetchResponseBody",{title:"Get response body",group:"getter"}],["APIRequestContext.fetchLog",{internal:!0}],["APIRequestContext.storageState",{title:"Get storage state",group:"configuration"}],["APIRequestContext.disposeAPIResponse",{internal:!0}],["APIRequestContext.dispose",{internal:!0}],["LocalUtils.zip",{internal:!0}],["LocalUtils.harOpen",{internal:!0}],["LocalUtils.harLookup",{internal:!0}],["LocalUtils.harClose",{internal:!0}],["LocalUtils.harUnzip",{internal:!0}],["LocalUtils.connect",{internal:!0}],["LocalUtils.tracingStarted",{internal:!0}],["LocalUtils.addStackToTracingNoReply",{internal:!0}],["LocalUtils.traceDiscarded",{internal:!0}],["LocalUtils.globToRegex",{internal:!0}],["Root.initialize",{internal:!0}],["Playwright.newRequest",{title:"Create request context"}],["DebugController.initialize",{internal:!0}],["DebugController.setReportStateChanged",{internal:!0}],["DebugController.setRecorderMode",{internal:!0}],["DebugController.highlight",{internal:!0}],["DebugController.hideHighlight",{internal:!0}],["DebugController.resume",{internal:!0}],["DebugController.kill",{internal:!0}],["SocksSupport.socksConnected",{internal:!0}],["SocksSupport.socksFailed",{internal:!0}],["SocksSupport.socksData",{internal:!0}],["SocksSupport.socksError",{internal:!0}],["SocksSupport.socksEnd",{internal:!0}],["BrowserType.launch",{title:"Launch browser"}],["BrowserType.launchPersistentContext",{title:"Launch persistent context"}],["BrowserType.connectOverCDP",{title:"Connect over CDP"}],["BrowserType.connectOverCDPTransport",{title:"Connect over CDP transport"}],["Browser.startServer",{title:"Start server"}],["Browser.stopServer",{title:"Stop server"}],["Browser.close",{title:"Close browser",pause:!0}],["Browser.killForTests",{internal:!0}],["Browser.defaultUserAgentForTest",{internal:!0}],["Browser.newContext",{title:"Create context"}],["Browser.newContextForReuse",{internal:!0}],["Browser.disconnectFromReusedContext",{internal:!0}],["Browser.newBrowserCDPSession",{title:"Create CDP session",group:"configuration"}],["Browser.startTracing",{title:"Start browser tracing",group:"configuration"}],["Browser.stopTracing",{title:"Stop browser tracing",group:"configuration"}],["EventTarget.waitForEventInfo",{title:'Wait for event "{info.event}"',snapshot:!0}],["BrowserContext.waitForEventInfo",{title:'Wait for event "{info.event}"',snapshot:!0}],["Page.waitForEventInfo",{title:'Wait for event "{info.event}"',snapshot:!0}],["Worker.waitForEventInfo",{title:'Wait for event "{info.event}"',snapshot:!0}],["WebSocket.waitForEventInfo",{title:'Wait for event "{info.event}"',snapshot:!0}],["Debugger.waitForEventInfo",{title:'Wait for event "{info.event}"',snapshot:!0}],["ElectronApplication.waitForEventInfo",{title:'Wait for event "{info.event}"',snapshot:!0}],["AndroidDevice.waitForEventInfo",{title:'Wait for event "{info.event}"',snapshot:!0}],["BrowserContext.addCookies",{title:"Add cookies",group:"configuration"}],["BrowserContext.addInitScript",{title:"Add init script",group:"configuration"}],["BrowserContext.clearCookies",{title:"Clear cookies",group:"configuration"}],["BrowserContext.clearPermissions",{title:"Clear permissions",group:"configuration"}],["BrowserContext.close",{title:"Close context",pause:!0}],["BrowserContext.cookies",{title:"Get cookies",group:"getter"}],["BrowserContext.exposeBinding",{title:"Expose binding",group:"configuration"}],["BrowserContext.grantPermissions",{title:"Grant permissions",group:"configuration"}],["BrowserContext.newPage",{title:"Create page"}],["BrowserContext.registerSelectorEngine",{internal:!0}],["BrowserContext.setTestIdAttributeName",{internal:!0}],["BrowserContext.setExtraHTTPHeaders",{title:"Set extra HTTP headers",group:"configuration"}],["BrowserContext.setGeolocation",{title:"Set geolocation",group:"configuration"}],["BrowserContext.setHTTPCredentials",{title:"Set HTTP credentials",group:"configuration"}],["BrowserContext.setNetworkInterceptionPatterns",{title:"Route requests",group:"route"}],["BrowserContext.setWebSocketInterceptionPatterns",{title:"Route WebSockets",group:"route"}],["BrowserContext.setOffline",{title:"Set offline mode"}],["BrowserContext.storageState",{title:"Get storage state",group:"configuration"}],["BrowserContext.setStorageState",{title:"Set storage state",group:"configuration"}],["BrowserContext.pause",{title:"Pause"}],["BrowserContext.enableRecorder",{internal:!0}],["BrowserContext.disableRecorder",{internal:!0}],["BrowserContext.exposeConsoleApi",{internal:!0}],["BrowserContext.newCDPSession",{title:"Create CDP session",group:"configuration"}],["BrowserContext.harStart",{internal:!0}],["BrowserContext.harExport",{internal:!0}],["BrowserContext.createTempFiles",{internal:!0}],["BrowserContext.updateSubscription",{internal:!0}],["BrowserContext.clockFastForward",{title:'Fast forward clock "{ticksNumber|ticksString}"'}],["BrowserContext.clockInstall",{title:'Install clock "{timeNumber|timeString}"'}],["BrowserContext.clockPauseAt",{title:'Pause clock "{timeNumber|timeString}"'}],["BrowserContext.clockResume",{title:"Resume clock"}],["BrowserContext.clockRunFor",{title:'Run clock "{ticksNumber|ticksString}"'}],["BrowserContext.clockSetFixedTime",{title:'Set fixed time "{timeNumber|timeString}"'}],["BrowserContext.clockSetSystemTime",{title:'Set system time "{timeNumber|timeString}"'}],["Page.addInitScript",{title:"Add init script",group:"configuration"}],["Page.close",{title:"Close page",pause:!0}],["Page.clearConsoleMessages",{title:"Clear console messages"}],["Page.consoleMessages",{title:"Get console messages",group:"getter"}],["Page.emulateMedia",{title:"Emulate media",snapshot:!0,pause:!0}],["Page.exposeBinding",{title:"Expose binding",group:"configuration"}],["Page.goBack",{title:"Go back",slowMo:!0,snapshot:!0,pause:!0}],["Page.goForward",{title:"Go forward",slowMo:!0,snapshot:!0,pause:!0}],["Page.requestGC",{title:"Request garbage collection",group:"configuration"}],["Page.registerLocatorHandler",{title:"Register locator handler"}],["Page.resolveLocatorHandlerNoReply",{internal:!0}],["Page.unregisterLocatorHandler",{title:"Unregister locator handler"}],["Page.reload",{title:"Reload",slowMo:!0,snapshot:!0,pause:!0}],["Page.expectScreenshot",{title:"Expect screenshot",snapshot:!0,pause:!0}],["Page.screenshot",{title:"Screenshot",snapshot:!0,pause:!0}],["Page.setExtraHTTPHeaders",{title:"Set extra HTTP headers",group:"configuration"}],["Page.setNetworkInterceptionPatterns",{title:"Route requests",group:"route"}],["Page.setWebSocketInterceptionPatterns",{title:"Route WebSockets",group:"route"}],["Page.setViewportSize",{title:"Set viewport size",snapshot:!0,pause:!0}],["Page.keyboardDown",{title:'Key down "{key}"',slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.keyboardUp",{title:'Key up "{key}"',slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.keyboardInsertText",{title:'Insert "{text}"',slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.keyboardType",{title:'Type "{text}"',slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.keyboardPress",{title:'Press "{key}"',slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.mouseMove",{title:"Mouse move",slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.mouseDown",{title:"Mouse down",slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.mouseUp",{title:"Mouse up",slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.mouseClick",{title:"Click",slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.mouseWheel",{title:"Mouse wheel",slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.touchscreenTap",{title:"Tap",slowMo:!0,snapshot:!0,pause:!0,input:!0}],["Page.clearPageErrors",{title:"Clear page errors"}],["Page.pageErrors",{title:"Get page errors",group:"getter"}],["Page.pdf",{title:"PDF"}],["Page.requests",{title:"Get network requests",group:"getter"}],["Page.startJSCoverage",{title:"Start JS coverage",group:"configuration"}],["Page.stopJSCoverage",{title:"Stop JS coverage",group:"configuration"}],["Page.startCSSCoverage",{title:"Start CSS coverage",group:"configuration"}],["Page.stopCSSCoverage",{title:"Stop CSS coverage",group:"configuration"}],["Page.bringToFront",{title:"Bring to front"}],["Page.pickLocator",{title:"Pick locator",group:"configuration"}],["Page.cancelPickLocator",{title:"Cancel pick locator",group:"configuration"}],["Page.screencastShowOverlay",{title:"Show overlay",group:"configuration"}],["Page.screencastRemoveOverlay",{title:"Remove overlay",group:"configuration"}],["Page.screencastChapter",{title:"Show chapter overlay",group:"configuration"}],["Page.screencastSetOverlayVisible",{title:"Set overlay visibility",group:"configuration"}],["Page.screencastShowActions",{title:"Show actions",group:"configuration"}],["Page.screencastHideActions",{title:"Remove actions",group:"configuration"}],["Page.screencastStart",{title:"Start screencast",group:"configuration"}],["Page.screencastStop",{title:"Stop screencast",group:"configuration"}],["Page.updateSubscription",{internal:!0}],["Page.setDockTile",{internal:!0}],["Frame.evalOnSelector",{title:"Evaluate",snapshot:!0,pause:!0}],["Frame.evalOnSelectorAll",{title:"Evaluate",snapshot:!0,pause:!0}],["Frame.addScriptTag",{title:"Add script tag",snapshot:!0,pause:!0}],["Frame.addStyleTag",{title:"Add style tag",snapshot:!0,pause:!0}],["Frame.ariaSnapshot",{title:"Aria snapshot",group:"getter"}],["Frame.blur",{title:"Blur",slowMo:!0,snapshot:!0,pause:!0}],["Frame.check",{title:"Check",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.click",{title:"Click",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.content",{title:"Get content",snapshot:!0,pause:!0}],["Frame.dragAndDrop",{title:"Drag and drop",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.dblclick",{title:"Double click",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.dispatchEvent",{title:'Dispatch "{type}"',slowMo:!0,snapshot:!0,pause:!0}],["Frame.evaluateExpression",{title:"Evaluate",snapshot:!0,pause:!0}],["Frame.evaluateExpressionHandle",{title:"Evaluate",snapshot:!0,pause:!0}],["Frame.fill",{title:'Fill "{value}"',slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.focus",{title:"Focus",slowMo:!0,snapshot:!0,pause:!0}],["Frame.frameElement",{title:"Get frame element",group:"getter"}],["Frame.resolveSelector",{internal:!0}],["Frame.highlight",{title:"Highlight element",group:"configuration"}],["Frame.getAttribute",{title:'Get attribute "{name}"',snapshot:!0,pause:!0,group:"getter"}],["Frame.goto",{title:'Navigate to "{url}"',slowMo:!0,snapshot:!0,pause:!0}],["Frame.hover",{title:"Hover",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.innerHTML",{title:"Get HTML",snapshot:!0,pause:!0,group:"getter"}],["Frame.innerText",{title:"Get inner text",snapshot:!0,pause:!0,group:"getter"}],["Frame.inputValue",{title:"Get input value",snapshot:!0,pause:!0,group:"getter"}],["Frame.isChecked",{title:"Is checked",snapshot:!0,pause:!0,group:"getter"}],["Frame.isDisabled",{title:"Is disabled",snapshot:!0,pause:!0,group:"getter"}],["Frame.isEnabled",{title:"Is enabled",snapshot:!0,pause:!0,group:"getter"}],["Frame.isHidden",{title:"Is hidden",snapshot:!0,pause:!0,group:"getter"}],["Frame.isVisible",{title:"Is visible",snapshot:!0,pause:!0,group:"getter"}],["Frame.isEditable",{title:"Is editable",snapshot:!0,pause:!0,group:"getter"}],["Frame.press",{title:'Press "{key}"',slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.querySelector",{title:"Query selector",snapshot:!0}],["Frame.querySelectorAll",{title:"Query selector all",snapshot:!0}],["Frame.queryCount",{title:"Query count",snapshot:!0,pause:!0}],["Frame.selectOption",{title:"Select option",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.setContent",{title:"Set content",snapshot:!0,pause:!0}],["Frame.setInputFiles",{title:"Set input files",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.tap",{title:"Tap",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.textContent",{title:"Get text content",snapshot:!0,pause:!0,group:"getter"}],["Frame.title",{title:"Get page title",group:"getter"}],["Frame.type",{title:'Type "{text}"',slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.uncheck",{title:"Uncheck",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["Frame.waitForTimeout",{title:"Wait for timeout",snapshot:!0}],["Frame.waitForFunction",{title:"Wait for function",snapshot:!0,pause:!0}],["Frame.waitForSelector",{title:"Wait for selector",snapshot:!0}],["Frame.expect",{title:'Expect "{expression}"',snapshot:!0,pause:!0}],["Worker.evaluateExpression",{title:"Evaluate"}],["Worker.evaluateExpressionHandle",{title:"Evaluate"}],["Worker.updateSubscription",{internal:!0}],["Disposable.dispose",{internal:!0}],["JSHandle.dispose",{internal:!0}],["ElementHandle.dispose",{internal:!0}],["JSHandle.evaluateExpression",{title:"Evaluate",snapshot:!0,pause:!0}],["ElementHandle.evaluateExpression",{title:"Evaluate",snapshot:!0,pause:!0}],["JSHandle.evaluateExpressionHandle",{title:"Evaluate",snapshot:!0,pause:!0}],["ElementHandle.evaluateExpressionHandle",{title:"Evaluate",snapshot:!0,pause:!0}],["JSHandle.getPropertyList",{title:"Get property list",group:"getter"}],["ElementHandle.getPropertyList",{title:"Get property list",group:"getter"}],["JSHandle.getProperty",{title:"Get JS property",group:"getter"}],["ElementHandle.getProperty",{title:"Get JS property",group:"getter"}],["JSHandle.jsonValue",{title:"Get JSON value",group:"getter"}],["ElementHandle.jsonValue",{title:"Get JSON value",group:"getter"}],["ElementHandle.evalOnSelector",{title:"Evaluate",snapshot:!0,pause:!0}],["ElementHandle.evalOnSelectorAll",{title:"Evaluate",snapshot:!0,pause:!0}],["ElementHandle.boundingBox",{title:"Get bounding box",snapshot:!0,pause:!0}],["ElementHandle.check",{title:"Check",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.click",{title:"Click",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.contentFrame",{title:"Get content frame",group:"getter"}],["ElementHandle.dblclick",{title:"Double click",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.dispatchEvent",{title:"Dispatch event",slowMo:!0,snapshot:!0,pause:!0}],["ElementHandle.fill",{title:'Fill "{value}"',slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.focus",{title:"Focus",slowMo:!0,snapshot:!0,pause:!0}],["ElementHandle.getAttribute",{title:"Get attribute",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.hover",{title:"Hover",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.innerHTML",{title:"Get HTML",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.innerText",{title:"Get inner text",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.inputValue",{title:"Get input value",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.isChecked",{title:"Is checked",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.isDisabled",{title:"Is disabled",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.isEditable",{title:"Is editable",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.isEnabled",{title:"Is enabled",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.isHidden",{title:"Is hidden",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.isVisible",{title:"Is visible",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.ownerFrame",{title:"Get owner frame",group:"getter"}],["ElementHandle.press",{title:'Press "{key}"',slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.querySelector",{title:"Query selector",snapshot:!0}],["ElementHandle.querySelectorAll",{title:"Query selector all",snapshot:!0}],["ElementHandle.screenshot",{title:"Screenshot",snapshot:!0,pause:!0}],["ElementHandle.scrollIntoViewIfNeeded",{title:"Scroll into view",slowMo:!0,snapshot:!0,pause:!0}],["ElementHandle.selectOption",{title:"Select option",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.selectText",{title:"Select text",slowMo:!0,snapshot:!0,pause:!0}],["ElementHandle.setInputFiles",{title:"Set input files",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.tap",{title:"Tap",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.textContent",{title:"Get text content",snapshot:!0,pause:!0,group:"getter"}],["ElementHandle.type",{title:"Type",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.uncheck",{title:"Uncheck",slowMo:!0,snapshot:!0,pause:!0,input:!0,isAutoWaiting:!0}],["ElementHandle.waitForElementState",{title:"Wait for state",snapshot:!0,pause:!0}],["ElementHandle.waitForSelector",{title:"Wait for selector",snapshot:!0}],["Request.response",{internal:!0}],["Request.rawRequestHeaders",{internal:!0}],["Route.redirectNavigationRequest",{internal:!0}],["Route.abort",{title:"Abort request",group:"route"}],["Route.continue",{title:"Continue request",group:"route"}],["Route.fulfill",{title:"Fulfill request",group:"route"}],["WebSocketRoute.connect",{title:"Connect WebSocket to server",group:"route"}],["WebSocketRoute.ensureOpened",{internal:!0}],["WebSocketRoute.sendToPage",{title:"Send WebSocket message",group:"route"}],["WebSocketRoute.sendToServer",{title:"Send WebSocket message",group:"route"}],["WebSocketRoute.closePage",{internal:!0}],["WebSocketRoute.closeServer",{internal:!0}],["Response.body",{title:"Get response body",group:"getter"}],["Response.securityDetails",{internal:!0}],["Response.serverAddr",{internal:!0}],["Response.rawResponseHeaders",{internal:!0}],["Response.httpVersion",{internal:!0}],["Response.sizes",{internal:!0}],["BindingCall.reject",{internal:!0}],["BindingCall.resolve",{internal:!0}],["Debugger.requestPause",{title:"Pause on next call",group:"configuration"}],["Debugger.resume",{title:"Resume",group:"configuration"}],["Debugger.next",{title:"Step to next call",group:"configuration"}],["Debugger.runTo",{title:"Run to location",group:"configuration"}],["Dialog.accept",{title:"Accept dialog"}],["Dialog.dismiss",{title:"Dismiss dialog"}],["Tracing.tracingStart",{title:"Start tracing",group:"configuration"}],["Tracing.tracingStartChunk",{title:"Start tracing",group:"configuration"}],["Tracing.tracingGroup",{title:'Trace "{name}"'}],["Tracing.tracingGroupEnd",{title:"Group end"}],["Tracing.tracingStopChunk",{title:"Stop tracing",group:"configuration"}],["Tracing.tracingStop",{title:"Stop tracing",group:"configuration"}],["Artifact.pathAfterFinished",{internal:!0}],["Artifact.saveAs",{internal:!0}],["Artifact.saveAsStream",{internal:!0}],["Artifact.failure",{internal:!0}],["Artifact.stream",{internal:!0}],["Artifact.cancel",{internal:!0}],["Artifact.delete",{internal:!0}],["Stream.read",{internal:!0}],["Stream.close",{internal:!0}],["WritableStream.write",{internal:!0}],["WritableStream.close",{internal:!0}],["CDPSession.send",{title:"Send CDP command",group:"configuration"}],["CDPSession.detach",{title:"Detach CDP session",group:"configuration"}],["Electron.launch",{title:"Launch electron"}],["ElectronApplication.browserWindow",{internal:!0}],["ElectronApplication.evaluateExpression",{title:"Evaluate"}],["ElectronApplication.evaluateExpressionHandle",{title:"Evaluate"}],["ElectronApplication.updateSubscription",{internal:!0}],["Android.devices",{internal:!0}],["AndroidSocket.write",{internal:!0}],["AndroidSocket.close",{internal:!0}],["AndroidDevice.wait",{title:"Wait"}],["AndroidDevice.fill",{title:'Fill "{text}"'}],["AndroidDevice.tap",{title:"Tap"}],["AndroidDevice.drag",{title:"Drag"}],["AndroidDevice.fling",{title:"Fling"}],["AndroidDevice.longTap",{title:"Long tap"}],["AndroidDevice.pinchClose",{title:"Pinch close"}],["AndroidDevice.pinchOpen",{title:"Pinch open"}],["AndroidDevice.scroll",{title:"Scroll"}],["AndroidDevice.swipe",{title:"Swipe"}],["AndroidDevice.info",{internal:!0}],["AndroidDevice.screenshot",{title:"Screenshot"}],["AndroidDevice.inputType",{title:"Type"}],["AndroidDevice.inputPress",{title:"Press"}],["AndroidDevice.inputTap",{title:"Tap"}],["AndroidDevice.inputSwipe",{title:"Swipe"}],["AndroidDevice.inputDrag",{title:"Drag"}],["AndroidDevice.launchBrowser",{title:"Launch browser"}],["AndroidDevice.open",{title:"Open app"}],["AndroidDevice.shell",{title:"Execute shell command",group:"configuration"}],["AndroidDevice.installApk",{title:"Install apk"}],["AndroidDevice.push",{title:"Push"}],["AndroidDevice.connectToWebView",{title:"Connect to Web View"}],["AndroidDevice.close",{internal:!0}],["JsonPipe.send",{internal:!0}],["JsonPipe.close",{internal:!0}]]);function Qh(n){return yx.get(n.type+"."+n.method)}function s0(n,e){var i;return(i=bx(n,e))==null?void 0:i.replaceAll(` +`,"\\n")}function bx(n,e){if(n)for(const i of e.split("|")){if(i==="url")try{const l=new URL(n[i]);return l.protocol==="data:"?l.protocol:l.protocol==="about:"?n[i]:l.pathname+l.search}catch{if(n[i]!==void 0)return n[i]}if(i==="timeNumber"&&n[i]!==void 0)return new Date(n[i]).toString();const r=vx(n,i);if(r!==void 0)return r}}function vx(n,e){const i=e.split(".");let r=n;for(const l of i){if(typeof r!="object"||r===null)return;r=r[l]}if(r!==void 0)return String(r)}function Sx(n){var i;return(n.title??((i=Qh(n))==null?void 0:i.title)??n.method).replace(/\{([^}]+)\}/g,(r,l)=>s0(n.params,l)??r)}function wx(n){var e;return(e=Qh(n))==null?void 0:e.group}const Ba=Symbol("context"),r0=Symbol("nextInContext"),a0=Symbol("prevByEndTime"),l0=Symbol("nextByStartTime"),Zy=Symbol("events");class S2{constructor(e,i){var l,o;i.forEach(u=>xx(u));const r=i.find(u=>u.origin==="library");this.traceUri=e,this.browserName=(r==null?void 0:r.browserName)||"",this.sdkLanguage=r==null?void 0:r.sdkLanguage,this.channel=r==null?void 0:r.channel,this.testIdAttributeName=r==null?void 0:r.testIdAttributeName,this.platform=(r==null?void 0:r.platform)||"",this.playwrightVersion=(l=i.find(u=>u.playwrightVersion))==null?void 0:l.playwrightVersion,this.title=(r==null?void 0:r.title)||"",this.options=(r==null?void 0:r.options)||{},this.testTimeout=(o=i.find(u=>u.origin==="testRunner"))==null?void 0:o.testTimeout,this.actions=_x(i),this.pages=[].concat(...i.map(u=>u.pages)),this.wallTime=i.map(u=>u.wallTime).reduce((u,f)=>Math.min(u||Number.MAX_VALUE,f),Number.MAX_VALUE),this.startTime=i.map(u=>u.startTime).reduce((u,f)=>Math.min(u,f),Number.MAX_VALUE),this.endTime=i.map(u=>u.endTime).reduce((u,f)=>Math.max(u,f),Number.MIN_VALUE),this.events=[].concat(...i.map(u=>u.events)),this.stdio=[].concat(...i.map(u=>u.stdio)),this.errors=[].concat(...i.map(u=>u.errors)),this.hasSource=i.some(u=>u.hasSource),this.hasStepData=i.some(u=>u.origin==="testRunner"),this.resources=[...i.map(u=>u.resources)].flat().map(u=>({...u,id:`${u.pageref}-${u.time}-${u.request.url}`})),this.attachments=this.actions.flatMap(u=>{var f;return((f=u.attachments)==null?void 0:f.map(d=>({...d,callId:u.callId,traceUri:e})))??[]}),this.visibleAttachments=this.attachments.filter(u=>!u.name.startsWith("_")),this.events.sort((u,f)=>u.time-f.time),this.resources.sort((u,f)=>u._monotonicTime-f._monotonicTime),this.errorDescriptors=this.hasStepData?this._errorDescriptorsFromTestRunner():this._errorDescriptorsFromActions(),this.sources=Mx(this.actions,this.errorDescriptors),this.actionCounters=new Map;for(const u of this.actions)u.group=u.group??wx({type:u.class,method:u.method}),u.group&&this.actionCounters.set(u.group,1+(this.actionCounters.get(u.group)||0))}createRelativeUrl(e){const i=new URL("http://localhost/"+e);return i.searchParams.set("trace",this.traceUri),i.toString().substring(17)}failedAction(){return this.actions.findLast(e=>e.error)}filteredActions(e){const i=new Set(e);return this.actions.filter(r=>!r.group||i.has(r.group))}renderActionTree(e){const i=this.filteredActions(e??[]),{rootItem:r}=o0(i),l=[],o=(u,f)=>{const d=Sx({...u.action,type:u.action.class});l.push(`${f}${d||u.id}`);for(const g of u.children)o(g,f+" ")};return r.children.forEach(u=>o(u,"")),l}_errorDescriptorsFromActions(){var i;const e=[];for(const r of this.actions||[])(i=r.error)!=null&&i.message&&e.push({action:r,stack:r.stack,message:r.error.message});return e}_errorDescriptorsFromTestRunner(){return this.errors.filter(e=>!!e.message).map((e,i)=>({stack:e.stack,message:e.message}))}}function xx(n){for(const i of n.pages)i[Ba]=n;for(let i=0;i=0;i--){const r=n.actions[i];r[r0]=e,r.class!=="Route"&&(e=r)}for(const i of n.events)i[Ba]=n;for(const i of n.resources)i[Ba]=n}function _x(n){const e=[],i=Ex(n);e.push(...i),e.sort((r,l)=>l.parentId===r.callId?1:r.parentId===l.callId?-1:r.endTime-l.endTime);for(let r=1;rl.parentId===r.callId?-1:r.parentId===l.callId?1:r.startTime-l.startTime);for(let r=0;r+1u.origin==="library"),r=n.filter(u=>u.origin==="testRunner");if(!r.length||!i.length)return n.map(u=>u.actions.map(f=>({...f,context:u}))).flat();for(const u of i)for(const f of u.actions)e.set(f.stepId||`tmp-step@${++Wy}`,{...f,context:u});const l=Ax(r,e);l&&Tx(i,l);const o=new Map;for(const u of r)for(const f of u.actions){const d=f.stepId&&e.get(f.stepId);if(d){o.set(f.callId,d.callId),f.error&&(d.error=f.error),f.attachments&&(d.attachments=f.attachments),f.annotations&&(d.annotations=f.annotations),f.parentId&&(d.parentId=o.get(f.parentId)??f.parentId),f.group&&(d.group=f.group),d.startTime=f.startTime,d.endTime=f.endTime;continue}f.parentId&&(f.parentId=o.get(f.parentId)??f.parentId),e.set(f.stepId||`tmp-step@${++Wy}`,{...f,context:u})}return[...e.values()]}function Tx(n,e){for(const i of n){i.startTime+=e,i.endTime+=e;for(const r of i.actions)r.startTime&&(r.startTime+=e),r.endTime&&(r.endTime+=e);for(const r of i.events)r.time+=e;for(const r of i.stdio)r.timestamp+=e;for(const r of i.pages)for(const l of r.screencastFrames)l.timestamp+=e;for(const r of i.resources)r._monotonicTime&&(r._monotonicTime+=e)}}function Ax(n,e){for(const i of n)for(const r of i.actions){if(!r.startTime)continue;const l=r.stepId?e.get(r.stepId):void 0;if(l)return r.startTime-l.startTime}return 0}function o0(n){const e=new Map;for(const l of n)e.set(l.callId,{id:l.callId,parent:void 0,children:[],action:l});const i={action:{...Ox},id:"",parent:void 0,children:[]};for(const l of e.values()){i.action.startTime=Math.min(i.action.startTime,l.action.startTime),i.action.endTime=Math.max(i.action.endTime,l.action.endTime);const o=l.action.parentId&&e.get(l.action.parentId)||i;o.children.push(l),l.parent=o}const r=l=>{for(const o of l.children)o.action.stack=o.action.stack??l.action.stack,r(o)};return r(i),{rootItem:i,itemMap:e}}function c0(n){return n[Ba]}function Cx(n){return n[r0]}function eb(n){return n[a0]}function tb(n){return n[l0]}function Nx(n){let e=0,i=0;for(const r of kx(n)){if(r.type==="console"){const l=r.messageType;l==="warning"?++i:l==="error"&&++e}r.type==="event"&&r.method==="pageError"&&++e}return{errors:e,warnings:i}}function kx(n){let e=n[Zy];if(e)return e;const i=Cx(n);return e=c0(n).events.filter(r=>r.time>=n.startTime&&(!i||r.time{const d=Math.max(l,n)*window.devicePixelRatio,[g,b]=pn(o?o+"."+r+":size":void 0,d),[m,S]=pn(o?o+"."+r+":size":void 0,d),[w,T]=R.useState(null),[x,_]=ms();let A;r==="vertical"?(A=m/window.devicePixelRatio,x&&x.heightT({offset:r==="vertical"?$.clientY:$.clientX,size:A}),onMouseUp:()=>T(null),onMouseMove:$=>{if(!$.buttons)T(null);else if(w){const X=(r==="vertical"?$.clientY:$.clientX)-w.offset,U=i?w.size+X:w.size-X,B=$.target.parentElement.getBoundingClientRect(),O=Math.min(Math.max(l,U),(r==="vertical"?B.height:B.width)-l);r==="vertical"?S(O*window.devicePixelRatio):b(O*window.devicePixelRatio)}}})]})};function bt(n){if(n<0||!isFinite(n))return"-";if(n===0)return"0ms";if(n<1e3)return n.toFixed(0)+"ms";const e=n/1e3;if(e<60)return e.toFixed(1)+"s";const i=e/60;if(i<60)return i.toFixed(1)+"m";const r=i/60;return r<24?r.toFixed(1)+"h":(r/24).toFixed(1)+"d"}function Lx(n){if(n<0||!isFinite(n))return"-";if(n===0)return"0";if(n<1e3)return n.toFixed(0);const e=n/1024;if(e<1e3)return e.toFixed(1)+"K";const i=e/1024;return i<1e3?i.toFixed(1)+"M":(i/1024).toFixed(1)+"G"}const it=function(n,e,i){return n>=e&&n<=i};function Bt(n){return it(n,48,57)}function nb(n){return Bt(n)||it(n,65,70)||it(n,97,102)}function Rx(n){return it(n,65,90)}function Dx(n){return it(n,97,122)}function zx(n){return Rx(n)||Dx(n)}function Ux(n){return n>=128}function Vo(n){return zx(n)||Ux(n)||n===95}function ib(n){return Vo(n)||Bt(n)||n===45}function Hx(n){return it(n,0,8)||n===11||it(n,14,31)||n===127}function Go(n){return n===10}function Zn(n){return Go(n)||n===9||n===32}const Bx=1114111;class Ph extends Error{constructor(e){super(e),this.name="InvalidCharacterError"}}function qx(n){const e=[];for(let i=0;i=e.length?-1:e[V]},u=function(V){if(V===void 0&&(V=1),V>3)throw"Spec Error: no more than three codepoints of lookahead.";return o(i+V)},f=function(V){return V===void 0&&(V=1),i+=V,l=o(i),!0},d=function(){return i-=1,!0},g=function(V){return V===void 0&&(V=l),V===-1},b=function(){if(m(),f(),Zn(l)){for(;Zn(u());)f();return new ic}else{if(l===34)return T();if(l===35)if(ib(u())||A(u(1),u(2))){const V=new _0("");return $(u(1),u(2),u(3))&&(V.type="id"),V.value=L(),V}else return new mt(l);else return l===36?u()===61?(f(),new Gx):new mt(l):l===39?T():l===40?new S0:l===41?new Jh:l===42?u()===61?(f(),new Kx):new mt(l):l===43?U()?(d(),S()):new mt(l):l===44?new m0:l===45?U()?(d(),S()):u(1)===45&&u(2)===62?(f(2),new d0):G()?(d(),w()):new mt(l):l===46?U()?(d(),S()):new mt(l):l===58?new p0:l===59?new g0:l===60?u(1)===33&&u(2)===45&&u(3)===45?(f(3),new h0):new mt(l):l===64?$(u(1),u(2),u(3))?new x0(L()):new mt(l):l===91?new v0:l===92?N()?(d(),w()):new mt(l):l===93?new Ah:l===94?u()===61?(f(),new Vx):new mt(l):l===123?new y0:l===124?u()===61?(f(),new Ix):u()===124?(f(),new w0):new mt(l):l===125?new b0:l===126?u()===61?(f(),new $x):new mt(l):Bt(l)?(d(),S()):Vo(l)?(d(),w()):g()?new Xo:new mt(l)}},m=function(){for(;u(1)===47&&u(2)===42;)for(f(2);;)if(f(),l===42&&u()===47){f();break}else if(g())return},S=function(){const V=B();if($(u(1),u(2),u(3))){const W=new Xx;return W.value=V.value,W.repr=V.repr,W.type=V.type,W.unit=L(),W}else if(u()===37){f();const W=new A0;return W.value=V.value,W.repr=V.repr,W}else{const W=new T0;return W.value=V.value,W.repr=V.repr,W.type=V.type,W}},w=function(){const V=L();if(V.toLowerCase()==="url"&&u()===40){for(f();Zn(u(1))&&Zn(u(2));)f();return u()===34||u()===39?new Ka(V):Zn(u())&&(u(2)===34||u(2)===39)?new Ka(V):x()}else return u()===40?(f(),new Ka(V)):new Zh(V)},T=function(V){V===void 0&&(V=l);let W="";for(;f();){if(l===V||g())return new Wh(W);if(Go(l))return d(),new f0;l===92?g(u())||(Go(u())?f():W+=lt(_())):W+=lt(l)}throw new Error("Internal error")},x=function(){const V=new E0("");for(;Zn(u());)f();if(g(u()))return V;for(;f();){if(l===41||g())return V;if(Zn(l)){for(;Zn(u());)f();return u()===41||g(u())?(f(),V):(ne(),new Ko)}else{if(l===34||l===39||l===40||Hx(l))return ne(),new Ko;if(l===92)if(N())V.value+=lt(_());else return ne(),new Ko;else V.value+=lt(l)}}throw new Error("Internal error")},_=function(){if(f(),nb(l)){const V=[l];for(let ge=0;ge<5&&nb(u());ge++)f(),V.push(l);Zn(u())&&f();let W=parseInt(V.map(function(ge){return String.fromCharCode(ge)}).join(""),16);return W>Bx&&(W=65533),W}else return g()?65533:l},A=function(V,W){return!(V!==92||Go(W))},N=function(){return A(l,u())},$=function(V,W,ge){return V===45?Vo(W)||W===45||A(W,ge):Vo(V)?!0:V===92?A(V,W):!1},G=function(){return $(l,u(1),u(2))},X=function(V,W,ge){return V===43||V===45?!!(Bt(W)||W===46&&Bt(ge)):V===46?!!Bt(W):!!Bt(V)},U=function(){return X(l,u(1),u(2))},L=function(){let V="";for(;f();)if(ib(l))V+=lt(l);else if(N())V+=lt(_());else return d(),V;throw new Error("Internal parse error")},B=function(){let V="",W="integer";for((u()===43||u()===45)&&(f(),V+=lt(l));Bt(u());)f(),V+=lt(l);if(u(1)===46&&Bt(u(2)))for(f(),V+=lt(l),f(),V+=lt(l),W="number";Bt(u());)f(),V+=lt(l);const ge=u(1),Ue=u(2),I=u(3);if((ge===69||ge===101)&&Bt(Ue))for(f(),V+=lt(l),f(),V+=lt(l),W="number";Bt(u());)f(),V+=lt(l);else if((ge===69||ge===101)&&(Ue===43||Ue===45)&&Bt(I))for(f(),V+=lt(l),f(),V+=lt(l),f(),V+=lt(l),W="number";Bt(u());)f(),V+=lt(l);const J=O(V);return{type:W,value:J,repr:V}},O=function(V){return+V},ne=function(){for(;f();){if(l===41||g())return;N()&&_()}};let te=0;for(;!g(u());)if(r.push(b()),te++,te>e.length*2)throw new Error("I'm infinite-looping!");return r}class Ze{constructor(){this.tokenType=""}toJSON(){return{token:this.tokenType}}toString(){return this.tokenType}toSource(){return""+this}}class f0 extends Ze{constructor(){super(...arguments),this.tokenType="BADSTRING"}}class Ko extends Ze{constructor(){super(...arguments),this.tokenType="BADURL"}}class ic extends Ze{constructor(){super(...arguments),this.tokenType="WHITESPACE"}toString(){return"WS"}toSource(){return" "}}class h0 extends Ze{constructor(){super(...arguments),this.tokenType="CDO"}toSource(){return""}}class p0 extends Ze{constructor(){super(...arguments),this.tokenType=":"}}class g0 extends Ze{constructor(){super(...arguments),this.tokenType=";"}}class m0 extends Ze{constructor(){super(...arguments),this.tokenType=","}}class Cr extends Ze{constructor(){super(...arguments),this.value="",this.mirror=""}}class y0 extends Cr{constructor(){super(),this.tokenType="{",this.value="{",this.mirror="}"}}class b0 extends Cr{constructor(){super(),this.tokenType="}",this.value="}",this.mirror="{"}}class v0 extends Cr{constructor(){super(),this.tokenType="[",this.value="[",this.mirror="]"}}class Ah extends Cr{constructor(){super(),this.tokenType="]",this.value="]",this.mirror="["}}class S0 extends Cr{constructor(){super(),this.tokenType="(",this.value="(",this.mirror=")"}}class Jh extends Cr{constructor(){super(),this.tokenType=")",this.value=")",this.mirror="("}}class $x extends Ze{constructor(){super(...arguments),this.tokenType="~="}}class Ix extends Ze{constructor(){super(...arguments),this.tokenType="|="}}class Vx extends Ze{constructor(){super(...arguments),this.tokenType="^="}}class Gx extends Ze{constructor(){super(...arguments),this.tokenType="$="}}class Kx extends Ze{constructor(){super(...arguments),this.tokenType="*="}}class w0 extends Ze{constructor(){super(...arguments),this.tokenType="||"}}class Xo extends Ze{constructor(){super(...arguments),this.tokenType="EOF"}toSource(){return""}}class mt extends Ze{constructor(e){super(),this.tokenType="DELIM",this.value="",this.value=lt(e)}toString(){return"DELIM("+this.value+")"}toJSON(){const e=this.constructor.prototype.constructor.prototype.toJSON.call(this);return e.value=this.value,e}toSource(){return this.value==="\\"?`\\ +`:this.value}}class Nr extends Ze{constructor(){super(...arguments),this.value=""}ASCIIMatch(e){return this.value.toLowerCase()===e.toLowerCase()}toJSON(){const e=this.constructor.prototype.constructor.prototype.toJSON.call(this);return e.value=this.value,e}}class Zh extends Nr{constructor(e){super(),this.tokenType="IDENT",this.value=e}toString(){return"IDENT("+this.value+")"}toSource(){return ll(this.value)}}class Ka extends Nr{constructor(e){super(),this.tokenType="FUNCTION",this.value=e,this.mirror=")"}toString(){return"FUNCTION("+this.value+")"}toSource(){return ll(this.value)+"("}}class x0 extends Nr{constructor(e){super(),this.tokenType="AT-KEYWORD",this.value=e}toString(){return"AT("+this.value+")"}toSource(){return"@"+ll(this.value)}}class _0 extends Nr{constructor(e){super(),this.tokenType="HASH",this.value=e,this.type="unrestricted"}toString(){return"HASH("+this.value+")"}toJSON(){const e=this.constructor.prototype.constructor.prototype.toJSON.call(this);return e.value=this.value,e.type=this.type,e}toSource(){return this.type==="id"?"#"+ll(this.value):"#"+Yx(this.value)}}class Wh extends Nr{constructor(e){super(),this.tokenType="STRING",this.value=e}toString(){return'"'+C0(this.value)+'"'}}class E0 extends Nr{constructor(e){super(),this.tokenType="URL",this.value=e}toString(){return"URL("+this.value+")"}toSource(){return'url("'+C0(this.value)+'")'}}class T0 extends Ze{constructor(){super(),this.tokenType="NUMBER",this.type="integer",this.repr=""}toString(){return this.type==="integer"?"INT("+this.value+")":"NUMBER("+this.value+")"}toJSON(){const e=super.toJSON();return e.value=this.value,e.type=this.type,e.repr=this.repr,e}toSource(){return this.repr}}class A0 extends Ze{constructor(){super(),this.tokenType="PERCENTAGE",this.repr=""}toString(){return"PERCENTAGE("+this.value+")"}toJSON(){const e=this.constructor.prototype.constructor.prototype.toJSON.call(this);return e.value=this.value,e.repr=this.repr,e}toSource(){return this.repr+"%"}}class Xx extends Ze{constructor(){super(),this.tokenType="DIMENSION",this.type="integer",this.repr="",this.unit=""}toString(){return"DIM("+this.value+","+this.unit+")"}toJSON(){const e=this.constructor.prototype.constructor.prototype.toJSON.call(this);return e.value=this.value,e.type=this.type,e.repr=this.repr,e.unit=this.unit,e}toSource(){const e=this.repr;let i=ll(this.unit);return i[0].toLowerCase()==="e"&&(i[1]==="-"||it(i.charCodeAt(1),48,57))&&(i="\\65 "+i.slice(1,i.length)),e+i}}function ll(n){n=""+n;let e="";const i=n.charCodeAt(0);for(let r=0;r=128||l===45||l===95||it(l,48,57)||it(l,65,90)||it(l,97,122)?e+=n[r]:e+="\\"+n[r]}return e}function Yx(n){n=""+n;let e="";for(let i=0;i=128||r===45||r===95||it(r,48,57)||it(r,65,90)||it(r,97,122)?e+=n[i]:e+="\\"+r.toString(16)+" "}return e}function C0(n){n=""+n;let e="";for(let i=0;iO instanceof x0||O instanceof f0||O instanceof Ko||O instanceof w0||O instanceof h0||O instanceof d0||O instanceof g0||O instanceof y0||O instanceof b0||O instanceof E0||O instanceof A0);if(r)throw new qt(`Unsupported token "${r.toSource()}" while parsing css selector "${n}". Did you mean to CSS.escape it?`);let l=0;const o=new Set;function u(){return new qt(`Unexpected token "${i[l].toSource()}" while parsing css selector "${n}". Did you mean to CSS.escape it?`)}function f(){for(;i[l]instanceof ic;)l++}function d(O=l){return i[O]instanceof Zh}function g(O=l){return i[O]instanceof Wh}function b(O=l){return i[O]instanceof T0}function m(O=l){return i[O]instanceof m0}function S(O=l){return i[O]instanceof S0}function w(O=l){return i[O]instanceof Jh}function T(O=l){return i[O]instanceof Ka}function x(O=l){return i[O]instanceof mt&&i[O].value==="*"}function _(O=l){return i[O]instanceof Xo}function A(O=l){return i[O]instanceof mt&&[">","+","~"].includes(i[O].value)}function N(O=l){return m(O)||w(O)||_(O)||A(O)||i[O]instanceof ic}function $(){const O=[G()];for(;f(),!!m();)l++,O.push(G());return O}function G(){return f(),b()||g()?i[l++].value:X()}function X(){const O={simples:[]};for(f(),A()?O.simples.push({selector:{functions:[{name:"scope",args:[]}]},combinator:""}):O.simples.push({selector:U(),combinator:""});;){if(f(),A())O.simples[O.simples.length-1].combinator=i[l++].value,f();else if(N())break;O.simples.push({combinator:"",selector:U()})}return O}function U(){let O="";const ne=[];for(;!N();)if(d()||x())O+=i[l++].toSource();else if(i[l]instanceof _0)O+=i[l++].toSource();else if(i[l]instanceof mt&&i[l].value===".")if(l++,d())O+="."+i[l++].toSource();else throw u();else if(i[l]instanceof p0)if(l++,d())if(!e.has(i[l].value.toLowerCase()))O+=":"+i[l++].toSource();else{const te=i[l++].value.toLowerCase();ne.push({name:te,args:[]}),o.add(te)}else if(T()){const te=i[l++].value.toLowerCase();if(e.has(te)?(ne.push({name:te,args:$()}),o.add(te)):O+=`:${te}(${L()})`,f(),!w())throw u();l++}else throw u();else if(i[l]instanceof v0){for(O+="[",l++;!(i[l]instanceof Ah)&&!_();)O+=i[l++].toSource();if(!(i[l]instanceof Ah))throw u();O+="]",l++}else throw u();if(!O&&!ne.length)throw u();return{css:O||void 0,functions:ne}}function L(){let O="",ne=1;for(;!_()&&((S()||T())&&ne++,w()&&ne--,!!ne);)O+=i[l++].toSource();return O}const B=$();if(!_())throw u();if(B.some(O=>typeof O!="object"||!("simples"in O)))throw new qt(`Error while parsing css selector "${n}". Did you mean to CSS.escape it?`);return{selector:B,names:Array.from(o)}}const Ch=new Set(["internal:has","internal:has-not","internal:and","internal:or","internal:chain","left-of","right-of","above","below","near"]),Qx=new Set(["left-of","right-of","above","below","near"]),N0=new Set(["not","is","where","has","scope","light","visible","text","text-matches","text-is","has-text","above","below","right-of","left-of","near","nth-match"]);function ol(n){const e=Zx(n),i=[];for(const r of e.parts){if(r.name==="css"||r.name==="css:light"){r.name==="css:light"&&(r.body=":light("+r.body+")");const l=Fx(r.body,N0);i.push({name:"css",body:l.selector,source:r.body});continue}if(Ch.has(r.name)){let l,o;try{const g=JSON.parse("["+r.body+"]");if(!Array.isArray(g)||g.length<1||g.length>2||typeof g[0]!="string")throw new qt(`Malformed selector: ${r.name}=`+r.body);if(l=g[0],g.length===2){if(typeof g[1]!="number"||!Qx.has(r.name))throw new qt(`Malformed selector: ${r.name}=`+r.body);o=g[1]}}catch{throw new qt(`Malformed selector: ${r.name}=`+r.body)}const u={name:r.name,source:r.body,body:{parsed:ol(l),distance:o}},f=[...u.body.parsed.parts].reverse().find(g=>g.name==="internal:control"&&g.body==="enter-frame"),d=f?u.body.parsed.parts.indexOf(f):-1;d!==-1&&Px(u.body.parsed.parts.slice(0,d+1),i.slice(0,d+1))&&u.body.parsed.parts.splice(0,d+1),i.push(u);continue}i.push({...r,source:r.body})}if(Ch.has(i[0].name))throw new qt(`"${i[0].name}" selector cannot be first`);return{capture:e.capture,parts:i}}function Px(n,e){return On({parts:n})===On({parts:e})}function On(n,e){return typeof n=="string"?n:n.parts.map((i,r)=>{let l=!0;!e&&r!==n.capture&&(i.name==="css"||i.name==="xpath"&&i.source.startsWith("//")||i.source.startsWith(".."))&&(l=!1);const o=l?i.name+"=":"";return`${r===n.capture?"*":""}${o}${i.source}`}).join(" >> ")}function Jx(n,e){const i=(r,l)=>{for(const o of r.parts)e(o,l),Ch.has(o.name)&&i(o.body.parsed,!0)};i(n,!1)}function Zx(n){let e=0,i,r=0;const l={parts:[]},o=()=>{const f=n.substring(r,e).trim(),d=f.indexOf("=");let g,b;d!==-1&&f.substring(0,d).trim().match(/^[a-zA-Z_0-9-+:*]+$/)?(g=f.substring(0,d).trim(),b=f.substring(d+1)):f.length>1&&f[0]==='"'&&f[f.length-1]==='"'||f.length>1&&f[0]==="'"&&f[f.length-1]==="'"?(g="text",b=f):/^\(*\/\//.test(f)||f.startsWith("..")?(g="xpath",b=f):(g="css",b=f);let m=!1;if(g[0]==="*"&&(m=!0,g=g.substring(1)),l.parts.push({name:g,body:b}),m){if(l.capture!==void 0)throw new qt("Only one of the selectors can capture using * modifier");l.capture=l.parts.length-1}};if(!n.includes(">>"))return e=n.length,o(),l;const u=()=>{const d=n.substring(r,e).match(/^\s*text\s*=(.*)$/);return!!d&&!!d[1]};for(;e"&&n[e+1]===">"?(o(),e+=2,r=e):e++}return o(),l}function Xa(n,e){let i=0,r=n.length===0;const l=()=>n[i]||"",o=()=>{const _=l();return++i,r=i>=n.length,_},u=_=>{throw r?new qt(`Unexpected end of selector while parsing selector \`${n}\``):new qt(`Error while parsing selector \`${n}\` - unexpected symbol "${l()}" at position ${i}`+(_?" during "+_:""))};function f(){for(;!r&&/\s/.test(l());)o()}function d(_){return _>="€"||_>="0"&&_<="9"||_>="A"&&_<="Z"||_>="a"&&_<="z"||_>="0"&&_<="9"||_==="_"||_==="-"}function g(){let _="";for(f();!r&&d(l());)_+=o();return _}function b(_){let A=o();for(A!==_&&u("parsing quoted string");!r&&l()!==_;)l()==="\\"&&o(),A+=o();return l()!==_&&u("parsing quoted string"),A+=o(),A}function m(){o()!=="/"&&u("parsing regular expression");let _="",A=!1;for(;!r;){if(l()==="\\")_+=o(),r&&u("parsing regular expression");else if(A&&l()==="]")A=!1;else if(!A&&l()==="[")A=!0;else if(!A&&l()==="/")break;_+=o()}o()!=="/"&&u("parsing regular expression");let N="";for(;!r&&l().match(/[dgimsuy]/);)N+=o();try{return new RegExp(_,N)}catch($){throw new qt(`Error while parsing selector \`${n}\`: ${$.message}`)}}function S(){let _="";return f(),l()==="'"||l()==='"'?_=b(l()).slice(1,-1):_=g(),_||u("parsing property path"),_}function w(){f();let _="";return r||(_+=o()),!r&&_!=="="&&(_+=o()),["=","*=","^=","$=","|=","~="].includes(_)||u("parsing operator"),_}function T(){o();const _=[];for(_.push(S()),f();l()===".";)o(),_.push(S()),f();if(l()==="]")return o(),{name:_.join("."),jsonPath:_,op:"",value:null,caseSensitive:!1};const A=w();let N,$=!0;if(f(),l()==="/"){if(A!=="=")throw new qt(`Error while parsing selector \`${n}\` - cannot use ${A} in attribute with regular expression`);N=m()}else if(l()==="'"||l()==='"')N=b(l()).slice(1,-1),f(),l()==="i"||l()==="I"?($=!1,o()):(l()==="s"||l()==="S")&&($=!0,o());else{for(N="";!r&&(d(l())||l()==="+"||l()===".");)N+=o();N==="true"?N=!0:N==="false"&&(N=!1)}if(f(),l()!=="]"&&u("parsing attribute value"),o(),A!=="="&&typeof N!="string")throw new qt(`Error while parsing selector \`${n}\` - cannot use ${A} in attribute with non-string matching value - ${N}`);return{name:_.join("."),jsonPath:_,op:A,value:N,caseSensitive:$}}const x={name:"",attributes:[]};for(x.name=g(),f();l()==="[";)x.attributes.push(T()),f();if(r||u(void 0),!x.name&&!x.attributes.length)throw new qt(`Error while parsing selector \`${n}\` - selector cannot be empty`);return x}function gc(n,e="'"){const i=JSON.stringify(n),r=i.substring(1,i.length-1).replace(/\\"/g,'"');if(e==="'")return e+r.replace(/[']/g,"\\'")+e;if(e==='"')return e+r.replace(/["]/g,'\\"')+e;if(e==="`")return e+r.replace(/[`]/g,"\\`")+e;throw new Error("Invalid escape char")}function sc(n){return n.charAt(0).toUpperCase()+n.substring(1)}function k0(n){return n.replace(/([a-z0-9])([A-Z])/g,"$1_$2").replace(/([A-Z])([A-Z][a-z])/g,"$1_$2").toLowerCase()}function hr(n){return`"${n.replace(/["\\]/g,e=>"\\"+e)}"`}let ls;function Wx(){ls=new Map}function Ot(n){let e=ls==null?void 0:ls.get(n);return e===void 0&&(e=n.replace(/[\u200b\u00ad]/g,"").trim().replace(/\s+/g," "),ls==null||ls.set(n,e)),e}function mc(n){return n.replace(/(^|[^\\])(\\\\)*\\(['"`])/g,"$1$2$3")}function M0(n){return n.unicode||n.unicodeSets?String(n):String(n).replace(/(^|[^\\])(\\\\)*(["'`])/g,"$1$2\\$3").replace(/>>/g,"\\>\\>")}function $t(n,e){return typeof n!="string"?M0(n):`${JSON.stringify(n)}${e?"s":"i"}`}function Mt(n,e){return typeof n!="string"?M0(n):`"${n.replace(/\\/g,"\\\\").replace(/["]/g,'\\"')}"${e?"s":"i"}`}function e_(n,e,i=""){if(n.length<=e)return n;const r=[...n];return r.length>e?r.slice(0,e-i.length).join("")+i:r.join("")}function sb(n,e){return e_(n,e,"…")}function rc(n){return n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function t_(n,e){const i=n.length,r=e.length;let l=0,o=0;const u=Array(i+1).fill(null).map(()=>Array(r+1).fill(0));for(let f=1;f<=i;f++)for(let d=1;d<=r;d++)n[f-1]===e[d-1]&&(u[f][d]=u[f-1][d-1]+1,u[f][d]>l&&(l=u[f][d],o=f));return n.slice(o-l,o)}function O0(n,e){try{const i=ol(e),r=n_(i);return r||fs(new L0[n],i,!1,1)[0]}catch{return e}}function n_(n){const e=n.parts[n.parts.length-1];if((e==null?void 0:e.name)==="internal:describe"){const i=JSON.parse(e.body);if(typeof i=="string")return i}}function Ri(n,e,i=!1){return j0(n,e,i,1)[0]}function j0(n,e,i=!1,r=20,l){try{return fs(new L0[n](l),ol(e),i,r)}catch{return[e]}}function fs(n,e,i=!1,r=20){const l=[...e.parts],o=[];let u=i?"frame-locator":"page";for(let f=0;fn.generateLocator(g,"has",x)));continue}if(d.name==="internal:has-not"){const T=fs(n,d.body.parsed,!1,r);o.push(T.map(x=>n.generateLocator(g,"hasNot",x)));continue}if(d.name==="internal:and"){const T=fs(n,d.body.parsed,!1,r);o.push(T.map(x=>n.generateLocator(g,"and",x)));continue}if(d.name==="internal:or"){const T=fs(n,d.body.parsed,!1,r);o.push(T.map(x=>n.generateLocator(g,"or",x)));continue}if(d.name==="internal:chain"){const T=fs(n,d.body.parsed,!1,r);o.push(T.map(x=>n.generateLocator(g,"chain",x)));continue}if(d.name==="internal:label"){const{exact:T,text:x}=ja(d.body);o.push([n.generateLocator(g,"label",x,{exact:T})]);continue}if(d.name==="internal:role"){const T=Xa(d.body),x={attrs:[]};for(const _ of T.attributes)_.name==="name"?(x.exact=_.caseSensitive,x.name=_.value):(_.name==="level"&&typeof _.value=="string"&&(_.value=+_.value),x.attrs.push({name:_.name==="include-hidden"?"includeHidden":_.name,value:_.value}));o.push([n.generateLocator(g,"role",T.name,x)]);continue}if(d.name==="internal:testid"){const T=Xa(d.body),{value:x}=T.attributes[0];o.push([n.generateLocator(g,"test-id",x)]);continue}if(d.name==="internal:attr"){const T=Xa(d.body),{name:x,value:_,caseSensitive:A}=T.attributes[0],N=_,$=!!A;if(x==="placeholder"){o.push([n.generateLocator(g,"placeholder",N,{exact:$})]);continue}if(x==="alt"){o.push([n.generateLocator(g,"alt",N,{exact:$})]);continue}if(x==="title"){o.push([n.generateLocator(g,"title",N,{exact:$})]);continue}}if(d.name==="internal:control"&&d.body==="enter-frame"){const T=o[o.length-1],x=l[f-1],_=T.map(A=>n.chainLocators([A,n.generateLocator(g,"frame","")]));["xpath","css"].includes(x.name)&&_.push(n.generateLocator(g,"frame-locator",On({parts:[x]})),n.generateLocator(g,"frame-locator",On({parts:[x]},!0))),T.splice(0,T.length,..._),u="frame-locator";continue}const b=l[f+1],m=On({parts:[d]}),S=n.generateLocator(g,"default",m);if(b&&["internal:has-text","internal:has-not-text"].includes(b.name)){const{exact:T,text:x}=ja(b.body);if(!T){const _=n.generateLocator("locator",b.name==="internal:has-text"?"has-text":"has-not-text",x,{exact:T}),A={};b.name==="internal:has-text"?A.hasText=x:A.hasNotText=x;const N=n.generateLocator(g,"default",m,A);o.push([n.chainLocators([S,_]),N]),f++;continue}}let w;if(["xpath","css"].includes(d.name)){const T=On({parts:[d]},!0);w=n.generateLocator(g,"default",T)}o.push([S,w].filter(Boolean))}return i_(n,o,r)}function i_(n,e,i){const r=e.map(()=>""),l=[],o=u=>{if(u===e.length)return l.push(n.chainLocators(r)),l.lengthJSON.parse(r));for(let r=0;ru_(e,f,m.expandedItems,x||0,u),[e,f,m,x,u]),A=R.useRef(null),[N,$]=R.useState();R.useEffect(()=>{b==null||b(N)},[b,N]),R.useEffect(()=>{const U=A.current;if(!U)return;const L=()=>{rb.set(n,U.scrollTop)};return U.addEventListener("scroll",L,{passive:!0}),()=>U.removeEventListener("scroll",L)},[n]),R.useEffect(()=>{A.current&&(A.current.scrollTop=rb.get(n)||0)},[n]);const G=R.useCallback(U=>{const{expanded:L}=_.get(U);if(L){for(let B=f;B;B=B.parent)if(B===U){g==null||g(U);break}m.expandedItems.set(U.id,!1)}else m.expandedItems.set(U.id,!0);S({...m})},[_,f,g,m,S]),X=R.useCallback(U=>{const{expanded:L}=_.get(U),B=[U];for(;B.length;){const O=B.pop();B.push(...O.children),m.expandedItems.set(O.id,!L)}S({...m})},[_,m,S]);return v.jsx("div",{className:st("tree-view vbox",n+"-tree-view"),"data-testid":T||n+"-tree",children:v.jsxs("div",{className:st("tree-view-content"),role:_.size>0?"tree":void 0,tabIndex:0,onKeyDown:U=>{if(f&&U.key==="Enter"){d==null||d(f);return}if(U.key!=="ArrowDown"&&U.key!=="ArrowUp"&&U.key!=="ArrowLeft"&&U.key!=="ArrowRight")return;if(U.stopPropagation(),U.preventDefault(),f&&U.key==="ArrowLeft"){const{expanded:B,parent:O}=_.get(f);B?(m.expandedItems.set(f.id,!1),S({...m})):O&&(g==null||g(O));return}if(f&&U.key==="ArrowRight"){f.children.length&&(m.expandedItems.set(f.id,!0),S({...m}));return}let L=f;if(U.key==="ArrowDown"&&(f?L=_.get(f).next:_.size&&(L=[..._.keys()][0])),U.key==="ArrowUp"){if(f)L=_.get(f).prev;else if(_.size){const B=[..._.keys()];L=B[B.length-1]}}b==null||b(void 0),L&&(g==null||g(L)),$(void 0)},ref:A,children:[w&&_.size===0&&v.jsx("div",{className:"tree-view-empty",children:w}),e.children.map(U=>_.get(U)&&v.jsx(R0,{item:U,treeItems:_,selectedItem:f,onSelected:g,onAccepted:d,isError:o,toggleExpanded:G,toggleSubtree:X,highlightedItem:N,setHighlightedItem:$,render:i,icon:l,title:r},U.id))]})})}function R0({item:n,treeItems:e,selectedItem:i,onSelected:r,highlightedItem:l,setHighlightedItem:o,isError:u,onAccepted:f,toggleExpanded:d,toggleSubtree:g,render:b,title:m,icon:S}){const w=R.useId(),T=R.useRef(null);R.useEffect(()=>{(i==null?void 0:i.id)===n.id&&T.current&&e0(T.current)},[n.id,i==null?void 0:i.id]);const x=e.get(n),_=x.depth,A=x.expanded;let N="codicon-blank";typeof A=="boolean"&&(N=A?"codicon-chevron-down":"codicon-chevron-right");const $=b(n),G=A&&n.children.length?n.children:[],X=m==null?void 0:m(n),U=(S==null?void 0:S(n))||"codicon-blank";return v.jsxs("div",{ref:T,role:"treeitem","aria-selected":n===i,"aria-expanded":A,"aria-controls":w,title:X,className:"vbox",style:{flex:"none"},children:[v.jsxs("div",{onDoubleClick:()=>f==null?void 0:f(n),className:st("tree-view-entry",i===n&&"selected",l===n&&"highlighted",(u==null?void 0:u(n))&&"error"),onClick:()=>r==null?void 0:r(n),onMouseEnter:()=>o(n),onMouseLeave:()=>o(void 0),children:[_?new Array(_).fill(0).map((L,B)=>v.jsx("div",{className:"tree-view-indent"},"indent-"+B)):void 0,v.jsx("div",{"aria-hidden":"true",className:"codicon "+N,style:{minWidth:16,marginRight:4},onDoubleClick:L=>{L.preventDefault(),L.stopPropagation()},onClick:L=>{L.stopPropagation(),L.preventDefault(),L.altKey?g(n):d(n)}}),S&&v.jsx("div",{className:"codicon "+U,style:{minWidth:16,marginRight:4},"aria-label":"["+U.replace("codicon","icon")+"]"}),typeof $=="string"?v.jsx("div",{style:{textOverflow:"ellipsis",overflow:"hidden"},children:$}):$]}),!!G.length&&v.jsx("div",{id:w,role:"group",children:G.map(L=>e.get(L)&&v.jsx(R0,{item:L,treeItems:e,selectedItem:i,onSelected:r,onAccepted:f,isError:u,toggleExpanded:d,toggleSubtree:g,highlightedItem:l,setHighlightedItem:o,render:b,title:m,icon:S},L.id))})]})}function Nh(n,e,i){const r=i.get(n.id);if(r!==void 0)return r;const l=e(n),o=l==="if-needed"?n.children.some(u=>Nh(u,e,i)):l;return i.set(n.id,o),o}function u_(n,e,i,r,l=()=>!0){const o=new Map;if(!Nh(n,l,o))return new Map;const u=new Map,f=new Set;for(let b=e==null?void 0:e.parent;b;b=b.parent)f.add(b.id);let d=null;const g=(b,m)=>{for(const S of b.children){if(!Nh(S,l,o))continue;const w=f.has(S.id)||i.get(S.id),T=r>m&&u.size<25&&w!==!1,x=S.children.length?w??T:void 0,_={depth:m,expanded:x,parent:n===b?null:b,next:null,prev:d};d&&(u.get(d).next=S),d=S,u.set(S,_),x&&g(S,m+1)}};return g(n,0),u}const ut=R.forwardRef(function({children:e,title:i="",icon:r,disabled:l=!1,toggled:o=!1,onClick:u=()=>{},style:f,testId:d,className:g,ariaLabel:b},m){return v.jsxs("button",{ref:m,className:st(g,"toolbar-button",r,o&&"toggled"),onMouseDown:ab,onClick:u,onDoubleClick:ab,title:i,disabled:!!l,style:f,"data-testid":d,"aria-label":b||i,children:[r&&v.jsx("span",{className:`codicon codicon-${r}`,style:e?{marginRight:5}:{}}),e]})}),ab=n=>{n.stopPropagation(),n.preventDefault()};function D0(n){return n==="scheduled"?"codicon-clock":n==="running"?"codicon-loading":n==="failed"?"codicon-error":n==="passed"?"codicon-check":n==="skipped"?"codicon-circle-slash":"codicon-circle-outline"}function f_(n){return n==="scheduled"?"Pending":n==="running"?"Running":n==="failed"?"Failed":n==="passed"?"Passed":n==="skipped"?"Skipped":"Did not run"}const h_=c_,d_=({actions:n,selectedAction:e,selectedTime:i,setSelectedTime:r,treeState:l,setTreeState:o,sdkLanguage:u,onSelected:f,onHighlighted:d,revealConsole:g,revealActionAttachment:b,isLive:m,actionFilterText:S})=>{const{rootItem:w,itemMap:T}=R.useMemo(()=>o0(n),[n]),{selectedItem:x}=R.useMemo(()=>({selectedItem:e?T.get(e.callId):void 0}),[T,e]),_=R.useCallback(U=>{var L;return!!((L=U.action.error)!=null&&L.message)},[]),A=R.useCallback(U=>r({minimum:U.action.startTime,maximum:U.action.endTime}),[r]),N=R.useCallback(U=>{var B;const L=!!b&&!!((B=U.action.attachments)!=null&&B.length);return ed(U.action,{sdkLanguage:u,revealConsole:g,revealActionAttachment:()=>b==null?void 0:b(U.action.callId),isLive:m,showDuration:!0,showBadges:!0,showAttachments:L})},[m,g,b,u]),$=R.useCallback(U=>{if(!(!i||!U.action||U.action.startTime<=i.maximum&&U.action.endTime>=i.minimum))return!1;const B=td(U.action).title;return S?B.toLowerCase().includes(S.toLowerCase())?!0:"if-needed":!0},[i,S]),G=R.useCallback(U=>{f==null||f(U.action)},[f]),X=R.useCallback(U=>{d==null||d(U==null?void 0:U.action)},[d]);return v.jsxs("div",{className:"vbox action-list-container",children:[i&&v.jsxs("div",{className:"action-list-show-all",onClick:()=>r(void 0),children:[v.jsx("span",{className:"codicon codicon-triangle-left"}),"Show all"]}),v.jsx(h_,{name:"actions",rootItem:w,treeState:l,setTreeState:o,selectedItem:x,onSelected:G,onHighlighted:X,onAccepted:A,isError:_,isVisible:$,render:N,autoExpandDepth:S!=null&&S.trim()?5:0})]})},ed=(n,e)=>{var _;const{sdkLanguage:i,revealConsole:r,revealActionAttachment:l,isLive:o,showDuration:u,showBadges:f,showAttachments:d}=e,{errors:g,warnings:b}=Nx(n),m=n.params.selector?O0(i||"javascript",n.params.selector):void 0,S=n.class==="Test"&&n.method==="test.step"&&((_=n.annotations)==null?void 0:_.some(A=>A.type==="skip"));let w="";n.endTime?w=bt(n.endTime-n.startTime):n.error?w="Timed out":o||(w="-");const{elements:T,title:x}=td(n);return v.jsxs("div",{className:"action-title vbox",children:[v.jsxs("div",{className:"hbox",children:[v.jsx("span",{className:"action-title-method",title:x,children:T}),(u||f||d||S)&&v.jsx("div",{className:"spacer"}),d&&v.jsx(ut,{icon:"attach",title:"Open Attachment",onClick:()=>l==null?void 0:l()}),u&&!S&&v.jsx("div",{className:"action-duration",children:w||v.jsx("span",{className:"codicon codicon-loading"})}),S&&v.jsx("span",{className:st("action-skipped","codicon",D0("skipped")),title:"skipped"}),f&&v.jsxs("div",{className:"action-icons",onClick:()=>r==null?void 0:r(),children:[!!g&&v.jsxs("div",{className:"action-icon",children:[v.jsx("span",{className:"codicon codicon-error"}),v.jsx("span",{className:"action-icon-value",children:g})]}),!!b&&v.jsxs("div",{className:"action-icon",children:[v.jsx("span",{className:"codicon codicon-warning"}),v.jsx("span",{className:"action-icon-value",children:b})]})]})]}),m&&v.jsx("div",{className:"action-title-selector",title:m,children:m})]})};function td(n,e){var g;let i=n.title??((g=Qh({type:n.class,method:n.method}))==null?void 0:g.title)??n.method;i=i.replace(/\n/g," ");const r=[],l=[];let o=0;const u=/\{([^}]+)\}/g;let f;for(;(f=u.exec(i))!==null;){const[b,m]=f,S=i.slice(o,f.index);r.push(S),l.push(S);const w=s0(n.params,m);w===void 0?(r.push(b),l.push(b)):f.index===0?(r.push(w),l.push(w)):(r.push(v.jsx("span",{className:"action-title-param",children:w},r.length)),l.push(w)),o=f.index+b.length}if(o{const[i,r]=R.useState("copy"),l=R.useCallback(()=>{(typeof n=="function"?n():Promise.resolve(n)).then(u=>{navigator.clipboard.writeText(u).then(()=>{r("check"),setTimeout(()=>{r("copy")},3e3)},()=>{r("close")})},()=>{r("close")})},[n]);return v.jsx(ut,{title:e||"Copy",icon:i,onClick:l})},Yo=({value:n,description:e,copiedDescription:i=e,style:r})=>{const[l,o]=R.useState(!1),u=R.useCallback(async()=>{const f=typeof n=="function"?await n():n;await navigator.clipboard.writeText(f),o(!0),setTimeout(()=>o(!1),3e3)},[n]);return v.jsx(ut,{style:r,title:e,onClick:u,className:"copy-to-clipboard-text-button",children:l?i:e})},ys=({text:n})=>v.jsx("div",{className:"fill",style:{display:"flex",alignItems:"center",justifyContent:"center",fontSize:24,fontWeight:"bold",opacity:.5},children:n}),p_=({action:n,startTimeOffset:e,sdkLanguage:i})=>{const r=R.useMemo(()=>Object.keys((n==null?void 0:n.params)??{}).filter(f=>f!=="info"),[n]);if(!n)return v.jsx(ys,{text:"No action selected"});const l=n.startTime-e,o=bt(l),{title:u}=td(n);return v.jsxs("div",{className:"call-tab",children:[v.jsx("div",{className:"call-line",children:u}),v.jsx("div",{className:"call-section",children:"Time"}),Oo({name:"start",type:"literal",text:o}),Oo({name:"duration",type:"literal",text:g_(n)}),!!r.length&&v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"call-section",children:"Parameters"}),r.map(f=>Oo(lb(n,f,n.params[f],i)))]}),!!n.result&&v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"call-section",children:"Return value"}),Object.keys(n.result).map(f=>Oo(lb(n,f,n.result[f],i)))]})]})};function g_(n){return n.endTime?bt(n.endTime-n.startTime):n.error?"Timed Out":"Running"}function Oo(n){let e=n.text.replace(/\n/g,"↵");return n.type==="string"&&(e=`"${e}"`),v.jsxs("div",{className:"call-line",children:[n.name,":",v.jsx("span",{className:st("call-value",n.type),title:n.text,children:e}),["literal","string","number","object","locator"].includes(n.type)&&v.jsx(nd,{value:n.text})]},n.name)}function lb(n,e,i,r){const l=n.method.includes("eval")||n.method==="waitForFunction";if(e==="files")return{text:"",type:"string",name:e};if((e==="eventInit"||e==="expectedValue"||e==="arg"&&l)&&(i=ac(i.value,new Array(10).fill({handle:""}))),(e==="value"&&l||e==="received"&&n.method==="expect")&&(i=ac(i,new Array(10).fill({handle:""}))),e==="selector")return{text:Ri(r||"javascript",n.params.selector),type:"locator",name:"locator"};const o=typeof i;return o!=="object"||i===null?{text:String(i),type:o,name:e}:i.guid?{text:"",type:"handle",name:e}:{text:JSON.stringify(i).slice(0,1e3),type:"object",name:e}}function ac(n,e){if(n.n!==void 0)return n.n;if(n.s!==void 0)return n.s;if(n.b!==void 0)return n.b;if(n.v!==void 0){if(n.v==="undefined")return;if(n.v==="null")return null;if(n.v==="NaN")return NaN;if(n.v==="Infinity")return 1/0;if(n.v==="-Infinity")return-1/0;if(n.v==="-0")return-0}if(n.d!==void 0)return new Date(n.d);if(n.r!==void 0)return new RegExp(n.r.p,n.r.f);if(n.a!==void 0)return n.a.map(i=>ac(i,e));if(n.o!==void 0){const i={};for(const{k:r,v:l}of n.o)i[r]=ac(l,e);return i}return n.h!==void 0?e===void 0?"":e[n.h]:""}const ob=new Map;function yc({name:n,items:e=[],id:i,render:r,icon:l,isError:o,isWarning:u,isInfo:f,selectedItem:d,onAccepted:g,onSelected:b,onHighlighted:m,onIconClicked:S,noItemsMessage:w,dataTestId:T,notSelectable:x,ariaLabel:_}){const A=R.useRef(null),[N,$]=R.useState();return R.useEffect(()=>{m==null||m(N)},[m,N]),R.useEffect(()=>{const G=A.current;if(!G)return;const X=()=>{ob.set(n,G.scrollTop)};return G.addEventListener("scroll",X,{passive:!0}),()=>G.removeEventListener("scroll",X)},[n]),R.useEffect(()=>{A.current&&(A.current.scrollTop=ob.get(n)||0)},[n]),v.jsx("div",{className:st("list-view vbox",n+"-list-view"),role:e.length>0?"list":void 0,"aria-label":_,children:v.jsxs("div",{className:st("list-view-content",x&&"not-selectable"),tabIndex:0,onKeyDown:G=>{var B;if(d&&G.key==="Enter"){g==null||g(d,e.indexOf(d));return}if(G.key!=="ArrowDown"&&G.key!=="ArrowUp")return;G.stopPropagation(),G.preventDefault();const X=d?e.indexOf(d):-1;let U=X;G.key==="ArrowDown"&&(X===-1?U=0:U=Math.min(X+1,e.length-1)),G.key==="ArrowUp"&&(X===-1?U=e.length-1:U=Math.max(X-1,0));const L=(B=A.current)==null?void 0:B.children.item(U);e0(L||void 0),m==null||m(void 0),b==null||b(e[U],U),$(void 0)},ref:A,children:[w&&e.length===0&&v.jsx("div",{className:"list-view-empty",children:w}),e.map((G,X)=>{const U=r(G,X);return v.jsxs("div",{onDoubleClick:()=>g==null?void 0:g(G,X),role:"listitem",className:st("list-view-entry",d===G&&"selected",!x&&N===G&&"highlighted",(o==null?void 0:o(G,X))&&"error",(u==null?void 0:u(G,X))&&"warning",(f==null?void 0:f(G,X))&&"info"),"aria-selected":d===G,onClick:()=>b==null?void 0:b(G,X),onMouseEnter:()=>$(G),onMouseLeave:()=>$(void 0),children:[l&&v.jsx("div",{className:"codicon "+(l(G,X)||"codicon-blank"),style:{minWidth:16,marginRight:4},onDoubleClick:L=>{L.preventDefault(),L.stopPropagation()},onClick:L=>{L.stopPropagation(),L.preventDefault(),S==null||S(G,X)}}),typeof U=="string"?v.jsx("div",{style:{textOverflow:"ellipsis",overflow:"hidden"},children:U}):U]},(i==null?void 0:i(G,X))||X)})]})})}const m_=yc,y_=({action:n,isLive:e})=>{const i=R.useMemo(()=>{var u;if(!n||!n.log.length)return[];const r=n.log,l=n.context.wallTime-n.context.startTime,o=[];for(let f=0;f0?d=bt(n.endTime-g):e?d=bt(Date.now()-l-g):d="-"}o.push({message:r[f].message,time:d})}return o},[n,e]);return i.length?v.jsx(m_,{name:"log",ariaLabel:"Log entries",items:i,render:r=>v.jsxs("div",{className:"log-list-item",children:[v.jsx("span",{className:"log-list-duration",children:r.time}),r.message]}),notSelectable:!0}):v.jsx(ys,{text:"No log entries"})};function nl(n,e){const i=/(\x1b\[(\d+(;\d+)*)m)|([^\x1b]+)/g,r=[];let l,o={},u=!1,f=e==null?void 0:e.fg,d=e==null?void 0:e.bg;for(;(l=i.exec(n))!==null;){const[,,g,,b]=l;if(g){const m=+g;switch(m){case 0:o={};break;case 1:o["font-weight"]="bold";break;case 2:o.opacity="0.8";break;case 3:o["font-style"]="italic";break;case 4:o["text-decoration"]="underline";break;case 7:u=!0;break;case 8:o.display="none";break;case 9:o["text-decoration"]="line-through";break;case 22:delete o["font-weight"],delete o["font-style"],delete o.opacity,delete o["text-decoration"];break;case 23:delete o["font-weight"],delete o["font-style"],delete o.opacity;break;case 24:delete o["text-decoration"];break;case 27:u=!1;break;case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:f=cb[m-30];break;case 39:f=e==null?void 0:e.fg;break;case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:d=cb[m-40];break;case 49:d=e==null?void 0:e.bg;break;case 53:o["text-decoration"]="overline";break;case 90:case 91:case 92:case 93:case 94:case 95:case 96:case 97:f=ub[m-90];break;case 100:case 101:case 102:case 103:case 104:case 105:case 106:case 107:d=ub[m-100];break}}else if(b){const m={...o},S=u?d:f;S!==void 0&&(m.color=S);const w=u?f:d;w!==void 0&&(m["background-color"]=w),r.push(`${b_(b)}`)}}return r.join("")}const cb={0:"var(--vscode-terminal-ansiBlack)",1:"var(--vscode-terminal-ansiRed)",2:"var(--vscode-terminal-ansiGreen)",3:"var(--vscode-terminal-ansiYellow)",4:"var(--vscode-terminal-ansiBlue)",5:"var(--vscode-terminal-ansiMagenta)",6:"var(--vscode-terminal-ansiCyan)",7:"var(--vscode-terminal-ansiWhite)"},ub={0:"var(--vscode-terminal-ansiBrightBlack)",1:"var(--vscode-terminal-ansiBrightRed)",2:"var(--vscode-terminal-ansiBrightGreen)",3:"var(--vscode-terminal-ansiBrightYellow)",4:"var(--vscode-terminal-ansiBrightBlue)",5:"var(--vscode-terminal-ansiBrightMagenta)",6:"var(--vscode-terminal-ansiBrightCyan)",7:"var(--vscode-terminal-ansiBrightWhite)"};function b_(n){return n.replace(/[&"<>]/g,e=>({"&":"&",'"':""","<":"<",">":">"})[e])}function v_(n){return Object.entries(n).map(([e,i])=>`${e}: ${i}`).join("; ")}const S_=({error:n})=>{const e=R.useMemo(()=>nl(n),[n]);return v.jsx("div",{className:"error-message",dangerouslySetInnerHTML:{__html:e||""}})},z0=({cursor:n,onPaneMouseMove:e,onPaneMouseUp:i,onPaneDoubleClick:r})=>(vt.useEffect(()=>{const l=document.createElement("div");return l.style.position="fixed",l.style.top="0",l.style.right="0",l.style.bottom="0",l.style.left="0",l.style.zIndex="9999",l.style.cursor=n,document.body.appendChild(l),e&&l.addEventListener("mousemove",e),i&&l.addEventListener("mouseup",i),r&&document.body.addEventListener("dblclick",r),()=>{e&&l.removeEventListener("mousemove",e),i&&l.removeEventListener("mouseup",i),r&&document.body.removeEventListener("dblclick",r),document.body.removeChild(l)}},[n,e,i,r]),v.jsx(v.Fragment,{})),w_={position:"absolute",top:0,right:0,bottom:0,left:0},U0=({orientation:n,offsets:e,setOffsets:i,resizerColor:r,resizerWidth:l,minColumnWidth:o})=>{const u=o||0,[f,d]=vt.useState(null),[g,b]=ms(),m={position:"absolute",right:n==="horizontal"?void 0:0,bottom:n==="horizontal"?0:void 0,width:n==="horizontal"?7:void 0,height:n==="horizontal"?void 0:7,borderTopWidth:n==="horizontal"?void 0:(7-l)/2,borderRightWidth:n==="horizontal"?(7-l)/2:void 0,borderBottomWidth:n==="horizontal"?void 0:(7-l)/2,borderLeftWidth:n==="horizontal"?(7-l)/2:void 0,borderColor:"transparent",borderStyle:"solid",cursor:n==="horizontal"?"ew-resize":"ns-resize"};return v.jsxs("div",{style:{position:"absolute",top:0,right:0,bottom:0,left:-(7-l)/2,zIndex:100,pointerEvents:"none"},ref:b,children:[!!f&&v.jsx(z0,{cursor:n==="horizontal"?"ew-resize":"ns-resize",onPaneMouseUp:()=>d(null),onPaneMouseMove:S=>{if(!S.buttons)d(null);else if(f){const w=n==="horizontal"?S.clientX-f.clientX:S.clientY-f.clientY,T=f.offset+w,x=f.index>0?e[f.index-1]:0,_=n==="horizontal"?g.width:g.height,A=Math.min(Math.max(x+u,T),_-u)-e[f.index];for(let N=f.index;Nv.jsx("div",{style:{...m,top:n==="horizontal"?0:S,left:n==="horizontal"?S:0,pointerEvents:"initial"},onMouseDown:T=>d({clientX:T.clientX,clientY:T.clientY,offset:S,index:w}),children:v.jsx("div",{style:{...w_,background:r}})},w))]})};async function rh(n){const e=new Image;return n&&(e.src=n,await new Promise((i,r)=>{e.onload=i,e.onerror=i})),e}const kh={backgroundImage:`linear-gradient(45deg, #80808020 25%, transparent 25%), + linear-gradient(-45deg, #80808020 25%, transparent 25%), + linear-gradient(45deg, transparent 75%, #80808020 75%), + linear-gradient(-45deg, transparent 75%, #80808020 75%)`,backgroundSize:"20px 20px",backgroundPosition:"0 0, 0 10px, 10px -10px, -10px 0px",boxShadow:`rgb(0 0 0 / 10%) 0px 1.8px 1.9px, + rgb(0 0 0 / 15%) 0px 6.1px 6.3px, + rgb(0 0 0 / 10%) 0px -2px 4px, + rgb(0 0 0 / 15%) 0px -6.1px 12px, + rgb(0 0 0 / 25%) 0px 6px 12px`},x_=({diff:n,noTargetBlank:e,hideDetails:i})=>{const[r,l]=R.useState(n.diff?"diff":"actual"),[o,u]=R.useState(!1),[f,d]=R.useState(null),[g,b]=R.useState("Expected"),[m,S]=R.useState(null),[w,T]=R.useState(null),[x,_]=ms();R.useEffect(()=>{(async()=>{var O,ne,te,V;d(await rh((O=n.expected)==null?void 0:O.attachment.path)),b(((ne=n.expected)==null?void 0:ne.title)||"Expected"),S(await rh((te=n.actual)==null?void 0:te.attachment.path)),T(await rh((V=n.diff)==null?void 0:V.attachment.path))})()},[n]);const A=f&&m&&w,N=A?Math.max(f.naturalWidth,m.naturalWidth,200):500,$=A?Math.max(f.naturalHeight,m.naturalHeight,200):500,G=Math.min(1,(x.width-30)/N),X=Math.min(1,(x.width-50)/N/2),U=N*G,L=$*G,B={flex:"none",margin:"0 10px",cursor:"pointer",userSelect:"none"};return v.jsx("div",{"data-testid":"test-result-image-mismatch",style:{display:"flex",flexDirection:"column",alignItems:"center",flex:"auto"},ref:_,children:A&&v.jsxs(v.Fragment,{children:[v.jsxs("div",{"data-testid":"test-result-image-mismatch-tabs",style:{display:"flex",margin:"10px 0 20px"},children:[n.diff&&v.jsx("div",{style:{...B,fontWeight:r==="diff"?600:"initial"},onClick:()=>l("diff"),children:"Diff"}),v.jsx("div",{style:{...B,fontWeight:r==="actual"?600:"initial"},onClick:()=>l("actual"),children:"Actual"}),v.jsx("div",{style:{...B,fontWeight:r==="expected"?600:"initial"},onClick:()=>l("expected"),children:g}),v.jsx("div",{style:{...B,fontWeight:r==="sxs"?600:"initial"},onClick:()=>l("sxs"),children:"Side by side"}),v.jsx("div",{style:{...B,fontWeight:r==="slider"?600:"initial"},onClick:()=>l("slider"),children:"Slider"})]}),v.jsxs("div",{style:{display:"flex",justifyContent:"center",flex:"auto",minHeight:L+60},children:[n.diff&&r==="diff"&&v.jsx(Wn,{image:w,alt:"Diff",hideSize:i,canvasWidth:U,canvasHeight:L,scale:G}),n.diff&&r==="actual"&&v.jsx(Wn,{image:m,alt:"Actual",hideSize:i,canvasWidth:U,canvasHeight:L,scale:G}),n.diff&&r==="expected"&&v.jsx(Wn,{image:f,alt:g,hideSize:i,canvasWidth:U,canvasHeight:L,scale:G}),n.diff&&r==="slider"&&v.jsx(__,{expectedImage:f,actualImage:m,hideSize:i,canvasWidth:U,canvasHeight:L,scale:G,expectedTitle:g}),n.diff&&r==="sxs"&&v.jsxs("div",{style:{display:"flex"},children:[v.jsx(Wn,{image:f,title:g,hideSize:i,canvasWidth:X*N,canvasHeight:X*$,scale:X}),v.jsx(Wn,{image:o?w:m,title:o?"Diff":"Actual",onClick:()=>u(!o),hideSize:i,canvasWidth:X*N,canvasHeight:X*$,scale:X})]}),!n.diff&&r==="actual"&&v.jsx(Wn,{image:m,title:"Actual",hideSize:i,canvasWidth:U,canvasHeight:L,scale:G}),!n.diff&&r==="expected"&&v.jsx(Wn,{image:f,title:g,hideSize:i,canvasWidth:U,canvasHeight:L,scale:G}),!n.diff&&r==="sxs"&&v.jsxs("div",{style:{display:"flex"},children:[v.jsx(Wn,{image:f,title:g,canvasWidth:X*N,canvasHeight:X*$,scale:X}),v.jsx(Wn,{image:m,title:"Actual",canvasWidth:X*N,canvasHeight:X*$,scale:X})]})]}),!i&&v.jsxs("div",{style:{alignSelf:"start",lineHeight:"18px",marginLeft:"15px"},children:[v.jsx("div",{children:n.diff&&v.jsx("a",{target:"_blank",href:n.diff.attachment.path,rel:"noreferrer",children:n.diff.attachment.name})}),v.jsx("div",{children:v.jsx("a",{target:e?"":"_blank",href:n.actual.attachment.path,rel:"noreferrer",children:n.actual.attachment.name})}),v.jsx("div",{children:v.jsx("a",{target:e?"":"_blank",href:n.expected.attachment.path,rel:"noreferrer",children:n.expected.attachment.name})})]})]})})},__=({expectedImage:n,actualImage:e,canvasWidth:i,canvasHeight:r,scale:l,expectedTitle:o,hideSize:u})=>{const f={position:"absolute",top:0,left:0},[d,g]=R.useState(i/2),b=n.naturalWidth===e.naturalWidth&&n.naturalHeight===e.naturalHeight;return v.jsxs("div",{style:{flex:"none",display:"flex",alignItems:"center",flexDirection:"column",userSelect:"none"},children:[!u&&v.jsxs("div",{style:{margin:5},children:[!b&&v.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"Expected "}),v.jsx("span",{children:n.naturalWidth}),v.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"x"}),v.jsx("span",{children:n.naturalHeight}),!b&&v.jsx("span",{style:{flex:"none",margin:"0 5px 0 15px"},children:"Actual "}),!b&&v.jsx("span",{children:e.naturalWidth}),!b&&v.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"x"}),!b&&v.jsx("span",{children:e.naturalHeight})]}),v.jsxs("div",{style:{position:"relative",width:i,height:r,margin:15,...kh},children:[v.jsx(U0,{orientation:"horizontal",offsets:[d],setOffsets:m=>g(m[0]),resizerColor:"#57606a80",resizerWidth:6}),v.jsx("img",{alt:o,style:{width:n.naturalWidth*l,height:n.naturalHeight*l},draggable:"false",src:n.src}),v.jsx("div",{style:{...f,bottom:0,overflow:"hidden",width:d,...kh},children:v.jsx("img",{alt:"Actual",style:{width:e.naturalWidth*l,height:e.naturalHeight*l},draggable:"false",src:e.src})})]})]})},Wn=({image:n,title:e,alt:i,hideSize:r,canvasWidth:l,canvasHeight:o,scale:u,onClick:f})=>v.jsxs("div",{style:{flex:"none",display:"flex",alignItems:"center",flexDirection:"column"},children:[!r&&v.jsxs("div",{style:{margin:5},children:[e&&v.jsx("span",{style:{flex:"none",margin:"0 5px"},children:e}),v.jsx("span",{children:n.naturalWidth}),v.jsx("span",{style:{flex:"none",margin:"0 5px"},children:"x"}),v.jsx("span",{children:n.naturalHeight})]}),v.jsx("div",{style:{display:"flex",flex:"none",width:l,height:o,margin:15,...kh},children:v.jsx("img",{width:n.naturalWidth*u,height:n.naturalHeight*u,alt:e||i,style:{cursor:f?"pointer":"initial"},draggable:"false",src:n.src,onClick:f})})]}),E_="modulepreload",T_=function(n,e){return new URL(n,e).href},fb={},A_=function(e,i,r){let l=Promise.resolve();if(i&&i.length>0){let u=function(b){return Promise.all(b.map(m=>Promise.resolve(m).then(S=>({status:"fulfilled",value:S}),S=>({status:"rejected",reason:S}))))};const f=document.getElementsByTagName("link"),d=document.querySelector("meta[property=csp-nonce]"),g=(d==null?void 0:d.nonce)||(d==null?void 0:d.getAttribute("nonce"));l=u(i.map(b=>{if(b=T_(b,r),b in fb)return;fb[b]=!0;const m=b.endsWith(".css"),S=m?'[rel="stylesheet"]':"";if(!!r)for(let x=f.length-1;x>=0;x--){const _=f[x];if(_.href===b&&(!m||_.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${b}"]${S}`))return;const T=document.createElement("link");if(T.rel=m?"stylesheet":E_,m||(T.as="script"),T.crossOrigin="",T.href=b,g&&T.setAttribute("nonce",g),document.head.appendChild(T),m)return new Promise((x,_)=>{T.addEventListener("load",x),T.addEventListener("error",()=>_(new Error(`Unable to preload CSS for ${b}`)))})}))}function o(u){const f=new Event("vite:preloadError",{cancelable:!0});if(f.payload=u,window.dispatchEvent(f),!f.defaultPrevented)throw u}return l.then(u=>{for(const f of u||[])f.status==="rejected"&&o(f.reason);return e().catch(o)})},C_=20,Er=({text:n,highlighter:e,mimeType:i,linkify:r,readOnly:l,highlight:o,revealLine:u,lineNumbers:f,isFocused:d,focusOnChange:g,wrapLines:b,onChange:m,dataTestId:S,placeholder:w})=>{const[T,x]=ms(),[_]=R.useState(A_(()=>import("./codeMirrorModule-DS0FLvoc.js"),__vite__mapDeps([0,1]),import.meta.url).then(G=>G.default)),A=R.useRef(null),[N,$]=R.useState();return R.useEffect(()=>{(async()=>{var B,O;const G=await _;k_(G);const X=x.current;if(!X)return;const U=O_(e)||M_(i)||(r?"text/linkified":"");if(A.current&&U===A.current.cm.getOption("mode")&&!!l===A.current.cm.getOption("readOnly")&&f===A.current.cm.getOption("lineNumbers")&&b===A.current.cm.getOption("lineWrapping")&&w===A.current.cm.getOption("placeholder"))return;(O=(B=A.current)==null?void 0:B.cm)==null||O.getWrapperElement().remove();const L=G(X,{value:"",mode:U,readOnly:!!l,lineNumbers:f,lineWrapping:b,placeholder:w,matchBrackets:!0,autoCloseBrackets:!0,extraKeys:{"Ctrl-F":"findPersistent","Cmd-F":"findPersistent"}});return A.current={cm:L},d&&L.focus(),$(L),L})()},[_,N,x,e,i,r,f,b,l,d,w]),R.useEffect(()=>{A.current&&A.current.cm.setSize(T.width,T.height)},[T]),R.useLayoutEffect(()=>{var U;if(!N)return;let G=!1;if(N.getValue()!==n&&(N.setValue(n),G=!0,g&&(N.execCommand("selectAll"),N.focus())),G||JSON.stringify(o)!==JSON.stringify(A.current.highlight)){for(const O of A.current.highlight||[])N.removeLineClass(O.line-1,"wrap");for(const O of o||[])N.addLineClass(O.line-1,"wrap",`source-line-${O.type}`);for(const O of A.current.widgets||[])N.removeLineWidget(O);for(const O of A.current.markers||[])O.clear();const L=[],B=[];for(const O of o||[]){if(O.type!=="subtle-error"&&O.type!=="error")continue;const ne=(U=A.current)==null?void 0:U.cm.getLine(O.line-1);if(ne){const te={};te.title=O.message||"",B.push(N.markText({line:O.line-1,ch:0},{line:O.line-1,ch:O.column||ne.length},{className:"source-line-error-underline",attributes:te}))}if(O.type==="error"){const te=document.createElement("div");te.innerHTML=nl(O.message||""),te.className="source-line-error-widget",L.push(N.addLineWidget(O.line,te,{above:!0,coverGutter:!1}))}}A.current.highlight=o,A.current.widgets=L,A.current.markers=B}typeof u=="number"&&A.current.cm.lineCount()>=u&&N.scrollIntoView({line:Math.max(0,u-1),ch:0},50);let X;return m&&(X=()=>m(N.getValue()),N.on("change",X)),()=>{X&&N.off("change",X)}},[N,n,o,u,g,m]),v.jsx("div",{"data-testid":S,className:"cm-wrapper",ref:x,onClick:N_})};function N_(n){var i;if(!(n.target instanceof HTMLElement))return;let e;n.target.classList.contains("cm-linkified")?e=n.target.textContent:n.target.classList.contains("cm-link")&&((i=n.target.nextElementSibling)!=null&&i.classList.contains("cm-url"))&&(e=n.target.nextElementSibling.textContent.slice(1,-1)),e&&(n.preventDefault(),n.stopPropagation(),window.open(e,"_blank"))}let hb=!1;function k_(n){hb||(hb=!0,n.defineSimpleMode("text/linkified",{start:[{regex:t0,token:"linkified"}]}))}function M_(n){if(n){if(n.includes("javascript")||n.includes("json"))return"javascript";if(n.includes("python"))return"python";if(n.includes("csharp"))return"text/x-csharp";if(n.includes("java"))return"text/x-java";if(n.includes("markdown"))return"markdown";if(n.includes("html")||n.includes("svg"))return"htmlmixed";if(n.includes("css"))return"css"}}function O_(n){if(n)return{javascript:"javascript",jsonl:"javascript",python:"python",csharp:"text/x-csharp",java:"text/x-java",markdown:"markdown",html:"htmlmixed",css:"css",yaml:"yaml"}[n]}function j_(n){return!!n.match(/^(application\/json|application\/.*?\+json|text\/(x-)?json)(;\s*charset=.*)?$/)}function L_(n){return!!n.match(/^(application\/xml|application\/.*?\+xml|text\/xml)(;\s*charset=.*)?$/)}function R_(n){return!!n.match(/^(text\/.*?|application\/(json|(x-)?javascript|xml.*?|ecmascript|graphql|x-www-form-urlencoded)|image\/svg(\+xml)?|application\/.*?(\+json|\+xml))(;\s*charset=.*)?$/)}const H0=({title:n,children:e,setExpanded:i,expanded:r,expandOnTitleClick:l,className:o})=>{const u=R.useId(),f=R.useId(),d=R.useCallback(()=>i(!r),[r,i]),g=v.jsx("div",{className:st("codicon",r?"codicon-chevron-down":"codicon-chevron-right"),style:{cursor:"pointer",color:"var(--vscode-foreground)",marginLeft:"5px"},onClick:l?void 0:d});return v.jsxs("div",{className:st("expandable",r&&"expanded",o),children:[l?v.jsxs("div",{id:u,role:"button","aria-expanded":r,"aria-controls":f,className:"expandable-title",onClick:d,children:[g,n]}):v.jsxs("div",{className:"expandable-title",children:[g,n]}),r&&v.jsx("div",{id:f,"aria-labelledby":u,role:"region",className:"expandable-content",children:e})]})};function B0(n){const e=[];let i=0,r;for(;(r=t0.exec(n))!==null;){const o=n.substring(i,r.index);o&&e.push(o);const u=r[0];e.push(D_(u)),i=r.index+u.length}const l=n.substring(i);return l&&e.push(l),e}function D_(n){let e=n;return e.startsWith("www.")&&(e="https://"+e),v.jsx("a",{href:e,target:"_blank",rel:"noopener noreferrer",children:n})}const q0=R.createContext(void 0),si=()=>R.useContext(q0),z_=({attachment:n,reveal:e})=>{const i=si(),[r,l]=R.useState(!1),[o,u]=R.useState(null),[f,d]=R.useState(null),[g,b]=ax(),m=R.useRef(null),S=R_(n.contentType),w=!!n.sha1||!!n.path;R.useEffect(()=>{var _;if(e)return(_=m.current)==null||_.scrollIntoView({behavior:"smooth"}),b()},[e,b]),R.useEffect(()=>{r&&o===null&&f===null&&(d("Loading ..."),fetch(bc(i,n)).then(_=>_.text()).then(_=>{u(_),d(null)}).catch(_=>{d("Failed to load: "+_.message)}))},[i,r,o,f,n]);const T=R.useMemo(()=>{const _=o?o.split(` +`).length:0;return Math.min(Math.max(5,_),20)*C_},[o]),x=v.jsxs("span",{style:{marginLeft:5},ref:m,"aria-label":n.name,children:[v.jsx("span",{children:B0(n.name)}),w&&v.jsx("a",{style:{marginLeft:5},href:Fo(i,n),children:"download"})]});return!S||!w?v.jsx("div",{style:{marginLeft:20},children:x}):v.jsxs("div",{className:st(g&&"yellow-flash"),children:[v.jsx(H0,{title:x,expanded:r,setExpanded:l,expandOnTitleClick:!0,children:f&&v.jsx("i",{children:f})}),r&&o!==null&&v.jsx("div",{className:"vbox",style:{height:T},children:v.jsx(Er,{text:o,readOnly:!0,mimeType:n.contentType,linkify:!0,lineNumbers:!0,wrapLines:!1})})]})},U_=({revealedAttachmentCallId:n})=>{const e=si(),{diffMap:i,screenshots:r,attachments:l}=R.useMemo(()=>{const o=new Set((e==null?void 0:e.visibleAttachments)??[]),u=new Set,f=new Map;for(const d of o){if(!d.path&&!d.sha1)continue;const g=d.name.match(/^(.*)-(expected|actual|diff)\.png$/);if(g){const b=g[1],m=g[2],S=f.get(b)||{expected:void 0,actual:void 0,diff:void 0};S[m]=d,f.set(b,S),o.delete(d)}else d.contentType.startsWith("image/")&&(u.add(d),o.delete(d))}return{diffMap:f,attachments:o,screenshots:u}},[e]);return!i.size&&!r.size&&!l.size?v.jsx(ys,{text:"No attachments"}):v.jsxs("div",{className:"attachments-tab",children:[[...i.values()].map(({expected:o,actual:u,diff:f})=>v.jsxs(v.Fragment,{children:[o&&u&&v.jsx("div",{className:"attachments-section",children:"Image diff"}),o&&u&&v.jsx(x_,{noTargetBlank:!0,diff:{name:"Image diff",expected:{attachment:{...o,path:Fo(e,o)},title:"Expected"},actual:{attachment:{...u,path:Fo(e,u)}},diff:f?{attachment:{...f,path:Fo(e,f)}}:void 0}})]})),r.size?v.jsx("div",{className:"attachments-section",children:"Screenshots"}):void 0,[...r.values()].map((o,u)=>{const f=bc(e,o);return v.jsxs("div",{className:"attachment-item",children:[v.jsx("div",{children:v.jsx("img",{draggable:"false",src:f})}),v.jsx("div",{children:v.jsx("a",{target:"_blank",href:f,rel:"noreferrer",children:o.name})})]},`screenshot-${u}`)}),l.size?v.jsx("div",{className:"attachments-section",children:"Attachments"}):void 0,[...l.values()].map((o,u)=>v.jsx("div",{className:"attachment-item",children:v.jsx(z_,{attachment:o,reveal:n&&o.callId===n.callId?n:void 0})},H_(o,u)))]})};function bc(n,e){return n&&e.sha1?n.createRelativeUrl(`sha1/${e.sha1}`):`file?path=${encodeURIComponent(e.path)}`}function Fo(n,e){let i=e.contentType?`&dn=${encodeURIComponent(e.name)}`:"";return e.contentType&&(i+=`&dct=${encodeURIComponent(e.contentType)}`),bc(n,e)+i}function H_(n,e){return e+"-"+(n.sha1?"sha1-"+n.sha1:"path-"+n.path)}const B_=({prompt:n})=>v.jsx(Yo,{value:n,description:"Copy prompt",copiedDescription:v.jsxs(v.Fragment,{children:["Copied ",v.jsx("span",{className:"codicon codicon-copy",style:{marginLeft:"5px"}})]}),style:{width:"120px",justifyContent:"center"}});function q_(n){return R.useMemo(()=>{if(!n)return{errors:new Map};const e=new Map;for(const i of n.errorDescriptors)e.set(i.message,i);return{errors:e}},[n])}function $_({message:n,error:e,sdkLanguage:i,revealInSource:r}){var f;let l,o;const u=(f=e.stack)==null?void 0:f[0];return u&&(l=u.file.replace(/.*[/\\](.*)/,"$1")+":"+u.line,o=u.file+":"+u.line),v.jsxs("div",{style:{display:"flex",flexDirection:"column",overflowX:"clip"},children:[v.jsxs("div",{className:"hbox",style:{alignItems:"center",padding:"5px 10px",minHeight:36,fontWeight:"bold",color:"var(--vscode-errorForeground)",flex:0},children:[e.action&&ed(e.action,{sdkLanguage:i}),l&&v.jsxs("div",{className:"action-location",children:["@ ",v.jsx("span",{title:o,onClick:()=>r(e),children:l})]})]}),v.jsx(S_,{error:n})]})}const I_=({errorsModel:n,sdkLanguage:e,revealInSource:i,wallTime:r,testRunMetadata:l})=>{const o=si(),u=Yh(async()=>{const f=o==null?void 0:o.attachments.find(g=>g.name==="error-context");if(!f)return;let d=await fetch(bc(o,f)).then(g=>g.text());if(d)return l!=null&&l.gitDiff&&(d+=` + +# Local changes + +\`\`\`diff +`+l.gitDiff+"\n```"),d},[o,l],void 0);return n.errors.size?v.jsxs("div",{className:"fill",style:{overflow:"auto"},children:[v.jsx("span",{style:{position:"absolute",right:"5px",top:"5px",zIndex:1},children:u&&v.jsx(B_,{prompt:u})}),[...n.errors.entries()].map(([f,d])=>{const g=`error-${r}-${f}`;return v.jsx($_,{message:f,error:d,revealInSource:i,sdkLanguage:e},g)})]}):v.jsx(ys,{text:"No errors"})},V_=yc;function G_(n,e){const{entries:i}=R.useMemo(()=>{if(!n)return{entries:[]};const l=[];function o(f){var b,m,S,w,T,x;const d=l[l.length-1];d&&((b=f.browserMessage)==null?void 0:b.bodyString)===((m=d.browserMessage)==null?void 0:m.bodyString)&&((S=f.browserMessage)==null?void 0:S.location)===((w=d.browserMessage)==null?void 0:w.location)&&f.browserError===d.browserError&&((T=f.nodeMessage)==null?void 0:T.html)===((x=d.nodeMessage)==null?void 0:x.html)&&f.isError===d.isError&&f.isWarning===d.isWarning&&f.timestamp-d.timestamp<1e3?d.repeat++:l.push({...f,repeat:1})}const u=[...n.events,...n.stdio].sort((f,d)=>{const g="time"in f?f.time:f.timestamp,b="time"in d?d.time:d.timestamp;return g-b});for(const f of u){if(f.type==="console"){const d=f.args&&f.args.length?X_(f.args):$0(f.text),g=f.location.url,m=`${g?g.substring(g.lastIndexOf("/")+1):""}:${f.location.lineNumber}`;o({browserMessage:{body:d,bodyString:f.text,location:m},isError:f.messageType==="error",isWarning:f.messageType==="warning",timestamp:f.time})}if(f.type==="event"&&f.method==="pageError"&&o({browserError:f.params.error,isError:!0,isWarning:!1,timestamp:f.time}),f.type==="stderr"||f.type==="stdout"){let d="";f.text&&(d=nl(f.text.trim())||""),f.base64&&(d=nl(atob(f.base64).trim())||""),o({nodeMessage:{html:d},isError:f.type==="stderr",isWarning:!1,timestamp:f.timestamp})}}return{entries:l}},[n]);return{entries:R.useMemo(()=>e?i.filter(l=>l.timestamp>=e.minimum&&l.timestamp<=e.maximum):i,[i,e])}}const K_=({consoleModel:n,boundaries:e,onEntryHovered:i,onAccepted:r})=>n.entries.length?v.jsx("div",{className:"console-tab",children:v.jsx(V_,{name:"console",onAccepted:r,onHighlighted:l=>i==null?void 0:i(l?n.entries.indexOf(l):void 0),items:n.entries,isError:l=>l.isError,isWarning:l=>l.isWarning,render:l=>{const o=bt(l.timestamp-e.minimum),u=v.jsx("span",{className:"console-time",children:o}),f=l.isError?"status-error":l.isWarning?"status-warning":"status-none",d=l.browserMessage||l.browserError?v.jsx("span",{className:st("codicon","codicon-browser",f),title:"Browser message"}):v.jsx("span",{className:st("codicon","codicon-file",f),title:"Runner message"});let g,b,m,S;const{browserMessage:w,browserError:T,nodeMessage:x}=l;if(w&&(g=w.location,b=w.body),T){const{error:_,value:A}=T;_?(b=_.message,S=_.stack):b=String(A)}return x&&(m=x.html),v.jsxs("div",{className:"console-line",children:[u,d,g&&v.jsx("span",{className:"console-location",children:g}),l.repeat>1&&v.jsx("span",{className:"console-repeat",children:l.repeat}),b&&v.jsx("span",{className:"console-line-message",children:b}),m&&v.jsx("span",{className:"console-line-message",dangerouslySetInnerHTML:{__html:m}}),S&&v.jsx("div",{className:"console-stack",children:S})]})}})}):v.jsx(ys,{text:"No console entries"});function X_(n){if(n.length===1)return $0(n[0].preview);const e=typeof n[0].value=="string"&&n[0].value.includes("%"),i=e?n[0].value:"",r=e?n.slice(1):n;let l=0;const o=/%([%sdifoOc])/g;let u;const f=[];let d=[];f.push(v.jsx("span",{children:d},f.length+1));let g=0;for(;(u=o.exec(i))!==null;){const b=i.substring(g,u.index);d.push(v.jsx("span",{children:b},d.length+1)),g=u.index+2;const m=u[0][1];if(m==="%")d.push(v.jsx("span",{children:"%"},d.length+1));else if(m==="s"||m==="o"||m==="O"||m==="d"||m==="i"||m==="f"){const S=r[l++],w={};typeof(S==null?void 0:S.value)!="string"&&(w.color="var(--vscode-debugTokenExpression-number)"),d.push(v.jsx("span",{style:w,children:(S==null?void 0:S.preview)||""},d.length+1))}else if(m==="c"){d=[];const S=r[l++],w=S?Y_(S.preview):{};f.push(v.jsx("span",{style:w,children:d},f.length+1))}}for(gd[1].toUpperCase());e[f]=u}return e}catch{return{}}}function F_(n){return["background","border","color","font","line","margin","padding","text"].some(i=>n.startsWith(i))}const id=({noShadow:n,children:e,noMinHeight:i,className:r,sidebarBackground:l,onClick:o})=>v.jsx("div",{className:st("toolbar",n&&"no-shadow",i&&"no-min-height",r,l&&"toolbar-sidebar-background"),onClick:o,children:e}),Mh=({tabs:n,selectedTab:e,setSelectedTab:i,leftToolbar:r,rightToolbar:l,dataTestId:o,mode:u})=>{const f=R.useId();return e||(e=n[0].id),u||(u="default"),v.jsx("div",{className:"tabbed-pane","data-testid":o,children:v.jsxs("div",{className:"vbox",children:[v.jsxs(id,{children:[r&&v.jsxs("div",{style:{flex:"none",display:"flex",margin:"0 4px",alignItems:"center"},children:[...r]}),u==="default"&&v.jsx("div",{style:{flex:"auto",display:"flex",height:"100%",overflow:"hidden"},role:"tablist",children:[...n.map(d=>v.jsx(I0,{id:d.id,ariaControls:`${f}-${d.id}`,title:d.title,count:d.count,errorCount:d.errorCount,selected:e===d.id,onSelect:i},d.id))]}),u==="select"&&v.jsx("div",{style:{flex:"auto",display:"flex",height:"100%",overflow:"hidden"},role:"tablist",children:v.jsx("select",{style:{width:"100%",background:"none",cursor:"pointer"},value:e,onChange:d=>{i==null||i(n[d.currentTarget.selectedIndex].id)},children:n.map(d=>{let g="";return d.count&&(g=` (${d.count})`),d.errorCount&&(g=` (${d.errorCount})`),v.jsxs("option",{value:d.id,role:"tab","aria-controls":`${f}-${d.id}`,children:[d.title,g]},d.id)})})}),l&&v.jsxs("div",{style:{flex:"none",display:"flex",alignItems:"center"},children:[...l]})]}),n.map(d=>{const g="tab-content tab-"+d.id;if(d.component)return v.jsx("div",{id:`${f}-${d.id}`,role:"tabpanel","aria-label":d.title,className:g,style:{display:e===d.id?"inherit":"none"},children:d.component},d.id);if(e===d.id)return v.jsx("div",{id:`${f}-${d.id}`,role:"tabpanel","aria-label":d.title,className:g,children:d.render()},d.id)})]})})},I0=({id:n,title:e,count:i,errorCount:r,selected:l,onSelect:o,ariaControls:u})=>v.jsxs("div",{className:st("tabbed-pane-tab",l&&"selected"),onClick:()=>o==null?void 0:o(n),role:"tab",title:e,"aria-controls":u,"aria-selected":l,children:[v.jsx("div",{className:"tabbed-pane-tab-label",children:e}),!!i&&v.jsx("div",{className:"tabbed-pane-tab-counter",children:i}),!!r&&v.jsx("div",{className:"tabbed-pane-tab-counter error",children:r})]});async function Q_(n,e){const i=navigator.platform.includes("Win")?"win":"unix";let r=[];const l=new Set(["accept-encoding","host","method","path","scheme","version","authority","protocol"]);function o(S){return'^"'+S.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/[^a-zA-Z0-9\s_\-:=+~'\/.',?;()*`]/g,"^$&").replace(/%(?=[a-zA-Z0-9_])/g,"%^").replace(/[^ -~\r\n]/g," ").replace(/\r?\n|\r/g,`^ + +`)+'^"'}function u(S){function w(T){let _=T.charCodeAt(0).toString(16);for(;_.length<4;)_="0"+_;return"\\u"+_}return/[\0-\x1F\x7F-\x9F!]|\'/.test(S)?"$'"+S.replace(/\\/g,"\\\\").replace(/\'/g,"\\'").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\0-\x1F\x7F-\x9F!]/g,w)+"'":"'"+S+"'"}const f=i==="win"?o:u;r.push(f(e.request.url).replace(/[[{}\]]/g,"\\$&"));let d="GET";const g=[],b=await V0(n,e);b&&(g.push("--data-raw "+f(b)),l.add("content-length"),d="POST"),e.request.method!==d&&r.push("-X "+f(e.request.method));const m=e.request.headers;for(let S=0;S=3?i==="win"?` ^ + `:` \\ + `:" ")}async function P_(n,e,i=0){const r=new Set(["method","path","scheme","version","accept-charset","accept-encoding","access-control-request-headers","access-control-request-method","connection","content-length","cookie","cookie2","date","dnt","expect","host","keep-alive","origin","referer","te","trailer","transfer-encoding","upgrade","via","user-agent"]),l=new Set(["cookie","authorization"]),o=JSON.stringify(e.request.url),u=e.request.headers,f=u.reduce((x,_)=>{const A=_.name;return!r.has(A.toLowerCase())&&!A.includes(":")&&x.append(A,_.value),x},new Headers),d={};for(const x of f)d[x[0]]=x[1];const g=e.request.cookies.length||u.some(({name:x})=>l.has(x.toLowerCase()))?"include":"omit",b=u.find(({name:x})=>x.toLowerCase()==="referer"),m=b?b.value:void 0,S=await V0(n,e),w={headers:Object.keys(d).length?d:void 0,referrer:m,body:S,method:e.request.method,mode:"cors"};if(i===1){const x=u.find(A=>A.name.toLowerCase()==="cookie"),_={};delete w.mode,x&&(_.cookie=x.value),m&&(delete w.referrer,_.Referer=m),Object.keys(_).length&&(w.headers={...d,..._})}else w.credentials=g;const T=JSON.stringify(w,null,2);return`fetch(${o}, ${T});`}async function V0(n,e){var i,r;return n&&((i=e.request.postData)!=null&&i._sha1)?await fetch(n.createRelativeUrl(`sha1/${e.request.postData._sha1}`)).then(l=>l.text()):(r=e.request.postData)==null?void 0:r.text}class J_{generatePlaywrightRequestCall(e,i){let r=e.method.toLowerCase();const l=new URL(e.url),o=`${l.origin}${l.pathname}`,u={};["delete","get","head","post","put","patch"].includes(r)||(u.method=r,r="fetch"),l.searchParams.size&&(u.params=Object.fromEntries(l.searchParams.entries())),i&&(u.data=i),e.headers.length&&(u.headers=Object.fromEntries(e.headers.map(g=>[g.name,g.value])));const f=[`'${o}'`];return Object.keys(u).length>0&&f.push(this.prettyPrintObject(u)),`await page.request.${r}(${f.join(", ")});`}prettyPrintObject(e,i=2,r=0){if(e===null)return"null";if(e===void 0)return"undefined";if(typeof e!="object")return typeof e=="string"?this.stringLiteral(e):String(e);if(Array.isArray(e)){if(e.length===0)return"[]";const f=" ".repeat(r*i),d=" ".repeat((r+1)*i);return`[ +${e.map(b=>`${d}${this.prettyPrintObject(b,i,r+1)}`).join(`, +`)} +${f}]`}if(Object.keys(e).length===0)return"{}";const l=" ".repeat(r*i),o=" ".repeat((r+1)*i);return`{ +${Object.entries(e).map(([f,d])=>{const g=this.prettyPrintObject(d,i,r+1),b=/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(f)?f:this.stringLiteral(f);return`${o}${b}: ${g}`}).join(`, +`)} +${l}}`}stringLiteral(e){return e=e.replace(/\\/g,"\\\\").replace(/'/g,"\\'"),e.includes(` +`)||e.includes("\r")||e.includes(" ")?"`"+e+"`":`'${e}'`}}class Z_{generatePlaywrightRequestCall(e,i){const r=new URL(e.url),o=[`"${`${r.origin}${r.pathname}`}"`];let u=e.method.toLowerCase();["delete","get","head","post","put","patch"].includes(u)||(o.push(`method="${u}"`),u="fetch"),r.searchParams.size&&o.push(`params=${this.prettyPrintObject(Object.fromEntries(r.searchParams.entries()))}`),i&&o.push(`data=${this.prettyPrintObject(i)}`),e.headers.length&&o.push(`headers=${this.prettyPrintObject(Object.fromEntries(e.headers.map(d=>[d.name,d.value])))}`);const f=o.length===1?o[0]:` +${o.map(d=>this.indent(d,2)).join(`, +`)} +`;return`await page.request.${u}(${f})`}indent(e,i){return e.split(` +`).map(r=>" ".repeat(i)+r).join(` +`)}prettyPrintObject(e,i=2,r=0){if(e===null||e===void 0)return"None";if(typeof e!="object")return typeof e=="string"?this.stringLiteral(e):typeof e=="boolean"?e?"True":"False":String(e);if(Array.isArray(e)){if(e.length===0)return"[]";const f=" ".repeat(r*i),d=" ".repeat((r+1)*i);return`[ +${e.map(b=>`${d}${this.prettyPrintObject(b,i,r+1)}`).join(`, +`)} +${f}]`}if(Object.keys(e).length===0)return"{}";const l=" ".repeat(r*i),o=" ".repeat((r+1)*i);return`{ +${Object.entries(e).map(([f,d])=>{const g=this.prettyPrintObject(d,i,r+1);return`${o}${this.stringLiteral(f)}: ${g}`}).join(`, +`)} +${l}}`}stringLiteral(e){return JSON.stringify(e)}}class W_{generatePlaywrightRequestCall(e,i){const r=new URL(e.url),l=`${r.origin}${r.pathname}`,o={},u=[];let f=e.method.toLowerCase();["delete","get","head","post","put","patch"].includes(f)||(o.Method=f,f="fetch"),r.searchParams.size&&(o.Params=Object.fromEntries(r.searchParams.entries())),i&&(o.Data=i),e.headers.length&&(o.Headers=Object.fromEntries(e.headers.map(b=>[b.name,b.value])));const d=[`"${l}"`];return Object.keys(o).length>0&&d.push(this.prettyPrintObject(o)),`${u.join(` +`)}${u.length?` +`:""}await request.${this.toFunctionName(f)}(${d.join(", ")});`}toFunctionName(e){return e[0].toUpperCase()+e.slice(1)+"Async"}prettyPrintObject(e,i=2,r=0){if(e===null||e===void 0)return"null";if(typeof e!="object")return typeof e=="string"?this.stringLiteral(e):typeof e=="boolean"?e?"true":"false":String(e);if(Array.isArray(e)){if(e.length===0)return"new object[] {}";const f=" ".repeat(r*i),d=" ".repeat((r+1)*i);return`new object[] { +${e.map(b=>`${d}${this.prettyPrintObject(b,i,r+1)}`).join(`, +`)} +${f}}`}if(Object.keys(e).length===0)return"new {}";const l=" ".repeat(r*i),o=" ".repeat((r+1)*i);return`new() { +${Object.entries(e).map(([f,d])=>{const g=this.prettyPrintObject(d,i,r+1),b=r===0?f:`[${this.stringLiteral(f)}]`;return`${o}${b} = ${g}`}).join(`, +`)} +${l}}`}stringLiteral(e){return JSON.stringify(e)}}class eE{generatePlaywrightRequestCall(e,i){const r=new URL(e.url),l=[`"${r.origin}${r.pathname}"`],o=[];let u=e.method.toLowerCase();["delete","get","head","post","put","patch"].includes(u)||(o.push(`setMethod("${u}")`),u="fetch");for(const[f,d]of r.searchParams)o.push(`setQueryParam(${this.stringLiteral(f)}, ${this.stringLiteral(d)})`);i&&o.push(`setData(${this.stringLiteral(i)})`);for(const f of e.headers)o.push(`setHeader(${this.stringLiteral(f.name)}, ${this.stringLiteral(f.value)})`);return o.length>0&&l.push(`RequestOptions.create() + .${o.join(` + .`)} +`),`request.${u}(${l.join(", ")});`}stringLiteral(e){return JSON.stringify(e)}}function tE(n){if(n==="javascript")return new J_;if(n==="python")return new Z_;if(n==="csharp")return new W_;if(n==="java")return new eE;throw new Error("Unsupported language: "+n)}const nE=({resource:n,sdkLanguage:e,startTimeOffset:i,onClose:r})=>{const[l,o]=R.useState("headers"),u=si(),f=Yh(async()=>{if(u&&n.request.postData){const d=n.request.headers.find(b=>b.name.toLowerCase()==="content-type"),g=d?d.value:"";if(n.request.postData._sha1){const b=await fetch(u.createRelativeUrl(`sha1/${n.request.postData._sha1}`));return{text:Oh(await b.text(),g),mimeType:g}}else return{text:Oh(n.request.postData.text,g),mimeType:g}}else return null},[n],null);return v.jsx(Mh,{leftToolbar:[v.jsx(ut,{icon:"close",title:"Close",onClick:r},"close")],rightToolbar:[v.jsx(iE,{requestBody:f,resource:n,sdkLanguage:e},"dropdown")],tabs:[{id:"headers",title:"Headers",render:()=>v.jsx(sE,{resource:n,startTimeOffset:i})},{id:"payload",title:"Payload",render:()=>v.jsx(rE,{resource:n,requestBody:f})},{id:"response",title:"Response",render:()=>v.jsx(aE,{resource:n})}],selectedTab:l,setSelectedTab:o})},iE=({resource:n,sdkLanguage:e,requestBody:i})=>{const r=si(),l=v.jsxs(v.Fragment,{children:[v.jsx("span",{className:"codicon codicon-check",style:{marginRight:"5px"}})," Copied "]}),o=async()=>tE(e).generatePlaywrightRequestCall(n.request,i==null?void 0:i.text);return v.jsxs("div",{className:"copy-request-dropdown",children:[v.jsxs(ut,{className:"copy-request-dropdown-toggle",children:[v.jsx("span",{className:"codicon codicon-copy",style:{marginRight:"5px"}}),"Copy request",v.jsx("span",{className:"codicon codicon-chevron-down",style:{marginLeft:"5px"}})]}),v.jsxs("div",{className:"copy-request-dropdown-menu",children:[v.jsx(Yo,{description:"Copy as cURL",copiedDescription:l,value:()=>Q_(r,n)}),v.jsx(Yo,{description:"Copy as Fetch",copiedDescription:l,value:()=>P_(r,n)}),v.jsx(Yo,{description:"Copy as Playwright",copiedDescription:l,value:o})]})]})},Ya=({title:n,data:e,showCount:i,children:r,className:l})=>{const[o,u]=pn(`trace-viewer-network-details-${n.replaceAll(" ","-")}`,!0);return v.jsxs(H0,{expanded:o,setExpanded:u,expandOnTitleClick:!0,title:v.jsxs("span",{className:"network-request-details-header",children:[n,i&&v.jsxs("span",{className:"network-request-details-header-count",children:[" × ",(e==null?void 0:e.length)??0]})]}),className:l,children:[e&&v.jsx("table",{className:"network-request-details-table",children:v.jsx("tbody",{children:e.map(({name:f,value:d},g)=>d!==null&&v.jsxs("tr",{children:[v.jsx("td",{children:f}),v.jsx("td",{children:d})]},g))})}),r]})},sE=({resource:n,startTimeOffset:e})=>{const i=R.useMemo(()=>Object.entries({URL:n.request.url,Method:n.request.method,"Status Code":n.response.status!==-1&&v.jsxs("span",{className:oE(n.response.status),children:[" ",n.response.status," ",n.response.statusText]}),Start:bt(e),Duration:bt(n.time)}).map(([r,l])=>({name:r,value:l})),[n,e]);return v.jsxs("div",{className:"vbox network-request-details-tab",children:[v.jsx(Ya,{title:"General",data:i}),v.jsx(Ya,{title:"Request Headers",showCount:!0,data:n.request.headers}),v.jsx(Ya,{title:"Response Headers",showCount:!0,data:n.response.headers})]})},rE=({resource:n,requestBody:e})=>v.jsxs("div",{className:"vbox network-request-details-tab",children:[n.request.queryString.length===0&&!e&&v.jsx("em",{className:"network-request-no-payload",children:"No payload for this request."}),n.request.queryString.length>0&&v.jsx(Ya,{title:"Query String Parameters",showCount:!0,data:n.request.queryString}),e&&v.jsx(Ya,{title:"Request Body",className:"network-request-request-body",children:v.jsx(Er,{text:e.text,mimeType:e.mimeType,readOnly:!0,lineNumbers:!0})})]}),aE=({resource:n})=>{const e=si(),[i,r]=R.useState(null);return R.useEffect(()=>{(async()=>{if(e&&n.response.content._sha1){const o=n.response.content.mimeType.includes("image"),u=n.response.content.mimeType.includes("font"),f=await fetch(e.createRelativeUrl(`sha1/${n.response.content._sha1}`));if(o){const d=await f.blob(),g=new FileReader,b=new Promise(m=>g.onload=m);g.readAsDataURL(d),r({dataUrl:(await b).target.result})}else if(u){const d=await f.arrayBuffer();r({font:d})}else{const d=Oh(await f.text(),n.response.content.mimeType);r({text:d,mimeType:n.response.content.mimeType})}}else r(null)})()},[n,e]),v.jsxs("div",{className:"vbox network-request-details-tab",children:[!n.response.content._sha1&&v.jsx("div",{children:"Response body is not available for this request."}),i&&i.font&&v.jsx(lE,{font:i.font}),i&&i.dataUrl&&v.jsx("div",{children:v.jsx("img",{draggable:"false",src:i.dataUrl})}),i&&i.text&&v.jsx(Er,{text:i.text,mimeType:i.mimeType,readOnly:!0,lineNumbers:!0})]})},lE=({font:n})=>{const[e,i]=R.useState(!1);return R.useEffect(()=>{let r;try{r=new FontFace("font-preview",n),r.status==="loaded"&&document.fonts.add(r),r.status==="error"&&i(!0)}catch{i(!0)}return()=>{document.fonts.delete(r)}},[n]),e?v.jsx("div",{className:"network-font-preview-error",children:"Could not load font preview"}):v.jsxs("div",{className:"network-font-preview",children:["ABCDEFGHIJKLM",v.jsx("br",{}),"NOPQRSTUVWXYZ",v.jsx("br",{}),"abcdefghijklm",v.jsx("br",{}),"nopqrstuvwxyz",v.jsx("br",{}),"1234567890"]})};function oE(n){return n<300||n===304?"green-circle":n<400?"yellow-circle":"red-circle"}const cE=/<[^>]+>[^<]*<\//;function uE(n,e=" "){let i=0;const r=[],l=n.replace(/>\s* +<`).split(` +`);for(const o of l){const u=o.trim();u&&(u.startsWith("")||u.startsWith("";if(j_(e))try{return JSON.stringify(JSON.parse(i),null,2)}catch{return i}if(L_(e))try{return uE(i)}catch{return i}return e.includes("application/x-www-form-urlencoded")?decodeURIComponent(i):i}function fE(n){const[e,i]=R.useState([]);R.useEffect(()=>{const o=[];for(let u=0;u{var u,f;(f=n.setSorting)==null||f.call(n,{by:o,negate:((u=n.sorting)==null?void 0:u.by)===o?!n.sorting.negate:!1})},[n]);return v.jsxs("div",{className:`grid-view ${n.name}-grid-view`,children:[v.jsx(U0,{orientation:"horizontal",offsets:e,setOffsets:r,resizerColor:"var(--vscode-panel-border)",resizerWidth:1,minColumnWidth:25}),v.jsxs("div",{className:"vbox",children:[v.jsx("div",{className:"grid-view-header",children:n.columns.map((o,u)=>v.jsxs("div",{className:"grid-view-header-cell "+hE(o,n.sorting),style:{width:un.setSorting&&l(o),children:[v.jsx("span",{className:"grid-view-header-cell-title",children:n.columnTitle(o)}),v.jsx("span",{className:"codicon codicon-triangle-up"}),v.jsx("span",{className:"codicon codicon-triangle-down"})]},n.columnTitle(o)))}),v.jsx(yc,{name:n.name,items:n.items,ariaLabel:n.ariaLabel,id:n.id,render:(o,u)=>v.jsx(v.Fragment,{children:n.columns.map((f,d)=>{const{body:g,title:b}=n.render(o,f,u);return v.jsx("div",{className:`grid-view-cell grid-view-column-${String(f)}`,title:b,style:{width:dv.jsxs("div",{className:"network-filters",children:[v.jsx("input",{type:"search",placeholder:"Filter network",spellCheck:!1,value:n.searchValue,onChange:i=>e({...n,searchValue:i.target.value})}),v.jsxs("div",{className:"network-filters-resource-types",role:"tablist","aria-multiselectable":"true",children:[v.jsx("div",{title:"All",onClick:()=>e({...n,resourceTypes:new Set}),className:`network-filters-resource-type ${n.resourceTypes.size===0?"selected":""}`,children:"All"}),dE.map(i=>v.jsx("div",{title:i,onClick:r=>{let l;r.ctrlKey||r.metaKey?l=n.resourceTypes.symmetricDifference(new Set([i])):l=new Set([i]),e({...n,resourceTypes:l})},className:`network-filters-resource-type ${n.resourceTypes.has(i)?"selected":""}`,role:"tab","aria-selected":n.resourceTypes.has(i),children:i},i))]})]}),mE=fE;function yE(n,e){const i=R.useMemo(()=>((n==null?void 0:n.resources)||[]).filter(u=>e?!!u._monotonicTime&&u._monotonicTime>=e.minimum&&u._monotonicTime<=e.maximum:!0),[n,e]),r=R.useMemo(()=>new _E(n),[n]);return{resources:i,contextIdMap:r}}const bE=({boundaries:n,networkModel:e,onResourceHovered:i,sdkLanguage:r})=>{const[l,o]=R.useState(void 0),[u,f]=R.useState(void 0),[d,g]=R.useState(pE),{renderedEntries:b}=R.useMemo(()=>{const _=e.resources.map(A=>EE(A,n,e.contextIdMap)).filter(kE(d));return l&&AE(_,l),{renderedEntries:_}},[e.resources,e.contextIdMap,d,l,n]),m=R.useMemo(()=>u?b.find(_=>_.resource.id===u):void 0,[u,b]),[S,w]=R.useState(()=>new Map(G0().map(_=>[_,SE(_)]))),T=R.useCallback(_=>{g(_),f(void 0)},[]);if(!e.resources.length)return v.jsx(ys,{text:"No network calls"});const x=v.jsx(mE,{name:"network",ariaLabel:"Network requests",items:b,selectedItem:m,onSelected:_=>f(_.resource.id),onHighlighted:_=>i==null?void 0:i(_==null?void 0:_.resource.id),columns:wE(!!m,b),columnTitle:vE,columnWidths:S,setColumnWidths:w,isError:_=>_.status.code>=400||_.status.code===-1,isInfo:_=>!!_.route,render:(_,A)=>xE(_,A),sorting:l,setSorting:o});return v.jsxs(v.Fragment,{children:[v.jsx(gE,{filterState:d,onFilterStateChange:T}),!m&&x,m&&v.jsx(nc,{sidebarSize:S.get("name"),sidebarIsFirst:!0,orientation:"horizontal",settingName:"networkResourceDetails",main:v.jsx(nE,{resource:m.resource,sdkLanguage:r,startTimeOffset:m.start,onClose:()=>f(void 0)}),sidebar:x})]})},vE=n=>n==="contextId"?"Source":n==="name"?"Name":n==="method"?"Method":n==="status"?"Status":n==="contentType"?"Content Type":n==="duration"?"Duration":n==="size"?"Size":n==="start"?"Start":n==="route"?"Route":"",SE=n=>n==="name"?200:n==="method"||n==="status"?60:n==="contentType"?200:n==="contextId"?60:100;function wE(n,e){if(n){const r=["name"];return db(e)&&r.unshift("contextId"),r}let i=G0();return db(e)||(i=i.filter(r=>r!=="contextId")),i}function G0(){return["contextId","name","method","status","contentType","duration","size","start","route"]}const xE=(n,e)=>e==="contextId"?{body:n.contextId,title:n.name.url}:e==="name"?{body:n.name.name,title:n.name.url}:e==="method"?{body:n.method}:e==="status"?{body:n.status.code>0?n.status.code:"",title:n.status.text}:e==="contentType"?{body:n.contentType}:e==="duration"?{body:bt(n.duration)}:e==="size"?{body:Lx(n.size)}:e==="start"?{body:bt(n.start)}:e==="route"?{body:n.route}:{body:""};class _E{constructor(e){this._pagerefToShortId=new Map,this._contextToId=new Map,this._lastPageId=0,this._lastApiRequestContextId=0}contextId(e){return e.pageref?this._pageId(e.pageref):e._apiRequest?this._apiRequestContextId(e):""}_pageId(e){let i=this._pagerefToShortId.get(e);return i||(++this._lastPageId,i="page#"+this._lastPageId,this._pagerefToShortId.set(e,i)),i}_apiRequestContextId(e){const i=c0(e);if(!i)return"";let r=this._contextToId.get(i);return r||(++this._lastApiRequestContextId,r="api#"+this._lastApiRequestContextId,this._contextToId.set(i,r)),r}}function db(n){const e=new Set;for(const i of n)if(e.add(i.contextId),e.size>1)return!0;return!1}const EE=(n,e,i)=>{const r=TE(n);let l;try{const f=new URL(n.request.url);l=f.pathname.substring(f.pathname.lastIndexOf("/")+1),l||(l=f.host),f.search&&(l+=f.search)}catch{l=n.request.url}let o=n.response.content.mimeType;const u=o.match(/^(.*);\s*charset=.*$/);return u&&(o=u[1]),{name:{name:l,url:n.request.url},method:n.request.method,status:{code:n.response.status,text:n.response.statusText},contentType:o,duration:n.time,size:n.response._transferSize>0?n.response._transferSize:n.response.bodySize,start:n._monotonicTime-e.minimum,route:r,resource:n,contextId:i.contextId(n)}};function TE(n){return n._wasAborted?"aborted":n._wasContinued?"continued":n._wasFulfilled?"fulfilled":n._apiRequest?"api":""}function AE(n,e){const i=CE(e==null?void 0:e.by);i&&n.sort(i),e.negate&&n.reverse()}function CE(n){if(n==="start")return(e,i)=>e.start-i.start;if(n==="duration")return(e,i)=>e.duration-i.duration;if(n==="status")return(e,i)=>e.status.code-i.status.code;if(n==="method")return(e,i)=>{const r=e.method,l=i.method;return r.localeCompare(l)};if(n==="size")return(e,i)=>e.size-i.size;if(n==="contentType")return(e,i)=>e.contentType.localeCompare(i.contentType);if(n==="name")return(e,i)=>e.name.name.localeCompare(i.name.name);if(n==="route")return(e,i)=>e.route.localeCompare(i.route);if(n==="contextId")return(e,i)=>e.contextId.localeCompare(i.contextId)}const NE={Fetch:n=>n==="application/json",HTML:n=>n==="text/html",CSS:n=>n==="text/css",JS:n=>n.includes("javascript"),Font:n=>n.includes("font"),Image:n=>n.includes("image")};function kE({searchValue:n,resourceTypes:e}){return i=>(e.size===0||Array.from(e).some(l=>NE[l](i.contentType)))&&i.name.url.toLowerCase().includes(n.toLowerCase())}function ME(n,e){if(n.role!==e.role||n.name!==e.name||!OE(n,e)||lc(n)!==lc(e))return!1;const i=Object.keys(n.props),r=Object.keys(e.props);return i.length===r.length&&i.every(l=>n.props[l]===e.props[l])}function lc(n){return n.box.cursor==="pointer"}function OE(n,e){return n.active===e.active&&n.checked===e.checked&&n.disabled===e.disabled&&n.expanded===e.expanded&&n.selected===e.selected&&n.level===e.level&&n.pressed===e.pressed}function sd(n,e,i={}){var S;const r=new n.LineCounter,l={keepSourceTokens:!0,lineCounter:r,...i},o=n.parseDocument(e,l),u=[],f=w=>[r.linePos(w[0]),r.linePos(w[1])],d=w=>{u.push({message:w.message,range:[r.linePos(w.pos[0]),r.linePos(w.pos[1])]})},g=(w,T)=>{for(const x of T.items){if(x instanceof n.Scalar&&typeof x.value=="string"){const N=oc.parse(x,l,u);N&&(w.children=w.children||[],w.children.push(N));continue}if(x instanceof n.YAMLMap){b(w,x);continue}u.push({message:"Sequence items should be strings or maps",range:f(x.range||T.range)})}},b=(w,T)=>{for(const x of T.items){if(w.children=w.children||[],!(x.key instanceof n.Scalar&&typeof x.key.value=="string")){u.push({message:"Only string keys are supported",range:f(x.key.range||T.range)});continue}const A=x.key,N=x.value;if(A.value==="text"){if(!(N instanceof n.Scalar&&typeof N.value=="string")){u.push({message:"Text value should be a string",range:f(x.value.range||T.range)});continue}w.children.push({kind:"text",text:ah(N.value)});continue}if(A.value==="/children"){if(!(N instanceof n.Scalar&&typeof N.value=="string")||N.value!=="contain"&&N.value!=="equal"&&N.value!=="deep-equal"){u.push({message:'Strict value should be "contain", "equal" or "deep-equal"',range:f(x.value.range||T.range)});continue}w.containerMode=N.value;continue}if(A.value.startsWith("/")){if(!(N instanceof n.Scalar&&typeof N.value=="string")){u.push({message:"Property value should be a string",range:f(x.value.range||T.range)});continue}w.props=w.props??{},w.props[A.value.slice(1)]=ah(N.value);continue}const $=oc.parse(A,l,u);if(!$)continue;if(N instanceof n.Scalar){const U=typeof N.value;if(U!=="string"&&U!=="number"&&U!=="boolean"){u.push({message:"Node value should be a string or a sequence",range:f(x.value.range||T.range)});continue}w.children.push({...$,children:[{kind:"text",text:ah(String(N.value))}]});continue}if(N instanceof n.YAMLSeq){w.children.push($),g($,N);continue}u.push({message:"Map values should be strings or sequences",range:f(x.value.range||T.range)})}},m={kind:"role",role:"fragment"};return o.errors.forEach(d),u.length?{errors:u,fragment:m}:(o.contents instanceof n.YAMLSeq||u.push({message:'Aria snapshot must be a YAML sequence, elements starting with " -"',range:o.contents?f(o.contents.range):[{line:0,col:0},{line:0,col:0}]}),u.length?{errors:u,fragment:m}:(g(m,o.contents),u.length?{errors:u,fragment:jE}:((S=m.children)==null?void 0:S.length)===1&&(!m.containerMode||m.containerMode==="contain")?{fragment:m.children[0],errors:[]}:{fragment:m,errors:[]}))}const jE={kind:"role",role:"fragment"};function K0(n){return n.replace(/[\u200b\u00ad]/g,"").replace(/[\r\n\s\t]+/g," ").trim()}function ah(n){return{raw:n,normalized:K0(n)}}class oc{static parse(e,i,r){try{return new oc(e.value)._parse()}catch(l){if(l instanceof pb){const o=i.prettyErrors===!1?l.message:l.message+`: + +`+e.value+` +`+" ".repeat(l.pos)+`^ +`;return r.push({message:o,range:[i.lineCounter.linePos(e.range[0]),i.lineCounter.linePos(e.range[0]+l.pos)]}),null}throw l}}constructor(e){this._input=e,this._pos=0,this._length=e.length}_peek(){return this._input[this._pos]||""}_next(){return this._pos=this._length}_isWhitespace(){return!this._eof()&&/\s/.test(this._peek())}_skipWhitespace(){for(;this._isWhitespace();)this._pos++}_readIdentifier(e){this._eof()&&this._throwError(`Unexpected end of input when expecting ${e}`);const i=this._pos;for(;!this._eof()&&/[a-zA-Z]/.test(this._peek());)this._pos++;return this._input.slice(i,this._pos)}_readString(){let e="",i=!1;for(;!this._eof();){const r=this._next();if(i)e+=r,i=!1;else if(r==="\\")i=!0;else{if(r==='"')return e;e+=r}}this._throwError("Unterminated string")}_throwError(e,i=0){throw new pb(e,i||this._pos)}_readRegex(){let e="",i=!1,r=!1;for(;!this._eof();){const l=this._next();if(i)e+=l,i=!1;else if(l==="\\")i=!0,e+=l;else{if(l==="/"&&!r)return{pattern:e};l==="["?(r=!0,e+=l):l==="]"&&r?(e+=l,r=!1):e+=l}}this._throwError("Unterminated regex")}_readStringOrRegex(){const e=this._peek();return e==='"'?(this._next(),K0(this._readString())):e==="/"?(this._next(),this._readRegex()):null}_readAttributes(e){let i=this._pos;for(;this._skipWhitespace(),this._peek()==="[";){this._next(),this._skipWhitespace(),i=this._pos;const r=this._readIdentifier("attribute");this._skipWhitespace();let l="";if(this._peek()==="=")for(this._next(),this._skipWhitespace(),i=this._pos;this._peek()!=="]"&&!this._isWhitespace()&&!this._eof();)l+=this._next();this._skipWhitespace(),this._peek()!=="]"&&this._throwError("Expected ]"),this._next(),this._applyAttribute(e,r,l||"true",i)}}_parse(){this._skipWhitespace();const e=this._readIdentifier("role");this._skipWhitespace();const i=this._readStringOrRegex()||"",r={kind:"role",role:e,name:i};return this._readAttributes(r),this._skipWhitespace(),this._eof()||this._throwError("Unexpected input"),r}_applyAttribute(e,i,r,l){if(i==="checked"){this._assert(r==="true"||r==="false"||r==="mixed",'Value of "checked" attribute must be a boolean or "mixed"',l),e.checked=r==="true"?!0:r==="false"?!1:"mixed";return}if(i==="disabled"){this._assert(r==="true"||r==="false",'Value of "disabled" attribute must be a boolean',l),e.disabled=r==="true";return}if(i==="expanded"){this._assert(r==="true"||r==="false",'Value of "expanded" attribute must be a boolean',l),e.expanded=r==="true";return}if(i==="active"){this._assert(r==="true"||r==="false",'Value of "active" attribute must be a boolean',l),e.active=r==="true";return}if(i==="level"){this._assert(!isNaN(Number(r)),'Value of "level" attribute must be a number',l),e.level=Number(r);return}if(i==="pressed"){this._assert(r==="true"||r==="false"||r==="mixed",'Value of "pressed" attribute must be a boolean or "mixed"',l),e.pressed=r==="true"?!0:r==="false"?!1:"mixed";return}if(i==="selected"){this._assert(r==="true"||r==="false",'Value of "selected" attribute must be a boolean',l),e.selected=r==="true";return}this._assert(!1,`Unsupported attribute [${i}]`,l)}_assert(e,i,r){e||this._throwError(i||"Assertion error",r)}}class pb extends Error{constructor(e,i){super(e),this.pos=i}}function LE(n,e){var u,f;function i(d,g,b){let m=1,S=b+m;for(const w of d.children||[])typeof w=="string"?(m++,S++):(m+=i(w,g,S),S+=m);if(!["none","presentation","fragment","iframe","generic"].includes(d.role)&&d.name){let w=g.get(d.role);w||(w=new Map,g.set(d.role,w));const T=w.get(d.name),x=m*100-b;(!T||T.sizeAndPositiong.sizeAndPosition-d.sizeAndPosition),(f=o[0])==null?void 0:f.node}function RE(n){return X0(n)?"'"+n.replace(/'/g,"''")+"'":n}function lh(n){return X0(n)?'"'+n.replace(/[\\"\x00-\x1f\x7f-\x9f]/g,e=>{switch(e){case"\\":return"\\\\";case'"':return'\\"';case"\b":return"\\b";case"\f":return"\\f";case` +`:return"\\n";case"\r":return"\\r";case" ":return"\\t";default:return"\\x"+e.charCodeAt(0).toString(16).padStart(2,"0")}})+'"':n}function X0(n){return!!(n.length===0||/^\s|\s$/.test(n)||/[\x00-\x08\x0b\x0c\x0e-\x1f\x7f-\x9f]/.test(n)||/^-/.test(n)||/[\n:](\s|$)/.test(n)||/\s#/.test(n)||/[\n\r]/.test(n)||/^[&*\],?!>|@"'#%]/.test(n)||/[{}`]/.test(n)||/^\[/.test(n)||!isNaN(Number(n))||["y","n","yes","no","true","false","on","off","null"].includes(n.toLowerCase()))}let Y0={};function DE(n){Y0=n}function jh(n,e){for(;e;){if(n.contains(e))return!0;e=Q0(e)}return!1}function xt(n){if(n.parentElement)return n.parentElement;if(n.parentNode&&n.parentNode.nodeType===11&&n.parentNode.host)return n.parentNode.host}function F0(n){let e=n;for(;e.parentNode;)e=e.parentNode;if(e.nodeType===11||e.nodeType===9)return e}function Q0(n){for(;n.parentElement;)n=n.parentElement;return xt(n)}function qa(n,e,i){for(;n;){const r=n.closest(e);if(i&&r!==i&&(r!=null&&r.contains(i)))return;if(r)return r;n=Q0(n)}}function Hi(n,e){const i=e==="::before"?ad:e==="::after"?ld:rd;if(i&&i.has(n))return i.get(n);const r=n.ownerDocument&&n.ownerDocument.defaultView?n.ownerDocument.defaultView.getComputedStyle(n,e):void 0;return i==null||i.set(n,r),r}function P0(n,e){if(e=e??Hi(n),!e)return!0;if(Element.prototype.checkVisibility&&Y0.browserNameForWorkarounds!=="webkit"){if(!n.checkVisibility())return!1}else{const i=n.closest("details,summary");if(i!==n&&(i==null?void 0:i.nodeName)==="DETAILS"&&!i.open)return!1}return e.visibility==="visible"}function cc(n){const e=Hi(n);if(!e)return{visible:!0,inline:!1};const i=e.cursor;if(e.display==="contents"){for(let l=n.firstChild;l;l=l.nextSibling){if(l.nodeType===1&&Di(l))return{visible:!0,inline:!1,cursor:i};if(l.nodeType===3&&J0(l))return{visible:!0,inline:!0,cursor:i}}return{visible:!1,inline:!1,cursor:i}}if(!P0(n,e))return{cursor:i,visible:!1,inline:!1};const r=n.getBoundingClientRect();return{cursor:i,visible:r.width>0&&r.height>0,inline:e.display==="inline"}}function Di(n){return cc(n).visible}function J0(n){const e=n.ownerDocument.createRange();e.selectNode(n);const i=e.getBoundingClientRect();return i.width>0&&i.height>0}function Je(n){const e=n.tagName;return typeof e=="string"?e.toUpperCase():n instanceof HTMLFormElement?"FORM":n.tagName.toUpperCase()}let rd,ad,ld,Z0=0;function od(){++Z0,rd??(rd=new Map),ad??(ad=new Map),ld??(ld=new Map)}function cd(){--Z0||(rd=void 0,ad=void 0,ld=void 0)}function gb(n){return n.hasAttribute("aria-label")||n.hasAttribute("aria-labelledby")}const mb="article:not([role]), aside:not([role]), main:not([role]), nav:not([role]), section:not([role]), [role=article], [role=complementary], [role=main], [role=navigation], [role=region]",zE=[["aria-atomic",void 0],["aria-busy",void 0],["aria-controls",void 0],["aria-current",void 0],["aria-describedby",void 0],["aria-details",void 0],["aria-dropeffect",void 0],["aria-flowto",void 0],["aria-grabbed",void 0],["aria-hidden",void 0],["aria-keyshortcuts",void 0],["aria-label",["caption","code","deletion","emphasis","generic","insertion","paragraph","presentation","strong","subscript","superscript"]],["aria-labelledby",["caption","code","deletion","emphasis","generic","insertion","paragraph","presentation","strong","subscript","superscript"]],["aria-live",void 0],["aria-owns",void 0],["aria-relevant",void 0],["aria-roledescription",["generic"]]];function W0(n,e){return zE.some(([i,r])=>!(r!=null&&r.includes(e||""))&&n.hasAttribute(i))}function ev(n){return!Number.isNaN(Number(String(n.getAttribute("tabindex"))))}function UE(n){return!hv(n)&&(HE(n)||ev(n))}function HE(n){const e=Je(n);return["BUTTON","DETAILS","SELECT","TEXTAREA"].includes(e)?!0:e==="A"||e==="AREA"?n.hasAttribute("href"):e==="INPUT"?!n.hidden:!1}const oh={A:n=>n.hasAttribute("href")?"link":null,AREA:n=>n.hasAttribute("href")?"link":null,ARTICLE:()=>"article",ASIDE:()=>"complementary",BLOCKQUOTE:()=>"blockquote",BUTTON:()=>"button",CAPTION:()=>"caption",CODE:()=>"code",DATALIST:()=>"listbox",DD:()=>"definition",DEL:()=>"deletion",DETAILS:()=>"group",DFN:()=>"term",DIALOG:()=>"dialog",DT:()=>"term",EM:()=>"emphasis",FIELDSET:()=>"group",FIGURE:()=>"figure",FOOTER:n=>qa(n,mb)?null:"contentinfo",FORM:n=>gb(n)?"form":null,H1:()=>"heading",H2:()=>"heading",H3:()=>"heading",H4:()=>"heading",H5:()=>"heading",H6:()=>"heading",HEADER:n=>qa(n,mb)?null:"banner",HR:()=>"separator",HTML:()=>"document",IMG:n=>n.getAttribute("alt")===""&&!n.getAttribute("title")&&!W0(n)&&!ev(n)?"presentation":"img",INPUT:n=>{const e=n.type.toLowerCase();if(e==="search")return n.hasAttribute("list")?"combobox":"searchbox";if(["email","tel","text","url",""].includes(e)){const i=kr(n,n.getAttribute("list"))[0];return i&&Je(i)==="DATALIST"?"combobox":"textbox"}return e==="hidden"?null:e==="file"?"button":eT[e]||"textbox"},INS:()=>"insertion",LI:()=>"listitem",MAIN:()=>"main",MARK:()=>"mark",MATH:()=>"math",MENU:()=>"list",METER:()=>"meter",NAV:()=>"navigation",OL:()=>"list",OPTGROUP:()=>"group",OPTION:()=>"option",OUTPUT:()=>"status",P:()=>"paragraph",PROGRESS:()=>"progressbar",SEARCH:()=>"search",SECTION:n=>gb(n)?"region":null,SELECT:n=>n.hasAttribute("multiple")||n.size>1?"listbox":"combobox",STRONG:()=>"strong",SUB:()=>"subscript",SUP:()=>"superscript",SVG:()=>"img",TABLE:()=>"table",TBODY:()=>"rowgroup",TD:n=>{const e=qa(n,"table"),i=e?ud(e):"";return i==="grid"||i==="treegrid"?"gridcell":"cell"},TEXTAREA:()=>"textbox",TFOOT:()=>"rowgroup",TH:n=>{const e=n.getAttribute("scope");if(e==="col"||e==="colgroup")return"columnheader";if(e==="row"||e==="rowgroup")return"rowheader";const i=n.nextElementSibling,r=n.previousElementSibling,l=n.parentElement&&Je(n.parentElement)==="TR"?n.parentElement:void 0;if(!i&&!r){if(l){const o=qa(l,"table");if(o&&o.rows.length<=1)return null}return"columnheader"}return yb(i)&&yb(r)?"columnheader":bb(i)||bb(r)?"rowheader":"columnheader"},THEAD:()=>"rowgroup",TIME:()=>"time",TR:()=>"row",UL:()=>"list"};function yb(n){return!!n&&Je(n)==="TH"}function bb(n){var e;return!n||Je(n)!=="TD"?!1:!!((e=n.textContent)!=null&&e.trim()||n.children.length>0)}const BE={DD:["DL","DIV"],DIV:["DL"],DT:["DL","DIV"],LI:["OL","UL"],TBODY:["TABLE"],TD:["TR"],TFOOT:["TABLE"],TH:["TR"],THEAD:["TABLE"],TR:["THEAD","TBODY","TFOOT","TABLE"]};function vb(n){var r;const e=((r=oh[Je(n)])==null?void 0:r.call(oh,n))||"";if(!e)return null;let i=n;for(;i;){const l=xt(i),o=BE[Je(i)];if(!o||!l||!o.includes(Je(l)))break;const u=ud(l);if((u==="none"||u==="presentation")&&!tv(l,u))return u;i=l}return e}const qE=["alert","alertdialog","application","article","banner","blockquote","button","caption","cell","checkbox","code","columnheader","combobox","complementary","contentinfo","definition","deletion","dialog","directory","document","emphasis","feed","figure","form","generic","grid","gridcell","group","heading","img","insertion","link","list","listbox","listitem","log","main","mark","marquee","math","meter","menu","menubar","menuitem","menuitemcheckbox","menuitemradio","navigation","none","note","option","paragraph","presentation","progressbar","radio","radiogroup","region","row","rowgroup","rowheader","scrollbar","search","searchbox","separator","slider","spinbutton","status","strong","subscript","superscript","switch","tab","table","tablist","tabpanel","term","textbox","time","timer","toolbar","tooltip","tree","treegrid","treeitem"];function ud(n){return(n.getAttribute("role")||"").split(" ").map(i=>i.trim()).find(i=>qE.includes(i))||null}function tv(n,e){return W0(n,e)||UE(n)}function St(n){const e=ud(n);if(!e)return vb(n);if(e==="none"||e==="presentation"){const i=vb(n);if(tv(n,i))return i}return e}function nv(n){return n===null?void 0:n.toLowerCase()==="true"}function iv(n){return["STYLE","SCRIPT","NOSCRIPT","TEMPLATE"].includes(Je(n))}function dn(n){if(iv(n))return!0;const e=Hi(n),i=n.nodeName==="SLOT";if((e==null?void 0:e.display)==="contents"&&!i){for(let l=n.firstChild;l;l=l.nextSibling)if(l.nodeType===1&&!dn(l)||l.nodeType===3&&J0(l))return!1;return!0}return!(n.nodeName==="OPTION"&&!!n.closest("select"))&&!i&&!P0(n,e)?!0:sv(n)}function sv(n){let e=ji==null?void 0:ji.get(n);if(e===void 0){if(e=!1,n.parentElement&&n.parentElement.shadowRoot&&!n.assignedSlot&&(e=!0),!e){const i=Hi(n);e=!i||i.display==="none"||nv(n.getAttribute("aria-hidden"))===!0}if(!e){const i=xt(n);i&&(e=sv(i))}ji==null||ji.set(n,e)}return e}function kr(n,e){if(!e)return[];const i=F0(n);if(!i)return[];try{const r=e.split(" ").filter(o=>!!o),l=[];for(const o of r){const u=i.querySelector("#"+CSS.escape(o));u&&!l.includes(u)&&l.push(u)}return l}catch{return[]}}function ei(n){return n.trim()}function Fa(n){return n.split(" ").map(e=>e.replace(/\r\n/g,` +`).replace(/[\u200b\u00ad]/g,"").replace(/\s\s*/g," ")).join(" ").trim()}function Sb(n,e){const i=[...n.querySelectorAll(e)];for(const r of kr(n,n.getAttribute("aria-owns")))r.matches(e)&&i.push(r),i.push(...r.querySelectorAll(e));return i}function Qa(n,e){const i=e==="::before"?xd:e==="::after"?_d:wd;if(i!=null&&i.has(n))return i==null?void 0:i.get(n);const r=Hi(n,e);let l;if(r){const o=r.content;o&&o!=="none"&&o!=="normal"&&r.display!=="none"&&r.visibility!=="hidden"&&(l=$E(n,o,!!e))}return e&&l!==void 0&&((r==null?void 0:r.display)||"inline")!=="inline"&&(l=" "+l+" "),i&&i.set(n,l),l}function $E(n,e,i){if(!(!e||e==="none"||e==="normal"))try{let r=u0(e).filter(f=>!(f instanceof ic));const l=r.findIndex(f=>f instanceof mt&&f.value==="/");if(l!==-1)r=r.slice(l+1);else if(!i)return;const o=[];let u=0;for(;uxn(o,{includeHidden:e,visitedElements:new Set,embeddedInDescribedBy:{element:o,hidden:dn(o)}})).join(" "))}else n.hasAttribute("aria-description")?r=Fa(n.getAttribute("aria-description")||""):r=Fa(n.getAttribute("title")||"");i==null||i.set(n,r)}return r}function VE(n){const e=n.getAttribute("aria-invalid");return!e||e.trim()===""||e.toLocaleLowerCase()==="false"?"false":e==="true"||e==="grammar"||e==="spelling"?e:"true"}function GE(n){if("validity"in n){const e=n.validity;return(e==null?void 0:e.valid)===!1}return!1}function KE(n){const e=gr;let i=gr==null?void 0:gr.get(n);if(i===void 0){i="";const r=VE(n)!=="false",l=GE(n);if(r||l){const o=n.getAttribute("aria-errormessage");i=kr(n,o).map(d=>Fa(xn(d,{visitedElements:new Set,embeddedInDescribedBy:{element:d,hidden:dn(d)}}))).join(" ").trim()}e==null||e.set(n,i)}return i}function xn(n,e){var d,g,b,m;if(e.visitedElements.has(n))return"";const i={...e,embeddedInTargetElement:e.embeddedInTargetElement==="self"?"descendant":e.embeddedInTargetElement};if(!e.includeHidden){const S=!!((d=e.embeddedInLabelledBy)!=null&&d.hidden)||!!((g=e.embeddedInDescribedBy)!=null&&g.hidden)||!!((b=e.embeddedInNativeTextAlternative)!=null&&b.hidden)||!!((m=e.embeddedInLabel)!=null&&m.hidden);if(iv(n)||!S&&dn(n))return e.visitedElements.add(n),""}const r=rv(n);if(!e.embeddedInLabelledBy){const S=(r||[]).map(w=>xn(w,{...e,embeddedInLabelledBy:{element:w,hidden:dn(w)},embeddedInDescribedBy:void 0,embeddedInTargetElement:void 0,embeddedInLabel:void 0,embeddedInNativeTextAlternative:void 0})).join(" ");if(S)return S}const l=St(n)||"",o=Je(n);if(e.embeddedInLabel||e.embeddedInLabelledBy||e.embeddedInTargetElement==="descendant"){const S=[...n.labels||[]].includes(n),w=(r||[]).includes(n);if(!S&&!w){if(l==="textbox")return e.visitedElements.add(n),o==="INPUT"||o==="TEXTAREA"?n.value:n.textContent||"";if(["combobox","listbox"].includes(l)){e.visitedElements.add(n);let T;if(o==="SELECT")T=[...n.selectedOptions],!T.length&&n.options.length&&T.push(n.options[0]);else{const x=l==="combobox"?Sb(n,"*").find(_=>St(_)==="listbox"):n;T=x?Sb(x,'[aria-selected="true"]').filter(_=>St(_)==="option"):[]}return!T.length&&o==="INPUT"?n.value:T.map(x=>xn(x,i)).join(" ")}if(["progressbar","scrollbar","slider","spinbutton","meter"].includes(l))return e.visitedElements.add(n),n.hasAttribute("aria-valuetext")?n.getAttribute("aria-valuetext")||"":n.hasAttribute("aria-valuenow")?n.getAttribute("aria-valuenow")||"":n.getAttribute("value")||"";if(["menu"].includes(l))return e.visitedElements.add(n),""}}const u=n.getAttribute("aria-label")||"";if(ei(u))return e.visitedElements.add(n),u;if(!["presentation","none"].includes(l)){if(o==="INPUT"&&["button","submit","reset"].includes(n.type)){e.visitedElements.add(n);const S=n.value||"";return ei(S)?S:n.type==="submit"?"Submit":n.type==="reset"?"Reset":n.getAttribute("title")||""}if(o==="INPUT"&&n.type==="file"){e.visitedElements.add(n);const S=n.labels||[];return S.length&&!e.embeddedInLabelledBy?La(S,e):"Choose File"}if(o==="INPUT"&&n.type==="image"){e.visitedElements.add(n);const S=n.labels||[];if(S.length&&!e.embeddedInLabelledBy)return La(S,e);const w=n.getAttribute("alt")||"";if(ei(w))return w;const T=n.getAttribute("title")||"";return ei(T)?T:"Submit"}if(!r&&o==="BUTTON"){e.visitedElements.add(n);const S=n.labels||[];if(S.length)return La(S,e)}if(!r&&o==="OUTPUT"){e.visitedElements.add(n);const S=n.labels||[];return S.length?La(S,e):n.getAttribute("title")||""}if(!r&&(o==="TEXTAREA"||o==="SELECT"||o==="INPUT")){e.visitedElements.add(n);const S=n.labels||[];if(S.length)return La(S,e);const w=o==="INPUT"&&["text","password","search","tel","email","url"].includes(n.type)||o==="TEXTAREA",T=n.getAttribute("placeholder")||"",x=n.getAttribute("title")||"";return!w||x?x:T}if(!r&&o==="FIELDSET"){e.visitedElements.add(n);for(let w=n.firstElementChild;w;w=w.nextElementSibling)if(Je(w)==="LEGEND")return xn(w,{...i,embeddedInNativeTextAlternative:{element:w,hidden:dn(w)}});return n.getAttribute("title")||""}if(!r&&o==="FIGURE"){e.visitedElements.add(n);for(let w=n.firstElementChild;w;w=w.nextElementSibling)if(Je(w)==="FIGCAPTION")return xn(w,{...i,embeddedInNativeTextAlternative:{element:w,hidden:dn(w)}});return n.getAttribute("title")||""}if(o==="IMG"){e.visitedElements.add(n);const S=n.getAttribute("alt")||"";return ei(S)?S:n.getAttribute("title")||""}if(o==="TABLE"){e.visitedElements.add(n);for(let w=n.firstElementChild;w;w=w.nextElementSibling)if(Je(w)==="CAPTION")return xn(w,{...i,embeddedInNativeTextAlternative:{element:w,hidden:dn(w)}});const S=n.getAttribute("summary")||"";if(S)return S}if(o==="AREA"){e.visitedElements.add(n);const S=n.getAttribute("alt")||"";return ei(S)?S:n.getAttribute("title")||""}if(o==="SVG"||n.ownerSVGElement){e.visitedElements.add(n);for(let S=n.firstElementChild;S;S=S.nextElementSibling)if(Je(S)==="TITLE"&&S.ownerSVGElement)return xn(S,{...i,embeddedInLabelledBy:{element:S,hidden:dn(S)}})}if(n.ownerSVGElement&&o==="A"){const S=n.getAttribute("xlink:title")||"";if(ei(S))return e.visitedElements.add(n),S}}const f=o==="SUMMARY"&&!["presentation","none"].includes(l);if(IE(l,e.embeddedInTargetElement==="descendant")||f||e.embeddedInLabelledBy||e.embeddedInDescribedBy||e.embeddedInLabel||e.embeddedInNativeTextAlternative){e.visitedElements.add(n);const S=XE(n,i);if(e.embeddedInTargetElement==="self"?ei(S):S)return S}if(!["presentation","none"].includes(l)||o==="IFRAME"){e.visitedElements.add(n);const S=n.getAttribute("title")||"";if(ei(S))return S}return e.visitedElements.add(n),""}function XE(n,e){const i=[],r=(o,u)=>{var f;if(!(u&&o.assignedSlot))if(o.nodeType===1){const d=((f=Hi(o))==null?void 0:f.display)||"inline";let g=xn(o,e);(d!=="inline"||o.nodeName==="BR")&&(g=" "+g+" "),i.push(g)}else o.nodeType===3&&i.push(o.textContent||"")};i.push(Qa(n,"::before")||"");const l=Qa(n);if(l!==void 0)i.push(l);else{const o=n.nodeName==="SLOT"?n.assignedNodes():[];if(o.length)for(const u of o)r(u,!1);else{for(let u=n.firstChild;u;u=u.nextSibling)r(u,!0);if(n.shadowRoot)for(let u=n.shadowRoot.firstChild;u;u=u.nextSibling)r(u,!0);for(const u of kr(n,n.getAttribute("aria-owns")))r(u,!0)}}return i.push(Qa(n,"::after")||""),i.join("")}const fd=["gridcell","option","row","tab","rowheader","columnheader","treeitem"];function av(n){return Je(n)==="OPTION"?n.selected:fd.includes(St(n)||"")?nv(n.getAttribute("aria-selected"))===!0:!1}const hd=["checkbox","menuitemcheckbox","option","radio","switch","menuitemradio","treeitem"];function lv(n){const e=dd(n,!0);return e==="error"?!1:e}function YE(n){return dd(n,!0)}function FE(n){return dd(n,!1)}function dd(n,e){const i=Je(n);if(e&&i==="INPUT"&&n.indeterminate)return"mixed";if(i==="INPUT"&&["checkbox","radio"].includes(n.type))return n.checked;if(hd.includes(St(n)||"")){const r=n.getAttribute("aria-checked");return r==="true"?!0:e&&r==="mixed"?"mixed":!1}return"error"}const QE=["checkbox","combobox","grid","gridcell","listbox","radiogroup","slider","spinbutton","textbox","columnheader","rowheader","searchbox","switch","treegrid"];function PE(n){const e=Je(n);return["INPUT","TEXTAREA","SELECT"].includes(e)?n.hasAttribute("readonly"):QE.includes(St(n)||"")?n.getAttribute("aria-readonly")==="true":n.isContentEditable?!1:"error"}const pd=["button"];function ov(n){if(pd.includes(St(n)||"")){const e=n.getAttribute("aria-pressed");if(e==="true")return!0;if(e==="mixed")return"mixed"}return!1}const gd=["application","button","checkbox","combobox","gridcell","link","listbox","menuitem","row","rowheader","tab","treeitem","columnheader","menuitemcheckbox","menuitemradio","rowheader","switch"];function cv(n){if(Je(n)==="DETAILS")return n.open;if(gd.includes(St(n)||"")){const e=n.getAttribute("aria-expanded");return e===null?void 0:e==="true"}}const md=["heading","listitem","row","treeitem"];function uv(n){const e={H1:1,H2:2,H3:3,H4:4,H5:5,H6:6}[Je(n)];if(e)return e;if(md.includes(St(n)||"")){const i=n.getAttribute("aria-level"),r=i===null?Number.NaN:Number(i);if(Number.isInteger(r)&&r>=1)return r}return 0}const fv=["application","button","composite","gridcell","group","input","link","menuitem","scrollbar","separator","tab","checkbox","columnheader","combobox","grid","listbox","menu","menubar","menuitemcheckbox","menuitemradio","option","radio","radiogroup","row","rowheader","searchbox","select","slider","spinbutton","switch","tablist","textbox","toolbar","tree","treegrid","treeitem"];function uc(n){return hv(n)||dv(n)}function hv(n){return["BUTTON","INPUT","SELECT","TEXTAREA","OPTION","OPTGROUP"].includes(Je(n))&&(n.hasAttribute("disabled")||JE(n)||ZE(n))}function JE(n){return Je(n)==="OPTION"&&!!n.closest("OPTGROUP[DISABLED]")}function ZE(n){const e=n==null?void 0:n.closest("FIELDSET[DISABLED]");if(!e)return!1;const i=e.querySelector(":scope > LEGEND");return!i||!i.contains(n)}function dv(n,e=!1){if(!n)return!1;if(e||fv.includes(St(n)||"")){const i=(n.getAttribute("aria-disabled")||"").toLowerCase();return i==="true"?!0:i==="false"?!1:dv(xt(n),!0)}return!1}function La(n,e){return[...n].map(i=>xn(i,{...e,embeddedInLabel:{element:i,hidden:dn(i)},embeddedInNativeTextAlternative:void 0,embeddedInLabelledBy:void 0,embeddedInDescribedBy:void 0,embeddedInTargetElement:void 0})).filter(i=>!!i).join(" ")}function WE(n){const e=Ed;let i=n,r;const l=[];for(;i;i=xt(i)){const o=e.get(i);if(o!==void 0){r=o;break}l.push(i);const u=Hi(i);if(!u){r=!0;break}const f=u.pointerEvents;if(f){r=f!=="none";break}}r===void 0&&(r=!0);for(const o of l)e.set(o,r);return r}let yd,bd,vd,Sd,gr,ji,wd,xd,_d,Ed,pv=0;function vc(){od(),++pv,yd??(yd=new Map),bd??(bd=new Map),vd??(vd=new Map),Sd??(Sd=new Map),gr??(gr=new Map),ji??(ji=new Map),wd??(wd=new Map),xd??(xd=new Map),_d??(_d=new Map),Ed??(Ed=new Map)}function Sc(){--pv||(yd=void 0,bd=void 0,vd=void 0,Sd=void 0,gr=void 0,ji=void 0,wd=void 0,xd=void 0,_d=void 0,Ed=void 0),cd()}const eT={button:"button",checkbox:"checkbox",image:"button",number:"spinbutton",radio:"radio",range:"slider",reset:"button",submit:"button"};let tT=0;function gv(n){return n.mode==="ai"?{visibility:"ariaOrVisible",refs:"interactable",refPrefix:n.refPrefix,includeGenericRole:!0,renderActive:!n.doNotRenderActive,renderCursorPointer:!0}:n.mode==="autoexpect"?{visibility:"ariaAndVisible",refs:"none"}:n.mode==="codegen"?{visibility:"aria",refs:"none",renderStringsAsRegex:!0}:{visibility:"aria",refs:"none"}}function Pa(n,e){const i=gv(e),r=new Set,l={root:{role:"fragment",name:"",children:[],props:{},box:cc(n),receivesPointerEvents:!0},elements:new Map,refs:new Map,iframeRefs:[]};Lh(l.root,n);const o=(f,d,g)=>{if(r.has(d))return;if(r.add(d),d.nodeType===Node.TEXT_NODE&&d.nodeValue){if(!g)return;const x=d.nodeValue;f.role!=="textbox"&&x&&f.children.push(d.nodeValue||"");return}if(d.nodeType!==Node.ELEMENT_NODE)return;const b=d,m=!dn(b);let S=m;if(i.visibility==="ariaOrVisible"&&(S=m||Di(b)),i.visibility==="ariaAndVisible"&&(S=m&&Di(b)),i.visibility==="aria"&&!S)return;const w=[];if(b.hasAttribute("aria-owns")){const x=b.getAttribute("aria-owns").split(/\s+/);for(const _ of x){const A=n.ownerDocument.getElementById(_);A&&w.push(A)}}const T=S?nT(b,i):null;T&&(T.ref&&(l.elements.set(T.ref,b),l.refs.set(b,T.ref),T.role==="iframe"&&l.iframeRefs.push(T.ref)),f.children.push(T)),u(T||f,b,w,S)};function u(f,d,g,b){var T;const S=(((T=Hi(d))==null?void 0:T.display)||"inline")!=="inline"||d.nodeName==="BR"?" ":"";S&&f.children.push(S),f.children.push(Qa(d,"::before")||"");const w=d.nodeName==="SLOT"?d.assignedNodes():[];if(w.length)for(const x of w)o(f,x,b);else{for(let x=d.firstChild;x;x=x.nextSibling)x.assignedSlot||o(f,x,b);if(d.shadowRoot)for(let x=d.shadowRoot.firstChild;x;x=x.nextSibling)o(f,x,b)}for(const x of g)o(f,x,b);if(f.children.push(Qa(d,"::after")||""),S&&f.children.push(S),f.children.length===1&&f.name===f.children[0]&&(f.children=[]),f.role==="link"&&d.hasAttribute("href")){const x=d.getAttribute("href");f.props.url=x}if(f.role==="textbox"&&d.hasAttribute("placeholder")&&d.getAttribute("placeholder")!==f.name){const x=d.getAttribute("placeholder");f.props.placeholder=x}}vc();try{o(l.root,n,!0)}finally{Sc()}return sT(l.root),iT(l.root),l}function xb(n,e){if(e.refs==="none"||e.refs==="interactable"&&(!n.box.visible||!n.receivesPointerEvents))return;const i=Ad(n);let r=i._ariaRef;(!r||r.role!==n.role||r.name!==n.name)&&(r={role:n.role,name:n.name,ref:(e.refPrefix??"")+"e"+ ++tT},i._ariaRef=r),n.ref=r.ref}function nT(n,e){const i=n.ownerDocument.activeElement===n;if(n.nodeName==="IFRAME"){const g={role:"iframe",name:"",children:[],props:{},box:cc(n),receivesPointerEvents:!0,active:i};return Lh(g,n),xb(g,e),g}const r=e.includeGenericRole?"generic":null,l=St(n)??r;if(!l||l==="presentation"||l==="none")return null;const o=Ot(il(n,!1)||""),u=WE(n),f=cc(n);if(l==="generic"&&f.inline&&n.childNodes.length===1&&n.childNodes[0].nodeType===Node.TEXT_NODE)return null;const d={role:l,name:o,children:[],props:{},box:f,receivesPointerEvents:u,active:i};return Lh(d,n),xb(d,e),hd.includes(l)&&(d.checked=lv(n)),fv.includes(l)&&(d.disabled=uc(n)),gd.includes(l)&&(d.expanded=cv(n)),md.includes(l)&&(d.level=uv(n)),pd.includes(l)&&(d.pressed=ov(n)),fd.includes(l)&&(d.selected=av(n)),(n instanceof HTMLInputElement||n instanceof HTMLTextAreaElement)&&n.type!=="checkbox"&&n.type!=="radio"&&n.type!=="file"&&(d.children=[n.value]),d}function iT(n){const e=i=>{const r=[];for(const o of i.children||[]){if(typeof o=="string"){r.push(o);continue}const u=e(o);r.push(...u)}return i.role==="generic"&&!i.name&&r.length<=1&&r.every(o=>typeof o!="string"&&!!o.ref)?r:(i.children=r,[i])};e(n)}function sT(n){const e=(r,l)=>{if(!r.length)return;const o=Ot(r.join(""));o&&l.push(o),r.length=0},i=r=>{const l=[],o=[];for(const u of r.children||[])typeof u=="string"?o.push(u):(e(o,l),i(u),l.push(u));e(o,l),r.children=l.length?l:[],r.children.length===1&&r.children[0]===r.name&&(r.children=[])};i(n)}function rT(n,e){return e?n?typeof e=="string"?n===e:!!n.match(new RegExp(e.pattern)):!1:!0}function _b(n,e){if(!(e!=null&&e.normalized))return!0;if(!n)return!1;if(n===e.normalized||n===e.raw)return!0;const i=aT(e);return i?!!n.match(i):!1}const ch=Symbol("cachedRegex");function aT(n){if(n[ch]!==void 0)return n[ch];const{raw:e}=n,i=e.startsWith("/")&&e.endsWith("/")&&e.length>1;let r;try{r=i?new RegExp(e.slice(1,-1)):null}catch{r=null}return n[ch]=r,r}function lT(n,e){const i=Pa(n,{mode:"default"});return{matches:mv(i.root,e,!1,!1),received:{raw:Ja(i,{mode:"default"}).text,regex:Ja(i,{mode:"codegen"}).text}}}function oT(n,e){const i=Pa(n,{mode:"default"}).root;return mv(i,e,!0,!1).map(l=>Ad(l))}function Td(n,e,i){var r;return typeof n=="string"&&e.kind==="text"?_b(n,e.text):n===null||typeof n!="object"||e.kind!=="role"||e.role!=="fragment"&&e.role!==n.role||e.checked!==void 0&&e.checked!==n.checked||e.disabled!==void 0&&e.disabled!==n.disabled||e.expanded!==void 0&&e.expanded!==n.expanded||e.level!==void 0&&e.level!==n.level||e.pressed!==void 0&&e.pressed!==n.pressed||e.selected!==void 0&&e.selected!==n.selected||!rT(n.name,e.name)||!_b(n.props.url,(r=e.props)==null?void 0:r.url)?!1:e.containerMode==="contain"?Tb(n.children||[],e.children||[]):e.containerMode==="equal"?Eb(n.children||[],e.children||[],!1):e.containerMode==="deep-equal"||i?Eb(n.children||[],e.children||[],!0):Tb(n.children||[],e.children||[])}function Eb(n,e,i){if(e.length!==n.length)return!1;for(let r=0;rn.length)return!1;const i=n.slice(),r=e.slice();for(const l of r){let o=i.shift();for(;o&&!Td(o,l,!1);)o=i.shift();if(!o)return!1}return!0}function mv(n,e,i,r){const l=[],o=(u,f)=>{if(Td(u,e,r)){const d=typeof u=="string"?f:u;return d&&l.push(d),!i}if(typeof u=="string")return!1;for(const d of u.children||[])if(o(d,u))return!0;return!1};return o(n,null),l}function yv(n,e=new Map){n!=null&&n.ref&&e.set(n.ref,n);for(const i of(n==null?void 0:n.children)||[])typeof i!="string"&&yv(i,e);return e}function cT(n,e){var o;const i=yv(e==null?void 0:e.root),r=new Map,l=(u,f)=>{let d=u.children.length===(f==null?void 0:f.children.length)&&ME(u,f),g=d;for(let b=0;b{const o=e.get(l);if(o!=="same")if(o==="skip")for(const u of l.children)typeof u!="string"&&r(u);else i.push(l)};for(const l of n)typeof l=="string"?i.push(l):r(l);return i}function jo(n){return" ".repeat(n)}function Ja(n,e,i){const r=gv(e),l=[],o={},u=r.renderStringsAsRegex?hT:()=>!0,f=r.renderStringsAsRegex?fT:T=>T;let d=n.root.role==="fragment"?n.root.children:[n.root];const g=cT(n,i);i&&(d=uT(d,g));const b=(T,x)=>{if(e.depth&&x>e.depth)return;const _=lh(f(T));_&&l.push(jo(x)+"- text: "+_)},m=(T,x)=>{let _=T.role;if(T.name&&T.name.length<=900){const A=f(T.name);if(A){const N=A.startsWith("/")&&A.endsWith("/")?A:JSON.stringify(A);_+=" "+N}}return T.checked==="mixed"&&(_+=" [checked=mixed]"),T.checked===!0&&(_+=" [checked]"),T.disabled&&(_+=" [disabled]"),T.expanded&&(_+=" [expanded]"),T.active&&r.renderActive&&(_+=" [active]"),T.level&&(_+=` [level=${T.level}]`),T.pressed==="mixed"&&(_+=" [pressed=mixed]"),T.pressed===!0&&(_+=" [pressed]"),T.selected===!0&&(_+=" [selected]"),T.ref&&(_+=` [ref=${T.ref}]`,x&&lc(T)&&(_+=" [cursor=pointer]")),_},S=T=>(T==null?void 0:T.children.length)===1&&typeof T.children[0]=="string"&&!Object.keys(T.props).length?T.children[0]:void 0,w=(T,x,_)=>{if(e.depth&&x>e.depth)return;if(T.role==="iframe"&&T.ref&&(o[T.ref]=x),g.get(T)==="same"&&T.ref){l.push(jo(x)+`- ref=${T.ref} [unchanged]`);return}const A=!!i&&!x,N=jo(x)+"- "+(A?" ":"")+RE(m(T,_)),$=S(T),G=!!e.depth&&x===e.depth;if(!$&&(!T.children.length||G)&&!Object.keys(T.props).length)l.push(N);else if($!==void 0)u(T,$)?l.push(N+": "+lh(f($))):l.push(N);else{l.push(N+":");for(const[L,B]of Object.entries(T.props))l.push(jo(x+1)+"- /"+L+": "+lh(B));const U=!!T.ref&&_&&lc(T);for(const L of T.children)typeof L=="string"?b(u(T,L)?L:"",x+1):w(L,x+1,_&&!U)}};for(const T of d)typeof T=="string"?b(T,0):w(T,0,!!r.renderCursorPointer);return{text:l.join(` +`),iframeDepths:o}}function fT(n){const e=[{regex:/\b[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\b/,replacement:"[0-9a-fA-F-]+"},{regex:/\b[\d,.]+[bkmBKM]+\b/,replacement:"[\\d,.]+[bkmBKM]+"},{regex:/\b\d+[hmsp]+\b/,replacement:"\\d+[hmsp]+"},{regex:/\b[\d,.]+[hmsp]+\b/,replacement:"[\\d,.]+[hmsp]+"},{regex:/\b\d+,\d+\b/,replacement:"\\d+,\\d+"},{regex:/\b\d+\.\d{2,}\b/,replacement:"\\d+\\.\\d+"},{regex:/\b\d{2,}\.\d+\b/,replacement:"\\d+\\.\\d+"},{regex:/\b\d{2,}\b/,replacement:"\\d+"}];let i="",r=0;const l=new RegExp(e.map(o=>"("+o.regex.source+")").join("|"),"g");return n.replace(l,(o,...u)=>{const f=u[u.length-2],d=u.slice(0,-2);i+=rc(n.slice(r,f));for(let g=0;ge.length)return!1;const i=e.length<=200&&n.name.length<=200?t_(e,n.name):"";let r=e;for(;i&&r.includes(i);)r=r.replace(i,"");return r.trim().length/e.length>.1}const bv=Symbol("element");function Ad(n){return n[bv]}function Lh(n,e){n[bv]=e}function dT(n,e){const i=LE(n,e);return i?Ad(i):void 0}const Ab=":host{font-size:13px;font-family:system-ui,Ubuntu,Droid Sans,sans-serif;color:#333}svg{position:absolute;height:0}x-pw-tooltip{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#fff;border-radius:6px;box-shadow:0 .5rem 1.2rem #0000004d;display:none;font-size:12.8px;font-weight:400;left:0;line-height:1.5;max-width:600px;position:absolute;top:0;padding:0;flex-direction:column;overflow:hidden}x-pw-tooltip-line{display:flex;max-width:600px;padding:6px;-webkit-user-select:none;user-select:none;cursor:pointer}x-pw-tooltip-footer{display:flex;max-width:600px;padding:6px;-webkit-user-select:none;user-select:none;color:#777}x-pw-dialog{background-color:#fff;pointer-events:auto;border-radius:6px;box-shadow:0 .5rem 1.2rem #0000004d;display:flex;flex-direction:column;position:absolute;z-index:10;font-size:13px}x-pw-dialog:not(.autosize){width:400px;height:150px}x-pw-dialog-body{display:flex;flex-direction:column;flex:auto}x-pw-dialog-body label{margin:5px 8px;display:flex;flex-direction:row;align-items:center}x-pw-highlight{position:absolute;top:0;left:0;width:0;height:0}x-pw-action-point{position:absolute;width:20px;height:20px;background:red;border-radius:10px;margin:-10px 0 0 -10px;z-index:2}x-pw-title{position:absolute;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#00000080;color:#fff;border-radius:6px;padding:6px;font-size:24px;line-height:1.4;white-space:nowrap;-webkit-user-select:none;user-select:none;z-index:3}x-pw-user-overlays,x-pw-user-overlay{position:absolute;top:0;right:0;bottom:0;left:0}@keyframes pw-fade-out{0%{opacity:1}to{opacity:0}}x-pw-separator{height:1px;margin:6px 9px;background:#949494e5}x-pw-tool-gripper{height:28px;width:24px;margin:2px 0;cursor:grab}x-pw-tool-gripper:active{cursor:grabbing}x-pw-tool-gripper>x-div{width:16px;height:16px;margin:6px 4px;clip-path:url(#icon-gripper);background-color:#555}x-pw-tools-list>label{display:flex;align-items:center;margin:0 10px;-webkit-user-select:none;user-select:none}x-pw-tools-list{display:flex;width:100%;border-bottom:1px solid #dddddd}x-pw-tool-item{pointer-events:auto;height:28px;width:28px;border-radius:3px}x-pw-tool-item:not(.disabled){cursor:pointer}x-pw-tool-item:not(.disabled):hover{background-color:#dbdbdb}x-pw-tool-item.toggled{background-color:#8acae480}x-pw-tool-item.toggled:not(.disabled):hover{background-color:#8acae4c4}x-pw-tool-item>x-div{width:16px;height:16px;margin:6px;background-color:#3a3a3a}x-pw-tool-item.disabled>x-div{background-color:#61616180;cursor:default}x-pw-tool-item.record.toggled{background-color:transparent}x-pw-tool-item.record.toggled:not(.disabled):hover{background-color:#dbdbdb}x-pw-tool-item.record.toggled>x-div{background-color:#a1260d}x-pw-tool-item.record.disabled.toggled>x-div{opacity:.8}x-pw-tool-item.accept>x-div{background-color:#388a34}x-pw-tool-item.record>x-div{clip-path:url(#icon-circle-large-filled)}x-pw-tool-item.record.toggled>x-div{clip-path:url(#icon-stop-circle)}x-pw-tool-item.pick-locator>x-div{clip-path:url(#icon-inspect)}x-pw-tool-item.text>x-div{clip-path:url(#icon-whole-word)}x-pw-tool-item.visibility>x-div{clip-path:url(#icon-eye)}x-pw-tool-item.value>x-div{clip-path:url(#icon-symbol-constant)}x-pw-tool-item.snapshot>x-div{clip-path:url(#icon-gist)}x-pw-tool-item.accept>x-div{clip-path:url(#icon-check)}x-pw-tool-item.cancel>x-div{clip-path:url(#icon-close)}x-pw-tool-item.succeeded>x-div{clip-path:url(#icon-pass);background-color:#388a34!important}x-pw-overlay{position:absolute;top:0;max-width:min-content;z-index:2147483647;background:transparent;pointer-events:auto}x-pw-overlay x-pw-tools-list{background-color:#fffd;box-shadow:#0000001a 0 5px 5px;border-radius:3px;border-bottom:none}x-pw-overlay x-pw-tool-item{margin:2px}textarea.text-editor{font-family:system-ui,Ubuntu,Droid Sans,sans-serif;flex:auto;border:none;margin:6px 10px;color:#333;outline:1px solid transparent!important;resize:none;padding:0;font-size:13px}textarea.text-editor.does-not-match{outline:1px solid red!important}x-div{display:block}x-spacer{flex:auto}*{box-sizing:border-box}*[hidden]{display:none!important}x-locator-editor{flex:none;width:100%;height:60px;padding:4px;border-bottom:1px solid #dddddd;outline:1px solid transparent}x-locator-editor.does-not-match{outline:1px solid red}.CodeMirror{width:100%!important;height:100%!important}x-pw-action-list{flex:auto;display:flex;flex-direction:column;-webkit-user-select:none;user-select:none}x-pw-action-item{padding:6px 10px;cursor:pointer;overflow:hidden}x-pw-action-item:hover{background-color:#f2f2f2}x-pw-action-item:last-child{border-bottom-left-radius:6px;border-bottom-right-radius:6px}";class Lo{constructor(e){this._renderedEntries=[],this._userOverlays=new Map,this._userOverlayHidden=!1,this._language="javascript",this._injectedScript=e;const i=e.document;if(this._isUnderTest=e.isUnderTest,this._glassPaneElement=i.createElement("x-pw-glass"),this._glassPaneElement.setAttribute("popover","manual"),this._glassPaneElement.style.inset="0",this._glassPaneElement.style.width="100%",this._glassPaneElement.style.height="100%",this._glassPaneElement.style.maxWidth="none",this._glassPaneElement.style.maxHeight="none",this._glassPaneElement.style.padding="0",this._glassPaneElement.style.margin="0",this._glassPaneElement.style.border="none",this._glassPaneElement.style.overflow="visible",this._glassPaneElement.style.pointerEvents="none",this._glassPaneElement.style.display="flex",this._glassPaneElement.style.backgroundColor="transparent",this._actionPointElement=i.createElement("x-pw-action-point"),this._actionPointElement.setAttribute("hidden","true"),this._titleElement=i.createElement("x-pw-title"),this._titleElement.setAttribute("hidden","true"),this._userOverlayContainer=i.createElement("x-pw-user-overlays"),this._userOverlayContainer.setAttribute("hidden","true"),this._glassPaneShadow=this._glassPaneElement.attachShadow({mode:this._isUnderTest?"open":"closed"}),typeof this._glassPaneShadow.adoptedStyleSheets.push=="function"){const r=new this._injectedScript.window.CSSStyleSheet;r.replaceSync(Ab),this._glassPaneShadow.adoptedStyleSheets.push(r)}else{const r=this._injectedScript.document.createElement("style");r.textContent=Ab,this._glassPaneShadow.appendChild(r)}this._glassPaneShadow.appendChild(this._actionPointElement),this._glassPaneShadow.appendChild(this._titleElement),this._glassPaneShadow.appendChild(this._userOverlayContainer)}install(){this._injectedScript.document.documentElement&&((!this._injectedScript.document.documentElement.contains(this._glassPaneElement)||this._glassPaneElement.nextElementSibling)&&this._injectedScript.document.documentElement.appendChild(this._glassPaneElement),this._bringToFront())}_bringToFront(){this._glassPaneElement.hidePopover(),this._glassPaneElement.showPopover()}setLanguage(e){this._language=e}runHighlightOnRaf(e){this._rafRequest&&this._injectedScript.utils.builtins.cancelAnimationFrame(this._rafRequest);const i=this._injectedScript.querySelectorAll(e,this._injectedScript.document.documentElement),r=Ri(this._language,On(e)),l=i.length>1?"#f6b26b7f":"#6fa8dc7f";this.updateHighlight(i.map((o,u)=>{const f=i.length>1?` [${u+1} of ${i.length}]`:"";return{element:o,color:l,tooltipText:r+f}})),this._rafRequest=this._injectedScript.utils.builtins.requestAnimationFrame(()=>this.runHighlightOnRaf(e))}uninstall(){this._rafRequest&&this._injectedScript.utils.builtins.cancelAnimationFrame(this._rafRequest),this._glassPaneElement.remove()}showActionPoint(e,i,r){this._actionPointElement.style.top=i+"px",this._actionPointElement.style.left=e+"px",this._actionPointElement.hidden=!1,r?this._actionPointElement.style.animation=`pw-fade-out ${r}ms ease-out forwards`:this._actionPointElement.style.animation=""}hideActionPoint(){this._actionPointElement.hidden=!0}showActionTitle(e,i,r,l){if(this._titleElement.textContent=e,this._titleElement.hidden=!1,i){const o=i/4;this._titleElement.style.animation=`pw-fade-out ${o}ms ease-out ${i-o}ms forwards`}else this._titleElement.style.animation="";switch(this._titleElement.style.top="",this._titleElement.style.bottom="",this._titleElement.style.left="",this._titleElement.style.right="",this._titleElement.style.transform="",r){case"top-left":this._titleElement.style.top="6px",this._titleElement.style.left="6px";break;case"top":this._titleElement.style.top="6px",this._titleElement.style.left="50%",this._titleElement.style.transform="translateX(-50%)";break;case"bottom-left":this._titleElement.style.bottom="6px",this._titleElement.style.left="6px";break;case"bottom":this._titleElement.style.bottom="6px",this._titleElement.style.left="50%",this._titleElement.style.transform="translateX(-50%)";break;case"bottom-right":this._titleElement.style.bottom="6px",this._titleElement.style.right="6px";break;case"top-right":default:this._titleElement.style.top="6px",this._titleElement.style.right="6px";break}l&&(this._titleElement.style.fontSize=l+"px")}hideActionTitle(){this._titleElement.hidden=!0}addUserOverlay(e,i){const r=this._injectedScript.document.createElement("div");r.className="x-pw-user-overlay",r.innerHTML=i;for(const l of r.querySelectorAll("script"))l.remove();for(const l of r.querySelectorAll("*"))for(const o of[...l.attributes])o.name.startsWith("on")&&l.removeAttribute(o.name);return this._userOverlays.set(e,r),this._userOverlayContainer.appendChild(r),this._userOverlayContainer.hidden=this._userOverlayHidden,e}getUserOverlay(e){return this._userOverlays.get(e)}removeUserOverlay(e){const i=this._userOverlays.get(e);i&&(i.remove(),this._userOverlays.delete(e)),this._userOverlays.size===0&&(this._userOverlayContainer.hidden=!0)}setUserOverlaysVisible(e){this._userOverlayHidden=!e,this._userOverlayContainer.hidden=!e||this._userOverlays.size===0}clearHighlight(){var e,i;for(const r of this._renderedEntries)(e=r.highlightElement)==null||e.remove(),(i=r.tooltipElement)==null||i.remove();this._renderedEntries=[]}maskElements(e,i){this.updateHighlight(e.map(r=>({element:r,color:i})))}updateHighlight(e){if(!this._highlightIsUpToDate(e)){this.clearHighlight();for(const i of e){const r=this._createHighlightElement();this._glassPaneShadow.appendChild(r);let l;if(i.tooltipText){l=this._injectedScript.document.createElement("x-pw-tooltip"),this._glassPaneShadow.appendChild(l),l.style.top="0",l.style.left="0",l.style.display="flex";const o=this._injectedScript.document.createElement("x-pw-tooltip-line");o.textContent=i.tooltipText,l.appendChild(o)}this._renderedEntries.push({targetElement:i.element,box:Cb(i.box),color:i.color,borderColor:i.borderColor,fadeDuration:i.fadeDuration,cssStyle:i.cssStyle,tooltipElement:l,highlightElement:r})}for(const i of this._renderedEntries){if(!i.box&&!i.targetElement||(i.box=i.box||i.targetElement.getBoundingClientRect(),!i.tooltipElement))continue;const{anchorLeft:r,anchorTop:l}=this.tooltipPosition(i.box,i.tooltipElement);i.tooltipTop=l,i.tooltipLeft=r}for(const i of this._renderedEntries){i.tooltipElement&&(i.tooltipElement.style.top=i.tooltipTop+"px",i.tooltipElement.style.left=i.tooltipLeft+"px");const r=i.box;i.highlightElement.style.backgroundColor=i.color,i.highlightElement.style.left=r.x+"px",i.highlightElement.style.top=r.y+"px",i.highlightElement.style.width=r.width+"px",i.highlightElement.style.height=r.height+"px",i.highlightElement.style.display="block",i.borderColor&&(i.highlightElement.style.border="2px solid "+i.borderColor),i.fadeDuration&&(i.highlightElement.style.animation=`pw-fade-out ${i.fadeDuration}ms ease-out forwards`),i.cssStyle&&(i.highlightElement.style.cssText+=";"+i.cssStyle),this._isUnderTest&&console.error("Highlight box for test: "+JSON.stringify({x:r.x,y:r.y,width:r.width,height:r.height}))}}}firstBox(){var e;return(e=this._renderedEntries[0])==null?void 0:e.box}firstTooltipBox(){const e=this._renderedEntries[0];if(!(!e||!e.tooltipElement||e.tooltipLeft===void 0||e.tooltipTop===void 0))return{x:e.tooltipLeft,y:e.tooltipTop,left:e.tooltipLeft,top:e.tooltipTop,width:e.tooltipElement.offsetWidth,height:e.tooltipElement.offsetHeight,bottom:e.tooltipTop+e.tooltipElement.offsetHeight,right:e.tooltipLeft+e.tooltipElement.offsetWidth,toJSON:()=>{}}}tooltipPosition(e,i){const r=i.offsetWidth,l=i.offsetHeight,o=this._glassPaneElement.offsetWidth,u=this._glassPaneElement.offsetHeight;let f=Math.max(5,e.left);f+r>o-5&&(f=o-r-5);let d=Math.max(0,e.bottom)+5;return d+l>u-5&&(Math.max(0,e.top)>l+5?d=Math.max(0,e.top)-l-5:d=u-5-l),{anchorLeft:f,anchorTop:d}}_highlightIsUpToDate(e){if(e.length!==this._renderedEntries.length)return!1;for(let i=0;ii))return r+Math.max(e.bottom-n.bottom,0)+Math.max(n.top-e.top,0)}function gT(n,e,i){const r=e.left-n.right;if(!(r<0||i!==void 0&&r>i))return r+Math.max(e.bottom-n.bottom,0)+Math.max(n.top-e.top,0)}function mT(n,e,i){const r=e.top-n.bottom;if(!(r<0||i!==void 0&&r>i))return r+Math.max(n.left-e.left,0)+Math.max(e.right-n.right,0)}function yT(n,e,i){const r=n.top-e.bottom;if(!(r<0||i!==void 0&&r>i))return r+Math.max(n.left-e.left,0)+Math.max(e.right-n.right,0)}function bT(n,e,i){const r=i===void 0?50:i;let l=0;return n.left-e.right>=0&&(l+=n.left-e.right),e.left-n.right>=0&&(l+=e.left-n.right),e.top-n.bottom>=0&&(l+=e.top-n.bottom),n.top-e.bottom>=0&&(l+=n.top-e.bottom),l>r?void 0:l}const vT=["left-of","right-of","above","below","near"];function vv(n,e,i,r){const l=e.getBoundingClientRect(),o={"left-of":gT,"right-of":pT,above:mT,below:yT,near:bT}[n];let u;for(const f of i){if(f===e)continue;const d=o(l,f.getBoundingClientRect(),r);d!==void 0&&(u===void 0||d"?!!i:e.op==="="?r instanceof RegExp?typeof i=="string"&&!!i.match(r):i===r:typeof i!="string"||typeof r!="string"?!1:e.op==="*="?i.includes(r):e.op==="^="?i.startsWith(r):e.op==="$="?i.endsWith(r):e.op==="|="?i===r||i.startsWith(r+"-"):e.op==="~="?i.split(" ").includes(r):!1}function Cd(n){const e=n.ownerDocument;return n.nodeName==="SCRIPT"||n.nodeName==="NOSCRIPT"||n.nodeName==="STYLE"||e.head&&e.head.contains(n)}function Vt(n,e){let i=n.get(e);if(i===void 0){if(i={full:"",normalized:"",immediate:[]},!Cd(e)){let r="";if(e instanceof HTMLInputElement&&(e.type==="submit"||e.type==="button"))i={full:e.value,normalized:Ot(e.value),immediate:[e.value]};else{for(let l=e.firstChild;l;l=l.nextSibling)if(l.nodeType===Node.TEXT_NODE)i.full+=l.nodeValue||"",r+=l.nodeValue||"";else{if(l.nodeType===Node.COMMENT_NODE)continue;r&&i.immediate.push(r),r="",l.nodeType===Node.ELEMENT_NODE&&(i.full+=Vt(n,l).full)}r&&i.immediate.push(r),e.shadowRoot&&(i.full+=Vt(n,e.shadowRoot).full),i.full&&(i.normalized=Ot(i.full))}}n.set(e,i)}return i}function wc(n,e,i){if(Cd(e)||!i(Vt(n,e)))return"none";for(let r=e.firstChild;r;r=r.nextSibling)if(r.nodeType===Node.ELEMENT_NODE&&i(Vt(n,r)))return"selfAndChildren";return e.shadowRoot&&i(Vt(n,e.shadowRoot))?"selfAndChildren":"self"}function Sv(n,e){const i=rv(e);if(i)return i.map(o=>Vt(n,o));const r=e.getAttribute("aria-label");if(r!==null&&r.trim())return[{full:r,normalized:Ot(r),immediate:[r]}];const l=e.nodeName==="INPUT"&&e.type!=="hidden";if(["BUTTON","METER","OUTPUT","PROGRESS","SELECT","TEXTAREA"].includes(e.nodeName)||l){const o=e.labels;if(o)return[...o].map(u=>Vt(n,u))}return[]}const wv=["selected","checked","pressed","expanded","level","disabled","name","include-hidden"];wv.sort();function Ra(n,e,i){if(!e.includes(i))throw new Error(`"${n}" attribute is only supported for roles: ${e.slice().sort().map(r=>`"${r}"`).join(", ")}`)}function ar(n,e){if(n.op!==""&&!e.includes(n.value))throw new Error(`"${n.name}" must be one of ${e.map(i=>JSON.stringify(i)).join(", ")}`)}function lr(n,e){if(!e.includes(n.op))throw new Error(`"${n.name}" does not support "${n.op}" matcher`)}function wT(n,e){const i={role:e};for(const r of n)switch(r.name){case"checked":{Ra(r.name,hd,e),ar(r,[!0,!1,"mixed"]),lr(r,["","="]),i.checked=r.op===""?!0:r.value;break}case"pressed":{Ra(r.name,pd,e),ar(r,[!0,!1,"mixed"]),lr(r,["","="]),i.pressed=r.op===""?!0:r.value;break}case"selected":{Ra(r.name,fd,e),ar(r,[!0,!1]),lr(r,["","="]),i.selected=r.op===""?!0:r.value;break}case"expanded":{Ra(r.name,gd,e),ar(r,[!0,!1]),lr(r,["","="]),i.expanded=r.op===""?!0:r.value;break}case"level":{if(Ra(r.name,md,e),typeof r.value=="string"&&(r.value=+r.value),r.op!=="="||typeof r.value!="number"||Number.isNaN(r.value))throw new Error('"level" attribute must be compared to a number');i.level=r.value;break}case"disabled":{ar(r,[!0,!1]),lr(r,["","="]),i.disabled=r.op===""?!0:r.value;break}case"name":{if(r.op==="")throw new Error('"name" attribute must have a value');if(typeof r.value!="string"&&!(r.value instanceof RegExp))throw new Error('"name" attribute must be a string or a regular expression');i.name=r.value,i.nameOp=r.op,i.exact=r.caseSensitive;break}case"include-hidden":{ar(r,[!0,!1]),lr(r,["","="]),i.includeHidden=r.op===""?!0:r.value;break}default:throw new Error(`Unknown attribute "${r.name}", must be one of ${wv.map(l=>`"${l}"`).join(", ")}.`)}return i}function xT(n,e,i){const r=[],l=u=>{if(St(u)===e.role&&!(e.selected!==void 0&&av(u)!==e.selected)&&!(e.checked!==void 0&&lv(u)!==e.checked)&&!(e.pressed!==void 0&&ov(u)!==e.pressed)&&!(e.expanded!==void 0&&cv(u)!==e.expanded)&&!(e.level!==void 0&&uv(u)!==e.level)&&!(e.disabled!==void 0&&uc(u)!==e.disabled)&&!(!e.includeHidden&&dn(u))){if(e.name!==void 0){const f=Ot(il(u,!!e.includeHidden));if(typeof e.name=="string"&&(e.name=Ot(e.name)),i&&!e.exact&&e.nameOp==="="&&(e.nameOp="*="),!ST(f,{op:e.nameOp||"=",value:e.name,caseSensitive:!!e.exact}))return}r.push(u)}},o=u=>{const f=[];u.shadowRoot&&f.push(u.shadowRoot);for(const d of u.querySelectorAll("*"))l(d),d.shadowRoot&&f.push(d.shadowRoot);f.forEach(o)};return o(n),r}function Nb(n){return{queryAll:(e,i)=>{const r=Xa(i),l=r.name.toLowerCase();if(!l)throw new Error("Role must not be empty");const o=wT(r.attributes,l);vc();try{return xT(e,o,n)}finally{Sc()}}}}class _T{constructor(){this._retainCacheCounter=0,this._cacheText=new Map,this._cacheQueryCSS=new Map,this._cacheMatches=new Map,this._cacheQuery=new Map,this._cacheMatchesSimple=new Map,this._cacheMatchesParents=new Map,this._cacheCallMatches=new Map,this._cacheCallQuery=new Map,this._cacheQuerySimple=new Map,this._engines=new Map,this._engines.set("not",AT),this._engines.set("is",$a),this._engines.set("where",$a),this._engines.set("has",ET),this._engines.set("scope",TT),this._engines.set("light",CT),this._engines.set("visible",NT),this._engines.set("text",kT),this._engines.set("text-is",MT),this._engines.set("text-matches",OT),this._engines.set("has-text",jT),this._engines.set("right-of",Da("right-of")),this._engines.set("left-of",Da("left-of")),this._engines.set("above",Da("above")),this._engines.set("below",Da("below")),this._engines.set("near",Da("near")),this._engines.set("nth-match",LT);const e=[...this._engines.keys()];e.sort();const i=[...N0];if(i.sort(),e.join("|")!==i.join("|"))throw new Error(`Please keep customCSSNames in sync with evaluator engines: ${e.join("|")} vs ${i.join("|")}`)}begin(){++this._retainCacheCounter}end(){--this._retainCacheCounter,this._retainCacheCounter||(this._cacheQueryCSS.clear(),this._cacheMatches.clear(),this._cacheQuery.clear(),this._cacheMatchesSimple.clear(),this._cacheMatchesParents.clear(),this._cacheCallMatches.clear(),this._cacheCallQuery.clear(),this._cacheQuerySimple.clear(),this._cacheText.clear())}_cached(e,i,r,l){e.has(i)||e.set(i,[]);const o=e.get(i),u=o.find(d=>r.every((g,b)=>d.rest[b]===g));if(u)return u.result;const f=l();return o.push({rest:r,result:f}),f}_checkSelector(e){if(!(typeof e=="object"&&e&&(Array.isArray(e)||"simples"in e&&e.simples.length)))throw new Error(`Malformed selector "${e}"`);return e}matches(e,i,r){const l=this._checkSelector(i);this.begin();try{return this._cached(this._cacheMatches,e,[l,r.scope,r.pierceShadow,r.originalScope],()=>Array.isArray(l)?this._matchesEngine($a,e,l,r):(this._hasScopeClause(l)&&(r=this._expandContextForScopeMatching(r)),this._matchesSimple(e,l.simples[l.simples.length-1].selector,r)?this._matchesParents(e,l,l.simples.length-2,r):!1))}finally{this.end()}}query(e,i){const r=this._checkSelector(i);this.begin();try{return this._cached(this._cacheQuery,r,[e.scope,e.pierceShadow,e.originalScope],()=>{if(Array.isArray(r))return this._queryEngine($a,e,r);this._hasScopeClause(r)&&(e=this._expandContextForScopeMatching(e));const l=this._scoreMap;this._scoreMap=new Map;let o=this._querySimple(e,r.simples[r.simples.length-1].selector);return o=o.filter(u=>this._matchesParents(u,r,r.simples.length-2,e)),this._scoreMap.size&&o.sort((u,f)=>{const d=this._scoreMap.get(u),g=this._scoreMap.get(f);return d===g?0:d===void 0?1:g===void 0?-1:d-g}),this._scoreMap=l,o})}finally{this.end()}}_markScore(e,i){this._scoreMap&&this._scoreMap.set(e,i)}_hasScopeClause(e){return e.simples.some(i=>i.selector.functions.some(r=>r.name==="scope"))}_expandContextForScopeMatching(e){if(e.scope.nodeType!==1)return e;const i=xt(e.scope);return i?{...e,scope:i,originalScope:e.originalScope||e.scope}:e}_matchesSimple(e,i,r){return this._cached(this._cacheMatchesSimple,e,[i,r.scope,r.pierceShadow,r.originalScope],()=>{if(e===r.scope||i.css&&!this._matchesCSS(e,i.css))return!1;for(const l of i.functions)if(!this._matchesEngine(this._getEngine(l.name),e,l.args,r))return!1;return!0})}_querySimple(e,i){return i.functions.length?this._cached(this._cacheQuerySimple,i,[e.scope,e.pierceShadow,e.originalScope],()=>{let r=i.css;const l=i.functions;r==="*"&&l.length&&(r=void 0);let o,u=-1;r!==void 0?o=this._queryCSS(e,r):(u=l.findIndex(f=>this._getEngine(f.name).query!==void 0),u===-1&&(u=0),o=this._queryEngine(this._getEngine(l[u].name),e,l[u].args));for(let f=0;fthis._matchesEngine(d,g,l[f].args,e)))}for(let f=0;fthis._matchesEngine(d,g,l[f].args,e)))}return o}):this._queryCSS(e,i.css||"*")}_matchesParents(e,i,r,l){return r<0?!0:this._cached(this._cacheMatchesParents,e,[i,r,l.scope,l.pierceShadow,l.originalScope],()=>{const{selector:o,combinator:u}=i.simples[r];if(u===">"){const f=Ro(e,l);return!f||!this._matchesSimple(f,o,l)?!1:this._matchesParents(f,i,r-1,l)}if(u==="+"){const f=uh(e,l);return!f||!this._matchesSimple(f,o,l)?!1:this._matchesParents(f,i,r-1,l)}if(u===""){let f=Ro(e,l);for(;f;){if(this._matchesSimple(f,o,l)){if(this._matchesParents(f,i,r-1,l))return!0;if(i.simples[r-1].combinator==="")break}f=Ro(f,l)}return!1}if(u==="~"){let f=uh(e,l);for(;f;){if(this._matchesSimple(f,o,l)){if(this._matchesParents(f,i,r-1,l))return!0;if(i.simples[r-1].combinator==="~")break}f=uh(f,l)}return!1}if(u===">="){let f=e;for(;f;){if(this._matchesSimple(f,o,l)){if(this._matchesParents(f,i,r-1,l))return!0;if(i.simples[r-1].combinator==="")break}f=Ro(f,l)}return!1}throw new Error(`Unsupported combinator "${u}"`)})}_matchesEngine(e,i,r,l){if(e.matches)return this._callMatches(e,i,r,l);if(e.query)return this._callQuery(e,r,l).includes(i);throw new Error('Selector engine should implement "matches" or "query"')}_queryEngine(e,i,r){if(e.query)return this._callQuery(e,r,i);if(e.matches)return this._queryCSS(i,"*").filter(l=>this._callMatches(e,l,r,i));throw new Error('Selector engine should implement "matches" or "query"')}_callMatches(e,i,r,l){return this._cached(this._cacheCallMatches,i,[e,l.scope,l.pierceShadow,l.originalScope,...r],()=>e.matches(i,r,l,this))}_callQuery(e,i,r){return this._cached(this._cacheCallQuery,e,[r.scope,r.pierceShadow,r.originalScope,...i],()=>e.query(r,i,this))}_matchesCSS(e,i){return e.matches(i)}_queryCSS(e,i){return this._cached(this._cacheQueryCSS,i,[e.scope,e.pierceShadow,e.originalScope],()=>{let r=[];function l(o){if(r=r.concat([...o.querySelectorAll(i)]),!!e.pierceShadow){o.shadowRoot&&l(o.shadowRoot);for(const u of o.querySelectorAll("*"))u.shadowRoot&&l(u.shadowRoot)}}return l(e.scope),r})}_getEngine(e){const i=this._engines.get(e);if(!i)throw new Error(`Unknown selector engine "${e}"`);return i}}const $a={matches(n,e,i,r){if(e.length===0)throw new Error('"is" engine expects non-empty selector list');return e.some(l=>r.matches(n,l,i))},query(n,e,i){if(e.length===0)throw new Error('"is" engine expects non-empty selector list');let r=[];for(const l of e)r=r.concat(i.query(n,l));return e.length===1?r:xv(r)}},ET={matches(n,e,i,r){if(e.length===0)throw new Error('"has" engine expects non-empty selector list');return r.query({...i,scope:n},e).length>0}},TT={matches(n,e,i,r){if(e.length!==0)throw new Error('"scope" engine expects no arguments');const l=i.originalScope||i.scope;return l.nodeType===9?n===l.documentElement:n===l},query(n,e,i){if(e.length!==0)throw new Error('"scope" engine expects no arguments');const r=n.originalScope||n.scope;if(r.nodeType===9){const l=r.documentElement;return l?[l]:[]}return r.nodeType===1?[r]:[]}},AT={matches(n,e,i,r){if(e.length===0)throw new Error('"not" engine expects non-empty selector list');return!r.matches(n,e,i)}},CT={query(n,e,i){return i.query({...n,pierceShadow:!1},e)},matches(n,e,i,r){return r.matches(n,e,{...i,pierceShadow:!1})}},NT={matches(n,e,i,r){if(e.length)throw new Error('"visible" engine expects no arguments');return Di(n)}},kT={matches(n,e,i,r){if(e.length!==1||typeof e[0]!="string")throw new Error('"text" engine expects a single string');const l=Ot(e[0]).toLowerCase(),o=u=>u.normalized.toLowerCase().includes(l);return wc(r._cacheText,n,o)==="self"}},MT={matches(n,e,i,r){if(e.length!==1||typeof e[0]!="string")throw new Error('"text-is" engine expects a single string');const l=Ot(e[0]),o=u=>!l&&!u.immediate.length?!0:u.immediate.some(f=>Ot(f)===l);return wc(r._cacheText,n,o)!=="none"}},OT={matches(n,e,i,r){if(e.length===0||typeof e[0]!="string"||e.length>2||e.length===2&&typeof e[1]!="string")throw new Error('"text-matches" engine expects a regexp body and optional regexp flags');const l=new RegExp(e[0],e.length===2?e[1]:void 0),o=u=>l.test(u.full);return wc(r._cacheText,n,o)==="self"}},jT={matches(n,e,i,r){if(e.length!==1||typeof e[0]!="string")throw new Error('"has-text" engine expects a single string');if(Cd(n))return!1;const l=Ot(e[0]).toLowerCase();return(u=>u.normalized.toLowerCase().includes(l))(Vt(r._cacheText,n))}};function Da(n){return{matches(e,i,r,l){const o=i.length&&typeof i[i.length-1]=="number"?i[i.length-1]:void 0,u=o===void 0?i:i.slice(0,i.length-1);if(i.length<1+(o===void 0?0:1))throw new Error(`"${n}" engine expects a selector list and optional maximum distance in pixels`);const f=l.query(r,u),d=vv(n,e,f,o);return d===void 0?!1:(l._markScore(e,d),!0)}}}const LT={query(n,e,i){let r=e[e.length-1];if(e.length<2)throw new Error('"nth-match" engine expects non-empty selector list and an index argument');if(typeof r!="number"||r<1)throw new Error('"nth-match" engine expects a one-based index as the last argument');const l=$a.query(n,e.slice(0,e.length-1),i);return r--,r1){const d=new Set(f.children);f.children=[];let g=u.firstElementChild;for(;g&&f.children.lengthPo(b)))]}else{const f=os(r,n,e,i)||Ia(n,e,i);l=[Po(f)]}}const o=l[0],u=n.parseSelector(o);return{selector:o,selectors:l,elements:n.querySelectorAll(u,i.root??e.ownerDocument)}}finally{cd(),Sc(),n._evaluator.end()}}function os(n,e,i,r){if(r.root&&!jh(r.root,i))throw new Error("Target element must belong to the root's subtree");if(i===r.root)return[{engine:"css",selector:":scope",score:1}];if(i.ownerDocument.documentElement===i)return[{engine:"css",selector:"html",score:1}];let l=null;const o=f=>{(!l||cs(f)cs(f.candidate)-cs(d.candidate));for(const{candidate:f,isTextCandidate:d}of u){const g=e.querySelectorAll(e.parseSelector(Po(f)),r.root??i.ownerDocument);if(!g.includes(i))continue;if(g.length===1){o(f);break}const b=g.indexOf(i);if(!(b>5)&&(o([...f,{engine:"nth",selector:String(b),score:Rh}]),!r.isRecursive))for(let m=xt(i);m&&m!==r.root;m=xt(m)){const S=g.filter($=>jh(m,$)&&$!==m),w=S.indexOf(i);if(S.length>5||w===-1||w===b&&S.length>1)continue;const T=S.length===1?f:[...f,{engine:"nth",selector:String(w),score:Rh}];if(l&&cs([{engine:"",selector:"",score:1},...T])>=cs(l))continue;const _=!!r.noText||d,A=_?n.disallowText:n.allowText;let N=A.get(m);N===void 0&&(N=os(n,e,m,{...r,isRecursive:!0,noText:_})||Ia(e,m,r),A.set(m,N)),N&&o([...N,...T])}}return l}function YT(n,e,i){const r=[];{for(const u of["data-testid","data-test-id","data-test"])u!==i.testIdAttributeName&&e.getAttribute(u)&&r.push({engine:"css",selector:`[${u}=${hr(e.getAttribute(u))}]`,score:RT});if(!i.noCSSId){const u=e.getAttribute("id");u&&!QT(u)&&r.push({engine:"css",selector:Ov(u),score:GT})}r.push({engine:"css",selector:ti(e),score:Mv})}if(e.nodeName==="IFRAME"){for(const u of["name","title"])e.getAttribute(u)&&r.push({engine:"css",selector:`${ti(e)}[${u}=${hr(e.getAttribute(u))}]`,score:DT});return e.getAttribute(i.testIdAttributeName)&&r.push({engine:"css",selector:`[${i.testIdAttributeName}=${hr(e.getAttribute(i.testIdAttributeName))}]`,score:kb}),Dh([r]),r}if(e.getAttribute(i.testIdAttributeName)&&r.push({engine:"internal:testid",selector:`[${i.testIdAttributeName}=${Mt(e.getAttribute(i.testIdAttributeName),!0)}]`,score:kb}),e.nodeName==="INPUT"||e.nodeName==="TEXTAREA"){const u=e;if(u.placeholder){r.push({engine:"internal:attr",selector:`[placeholder=${Mt(u.placeholder,!0)}]`,score:UT});for(const f of mr(u.placeholder))r.push({engine:"internal:attr",selector:`[placeholder=${Mt(f.text,!1)}]`,score:Tv-f.scoreBonus})}}const l=Sv(n._evaluator._cacheText,e);for(const u of l){const f=u.normalized;r.push({engine:"internal:label",selector:$t(f,!0),score:HT});for(const d of mr(f))r.push({engine:"internal:label",selector:$t(d.text,!1),score:Av-d.scoreBonus})}const o=St(e);return o&&!["none","presentation"].includes(o)&&r.push({engine:"internal:role",selector:o,score:kv}),e.getAttribute("name")&&["BUTTON","FORM","FIELDSET","FRAME","IFRAME","INPUT","KEYGEN","OBJECT","OUTPUT","SELECT","TEXTAREA","MAP","META","PARAM"].includes(e.nodeName)&&r.push({engine:"css",selector:`${ti(e)}[name=${hr(e.getAttribute("name"))}]`,score:fh}),["INPUT","TEXTAREA"].includes(e.nodeName)&&e.getAttribute("type")!=="hidden"&&e.getAttribute("type")&&r.push({engine:"css",selector:`${ti(e)}[type=${hr(e.getAttribute("type"))}]`,score:fh}),["INPUT","TEXTAREA","SELECT"].includes(e.nodeName)&&e.getAttribute("type")!=="hidden"&&r.push({engine:"css",selector:ti(e),score:fh+1}),Dh([r]),r}function FT(n,e,i){if(e.nodeName==="SELECT")return[];const r=[],l=e.getAttribute("title");if(l){r.push([{engine:"internal:attr",selector:`[title=${Mt(l,!0)}]`,score:IT}]);for(const g of mr(l))r.push([{engine:"internal:attr",selector:`[title=${Mt(g.text,!1)}]`,score:Nv-g.scoreBonus}])}const o=e.getAttribute("alt");if(o&&["APPLET","AREA","IMG","INPUT"].includes(e.nodeName)){r.push([{engine:"internal:attr",selector:`[alt=${Mt(o,!0)}]`,score:qT}]);for(const g of mr(o))r.push([{engine:"internal:attr",selector:`[alt=${Mt(g.text,!1)}]`,score:Cv-g.scoreBonus}])}const u=Vt(n._evaluator._cacheText,e).normalized,f=u?mr(u):[];if(u){if(i){u.length<=80&&r.push([{engine:"internal:text",selector:$t(u,!0),score:$T}]);for(const b of f)r.push([{engine:"internal:text",selector:$t(b.text,!1),score:Qo-b.scoreBonus}])}const g={engine:"css",selector:ti(e),score:Mv};for(const b of f)r.push([g,{engine:"internal:has-text",selector:$t(b.text,!1),score:Qo-b.scoreBonus}]);if(i&&u.length<=80){const b=new RegExp("^"+rc(u)+"$");r.push([g,{engine:"internal:has-text",selector:$t(b,!1),score:Mb}])}}const d=St(e);if(d&&!["none","presentation"].includes(d)){const g=il(e,!1);if(g&&!g.match(new RegExp("^\\p{Co}+$","u"))){const b={engine:"internal:role",selector:`${d}[name=${Mt(g,!0)}]`,score:BT};r.push([b]);for(const m of mr(g))r.push([{engine:"internal:role",selector:`${d}[name=${Mt(m.text,!1)}]`,score:Ev-m.scoreBonus}])}else{const b={engine:"internal:role",selector:`${d}`,score:kv};for(const m of f)r.push([b,{engine:"internal:has-text",selector:$t(m.text,!1),score:Qo-m.scoreBonus}]);if(i&&u.length<=80){const m=new RegExp("^"+rc(u)+"$");r.push([b,{engine:"internal:has-text",selector:$t(m,!1),score:Mb}])}}}return Dh(r),r}function Ov(n){return/^[a-zA-Z][a-zA-Z0-9\-\_]+$/.test(n)?"#"+n:`[id=${hr(n)}]`}function hh(n){return n.some(e=>e.engine==="css"&&(e.selector.startsWith("#")||e.selector.startsWith('[id="')))}function Ia(n,e,i){const r=i.root??e.ownerDocument,l=[];function o(f){const d=l.slice();f&&d.unshift(f);const g=d.join(" > "),b=n.parseSelector(g);return n.querySelector(b,r,!1)===e?g:void 0}function u(f){const d={engine:"css",selector:f,score:KT},g=n.parseSelector(f),b=n.querySelectorAll(g,r);if(b.length===1)return[d];const m={engine:"nth",selector:String(b.indexOf(e)),score:Rh};return[d,m]}for(let f=e;f&&f!==r;f=xt(f)){let d="";if(f.id&&!i.noCSSId){const m=Ov(f.id),S=o(m);if(S)return u(S);d=m}const g=f.parentNode,b=[...f.classList].map(PT);for(let m=0;m_.nodeName===S).indexOf(f)===0?ti(f):`${ti(f)}:nth-child(${1+m.indexOf(f)})`,x=o(T);if(x)return u(x);d||(d=T)}else d||(d=ti(f));l.unshift(d)}return u(o())}function Dh(n){for(const e of n)for(const i of e)i.score>zT&&i.score>"),i=r,r==="css"?e.push(l):e.push(`${r}=${l}`);return e.join(" ")}function cs(n){let e=0;for(let i=0;i="a"&&l<="z"?o="lower":l>="A"&&l<="Z"?o="upper":l>="0"&&l<="9"?o="digit":o="other",o==="lower"&&e==="upper"){e=o;continue}e&&e!==o&&++i,e=o}}return i>=n.length/4}function Do(n,e){if(n.length<=e)return n;n=n.substring(0,e);const i=n.match(/^(.*)\b(.+?)$/);return i?i[1].trimEnd():""}function mr(n){let e=[];{const i=n.match(/^([\d.,]+)[^.,\w]/),r=i?i[1].length:0;if(r){const l=Do(n.substring(r).trimStart(),80);e.push({text:l,scoreBonus:l.length<=30?2:1})}}{const i=n.match(/[^.,\w]([\d.,]+)$/),r=i?i[1].length:0;if(r){const l=Do(n.substring(0,n.length-r).trimEnd(),80);e.push({text:l,scoreBonus:l.length<=30?2:1})}}return n.length<=30?e.push({text:n,scoreBonus:0}):(e.push({text:Do(n,80),scoreBonus:0}),e.push({text:Do(n,30),scoreBonus:1})),e=e.filter(i=>i.text),e.length||e.push({text:n.substring(0,80),scoreBonus:0}),e}function ti(n){return n.nodeName.toLocaleLowerCase().replace(/[:\.]/g,e=>"\\"+e)}function PT(n){let e="";for(let i=0;i=1&&i<=31||i>=48&&i<=57&&(e===0||e===1&&n.charCodeAt(0)===45)?"\\"+i.toString(16)+" ":e===0&&i===45&&n.length===1?"\\"+n.charAt(e):i>=128||i===45||i===95||i>=48&&i<=57||i>=65&&i<=90||i>=97&&i<=122?n.charAt(e):"\\"+n.charAt(e)}const jb={queryAll(n,e){e.startsWith("/")&&n.nodeType!==Node.DOCUMENT_NODE&&(e="."+e);const i=[],r=n.ownerDocument||n;if(!r)return i;const l=r.evaluate(e,n,null,XPathResult.ORDERED_NODE_ITERATOR_TYPE);for(let o=l.iterateNext();o;o=l.iterateNext())o.nodeType===Node.ELEMENT_NODE&&i.push(o);return i}};function Nd(n,e,i){return`internal:attr=[${n}=${Mt(e,(i==null?void 0:i.exact)||!1)}]`}function ZT(n,e){return`internal:testid=[${n}=${Mt(e,!0)}]`}function WT(n,e){return"internal:label="+$t(n,!!(e!=null&&e.exact))}function eA(n,e){return Nd("alt",n,e)}function tA(n,e){return Nd("title",n,e)}function nA(n,e){return Nd("placeholder",n,e)}function iA(n,e){return"internal:text="+$t(n,!!(e!=null&&e.exact))}function sA(n,e={}){const i=[];return e.checked!==void 0&&i.push(["checked",String(e.checked)]),e.disabled!==void 0&&i.push(["disabled",String(e.disabled)]),e.selected!==void 0&&i.push(["selected",String(e.selected)]),e.expanded!==void 0&&i.push(["expanded",String(e.expanded)]),e.includeHidden!==void 0&&i.push(["include-hidden",String(e.includeHidden)]),e.level!==void 0&&i.push(["level",String(e.level)]),e.name!==void 0&&i.push(["name",Mt(e.name,!!e.exact)]),e.pressed!==void 0&&i.push(["pressed",String(e.pressed)]),`internal:role=${n}${i.map(([r,l])=>`[${r}=${l}]`).join("")}`}const za=Symbol("selector"),rA=class Va{constructor(e,i,r){if(r!=null&&r.hasText&&(i+=` >> internal:has-text=${$t(r.hasText,!1)}`),r!=null&&r.hasNotText&&(i+=` >> internal:has-not-text=${$t(r.hasNotText,!1)}`),r!=null&&r.has&&(i+=" >> internal:has="+JSON.stringify(r.has[za])),r!=null&&r.hasNot&&(i+=" >> internal:has-not="+JSON.stringify(r.hasNot[za])),(r==null?void 0:r.visible)!==void 0&&(i+=` >> visible=${r.visible?"true":"false"}`),this[za]=i,i){const u=e.parseSelector(i);this.element=e.querySelector(u,e.document,!1),this.elements=e.querySelectorAll(u,e.document)}const l=i,o=this;o.locator=(u,f)=>new Va(e,l?l+" >> "+u:u,f),o.getByTestId=u=>o.locator(ZT(e.testIdAttributeNameForStrictErrorAndConsoleCodegen(),u)),o.getByAltText=(u,f)=>o.locator(eA(u,f)),o.getByLabel=(u,f)=>o.locator(WT(u,f)),o.getByPlaceholder=(u,f)=>o.locator(nA(u,f)),o.getByText=(u,f)=>o.locator(iA(u,f)),o.getByTitle=(u,f)=>o.locator(tA(u,f)),o.getByRole=(u,f={})=>o.locator(sA(u,f)),o.filter=u=>new Va(e,i,u),o.first=()=>o.locator("nth=0"),o.last=()=>o.locator("nth=-1"),o.nth=u=>o.locator(`nth=${u}`),o.and=u=>new Va(e,l+" >> internal:and="+JSON.stringify(u[za])),o.or=u=>new Va(e,l+" >> internal:or="+JSON.stringify(u[za]))}};let aA=rA;class lA{constructor(e){this._injectedScript=e}install(){this._injectedScript.window.playwright||(this._injectedScript.window.playwright={$:(e,i)=>this._querySelector(e,!!i),$$:e=>this._querySelectorAll(e),inspect:e=>this._inspect(e),selector:e=>this._selector(e),generateLocator:(e,i)=>this._generateLocator(e,i),ariaSnapshot:(e,i)=>this._injectedScript.ariaSnapshot(e||this._injectedScript.document.body,i||{mode:"default"}),resume:()=>this._resume(),...new aA(this._injectedScript,"")},delete this._injectedScript.window.playwright.filter,delete this._injectedScript.window.playwright.first,delete this._injectedScript.window.playwright.last,delete this._injectedScript.window.playwright.nth,delete this._injectedScript.window.playwright.and,delete this._injectedScript.window.playwright.or)}_querySelector(e,i){if(typeof e!="string")throw new Error("Usage: playwright.query('Playwright >> selector').");const r=this._injectedScript.parseSelector(e);return this._injectedScript.querySelector(r,this._injectedScript.document,i)}_querySelectorAll(e){if(typeof e!="string")throw new Error("Usage: playwright.$$('Playwright >> selector').");const i=this._injectedScript.parseSelector(e);return this._injectedScript.querySelectorAll(i,this._injectedScript.document)}_inspect(e){if(typeof e!="string")throw new Error("Usage: playwright.inspect('Playwright >> selector').");this._injectedScript.window.inspect(this._querySelector(e,!1))}_selector(e){if(!(e instanceof Element))throw new Error("Usage: playwright.selector(element).");return this._injectedScript.generateSelectorSimple(e)}_generateLocator(e,i){if(!(e instanceof Element))throw new Error("Usage: playwright.locator(element).");const r=this._injectedScript.generateSelectorSimple(e);return Ri(i||"javascript",r)}_resume(){if(!this._injectedScript.window.__pw_resume)return!1;this._injectedScript.window.__pw_resume().catch(()=>{})}}function oA(n){try{return n instanceof RegExp||Object.prototype.toString.call(n)==="[object RegExp]"}catch{return!1}}function cA(n){try{return n instanceof Date||Object.prototype.toString.call(n)==="[object Date]"}catch{return!1}}function uA(n){try{return n instanceof URL||Object.prototype.toString.call(n)==="[object URL]"}catch{return!1}}function fA(n){var e;try{return n instanceof Error||n&&((e=Object.getPrototypeOf(n))==null?void 0:e.name)==="Error"}catch{return!1}}function hA(n,e){try{return n instanceof e||Object.prototype.toString.call(n)===`[object ${e.name}]`}catch{return!1}}function dA(n){try{return n instanceof ArrayBuffer||Object.prototype.toString.call(n)==="[object ArrayBuffer]"}catch{return!1}}const jv={i8:Int8Array,ui8:Uint8Array,ui8c:Uint8ClampedArray,i16:Int16Array,ui16:Uint16Array,i32:Int32Array,ui32:Uint32Array,f32:Float32Array,f64:Float64Array,bi64:BigInt64Array,bui64:BigUint64Array};function Lb(n){if("toBase64"in n)return n.toBase64();const e=Array.from(new Uint8Array(n.buffer,n.byteOffset,n.byteLength)).map(i=>String.fromCharCode(i)).join("");return btoa(e)}function Rb(n,e){const i=atob(n),r=new Uint8Array(i.length);for(let l=0;l";if(typeof globalThis.Document=="function"&&n instanceof globalThis.Document)return"ref: ";if(typeof globalThis.Node=="function"&&n instanceof globalThis.Node)return"ref: "}return Lv(n,e,i)}function Lv(n,e,i){var o;const r=e(n);if("fallThrough"in r)n=r.fallThrough;else return r;if(typeof n=="symbol")return{v:"undefined"};if(Object.is(n,void 0))return{v:"undefined"};if(Object.is(n,null))return{v:"null"};if(Object.is(n,NaN))return{v:"NaN"};if(Object.is(n,1/0))return{v:"Infinity"};if(Object.is(n,-1/0))return{v:"-Infinity"};if(Object.is(n,-0))return{v:"-0"};if(typeof n=="boolean"||typeof n=="number"||typeof n=="string")return n;if(typeof n=="bigint")return{bi:n.toString()};if(fA(n)){let u;return(o=n.stack)!=null&&o.startsWith(n.name+": "+n.message)?u=n.stack:u=`${n.name}: ${n.message} +${n.stack}`,{e:{n:n.name,m:n.message,s:u}}}if(cA(n))return{d:n.toJSON()};if(uA(n))return{u:n.toJSON()};if(oA(n))return{r:{p:n.source,f:n.flags}};for(const[u,f]of Object.entries(jv))if(hA(n,f))return{ta:{b:Lb(n),k:u}};if(dA(n))return{ab:{b:Lb(new Uint8Array(n))}};const l=i.visited.get(n);if(l)return{ref:l};if(Array.isArray(n)){const u=[],f=++i.lastId;i.visited.set(n,f);for(let d=0;d({fallThrough:r}))}_promiseAwareJsonValueNoThrow(e){const i=r=>{try{return this.jsonValue(!0,r)}catch{return}};return e&&typeof e=="object"&&typeof e.then=="function"?(async()=>{const r=await e;return i(r)})():i(e)}}class Rv{constructor(e,i){this._testIdAttributeNameForStrictErrorAndConsoleCodegen="data-testid",this._lastAriaSnapshotForTrack=new Map,this.utils={asLocator:Ri,cacheNormalizedWhitespaces:Wx,elementText:Vt,getAriaRole:St,getElementAccessibleDescription:wb,getElementAccessibleName:il,isElementVisible:Di,isInsideScope:jh,normalizeWhiteSpace:Ot,parseAriaSnapshot:sd,generateAriaTree:Pa,findNewElement:dT,builtins:null},this.window=e,this.document=e.document,this.isUnderTest=i.isUnderTest,this.utils.builtins=new gA(e,i.isUnderTest).builtins,this._sdkLanguage=i.sdkLanguage,this._testIdAttributeNameForStrictErrorAndConsoleCodegen=i.testIdAttributeName,this._evaluator=new _T,this.consoleApi=new lA(this),this.onGlobalListenersRemoved=new Set,this._autoClosingTags=new Set(["AREA","BASE","BR","COL","COMMAND","EMBED","HR","IMG","INPUT","KEYGEN","LINK","MENUITEM","META","PARAM","SOURCE","TRACK","WBR"]),this._booleanAttributes=new Set(["checked","selected","disabled","readonly","multiple"]),this._eventTypes=new Map([["auxclick","mouse"],["click","mouse"],["dblclick","mouse"],["mousedown","mouse"],["mouseeenter","mouse"],["mouseleave","mouse"],["mousemove","mouse"],["mouseout","mouse"],["mouseover","mouse"],["mouseup","mouse"],["mouseleave","mouse"],["mousewheel","mouse"],["keydown","keyboard"],["keyup","keyboard"],["keypress","keyboard"],["textInput","keyboard"],["touchstart","touch"],["touchmove","touch"],["touchend","touch"],["touchcancel","touch"],["pointerover","pointer"],["pointerout","pointer"],["pointerenter","pointer"],["pointerleave","pointer"],["pointerdown","pointer"],["pointerup","pointer"],["pointermove","pointer"],["pointercancel","pointer"],["gotpointercapture","pointer"],["lostpointercapture","pointer"],["focus","focus"],["blur","focus"],["drag","drag"],["dragstart","drag"],["dragend","drag"],["dragover","drag"],["dragenter","drag"],["dragleave","drag"],["dragexit","drag"],["drop","drag"],["wheel","wheel"],["deviceorientation","deviceorientation"],["deviceorientationabsolute","deviceorientation"],["devicemotion","devicemotion"]]),this._hoverHitTargetInterceptorEvents=new Set(["mousemove"]),this._tapHitTargetInterceptorEvents=new Set(["pointerdown","pointerup","touchstart","touchend","touchcancel"]),this._mouseHitTargetInterceptorEvents=new Set(["mousedown","mouseup","pointerdown","pointerup","click","auxclick","dblclick","contextmenu"]),this._allHitTargetInterceptorEvents=new Set([...this._hoverHitTargetInterceptorEvents,...this._tapHitTargetInterceptorEvents,...this._mouseHitTargetInterceptorEvents]),this._engines=new Map,this._engines.set("xpath",jb),this._engines.set("xpath:light",jb),this._engines.set("role",Nb(!1)),this._engines.set("text",this._createTextEngine(!0,!1)),this._engines.set("text:light",this._createTextEngine(!1,!1)),this._engines.set("id",this._createAttributeEngine("id",!0)),this._engines.set("id:light",this._createAttributeEngine("id",!1)),this._engines.set("data-testid",this._createAttributeEngine("data-testid",!0)),this._engines.set("data-testid:light",this._createAttributeEngine("data-testid",!1)),this._engines.set("data-test-id",this._createAttributeEngine("data-test-id",!0)),this._engines.set("data-test-id:light",this._createAttributeEngine("data-test-id",!1)),this._engines.set("data-test",this._createAttributeEngine("data-test",!0)),this._engines.set("data-test:light",this._createAttributeEngine("data-test",!1)),this._engines.set("css",this._createCSSEngine()),this._engines.set("nth",{queryAll:()=>[]}),this._engines.set("visible",this._createVisibleEngine()),this._engines.set("internal:control",this._createControlEngine()),this._engines.set("internal:has",this._createHasEngine()),this._engines.set("internal:has-not",this._createHasNotEngine()),this._engines.set("internal:and",{queryAll:()=>[]}),this._engines.set("internal:or",{queryAll:()=>[]}),this._engines.set("internal:chain",this._createInternalChainEngine()),this._engines.set("internal:label",this._createInternalLabelEngine()),this._engines.set("internal:text",this._createTextEngine(!0,!0)),this._engines.set("internal:has-text",this._createInternalHasTextEngine()),this._engines.set("internal:has-not-text",this._createInternalHasNotTextEngine()),this._engines.set("internal:attr",this._createNamedAttributeEngine()),this._engines.set("internal:testid",this._createNamedAttributeEngine()),this._engines.set("internal:role",Nb(!0)),this._engines.set("internal:describe",this._createDescribeEngine()),this._engines.set("aria-ref",this._createAriaRefEngine());for(const{name:r,source:l}of i.customEngines)this._engines.set(r,this.eval(l));this._stableRafCount=i.stableRafCount,this._browserName=i.browserName,this._isUtilityWorld=!!i.isUtilityWorld,DE({browserNameForWorkarounds:i.browserName}),this._setupGlobalListenersRemovalDetection(),this._setupHitTargetInterceptors(),this.isUnderTest&&(this.window.__injectedScript=this)}eval(e){return this.window.eval(e)}testIdAttributeNameForStrictErrorAndConsoleCodegen(){return this._testIdAttributeNameForStrictErrorAndConsoleCodegen}parseSelector(e){const i=ol(e);return Jx(i,r=>{if(!this._engines.has(r.name))throw this.createStacklessError(`Unknown engine "${r.name}" while parsing selector ${e}`)}),i}generateSelector(e,i){return Ob(this,e,i)}generateSelectorSimple(e,i){return Ob(this,e,{...i,testIdAttributeName:this._testIdAttributeNameForStrictErrorAndConsoleCodegen}).selector}querySelector(e,i,r){const l=this.querySelectorAll(e,i);if(r&&l.length>1)throw this.strictModeViolationError(e,l);return this.checkDeprecatedSelectorUsage(e,l),l[0]}_queryNth(e,i){const r=[...e];let l=+i.body;return l===-1&&(l=r.length-1),new Set(r.slice(l,l+1))}_queryLayoutSelector(e,i,r){const l=i.name,o=i.body,u=[],f=this.querySelectorAll(o.parsed,r);for(const d of e){const g=vv(l,d,f,o.distance);g!==void 0&&u.push({element:d,score:g})}return u.sort((d,g)=>d.score-g.score),new Set(u.map(d=>d.element))}ariaSnapshot(e,i){return this.incrementalAriaSnapshot(e,i).full}incrementalAriaSnapshot(e,i){if(e.nodeType!==Node.ELEMENT_NODE)throw this.createStacklessError("Can only capture aria snapshot of Element nodes.");const r=Pa(e,i),l=Ja(r,i);let o;if(i.track){const u=this._lastAriaSnapshotForTrack.get(i.track);u&&(o=Ja(r,i,u).text),this._lastAriaSnapshotForTrack.set(i.track,r)}return this._lastAriaSnapshotForQuery=r,{full:l.text,incremental:o,iframeRefs:r.iframeRefs,iframeDepths:l.iframeDepths}}ariaSnapshotForRecorder(){const e=Pa(this.document.body,{mode:"ai"}),{text:i}=Ja(e,{mode:"ai"});return{ariaSnapshot:i,refs:e.refs}}getAllElementsMatchingExpectAriaTemplate(e,i){return oT(e.documentElement,i)}querySelectorAll(e,i){if(e.capture!==void 0){if(e.parts.some(l=>l.name==="nth"))throw this.createStacklessError("Can't query n-th element in a request with the capture.");const r={parts:e.parts.slice(0,e.capture+1)};if(e.capturer.has(u)))}else if(l.name==="internal:or"){const o=this.querySelectorAll(l.body.parsed,i);r=new Set(xv(new Set([...r,...o])))}else if(vT.includes(l.name))r=this._queryLayoutSelector(r,l,i);else{const o=new Set;for(const u of r){const f=this._queryEngineAll(l,u);for(const d of f)o.add(d)}r=o}return[...r]}finally{this._evaluator.end()}}_queryEngineAll(e,i){const r=this._engines.get(e.name).queryAll(i,e.body);for(const l of r)if(!("nodeName"in l))throw this.createStacklessError(`Expected a Node but got ${Object.prototype.toString.call(l)}`);return r}_createAttributeEngine(e,i){const r=l=>[{simples:[{selector:{css:`[${e}=${JSON.stringify(l)}]`,functions:[]},combinator:""}]}];return{queryAll:(l,o)=>this._evaluator.query({scope:l,pierceShadow:i},r(o))}}_createCSSEngine(){return{queryAll:(e,i)=>this._evaluator.query({scope:e,pierceShadow:!0},i)}}_createTextEngine(e,i){return{queryAll:(l,o)=>{const{matcher:u,kind:f}=Uo(o,i),d=[];let g=null;const b=S=>{if(f==="lax"&&g&&g.contains(S))return!1;const w=wc(this._evaluator._cacheText,S,u);w==="none"&&(g=S),(w==="self"||w==="selfAndChildren"&&f==="strict"&&!i)&&d.push(S)};l.nodeType===Node.ELEMENT_NODE&&b(l);const m=this._evaluator._queryCSS({scope:l,pierceShadow:e},"*");for(const S of m)b(S);return d}}}_createInternalHasTextEngine(){return{queryAll:(e,i)=>{if(e.nodeType!==1)return[];const r=e,l=Vt(this._evaluator._cacheText,r),{matcher:o}=Uo(i,!0);return o(l)?[r]:[]}}}_createInternalHasNotTextEngine(){return{queryAll:(e,i)=>{if(e.nodeType!==1)return[];const r=e,l=Vt(this._evaluator._cacheText,r),{matcher:o}=Uo(i,!0);return o(l)?[]:[r]}}}_createInternalLabelEngine(){return{queryAll:(e,i)=>{const{matcher:r}=Uo(i,!0);return this._evaluator._queryCSS({scope:e,pierceShadow:!0},"*").filter(o=>Sv(this._evaluator._cacheText,o).some(u=>r(u)))}}}_createNamedAttributeEngine(){return{queryAll:(i,r)=>{const l=Xa(r);if(l.name||l.attributes.length!==1)throw new Error("Malformed attribute selector: "+r);const{name:o,value:u,caseSensitive:f}=l.attributes[0],d=f?null:u.toLowerCase();let g;return u instanceof RegExp?g=m=>!!m.match(u):f?g=m=>m===u:g=m=>m.toLowerCase().includes(d),this._evaluator._queryCSS({scope:i,pierceShadow:!0},`[${o}]`).filter(m=>g(m.getAttribute(o)))}}}_createDescribeEngine(){return{queryAll:i=>i.nodeType!==1?[]:[i]}}_createControlEngine(){return{queryAll(e,i){if(i==="enter-frame")return[];if(i==="return-empty")return[];if(i==="component")return e.nodeType!==1?[]:[e.childElementCount===1?e.firstElementChild:e];throw new Error(`Internal error, unknown internal:control selector ${i}`)}}}_createHasEngine(){return{queryAll:(i,r)=>i.nodeType!==1?[]:!!this.querySelector(r.parsed,i,!1)?[i]:[]}}_createHasNotEngine(){return{queryAll:(i,r)=>i.nodeType!==1?[]:!!this.querySelector(r.parsed,i,!1)?[]:[i]}}_createVisibleEngine(){return{queryAll:(i,r)=>{if(i.nodeType!==1)return[];const l=r==="true";return Di(i)===l?[i]:[]}}}_createInternalChainEngine(){return{queryAll:(i,r)=>this.querySelectorAll(r.parsed,i)}}extend(e,i){const r=this.window.eval(` + (() => { + const module = {}; + ${e} + return module.exports.default(); + })()`);return new r(this,i)}async viewportRatio(e){return await new Promise(i=>{const r=new IntersectionObserver(l=>{i(l[0].intersectionRatio),r.disconnect()});r.observe(e),this.utils.builtins.requestAnimationFrame(()=>{})})}getElementBorderWidth(e){if(e.nodeType!==Node.ELEMENT_NODE||!e.ownerDocument||!e.ownerDocument.defaultView)return{left:0,top:0};const i=e.ownerDocument.defaultView.getComputedStyle(e);return{left:parseInt(i.borderLeftWidth||"",10),top:parseInt(i.borderTopWidth||"",10)}}describeIFrameStyle(e){if(!e.ownerDocument||!e.ownerDocument.defaultView)return"error:notconnected";const i=e.ownerDocument.defaultView;for(let l=e;l;l=xt(l))if(i.getComputedStyle(l).transform!=="none")return"transformed";const r=i.getComputedStyle(e);return{left:parseInt(r.borderLeftWidth||"",10)+parseInt(r.paddingLeft||"",10),top:parseInt(r.borderTopWidth||"",10)+parseInt(r.paddingTop||"",10)}}retarget(e,i){let r=e.nodeType===Node.ELEMENT_NODE?e:e.parentElement;if(!r)return null;if(i==="none")return r;if(!r.matches("input, textarea, select")&&!r.isContentEditable&&(i==="button-link"?r=r.closest("button, [role=button], a, [role=link]")||r:r=r.closest("button, [role=button], [role=checkbox], [role=radio]")||r),i==="follow-label"&&!r.matches("a, input, textarea, button, select, [role=link], [role=button], [role=checkbox], [role=radio]")&&!r.isContentEditable){const l=r.closest("label");l&&l.control&&(r=l.control)}return r}async checkElementStates(e,i){if(i.includes("stable")){const r=await this._checkElementIsStable(e);if(r===!1)return{missingState:"stable"};if(r==="error:notconnected")return"error:notconnected"}for(const r of i)if(r!=="stable"){const l=this.elementState(e,r);if(l.received==="error:notconnected")return"error:notconnected";if(!l.matches)return{missingState:r}}}async _checkElementIsStable(e){const i=Symbol("continuePolling");let r,l=0,o=0;const u=()=>{const m=this.retarget(e,"no-follow-label");if(!m)return"error:notconnected";const S=this.utils.builtins.performance.now();if(this._stableRafCount>1&&S-o<15)return i;o=S;const w=m.getBoundingClientRect(),T={x:w.top,y:w.left,width:w.width,height:w.height};if(r){if(!(T.x===r.x&&T.y===r.y&&T.width===r.width&&T.height===r.height))return!1;if(++l>=this._stableRafCount)return!0}return r=T,i};let f,d;const g=new Promise((m,S)=>{f=m,d=S}),b=()=>{try{const m=u();m!==i?f(m):this.utils.builtins.requestAnimationFrame(b)}catch(m){d(m)}};return this.utils.builtins.requestAnimationFrame(b),g}_createAriaRefEngine(){return{queryAll:(i,r)=>{var o,u;const l=(u=(o=this._lastAriaSnapshotForQuery)==null?void 0:o.elements)==null?void 0:u.get(r);return l&&l.isConnected?[l]:[]}}}elementState(e,i){const r=this.retarget(e,["visible","hidden"].includes(i)?"none":"follow-label");if(!r||!r.isConnected)return i==="hidden"?{matches:!0,received:"hidden"}:{matches:!1,received:"error:notconnected"};if(i==="visible"||i==="hidden"){const l=Di(r);return{matches:i==="visible"?l:!l,received:l?"visible":"hidden"}}if(i==="disabled"||i==="enabled"){const l=uc(r);return{matches:i==="disabled"?l:!l,received:l?"disabled":"enabled"}}if(i==="editable"){const l=uc(r),o=PE(r);if(o==="error")throw this.createStacklessError("Element is not an ,